Pages: [1] 2 3   Go Down
Author Topic: Steering a combine via GPS  (Read 10359 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Newbie
*
Karma: 0
Posts: 24
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm an arduino noob, and this is my first project using an arduino. I'm using it to read inertial data and control a hydraulic valve, which is used to steer a combine. The machine is a Case IH 2588, which is 285 HP, and weighs about 30,000 lbs. I have a Windows 7 computer in the cab to process the GPS data and calculate steering angles, and the arduino is my IO card. I eventually plan to offload all of the steering calculations to the arduino.

The system uses GPS data, an inclinometer (measures tilt), and a yaw sensor. We want the machine to travel back and fourth across a field in parallel passes. The computer will keep the machine driving straight, within about 3 inches of the desired path. The distance from the path is called cross track error, and I'm seeing an average cross track error of under 1.5 inches.

We are harvesting soybeans in Iowa, traveling 4 to 5 MPH.




More Pictures:
http://lefebure.com/farming/2009/september/

Video:


-Lance
« Last Edit: September 05, 2011, 11:02:04 am by mx270a » Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 6
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Thats and awesome project! Lots of great shots too - good job man!
Logged

Lancashire, UK
Offline Offline
Edison Member
*
Karma: 9
Posts: 1991
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

I love it, anybody who can see past LEDs and servos with an arduino deserves encouragement.  Bravo.  smiley
Logged


Offline Offline
Edison Member
*
Karma: 3
Posts: 1001
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Impressive project!

I've done a marine autopilot based on Arduino (using GPS, Gyro and Compass for course keeping) and it would be interesting to know how you achieve an average cross track error of less than 2 inches?
Logged

ottawa, canada
Offline Offline
God Member
*****
Karma: 6
Posts: 990
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

I'm way impressed but I have to ask - what's the failsafe?
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 24
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

To get the cross track error down to this level took some time. Part of it has to do with having a proportional hydraulic valve to get smooth slow steering when needed, and fast response when needed. Part of it has to do with how to get accurate heading data - couple the yaw sensor to the GPS data with a Kalman filter. A steering angle sensor helps, and the steering algorithms were critical to being able to keep the machine smooth. While a 2 inch average cross track error is sweet, my goal is to get that down to the 1/2 inch range.

There are several failsafes built in. The system will not engage or operate at speeds above 6 MPH, the system disengages if the steering wheel is moved, the arduino will close the valve if it doesn't receive any data from the computer for 200ms, and worst case, there is a power switch in the cab to kill the circuit that drives the solenoids on the hydraulic valve.

At the speeds we normally travel at, nothing serious will happen if the system freaks out. At 5 MPH you can stop, shut the system off, back up, and keep going. The critical part is when we're on the road at 20 MPH. While that isn't fast in a car, these machines with rear steering aren't very stable at 20 MPH. When on the road, we flip the lockout switch in the cab so the valve can't possibly open.

-Lance
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 16
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nice project.  What computers are you using in the cab?
Logged

Austria
Offline Offline
Sr. Member
****
Karma: 3
Posts: 260
Arduino rocks
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

nice application! there are commercial things like this, but making it with a arduino is a lot smoother   smiley
Logged


0
Offline Offline
Newbie
*
Karma: 0
Posts: 24
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

There are two computers in the cab. One is designed specifically for monitoring the machine and recording data about what it does. The other is a Windows computer for the autosteer system. The motherboard is an Intel D945GCLF2 which has a dual core 1.6 GHz atom processor and 2GB of RAM.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 16
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Is that a touchscreen monitor hooked to the computer or do you have a keyboard in mouse that you use?  I am looking for a good touchscreen solution for some automotive projects.
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 24
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

It is a 10.4" touchscreen. Just a cheap one from gooddeals18.com which I found via a thread on the MP3Car.com forum. The screen was $212, and it seems to work fine. Unfortunately, it doesn't have a standard 100mm mounting bracket on the back, so I had to make a bracket to hold it.
Logged

Niagara on the Lake, Ontario
Offline Offline
Full Member
***
Karma: 0
Posts: 144
Arduino rocks!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hows the project coming along?

What kind of accuracy are you seeing? Im considering doing something like this for my parents, but I need some pretty extreme accuracy (accurate to 2" at the VERY WORST, preferably 1"). John Deere sells a system that can do this, using DGPS and a portable base station, but the setup is around $40,000. Have you looked into using DGPS at all?
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 24
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Project has been untouched since we finished harvesting soybeans. Performance was down to an average cross track error of about 2 inches. I was running a 7 inch overlap between passes without missing anything.

In terms of accuracy, there are two variables. GPS position accuracy and vehicle control accuracy. The GPS accuracy part can be resolved by using a RTK system, which will get you to approximately 1 inch position data. The vehicle control part is my problem. 4 MPH may sound slow, but a lot of things have to happen in order to keep that machine within an inch of some imaginary line, especially when you're on rough ground.

I've used DGPS when using the WAAS correction signal, but it can drift a few feet in an hour. RTK is much more stable.

-Lance
Logged

Niagara on the Lake, Ontario
Offline Offline
Full Member
***
Karma: 0
Posts: 144
Arduino rocks!
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

We've got a JD 9550 that we use for corn, beans, and wheat, so I know alllllllllllllll about driving slow smiley-wink I was looking at using some sort of DGPS system to auto-steer a plastic-laying tractor in a straight line; thats all it needs to do. Im not interested in it turning around or doing much, it would just involve the operator lowering the implement, enabling the system, and putting it in gear, and having the auto-steer system keep it in a straight line.

Do you have any insight to share about RTK?
Logged

tytower
Guest
 Bigger Bigger  Smaller Smaller  Reset Reset

You are a smart man Lance!
Quote
nice application! there are commercial things like this, but making it with a arduino is a lot smoother
and a lot smarter and I would reckon a bloody lot cheaper

Quote
John Deere sells a system that can do this, using DGPS and a portable base station, but the setup is around $40,000.

I wonder how much in dollars you have spent and what sort of hours input? How many hours would it take now to put one together? Could we get any pictures of the install?

So there goes the lunchbox heh!
« Last Edit: December 13, 2009, 03:31:50 pm by tytower » Logged

Pages: [1] 2 3   Go Up
Jump to: