I want to use pixhawk with the apm rover firmware to operate an agricultural tractor. I need to set up my tractor as an rc vehicle. My plan is as follows: any feedback I can get is appreciated. I plan to order the parts in the next couple days but if there is something I've overlooked or my plan has no chance of success let me know.
Throttle control: Linear servo (https://www.servocity.com/html/25_lbs__thrust_linear_actuator.html#...) I don't see too many problems here.
GPS: I plan to use the gps already installed in the tractor. I am planning on buying a pololu 23201a to convert the serial nmea to something I can input to the pixhawk.
Steering: This is what I'm most worried about. The tractor has an electric over hydraulic steering valve, so basically provide 12v to right side tractor turns right, provide 12v to left side tractor turns left. I am planning to put in a dual 12v relay controlled by pwm signals for the steering https://www.servocity.com/html/electronic_pwm_controlled_dual.html#... Anybody have a gut feel on whether this will work or not? The problem is the steering output from pixhawk needs to reach a certain threshold before steering valve will operate this is quite a bit differnt than how it is set up on my rc car where each pwm value corresponds to a specific steering angle.
Clutch: Much testing has to be done with a person in the cab to operate the clutch and some sort of ignition failsafe installed before I get the tractor to be totally autonomous but I would like to start thinking about the clutch, and start testing some setups with a person in the cab. I could get a linear actuator that releases the clutch when throttle pwm reaches some predefined threshold? But I would really like a system that if the power is cut or signal is lost clutch is automatically depressed which will stop the vehicle. I could set the clutch up to be always depressed and use a linear actuator to engage it. Connect the actuator to the clutch with an electric solenoid so if power is lost actuator releases and clutch disengages. Anyone else have some good ideas?
Will do. It's going to be a few days before I get back to this though. The weather has turned nice here and I need to do some farmwork. Also my wife threatened that if I play with my "toy" another day instead of fixing our hot tub she's going to throw it out the (pixhawk not the hot tub). LOL I do tend to get distracted. I'll try and at least get my steering settings posted here tonight I bet they are unique. Not sure Ill get to the logs though.
Here is the log. You'll have to get it from my dropbox it is over the 7mb limit. I'm pretty sure this is the log from my latest video but i'm really guessing as I've never worked with these before. https://www.dropbox.com/s/zba7irnrat1lvyw/153.BIN?dl=0
Thanks Matthew. I will have a look and let you know.
The first thing your log tells me is you only have GPS2 configured. No GPS1. Do you have 2 GPSs fitted or just one? I see you have GPS_TYPE set to 0 which means disabled and GPS_TYPE2 set to 5 which is NMEA - perhaps your using the tractor's GPS? Interestingly it uncovered a bug in our code where we don't set the dataflash log datestamp if you only have GPS2 - THANKS!
That's correct I'm using the tractors GPS it is quite a bit more accurate. I have the 3dr module unplugged right now just so that I could be sure it was using the tractors gps for navigation. Probably plug it back in for some redundancy later. Mission planner also so no gps on the HUD when using only gps2.
Got thinking some more about this and I really like your idea, it's simple and elegant if it would work. I'm going to put a piece of tape on the steering wheel today when I'm seeding so I can get a better idea of how much creep is in the system. If it doesn't get too far out in an hour that could work because the harvest workflow is such that every hour an actual person will be hopping in the cab to unload the grain at which point they could recenter the servo. Then I'd have all winter to write drivers and try other more long term solutions.
I got thinking that part of my problem with the weaving in the video is where I have my gps antenna on the tractor. I have it up there because I feel I get better accuracy when using the autosteer system in this tractor which is just going straight up and down the field. Because the steering is articulated every time the tractor turns the nose and the antenna moves quite a bit. I wonder if I move the antenna closer to the point of articulation if it wont be a little smoother.
LOL!! That's not a laugh actually. When the title of the post said "tractor" I envisioned a Sears Craftsman lawn mower not what you have.
This is really cool. Please keep updating and hopefully a dev will take interest in it if not already.
I don't think that's going to make any difference. Its going to be the tuning parameters for sure. I'm going through the logs and will let you know how the look soon.
I had a brainwave this weekend. This is all so new to me and so I think this was the obvious answer all along. But I should be controlling the steering using one of these https://www.pololu.com/product/1393. Its a brushed dc controller with feedback control so if I put a potentiometer at the articulation point of the tractor I should be in business. What do you think? That would sort of make the logs I sent you obsolete b/c this should work a lot better.
Keep the ideas coming it challenges my thinking I don't want to get stuck on one way of doing it when another is better.