DIY robot arm general questions

asked 2019-09-22 13:42:46 -0600

makemelive gravatar image


i am waiting to recieve a robot arm (pls see it on amazon sorry for making this question depended on external links) It has 8 DS3218 large torque servo I also bought this dc dc buck converter to power it from a battery


I plan to use arduino due (for the 8 signals) alongside this buck converter (which has capacitors) to control the robot arm, I think i need to connect the arduino ground with the buck converter ground, also when the robot doesn't move and doesn't draw much current will the buck converter have problem? some require at least 10% load, i would like to avoid a servo shield since i dont know the compatibillity with arduino due and it's not needed (i plan to control it with rosserial easy!)

Lastly some advices on how to create a proper urdf (how to measure links length and joint origins) since some links have pulleys

Thank you for your advices!!

edit retag flag offensive close merge delete


Your question is more about electronic than ROS, I am not sure it is the best place to ask.

The issue with no name components from marketplace such Amazon is the lack of precise technical specifications.

I think it should work.

If you plan to use a computer with i2c such as Raspberry Pi, an alternative solution would be to control the servos directly from the PC using a PCA9685 such as this board It would avoid the rosserial stage.

rreignier gravatar imagerreignier ( 2019-09-23 01:55:07 -0600 )edit

I'll just to add that I would recommend using a servo shield. The generally include dedicated PWM driver chips which will be much better at generating the stable PWM signals you'll need to precisely control the servo posiiton. If you're running 7 servos as well as serial communication on an arduino you won't be able to get the PWM timing as good.

PeteBlackerThe3rd gravatar imagePeteBlackerThe3rd ( 2019-09-23 08:23:05 -0600 )edit

I tested to control 1 small servo with a uck converter that i had and didn't seem to have problem with the low load, also connecting the grounds together is mandatory. So the best is to use Adafruit 16-Channel for the pwm timing and connect it with i2c directly to jetson nano or to due since i arleady use rosserial I am a little bit confused i want to power the servos with the buck converter since it will provide more stable power how will i connect the buck converter with the Adafruit? will adafruit take the stable voltage from the buck converter? which ground to connect to due or jetson nano? I hope i am making sense

makemelive gravatar imagemakemelive ( 2019-09-23 10:49:19 -0600 )edit

will adafruit need a different "logic" input voltage and can be used only for the signals?

makemelive gravatar imagemakemelive ( 2019-09-23 10:51:14 -0600 )edit

Connect your buck converter to the screw terminal block (V+ and GCC) with 5V. This will be the power for the servos. Connect the Jetson Nano i2c port to the side connector (GND, SCL, SDA, 3v3 on VCC and let V+ unconnected). See instructions here:

rreignier gravatar imagerreignier ( 2019-09-23 11:00:13 -0600 )edit

ok got it! thanks!

makemelive gravatar imagemakemelive ( 2019-09-23 11:35:31 -0600 )edit

now lets hope i can make an accurate simple urdf for move it, since it's real i don't think i need accurate inertia, also some servos are not directly attach to the "links" use pulleys will i need to make a translation if i assume the servo is at the link? lastly since the servos dont have feedback what i should be carefull with, except for assuming perfect motion on the move-it part? will the robot know where it is when it starts? how to drive two servos together (same pwm? offsets?)?. That i think are all the problems i will face :P thanks!

makemelive gravatar imagemakemelive ( 2019-09-23 11:45:55 -0600 )edit