revpimodio2.io

RevPiModIO Modul fuer die Verwaltung der IOs.

Global Attributes

None

Classes

DeadIO Klasse, mit der ersetzte IOs verwaltet werden.
IOBase Basisklasse fuer alle IO-Objekte.
IOList Basisklasse fuer direkten Zugriff auf IO Objekte.
IntIO Klasse fuer den Zugriff auf die Daten mit Konvertierung in int.
StructIO Klasse fuer den Zugriff auf Daten ueber ein definierten struct.
Type IO Typen.

Functions

None


DeadIO

Klasse, mit der ersetzte IOs verwaltet werden.

Derived from

object

Class Attributes

None

Class Methods

None

Methods

DeadIO Instantiierung der DeadIO-Klasse.
replace_io Stellt Funktion fuer weiter Bit-Ersetzungen bereit.

Static Methods

None

DeadIO (Constructor)

DeadIO(deadio)

Instantiierung der DeadIO-Klasse.

deadio
IO, der ersetzt wurde

DeadIO.replace_io

replace_io(name, frm, **kwargs)

Stellt Funktion fuer weiter Bit-Ersetzungen bereit.

See Also:
replace_io(...)
Up


IOBase

Basisklasse fuer alle IO-Objekte.

Die Basisfunktionalitaet ermoeglicht das Lesen und Schreiben der Werte als oder . Dies entscheidet sich bei der Instantiierung. Wenn eine Bittadresse angegeben wird, werden -Werte erwartet und zurueckgegeben, ansonsten .

Diese Klasse dient als Basis fuer andere IO-Klassen mit denen die Werte auch als verwendet werden koennen.

Derived from

object

Class Attributes

address
byteorder
defaultvalue
length
name
type
value

Class Methods

None

Methods

IOBase Instantiierung der IOBase-Klasse.
__bool__ -Wert der Klasse.
__str__ -Wert der Klasse.
_get_address Gibt die absolute Byteadresse im Prozessabbild zurueck.
_get_byteorder Gibt konfigurierte Byteorder zurueck.
_get_iotype Gibt io.Type zurueck.
_get_length Gibt die Bytelaenge des IO zurueck.
_get_name Gibt den Namen des IOs zurueck.
get_defaultvalue Gibt die Defaultvalue von piCtory zurueck.
get_value Gibt den Wert des IOs zurueck.
reg_event Registriert ein Event bei der Eventueberwachung.
replace_io Ersetzt bestehenden IO mit Neuem.
set_value Setzt den Wert des IOs.
unreg_event Entfernt ein Event aus der Eventueberwachung.
wait Wartet auf Wertaenderung eines IOs.

Static Methods

None

IOBase (Constructor)

IOBase(parentdevice, valuelist, iotype, byteorder, signed)

Instantiierung der IOBase-Klasse.

parentdevice
Parentdevice auf dem der IO liegt
valuelist
Datenliste fuer Instantiierung
iotype
Wert
byteorder
Byteorder 'little'/'big' fuer Berechnung
sigend
Intberechnung mit Vorzeichen durchfuehren

IOBase.__bool__

__bool__()

-Wert der Klasse.

Returns:
Nur False wenn False oder 0 sonst True

IOBase.__str__

__str__()

-Wert der Klasse.

Returns:
Namen des IOs

IOBase._get_address

_get_address()

Gibt die absolute Byteadresse im Prozessabbild zurueck.

Returns:
Absolute Byteadresse

IOBase._get_byteorder

_get_byteorder()

Gibt konfigurierte Byteorder zurueck.

Returns:
Byteorder

IOBase._get_iotype

_get_iotype()

Gibt io.Type zurueck.

Returns:
io.Type

IOBase._get_length

_get_length()

Gibt die Bytelaenge des IO zurueck.

Returns:
Bytelaenge des IO

IOBase._get_name

_get_name()

Gibt den Namen des IOs zurueck.

Returns:
IO Name

IOBase.get_defaultvalue

get_defaultvalue()

Gibt die Defaultvalue von piCtory zurueck.

Returns:
Defaultvalue als oder

IOBase.get_value

get_value()

Gibt den Wert des IOs zurueck.

Returns:
IO-Wert als oder

IOBase.reg_event

reg_event(func, edge=BOTH, as_thread=False)

Registriert ein Event bei der Eventueberwachung.

func
Funktion die bei Aenderung aufgerufen werden soll
edge
Ausfuehren bei RISING, FALLING or BOTH Wertaenderung
as_thread
Bei True, Funktion als EventCallback-Thread ausfuehren

IOBase.replace_io

replace_io(name, frm, **kwargs)

Ersetzt bestehenden IO mit Neuem.

