Difference between revisions of "IonoPi"

From HSYCO
Jump to navigation Jump to search
(Created page with "[http://www.sferalabs.cc/iono/ Iono] is a general-purpose, professional input/output module based on a standard Arduino microcontroller. File:Iono_ethernet.png|200px|thumb|...")
 
 
(16 intermediate revisions by one other user not shown)
Line 1: Line 1:
[http://www.sferalabs.cc/iono/ Iono] is a general-purpose, professional input/output module based on a standard Arduino microcontroller.
+
[http://www.sferalabs.cc/iono-pi/ Iono Pi] is a versatile I/O module that combines several digital and analog input lines, power relay outputs and support for standard interfaces, typical of modern PLCs, with the powerful computing core of the Raspberry Pi.
  
[[File:Iono_ethernet.png|200px|thumb|iono Ethernet]]
+
[[File:iono_pi_module_board.png|200px|thumb|iono Pi]]
  
This driver provides support for iono Ethernet employing the HTTP API provided by the [https://github.com/sfera-labs/iono/wiki/IonoWeb IonoWeb library].
+
This driver provides support for iono Pi pre-installed with the [http://github.com/sfera-labs/sfera Sfera Framework] and the [http://github.com/sfera-labs/sfera-driver-iono-pi Sfera Driver] for Iono Pi.
  
The default sketch installed in iono Ethernet exposes this API.
 
  
 
[[Category:I/O Server]]
 
[[Category:I/O Server]]
  
 
== HSYCO Configuration ==
 
== HSYCO Configuration ==
Add a IONO I/O Server in the [[Settings#I/O Servers|I/O Servers section of the Settings]] and set its parameters:
+
Add a IONO Pi I/O Server in the [[Settings#I/O Servers|I/O Servers section of the Settings]] and set its parameters:
  
 
=== Communication ===
 
=== Communication ===
Line 16: Line 15:
  
 
=== High Availability ===
 
=== High Availability ===
*'''Shutdown when inactive''': defaults to true.
+
*'''Shutdown when inactive''': defaults to false.
  
 
=== Options ===
 
=== Options ===
Line 28: Line 27:
 
|-
 
|-
  
|rowspan="2"|startupevents
+
|rowspan="2"|https
|rowspan="2"|true
+
|rowspan="2"|false
 
|true
 
|true
|generate IO events also during the driver’s start-up phase
+
|use HTTPS to communicate with Iono Pi
 
|-
 
|-
 
|false
 
|false
|start generating events only after HSYCO is aligned with the current status of the system
+
|use HTTP to communicate with Iono Pi
  
 
|-
 
|-
  
|rowspan="2"|pollinterval
+
|rowspan="2"|startupevents
|rowspan="2"|0
+
|rowspan="2"|true
|0
+
|false
|the driver will use the push notifications sent by iono to monitor its changes
+
|generate IO events also during the driver’s start-up phase
|-
 
|int > 0
 
|the driver will poll iono's state with the specified time interval (in seconds). Push notifications won't be enabled
 
 
 
|-
 
 
 
|input1
 
|rowspan="4"|digital
 
|rowspan="2"|digital
 
|rowspan="2"|the specified multi-mode input will be read as digital signal (DI<n>)
 
|-
 
|input2
 
|-
 
|input3
 
|voltage
 
|the specified multi-mode input will be read as analog voltage (AV<n>)
 
|-
 
|input4
 
|current
 
|the specified multi-mode input will be read as analog current (AI<n>)
 
 
 
|-
 
 
 
|stabletime
 
|100
 
|int > 0
 
|number of milliseconds an input must be stable before a push notification is sent by iono to HSYCO
 
 
 
 
|-
 
|-
 +
|false
 +
|start generating events only after HSYCO is aligned with the current status of the system
  
|minvariation
 
|0.1
 
|float > 0
 
|minimun value variation (for analog inputs) to trigger a push notification
 
 
|-
 
 
|subscribehost
 
|
 
|<host_name>
 
|hostname or IP address to be used by iono to send push notifications. Leave blank to let the driver discover the local address
 
  
 
|}
 
|}
  
 
== Datapoints ==
 
== Datapoints ==
 
For inputs 1 to 4, depending on the 'input1' ... 'input4' options, only the corresponding datapoint will be created, i.e. di<n> (if digital), av<n> (if voltage) or ai<n> (if curent).
 
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 109: Line 69:
 
|-
 
|-
  
|rowspan="4" |do<n>
+
|rowspan="3" |driverstate
 +
|init
 +
|R
 +
|Sfera driver is initializing
 +
|-
 +
|quit
 +
|R
 +
|Sfera driver quit
 +
|-
 +
|running
 +
|R
 +
|Sfera driver is running (normal state)
 +
 
 +
|-
 +
 
 +
|rowspan="4" |led
 +
|rowspan="2" |0
 +
|R
 +
|LED L1 is off
 +
|-
 +
|W
 +
|turn LED L1 off
 +
|-
 +
|rowspan="2" |1
 +
|R
 +
|LED L1 is on
 +
|-
 +
|W
 +
|turn LED L1 on
 +
 
 +
|-
 +
 
 +
|rowspan="4" |o<1-4>
 
|rowspan="2" |0
 
|rowspan="2" |0
 
|R
 
|R
|relay <n> (digital output) is off
+
|relay <1-4> is off
 
|-
 
|-
 
|W
 
|W
|switch off relay <n>
+
|switch off relay <1-4>
 
|-
 
|-
 
|rowspan="2" |1
 
|rowspan="2" |1
 
|R
 
|R
|relay <n> (digital output) is on
+
|relay <1-4> is on
 
|-
 
|-
 
|W
 
|W
|switch on relay <n>
+
|switch on relay <1-4>
  
 
|-
 
|-
  
|rowspan="2" |di<n>
+
|rowspan="4" |oc<1-3>
 +
|rowspan="2" |0
 +
|R
 +
|open collector output <1-3> is off (not grounded)
 +
|-
 +
|W
 +
|switch off open collector output <1-3>
 +
|-
 +
|rowspan="2" |1
 +
|R
 +
|open collector output <1-3> is on (grounded)
 +
|-
 +
|W
 +
|switch on open collector output <1-3>
 +
 
 +
|-
 +
 
 +
|rowspan="2" |di<1-6>
 
|0
 
|0
 
|R
 
|R
|digital input <n> is low
+
|digital input <1-6> is low
 
|-
 
|-
 
|1
 
|1
 
|R
 
|R
|digital input <n> is high
+
|digital input <1-6> is high
  
 
|-
 
|-
  
|av<n>
+
|ai<1-4>
 
|<val>
 
|<val>
 
|R
 
|R
|analog input <n> is reading a voltage equal to <val> (in Volts)
+
|analog input <1-4> is reading a voltage equal to <val> (in Volts)
  
 
|-
 
|-
  
|ai<n>
+
|wiegand.<1-2>
 
|<val>
 
|<val>
 
|R
 
|R
|analog input <n> is reading a current equal to <val> (in mA)
+
|Wiegand input <1-2> value as an unsigned integer in base 16 (hex)
  
 
|-
 
|-
  
|ao1
+
|onewire.bus.<id>
 
|<val>
 
|<val>
|W
+
|R
|set the analog output to <val> Volts
+
|1-Wire device <id> value
  
 
|}
 
|}
Line 160: Line 169:
 
== User Interface ==
 
== User Interface ==
  
To control a digital output (DO1 ... DO6), add a [[button]] or a [[buttonicon]] object to your project page and set its address field to the corresponding datapoint:
+
To control a digital output (O1 ... O4, OC1 ... OC3, LED), add a [[button]] or a [[buttonicon]] object to your project page and set its address field to the corresponding datapoint:
  
[[File:Iono_UI_Buttonicon.png|500px|border]]
+
[[File:IonoPi_UI_Button.png|500px|border]]
  
 
== Release Notes ==
 
== Release Notes ==
  
=== 3.5.0 ===
+
=== 3.6.0 ===
 
*initial release
 
*initial release
  
Line 172: Line 181:
  
  
''iono is a registered trademark of Sfera Labs Srl''
+
''iono Pi is a registered trademark of Sfera Labs Srl''

Latest revision as of 19:36, 12 November 2018

Iono Pi is a versatile I/O module that combines several digital and analog input lines, power relay outputs and support for standard interfaces, typical of modern PLCs, with the powerful computing core of the Raspberry Pi.

iono Pi

This driver provides support for iono Pi pre-installed with the Sfera Framework and the Sfera Driver for Iono Pi.

HSYCO Configuration

Add a IONO Pi I/O Server in the I/O Servers section of the Settings and set its parameters:

Communication

  • IP Address: the IP address assigned to iono;

High Availability

  • Shutdown when inactive: defaults to false.

Options

ID Default Values Description
https false true use HTTPS to communicate with Iono Pi
false use HTTP to communicate with Iono Pi
startupevents true false generate IO events also during the driver’s start-up phase
false start generating events only after HSYCO is aligned with the current status of the system


Datapoints

ID Value R/W Description
connection online R connection established
offline R HSYCO can't connect to the device
driverstate init R Sfera driver is initializing
quit R Sfera driver quit
running R Sfera driver is running (normal state)
led 0 R LED L1 is off
W turn LED L1 off
1 R LED L1 is on
W turn LED L1 on
o<1-4> 0 R relay <1-4> is off
W switch off relay <1-4>
1 R relay <1-4> is on
W switch on relay <1-4>
oc<1-3> 0 R open collector output <1-3> is off (not grounded)
W switch off open collector output <1-3>
1 R open collector output <1-3> is on (grounded)
W switch on open collector output <1-3>
di<1-6> 0 R digital input <1-6> is low
1 R digital input <1-6> is high
ai<1-4> <val> R analog input <1-4> is reading a voltage equal to <val> (in Volts)
wiegand.<1-2> <val> R Wiegand input <1-2> value as an unsigned integer in base 16 (hex)
onewire.bus.<id> <val> R 1-Wire device <id> value

User Interface

To control a digital output (O1 ... O4, OC1 ... OC3, LED), add a button or a buttonicon object to your project page and set its address field to the corresponding datapoint:

IonoPi UI Button.png

Release Notes

3.6.0

  • initial release


iono Pi is a registered trademark of Sfera Labs Srl