I have the uARM Metal, and have been trying to program it using
_x = uarm.getCalX(); _
_ y = uarm.getCalY();_
_ z = uarm.getCalZ();_
to retrieve coordinates and then using
_uarm.moveTo(x,y,z);_
to replay these coordinates.
When replaying the coordinates the unit is always missing the proper position by 3-5cm to the right. I figured this was a calibration issue and tried calibrating agian using the ‘Calibration’ Arduino sketch. However this did not fix it. I am not sure if I am calibrating this right, the documentation is terrible for this step and the youtube videos are hard to follow. There are multiple links saying to refer here: http://developer.ufactory.cc/quickstart/
for calibration instructions however calibration is never references outside of that 3 picture diagram.
Please help me with this issue, I am starting to regret this purchase.
#EDIT:
To clarify after calibration is done, and the arm returns to CENTER position, the arm is lined up slightly to the left. During the manual stage of calibration for the 45 degree position, I lined up the arm with the front left leg on the uARM (front left leg when you are facing the uarm).
#EDIT#2:
After further testing I noticed that LINK1 and LINK2 have some drift to them:
#Test 1: Test limits of Link 1 and Link 2
The current location is 0 , -27 , 8 #Link 1 and Link2 all the way back position
The current location is 0 , -7 , 17#Manually moved to random position
The current location is 0 , -9 , 18 #Position reported after moving to (0 , -27 , 8)
#Test#2 only move base servo.
The current location is -6 , -6 , 18 #starting position
moved only units X axis (Servo 1) and then told unit to move to (-6 , -6 , 18 )
The current location is -6 , -7 , 19 #Different position reported after moving.
Here are the results of more testing:
In this file the variables are (servo1 angle, servo 2 angle, servo 3 angle)
I am moving all servos to the specified angles and then reading back the angles. Then under ‘Error:’ I am showing how innaccurate the movement actually was.