|  |   | 
| (5 intermediate revisions by the same user not shown) | 
| Line 17: | Line 17: | 
|  | ==Component Source Code== |  | ==Component Source Code== | 
|  |  |  |  | 
| − | Please click here to download the component source project: [https://www.flowcode.co.uk/wikicopy/componentsource/FC_Comp_Source_HallEffect_Digital.fcfx FC_Comp_Source_HallEffect_Digital.fcfx] | + | Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_HallEffect_Digital.fcfx FC_Comp_Source_HallEffect_Digital.fcfx] | 
|  |  |  |  | 
|  | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_HallEffect_Digital.fcfx FC_Comp_Source_HallEffect_Digital.fcfx] |  | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_HallEffect_Digital.fcfx FC_Comp_Source_HallEffect_Digital.fcfx] | 
| Line 32: | Line 32: | 
|  |  |  |  | 
|  |  |  |  | 
| − | 
 |  | 
| − | ''No detailed description exists yet for this component''
 |  | 
| − | 
 |  | 
| − | ==Examples==
 |  | 
|  |  |  |  | 
|  |  |  |  | 
| Line 41: | Line 37: | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ''No detailed description exists yet for this component'' | 
|  |  |  |  | 
|  | + | ==Examples== | 
|  |  |  |  | 
|  |  |  |  | 
| Line 48: | Line 46: | 
|  |  |  |  | 
|  |  |  |  | 
| − | Sample program using the EBM011 - Hall Effect sensor
 |  | 
| − | 
 |  | 
| − | Reads the sensor and displays output on LED D7.
 |  | 
| − | {{Fcfile|EBM011 - Test Program.fcfx|EBM011 Example}}
 |  | 
| − | 
 |  | 
| − | ==Macro reference==
 |  | 
| − | 
 |  | 
| − | {| 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;" | '''ReadState'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Get the current collision state. The 'Polarity' property will affect whether a collision is represented by a high or low state. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''SetTarget'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Set the object that you want to test for collision with. If this is not called, or is called with handle = 0, collisions will be tested against every panel object that has 'Solid' status. NB) Specifying an object will save CPU power!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE
 |  | 
| − | | width="90%" | Target
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | The object to test for collision with. 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''WaitUntilHigh'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Pause the program until the detector goes high.  'Polarity' will affect whether high value represents a collision or separation. NB) In simulation, only use this macro if testing for collision with animated or timer driven objects!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''WaitUntilLow'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Pause the program until the detector goes low.  'Polarity' will affect whether low value represents a collision or separation. NB) In simulation, only use this macro if testing for collision with animated or timer driven objects!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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==
 | + | Sample program using the EBM011 - Hall Effect sensor | 
|  |  |  |  | 
| − | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 | + | Reads the sensor and displays output on LED D7. | 
| − | |-
 | + | {{Fcfile|EBM011 - Test Program.fcfx|EBM011 Example}} | 
| − | | 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 |  | 
| − | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 |  | 
| − | | width="90%" | Pin
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | The chip pin that will receive theswitch status. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 |  | 
| − | | width="90%" | Polarity
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Select the pin state that will indicate that an object has been detected. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 |  | 
| − | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
 |  | 
| − | | width="90%" | Magnet Object
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Select an object from the panel to act as the magnet that triggers the reed switch. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 |  | 
| − | | width="90%" | Range
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Distance within which the switch is activated. NB)  This is measured between the centre of the proximity switch andthe centre of the target object. 
 |  | 
| − | |- |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 |  | 
| − | | width="90%" | Timer Interval (ms)
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Time in milliseconds between testing for proximity. Small time = Greater CPU load Large time = More like to miss activation if it is very brief. 
 |  | 
| − | |}==Macro reference== |  | 
| − |   |  | 
| − | {| 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;" | '''ReadState'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Get the current collision state. The 'Polarity' property will affect whether a collision is represented by a high or low state. 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''SetTarget'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Set the object that you want to test for collision with. If this is not called, or is called with handle = 0, collisions will be tested against every panel object that has 'Solid' status. NB) Specifying an object will save CPU power!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE
 |  | 
| − | | width="90%" | Target
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | The object to test for collision with. 
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''WaitUntilHigh'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Pause the program until the detector goes high.  'Polarity' will affect whether high value represents a collision or separation. NB) In simulation, only use this macro if testing for collision with animated or timer driven objects!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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;" | '''WaitUntilLow'''
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Pause the program until the detector goes low.  'Polarity' will affect whether low value represents a collision or separation. NB) In simulation, only use this macro if testing for collision with animated or timer driven objects!! 
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | 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==
 |  | 
|  |  |  |  | 
| − | {| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 | + | ==Macro reference== | 
| − | |-
 |  | 
| − | | 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" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 |  | 
| − | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Connections
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
 |  | 
| − | | width="90%" | Pin
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | The chip pin that will receive the switch status. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-16-icon.png]]
 |  | 
| − | | width="90%" | Polarity
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Select the pin state that will indicate that an object has been detected. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" style="background-color:#EAE1EA;" | [[File:Fc9-conn-icon.png]]
 |  | 
| − | | width="90%" style="background-color:#EAE1EA; color:#4B008D;" | Simulation
 |  | 
| − | |-
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-17-icon.png]]
 |  | 
| − | | width="90%" | Magnet Object
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Select an object from the panel to act as the magnet that triggers the reed switch. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-15-icon.png]]
 |  | 
| − | | width="90%" | Range
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Distance within which the switch is activated. NB)  This is measured between the centre of the proximity switch and the centre of the target object. 
 |  | 
| − | |-
 |  | 
| − | | width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
 |  | 
| − | | width="90%" | Timer Interval (ms)
 |  | 
| − | |-
 |  | 
| − | | colspan="2" | Time in milliseconds between testing for proximity. Small time = Greater CPU load Large time = More like to miss activation if it is very brief. 
 |  | 
| − | |}==Macro reference==
 |  | 
|  |  |  |  | 
|  | + | ===ReadState=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | 
|  | |- |  | |- | 
| Line 270: | Line 87: | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===SetTarget=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | 
|  | |- |  | |- | 
| Line 288: | Line 106: | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===WaitUntilHigh=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | 
|  | |- |  | |- | 
| Line 301: | Line 120: | 
|  |  |  |  | 
|  |  |  |  | 
|  | + | ===WaitUntilLow=== | 
|  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" |  | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | 
|  | |- |  | |- | 
| Line 312: | Line 132: | 
|  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' |  | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | 
|  | |} |  | |} | 
| − | 
 |  | 
| − | 
 |  | 
|  |  |  |  | 
|  |  |  |  |