Uarm Movement Problems

Not sure what happened but the uarm just does not move to where I programmed it to anymore. Using the GETXYZ and looking coordinates its displaying is all wrong. I’ve calibrated the uarm many times to correct nothing works. If you look at the video below that is how the robot arm should move based on the program I wrote but now it moves no where near where I tell it to go.

After calibrating I get these results
c
l_address: 60
servo 1
lr.getA():-36.92
lr.getB():0.36
l_address: 66
servo 2
lr.getA():-52.10
lr.getB():0.42
l_address: 72
servo 3
lr.getA():256.25
lr.getB():-0.29
l_address: 78
servo 4
lr.getA():-42.47
lr.getB():0.47

Which are nothing like the results seen in this video

Servo 3 looks quite wrong. What were the servo offsets that your calibration produced?

My immediate guess is that the pot in servo3 (Right) has gone bad and that has messed up the calibration.

If you would like, we can make a small change to your calibration code to see if that is the case.

I have the same question too!!!

help!

My servo 3 is wrong!!

I don’t work for uFactory, but It might help if you both could collect some additional data to help pinpoint the issue.

in uarm_calibration.cpp, near line 87, you can add a new line of code:

arr_real[i] = kServoRangeIni + dot_i;
arr_input[i] = l_angle_analog;
Serial.println(l_angle_analog); // <-------- Add this line

This will output the raw analog pot values for all of the servos (for comparison). We are likely to see that servo 3’s values are very different than the other servos. Either way, it will tell us something.

I add that code.and took this video!!

But I don’t know how to solve this problem?
thank you very much!!

Good job! It is pretty clear that the problem with your uArm is a bad positional-feedback pot on the right shoulder servo.

For some reason, though, the code you show in your video identifies the servos as 0-3 while it should identify them as 1-4 (as you see in your first image). The code I had you add would not have caused this.

Probably, it does not matter as we are seeing the results that we expected, and these results explain the problem.

If your uArm is a fairly recent purchase, you should be able to get a new servo. I don’t think there is any way your could have damaged that particular part. Perhaps @Poppy can help?

Thank you!!
I use the other code , so it only shows the servos as 0-3.
I bought uArm last October ,it seems that I can’t have a new servo.
May I ask you how to fix it?
Sorry to disturb you again!!!

I am afraid that a new servo is most likely needed, as we have confirmed that it is a problem with the hardware.

Is it possible you can buy a new servo?

I can buy a new servo!!
BUT I don’t know where can I buy one?
I live in Taiwan.
Do you know what type should I need?
Thank you !!

Unfortunately, I do not know the model of the servo. You might try going thought the support channels to get in touch with uFactory directly.