Shaking forearm

Hi,

Today my Lynxmotion arm started to shake (a lot!) to a point that it became un-usable.

See this video:

I disconnected the USB cable from the controller board to the laptop before taking this video. When unplugging the signal cable from the motor to the board it stopped. When I plugged it back it restarted to shake.

I unpowered everything, un-plugged and replugged everything, let everything rest for 1h, and re-powered, and it seems to be back to “normal”. But I’m wondering why it did that. I was not looking at it when it append and it made a big mess on my desk :rofl:

Thanks,

Jean-Marc

We’re here to help.

  1. Can you provide some celar photos of the electronics? We’d like to see the jumpers, and all connections to the board, as well as knowing (if you can write) which power supply goes to which pins
  2. Can you confirm that when power is removed, that the C-bracket connecting to the shoulder servo (the 805BB) is not hard to rotate (as in, if you pus it over, it will fall on its own rather than remain in position). Same for the elbow servo.
  3. Can you try the LSS (base servo) on its own to confirm that you have it working well in RC 360 mode? Also, does it rotate smoothly?
1 Like

Sorry, I was very busy over the last days and I did’t get the chance to reply :-/

  1. Here is a picture of the jumpers.
  2. I will need to figure how to reproduce that.
  3. The LSS works super well and I love it! It’s able to do 360 very well (after configuration).

So the thing is, the arm acts like if it has Parkinson. But it’s always and only from the 3rd motor. Everything else works perfectly fine. I tried to assign it to a different port and it does the same. All other motors are moving correctly, and this one moves also correctly, but with some spams.

For the power supply. I have this one for the 5V:

And this one for the 12V:

I will replace the motor to see if it helps. If it doesn’t, I will have a spair motor for other projects :wink: I’m wondering if there is a high torque replacement of the HS-755HB that can fit in the same place?

Thanks,

JMS

1 Like

There’s the metal gear version of the 755HB:

Try operating the servo on its own and see if it vibrates. If so, then ensure that the brackets are not overly tightened and you’re using the springs to help with torque. If still problematic, remove the servo completely from the arm and connect it directly to the SSC-32 to see what happens.

1 Like

Thanks! here is another video:

On this one, the arm is not supposed to move anything but the 360° motor. You can see the swing from the 3rd motor. It then come back to its correct position, but it should not be doing that.

I’m not sure anymore the issue is on the motor side. I will disconnect all the cables and double-check the connections and reconnect everything.

I also keep getting some timeout errors when communicating with the SSC-32, which was not the case before.

I’m able to move the 3rd motor. It’s still operating “correctly”. The only weird thing is those movements.

Let me re-do all the connections and I will keep you posted…

1 Like

Looking at your video and your explanation, I think the SSC-32U is rebooting and you have the 3rd servo set for an initial position or something.
That would match your lost of communications as well.

Note: If the inrush current is too high, it can happen that the SSC-32U will brown-out. That’s the core reason why we have a VL and a VS. It’s usually not happening in the Arm however.

I would start by:

  1. Verify that the SSC-32U do not have any of the output set to “initial position” using LynxTerm software.
  2. Put the jumper for VS = VL
1 Like

Oh… nice MTG sorter you are doing there…!!

1 Like

Thanks :grin: It’s already working pretty well! I just need it to be more precise on the moves on the arm. And I’m waiting for a 3D printer to build a boxes ring…

  1. So. I have put the jumper between VS = VL.
  2. As I don’t have a single machine running windows at home, I can’t run LynxTerm. But I don’T think anything ever got confirmed with initial position
  3. I removed and re-installed all the wires.
  4. The 2 springs are in place and pulling nicely.

With all of that, it worked well for some time, maybe 1h, ben then started again to have weird reactions. I stopped it for 1h, and it’s back working. Not sure why. The arm is resting every 9 minutes, to cool down, with all motors stopped.

What is the in-rush? And do I have a way to check “initial position” without LynxTerm?

I will keep it working a bit more and report on what it is doing…

1 Like

This could just be the motors overheating if you have issues after 1h.
Those RC motors are not made to be used constantly and might fail if you do.

The LSS are more forgiving and have Aluminum casings to dissipate heat but still not made to run 24/7.

Inrush is a term we use when a component (servo) is moving and pulling more current in this period of time.
When paired with a wall adapter, it can pull more than the rated current and the voltage will drop which can cause the electronics to power down / reboot.

Don’t look to be your problem here, I would say it’s heating over time.

1 Like

I’m not 100% convinced that it’s over heating. The robot totally stop for 2 minutes every 9 minutes. Which is close to a 25% rest. And there is no weight on the motors. I touched them and they are not even close be being hot. Also, the video above when the big swing was when everything was cold for hours, as soon as I started to use it. I’m wondering if it can be my power supply who became old and is now not able to provide enough power anymore…

Also, to rule-out the over heating option I will change the code to rest 3 minutes every 6 minutes. That will be 33% rest time. Should be way more than enough.

1 Like

You said that you are 100% sure it is over heating but also said they were cold.
Not exactly sure about that, maybe you wanted to say “it’s not over heating” ?

The big swing is something weird.
RC servos have a PWM signal sent to them and will respond to that signal. It’s a PWM signal repeated constantly with a pause in between.
If the servo move, it’s because a signal was sent to that specific output.

What can happen is a mix of Initial Position and Reboot of the board.
In this specific case, the servo will go to that position at power up and then back to the normal position when your code is sending it.

This could be confirm by moving the arm manually while not powered, then power it without the USB connected.
The servos should not move if no commands are sent and “Initial Pulse” is OFF.

1 Like

You made me re-read what I wrote twice :wink: But I said “I’m not 100% convinced that it’s over heating”. I just started the robot after resting for a day and straight on the right move it started to bounce.

Because most of the time when I start it it doesn’t bounce I don’t think there is an initial position configured.

Is that possible that 2 wires are “corrupting” each other? Like, when a signal is sent to one, because the other one is just beside, it gets parasite signal and moves? Then comes back to the “normal” position? Do I have a way to isolate the wires a bit better?

Then I power the arm without the USB, nothing is moving. Even if I move the arm into a different position (which I almost always do).

Do you think it can be because one power supply is not powerful anymore?

1 Like

The initial Jump if done at the very start would mean it’s not Heat.
I never seen crosstalk (corruption) of signal on a RC PWM and would not think it’s possible.

To be honest, it seems to be a command sent to the SSC-32U.
Maybe you have something in your code which make it glitchy ?

Oh and what’s that wire ?

1 Like

My code is deadly simple:

			Main robot = new Main();
			robot.send("#16P500T1500" + (char) 13);
			Thread.sleep(5000);
			robot.send("#16P2500T1500" + (char) 13);
			Thread.sleep(5000);
			robot.send("#16P1500T1000" + (char) 13);
			Thread.sleep(2000);

I just make the motor rotate 360° without sending anything to the other motors. So it should only rotate and not bounce, but it’s doing this

I just took this video.
Now, you can see at the end that if I shake a bit the wires at some points it stops moving. Like if a connection was not correctly done. After I did that it’s now working for the last 10 minutes. So it’s very random unfortunately :-/

This black cable was a power supply. Here is a better view.

1 Like

Some points :slight_smile:

  • The code only address only output 16 which is the LSS, can you send a initial position to ALL of your servos ?
  • Servo extension and pins that connect in between (servos will jump when plug-in so that might be the issue)
  • Can you tell us what’s the Green wire is on #15 / #14 ?
  • Disconnect all the servos and add them one by one until you can point out the issue ?
1 Like