name
Name des neuen Inputs
frm
struct formatierung (1 Zeichen)
kwargs
Weitere Parameter: - bmk: Bezeichnung fuer Input - bit: Registriert IO als am angegebenen Bit im Byte - byteorder: Byteorder fuer den Input, Standardwert=little - defaultvalue: Standardwert fuer Input, Standard ist 0 - event: Funktion fuer Eventhandling registrieren - as_thread: Fuehrt die event-Funktion als RevPiCallback-Thread aus - edge: event-Ausfuehren bei RISING, FALLING or BOTH Wertaenderung
See Also:
Python3 struct

IOBase.set_value

set_value(value)

Setzt den Wert des IOs.

value
IO-Wert als oder

IOBase.unreg_event

unreg_event(func=None, edge=None)

Entfernt ein Event aus der Eventueberwachung.

func
Nur Events mit angegebener Funktion
edge
Nur Events mit angegebener Funktion und angegebener Edge

IOBase.wait

wait(edge=BOTH, exitevent=None, okvalue=None, timeout=0)

Wartet auf Wertaenderung eines IOs.

Die Wertaenderung wird immer uerberprueft, wenn fuer Devices mit aktiviertem autorefresh neue Daten gelesen wurden.

Bei Wertaenderung, wird das Warten mit 0 als Rueckgabewert beendet.

HINWEIS: Wenn keine neuen Daten liefert, wird bis in die Ewigkeit gewartet (nicht bei Angabe von "timeout").

Wenn edge mit RISING oder FALLING angegeben wird muss diese Flanke ausgeloest werden. Sollte der Wert 1 sein beim Eintritt mit Flanke RISING, wird das Warten erst bei Aenderung von 0 auf 1 beendet.

Als exitevent kann ein -Objekt uebergeben werden, welches das Warten bei is_set() sofort mit 1 als Rueckgabewert beendet.

Wenn der Wert okvalue an dem IO fuer das Warten anliegt, wird das Warten sofort mit -1 als Rueckgabewert beendet.

Der Timeoutwert bricht beim Erreichen das Warten sofort mit Wert 2 Rueckgabewert ab. (Das Timeout wird ueber die Zykluszeit der autorefresh Funktion berechnet, entspricht also nicht exact den angegeben Millisekunden! Es wird immer nach oben gerundet!)

edge
Flanke RISING, FALLING, BOTH bei der mit True beendet wird
exitevent
fuer vorzeitiges Beenden
okvalue
IO-Wert, bei dem das Warten sofort mit True beendet wird
timeout
Zeit in ms nach der mit False abgebrochen wird
Returns:
erfolgreich Werte <= 0 - Erfolgreich gewartet Wert 0: IO hat den Wert gewechselt Wert -1: okvalue stimmte mit IO ueberein - Fehlerhaft gewartet Wert 1: exitevent wurde gesetzt Wert 2: timeout abgelaufen Wert 100: Devicelist.exit() wurde aufgerufen
Up


IOList

Basisklasse fuer direkten Zugriff auf IO Objekte.

Derived from

object

Class Attributes

None

Class Methods

None

Methods

IOList Init IOList class.
__contains__ Prueft ob IO existiert.
__delattr__ Entfernt angegebenen IO.
__getattr__ Verwaltet geloeschte IOs (Attribute, die nicht existieren).
__getitem__ Ruft angegebenen IO ab.
__iter__ Gibt Iterator aller IOs zurueck.
__len__ Gibt die Anzahl aller IOs zurueck.
__private_replace_oldio_with_newio Ersetzt bestehende IOs durch den neu Registrierten.
__setattr__ Verbietet aus Leistungsguenden das direkte Setzen von Attributen.
_private_register_new_io_object Registriert neues IO Objekt unabhaenging von __setattr__.

Static Methods

None

IOList (Constructor)

IOList()

Init IOList class.

IOList.__contains__

__contains__(key)

Prueft ob IO existiert.

key
IO-Name oder Byte
Returns:
True, wenn IO vorhanden / Byte belegt

IOList.__delattr__

__delattr__(key)

Entfernt angegebenen IO.

key
IO zum entfernen

IOList.__getattr__

__getattr__(key)

Verwaltet geloeschte IOs (Attribute, die nicht existieren).

key
Name oder Byte eines alten IOs
Returns:
Alten IO, wenn in Ref-Listen

IOList.__getitem__

__getitem__(key)

Ruft angegebenen IO ab.

Wenn der Key ist, wird ein einzelner IO geliefert. Wird der Key als uebergeben, wird eine geliefert mit 0, 1 oder 8 Eintraegen. Wird als Key gegeben, werden die Listen in einer Liste zurueckgegeben.

key
IO Name als oder Byte als .
Returns:
IO Objekt oder Liste der IOs

IOList.__iter__

__iter__()

Gibt Iterator aller IOs zurueck.

Returns:
Iterator aller IOs

IOList.__len__

__len__()

Gibt die Anzahl aller IOs zurueck.

Returns:
Anzahl aller IOs

IOList.__private_replace_oldio_with_newio

__private_replace_oldio_with_newio(io)

