fc28e028be
Bei .reg_event Parameter prefire eingefügt um Event bei Eintritt in mainloop
...
mit aktuellem Wert auszulösen.
Im Helper werden Event-Queues nur beim deaktiveren geleert
2019-07-25 16:44:59 +02:00
40d7c132a5
Selected / Driver gegen nun einen DeviceNotFoundError aus, wenn nicht vorhanden
...
debug und replace_io_file über Namen abrufbar
2019-07-23 09:09:34 +02:00
2dbd37f2e7
Parameter replace_io_file hinzugefügt für IO replacement
...
Wenn replace_io_file verwendet wird, ist .replace_io gesperrt
Verarbeitung der Datei direkt beim Instanziieren
2019-06-16 13:44:59 +02:00
2e802544c9
Import und Export der Dateien verbessert
2019-06-12 17:18:15 +02:00
843cbf39c3
Mit errorhandling zusammenführen
2019-05-01 13:30:45 +02:00
2463eb019d
Parameterprüfung für Instantiierung eingeführt
...
Debug-Parameter für alle Vererbungen übernommen
2019-05-01 12:25:45 +02:00
32c33e49b5
.replace_io mit regex für parameter frm versehen - Danke an Nicolai Buchwitz!
...
.reset Funktion warf Fehler bei Counter IOs 8-16
2019-05-01 08:41:19 +02:00
6782e9431a
Bessere Werte bei _gotioerror
...
Debugflag um exakte Fehlermeldungen zu bekommen
2019-03-07 12:50:35 +01:00
a99203b3c9
Parameter no_warn in .mainloop eingebaut
2019-01-07 19:36:16 +01:00
38ba012f38
Errortypen angepasst
...
NetFh.__init__ Parameterprüfung geändert
NetFh._direct_send implementiert
2018-12-12 08:49:21 +01:00
62f2bf544f
.core wird nur gesetzt, wenn gültiges Basedevice erkannt wurde
...
Globalen FileHandler durch Lock gesichert
IOCTL über das Netzwerk umgesetzt
2018-12-10 16:27:38 +01:00
fc23394298
IntIOCounter Klasse erweitert mit ioctl Aufruf
...
Devices erzeugen IntIOCounter-Objekt, wenn Counteradresse gefunden wird
DioModule Klasse wird für DIO / DI / DO verwendet und ermöglicht Counterreset
2018-12-08 20:29:50 +01:00
1e309091e8
Neue Base Klasse eingefügt von der Core / Connect erben
...
Sollten neue Base-Devices von Kunbus hinzugefügt werden, wird Base verwendet
IntIOReplaceable Klasse erstellt für IOs von Gateways und virtuellen Devices
Leere IntIOCounter Klasse für Counter IOs hinzugefügt
2018-12-08 17:32:03 +01:00
40409a6f0f
Bei Cores werden Adressen von IOs statisch festgelegt unabhängig von IO-Anzahl
...
Unterstützung mehrere IO Arten der Cores
Fehler bei Exportflag von Connect xin beseitigt
2018-09-30 19:02:03 +02:00
18fe2b0477
IP Adresse aus Hostnamen ermitteln .gethostbyname
...
NetFH Schreibpuffer wird bei flush immer geleert, auch bei Fehlern
__flusherr wird nach Fehler bei _connect auf False gesetzt
Start des Sync nun sofort mit Sync und dann Wait
Bei ACL Fehlern Exception auslösen
Synctimer wird auf 45% des Timeouts angepasst (Senden nur bei Leerlauf)
__set_systimout setzt auch für bestehenden Socket das Timeout
2018-08-23 15:16:01 +02:00
ebbdbcaceb
Kleinste refresh-Zeit auf 5 ms gesetzt
...
Zykluszeit vom .cycleloop wird bei Aufruf auf 50 ms gesetzt
Standardrefreshzeit wird nach CPU-Anzahl bestimmt
Laufzeitüberwachung für Eventsystem eingebaut
IOBase.export gibt Wert von 'Export' in piCtory zurück
Device.get_* Parameter 'export' Filtert auf piCtory 'Export' Wert
2018-08-18 19:01:13 +02:00
6ef9a55f93
Mit default zusammenführen
2018-08-14 11:40:01 +02:00
61ad36840d
_dict_events ist nun Threadsicher
...
Bei Fehler in ProcimgWriter System sauber verlassen
2018-08-14 11:38:03 +02:00
70a95dcacd
__slots__ für alle möglichen Klassen implementiert
2018-08-13 15:12:41 +02:00
c2f26bcc98
Code style
2018-08-12 18:14:22 +02:00
27a69488f4
Connect-Attribut watchdogtrigger in wdautotoggle umbenannt
...
Bei handlesignalend wird im monitoring Modus nicht mehr geschrieben
2018-08-09 08:36:18 +02:00
e7c1f522dc
watchdogtrigger in Connect-Klasse integriert (Wechselt alle 10 Sekunden)
...
Adressen der core/connect IOs verbessert
2018-08-01 15:49:02 +02:00
c10f36001f
IO Zuordnung in Core-Klasse jetzt IOBase Objekt kein Index mehr
...
Watchdog und X2 in/out werden als IOBase Objekte über core angeboten
2018-07-30 12:24:12 +02:00
2ab799971f
Verbesserung in LED_BYTE-Berechnung
...
Byteorder für Core-Funktionen fest auf "little" gesetzt
Connect-Klasse von Core abgeleitet
A3 zur Connect Klasse hinzugefügt
2018-07-29 08:54:33 +02:00
8e0d1b7455
Reihenfolge des Iterators der Devices ist nun nach Position im Prozessabbild
...
sortiert und nicht nach Position - Entspricht piCtory
2018-06-27 12:12:31 +02:00
ca2a610119
_defaultvalue kann String aufnehmen muss aber über _defaultvalue erfragt werden
...
_defaultvalue kann niemals None sein, außer bei StructIO zur Berechnung
Fehlerabfang komischer piCtory JSON Datei für _defaultvalue ('null' statt null)
2018-04-17 13:13:12 +02:00
2ff41cfccc
StuctIO kann nun COUNTs Bytes zu einem IO zusammenfassen
...
Fehlermeldungen in NetFH mit warnings realisiert
2017-12-26 14:09:12 +01:00
072327b330
Saubere Fehlermeldung, wenn piCtory Datei nicht lesbar (leer) ist
...
docstrings
2017-12-16 12:58:13 +01:00
df670cc180
Mit net zusammenführen
2017-12-03 15:30:34 +01:00
35a10fc53e
__exec_th als daemon starten
...
Devices zum autorefresh hinzufügen abgesichert mit Lock
2017-12-03 15:00:47 +01:00
408f9929b7
Mit default zusammenführen
2017-12-02 17:25:28 +01:00
87a648cbc6
IOEvent-Klasse eingebaut - Ersetzt tuple()
...
reg_event, reg_timerevent über zentrale Funktion verwaltet
2017-12-02 16:17:02 +01:00
b16af483dc
Eigene EventQueue für Threads, um diese direkt zu starten
2017-12-02 14:36:04 +01:00
01515e28c5
Eventüberwachung über Queues realisiert
2017-11-15 09:18:33 +01:00
8c195d72f3
netio.disconnect() eingefügt (gleich mit modio.cleanup())
...
Prüfung des Parameters address in RevPiNetIO()
2017-11-13 11:01:26 +01:00
8596fac1f9
Mit default zusammenführen
2017-11-11 09:52:55 +01:00
5887a22ba0
Fehlerverwaltung bei cycleloop und mainloop
...
Device.__contains__ Rückgabe bei ersetzen IOs nun False
RevPiModIO.__del__ löst klarere Fehler bei falscher Instantiierung aus
2017-11-08 17:46:50 +01:00
a1c81cf2b2
Mit default zusammenführen
2017-11-03 08:54:30 +01:00
2fedb130af
cycleloop säubert das _exit-Event
...
.wait Parameterprüfung eingebaut
Fehler im Devicehandling bei doppelten Namen behoben
2017-11-02 19:34:52 +01:00
07d6d0e848
VirtualDevices in alter piCtory "adap." mit 64 beginnen (Kunbus Standard)
...
Konstanten um INP, OUT, MEM erweitert und io.Type gelöscht
Änderung der Klassen auf neue Konstanten
device.__getioiter angelegt für Rückgabe der IOs ohne None bei BIT-Bytes
device.__getioiter in Rückgabefunktionen eingebaut
io.DeadIO mit _parentdevice = None erweitert
io.IOBase.__bool__ gibt nun False bei leeren Bytes aus
io.StructIO.frm gibt nun nur einzelnen Zeichen aus (Byteorder über .byteorder)
2017-11-01 15:32:08 +01:00
f9685b6df6
Mit default zusammenführen
2017-09-14 20:08:18 +02:00
e6d896b356
typo core.temperatur in core.temperature umbenannt
2017-09-14 19:38:05 +02:00
ea62c36ae9
Import der __init__ vereinfacht (Nur die RevPi Klassen importieren)
2017-09-11 17:27:57 +02:00
3f85a09382
Modul netio eingefügt
2017-09-11 16:29:44 +02:00
974fe26fd4
FileHandler nicht bei __init__ Anlegen um Vererbung zu ermöglichen
...
._configure bekommt JSON als Parameter übergeben
RS485 Fehler nicht im Simulatormodus schreiben
2017-09-11 10:53:14 +02:00
dde382e308
Fehler bei Devicesuche über Namen oder Position in setdefaultvalues,
...
syncoutputs, writeprocimg
cycletools: ton, tof, tp auch ohne c nutzbar mit Angabe in Millisekunden
2017-09-03 06:58:55 +02:00
c226e91550
handlesignalend() prüfte immer auf cleanupfunc, auch wenn None
...
cycleloop cycletime=None gesetzt - bei Nichtangabe wurde immer 50 gesetzt
io.reg_timerevent() hinzugefügt
docstring
2017-08-31 14:27:38 +02:00
5c7a540d29
delay Parameter für reg_event eingebaut
...
reg_event schneller und Prüfung auf doppelte Events verbessert
cycletime kann nicht mehr verändert werden, wenn ein Loop läuft
io.IntIO.get_int und .set_int in get_intvalue und set_intvalue geändert
docstring
2017-08-29 18:22:14 +02:00
dcc8c22428
replace_io kann Bits >7 bei längeren Datentypen festlegen
...
Klassenattribute für Device angelegt
Intern nur auf interne _Variablen zugreifen
StructIO berechnet _defaultvalue aus gelöschten IOs
2017-08-27 14:46:28 +02:00
4e9abf794b
Encodingzeile an PEP angepasst (muss in Zeile 0 - 1 sein)
...
Von RevPiModIO kwagrs entfernt und feste keyword vergeben
Bei Änderung der Byteorder wird defaultvalue angepasst da aus piCtory little
Beim Core nur die RS485 Fehlerwerte übernehmen
defaultvalue wird mit Formatierung ausgegeben
.isnumeric gegen isdigit getauscht
docstrings
2017-08-26 15:12:55 +02:00