Component: Kinematics Arm (Mechatronics): Difference between revisions
Appearance
Created page with "{| style="width:50%" |- | width="20%" style="color:gray;" | Author | Matrix TSL |- | width="20%" style="color:gray;" | Version | 1.0 |- | width="20%" style="color:gray..." |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (13 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. | ||
==Detailed description== | ==Detailed description== | ||
| Line 27: | Line 21: | ||
==Examples== | ==Examples== | ||
Example program showing | Example program showing a six axis robot arm with a gripper, controlled using sliders on the 2d panel. | ||
{{Fcfile|KinematicsArmDemo.fcfx|Kinematics Arm Demo}} | |||
| Line 40: | Line 30: | ||
===ForwardKinematics=== | ===ForwardKinematics=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 54: | Line 44: | ||
===GetJointPosition=== | ===GetJointPosition=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 65: | Line 55: | ||
| width="90%" | Axis | | width="90%" | Axis | ||
|- | |- | ||
| colspan="2" | Range: 0 to NumAxis where NumAxis = end tool location | | colspan="2" | Range: 0 to NumAxis-1 where NumAxis-1 = end tool location | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | ||
| Line 78: | Line 68: | ||
===GetJointRotation=== | ===GetJointRotation=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 89: | Line 79: | ||
| width="90%" | Axis | | width="90%" | Axis | ||
|- | |- | ||
| colspan="2" | Range: 0 to NumAxis where NumAxis = | | colspan="2" | Range: 0 to NumAxis-1 where NumAxis-1 = end tool location | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | ||
| Line 102: | Line 92: | ||
===SetGripper=== | ===SetGripper=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetGripper''' | ||
|- | |- | ||
| colspan="2" | Open or close the gripper | | colspan="2" | Open or close the gripper | ||
| Line 121: | Line 111: | ||
===SetJoint=== | ===SetJoint=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | 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 151: | Line 141: | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis | ||
|- | |- | ||
|- | |- | ||
| Line 166: | Line 156: | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 0 | ||
|- | |- | ||
|- | |- | ||
| Line 180: | Line 170: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 204: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 1 | ||
|- | |- | ||
|- | |- | ||
| Line 218: | Line 208: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 242: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 2 | ||
|- | |- | ||
|- | |- | ||
| Line 256: | Line 246: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 280: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 3 | ||
|- | |- | ||
|- | |- | ||
| Line 294: | Line 284: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 318: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 4 | ||
|- | |- | ||
|- | |- | ||
| Line 332: | Line 322: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 356: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Axis 5 | ||
|- | |- | ||
|- | |- | ||
| Line 370: | Line 360: | ||
| colspan="2" | Specifies the fill colour of the shape | | colspan="2" | Specifies the fill colour of the shape | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | DH Parameters | ||
|- | |- | ||
|- | |- | ||
| Line 674: | 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" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Gripper | ||
|- | |- | ||
|- | |- | ||
| Line 688: | Line 678: | ||
| colspan="2" | | | colspan="2" | | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-propfolder" | Link Mechanics | ||
|- | |- | ||
|- | |- | ||
| Line 702: | 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.
Macro reference
ForwardKinematics
| ForwardKinematics | |
| Uses the current joint angles and positions to calculate the XYZ and rotation of each of the subsequent linking joints. | |
| Return | |
GetJointPosition
| GetJointPosition | |
| Gets the XYZ position of the selected joint axis. | |
| Axis | |
| Range: 0 to NumAxis-1 where NumAxis-1 = end tool location | |
| XYZ | |
| Return | |
GetJointRotation
| GetJointRotation | |
| Gets the XYZ rotation of the selected joint axis. | |
| Axis | |
| Range: 0 to NumAxis-1 where NumAxis-1 = end tool location | |
| XYZ | |
| Return | |
SetGripper
| SetGripper | |
| Open or close the gripper | |
| Position | |
| 0=Fully Closed, 255=Fully Open | |
| Return | |
SetJoint
| SetJoint | |
| Sets the angle or translation of the specified joint axis. | |
| Axis | |
| Range: 0 to NumAxis -1 | |
| Value | |
| Angle or dimension | |
| Type | |
| 0=Absolute, 1=Incremental | |
| Return | |
Property reference
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