Difference between revisions of "Component: DC Motor ()"

From Flowcode Help
Jump to navigationJump to search
(Created page with "{| style="width:50%" |- | width="20%" style="color:gray;" | Author | Matrix Ltd. |- | width="20%" style="color:gray;" | Version | 1.2 |- | width="20%" style="color:gra...")
 
 
(4 intermediate revisions by the same user not shown)
Line 14: Line 14:
 
==DC Motor component==
 
==DC Motor component==
 
DC Motor that can be driven in one or both directions using digital output pins, PWM or HBRIDGE peripherals.
 
DC Motor that can be driven in one or both directions using digital output pins, PWM or HBRIDGE peripherals.
 +
 +
==Component Pack==
 +
 +
MECHATRONICS
  
 
==Detailed description==
 
==Detailed description==
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
  
 
''No detailed description exists yet for this component''
 
''No detailed description exists yet for this component''
  
 
==Examples==
 
==Examples==
 +
 +
 +
 +
 +
 +
 +
 +
 +
 +
  
  
Line 109: Line 133:
 
|-
 
|-
 
| colspan="2" | Sets the motor power for PWM or H-Bridge outputs 
 
| colspan="2" | Sets the motor power for PWM or H-Bridge outputs 
|-
 
| 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;" | '''Forward'''
 
|-
 
| colspan="2" | Drives both motors of the formula flowcode forwards with the power specified. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Power
 
|-
 
| 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;" | '''ReadLineSensor'''
 
|-
 
| colspan="2" | Returns the digital value from the line sensor specified. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Sensor
 
|-
 
| colspan="2" |  
 
|-
 
| 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;" | '''SpinRight'''
 
|-
 
| colspan="2" | Spins the formula flowcode on the spot in a clockwise direction as seen from above. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Power
 
|-
 
| 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;" | '''CheckIR'''
 
|-
 
| colspan="2" | Checks to see if a IR sensor is within the master threshold distance. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Sensor
 
|-
 
| colspan="2" |  
 
|-
 
| 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;" | '''ReadIRSensor'''
 
|-
 
| colspan="2" | Reads the analogue value from the specified IR distance sensor. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Sensor
 
|-
 
| colspan="2" |  
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
 
| 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 speed and direction of the Formula Flowcode motors. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:]] -
 
| width="90%" | Left_Power
 
|-
 
| colspan="2" | Valid Range = -255 to 255 
 
|-
 
| width="10%" align="center" | [[File:]] -
 
| width="90%" | Right_Power
 
|-
 
| colspan="2" | Valid Range = -255 to 255 
 
|-
 
| 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;" | '''Reverse'''
 
|-
 
| colspan="2" | Drives both motors of the formula flowcode backwards with the power specified. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Power
 
|-
 
| 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;" | '''WaitForSwitch'''
 
|-
 
| colspan="2" | Waits for the specified switch to be pressed. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | Switch
 
|-
 
| 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;" | '''ReadLDR'''
 
|-
 
| colspan="2" | Reads the current audio signal level from the on-board light sensor. 
 
|-
 
|-
 
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -
 
| 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;" | '''WriteLEDs'''
 
|-
 
| colspan="2" | Allows control of all 8-LEDs on the front of the Formula Flowcode. 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
 
| width="90%" | LED_Byte
 
|-
 
| 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;" | '''Initialise'''
 
|-
 
| colspan="2" | Starts up the formula flowcode PWM for motor control and performs the wait for button press 
 
|-
 
 
|-
 
|-
 
| 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 316: Line 147:
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
 +
|-
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Control Type
 
|-
 
|-
 
|-
 
|-
Line 332: Line 167:
 
|-
 
|-
 
| colspan="2" | Decides how the motor outputs are enabled. 
 
| colspan="2" | Decides how the motor outputs are enabled. 
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | PWM Settings
 +
|-
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
Line 345: Line 184:
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | Port
 
| width="90%" | Port
|-
 
| colspan="2" |  
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Remap Pin
 
 
|-
 
|-
 
| colspan="2" |  
 
| colspan="2" |  
Line 378: Line 212:
 
| colspan="2" |  
 
| colspan="2" |  
 
|-
 
|-
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
+
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
| width="90%" | Channel
+
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation Settings
|-
 
| colspan="2" | PWM Channel selector 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Polarity
 
|-
 
| colspan="2" | Selects the active output voltage.  Active high - Pins will be low when inactive and high when active. Active Low- Pins will be high when inactive and low when active. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Timer
 
|-
 
| colspan="2" | Timer associated with PWM to drive the output.  Warning - All PWM channels linked to the same timer will share the same period and prescaler settings. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Prescaler Divide
 
|-
 
| colspan="2" | Prescaler Divider value 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-14-icon.png]]
 
| width="90%" | Period Register
 
|-
 
| colspan="2" | PWM Period Register value 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | A Pin
 
|-
 
| colspan="2" | Output Pin A 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | B Pin
 
|-
 
| colspan="2" | Output Pin B 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | C Pin
 
|-
 
| colspan="2" | Output Pin C 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | D Pin
 
|-
 
| colspan="2" | Output Pin D 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | A Remap Pin
 
|-
 
| colspan="2" | Remap Pin A - Specifies the pin used for the A output.  Only available on devices supporting remappable hardware pins. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | B Remap Pin
 
|-
 
| colspan="2" | Remap Pin B - Specifies the pin used for the B output.  Only available on devices supporting remappable hardware pins. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | C Remap Pin
 
|-
 
