Interactive control of AL5D

Hi,

I plan to build a software to control the AL5D arm via the SSC 32_U
The software will have inputs from my user.

My question is :
What if the user move quicker than the arm?

For example if my first input tries to move the arm to a position (X,Y,Z) and tries to move it at another position BEFORE the first movment has finished ?

Will the new command override the previous one, so the arm tends to always follow the last instruction ? Or will it follow all the commands in a sequential way ? Does it depends on how i send commands to the SSC 32U ?

Thanks in advance!

Hi,

First, we’ve seen your other topic about IK, good job on that! :slight_smile:

Concerning your issue with user input being faster than arm movement, here are some thoughts:

  1. By default, if your current code sends new positions to the SSC-32U every time there is valid user input, then the arm will simply start moving from where it is to the new position right away.
    There is no queuing internally in the SSC-32U. If a channel is given a new position command, it will override the current one.

  2. Considering point #1, if that behavior is undesirable, you will need to modify your code. Two typical approaches are as follow:

  3. a) Queue the valid new coordinates in your software instead of sending them automatically to the SSC-32U as soon as they are calculated. The software would simply pull from this queue until there is none left (loop).

  4. b) Implement some rules about how the arm should move from one action to the next mid-movement and create transition coordinates to prevent awkward motions. This is obviously quite a bit more complicated than the previous option.

We hope this helps.

Sincerely,

Yes, thank you scharette !
I confirm it’s exactly the behaviour i expected for my application :slight_smile:

My arm is now assembled, and i’m driving it via my C++ app.
It’s pretty cool.

I notice some kind of “jumps” of the base servo (the one for the shoulder). Any idea where it could come from… ? Not enough power, maybe … ?

If you have a recent model, it should include the RB-Hap-01, which has plenty of power.

If you are using a different power supply, please reply with details on its specs and a picture of it (showing the text on it clearly).

Otherwise, the servo issue you describe is still pretty vague. The best would be to have a short video of the issue to have a clearer idea of what it is doing.
Also, a picture or two showing clearly the setup (SSC-32U, connections, jumpers, power wiring, etc.) would be helpful, too.

Sincerely,

P.-S.: For the video, you can upload it to a video or file sharing site and post a link here. Just make sure it is not marked private only so we can access it.