Ersetzt bestehende IOs durch den neu Registrierten.

io
Neuer IO der eingefuegt werden soll

IOList.__setattr__

__setattr__(key, value)

Verbietet aus Leistungsguenden das direkte Setzen von Attributen.

IOList._private_register_new_io_object

_private_register_new_io_object(new_io)

Registriert neues IO Objekt unabhaenging von __setattr__.

new_io
Neues IO Objekt
Up


IntIO

Klasse fuer den Zugriff auf die Daten mit Konvertierung in int.

Diese Klasse erweitert die Funktion von um Funktionen, ueber die mit Werten gearbeitet werden kann. Fuer die Umwandlung koennen 'Byteorder' (Default 'little') und 'signed' (Default False) als Parameter gesetzt werden.

See Also:
IOBase

Derived from

IOBase

Class Attributes

byteorder
defaultvalue
signed
value

Class Methods

None

Methods

__int__ Gibt IO-Wert zurueck mit Beachtung byteorder/signed.
_get_signed Ruft ab, ob der Wert Vorzeichenbehaftet behandelt werden soll.
_set_byteorder Setzt Byteorder fuer Umwandlung.
_set_signed Left fest, ob der Wert Vorzeichenbehaftet behandelt werden soll.
get_int Gibt IO-Wert zurueck mit Beachtung byteorder/signed.
get_intdefaultvalue Gibt die Defaultvalue als zurueck.
set_int Setzt IO mit Beachtung byteorder/signed.

Static Methods

None

IntIO.__int__

__int__()

Gibt IO-Wert zurueck mit Beachtung byteorder/signed.

Returns:
IO-Wert als

IntIO._get_signed

_get_signed()

Ruft ab, ob der Wert Vorzeichenbehaftet behandelt werden soll.

Returns:
True, wenn Vorzeichenbehaftet

IntIO._set_byteorder

_set_byteorder(value)

Setzt Byteorder fuer Umwandlung.

value
'little' or 'big'

IntIO._set_signed

_set_signed(value)

Left fest, ob der Wert Vorzeichenbehaftet behandelt werden soll.

value
True, wenn mit Vorzeichen behandel

IntIO.get_int

get_int()

Gibt IO-Wert zurueck mit Beachtung byteorder/signed.

Returns:
IO-Wert als

IntIO.get_intdefaultvalue

get_intdefaultvalue()

Gibt die Defaultvalue als zurueck.

Returns:
Defaultvalue

IntIO.set_int

set_int(value)

Setzt IO mit Beachtung byteorder/signed.

value
Wert
Up


StructIO

Klasse fuer den Zugriff auf Daten ueber ein definierten struct.

Sie stellt ueber struct die Werte in der gewuenschten Formatierung bereit. Der struct-Formatwert wird bei der Instantiierung festgelegt.

See Also:
IOBase

Derived from

IOBase

Class Attributes

defaultvalue
frm
signed
value

Class Methods

None

Methods

StructIO Erstellt einen IO mit struct-Formatierung.
_get_frm Ruft die struct Formatierung ab.
_get_signed Ruft ab, ob der Wert Vorzeichenbehaftet behandelt werden soll.
get_structdefaultvalue Gibt die Defaultvalue mit struct Formatierung zurueck.
get_structvalue Gibt den Wert mit struct Formatierung zurueck.
set_structvalue Setzt den Wert mit struct Formatierung.

Static Methods

None

StructIO (Constructor)

StructIO(parentio, name, frm, **kwargs)

Erstellt einen IO mit struct-Formatierung.

parentio
ParentIO Objekt, welches ersetzt wird
name
Name des neuen IO
frm
struct formatierung (1 Zeichen)
kwargs
Weitere Parameter: - bmk: Bezeichnung fuer Output - bit: Registriert IO als am angegebenen Bit im Byte - byteorder: Byteorder fuer den Input, Standardwert=little - defaultvalue: Standardwert fuer Output, Standard ist 0

StructIO._get_frm

_get_frm()

Ruft die struct Formatierung ab.

Returns:
struct Formatierung

StructIO._get_signed

_get_signed()

Ruft ab, ob der Wert Vorzeichenbehaftet behandelt werden soll.

Returns:
True, wenn Vorzeichenbehaftet

StructIO.get_structdefaultvalue

get_structdefaultvalue()

Gibt die Defaultvalue mit struct Formatierung zurueck.

Returns:
Defaultvalue vom Typ der struct-Formatierung

StructIO.get_structvalue

get_structvalue()

Gibt den Wert mit struct Formatierung zurueck.

Returns:
Wert vom Typ der struct-Formatierung

StructIO.set_structvalue

set_structvalue(value)

Setzt den Wert mit struct Formatierung.

value
Wert vom Typ der struct-Formatierung
Up


Type

IO Typen.

Derived from

object

Class Attributes

INP
MEM
OUT

Class Methods

None

Methods

None

Static Methods

None
Up