Jump to content

Component: Injector (API Digital Input) (Test Injectors): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(18 intermediate revisions by 2 users not shown)
Line 14: Line 14:
==Injector (API Digital Input) component==
==Injector (API Digital Input) component==
Data injector to allow a physical digital input pin to be attached to a simulated component.  The component will poll for any input state changes via SCADA Slave enabled hardware. Enabling the Flowcode simulation runtime to directly interface with a physical I/O pin.
Data injector to allow a physical digital input pin to be attached to a simulated component.  The component will poll for any input state changes via SCADA Slave enabled hardware. Enabling the Flowcode simulation runtime to directly interface with a physical I/O pin.
==Component Source Code==
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_InjectorSCADADigitalInput.fcfx FC_Comp_Source_InjectorSCADADigitalInput.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_InjectorSCADADigitalInput.fcfx FC_Comp_Source_InjectorSCADADigitalInput.fcfx]


==Detailed description==
==Detailed description==




Line 26: Line 50:


==Examples==
==Examples==




Line 37: Line 79:




==Downloadable macro reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
 
 
 
 
 
 
 
 
 
==Macro reference==
 
===GetConsoleHandle===
{| class="mtx-class-macrotable wikitable"
|-
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" class="mtx-class-macrohead" | '''GetConsoleHandle'''
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===InitialiseInjector===
{| 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;" | '''InitialiseInjector'''
| width="90%" class="mtx-class-macrohead" | '''InitialiseInjector'''
|-
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
| colspan="2" | Sets up the injector ready to receive commands or send data 
Line 57: Line 124:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RxByte===
{| 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;" | '''RxByteCount'''
| width="90%" class="mtx-class-macrohead" | '''RxByte'''
|-
|-
| colspan="2" | Returns the number of bytes currently sat in the receive buffer. 
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
|-
|-
|-
|-
Line 70: Line 138:




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===RxByteCount===
{| 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;" | '''TxByte'''
| width="90%" class="mtx-class-macrohead" | '''RxByteCount'''
|-
|-
| colspan="2" | Puts a byte onto the comms channel. 
| colspan="2" | Returns the number of bytes currently sat in the receive buffer. 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| width="90%" | DataByte
|-
| 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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===TxByte===
{| 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;" | '''RxByte'''
| width="90%" class="mtx-class-macrohead" | '''TxByte'''
|-
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
| colspan="2" | Puts a byte onto the comms channel. 
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-u16-icon.png]] - UINT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" | DataByte
|}
 
 
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| colspan="2" |  
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetConsoleHandle'''
|-
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
| 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:]] -  
| width="90%" style="border-top: 2px solid #000;" | ''Return''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|-
|-
Line 139: Line 194:
| colspan="2" |  
| colspan="2" |  
|-
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="10%" align="center" class="mtx-class-propfolder" | [[File:Fc9-conn-icon.png]]
| width="90%" | Simulation I/O Pin
| width="90%" class="mtx-class-propfolder" | Pin 0
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
Line 198: Line 207:
|-
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| width="10%" align="center" | [[File:Fc9-type-5-icon.png]]
| width="90%" | Simulation I/O Pin
|-
| colspan="2" | Pin monitored by the simulation 
|-
| width="10%" align="center" | [[File:Fc9-type-21-icon.png]]
| width="90%" | SCADA Slave Pin
|-
| colspan="2" | Pin used by the connected SCADA Slave hardware 
|-
| 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" style="background-color:#D8C9D8;" | [[File:Fc9-conn-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Simulations'''
|-
|}
|}

Latest revision as of 14:37, 13 July 2026

Author Matrix Ltd
Version 1.2
Category Test Injectors


Injector (API Digital Input) component

Data injector to allow a physical digital input pin to be attached to a simulated component. The component will poll for any input state changes via SCADA Slave enabled hardware. Enabling the Flowcode simulation runtime to directly interface with a physical I/O pin.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_InjectorSCADADigitalInput.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_InjectorSCADADigitalInput.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples







Macro reference

GetConsoleHandle

GetConsoleHandle
Gets the handle to the console allowing data displaying on the panel etc. 
- HANDLE Return


InitialiseInjector

InitialiseInjector
Sets up the injector ready to receive commands or send data 
- STRING InjectorName
Name of the console that will be created 
- BYTE Return


RxByte

RxByte
Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
- UINT Return


RxByteCount

RxByteCount
Returns the number of bytes currently sat in the receive buffer. 
- UINT Return


TxByte

TxByte
Puts a byte onto the comms channel. 
- BYTE DataByte
 
- VOID Return


Property reference

Properties
API Slave
SCADA Slave component to use to pipe data to a physical SPI bus 
Number of Pins
Specifies the number of pins the component can monitor and control. 
Poll Rate
 
Pin 0
Simulation I/O Pin
Pin monitored by the simulation 
SCADA Slave Pin
Pin used by the connected SCADA Slave hardware