| colspan="2" | Remap Pin C - Specifies the pin used for the C output.  Only available on devices supporting remappable hardware pins. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | D Remap Pin
 
 
|-
 
|-
| colspan="2" | Remap Pin D - Specifies the pin used for the D output.  Only available on devices supporting remappable hardware pins. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="90%" | Frequency (KHz)
 
|-
 
| colspan="2" | Calculated PWM output frequency in KHz. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Rising Bits
 
|-
 
| colspan="2" | Number of bits assigned to the rising edge dead band counter. Auto populated based on selected target chip. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Falling Bits
 
|-
 
| colspan="2" | Number of bits assigned to the falling edge dead band counter. Auto populated based on selected target chip. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Rising Count
 
|-
 
| colspan="2" | Number of cycles to wait after a falling edge and before a rising edge. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 
| width="90%" | Falling Count
 
|-
 
| colspan="2" | Number of cycles to wait after a rising edge and before a falling edge. 
 
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 
| width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
Line 492: Line 240:
 
|-
 
|-
 
| colspan="2" | Which way the motor will rotate when the 'forwards' command is sent. 
 
| colspan="2" | Which way the motor will rotate when the 'forwards' command is sent. 
 +
|-
 +
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 +
| width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Linkage
 +
|-
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
 
| width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
Line 497: Line 249:
 
|-
 
|-
 
| colspan="2" | An object or group to link the motor to - the object will move along with the motor. 
 
| colspan="2" | An object or group to link the motor to - the object will move along with the motor. 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Connections'''
 
|-
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 
| width="90%" | PinA
 
|-
 
| colspan="2" | First control pin - set 'pattern' properties below to set the pin's function. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Forwards Pattern
 
|-
 
| colspan="2" | The state of pins A and B required to drive the motor in a forwards direction. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Reverse Pattern
 
|-
 
| colspan="2" | States of pins A and B required to drive the motor in a reverse direction. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Coast Pattern
 
|-
 
| colspan="2" | States of pins A and B required to stop the motor. 
 
|-
 
| width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 
| width="90%" | Brake Pattern
 
|-
 
| colspan="2" | States of pins A and B required to stop the motor. 
 
|-
 
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
 
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''
 
|-
 
 
|}
 
|}

Latest revision as of 17:26, 9 November 2022

Author Matrix Ltd.
Version 1.2
Category


DC Motor component

DC Motor that can be driven in one or both directions using digital output pins, PWM or HBRIDGE peripherals.

Component Pack

MECHATRONICS

Detailed description

No detailed description exists yet for this component

Examples

Simple example showing how to drive the motor components and how to create sub assemblies attached to the motor output shafts in the simulation panels. FC6 Icon.png Motors

Downloadable macro reference

Fc9-comp-macro.png Coast
Turn off power to the motor by setting the pins according to the 'Coast Pattern' property. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Break
Actively drives both ends of the motor by setting the pins according to the 'Brake Pattern' property. 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Disable
Disable the motor output 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Forwards
Set the motor turning in the forwards direction by setting the pins according to the 'Reverse Pattern' property. 
Fc9-u16-icon.png - UINT Duty
Sets the motor power for PWM or H-Bridge outputs 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Enable
Enables the motor output 
Fc9-void-icon.png - VOID Return


Fc9-comp-macro.png Reverse
Set the motor turning in the reverse direction by setting the pins according to the 'Reverse Pattern' property. 
Fc9-u16-icon.png - UINT Duty
Sets the motor power for PWM or H-Bridge outputs 
Fc9-void-icon.png - VOID Return



Property reference

Fc9-prop-icon.png Properties
Fc9-conn-icon.png Control Type
Fc9-type-16-icon.png Control Method
Controls how the motor is controlled. On/Off requires output pins PWM requires a hardware PWM channel H-Bridge requires a hardware H-Bridge channel 
Fc9-type-16-icon.png Bridge Type
 
Fc9-type-16-icon.png Enable Method
Decides how the motor outputs are enabled. 
Fc9-conn-icon.png PWM Settings
Fc9-type-16-icon.png Channel
PWM Channel selector 
Fc9-type-16-icon.png Alt Pin Enable
Alternative Pin Enable (if available on target device) 
Fc9-type-5-icon.png Port
 
Fc9-type-14-icon.png Period Register
PWM Period Register value 
Fc9-type-16-icon.png Prescaler Divide
Prescaler Divider value 
Fc9-type-16-icon.png PWM Timer
Timer associated with PWM to drive the output. Warning - All PWM channels linked to the same timer will share the same period and prescaler settings. 
Fc9-type-15-icon.png Frequency (KHz)
 
Fc9-type-5-icon.png Direction Pin
 
Fc9-conn-icon.png Simulation Settings
Fc9-type-15-icon.png Speed
Speed of the motor when turned on. Positive speed -> Counter-clockwsie Negative speed -> Clockwise  
Fc9-type-15-icon.png Acceleration
Speed change per second when the motor us powered. Set to zero for instantaneous speed changes.  
Fc9-type-15-icon.png Deceleration
Speed change per second when the motor is coasting with no power. Set to zero for instantaneous speed changes. 
Fc9-type-7-icon.png Show Actuator
When active, an actuator is shown on the motor spindle to make the animation easier to observe. 
Fc9-type-16-icon.png Forwards Direction
Which way the motor will rotate when the 'forwards' command is sent. 
Fc9-conn-icon.png Linkage
Fc9-type-17-icon.png Target Object
An object or group to link the motor to - the object will move along with the motor.