Component: Robot Arm v2 (AllCode): Difference between revisions
Appearance
m Text replacement - "class="wikitable" style="width:60%; background-color:#FFFFFF;"" to "class="mtx-class-macrotable wikitable"" |
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder"" |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 70: | Line 70: | ||
{| class="mtx-class-macrotable 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" | '''DisableMotors''' | ||
|- | |- | ||
| colspan="2" | Disables all motors | | colspan="2" | Disables all motors | ||
| Line 84: | Line 84: | ||
{| class="mtx-class-macrotable 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" | '''GetAPI''' | ||
|- | |- | ||
| colspan="2" | Gets the API version number | | colspan="2" | Gets the API version number | ||
| Line 98: | Line 98: | ||
{| class="mtx-class-macrotable 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" | '''GetAngles''' | ||
|- | |- | ||
| colspan="2" | Collects the current joint angles of the motors. | | colspan="2" | Collects the current joint angles of the motors. | ||
| Line 117: | Line 117: | ||
{| class="mtx-class-macrotable 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" | '''GetColourSensor''' | ||
|- | |- | ||
| colspan="2" | Samples and returns the RGB values read by the colour sensor | | colspan="2" | Samples and returns the RGB values read by the colour sensor | ||
| Line 136: | Line 136: | ||
{| class="mtx-class-macrotable 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" | '''GetPLCInputs''' | ||
|- | |- | ||
| colspan="2" | Reads the inputs on the secondary grove connector used to connect to outputs from a connected PLC or other external switch. | | colspan="2" | Reads the inputs on the secondary grove connector used to connect to outputs from a connected PLC or other external switch. | ||
| Line 150: | Line 150: | ||
{| class="mtx-class-macrotable 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" | '''GetPosition''' | ||
|- | |- | ||
| colspan="2" | Collects the current step positions of the motors. | | colspan="2" | Collects the current step positions of the motors. | ||
| Line 169: | Line 169: | ||
{| class="mtx-class-macrotable 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" | '''GetWifiIP''' | ||
|- | |- | ||
| colspan="2" | Collects the IP address of the robot arm WIFI connection. | | colspan="2" | Collects the IP address of the robot arm WIFI connection. | ||
| Line 183: | Line 183: | ||
{| class="mtx-class-macrotable 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" | '''GetXYZ''' | ||
|- | |- | ||
| colspan="2" | Collects the current XYZ position of the end tool. | | colspan="2" | Collects the current XYZ position of the end tool. | ||
| Line 202: | Line 202: | ||
{| class="mtx-class-macrotable 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" | '''GotoPosition''' | ||
|- | |- | ||
| colspan="2" | Recalls a position from the selected internal none volatile memory location. Performs linear interpolated movement to the selected position. | | colspan="2" | Recalls a position from the selected internal none volatile memory location. Performs linear interpolated movement to the selected position. | ||
| Line 221: | Line 221: | ||
{| class="mtx-class-macrotable 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" | '''HomeAll''' | ||
|- | |- | ||
| colspan="2" | Function to automatically home all motors. Macro blocks until complete. | | colspan="2" | Function to automatically home all motors. Macro blocks until complete. | ||
| Line 235: | Line 235: | ||
{| class="mtx-class-macrotable 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" | '''HomeAxis''' | ||
|- | |- | ||
| colspan="2" | Function to automatically home a specific motor. Macro blocks until complete. | | colspan="2" | Function to automatically home a specific motor. Macro blocks until complete. | ||
| Line 254: | Line 254: | ||
{| class="mtx-class-macrotable 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" | '''Initialise''' | ||
|- | |- | ||
| colspan="2" | | | colspan="2" | | ||
| Line 268: | Line 268: | ||
{| class="mtx-class-macrotable 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" | '''IsMoving''' | ||
|- | |- | ||
| colspan="2" | Checks to see if the robot arm or gripper is moving. Returns 0 if the arm is not moving and 1 if the arm is still in transit. | | colspan="2" | Checks to see if the robot arm or gripper is moving. Returns 0 if the arm is not moving and 1 if the arm is still in transit. | ||
| Line 282: | Line 282: | ||
{| class="mtx-class-macrotable 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" | '''ResetToBoot''' | ||
|- | |- | ||
| colspan="2" | Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, | | colspan="2" | Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, | ||
| Line 296: | Line 296: | ||
{| class="mtx-class-macrotable 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" | '''SetAngle''' | ||
|- | |- | ||
| colspan="2" | Sets the angle of a single motor | | colspan="2" | Sets the angle of a single motor | ||
| Line 320: | Line 320: | ||
{| class="mtx-class-macrotable 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" | '''SetAngles''' | ||
|- | |- | ||
| colspan="2" | Sets the angle of all motors | | colspan="2" | Sets the angle of all motors | ||
| Line 349: | Line 349: | ||
{| class="mtx-class-macrotable 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" | '''SetBluetoothMode''' | ||
|- | |- | ||
| colspan="2" | Configures the Bluetooth mode. | | colspan="2" | Configures the Bluetooth mode. | ||
| Line 368: | Line 368: | ||
{| class="mtx-class-macrotable 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" | '''SetBluetoothName''' | ||
|- | |- | ||
| colspan="2" | Configures the Bluetooth device name and stores into the none volatie memory onboard the robot arm. Call the SetBluetoothMode macro after this to action the change. | | colspan="2" | Configures the Bluetooth device name and stores into the none volatie memory onboard the robot arm. Call the SetBluetoothMode macro after this to action the change. | ||
| Line 387: | Line 387: | ||
{| class="mtx-class-macrotable 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" | '''SetBluetoothPin''' | ||
|- | |- | ||
| colspan="2" | Configures the Bluetooth pin and stores into the none volatie memory onboard the robot arm. Call the SetBluetoothMode macro after this to action the change. | | colspan="2" | Configures the Bluetooth pin and stores into the none volatie memory onboard the robot arm. Call the SetBluetoothMode macro after this to action the change. | ||
| Line 406: | Line 406: | ||
{| class="mtx-class-macrotable 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" | '''SetCalibrationLengths''' | ||
|- | |- | ||
| colspan="2" | Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | | colspan="2" | Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | ||
| Line 430: | Line 430: | ||
{| class="mtx-class-macrotable 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" | '''SetCalibrationPosition''' | ||
|- | |- | ||
| colspan="2" | Called when the arm gripper is in the calibration position of X0 Y300 Z5 Reconfigures the kinematics calculations based on this. Performed in factory to calibrate the arm, warning calling this function will effect factory calibration. | | colspan="2" | Called when the arm gripper is in the calibration position of X0 Y300 Z5 Reconfigures the kinematics calculations based on this. Performed in factory to calibrate the arm, warning calling this function will effect factory calibration. | ||
| Line 444: | Line 444: | ||
{| class="mtx-class-macrotable 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" | '''SetCalibrationRadius''' | ||
|- | |- | ||
| colspan="2" | Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | | colspan="2" | Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | ||
| Line 463: | Line 463: | ||
{| class="mtx-class-macrotable 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" | '''SetCanId''' | ||
|- | |- | ||
| colspan="2" | Stores the specified CAN ID into an internal none volatile memory location. | | colspan="2" | Stores the specified CAN ID into an internal none volatile memory location. | ||
| Line 482: | Line 482: | ||
{| class="mtx-class-macrotable 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" | '''SetCanMode''' | ||
|- | |- | ||
| colspan="2" | Configures the CAN mode. | | colspan="2" | Configures the CAN mode. | ||
| Line 501: | Line 501: | ||
{| class="mtx-class-macrotable 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" | Sets the new position of the gripper | | colspan="2" | Sets the new position of the gripper | ||
| Line 520: | Line 520: | ||
{| class="mtx-class-macrotable 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" | '''SetMotor''' | ||
|- | |- | ||
| colspan="2" | Sets the step position of a single motor | | colspan="2" | Sets the step position of a single motor | ||
| Line 544: | Line 544: | ||
{| class="mtx-class-macrotable 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" | '''SetMotors''' | ||
|- | |- | ||
| colspan="2" | Sets the step position of all motors | | colspan="2" | Sets the step position of all motors | ||
| Line 573: | Line 573: | ||
{| class="mtx-class-macrotable 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" | '''SetMovementSpeed''' | ||
|- | |- | ||
| colspan="2" | Controls the movement speed of the arm and the ramping increment | | colspan="2" | Controls the movement speed of the arm and the ramping increment | ||
| Line 597: | Line 597: | ||
{| class="mtx-class-macrotable 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" | '''SetRelay''' | ||
|- | |- | ||
| colspan="2" | Allows the vacuum relay to be switched on and off. | | colspan="2" | Allows the vacuum relay to be switched on and off. | ||
| Line 616: | Line 616: | ||
{| class="mtx-class-macrotable 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" | '''SetWIFIPassword''' | ||
|- | |- | ||
| colspan="2" | Configures the WIFI Password string and stores into the none volatie memory onboard the robot arm. Call the SetWifiMode macro after this to action the change. | | colspan="2" | Configures the WIFI Password string and stores into the none volatie memory onboard the robot arm. Call the SetWifiMode macro after this to action the change. | ||
| Line 635: | Line 635: | ||
{| class="mtx-class-macrotable 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" | '''SetWIFIPort''' | ||
|- | |- | ||
| colspan="2" | Sets the WIFI port number | | colspan="2" | Sets the WIFI port number | ||
| Line 654: | Line 654: | ||
{| class="mtx-class-macrotable 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" | '''SetWifiMode''' | ||
|- | |- | ||
| colspan="2" | Configures the WIFI mode. When enabled the robot arm can either create its own WIFI network or join an existing WIFI network, | | colspan="2" | Configures the WIFI mode. When enabled the robot arm can either create its own WIFI network or join an existing WIFI network, | ||
| Line 673: | Line 673: | ||
{| class="mtx-class-macrotable 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" | '''SetWifiSSID''' | ||
|- | |- | ||
| colspan="2" | Configures the WIFI SSID string and stores into the none volatie memory onboard the robot arm. Call the SetWifiMode macro after this to action the change. | | colspan="2" | Configures the WIFI SSID string and stores into the none volatie memory onboard the robot arm. Call the SetWifiMode macro after this to action the change. | ||
| Line 692: | Line 692: | ||
{| class="mtx-class-macrotable 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" | '''SetXYZ''' | ||
|- | |- | ||
| colspan="2" | Moves the machine so that the end tool is in the specified XYZ position. Returns 1 if the coordinates are within range of the Arm else returns 0. | | colspan="2" | Moves the machine so that the end tool is in the specified XYZ position. Returns 1 if the coordinates are within range of the Arm else returns 0. | ||
| Line 721: | Line 721: | ||
{| class="mtx-class-macrotable 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" | '''StoreAngles''' | ||
|- | |- | ||
| colspan="2" | Stores the specified joint angles into an internal none volatile memory location. | | colspan="2" | Stores the specified joint angles into an internal none volatile memory location. | ||
| Line 755: | Line 755: | ||
{| class="mtx-class-macrotable 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" | '''StoreCurrentPosition''' | ||
|- | |- | ||
| colspan="2" | Stores the current position into an internal none volatile memory location. | | colspan="2" | Stores the current position into an internal none volatile memory location. | ||
| Line 774: | Line 774: | ||
{| class="mtx-class-macrotable 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" | '''StoreMotors''' | ||
|- | |- | ||
| colspan="2" | Stores the specified step position into an internal none volatile memory location. | | colspan="2" | Stores the specified step position into an internal none volatile memory location. | ||
| Line 808: | Line 808: | ||
{| class="mtx-class-macrotable 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" | '''WhileMoving''' | ||
|- | |- | ||
| colspan="2" | Blocking call that waits up to 10 seconds for the current movement operation to complete. Returns when complete. Return of 1 indicates movement complete, 0 indicates timeout. | | colspan="2" | Blocking call that waits up to 10 seconds for the current movement operation to complete. Returns when complete. Return of 1 indicates movement complete, 0 indicates timeout. | ||
| Line 823: | Line 823: | ||
{| class="mtx-class-macrotable 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''' | ||
|- | |- | ||
|- | |- | ||
| Line 832: | Line 832: | ||
| 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" | API Settings | ||
|- | |- | ||
|- | |- | ||
| Line 841: | Line 841: | ||
| colspan="2" | Selects the method to communicate with the Matrix 3 Axis Robot Arm. USB connection requires the USB drivers to be installed. Bluetooth connection requires the device first be paired using the Windows Bluetooth control panel. WIFI connection requires the connection settings to be configured first on the robot using USB or Bluetooth. CAN connection does not simulate and works on embedded hardware e.g. the MIAC. | | colspan="2" | Selects the method to communicate with the Matrix 3 Axis Robot Arm. USB connection requires the USB drivers to be installed. Bluetooth connection requires the device first be paired using the Windows Bluetooth control panel. WIFI connection requires the connection settings to be configured first on the robot using USB or Bluetooth. CAN connection does not simulate and works on embedded hardware e.g. the MIAC. | ||
|- | |- | ||
| 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" | COM Port Settings | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:37, 13 July 2026
| Author | Matrix TSL |
| Version | 1.0 |
| Category | AllCode |
Robot Arm v2 component
Drives the Matrix Robot Arm v2 hardware via the AllCode API. Allows connections via USB, Bluetooth and WIFI.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_RA2_ComponentSource.fcsx
Please click here to view the component source code (Beta): FC_Comp_Source_RA2_ComponentSource.fcsx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
DisableMotors
| DisableMotors | |
| Disables all motors | |
| Return | |
GetAPI
| GetAPI | |
| Gets the API version number | |
| Return | |
GetAngles
| GetAngles | |
| Collects the current joint angles of the motors. | |
| Angles | |
| Float Array To Hold the step position return values | |
| Return | |
GetColourSensor
| GetColourSensor | |
| Samples and returns the RGB values read by the colour sensor | |
| RGB | |
| Byte Array To Hold the RGB sensor values | |
| Return | |
GetPLCInputs
| GetPLCInputs | |
| Reads the inputs on the secondary grove connector used to connect to outputs from a connected PLC or other external switch. | |
| Return | |
GetPosition
| GetPosition | |
| Collects the current step positions of the motors. | |
| Positions | |
| UINT Array To Hold the step position return values | |
| Return | |
GetWifiIP
| GetWifiIP | |
| Collects the IP address of the robot arm WIFI connection. | |
| Return | |
GetXYZ
| GetXYZ | |
| Collects the current XYZ position of the end tool. | |
| XYZ | |
| INT Array To Hold the X, Y and Z return values | |
| Return | |
GotoPosition
HomeAll
| HomeAll | |
| Function to automatically home all motors. Macro blocks until complete. | |
| Return | |
HomeAxis
| HomeAxis | |
| Function to automatically home a specific motor. Macro blocks until complete. | |
| Axis | |
| 0=A, 1=B, 2=C | |
| Return | |
Initialise
| Initialise | |
| Return | |
IsMoving
| IsMoving | |
| Checks to see if the robot arm or gripper is moving. Returns 0 if the arm is not moving and 1 if the arm is still in transit. | |
| Return | |
ResetToBoot
| ResetToBoot | |
| Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, | |
| Return | |
SetAngle
| SetAngle | |
| Sets the angle of a single motor | |
| Motor | |
| 0=A, 1=B, 2=C | |
| Angle | |
| Range 0.0 to 359.0 | |
| Return | |
SetAngles
| SetAngles | |
| Sets the angle of all motors | |
| AngleA | |
| Range 0.0 to 359.0 | |
| AngleB | |
| Range 0.0 to 359.0 | |
| AngleC | |
| Range 0.0 to 359.0 | |
| Return | |
SetBluetoothMode
| SetBluetoothMode | |
| Configures the Bluetooth mode. | |
| Mode | |
| 0=Disabled, 1=Enabled | |
| Return | |
SetBluetoothName
SetBluetoothPin
SetCalibrationLengths
| SetCalibrationLengths | |
| Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | |
| LengthA | |
| LengthD | |
| Return | |
SetCalibrationPosition
SetCalibrationRadius
| SetCalibrationRadius | |
| Sets the lengths of parameters A and D used as part of the kinematics calculations to get and set the angles using XYZ coordinates | |
| Radius | |
| Return | |
SetCanId
| SetCanId | |
| Stores the specified CAN ID into an internal none volatile memory location. | |
| ID | |
| Return | |
SetCanMode
| SetCanMode | |
| Configures the CAN mode. | |
| Mode | |
| 0=Disabled, 1=Enabled | |
| Return | |
SetGripper
| SetGripper | |
| Sets the new position of the gripper | |
| Position | |
| 0 = Closed, 255 = Fully Open | |
| Return | |
SetMotor
| SetMotor | |
| Sets the step position of a single motor | |
| Motor | |
| 0=A, 1=B, 2=C | |
| Position | |
| Return | |
SetMotors
| SetMotors | |
| Sets the step position of all motors | |
| PositionA | |
| PositionB | |
| PositionC | |
| Return | |
SetMovementSpeed
| SetMovementSpeed | |
| Controls the movement speed of the arm and the ramping increment | |
| Speed | |
| Range 0-10000 default 8000 | |
| Increment | |
| Range 0 to 5000, default 50 | |
| Return | |
SetRelay
| SetRelay | |
| Allows the vacuum relay to be switched on and off. | |
| State | |
| Return | |
SetWIFIPassword
SetWIFIPort
| SetWIFIPort | |
| Sets the WIFI port number | |
| Port | |
| Default 1245 | |
| Return | |
SetWifiMode
SetWifiSSID
SetXYZ
| SetXYZ | |
| Moves the machine so that the end tool is in the specified XYZ position. Returns 1 if the coordinates are within range of the Arm else returns 0. | |
| X | |
| Y | |
| Z | |
| Return | |
StoreAngles
StoreCurrentPosition
| StoreCurrentPosition | |
| Stores the current position into an internal none volatile memory location. | |
| PositionIndex | |
| Range: 0 to 40 | |
| Return | |
StoreMotors
| StoreMotors | |
| Stores the specified step position into an internal none volatile memory location. | |
| PositionIndex | |
| Range: 0 to 40 | |
| PositionA | |
| PositionB | |
| PositionC | |
| Return | |
WhileMoving