Difference between revisions of "Component: Pedestrian Crossing (Scenarios)"
From Flowcode Help
Jump to navigationJump to search(9 intermediate revisions by the same user not shown) | |||
Line 5: | Line 5: | ||
|- | |- | ||
| width="20%" style="color:gray;" | Version | | width="20%" style="color:gray;" | Version | ||
− | | | + | | 7.7 |
|- | |- | ||
| width="20%" style="color:gray;" | Category | | width="20%" style="color:gray;" | Category | ||
Line 15: | Line 15: | ||
A set of pedestrian crossing lights complete with manual light control, a simple state machine and an automatic mode to allow the lights to take care of themselves. | A set of pedestrian crossing lights complete with manual light control, a simple state machine and an automatic mode to allow the lights to take care of themselves. | ||
− | == | + | ==Version information== |
− | + | Library Version, Component Version, Date, Author, Info | |
+ | 4, 4.0, 25-09-24, MW, Changed when WAIT indictor is switched off | ||
+ | 7, 7.0, 28-02-25, MW, Fixed bug which shows both red and green on solid | ||
+ | 7, 7.0, 28-02-25, MW, Changed green flash rate so it remains constant during the flash time duration | ||
+ | 7, 7.0, 28-02-25, MW, Fixed state 3 as green was not flashing | ||
+ | 7, 7.0, 28-02-25, MW, Fixed so Wait is not lit on button press when not required | ||
+ | 7, 7.0, 28-02-25, MW, Added tool tip text to SetLightState | ||
==Detailed description== | ==Detailed description== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
Line 26: | Line 40: | ||
==Examples== | ==Examples== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
''<span style="color:red;">No additional examples</span>'' | ''<span style="color:red;">No additional examples</span>'' | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
==Macro reference== | ==Macro reference== | ||
+ | ===AutomaticMode=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''AutomaticMode''' |
+ | |- | ||
+ | | colspan="2" | Enables or Disables automatic mode where the lights will automatically cycle between modes. | ||
+ | |- | ||
|- | |- | ||
− | | | + | | width="10%" align="center" | [[File:Fc9-bool-icon.png]] - BOOL |
+ | | width="90%" | Mode | ||
|- | |- | ||
+ | | colspan="2" | 0 = Auto Mode Disabled, 1 = Auto Mode Enabled | ||
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | ||
|} | |} | ||
+ | ===GetLightState=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetLightState''' |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Reads the state of one of the light sets. Returns the state as a number. 0=Red, 1=Red+Wait, 2=Green, 3=FlashingGreen, 4=Unknown State |
|- | |- | ||
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | ||
|} | |} | ||
+ | ===GetStopGo=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetStopGo''' |
+ | |- | ||
+ | | colspan="2" | Reads one of the light sets to determine if it is safe to go through the lights. Returns 1 for a Green light, otherwise returns 0. | ||
+ | |- | ||
|- | |- | ||
− | | | + | | 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'' | ||
+ | |} | ||
+ | |||
+ | |||
+ | ===ReadSwitch=== | ||
+ | {| 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;" | '''ReadSwitch''' | ||
|- | |- | ||
− | | | + | | colspan="2" | Check to see if switch is currently pressed. Return: 0 = Not Pressed, 1 = Pressed |
− | |||
|- | |- | ||
− | |||
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
+ | ===SetLightState=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| 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" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
− | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | ''' | + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetLightState''' |
+ | |- | ||
+ | | colspan="2" | Follows the standard pedestrian crossing light sequence. 0=Red, 1=Red+Wait lit, 2=Green, 3=Green flashing for the duration in properties | ||
+ | |- | ||
|- | |- | ||
− | | | + | | width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE |
+ | | width="90%" | SequenceNumber | ||
|- | |- | ||
+ | | colspan="2" | 0 = Red, 1 = Red+Wait, 2 = Green, 3 = Green Flashing | ||
|- | |- | ||
− | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9- | + | | 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'' | ||
|} | |} | ||
+ | ===SetLights=== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
|- | |- | ||
Line 116: | Line 174: | ||
| width="90%" style="border-top: 2px solid #000;" | ''Return'' | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
|} | |} | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Line 164: | Line 202: | ||
|- | |- | ||
| colspan="2" | Colour Picker to set the Colour of the Wait indicator. | | colspan="2" | Colour Picker to set the Colour of the Wait indicator. | ||
+ | |- | ||
+ | | width="10%" align="center" | [[File:Fc9-type-1-icon.png]] | ||
+ | | width="90%" | Button Colour | ||
+ | |- | ||
+ | | colspan="2" | Colour Picker to set the Colour of the push button. | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-1-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-1-icon.png]] | ||
Line 175: | Line 218: | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
− | | width="90%" | Wait Time | + | | width="90%" | Wait Time (ms) |
|- | |- | ||
| colspan="2" | Amount of time to wait in milliseconds the pedestrians have to wait before being allowed to cross. | | colspan="2" | Amount of time to wait in milliseconds the pedestrians have to wait before being allowed to cross. | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
− | | width="90%" | Crossing Time | + | | width="90%" | Crossing Time (ms) |
|- | |- | ||
| colspan="2" | Amount of time to wait in milliseconds for the pedestrians to cross the road. | | colspan="2" | Amount of time to wait in milliseconds for the pedestrians to cross the road. | ||
|- | |- | ||
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]] | ||
− | | width="90%" | Flash Time | + | | width="90%" | Flash Time (ms) |
|- | |- | ||
| colspan="2" | Amount of time to wait in milliseconds to warn pedestrians to finish crossing the road. | | colspan="2" | Amount of time to wait in milliseconds to warn pedestrians to finish crossing the road. | ||
|- | |- | ||
| width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]] | ||
− | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | | + | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Button Callback |
|- | |- | ||
|- | |- | ||
− | | width="10%" align="center" | [[File:Fc9-type- | + | | width="10%" align="center" | [[File:Fc9-type-22-icon.png]] |
− | | width="90%" | | + | | width="90%" | Button Pressed Macro |
|- | |- | ||
− | | colspan="2" | | + | | colspan="2" | Calls a user macro when the button is pressed allowing for interrupt style callback functionality. |
|} | |} | ||
+ | |||
+ | ==Component Source Code== | ||
+ | |||
+ | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_PedestrianCrossing_GDI.fcfx FC_Comp_Source_PedestrianCrossing_GDI.fcfx] | ||
+ | |||
+ | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_PedestrianCrossing_GDI.fcfx FC_Comp_Source_PedestrianCrossing_GDI.fcfx] |
Latest revision as of 08:59, 9 June 2025
Author | Matrix TSL |
Version | 7.7 |
Category | Scenarios |
Contents
Pedestrian Crossing component
A set of pedestrian crossing lights complete with manual light control, a simple state machine and an automatic mode to allow the lights to take care of themselves.
Version information
Library Version, Component Version, Date, Author, Info 4, 4.0, 25-09-24, MW, Changed when WAIT indictor is switched off 7, 7.0, 28-02-25, MW, Fixed bug which shows both red and green on solid 7, 7.0, 28-02-25, MW, Changed green flash rate so it remains constant during the flash time duration 7, 7.0, 28-02-25, MW, Fixed state 3 as green was not flashing 7, 7.0, 28-02-25, MW, Fixed so Wait is not lit on button press when not required 7, 7.0, 28-02-25, MW, Added tool tip text to SetLightState
Detailed description
No detailed description exists yet for this component
Examples
No additional examples
Macro reference
AutomaticMode
![]() |
AutomaticMode |
Enables or Disables automatic mode where the lights will automatically cycle between modes. | |
![]() |
Mode |
0 = Auto Mode Disabled, 1 = Auto Mode Enabled | |
![]() |
Return |
GetLightState
![]() |
GetLightState |
Reads the state of one of the light sets. Returns the state as a number. 0=Red, 1=Red+Wait, 2=Green, 3=FlashingGreen, 4=Unknown State | |
![]() |
Return |
GetStopGo
![]() |
GetStopGo |
Reads one of the light sets to determine if it is safe to go through the lights. Returns 1 for a Green light, otherwise returns 0. | |
![]() |
Return |
ReadSwitch
![]() |
ReadSwitch |
Check to see if switch is currently pressed. Return: 0 = Not Pressed, 1 = Pressed | |
![]() |
Return |
SetLightState
SetLights
![]() |
SetLights |
Direct control over all 3 of the lights. | |
![]() |
Red |
0 = Off, 1 = On | |
![]() |
Green |
0 = Off, 1 = On | |
![]() |
Wait |
0 = Off, 1 = On | |
![]() |
Return |
Property reference
Component Source Code
Please click here to download the component source project: FC_Comp_Source_PedestrianCrossing_GDI.fcfx
Please click here to view the component source code (Beta): FC_Comp_Source_PedestrianCrossing_GDI.fcfx