Controlling PWM Valve Based on Travel and Shaft Speed

My project idea is to control a hydraulic motor on an agricultural seeder via a PWM valve based on travel speed. That is to adjust seeder shaft speed as travel speed changes in order to keep the same seeding rate across the field regardless of changes in travel speed.

I would be using either GPS speed input or radar speed frequency for travel speed. The seeder shaft will have a shaft encoder to monitor speed. The PWM valve is a 12VDC valve with pulse frequency of 90-115 hz.

I have started by figuring out some equations in Excel. My idea is to have a set point based on the RPMs of the seed shaft to a known travel speed and then calculate the new seed shaft speed as travel speed changes.

Is a project like this feasible with the Arduino?

Thanks

I can't think of any impossible problems. I don't know of any doppler radar speed sensors off the top of my head, but there are several GPS modules available, and you probably don't need to update the speed more than once a second or two. You'll need an appropriate driver transistor (MOSFET?) to drive the valve.

Building the thing to be robust enough to survive the agricultural environment might be the hardest part.

How is the seeder moving? I'd get e.g. wheel revolution for measuring the travel speed.

My thought as well: wheel speed will be far more accurate than GPS and cheaper than any radar based system.

Other than that indeed no obvious issues. 12V DC calls for a MOSFET driver, just get one that can handle the required power. PWM frequency is low, which is great as it allows you to use an optocoupler between the MOSFET and the Arduino for extra electrical protection.

Thank you for the replies.

The seeder is currently ground driven. The seed hopper is a tow behind cart separate from the toolbar with the seed units mounted. I want to mount the seed hopper directly to the toolbar and eliminate the ground drive system.

For travel speed, I have a small GPS receiver left over from another project I was planning to use. It can either output GPS in NMEA or a frequency similar to a radar device. The output frequency can be set to 10.12 hz/mph or 57 hz/mph. Would this work with the Arduino? Is one signal easier to work with than the other?

Thanks

The biggest problem is that GPS is not really reliable in speed. In average it'll overestimate the speed (typically by about 10-20%), and it may be providing an unstable speed. This as the GPS track will always zig-zag a bit (due to the inherent error in reading), and the location tends to jump around a bit (by a few meters left, right, forward and back) making momentary speed unstable.

Don't you have access somehow to the speedometer of the tractor? That would offer a much more accurate and reliable speed.

7220m:
I want to mount the seed hopper directly to the toolbar and eliminate the ground drive system.

Could you retain the wheel system just for the purpose of measuring speed?

Or maybe have a suitable trailing wheel attached to the toolbar?

...R

Very interesting about GPS. The tractor uses a radar gun for speed. Very similar to this...

http://www.dickey-john.com/product/radar-ii/

Output Frequency Factory selectable options:

34.80 Hz/Km/Hr (58.94 Hz/MPH)
26.11 Hz/Km/Hr (44.21 Hz/MPH)
16.32 Hz/Km/Hr (27.64 Hz/MPH)
10.06 Hz/Km/Hr (17.034 Hz/MPH)

I forgot there is already an output cable already in the cab from the radar gun.

Setting up a wheel to read speed would be very do-able also.

7220m:
Output Frequency Factory selectable options:

34.80 Hz/Km/Hr (58.94 Hz/MPH)

I presume that means that (say) at 3 Km/hr the frequency would be 3 x 34.8 = 104.4Hz

I wonder what resolution it has - for example how much must the speed change in order to change the frequency and how long does it take to register a change in speed or how far might it travel before a change in speed is identified?

It seems to me that for sowing seeds evenly the distance traveled is more important than the speed and a trailing wheel driving a rotary encoder would seem to be ideal for getting an immediate measurement of distance traveled.

...R

The tractor has a radar gun installed already you mean? I thought you planned on buying one. That would make it much easier to start using that.

I also think reading the speed from a wheel is best.

I guess that radar measures speed by measuring distance at certain intervals, and then calculate the average speed over the past interval, turning that in a signal. Whether that's good enough of course also depends on how constant the speed of the tractor normally is.

Yes, sorry for the confusion, the tractor has a factory installed radar gun on it.

Using distance instead of speed had not occurred to me before, and makes a lot of sense. Seems like it should simplify some things.

Thanks for the help!

Well, speed is distance per time... and you disperse your seeds also on a per time basis... (volume, or numbers, or weight, or whatever - per time)... so in the end it's the relation of the speed of the tractor moving vs. the speed of the seed dispensing. Tractor speed increases (time between encoder pulses decreases), speed of seed dispensing increases.