I am currently trying to reuse old Quadcopter parts to make a small rover. I am setting it up to use skid steer for turning. Everything is set up step by step from the ArduRover Wiki with SkidSteerOutput enabled.
When Rover is powered 1 motor initializes and then 5-10 sec later the second motor initializes but when the throttle is increased 1 motor will spin from 0-100% throttle but the second motor will start spinning from ~60-100%
I have found that one way to get both motors to spin simultaneously at low throttle is to push the steering channel almost completely to the left then start increasing the throttle channel. It seems like there is something weird about the steering channel trim. the transmitter isn't trimmed left or right and when doing a radio calibration it is reading normal (left ~1100, center ~1500, right ~1900).
Is there anything not in the wiki that needs calibration or setting up before it will work?
Do the ESCs need to be calibrated and can they be calibrated all at once like a quadcopter?
Equipment
APM: 2.5
ArduRover: 2.5
ESCs: 2x Hobby King 30A ESC 3A UBEC
Motors: 2x emax MT2213-935KV
Battery: Multistar High Capacity 3S 5200mAh
Transmitter: Spektrum DX7S
Receiver: Spektrum AR8000
Chassis: Custom Aluminum 1.2Kg
Replies
I tried to program the mixes on my DX6i to control the motors using differential steering, but it seems that either can't be done on a DX6i or it's beyond my ability.
I ended up not using Rover, but sticking an arduino between the receiver and the ESCs to do the mixing. That actually worked very well.
I'm still hopeful that I can use Rover on my APM by leaving the arduino in and telling Rover it's getting skid steer input, and needs to do skid steer output.
Here is the source: https://github.com/nickthecook/boatymcboatface/blob/master/boaty2.ino
Any arduino compatible board should work. Pin assignments are in constants at the top of the file, and variables are commented. I used one of these: http://www.anarduino.com/mini/
I ended up using a regular "quad" firmware. Then I hooked up just my 2 ESCs/motors/fans (1 CW, 1 CCW) to only 2 of the APM motor outs. I forget the order as it took some experimenting to get the right reaction for yaw. It worked but the craft didn't work very well. At least not as well as my airboat back in City 17. ;)
Hmm... that's not good. I'm trying to find a similar solution as the OP - I'm also trying to use aircraft ESCs.
Does that mean that when I've just armed, and my throttle is at 0, Rover thinks I'm in full reverse?
Is this also why when I first turn power up the vehicle one motor starts spinning - Rover is sending ~1500us, which, to it, should be stopped, while to the ESC that is half power?
Thomas J Coyle III said:
Gordon,
I'm trying to do a similar thing (airboat with differential steering), and I've observed the same behaviour (one motor responds as expected to throttle; the other seems to have an offset where the input needs to be quite high before it starts spinning).
Did you find a solution?
Nick
PS: liked your work in Black Mesa; nice job.
Gordon Freeman said:
I'm trying to make a dual motor/prop ground hovercraft (not exactly, but basically). I'm pretty sure I want "tank/skid steer controls"
I would prefer to use a standard ground radio, but can't seem to figure out the mixing, so I'm using my regular aircraft radio I use for quads. It will also likely need yaw stability, hence the use of a FC.
The problem I'm having is pretty much what the OP states. I AM using quad speed controls. I have the left motor connected to channel 1 out and the right motor connected to channel 3 out.
The left motor acts as I would expect, when I throttle up (tx ch 3) it starts to spin and when I roll (tx ch 1) it speeds up and slows down the way I would like.
The right motor isn't working that way and while in mission planner you can see that channel 3 out is not working as I would expect. Here is a rough correlation between ch1 out and ch3 out: It's as if the right motor doesn't do anything until tx throttle gets to 1500 or so (ch1 follows as I would expect)
ch1 (out) ch3 (out)
1000 1000
1200 1000
1400 1000
1500 1000
1510 1035
1600 1217
1700 1408
1800 1609
1900 1800
1950 1911
1990 1991
Steering input has a similar effect in that it doesn't seem to effect ch3 out until 1260 tx throttle in. However once the throttle is high enough, the general idea seems to be correct. The right motor (ch3 out) just seems like it has some weird offset.
Confused?
@Cl,
You do understand that the ArduRover firmware is expecting an ESC that is designed for a car and not a plane/quad.
A car ESC has the throttle neutral at 1500us with full forward at 2000us and full reverse at 1000us.
A plane/quad ESC has throttle off at 1000us and full throttle at 2000us. There is no reverse with this type of ESC.
Regards,
TCIII AVD
Yes but based on the Wiki here says
"If however, you are not using a RC car motor controller (ESC) but rather a regular aircraft motor controller (ESC), which typically does not have a reverse function, you can put the throttle on the left stick as would normally be the case for an aircraft."
Is this not true?
Can ArduRover not be set up for forward only?
Reverse is not very important to me right now.
@CI,
Yes, you can do it that way, but you will need help from Grant Morphett to setup that configuration as I have not used aircraft ESCs for my Rovers even the ones with skid steering.
I really recommend using car ESCs as you can see the trouble you are already having trying to use airplane ESCs.
Regards,
TCIII AVD
I was able to get the motors working now with the transmitter and ESCs.
Now I am wondering where in the code or mission planner I can change the output to the motors so I can use motors 4 and 3 (meaning outputs 4 and 3 from the APM) instead of 1 and 3.
I would like to do this in software and not having to change physically the plugs, since I cannot do it because of other applications that I am trying to do/achieve.