Robot Arm slushengine coding


#1

Hye, Im developing robot arm 3d robot using the slushengine model D + raspberry pi. I have a problem with my shoulder part of the robot. Im using two nema 23 motor with 3.0amp spec. But its hard to move the robot. I want to know in the example coding :

motor1.setCurrent(run, accel, deccel, hold)

how big value can I increase my current. Right now im using 300 it seem to big to me. But the motor cannot hold the robot weight. Is it safe to increase the value? and how maximum can it be?

Video Problem :


#2

What motors are you using? Did you buy the kit from the site?

Yes typically those current values are through the roof. They would probably just make the SlushEngine shut down from over-current. Can I ask what power supply you are using? Judging by the size of the stepper motors that you have movement shouldn’t be a problem at all.


#3

Assuming you’re using Motor.py from GitHub Slushengine, then the method is defined like so

''' set the current'''
def setCurrent(self, hold, run, acc, dec):

Note the first parameter is Hold, followed by Run, Acc and Dec. I would suggest starting with a value of 10 for Hold, and then increase by 5. Acceptable registry values are from 0 to 255.

You may also need to set overcurrent threshold value via,

''' set the overcurrent threshold '''
def setOverCurrent(self, ma_current):

You could also try tweaking the microstepping to give more torque

Are the arms are belt driven? Make sure there’s enough tension, so that it doesn’t slip.


#4

Thank you for the info rraghvani, mine was also running very weak and was barelyable to lift the arm. I tryed to find a good current value but my slushengine fried with a value of 60 in 40 sec. I bet with a value of 255, it will catch on fire? Im a little scared to try this.

Anyway, ive decided to remake the forearm and put steppers with gearboxe everywhere to give the arm a little lifting capacity. The stepper on the wrist was so weak that twisting the cable connected to it was a challenge, and it was still getting hot as hell. I think my board was defective because I was using the standard robot.py code. If I can get it done maybe I can share the modification with you guys and we will see if the arm is able to lift something useful with gearboxes.


#5

Hi Olivier,

If you didn’t purchase the kit from roboteurs.com, then I suggest you reduce the values of setCurrent in robot.py first. You can gradually increase the values till you find the optimal value to move the arms. Also, keep an eye on the chip to make sure it doesn’t get too hot!

Keep us posted of your progress.