revpipyload.revpipyload

Global Attributes

configrsc
picontrolreset
procimg
pyloadverion

Classes

LogReader Ermoeglicht den Zugriff auf die Logdateien.
RevPiPlc Verwaltet das PLC Python Programm.
RevPiPyLoad Hauptklasse, die alle Funktionen zur Verfuegung stellt.

Functions

None


LogReader

Ermoeglicht den Zugriff auf die Logdateien.

Beinhaltet Funktionen fuer den Abruf der gesamten Logdatei fuer das RevPiPyLoad-System und die Logdatei der PLC-Anwendung. Ausserdem koennen nur neue Zeilen abgerufen werden, um eine dynamische Logansicht zu ermoeglichen.

Derived from

None

Class Attributes

None

Class Methods

None

Methods

LogReader Instantiiert LogReader-Klasse.
get_applines Gibt neue Zeilen ab letzen Aufruf zurueck.
get_applog Gibt die gesamte Logdatei zurueck.
get_plclines Gibt neue Zeilen ab letzen Aufruf zurueck.
get_plclog Gibt die gesamte Logdatei zurueck.

Static Methods

None

LogReader (Constructor)

LogReader()

Instantiiert LogReader-Klasse.

LogReader.get_applines

get_applines()

Gibt neue Zeilen ab letzen Aufruf zurueck.

Returns:
list() mit neuen Zeilen

LogReader.get_applog

get_applog()

Gibt die gesamte Logdatei zurueck.

Returns:
str() mit Logdaten

LogReader.get_plclines

get_plclines()

Gibt neue Zeilen ab letzen Aufruf zurueck.

Returns:
list() mit neuen Zeilen

LogReader.get_plclog

get_plclog()

Gibt die gesamte Logdatei zurueck.

Returns:
str() mit Logdaten
Up


RevPiPlc

Verwaltet das PLC Python Programm.

Dieser Thread startet das PLC Python Programm und ueberwacht es. Sollte es abstuerzen kann es automatisch neu gestartet werden. Die Ausgaben des Programms werden in eine Logdatei umgeleitet, damit der Entwickler sein Programm analysieren und debuggen kann.

Derived from

Thread

Class Attributes

None

Class Methods

None

Methods

RevPiPlc Instantiiert RevPiPlc-Klasse.
_zeroprocimg Setzt Prozessabbild auf NULL.
run Fuehrt PLC-Programm aus und ueberwacht es.
stop Beendet PLC-Programm.

Static Methods

None

RevPiPlc (Constructor)

RevPiPlc(program, pversion)

Instantiiert RevPiPlc-Klasse.

RevPiPlc._zeroprocimg

_zeroprocimg()

Setzt Prozessabbild auf NULL.

RevPiPlc.run

run()

Fuehrt PLC-Programm aus und ueberwacht es.

RevPiPlc.stop

stop()

Beendet PLC-Programm.

Up


RevPiPyLoad

Hauptklasse, die alle Funktionen zur Verfuegung stellt.

Hier wird die gesamte Konfiguraiton eingelesen und der ggf. aktivierte XML-RPC-Server gestartet.

Derived from

proginit.ProgInit

Class Attributes

root

Class Methods

None

Methods

RevPiPyLoad Instantiiert RevPiPyLoad-Klasse.
_loadconfig Load configuration file and setup modul.
_plcthread Konfiguriert den PLC-Thread fuer die Ausfuehrung.
_sigexit Signal handler to clean and exit program.
_sigloadconfig Signal handler to load configuration.
packapp Erzeugt aus dem PLC-Programm ein TAR-File.
start Start plcload and PLC python program.
stop Stop PLC python program and plcload.
xml_getconfig Uebertraegt die RevPiPyLoad Konfiguration.
xml_getfilelist Uebertraegt die Dateiliste vom plcworkdir.
xml_getpictoryrsc Gibt die config.rsc Datei von piCotry zurueck.
xml_getprocimg Gibt die Rohdaten aus piControl0 zurueck.
xml_plcdownload Uebertraegt ein Archiv vom plcworkdir.
xml_plcexitcode Gibt den aktuellen exitcode vom PLC Programm zurueck.
xml_plcrunning Prueft ob das PLC Programm noch lauft.
xml_plcstart Startet das PLC Programm.
xml_plcstop Stoppt das PLC Programm.
xml_plcupload Empfaengt Dateien fuer das PLC Programm.
xml_plcuploadclean Loescht das gesamte plcworkdir Verzeichnis.
xml_reload Startet RevPiPyLoad neu und verwendet neue Konfiguraiton.
xml_setconfig Empfaengt die RevPiPyLoad Konfiguration.
xml_setpictoryrsc Schreibt die config.rsc Datei von piCotry.

