I’m tinkering with a electric wheelchair. I’ve currently hacked the stock wheelchair controller to cut out the joystick and use a arduino uno with a small sketch to poll 2 channels for PWM then output them to a mapped PWM output. I feed that into two DACs that basically give me a range of 1v to 4v and a “neutral” of 2.5v. This works for the joystick in both axis of the joystick.
From what I’ve gathered, I can do this inside the Ardupilot instead. (I saw in some of the documentation where I can map min/max. I should be able to take the output of those and feed them through the DACs I made.
I’m currently using PWM on the RC controller, but I guess I can change that for this since that would reduce the wiring.
My question is how exactly would this need to be configured. It works in reality like skid steering, but the actual interface would be like the Separate Steering and Throttle setting.
Would it be able to skid steer but use the traditional throttle/steering?
I’d rather just keep the setup I have on the wheelchair, it was a bariatric wheelchair so everything is very heavily built and the motor controller works just fine with the setup I have.
The end goal is to have it roam autonomously. I plan on building a arm(s) and adding a camera/head. All of that probably would be controlled via a separate computer.
Yes, that should be the default. Check out https://ardupilot.org/rover/docs/rover-steering-input-type-and-reversing-behaviour.html if you haven’t yet.
I played around with the skid steer modes but it does seem like PILOT_STEER_TYPE 0 ends up being the easiest to control from a distance.
Sounds like a cool project. I’d be interested in following your progress (especially about the arm and camera)
I’m finally getting somewhere with the project. Although now I’m having a few issues actually getting things to work. I’ve got the RC linked up and things working there for manual mode if I force it to arm. I’ve calibrated the accel out of the robot just connected to the laptop over USB. But I’m not sure how I should go about calibrating the compass. Also I’m a little concerned about the placement of the module. I have it at the top of the wheelchair base. It will be under the “torso” of the robot. So it’s above the wheelchair motors and there will be two large wheelchair motors above it to actuate the arms. I’ve got the pixhawk mounted in a sandwich container. (Yeah I know, kinda lame, but I thought it would be easy to help reduce the chance of water damage since I’ve got it sealed inside.) I’ve got that sitting on a piece of plastic that then sets on where the seat used to mount to the frame. That frame is steel. The torso of the robot is aluminum though. I will probably enclose the robot in lexan or something plastic around the frame. I’ve got the GPS module mounted high up top of the robot on a amber “gumball” light. I’ve also relocated the telem radio up on that as well just below the GPS module. I plan on also putting another HC12 module (430mhz) link on it to connect a arduino to another arduino to handle the arm control. (I plan on making a motion capture rig to wear that will allow me to use the arms as though they were my own) And I think I’ll end up putting on either a FPV camera/transmitter as well.
Anyhow, I tried the large vehicle mag calibration, it popped up a window to enter a value, but each time I tried to enter the heading it failed. But I will have to review the steps again and actually review the GCS to see what all might have been going wrong.
I did try to force it into a simple flight plan I sent to it. (3 waypoints) It never would start moving on it’s own. I could force it to move in auto with the stick and it seemed to try to steer itself a little, but ended up wandering all over the place. I also recall the GCS showed it moving all over the place even when it wasn’t moving.
Should I rethink the pixhawk mounting? Instead of down towards the base, should I mount it up high where the head would be? I just thought that might cause more issues since it’d be about 4ft off the ground at that point. Also I know even up there, there will be some 1" keyed shafts and pillow bearings for the arm joints plus sprockets/chains to deal with.
Here’s a video of me playing with it a little bit.