Difference between revisions of "Component: Car Seat (Scenarios)"
From Flowcode Help
Jump to navigationJump to search(16 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | {| style="width:50%" | |
− | |||
− | {| | ||
|- | |- | ||
− | | width="20%" style="color: gray;" | Author | + | | width="20%" style="color:gray;" | Author |
| Matrix TSL | | Matrix TSL | ||
|- | |- | ||
− | | width="20%" style="color: gray;" | Version | + | | width="20%" style="color:gray;" | Version |
− | | 1.0 | + | | 1.0 |
|- | |- | ||
− | | width="20%" style="color: gray;" | Category | + | | width="20%" style="color:gray;" | Category |
| Scenarios | | Scenarios | ||
|} | |} | ||
+ | ==Car Seat component== | ||
+ | An electric car seat chassis with a series of motors and sensors. Students should work through exercises to learn the principles of electric car seats including how to save and load memory positions. | ||
− | == | + | ==Component Source Code== |
− | |||
− | |||
− | |||
− | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_CarSeatSource_v004.fcfx FC_Comp_Source_CarSeatSource_v004.fcfx] | |
− | |||
− | [ | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_CarSeatSource_v004.fcfx FC_Comp_Source_CarSeatSource_v004.fcfx] |
+ | ==Detailed description== | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | '' | + | ''No detailed description exists yet for this component'' |
− | + | ==Examples== | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | There is a detailed walk through of the scenario detailed at the link below to go with this component. | |
− | + | [[Car_Seat|Car Seat Scenario]] | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | ==Macro reference== | |
+ | ===CurrentSenseMotor1=== | ||
+ | {| 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;" | '''CurrentSenseMotor1''' | ||
+ | |- | ||
+ | | colspan="2" | This macro is used to sense the current draw from DC motor 1. When it is not being used, it will draw no current. In normal operating conditions it will draw 3A, and under stall conditions (when the motor hits the end stops) it will draw 20A. | ||
+ | |- | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | |||
− | :[[ | + | ===CurrentSenseMotor2=== |
+ | {| 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;" | '''CurrentSenseMotor2''' | ||
+ | |- | ||
+ | | colspan="2" | This macro is used to sense the current draw from DC motor 2. When it is not being used, it will draw no current. In normal operating conditions it will draw 3A, and under stall conditions (when the motor hits the end stops) it will draw 20A. | ||
+ | |- | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | === | + | ===CurrentSenseMotor3=== |
− | + | {| 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;" | '''CurrentSenseMotor3''' | ||
+ | |- | ||
+ | | colspan="2" | This macro is used to sense the current draw from DC motor 3. When it is not being used, it will draw no current. In normal operating conditions it will draw 3A, and under stall conditions (when the motor hits the end stops) it will draw 20A. | ||
+ | |- | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | |||
− | :[[ | + | ===Encoder1=== |
− | :: | + | {| 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;" | '''Encoder1''' | ||
+ | |- | ||
+ | | colspan="2" | Returns value is equal to X Axis current value (forward/ backwards movement). | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | ''' | + | ===Encoder2=== |
+ | {| 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;" | '''Encoder2''' | ||
+ | |- | ||
+ | | colspan="2" | Returns value is equal to Front Z Axis current value. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
+ | ===Encoder3=== | ||
+ | {| 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;" | '''Encoder3''' | ||
+ | |- | ||
+ | | colspan="2" | Returns value is equal to Rear Z Axis current value. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-s16-icon.png]] - INT | ||
+ | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
+ | |} | ||
− | |||
− | |||
− | ''' | + | ===Load=== |
+ | {| 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;" | '''Load''' | ||
+ | |- | ||
+ | | colspan="2" | Moves the seat back into the last saved position stored in the allocated save slot. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | Location | ||
+ | |- | ||
+ | | colspan="2" | 0 = A, 1 = B | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | |||
+ | ===Motor1=== | ||
+ | {| 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;" | '''Motor1''' | ||
+ | |- | ||
+ | | colspan="2" | Moves the Car Seat Forwards and Backwards | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | Direction | ||
+ | |- | ||
+ | | colspan="2" | 0 = Stop, 1 = Forward, 2 = Backward | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | |||
− | :[[ | + | ===Motor2=== |
+ | {| 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;" | '''Motor2''' | ||
+ | |- | ||
+ | | colspan="2" | Controls the Movement of the seat going up and down by the front | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | Direction | ||
+ | |- | ||
+ | | colspan="2" | 0 = Stop, 1 = Up, 2 = Down | ||
+ | |- | ||
+ | | 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'' | ||
+ | |} | ||
− | === | + | ===Motor3=== |
− | Controls the Movement of the seat going up and down by the | + | {| 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;" | '''Motor3''' | |
− | + | |- | |
− | + | | colspan="2" | Controls the Movement of the seat going up and down by the back | |
− | + | |- | |
− | + | |- | |
− | + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | |
− | + | | width="90%" | Direction | |
− | + | |- | |
− | + | | colspan="2" | 0 = Stop, 1 = Up, 2 = Down | |
− | + | |- | |
− | == | + | | 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'' | |
− | + | |} | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ===Save=== | ||
+ | {| 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;" | '''Save''' | ||
+ | |- | ||
+ | | colspan="2" | Saves the current position of the seat into the allocated save slot. | ||
+ | |- | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE | ||
+ | | width="90%" | SavePos | ||
+ | |- | ||
+ | | colspan="2" | 0 = pos A, 1 = pos B | ||
+ | |- | ||
+ | | 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;" | |
− | + | |- | |
− | + | | 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%" | Show seat base? | ||
+ | |- | ||
+ | | colspan="2" | Controls if the base of the car seat is shown on the simulation panel. | ||
+ | |} |
Latest revision as of 13:09, 7 February 2023
Author | Matrix TSL |
Version | 1.0 |
Category | Scenarios |
Contents
Car Seat component
An electric car seat chassis with a series of motors and sensors. Students should work through exercises to learn the principles of electric car seats including how to save and load memory positions.
Component Source Code
Please click here to download the component source project: FC_Comp_Source_CarSeatSource_v004.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_CarSeatSource_v004.fcfx
Detailed description
No detailed description exists yet for this component
Examples
There is a detailed walk through of the scenario detailed at the link below to go with this component.
Macro reference
CurrentSenseMotor1
CurrentSenseMotor2
CurrentSenseMotor3
Encoder1
Encoder1 | |
Returns value is equal to X Axis current value (forward/ backwards movement). | |
- INT | Return |
Encoder2
Encoder2 | |
Returns value is equal to Front Z Axis current value. | |
- INT | Return |
Encoder3
Encoder3 | |
Returns value is equal to Rear Z Axis current value. | |
- INT | Return |
Load
Load | |
Moves the seat back into the last saved position stored in the allocated save slot. | |
- BYTE | Location |
0 = A, 1 = B | |
- VOID | Return |
Motor1
Motor1 | |
Moves the Car Seat Forwards and Backwards | |
- BYTE | Direction |
0 = Stop, 1 = Forward, 2 = Backward | |
- VOID | Return |
Motor2
Motor2 | |
Controls the Movement of the seat going up and down by the front | |
- BYTE | Direction |
0 = Stop, 1 = Up, 2 = Down | |
- VOID | Return |
Motor3
Motor3 | |
Controls the Movement of the seat going up and down by the back | |
- BYTE | Direction |
0 = Stop, 1 = Up, 2 = Down | |
- VOID | Return |
Save
Save | |
Saves the current position of the seat into the allocated save slot. | |
- BYTE | SavePos |
0 = pos A, 1 = pos B | |
- VOID | Return |
Property reference
Properties | |
Show seat base? | |
Controls if the base of the car seat is shown on the simulation panel. |