|
|
| (12 intermediate revisions by 2 users not shown) |
| Line 16: |
Line 16: |
|
| |
|
| ==Component Source Code== | | ==Component Source Code== |
| | |
| | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_RA2_ComponentSource.fcsx FC_Comp_Source_RA2_ComponentSource.fcsx] |
|
| |
|
| Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_RA2_ComponentSource.fcsx FC_Comp_Source_RA2_ComponentSource.fcsx] | | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_RA2_ComponentSource.fcsx FC_Comp_Source_RA2_ComponentSource.fcsx] |
|
| |
|
| ==Detailed description== | | ==Detailed description== |
| | |
| | |
| | |
| | |
| | |
| | |
|
| |
|
|
| |
|
| Line 30: |
Line 38: |
|
| |
|
| ==Examples== | | ==Examples== |
| | |
| | |
| | |
| | |
| | |
| | |
|
| |
|
|
| |
|
| Line 41: |
Line 55: |
|
| |
|
|
| |
|
| ==Macro reference==
| |
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetWIFIPort'''
| |
| |-
| |
| | colspan="2" | Sets the WIFI port number
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Port
| |
| |-
| |
| | colspan="2" | Default 1245
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | |
| | |
| | |
| | |
| | |
| | ==Macro reference== |
| | |
| | ===DisableMotors=== |
| | {| 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;" | '''SetWIFIPassword''' | | | width="90%" class="mtx-class-macrohead" | '''DisableMotors''' |
| |- | | |- |
| | 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" | Disables all motors |
| |- | | |- |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Password
| |
| |-
| |
| | colspan="2" | Password String, Max 32 Characters
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 92: |
Line 81: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetAPI=== |
| | {| 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;" | '''SetCalibrationLengths''' | | | width="90%" class="mtx-class-macrohead" | '''GetAPI''' |
| |- | | |- |
| | 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" | Gets the API version number |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | LengthA
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | LengthD
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetAngles=== |
| | {| 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;" | '''SetMovementSpeed''' | | | width="90%" class="mtx-class-macrohead" | '''GetAngles''' |
| |- | | |- |
| | colspan="2" | Controls the movement speed of the arm and the ramping increment | | | colspan="2" | Collects the current joint angles of the motors. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| | width="90%" | Speed | | | width="90%" | Angles |
| |- | | |- |
| | colspan="2" | Range 0-10000 default 8000 | | | colspan="2" | Float Array To Hold the step position return values |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Increment
| |
| |-
| |
| | colspan="2" | Range 0 to 5000, default 50
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 138: |
Line 114: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetColourSensor=== |
| | {| 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;" | '''GetPLCInputs''' | | | width="90%" class="mtx-class-macrohead" | '''GetColourSensor''' |
| |- | | |- |
| | 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" | Samples and returns the RGB values read by the colour sensor |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetGripper'''
| |
| |-
| |
| | colspan="2" | Sets the new position of the gripper
| |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Position | | | width="90%" | RGB |
| |- | | |- |
| | colspan="2" | 0 = Closed, 255 = Fully Open | | | colspan="2" | Byte Array To Hold the RGB sensor values |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 169: |
Line 133: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetPLCInputs=== |
| | {| 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;" | '''SetCalibrationPosition''' | | | width="90%" class="mtx-class-macrohead" | '''GetPLCInputs''' |
| |- | | |- |
| | 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" | Reads the inputs on the secondary grove connector used to connect to outputs from a connected PLC or other external switch. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetPosition=== |
| | {| 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;" | '''StoreAngles''' | | | width="90%" class="mtx-class-macrohead" | '''GetPosition''' |
| |- | | |- |
| | colspan="2" | Stores the specified joint angles into an internal none volatile memory location. | | | colspan="2" | Collects the current step positions of the motors. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" | PositionIndex | | | width="90%" | Positions |
| |- | | |- |
| | colspan="2" | Range: 0 to 40 | | | colspan="2" | UINT Array To Hold the step position return values |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleA
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleB
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleC
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 215: |
Line 166: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetWifiIP=== |
| | {| 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;" | '''GetWifiIP''' | | | 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 228: |
Line 180: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GetXYZ=== |
| | {| 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;" | '''GetColourSensor''' | | | width="90%" class="mtx-class-macrohead" | '''GetXYZ''' |
| |- | | |- |
| | colspan="2" | Samples and returns the RGB values read by the colour sensor | | | colspan="2" | Collects the current XYZ position of the end tool. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT |
| | width="90%" | RGB | | | width="90%" | XYZ |
| |- | | |- |
| | colspan="2" | Byte Array To Hold the RGB sensor values | | | colspan="2" | INT Array To Hold the X, Y and Z return values |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 246: |
Line 199: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===GotoPosition=== |
| | {| 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;" | '''SetMotor''' | | | width="90%" class="mtx-class-macrohead" | '''GotoPosition''' |
| |- | | |- |
| | colspan="2" | Sets the step position of a single motor | | | colspan="2" | Recalls a position from the selected internal none volatile memory location. Performs linear interpolated movement to the selected position. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Motor | | | width="90%" | PositionIndex |
| |- | | |- |
| | colspan="2" | 0=A, 1=B, 2=C | | | colspan="2" | Range: 0 to 40 |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Position
| |
| |-
| |
| | colspan="2" |
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 269: |
Line 218: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===HomeAll=== |
| | {| 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;" | '''ResetToBoot''' | | | width="90%" class="mtx-class-macrohead" | '''HomeAll''' |
| |- | | |- |
| | colspan="2" | Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, | | | colspan="2" | Function to automatically home all motors. Macro blocks until complete. |
| |- | | |- |
| |- | | |- |
| Line 282: |
Line 232: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===HomeAxis=== |
| | {| 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;" | '''IsMoving''' | | | width="90%" class="mtx-class-macrohead" | '''HomeAxis''' |
| |- | | |- |
| | 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" | Function to automatically home a specific motor. Macro blocks until complete. |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetAngle'''
| |
| |-
| |
| | colspan="2" | Sets the angle of a single motor
| |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Motor | | | width="90%" | Axis |
| |- | | |- |
| | colspan="2" | 0=A, 1=B, 2=C | | | colspan="2" | 0=A, 1=B, 2=C |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | Angle
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 318: |
Line 251: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===Initialise=== |
| | {| 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;" | '''SetXYZ''' | | | width="90%" class="mtx-class-macrohead" | '''Initialise''' |
| |-
| |
| | 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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | X
| |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | Y
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | Z
| |
| |-
| |
| | colspan="2" |
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL |
| Line 346: |
Line 265: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===IsMoving=== |
| | {| 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;" | '''SetBluetoothPin''' | | | width="90%" class="mtx-class-macrohead" | '''IsMoving''' |
| |- | | |- |
| | 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" | 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. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL |
| | width="90%" | Pin
| |
| |-
| |
| | colspan="2" | Pin String, 4 Numeric Characters e.g. "1234"
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===ResetToBoot=== |
| | {| 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;" | '''HomeAll''' | | | width="90%" class="mtx-class-macrohead" | '''ResetToBoot''' |
| |- | | |- |
| | colspan="2" | Function to automatically home all motors. Macro blocks until complete. | | | colspan="2" | Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, |
| |- | | |- |
| |- | | |- |
| Line 377: |
Line 293: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetAngle=== |
| | {| 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;" | '''SetRelay''' | | | width="90%" class="mtx-class-macrohead" | '''SetAngle''' |
| |- | | |- |
| | colspan="2" | Allows the vacuum relay to be switched on and off. | | | colspan="2" | Sets the angle of a single motor |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | State | | | width="90%" | Motor |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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" | 0=A, 1=B, 2=C |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| | width="90%" | Radius | | | width="90%" | Angle |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | Range 0.0 to 359.0 |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 413: |
Line 317: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetAngles=== |
| | {| 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;" | '''SetAngles''' | | | width="90%" class="mtx-class-macrohead" | '''SetAngles''' |
| |- | | |- |
| | colspan="2" | Sets the angle of all motors | | | colspan="2" | Sets the angle of all motors |
| Line 441: |
Line 346: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetBluetoothMode=== |
| | {| 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;" | '''GotoPosition''' | | | width="90%" class="mtx-class-macrohead" | '''SetBluetoothMode''' |
| |- | | |- |
| | colspan="2" | Recalls a position from the selected internal none volatile memory location. Performs linear interpolated movement to the selected position. | | | colspan="2" | Configures the Bluetooth mode. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL |
| | width="90%" | PositionIndex | | | width="90%" | Mode |
| |- | | |- |
| | colspan="2" | Range: 0 to 40 | | | colspan="2" | 0=Disabled, 1=Enabled |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 459: |
Line 365: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetBluetoothName=== |
| | {| 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;" | '''SetWifiMode''' | | | width="90%" class="mtx-class-macrohead" | '''SetBluetoothName''' |
| |- | | |- |
| | 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 Bluetooth device name and stores into the none volatie memory onboard the robot arm. Call the SetBluetoothMode macro after this to action the change. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Mode | | | width="90%" | Name |
| |- | | |- |
| | colspan="2" | 0=Disabled, 1=Host Network, 2=Join Network | | | colspan="2" | Bluetooth Device String, Max 20 Characters |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 477: |
Line 384: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetBluetoothPin=== |
| | {| 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;" | '''HomeAxis''' | | | width="90%" class="mtx-class-macrohead" | '''SetBluetoothPin''' |
| |- | | |- |
| | colspan="2" | Function to automatically home a specific motor. Macro blocks until complete. | | | 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. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" | Axis | | | width="90%" | Pin |
| |- | | |- |
| | colspan="2" | 0=A, 1=B, 2=C | | | colspan="2" | Pin String, 4 Numeric Characters e.g. "1234" |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 495: |
Line 403: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetCalibrationLengths=== |
| | {| 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;" | '''GetAngles''' | | | width="90%" class="mtx-class-macrohead" | '''SetCalibrationLengths''' |
| |- | | |- |
| | colspan="2" | Collects the current joint angles of the motors. | | | 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 |
| | |- |
| | |- |
| | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| | | width="90%" | LengthA |
| |- | | |- |
| | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| | width="90%" | Angles | | | width="90%" | LengthD |
| |- | | |- |
| | colspan="2" | Float Array To Hold the step position return values | | | colspan="2" | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 513: |
Line 427: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetCalibrationPosition=== |
| | {| 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;" | '''DisableMotors''' | | | width="90%" class="mtx-class-macrohead" | '''SetCalibrationPosition''' |
| |- | | |- |
| | colspan="2" | Disables all motors | | | 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 526: |
Line 441: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetCalibrationRadius=== |
| | {| 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;" | '''StoreMotors''' | | | width="90%" class="mtx-class-macrohead" | '''SetCalibrationRadius''' |
| |- | | |- |
| | colspan="2" | Stores the specified step position into an internal none volatile memory location. | | | 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 |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| | width="90%" | PositionIndex | | | width="90%" | Radius |
| |-
| |
| | colspan="2" | Range: 0 to 40
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionA
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionB
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionC
| |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| Line 559: |
Line 460: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetCanId=== |
| | {| 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;" | '''SetCanId''' | | | 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 577: |
Line 479: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| | ===SetCanMode=== |
| |-
| | {| class="mtx-class-macrotable wikitable" |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetAPI'''
| |
| |-
| |
| | colspan="2" | Gets the API version number
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMotors'''
| |
| |-
| |
| | colspan="2" | Sets the step position of all motors
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionA
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionB
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionC
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | 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;" | '''SetCanMode''' | | | width="90%" class="mtx-class-macrohead" | '''SetCanMode''' |
| |- | | |- |
| | colspan="2" | Configures the CAN mode. | | | colspan="2" | Configures the CAN mode. |
| Line 636: |
Line 498: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetGripper=== |
| | {| 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;" | '''SetWifiSSID''' | | | width="90%" class="mtx-class-macrohead" | '''SetGripper''' |
| |- | | |- |
| | 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" | Sets the new position of the gripper |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | SSID | | | width="90%" | Position |
| |- | | |- |
| | colspan="2" | Netword ID String, Max 32 Characters | | | colspan="2" | 0 = Closed, 255 = Fully Open |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 654: |
Line 517: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetMotor=== |
| | {| 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;" | '''GetPosition''' | | | width="90%" class="mtx-class-macrohead" | '''SetMotor''' |
| |- | | |- |
| | colspan="2" | Collects the current step positions of the motors. | | | colspan="2" | Sets the step position of a single motor |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Positions
| |
| |-
| |
| | colspan="2" | UINT Array To Hold the step position return values
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StoreCurrentPosition'''
| |
| |-
| |
| | colspan="2" | Stores the current position into an internal none volatile memory location.
| |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | PositionIndex | | | width="90%" | Motor |
| |- | | |- |
| | colspan="2" | Range: 0 to 40 | | | colspan="2" | 0=A, 1=B, 2=C |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Position |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| | | colspan="2" | |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetXYZ'''
| |
| |-
| |
| | colspan="2" | Collects the current XYZ position of the end tool.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | XYZ
| |
| |-
| |
| | colspan="2" | INT Array To Hold the X, Y and Z return values | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 708: |
Line 541: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetMotors=== |
| | {| 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;" | '''SetBluetoothMode''' | | | width="90%" class="mtx-class-macrohead" | '''SetMotors''' |
| |- | | |- |
| | colspan="2" | Configures the Bluetooth mode. | | | colspan="2" | Sets the step position of all motors |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" | Mode | | | width="90%" | PositionA |
| |-
| |
| | colspan="2" | 0=Disabled, 1=Enabled
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
| |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| |- | | |- |
| |-
| | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| | | width="90%" | PositionB |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Name
| |
| |-
| |
| | colspan="2" | Bluetooth Device String, Max 20 Characters
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| | |
| | |
| ==Property reference==
| |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| |
| | width="90%" | Simulation Mode | |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| |-
| |
| | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | API Settings
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
| |
| | width="90%" | Comms Method
| |
| |-
| |
| | 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| |
| | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | COM Port Settings
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-type-7-icon.png]]
| |
| | width="90%" | Autodetect
| |
| |-
| |
| | colspan="2" | Autodetects the COM port, only works for USB AllCode connection.
| |
| |}==Macro reference==
| |
|
| |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetWIFIPort'''
| |
| |-
| |
| | colspan="2" | Sets the WIFI port number
| |
| |-
| |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" | Port | | | width="90%" | PositionC |
| |-
| |
| | colspan="2" | Default 1245
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Password
| |
| |-
| |
| | colspan="2" | Password String, Max 32 Characters
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | LengthA
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | LengthD
| |
| |- | | |- |
| | colspan="2" | | | | colspan="2" | |
| Line 863: |
Line 570: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetMovementSpeed=== |
| | {| 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;" | '''SetMovementSpeed''' | | | 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 886: |
Line 594: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetRelay=== |
| | {| 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;" | '''GetPLCInputs''' | | | width="90%" class="mtx-class-macrohead" | '''SetRelay''' |
| |- | | |- |
| | 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" | Allows the vacuum relay to be switched on and off. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | State |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| | | colspan="2" | |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetGripper'''
| |
| |-
| |
| | colspan="2" | Sets the new position of the gripper
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Position
| |
| |-
| |
| | colspan="2" | 0 = Closed, 255 = Fully Open | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 917: |
Line 613: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetWIFIPassword=== |
| | {| 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;" | '''SetCalibrationPosition''' | | | width="90%" class="mtx-class-macrohead" | '''SetWIFIPassword''' |
| |- | | |- |
| | 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" | 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. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Password |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| | | colspan="2" | Password String, Max 32 Characters |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StoreAngles'''
| |
| |-
| |
| | colspan="2" | Stores the specified joint angles into an internal none volatile memory location.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | PositionIndex
| |
| |-
| |
| | colspan="2" | Range: 0 to 40
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleA
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleB
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | AngleC
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0 | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 963: |
Line 632: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetWIFIPort=== |
| | {| 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;" | '''GetWifiIP''' | | | width="90%" class="mtx-class-macrohead" | '''SetWIFIPort''' |
| |- | | |- |
| | colspan="2" | Collects the IP address of the robot arm WIFI connection. | | | colspan="2" | Sets the WIFI port number |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | Port |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| | | colspan="2" | Default 1245 |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetColourSensor'''
| |
| |-
| |
| | colspan="2" | Samples and returns the RGB values read by the colour sensor
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | RGB
| |
| |-
| |
| | colspan="2" | Byte Array To Hold the RGB sensor values | |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 994: |
Line 651: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetWifiMode=== |
| | {| 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;" | '''SetMotor''' | | | width="90%" class="mtx-class-macrohead" | '''SetWifiMode''' |
| |- | | |- |
| | colspan="2" | Sets the step position of a single motor | | | colspan="2" | Configures the WIFI mode. When enabled the robot arm can either create its own WIFI network or join an existing WIFI network, |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Motor | | | width="90%" | Mode |
| |- | | |- |
| | colspan="2" | 0=A, 1=B, 2=C | | | colspan="2" | 0=Disabled, 1=Host Network, 2=Join Network |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Position
| |
| |-
| |
| | colspan="2" |
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 1,017: |
Line 670: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetWifiSSID=== |
| | {| 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;" | '''ResetToBoot''' | | | width="90%" class="mtx-class-macrohead" | '''SetWifiSSID''' |
| |- | | |- |
| | colspan="2" | Resets the board into bootload mode for reprogramming. Comms port will be closed on calling this macro, | | | 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. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" | SSID |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |- | | |- |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| | | colspan="2" | Netword ID String, Max 32 Characters |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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. | |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetAngle'''
| |
| |-
| |
| | colspan="2" | Sets the angle of a single motor
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Motor
| |
| |-
| |
| | colspan="2" | 0=A, 1=B, 2=C
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | Angle
| |
| |-
| |
| | colspan="2" | Range 0.0 to 359.0
| |
| |- | | |- |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID |
| Line 1,066: |
Line 689: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===SetXYZ=== |
| | {| 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;" | '''SetXYZ''' | | | 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 1,094: |
Line 718: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===StoreAngles=== |
| | {| 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;" | '''SetBluetoothPin''' | | | width="90%" class="mtx-class-macrohead" | '''StoreAngles''' |
| |- | | |- |
| | 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" | Stores the specified joint angles into an internal none volatile memory location. |
| |- | | |- |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
| | width="90%" | Pin | | | width="90%" | PositionIndex |
| |-
| |
| | colspan="2" | Pin String, 4 Numeric Characters e.g. "1234"
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''HomeAll'''
| |
| |-
| |
| | colspan="2" | Function to automatically home all motors. Macro blocks until complete.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetRelay'''
| |
| |-
| |
| | colspan="2" | Allows the vacuum relay to be switched on and off.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" | State
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | Radius
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetAngles'''
| |
| |-
| |
| | colspan="2" | Sets the angle of all motors
| |
| |- | | |- |
| | | colspan="2" | Range: 0 to 40 |
| |- | | |- |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT | | | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT |
| Line 1,189: |
Line 752: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===StoreCurrentPosition=== |
| | {| 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;" | '''GotoPosition''' | | | width="90%" class="mtx-class-macrohead" | '''StoreCurrentPosition''' |
| |- | | |- |
| | colspan="2" | Recalls a position from the selected internal none volatile memory location. Performs linear interpolated movement to the selected position. | | | colspan="2" | Stores the current position into an internal none volatile memory location. |
| |- | | |- |
| |- | | |- |
| Line 1,207: |
Line 771: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| | ===StoreMotors=== |
| |-
| | {| class="mtx-class-macrotable wikitable" |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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,
| |
| |- | | |- |
| |-
| | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| | | width="90%" class="mtx-class-macrohead" | '''StoreMotors''' |
| | width="90%" | Mode
| |
| |-
| |
| | colspan="2" | 0=Disabled, 1=Host Network, 2=Join Network
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''HomeAxis'''
| |
| |-
| |
| | colspan="2" | Function to automatically home a specific motor. Macro blocks until complete.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | Axis
| |
| |-
| |
| | colspan="2" | 0=A, 1=B, 2=C
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetAngles''' | |
| |-
| |
| | colspan="2" | Collects the current joint angles of the motors.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| |
| | width="90%" | Angles
| |
| |-
| |
| | colspan="2" | Float Array To Hold the step position return values
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DisableMotors'''
| |
| |-
| |
| | colspan="2" | Disables all motors
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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 1,307: |
Line 805: |
|
| |
|
|
| |
|
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | | ===WhileMoving=== |
| | {| 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;" | '''SetCanId''' | | | width="90%" class="mtx-class-macrohead" | '''WhileMoving''' |
| |- | | |- |
| | colspan="2" | Stores the specified CAN ID into an internal none volatile memory location. | | | 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. |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | ID
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetAPI'''
| |
| |-
| |
| | colspan="2" | Gets the API version number
| |
| |-
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMotors'''
| |
| |-
| |
| | colspan="2" | Sets the step position of all motors
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionA
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionB
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | PositionC
| |
| |-
| |
| | colspan="2" |
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetCanMode'''
| |
| |-
| |
| | colspan="2" | Configures the CAN mode.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" | Mode
| |
| |-
| |
| | colspan="2" | 0=Disabled, 1=Enabled
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | SSID
| |
| |-
| |
| | colspan="2" | Netword ID String, Max 32 Characters
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetPosition'''
| |
| |-
| |
| | colspan="2" | Collects the current step positions of the motors.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT
| |
| | width="90%" | Positions
| |
| |-
| |
| | colspan="2" | UINT Array To Hold the step position return values
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''StoreCurrentPosition'''
| |
| |-
| |
| | colspan="2" | Stores the current position into an internal none volatile memory location.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| |
| | width="90%" | PositionIndex
| |
| |-
| |
| | colspan="2" | Range: 0 to 40
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetXYZ'''
| |
| |-
| |
| | colspan="2" | Collects the current XYZ position of the end tool.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-s16-icon.png]] - INT
| |
| | width="90%" | XYZ
| |
| |-
| |
| | colspan="2" | INT Array To Hold the X, Y and Z return values
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetBluetoothMode'''
| |
| |-
| |
| | colspan="2" | Configures the Bluetooth mode.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL
| |
| | width="90%" | Mode
| |
| |-
| |
| | colspan="2" | 0=Disabled, 1=Enabled
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
| | |
| | |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
| |
| |-
| |
| | colspan="2" |
| |
| |- | | |- |
| |- | | |- |
| Line 1,485: |
Line 817: |
| | width="90%" style="border-top: 2px solid #000;" | ''Return'' | | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |
| |} | | |} |
|
| |
|
| |
| {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
| |
| |-
| |
| | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| |
| | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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.
| |
| |-
| |
| |-
| |
| | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| |
| | width="90%" | Name
| |
| |-
| |
| | colspan="2" | Bluetooth Device String, Max 20 Characters
| |
| |-
| |
| | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| |
| | width="90%" style="border-top: 2px solid #000;" | ''Return''
| |
| |}
| |
|
| |
|
| |
|
| |
|
|
| |
|
| ==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''' |
| |- | | |- |
| |- | | |- |
| Line 1,520: |
Line 832: |
| | 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;" | API Settings | | | width="90%" class="mtx-class-propfolder" | API Settings |
| |- | | |- |
| |- | | |- |
| Line 1,529: |
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" 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;" | COM Port Settings | | | width="90%" class="mtx-class-propfolder" | COM Port Settings |
| |- | | |- |
| |- | | |- |