|
|
| Line 34: |
Line 34: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''AutoMoveToPosition''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''AutoMoveToPosition''' |
| |- | | |- |
| Line 58: |
Line 58: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''DisableServo''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DisableServo''' |
| |- | | |- |
| Line 77: |
Line 77: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''EnableServo''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''EnableServo''' |
| |- | | |- |
| Line 96: |
Line 96: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''Initialise''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise''' |
| |- | | |- |
| Line 110: |
Line 110: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''IsAutoMoving''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''IsAutoMoving''' |
| |- | | |- |
| Line 124: |
Line 124: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''MoveToPosition''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToPosition''' |
| |- | | |- |
| Line 148: |
Line 148: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''SetAutoMoveSpeed''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetAutoMoveSpeed''' |
| |- | | |- |
| Line 167: |
Line 167: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''SetPosition''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetPosition''' |
| |- | | |- |
| Line 191: |
Line 191: |
| {| class="mtx-class-macrotable wikitable" | | {| 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;" | '''SetTrim''' | | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetTrim''' |
| |- | | |- |
| Author
|
Matrix TSL
|
| Version
|
1.0
|
| Category
|
Misc
|
Servo Motor component
Retired. Use Servo Motor Controller [2D] within E-blocks 2
Component Source Code
Please click here to download the component source project: FC_Comp_Source_EBlocks2_Servo_BL0162.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_EBlocks2_Servo_BL0162.fcfx
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
AutoMoveToPosition
|
AutoMoveToPosition
|
| Automatically moves towards the new position with a fixed rate of 100 steps per second.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- BYTE
|
Position
|
| Position to move to.
|
- VOID
|
Return
|
DisableServo
|
DisableServo
|
| Disables a servo channel effectivly disabling the motor.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- VOID
|
Return
|
EnableServo
|
EnableServo
|
| Enables a servo channel effectivly setting the position of the motor to the value in the local position variable.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- VOID
|
Return
|
Initialise
|
Initialise
|
| Sets up the servo motor interrupts
|
- VOID
|
Return
|
IsAutoMoving
|
IsAutoMoving
|
| Is the AutoMoveToPosition movement complete. Returns 1 if the servo is still moving. Returns 0 if the servo movement is complete.
|
- BYTE
|
Return
|
MoveToPosition
|
MoveToPosition
|
| Moves a single step towards the new position, the rate of movement is determined by how often the move to macro is called. Returns 1 if the position has been reached.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- BYTE
|
Position
|
| Target position to move towards.
|
- BYTE
|
Return
|
SetAutoMoveSpeed
|
SetAutoMoveSpeed
|
| Sets the speed of the auto move to position macro. Default speed is 1.
|
- BYTE
|
Speed
|
| 1=Slowest (Default), 2= Double, 3=Triple, 4=Quadruple
|
- VOID
|
Return
|
SetPosition
|
SetPosition
|
| Moves directly to the specified position with no interpolation.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- BYTE
|
Position
|
| Target position to move towards.
|
- VOID
|
Return
|
SetTrim
|
SetTrim
|
| Allows the level of trim for each servo channel to be adjusted progmatically.
|
- BYTE
|
Channel
|
| The channel to set the position for. First channel is zero.
|
- BYTE
|
Trim
|
| 0=0us, 1=+25us, 2=+50us, 3=+75us, 4=+100us, 5=-25us, 6=-50us, 7=-75us, 8=-100us
|
- VOID
|
Return
|
Property reference
|
Properties
|
|
Channels (1 - 8)
|
| Set the number of servo's that you need to control. Value from 1 to 8.
|
|
Connections
|
|
Channel 0
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 1
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 2
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 3
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 4
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 5
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 6
|
| Pin on which to output PWM for the servo motor.
|
|
Channel 7
|
| Pin on which to output PWM for the servo motor.
|
|
Pulse Width
|
|
Minimum (us)
|
| Shortest pulse width that will be used.
|
|
Maximum (us)
|
| Longest pulse width used for the PWM signals.
|
|
Trim
|
|
Trim 0
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 1
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 2
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 3
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 4
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 5
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 6
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Trim 7
|
| Trim the pulse width for this channel. Use this to trim the positioning of two servos so that similar input values will produce the same degree of movement.
|
|
Simulation
|
|
Show Servo Interface
|
|
|
|
Servo Object 0
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 1
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 2
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 3
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 4
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 5
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 6
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|
|
Servo Object 7
|
| Drag a servo motor component onto the System Panel, and then select it here, to create an on screen simulation of the way that your flowchart moves the servo's. Servo motors should be based on the 'Servo Motor Base' component, or use a custom component set to responf to 'User.Notify' events (ID = n/a, Data = Position (0-127)).
|