Jump to content

Component: Kinematics Arm (Mechatronics): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(10 intermediate revisions by 3 users not shown)
Line 14: Line 14:
==Kinematics Arm component==
==Kinematics Arm component==
Demonstrates the principals of kinematics using a user configurable robot arm. Provides full simulation of the movements of the arm and the calculations of the axis positions and rotations.
Demonstrates the principals of kinematics using a user configurable robot arm. Provides full simulation of the movements of the arm and the calculations of the axis positions and rotations.
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_KinematicsArm.fcfx FC_Comp_Source_KinematicsArm.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_KinematicsArm.fcfx FC_Comp_Source_KinematicsArm.fcfx]


==Detailed description==
==Detailed description==
Line 27: Line 21:
==Examples==
==Examples==


Example program showing a siz axis robot arm with a gripper, controlled using sliders on the 2d panel.
Example program showing a six axis robot arm with a gripper, controlled using sliders on the 2d panel.


{{Fcfile|KinematicsArmDemo.fcfx|Kinematics Arm Demo}}
{{Fcfile|KinematicsArmDemo.fcfx|Kinematics Arm Demo}}




Line 37: Line 30:


===ForwardKinematics===
===ForwardKinematics===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ForwardKinematics'''
| width="90%" class="mtx-class-macrohead" | '''ForwardKinematics'''
|-
|-
| colspan="2" | Uses the current joint angles and positions to calculate the XYZ and rotation of  each of the subsequent linking joints. 
| colspan="2" | Uses the current joint angles and positions to calculate the XYZ and rotation of  each of the subsequent linking joints. 
Line 51: Line 44:


===GetJointPosition===
===GetJointPosition===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetJointPosition'''
| width="90%" class="mtx-class-macrohead" | '''GetJointPosition'''
|-
|-
| colspan="2" | Gets the XYZ position of the selected joint axis. 
| colspan="2" | Gets the XYZ position of the selected joint axis. 
Line 75: Line 68:


===GetJointRotation===
===GetJointRotation===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetJointRotation'''
| width="90%" class="mtx-class-macrohead" | '''GetJointRotation'''
|-
|-
| colspan="2" | Gets the XYZ rotation of the selected joint axis. 
| colspan="2" | Gets the XYZ rotation of the selected joint axis. 
Line 99: Line 92:


===SetGripper===
===SetGripper===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetGripper'''
| width="90%" class="mtx-class-macrohead" | '''SetGripper'''
|-
|-
| colspan="2" | Open or close the gripper 
| colspan="2" | Open or close the gripper 
Line 118: Line 111:


===SetJoint===
===SetJoint===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetJoint'''
| width="90%" class="mtx-class-macrohead" | '''SetJoint'''
|-
|-
| colspan="2" | Sets the angle or translation of the specified joint axis.  
| colspan="2" | Sets the angle or translation of the specified joint axis.  
Line 148: Line 141:
==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis
| width="90%" class="mtx-class-propfolder" | Axis
|-
|-
|-
|-
Line 163: Line 156:
| colspan="2" |  
| colspan="2" |  
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 0
| width="90%" class="mtx-class-propfolder" | Axis 0
|-
|-
|-
|-
Line 177: Line 170:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 201: Line 194:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 1
| width="90%" class="mtx-class-propfolder" | Axis 1
|-
|-
|-
|-
Line 215: Line 208:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 239: Line 232:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 2
| width="90%" class="mtx-class-propfolder" | Axis 2
|-
|-
|-
|-
Line 253: Line 246:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 277: Line 270:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 3
| width="90%" class="mtx-class-propfolder" | Axis 3
|-
|-
|-
|-
Line 291: Line 284:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 315: Line 308:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 4
| width="90%" class="mtx-class-propfolder" | Axis 4
|-
|-
|-
|-
Line 329: Line 322:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 353: Line 346:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Axis 5
| width="90%" class="mtx-class-propfolder" | Axis 5
|-
|-
|-
|-
Line 367: Line 360:
| colspan="2" | Specifies the fill colour of the shape 
| colspan="2" | Specifies the fill colour of the shape 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | DH Parameters
| width="90%" class="mtx-class-propfolder" | DH Parameters
|-
|-
|-
|-
Line 671: Line 664:
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
| colspan="2" | the angle around the common normal to between the previous z-axis and current z-axis 
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Gripper
| width="90%" class="mtx-class-propfolder" | Gripper
|-
|-
|-
|-
Line 685: Line 678:
| colspan="2" |  
| colspan="2" |  
|-
|-
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Link Mechanics
| width="90%" class="mtx-class-propfolder" | Link Mechanics
|-
|-
|-
|-
Line 699: Line 692:
| colspan="2" |  
| colspan="2" |  
|}
|}
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_KinematicsArm.fcfx FC_Comp_Source_KinematicsArm.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_KinematicsArm.fcfx FC_Comp_Source_KinematicsArm.fcfx]

Latest revision as of 14:37, 13 July 2026

Author Matrix TSL
Version 1.0
Category Mechatronics


Kinematics Arm component

Demonstrates the principals of kinematics using a user configurable robot arm. Provides full simulation of the movements of the arm and the calculations of the axis positions and rotations.

Detailed description

No detailed description exists yet for this component

Examples

Example program showing a six axis robot arm with a gripper, controlled using sliders on the 2d panel.

Kinematics Arm Demo


Macro reference

ForwardKinematics

ForwardKinematics
Uses the current joint angles and positions to calculate the XYZ and rotation of each of the subsequent linking joints. 
- VOID Return


GetJointPosition

GetJointPosition
Gets the XYZ position of the selected joint axis. 
- BYTE Axis
Range: 0 to NumAxis-1 where NumAxis-1 = end tool location 
- FLOAT XYZ
 
- VOID Return


GetJointRotation

GetJointRotation
Gets the XYZ rotation of the selected joint axis. 
- BYTE Axis
Range: 0 to NumAxis-1 where NumAxis-1 = end tool location 
- FLOAT XYZ
 
- VOID Return


SetGripper

SetGripper
Open or close the gripper 
- BYTE Position
0=Fully Closed, 255=Fully Open 
- VOID Return


SetJoint

SetJoint
Sets the angle or translation of the specified joint axis.  
- BYTE Axis
Range: 0 to NumAxis -1 
- FLOAT Value
Angle or dimension 
- BOOL Type
0=Absolute, 1=Incremental 
- VOID Return


Property reference

Properties
Axis
Number of axis
 
Axis 0
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Axis 1
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Axis 2
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Axis 3
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Axis 4
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Axis 5
Axis Type
Sets the movement type of the axis 
Colour
Specifies the fill colour of the shape 
DH Parameters
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
d
the distance between the previous x-axis and the current x-axis, along the previous z-axis 
Theta
the angle around the z-axis between the previous x-axis and the current x-axis 
a / r
the length of the common normal, which is the distance between the previous z-axis and the current z-axis 
alpha
the angle around the common normal to between the previous z-axis and current z-axis 
Gripper
Show Gripper
 
Colour
 
Link Mechanics
Show Links
Determines if the links between axis are shown. 
Link Colour
 

Component Source Code

Please click here to download the component source project: FC_Comp_Source_KinematicsArm.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_KinematicsArm.fcfx