Static Methods

None

RevPiPyLoad (Constructor)

RevPiPyLoad()

Instantiiert RevPiPyLoad-Klasse.

RevPiPyLoad._loadconfig

_loadconfig()

Load configuration file and setup modul.

RevPiPyLoad._plcthread

_plcthread()

Konfiguriert den PLC-Thread fuer die Ausfuehrung.

Returns:
PLC-Thread Object or None

RevPiPyLoad._sigexit

_sigexit(signum, frame)

Signal handler to clean and exit program.

RevPiPyLoad._sigloadconfig

_sigloadconfig(signum, frame)

Signal handler to load configuration.

RevPiPyLoad.packapp

packapp(mode="tar", pictory=False)

Erzeugt aus dem PLC-Programm ein TAR-File.

mode:
Packart 'tar' oder 'zip'
pictory:
piCtory Konfiguration mit einpacken
Returns:
Dateinamen des Archivs

RevPiPyLoad.start

start()

Start plcload and PLC python program.

RevPiPyLoad.stop

stop()

Stop PLC python program and plcload.

RevPiPyLoad.xml_getconfig

xml_getconfig()

Uebertraegt die RevPiPyLoad Konfiguration.

Returns:
dict() der Konfiguration

RevPiPyLoad.xml_getfilelist

xml_getfilelist()

Uebertraegt die Dateiliste vom plcworkdir.

Returns:
list() mit Dateinamen

RevPiPyLoad.xml_getpictoryrsc

xml_getpictoryrsc()

Gibt die config.rsc Datei von piCotry zurueck.

Returns:
xmlrpc.client.Binary()

RevPiPyLoad.xml_getprocimg

xml_getprocimg()

Gibt die Rohdaten aus piControl0 zurueck.

Returns:
xmlrpc.client.Binary()

RevPiPyLoad.xml_plcdownload

xml_plcdownload(mode="tar", pictory=False)

Uebertraegt ein Archiv vom plcworkdir.

mode:
Archivart 'tar' 'zip'
pictory:
piCtory Konfiguraiton mit einpacken
Returns:
Binary() mit Archivdatei

RevPiPyLoad.xml_plcexitcode

xml_plcexitcode()

Gibt den aktuellen exitcode vom PLC Programm zurueck.

Returns:
int() exitcode oder -1 lauuft noch -2 lief nie

RevPiPyLoad.xml_plcrunning

xml_plcrunning()

Prueft ob das PLC Programm noch lauft.

Returns:
True, wenn das PLC Programm noch lauft

RevPiPyLoad.xml_plcstart

xml_plcstart()

Startet das PLC Programm.

Returns:
int() Status: -1 Programm lauft noch 100 Fehler

RevPiPyLoad.xml_plcstop

xml_plcstop()

Stoppt das PLC Programm.

Returns:
int() Exitcode vom PLC Programm

RevPiPyLoad.xml_plcupload

xml_plcupload(filedata, filename)

Empfaengt Dateien fuer das PLC Programm.

filedata:
GZIP Binary data der datei
filename:
Name inkl. Unterverzeichnis der Datei
Returns:
Ture, wenn Datei erfolgreich gespeichert wurde

RevPiPyLoad.xml_plcuploadclean

xml_plcuploadclean()

Loescht das gesamte plcworkdir Verzeichnis.

Returns:
True, wenn erfolgreich

RevPiPyLoad.xml_reload

xml_reload()

Startet RevPiPyLoad neu und verwendet neue Konfiguraiton.

RevPiPyLoad.xml_setconfig

xml_setconfig(dc, loadnow=False)

Empfaengt die RevPiPyLoad Konfiguration.

RevPiPyLoad.xml_setpictoryrsc

xml_setpictoryrsc(filebytes, reset=False)

Schreibt die config.rsc Datei von piCotry.

filebytes:
xmlrpc.client.Binary()-Objekt
reset:
Reset piControl Device
Returns:
Statuscode: 0 Alles erfolgreich -1 Kann JSON-Datei nicht laden -2 piCtory Elemente in JSON-Datei nicht gefunden -3 Konnte Konfiguraiton nicht schreiben Positive Zahl ist exitcode von piControlReset
Up