Asked — Edited
Resolved Resolved by DJ Sures!

Multiple Motors

The robot that I am building is going to have DC motors for XY and Z movement as well as elbow bending, wrist turning, etc. I will probably wind up with eight DC motors when I'm done.
Now that I've learned how to drive a DC motor with an H-bridge which works for two motors how do I drive the remaining six motors ? One of the motors will require the use of a SyRen 50 controller. My plan is to use 10 turn potentiometers on the motors for position feedback.


ARC Pro

Upgrade to ARC Pro

Take control of your robot's destiny by subscribing to Synthiam ARC Pro, and watch it evolve into a versatile and responsive machine.

#41  

Awesome that it worked in R/C mode! That is SO much simpler than serial mode. Just treat it like a servo!

Alan

#42  

Yes! I am so excited that I was able to crack the nut on this! I am now certain that I will be able to accomplish my dream! I now have a lot of welding and machining to do but I should have the arm ready for EZ control within a couple weeks! I have decided to name my robot Wiggins... This is a very happy day for me!

Thank you everyone for your patience and support!

My next questions will probably be about building and accessing a database for position storage if anyone has experience with that.

Castle

#43  

OK! Way to go Castel! Well done. I think you found the issue I was having trying to run this in RC mode.

I'm sure my problem was the way I had the control input ports of the Roo wired. I had it wired for Serial Input and I then set the Roo dips for RC Mode. I had no wire at S1 (Transmit (TX) ) as when I tried this I had the V3 EZB (because that old controller version could not revise any info back from a device). I then ran a wire from the Digital pin on the EZB (ver 3) to S2 on the Roo to be wired for Receive (RX).

Sounds like your having the Roo set for RC mode (and also independent mode) and then wiring from the digital signal pin to S1 on the Roo (for motor 1) is the proper way to do it to be able to use servo commands through ARC.

I would imagine to be able to use the other channel (motor 2) on the Sabertooth it would be as easy as attaching a second wire to a different digital port on EZB and then to S2. servo commands in ARC would point to the digital ports each channel of the Roo is attached to. I assume this is exactly how to get this setup it function within the Auto Positioner control.

This is great work and actually helps me out more than you can imagine. Up to this point I haven't been able to use the Auto Position control on my robot arm because I had the one elbow DC motor controlled by the Sabertooth/Roo (and that lifts most of the weight) commanded through EZB's Uart ports. Then the four servos that move the rest of the arm are commanded through the digital pins on EZB. The Auto Position control will not work with Serial commands through the Uart ports so I was stuck writing separate position and speed commands for the DC motor and servos I wanted to move. Your work opens up a whole new (and better) way for me to set up arm aminations for my robot arm.:D Thanks so much!

#44  

Castle, another option for the arm joints that are not lifting a ton of weight but are still more than a HD servo can handle is the ServoCity RobotZone Gearbox with your choice of standard sized servo installed in it. They have different gear ratios that will change the amount of torque supplied. However the higher the torque the slower the unit will move. Depending on the servo and gear ratio you use you can get over 3,402 in-oz of torque with these. I use the 7 to 1 ratio with a servo installed rated for 486 oz-in on my arm and it seems fast enough for natural human movement. With this setup it can lift more than 4 lbs on the end of a 2 foot arm without effort. You can mount them several ways depending on what model you choose. I bought the channel mounted type and used the channel as the skeletal support system of my arm. Here's a link:

RobotZone Gearboxes

User-inserted image

#45  

Hi Dave,

I couldn't have done this without you! I'm glad that I can be some assistance with your wonderful project! My next step is to do the same thing with a quadrature encoder.

I got a response from DE support this morning and they told me that you can only use one type of feedback for both channels on the kangaroo - digital (quad) or analog (pot). They also told me that during two channel autotune that the kangaroo alternates between motors 1 and 2 until the tuning process is complete.

In my application I need to run a gear motor driven pinion gear down a 40 foot long rack and have position. I have been fooling around with gear ratios to get down to within 10 turns for the entire length of the rack (with 48 teeth per foot) but I believe that if I use a quadrature encoder then I don’t have the 10 turn limitation. The issue becomes how to run the pinion all the way down the rack and back when doing the manual turning of the encoder?

I have decided to put a DPDT switch in the gear motor power wires to allow me to switch between 12vdc driving the motors and the sabertooth driving the gearmotor. In this way I can start the Teach Tune autotune sequence with the encoder connected to the gear motor but use 12vdc to manually drive the pinion the entire length of the rack, thence to the other end of the rack and then to the center. When centered, I then switch the DPDT to sabertooth powering the gearmotor and then push the final autotune button press to start the autotune process. I will thereby get very accurate ends of the Teach Tune as the encoder is attached to the gearmotor which drives the entire length - no guessing!

The rotary encoder I bought on Amazon for $16 only came with a wiring diagram with Chinese characters for each wire color for the Vcc, G, 0V, A and B connections but using Google Translate I was able to type in the wire colors and get the Chinese character to match up on the diagram ?.

I have attached a photo of the encoder and here is the sequence: Vcc Red 0V Black A Green B White G Shield

The big idea of using 10 turn pots or rotary encoders is that I am not limited to less than a full circle as is the case with a normal pot which has only about 300 degrees of rotary travel.

I’ll keep you posted on my progress with this type of feedback. I should only have to change DIP switch 2 on the Kangaroo from OFF to ON. Do you have any experience with quadrature encoders?

Castle

User-inserted image

#46  

Dave,

Thanks for the info on the RobotZone Gearbox. Cool idea but no where near the load carrying capability I need...

I'm looking to be able to lift and move at least 70 lbs.

Castle

#47  

@Castle - the sabertooth and kangaroo are an amazing combination of electronics. Now that you have it working you should be able to switch from position mode to speed control mode. In speed control mode the motion is unlike the common servos that just move full speed to the set position then abruptly stop. In speed control the motion happens in a controlled fashion. There is also the DEScribe software that allows you to go in and tweak the motion parameters to really dial it in. There are YouTube videos on the different modes that dimension has posted. Good luck.

#48  

Castle, Yes, I prefer using an encoder with the Kangaroo. I've used only one encoder though and it has very well for me. It's a high resolution encoder made by Avago Technologies. You can get it from Mouser in several mounting and shaft size types that easily attach to just about any surface or shaft sizes of your choice. Here's the one I choose: 630-HEDS-5500-A06. Mouser order page for encoder

Here's a link to a PDF with all the info needed to make a choice for the encoder that is right for the project being worked on: docs.avagotech.com/docs/AV02-1046EN

User-inserted image