Using the Pixhawk and Raspberry Pi… anyone using additional servos beyond a camera servo?
Hi Peter,
It’s possible to add more servos right now but we don’t have a simple way to set up control of them. Can you tell me how you would like to use the servos so that we’ve got a better idea of how they might be controlled?
-Rusty
I have students looking to add a (one servo) gripper with an additional degree of movement using an additional servo.
Auxiliary ports 1 through 4 on the pixhawk should theoretically allow servo hookups. 5 and 6 are apparently different. I plan on also splithing the existing camera servo output to control a second light panning servo, but your student could use that to get an additional axis sort of?
We have recently added some buttons that can be configured to step up to three servos on Aux ports 1-3, but the implementation of this is subject to change. We need to figure out what works best for all applications.
-Jacob
I’m pretty sure that most people adding a robot arm are going to want a Gripper open, gripper close button. For my application I would also want a “rotate arm clockwise, counterclockwise” and “tilt arm up or down” buttons, and a “switch auxiliary camera input from 1 to 2 to 3” channel using this multi camera switcher Cannot Find Product...Searching . which I’m guessing most people will not have. The intent there is to have 3 lower quality auxiliary cameras (https://hobbyking.com/en_us/mini-cmos-fpv-camera-520tvl-120deg-field-of-vision-0-008lux-14-x-14-x-29mm-ntsc.html) I can cycle through to watch the back of the ROV, the down view (for landings) and possibly a 3rd one to watch the arm from a different angle than the main camera.
This is an interesting feature. It would be nice to add also additional axes, since there are several gamepads (such as F310) with 6 axes
Our team would be using this type of robotic arm with two servos, so would we use the multi-camera switcher to swap which servo we would be controlling? Or would we be able to swap which one we would be controlling using QGroundControl?
Emma Hagen
CEO and CFO of Altum Operations
My battery charger hasn’t arrived yet so I can’t confirm, but that camera switcher doesn’t switch servo Inputs. Just video feeds. There may also be a similar servo Input swapping device out there though
If there was one more servo channel available I’d add another arm axis.
I think what she means is the camera tab in QGroundControl where you set up the servos for the camera tilt/pan. Would there be a way to control multiple servos using the “camera servo” function even if not for a camera and if they are “standard” servos not micro?
Tobin Cox
Electronics and Software engineer of Altum Operations
you can split the signal to that servo with a Y splitter as long as you don’t need the full current. I’m actually going to do that with the existing camera tilt servo and my lightbar pointer servo in the tertiary hull down below.
But if you tried to control it that way, wouldn’t it just control the two at the same time, both doing the same thing? We would want ours to be independent of one another in terms of when they turn and how far they turn.
Emma Hagen
CEO and CFO of Altum Operations
Would they be configured as motors, camera servo gimbals, or something else?
Emma Hagen
CEO and CFO of Altum Operations
They would be set up as general-purpose servos, and joystick buttons would be set up to open/close or increment the servo angle.
-Jacob
The problem here, is that the MANUAL_CONTROL message only provides 4 axes. We will need to make a new mavlink message to support this. This is something that may happen in the future, and would definitely be useful concerning controlling a robotic arm.
Hi there,
I am facing similar problems, I want to hook up my ROV to 5 servos, but have only been able to put 3 so far. Aux 1 - 3 have already been used, but do not know how to hook up the additional 2, any help would be great! Thanks
Mains 1 - 5 are already used for motors by the way. Thank you so Much
What is the function of the servos? There is only support for 3 auxillary servos with no explicit function.
So I have 5 T100 Motors connected, and I have 3 DC motors with ESCs that I am currently treating as “servos”. I don’t really want these 3 DC motors to use the same input as the rest of the 5 motors (i.e. with the two joysticks) as the DC motors are part of a secondary mini-rov. Is it also possible, to hook up 3 DC motors to main, but use other buttons such as the Y or X button on the 360 controller to operate?
I have 2 other servos for the arm.
Everyone seems fixated on using the PixHawk to control extra servos.
Let the PixHawk control the thrusters, and use a servo controller connected via I2C to the Raspberry Pi to control the servos. An SSC32 servo controller will control up to 32 servos…it’s what i use to control my 9-dof arms on my ROV. Available from Lynxmotion or RobotShop.
To get analog inputs INTO the topside Raspberry Pi, without a PC, use an ADC like this one… Pi-16ADC - 16 Channel, 16 bit ADC from GP Consulting Inc. / Alchemy Power Inc. on Tindie
I bought a 32-channel one… 32 channel ADC w/I2C for Arduino & Raspberry Pi from FERCSA on Tindie
If you need to control the brightness of led’s, just connect the shaft of a servo to the potentiometer of a pwm ‘dimmer’, a couple bucks on ebay. 9k lumen led modules and driver boards can be had off ebay for $10. Coat the boards with thinned epoxy resin to waterproof them…no special housing needed. The water will keep them cool.
Instead of using a servo-channel camera switch i took the board out of a security-camera DVR and use it to view 8 cameras over the serial tether link. Just open a browser and connect to it. https://static.rcgroups.net/forums/attachments/3/0/5/3/8/4/a11624739-217-Topside-Bottomside%20Linkage.JPG
How do you achieve the communication ? I mean how gcs can send message to rpi, through mavlink?