Jump to content

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

From Flowcode Help
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:gray..."
 
m Text replacement - "style="background-color:#EAE1EA;"" to "class="mtx-class-propfolder""
 
(21 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==


''No detailed description exists yet for this component''
''No detailed description exists yet for this component''


==Examples==
==Examples==




Line 25: Line 79:




==Downloadable 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;" | '''InitialiseInjector'''
|-
| colspan="2" | Sets up the injector ready to receive commands or send data 
|-
|-
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | InjectorName
|-
| colspan="2" | Name of the console that will be created 
|-
| 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;"
 
 
 
 
 
 
 
==Macro reference==
 
===GetConsoleHandle===
{| 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" | '''GetConsoleHandle'''
|-
|-
| colspan="2" | Returns the number of bytes currently sat in the receive buffer. 
| 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-u16-icon.png]] - UINT
| 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''
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
|}




{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
===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;" | '''TxByte'''
| width="90%" class="mtx-class-macrohead" | '''InitialiseInjector'''
|-
|-
| colspan="2" | Puts a byte onto the comms channel. 
| colspan="2" | Sets up the injector ready to receive commands or send data 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING
| width="90%" | DataByte
| width="90%" | InjectorName
|-
|-
| colspan="2" |  
| colspan="2" | Name of the console that will be created 
|-
|-
| 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-u8-icon.png]] - BYTE
| 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;"
===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;" | '''RxByte'''
| width="90%" class="mtx-class-macrohead" | '''RxByte'''
|-
|-
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
| colspan="2" | Attempt to receive a byte back from the injector 0 - 255 = Valid data 256 = RX timeout no data available 
Line 89: 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;" | '''GetConsoleHandle'''
| width="90%" class="mtx-class-macrohead" | '''RxByteCount'''
|-
|-
| colspan="2" | Gets the handle to the console allowing data displaying on the panel etc. 
| colspan="2" | Returns the number of bytes currently sat in the receive buffer. 
|-
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:]] -  
| 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''
| 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;" | '''UARTSend'''
| width="90%" class="mtx-class-macrohead" | '''TxByte'''
|-
|-
| colspan="2" |  
| colspan="2" | Puts a byte onto the comms channel. 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Channel
| width="90%" | DataByte
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Data
|-
|-
| colspan="2" |  
| colspan="2" |  
Line 123: Line 169:
| 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 150: 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="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 219: 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" 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