Want to control AL5D servo angles directly in FlowBotics


I’m using Flowbotics to program the AL5D.

I’m want to work out reverse kinematics with it, so I want to be able to send calculatedangles to each motor. I have no problems with the math there, but I just can’t find out how to send the angles directly.

The code is easy to edit to find for example the code that does this for the BASE and the WRIST, so I CAN send those angles. Same for GRIPPER, easy.

However the SHOULDER and ARM motors… I can’t find the code anywhere. If you open the project in Edit mode and click in a few module layers you’ll see for example the BASE rotation arrows, and opening that model contains the angular code — which was easy to hack.

However, you’ll note that the two arrows for the Side elevation and the one on top for setting the angle — are nowhere to be found — I can’t find the module. Anywhere where it is?

Is there an easier way to set the angles in Flowbotics that is more direct?

The following guide (towards the bottom) gives a pretty easy idea for inverse kinematics for a similar arm:

You calculate the radius and angle based on the the x,y coordinate of the gripper (don’t need z height here), which is used for the angle of the servo in the base. You then need to define the gripper angle with respect to the ground, and using the radius, use simple trigonometry to calculate the other two angles (shoulder and elbow) to reach that z height.

Once again, since the wrist angle doesn’t really affect the x,y,z coordinate of the end of the arm, you need to set it as opposed to calculate it.

1 Like

Thanks the inverse kinematics I don’t have a real problem with, I understand the math.

The problem is trying to find out how to control servo angles from FlowBotics, the control application.

FlowBotics was really setup for sequencing robots, but they don’t provide direct access to controlling the motor angles of the servos.

So I know there is the “User” section that is mentioned in this forum, but that uses a PS2 controller to send UP and DOWN messages rather than actual angles.

There is also the BASE < and > buttons which you can open up to see the schematic and THAT one has the code to set the angle for base.

The problem is I can’t find the code ANYWHERE where they set the shoulder and arm servos.

I’ve got the ability NOW to set Grip in millimeters, Wrist angle, HandAngle and Base Rotation.

I can’t find the code to adjust the first two servos from shoulder up.

Is there anyway that you know from in FLOWBOTICS to set the angle more directly?

The calculations all seem pretty integrated with the display of the robot. A bit of digging:

The base equation seems to be done using a simple sine calculation.

1 Like

Yup, he kind of jumps around a lot in his code. He was trying to keep the graphic display linked with the robot motion. The tricky part is trying find out where he actually takes the input from the screen, translates it into angles and SENDS that to the board. As I mentioned, I found two of them, but not the other two… I’ll have to hunt more for it. If I do find the solution, I’ll post a component that allows direct control for other’s benefit. Worst case I guess I could write the Ruby code for talking directly with the board.