Die aktuellen Revolution Pi Modelle bringen RevPiPyLoad schon ab Werk mit sich. Der Dienst kann neben der Ausführung und Überwachung eures Python Steuerungsprogramms auch beim Debuggen der IOs helfen, ermöglicht den Zugriff auf das Prozessabbild über das Netzwerk und bietet MQTT Funktionalitäten. „RevPiPyLoad an neuem Revolution Pi einrichten“ weiterlesen
Version 2.5.3
Wichtiges Update!
- Fehlerbehebung in NetIO Funktionen, welche bei Netzwerkfehlern zum Absturz führen könnten.
- IO Objekte sind nun „callable“. Der Wert kann über
.io.name()
abgerufen oder mit.io.name(True)
gesetzt werden. Dies hat die selbe Funktion wie.io.name.value
, welche natürlich weiterhin verfügbar ist. - Neues pictory Modul, welches für die AIO, DI, DO und DIO Module Konstanten der MEM Objekte bietet. Damit können MEM Einstellungen im Programm abgefragt werden (Danke Theo!).
Version 2.5.0
Wichtiges Update!
Dieses Update beinhaltet Unterstützung für den Revolution Pi Compact.
Außerdem wurde die Handhabung für .cycleloop(...)
verbessert und die Cycletools haben nun auch .device
, .core
, .io
enthalten. Somit kann man direkt auf die IOs zugreifen, ohne direkt über das RevPiModIO-Objekt gehen zu müssen.
Außerdem hat die .core
Klasse jetzt immer den Ausgang .wd
und die Funktion .wd_toggle()
, das gab es nur beim Connect. Mit der aktuellen Version von RevPiPyLoad kann so der Softwarewatchdog verwendet werden.
Version 2.4.5
Wichtiges Update!
- NetIO bekam starke Stabilitäts- und Geschwindigkeitsverbesserungen, sowie einen Watchdog. (Benötigt zwingend RevPiPyLoad ab 0.8.5).
- Die
Cycletools
haben nun das Flag.last
, welches beiTrue
den letzten Zyklus vor Programmende signalisiert. Durch Abfrage können Aufräumarbeiten in der Zyklusfunktion durchgeführt werden. - Weniger Ressourcenverbrauch bei
autorefresh
und Abfrage von Bit-IO-Werten. - Parameter
direct_output
wurde umbenannt inshared_procimg
. Alter Name kann noch verwendet werden, löst allerdings eine „DeprecationWarning“ aus. - Verbesserte Synchronisierung der Loops beim Verlassen des Programms (.exit / .cleanup).
- Bei IOs vom Typ MEM gibt die Value nun den konfigurierten Wert aus piCtory zurück (Rohwert).
Viele Modbus-Werte gleichzeitig lesen
Arbeitet man in piCtory mit den virtuellen Modbus Devices, stößt man manchmal auf Probleme mit der Speicherzuweisung.
In piCtory wählt man die Modbus-Register und die Anzahl aus, die von einem Modbus-Teilnehmer abgeholt werden sollen. „Viele Modbus-Werte gleichzeitig lesen“ weiterlesen
RevPiDay 2019 – Präzise positionieren
Ladung vom Gabelstapler aus präzise positionieren, war das Thema von unserem Modell auf dem RevPiDay 2019 in Leipzig. Es handelt sich dabei um ein POC der Firma Willenbrock Fördertechnik GmbH & Co. KG*.
Version 2.4.2
Wichtiges Update!
Dieses Update behebt kleine allgemeine Fehler und kritische Fehler bei Netzwerkverwendung!
- Fehler bei allen RevPiNetIO Klassen behoben, der unter bestimmten Umständen eine Neuverbindung verhinderte
- Fehlerkorrektur bei Verwendung von
prefire
undas_thread
in.reg_event(...)
. - Fehlerkorrektur bei Exportdatei für ersetzte IOs
- Fehlerkorrektur, bei setzen von verzögerten Events auf
.core.ios
, wie z.B..core.a1green
,.core.x2in
usw. - Warnungen werden nun einmalig beim Auftreten von Fehlern und nach Beseitigung der Fehler ausgegeben. Keine Warnungsfluten mehr in der Konsole!
- Fehlerzähler auf Prozessabbild verbessert.
- Der Funktion
.reg_event(...)
kann nun als Parameterprefire=True
übergeben werden, damit diese Funktion beim Eintritt in den.mainloop()
sofort ausgeführt wird [Doku]. - Alle RevPiNetIO Klassen benötigen RevPiPyLoad in Version mindestens 0.8.0!
- RevPiNetIO Klassen haben das Attribut
.reconnecting
, mit dem abgefragt werden kann, ob die Verbindung vorübergehend abgerissen ist. - Alle RevPiNetIO Verbindungen werden bei Veränderung von piCtory oder replace_ios.conf getrennt und können über das Attribut
.config_changed
abrufen, ob es eine Veränderung gab und eine Neuinstantiierung nötig ist. - IOs, welche mit
.replace_io(...)
exportiert wurden, können für andere Instanzen oder RevPiPyLoad / Control mit.export_replace_ios()
exportiert werden. - Parameter
replace_io_file
für RevPiModIO eingeführt, für den Import der exportieren Datei. Bei RevPiNetIO kann „:network:“ verwendet werden um diese Daten per RevPiPyLoad zu importieren. - Parameter
direct_output
bei Instanziierung hinzugefügt [Doku]. - Zugriff auf IOs über
.device
Object per Index möglich (.device.dio01[0]
).
Version 2.3.2
Diese Version beseitigt hauptsächlich Fehler bei Counter IOs
- Counter IOs 8 – 16 können nun auch mit
.reset()
zurückgesetzt werden - Laufzeitwarnungen haben bessere Fehlerhinweise
debug
Argument eingeführt um komplette Fehlertexte zu erhalten- Formatprüfung von
.replace_io(...)
auf bestimmte Typen umgesetzt
Danke an Nicolai Buchwitz - Argumentprüfung bei Instantiierung verbessert
Version 2.3.1
Dieses Update führt den Counter-Reset von DI / DIO Modulen ein!
- Counter IOs haben nun die Funktion
.reset()
zum zurücksetzen der Counter auf den DI / DIO Modulen.
Hinweis: Das Wheezy (7) System unterstützt diese Funktion NICHT im piControl! - Counter können auch per RevPiNetIO über das Netzwerk zurückgesetzt werden.
- Iteratoren geben nun Python-Konforme Exceptions aus.
- Die Funktion
.replace_io(...)
wurde bei allen IO-Objekten angeboten, können aber nur bei Gateway- oder virtuellen Devices verwendet werden. Sie ist nun nur noch bei IOs verfügbar, die diese Funktion auch unterstützen. - Dem
.mainloop(...)
kann nun der Parameterno_warn=True
übergeben werden, um Laufzeitwarnungen zu deaktivieren.
NodeRed mit MQTT im Revolution Pi
Auf dem RevPiDay 2018 haben wir euch unsere Erweiterung von RevPiPyLoad vorgestellt, mit der wir NodeRed auf dem Revolution Pi sehr einfach, dank MQTT, verwenden können. Hier zeigen wir euch wie es geht. „NodeRed mit MQTT im Revolution Pi“ weiterlesen