Hi Neo,@Roderick1st , thanks for your reply. I have a couple of questions. Do you send the timing data every time a paddle crosses in front of the sensor or do you accumulate x timings and send the data every y seconds? Also, why do you think it's necessary to know when the table is up or down? There will still be grain in the elevator while turning at the end of the field. How do you use lat long in excel?
I started playing with an esp32 and ublox neo6 gps. I am thinking of saving an acumulated Q data from the optical sensor for every 10 meters or so along with the gps position and speed. Also, i will put the gps data in a fifo so that the location will be x seconds old, where x is the time it takes for the grain to go from the table to the elevator. The data from the optical sensor will be in the form of %off, to eliminate errors caused by a lower rpm during hard work. I will read the stored data via bluetooth at the end of the day and then do some postprocessing - running 2 combines and i'll have to merge two sets of data
This is what i have planned so far, we'll see how it goes
I record each timing and when the phone gets a gps location change I store the average value with the location. Location changes happen every 4 seconds or so.
I also store the time from the bottom of a paddle passing the beam to the time the bottom of the next paddle passes. This enables me tell if the combine was running at full throttle or not as your going to get very bad results ie high yield readings if you're sat stopped off loading etc as the paddles will take longer to pass the beam. This would be a good figure to use to get a correction for combine loading. Worth testing against %off?
Knowing when the table is up means that the grain you have just harvested before entering the headland won't be counted. I've used software in excel to remove the false data. If you don't then your headlands looks to be the best yielding area of the field. Using previous GPS position instead of current would help (in progress) but if you ever stop combining and just wait to see how long it takes for grain to stop coming into the tank its quite a while.
With excel I create an array of squares covering the area of the field starting with the lowest lat long recorded (converted in to whole numbers) going to the highest numbers. This further averages out the readings for more consistent data. It also allows me to extrapolate data for squares with no data by looking at surrounding squares. Each one of these squares are represented by a cell within excel. I feed the array out into the cells, conditional format the cells and hide the text within the cell.
There are items Im looking to change... One using phone gps is rubbish so better accuracy gps would benefit the system.
I think you're right to delay gps readings to improve accuracy on where yield is actually coming from. It was a mission coding an android app and its still buggy and likes to crash. An esp32 / Arduino with high quality GPS attached to that is the way to go. Although feeding the data to the phone makes life easy.
I haven't looked at the excel code for a while , I'll try to learn GIT and stick it on there as it would be great to share abilities and ideas on the project.