Thank you to all the contributors to this very fine open source project!
I have the problem below with ArduRover 3.3.0-rc1, 3.2.3, but NOT with 2.5.0.
I am building a rover with skid-steer steering (converting a zero-turn lawn mower to autonomous). I am having trouble with the throttle function in ArduRover on a Pixhawk on the main vehicle. I took the control system into my electronics shop and connected small servos to PWM outputs 1 and 3.
I have SERVO1_FUNCTION = 26 and SERVO3_FUNCTION = 70. The steering action appears to be fine on servo1, but I have no throttle action at all on servo3. I have also set SERVO1_FUNCTION = 73 and SERVO3_FUNCTION = 74 and then see no movement of either servo. It is as if a safety interlock is keeping the throttle from operating.
I am operating in Manual mode so there should be no dependence on the GPS.
I know that the RC transmitter, Pixhawk output and the servo operate fine because I can set SERVO3_FUNCTION to RCIN3 (53 I think is the value) and I get good movement of the servo as I move RC channel 3.
Aww, man! That was it! I did not know (although I see it plainly now in the docs) that with the newer versions one has to arm (as the default) for manual to work! Wow… so easy and makes so much sense! Well, many hours later chasing the problem…it is working! Along the way, I learned a lot, such as how to install Ubuntu under Windows 10, install the pixhawk toolchain and get the development environment working. I have compiled and loaded the firmware. That was a huge thing and will be useful in the future, perhaps! Thank you so much for you help!
Glad you got it working. We’re making a lot of improvements in the Rover/Boat firmware recently. An autonomous mower is a really good use case so please don’t hesitate to ask for help or new features that you need.
I think I am having a similar problem with channel 1& 3 versus 1&2 on a skid steer.
I have Rover 3.4 and a Sabertooth 2x60 running 24vdc gearmotors. I am adding a Pixhawk and in the docs i see use ch 1&3 .
"Skid Steering For “Skid steering” vehicles (like R2D2) these parameters values will need to be set:
Before,when it was it was manual …I used 2 for fwd and reverse and 1 for left & right
Now my left stick acts like throttle and right stick left and right works (wrong), but fwd and back does not do anything
Can I have it the way it was?
my radiolink at10 is ch1 Aileron ch2 Elv ch3 Throttle ch 4 Rudder.
Seems like an easy fix ,but i can’t see it…
Seems like the transmitter is mapped wrong for Mission Planner directions quoted above?
Thanks for all your help …this is a learning experience but ,I love it…
Doug
Doug,
I remember having trouble very similar to what you describe when I first set up my zero turn mower. Do you have PILOT_STEER_TYPE set to 0? I can’t remember for sure, but I think that may have been what I had wrong. I am not driving my rover like a tank, with two sticks. I am driving it with the left stick being throttle and the right being the steering. If that is what you want to do, set PILOT_STEER_TYPE to 0.
Kenny
Kenny: Thanks for the reply. When I built this mower 4 years ago I set it up with right stick controls everything . With a saber tooth the right stick is ALL you need. the right stick goes forward …the rover goes forward ,the more you push the faster it goes. …pull right stick back …the same but reverse.
move right stick left for left turn and right for right turn…you just need the right stick.
I have MP set PILOT_STEER_TYPE set to 0 and what I have is what you explained you are using.
I would like to have ch2 do forward and rev and ch1 do left-right.I know it is a simple fix.
The definition of " tank steering "is what throws me off. I assumed it to mean SKID or differential control steering ,but I think tank steering in MP means you have two sticks that controls like a tank( I never drove a tank)or an old dozer…where you have a STICK in each hand.I am used to using right stick for ALL
i.e. a joystick like modern heavy equipment use.
Thanks again Kenny.
Doug Wright
The confusion may be coming from mixing up inputs vs outputs.
The documentation you’ve copy-pasted about setting “SERVO1_FUNCTION = 73 (throttle left)” and “SERVO3_FUNCTION = 73 (throttle right)” is re the outputs from the flight controller which are then connected to the ESCs/Motors.
It definitely sounds like you want to keep PILOT_STEER_TYPE to 0 like most people.
If you want to change which transmitter/receiver inputs to the flight controller are used for steering and throttle then the RCMAP parameters can be used to change this from the defaults of channel 1 and 3.
Thank you Randy. You are absolutely correct. I made those changes and had to tweek my TRX and reverse some channels but it now work as I am use to . I am learning something every day.What a wonderful job you guys have done …Thank you
Doug
The method of driving in manual or any of the operator controlled modes such as steering or acro has no effect in auto. The sticks do nothing. It sounds like the PID control might be driving a servo the wrong way. I wonder if SERVO1_REVERSED or SERVO3_REVERSED needs to be changed. I believe I had to do that but may be wrong. I can check later. You may have to reverse an rc input channel to make the manual control work if you reverse a servo.
But, I have had the same behavior if I don’t give the AHRS time to settle before trying auto. Also, way too large settings of tuning parameters will cause wild behavior.
If you upload a dataflash log, someone here can probably tell precisely what is going on.
@dwright361 I just looked at my parameters. I have SERVO1_REVERSED=1 and SERVO3_REVERSED=1 and I have RC1_REVERSED=0 and RC3_REVERSED=1.Of course the RC values are for the throttle (left stick vertical) and steering (right stick horizontal) which I am using for steering. Since you are using different inputs, you would play with the ones you are using if necessary. On the SERVO settings, I am using linear actuators which extend to cause each wheel to spin in reverse. Your method of actuating the wheels may be different so your SERVO settings may be different.
And I could be way off base on this being your problem! Keep on trying!
There is only one dataflash file created each time the software runs. The file dates are not meaningful, on my system at least, but the filenames include a number that increments, so you can know which is the most recent.
If possible, it’s best to use the Mission Planner’s motor output tester to ensure the wheels are spinning in the correct direction. it’s described a bit on the wiki here.
Kenny my DF logs are 0kb, What is the file ext needed to diag these problems?
When opened the MP says…
" Log browser will not function without FMT messages in your log.These appear to be missing from your Log"