I’m having trouble with the movements I’m able to run as a demo within the play tab on RIOS.
I have configured the robot as far as I can tell on the SSC-32 tab on the main screen on the RIOS programme and saved the progress I made as it says to do in the printable guide.
-My problem is I’m not sure it has actually saved my input, as when I run some of the demos it is still exceeding some of its limits- notably when it tries for a full extension in a diagonally ascending motion but also when it reaches for the floor and grabs.
Is it having difficulty when running more than a few movements at once?
How do I rectify these problems?
I have spent a lot of time checking that all of the servos are in the right places etc so I don’t think that is a problem.
Another problem I am having is when I fist turn the power supply on and run the 1.5mS it will exceed one or more limitations and then slump but as soon as I run the test again it will be fine and achieve the intended movement where all servos are in the 1.5mS position with the robot fully erected.
Please could you advise me of the next step as it is becoming more and more difficult for a novice such as myself to suss what to do next.
So, to conclude:
Arm has trouble when running some demo applications as it isn’t performing the same operation as the virtual robot on screen – mainly when performing a few movements at once or when it is required to hover just above the floor but as it is on a small stand it is able to reach past the flooring so judders and irregular movements.
How can this be solved?
When running the 1.5mS the first time from having power applied it will exceed its required movement but will be fine if I run it again.
Why is this?
Is there any way of checking that my inputs have been saved on the SSC-32 config as it doesn’t seem to make a difference even after I have taken the time to change each individual servo.
Any bits of advice to a newbie such as myself?!
You guys have been really helpful so far and I have been reading a lot of the other posts so I hope I haven’t covered anything that has been answered already.
This sounds like the SSC-32 is resetting. Remove the VS1 = VL jumper, and install a 9vdc battery clip on the VL input, red is (+) and black is (-). This will solve the slumping issue. It may fix the other problems you have been seeing as well…
Where abouts are the VS1= VL jumper is this where the main power supply meets the base of the robot?
For the application which I am intending it for it will need to be active for long peridods of time/ or inactive as the case may be. How long can I expect the battery to last?
Yes, it’s in that area of the board. You can consult the users guide for the SSC-32, or the tutorials for the arm available on the website for more information. (The tutorials discuss this in more detail) You can always use a 9vdc wall pack to replace the battery.
I wrote my motion profile(s) so that at the end of the work, it moves into a nearly slumped position and then gently drops itself onto a piece of foam rubber when the pulses stop. Turning it on again I don’t order it to 1.5mS, but rather to the position I knew it was at when I turned it off. That way it only jerks a small distance on power-up. Then with a little move sequence it runs itself (safely!) up into the 1.5mS position.
I’m using my own homebrew electronics, so I wouldn’t know about the SSC-32 resetting, but when I was running the servos and the MCU (another AVR, incidentally, but a 90S2313) off the same power supply the servo spikes did indeed reset the AVR. Many times. Solution was use another supply.
Some more advice, perhaps someone else can expand on this: Backlash is a problem, but can be avoided by always approaching the desired location(s) from the same direction. If necessary, overshoot and come back into position.
I have some questions of my own, though:
The movement is often wobbly, despite using low accelerations on the servos. Sometimes it wobbles in place. This is not good. At the moment the servos are all running on 5V - Would more voltage help much?
Much of the wobble seems to come from the baseplate flexing. It lifts nearly 0.250" off one of the nylon screw heads! Anyone tried building one made of sterner stuff than Lexan or reinforcing the one that came with the kit? Is there anywhere else that would immediately benefit from reinforcement?
It seems my arm was an ‘old kit’, since it didn’t come with springs (ordered it about a month ago). What would the springs attach to, anyhow? (At the moment, I’m using a rubber band and replaced one of the plastic servo rivets with an 8-32 screw 1" long). Has anyone tried rigging springs to the other end of the middle arm or to the gripper?
----I wrote my motion profile(s) so that at the end of the work, it moves into a nearly slumped position and then gently drops itself onto a piece of foam rubber when the pulses stop.------
How am I able to accomplish this?
----the servo spikes did indeed reset the AVR. Many times. Solution was use another supply. ----
Can this be accomplished by using the 9v battery?
What is the cause of the spikes?
I set the servo pulse widths to the following: Shoulder (the dual servos) to 0.75mS, the elbow servo to 1.00mS, and the wrist servo (tilt) to 2.40mS. Do the wrist move first, then the elbow, then the shoulder. If I can figure out how to post a picture here, I’ll send one of what it looks like lying down that way.
This stops it about an inch off the tabletop. I have a half-inch thick foam pad for it to bounce on, so it only drops half an inch. Then it only leaps back up half an inch when I turn it back on.
Of course, your parking position may vary, because all the arms are adjustable, but that’s what works for me.
Inadequate decoupling capacitance. (Simplified):
When the servos start to move, they take a lot of power. This means current. Thus the resistance in the wires to the power supply causes a voltage drop (Ohm’s law!). If the voltage drops far enough, the AVR resets itself. This can happen very fast - you’re not likely to be able to see it using only a voltmeter. Even slow oscilloscopes might not see it.
I don’t know about the SSC-32, but I strongly suspect using the battery will help a lot. That way the servo power spikes only affect the servos, and the AVR doesn’t even notice.
After I posted, I saw the ‘Metal Arm Base’ (MAB-01) advertised. Will that one fit the lower segment of a Lynx 6 ? From looking at it, however, I’m worried that all the torque loading of the arm outstretched will be borne by the servo bearings, and I’m not sure the servo would be happy with that. I’d think some sort of thrust bearing (or even a ring of slippery nylon screw heads) would be better.