Component: Robot Arm AllCode SIM (AllCode): Difference between revisions
Appearance
No edit summary |
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead"" |
||
| (3 intermediate revisions by the same user not shown) | |||
| Line 80: | Line 80: | ||
===Beep=== | ===Beep=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Beep''' | ||
|- | |- | ||
| colspan="2" | Allows the beeper to output a warning | | colspan="2" | Allows the beeper to output a warning | ||
| Line 109: | Line 109: | ||
===GotoPosition=== | ===GotoPosition=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GotoPosition''' | ||
|- | |- | ||
| colspan="2" | Recalls a previously saved position for the ARMs 5 axis. | | colspan="2" | Recalls a previously saved position for the ARMs 5 axis. | ||
| Line 128: | Line 128: | ||
===GripperClose=== | ===GripperClose=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GripperClose''' | ||
|- | |- | ||
| colspan="2" | Fully closes the gripper at the end of the arm ready to pick something up. Closes to a defined pressure using the built in pressure sensor. Returns 0 if nothing detected in the gripper Returns 1 if a valid object is detected | | colspan="2" | Fully closes the gripper at the end of the arm ready to pick something up. Closes to a defined pressure using the built in pressure sensor. Returns 0 if nothing detected in the gripper Returns 1 if a valid object is detected | ||
| Line 147: | Line 147: | ||
===GripperOpen=== | ===GripperOpen=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''GripperOpen''' | ||
|- | |- | ||
| colspan="2" | Fully opens the gripper at the end of the arm ready to pick something up. | | colspan="2" | Fully opens the gripper at the end of the arm ready to pick something up. | ||
| Line 161: | Line 161: | ||
===LCDClear=== | ===LCDClear=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LCDClear''' | ||
|- | |- | ||
| colspan="2" | Clears the entire contents of the display. | | colspan="2" | Clears the entire contents of the display. | ||
| Line 175: | Line 175: | ||
===LCDClearLine=== | ===LCDClearLine=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LCDClearLine''' | ||
|- | |- | ||
| colspan="2" | Clears a single line on the display and then moves the cursor to the start of the line to allow you to start populating the line with data. | | colspan="2" | Clears a single line on the display and then moves the cursor to the start of the line to allow you to start populating the line with data. | ||
| Line 194: | Line 194: | ||
===LCDCursor=== | ===LCDCursor=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LCDCursor''' | ||
|- | |- | ||
| colspan="2" | Moves the cursor on the LCD Display | | colspan="2" | Moves the cursor on the LCD Display | ||
| Line 218: | Line 218: | ||
===LCDPrintNum=== | ===LCDPrintNum=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LCDPrintNum''' | ||
|- | |- | ||
| colspan="2" | Will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | | colspan="2" | Will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | ||
| Line 237: | Line 237: | ||
===LCDPrintStr=== | ===LCDPrintStr=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LCDPrintStr''' | ||
|- | |- | ||
| colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | | colspan="2" | Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | ||
| Line 256: | Line 256: | ||
===LEDOff=== | ===LEDOff=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LEDOff''' | ||
|- | |- | ||
| colspan="2" | Switches off a single LED, LA0-LA7 | | colspan="2" | Switches off a single LED, LA0-LA7 | ||
| Line 275: | Line 275: | ||
===LEDOn=== | ===LEDOn=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LEDOn''' | ||
|- | |- | ||
| colspan="2" | Switches on a single LED, LA0-LA7 | | colspan="2" | Switches on a single LED, LA0-LA7 | ||
| Line 294: | Line 294: | ||
===LEDWrite=== | ===LEDWrite=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LEDWrite''' | ||
|- | |- | ||
| colspan="2" | Allows a value to be sent to control all eight LEDs LA0-LA7 at once | | colspan="2" | Allows a value to be sent to control all eight LEDs LA0-LA7 at once | ||
| Line 313: | Line 313: | ||
===LinearInterpolation=== | ===LinearInterpolation=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''LinearInterpolation''' | ||
|- | |- | ||
| colspan="2" | Moves the robot to the new position so that all axis arrive at the same time. | | colspan="2" | Moves the robot to the new position so that all axis arrive at the same time. | ||
| Line 352: | Line 352: | ||
===MotorsMoving=== | ===MotorsMoving=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''MotorsMoving''' | ||
|- | |- | ||
| colspan="2" | Checks to see if any of the motors are still moving. | | colspan="2" | Checks to see if any of the motors are still moving. | ||
| Line 366: | Line 366: | ||
===Park=== | ===Park=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Park''' | ||
|- | |- | ||
| colspan="2" | Parks the Robot ARM and switches off the servo motors | | colspan="2" | Parks the Robot ARM and switches off the servo motors | ||
| Line 380: | Line 380: | ||
===ReadPressure=== | ===ReadPressure=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadPressure''' | ||
|- | |- | ||
| colspan="2" | Read the value of the pressure sensor on the ARM gripper. Returns the value as a byte | | colspan="2" | Read the value of the pressure sensor on the ARM gripper. Returns the value as a byte | ||
| Line 394: | Line 394: | ||
===ReadSwitch=== | ===ReadSwitch=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''ReadSwitch''' | ||
|- | |- | ||
| colspan="2" | Read the value of a single switch. Returns the value as a byte | | colspan="2" | Read the value of a single switch. Returns the value as a byte | ||
| Line 413: | Line 413: | ||
===SetAllServos=== | ===SetAllServos=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetAllServos''' | ||
|- | |- | ||
| colspan="2" | Move all the servo positions between 0-180 Deg | | colspan="2" | Move all the servo positions between 0-180 Deg | ||
| Line 452: | Line 452: | ||
===SetMovementSpeed=== | ===SetMovementSpeed=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetMovementSpeed''' | ||
|- | |- | ||
| colspan="2" | Controls the speed of the robot movement | | colspan="2" | Controls the speed of the robot movement | ||
| Line 471: | Line 471: | ||
===SetServo=== | ===SetServo=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetServo''' | ||
|- | |- | ||
| colspan="2" | Move the specified servo motor position between 0-180 Deg | | colspan="2" | Move the specified servo motor position between 0-180 Deg | ||
| Line 495: | Line 495: | ||
===SetTrim=== | ===SetTrim=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''SetTrim''' | ||
|- | |- | ||
| colspan="2" | Allows minor adjustment on the 5 axis servo motors | | colspan="2" | Allows minor adjustment on the 5 axis servo motors | ||
| Line 519: | Line 519: | ||
===StoreCoords=== | ===StoreCoords=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''StoreCoords''' | ||
|- | |- | ||
| colspan="2" | Stores the provided coordinates as a position the ARM can recall. | | colspan="2" | Stores the provided coordinates as a position the ARM can recall. | ||
| Line 563: | Line 563: | ||
===StorePosition=== | ===StorePosition=== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''StorePosition''' | ||
|- | |- | ||
| colspan="2" | Stores the current position of the ARMs 5 axis. | | colspan="2" | Stores the current position of the ARMs 5 axis. | ||
| Line 583: | Line 583: | ||
==Property reference== | ==Property reference== | ||
{| class="wikitable | {| class="mtx-class-macrotable wikitable" | ||
|- | |- | ||
| width="10%" align="center" | | width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]] | ||
| width="90%" | | width="90%" class="mtx-class-macrohead" | '''Properties''' | ||
|- | |- | ||
|- | |- | ||
Latest revision as of 14:23, 13 July 2026
| Author | Matrix TSL |
| Version | 1.0 |
| Category | AllCode |
Robot Arm AllCode SIM component
Matrix 5-axis Robot Arm with Gripper. Compatible with the Matrix Robot ARM Training Curriculum and Hardware. Features gripper pressure sensor, light sensor, colour sensor, Potentiometer, Magnetic sensor.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_RA_Simulation_Source.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_RA_Simulation_Source.fcfx
Detailed description
No detailed description exists yet for this component
Examples
Industrial Tanks
A simple example showing the hoppers, valves and pipes working together. Each tank automatically empties in turn.
Macro reference
Beep
| Beep | |
| Allows the beeper to output a warning | |
| Iterations | |
| OnDelay | |
| Delay in ms | |
| OffDelay | |
| Delay in ms | |
| Return | |
GotoPosition
| GotoPosition | |
| Recalls a previously saved position for the ARMs 5 axis. | |
| Index | |
| Save Index - Range 0-29 | |
| Return | |
GripperClose
GripperOpen
| GripperOpen | |
| Fully opens the gripper at the end of the arm ready to pick something up. | |
| Return | |
LCDClear
| LCDClear | |
| Clears the entire contents of the display. | |
| Return | |
LCDClearLine
LCDCursor
LCDPrintNum
| LCDPrintNum | |
| Will allow you to print a number. This is limited to a signed-INT, -32768 to 32767 | |
| Number | |
| Enter the number or variable to print to the LCD | |
| Return | |
LCDPrintStr
| LCDPrintStr | |
| Breaks down a string of text and sends it to the LCD via the private RawSend(byte, mask) macro | |
| PrintString | |
| Enter the text or variable to print to the LCD | |
| Return | |
LEDOff
| LEDOff | |
| Switches off a single LED, LA0-LA7 | |
| Index | |
| 0=LA0, 1=LA1, 2=LA2, 3=LA3, 4=LA4, 5=LA5, 6=LA6, 7=LA7 | |
| Return | |
LEDOn
| LEDOn | |
| Switches on a single LED, LA0-LA7 | |
| Index | |
| 0=LA0, 1=LA1, 2=LA2, 3=LA3, 4=LA4, 5=LA5, 6=LA6, 7=LA7 | |
| Return | |
LEDWrite
| LEDWrite | |
| Allows a value to be sent to control all eight LEDs LA0-LA7 at once | |
| Value | |
| (0-63) 0b000000 | |
| Return | |
LinearInterpolation
| LinearInterpolation | |
| Moves the robot to the new position so that all axis arrive at the same time. | |
| pos0 | |
| pos1 | |
| pos2 | |
| pos3 | |
| pos4 | |
| Return | |
MotorsMoving
| MotorsMoving | |
| Checks to see if any of the motors are still moving. | |
| Return | |
Park
| Park | |
| Parks the Robot ARM and switches off the servo motors | |
| Return | |
ReadPressure
| ReadPressure | |
| Read the value of the pressure sensor on the ARM gripper. Returns the value as a byte | |
| Return | |
ReadSwitch
| ReadSwitch | |
| Read the value of a single switch. Returns the value as a byte | |
| index | |
| 0=SA0, 1=SA1, 2=SA2, 3=SA3, 4=SA4, 5=SA5, 6=SA6, 7=SA7 | |
| Return | |
SetAllServos
SetMovementSpeed
| SetMovementSpeed | |
| Controls the speed of the robot movement | |
| MovementSpeed | |
| 1=Normal Speed (Default), 2=DoubleSpeed | |
| Return | |
SetServo
SetTrim
| SetTrim | |
| Allows minor adjustment on the 5 axis servo motors | |
| Index | |
| Motor Index Range 0-4 | |
| Trim | |
| Amount of Trim Range 0-255, Default Value 128 | |
| Return | |
StoreCoords
StorePosition
| StorePosition | |
| Stores the current position of the ARMs 5 axis. | |
| Index | |
| Save Index - Range 0-29 | |
| Return | |
Property reference
| Properties | |
| Starting Conditions | |