Page 4 of 5

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 03 Nov 2017, 17:45
by RevPiModIO
UPDATE von RevPiModIO2 auf Version 2.0.6 vom 02.11.2017!

Alle Änderungen in unserem [Changelog]

Allgemeine Informationen zur Version 2 - Öffnen
Dokumentation zur Version 2 - Öffnen

Code: Select all

pi@RevPi ~/ $ sudo apt-get update

# Installieren - Version 2
pi@RevPi ~/ $ sudo apt-get install python3-revpimodio2

# Updaten (alles)
pi@RevPi ~/ $ sudo apt-get dist-upgrade
Manuelle Installation und Download der Quellen.

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 15 Dec 2017, 17:06
by RevPiModIO
Die aktuelle RevPiModIO2 Version kann über das Netzwerk auf das Prozessabbild zugreifen. Damit können virtuelle Devices mit Daten von beliebigen Rechnern im Netzwerk versorgt werden.

Auch der RaspberryPi, mit seinen GPIOs, kann werwendet werden: https://revpimodio.org/gpio-zu-revolution/

Da man auch auf den Rechnern mit dem RevPiModIO-Modul arbeitet, verwendet man exakt die selbe Syntax, außer bei der Instantiierung!
[Dokumentation]

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 22 May 2018, 11:31
by digohm
Hallo,

erstmal hoffe ich, dass es in Ordnung ist in diesem Thema Fragen zu stellen :)
Ich habe bereits einiges mit dieser tollen Software RevPiModIO bewerkstelligen können. Jetzt möchte ich meine Motoren via Modbus RTU ansteuern. Dies funktioniert via Notebook einwandfrei.
Jetzt ist meine Frage wie sende ich den Befehl aus dem Screenshot via RevPiModIO?
Motor.JPG
Motor.JPG (51.02 KiB) Viewed 35944 times
In Pictory ist soweit alles richtig konfiguriert:
Pictory.JPG
Pictory.JPG (60.3 KiB) Viewed 35944 times
Nur wie sende ich jetzt den Befehl 0004 0000 5000 0250 2000 2000 0000 0000 via Python?
Ich habe schon alle möglichen Varianten von rpi.io.Output_Word_1_i05.value = '000400005000025020002000' probiert und bekomme entweder die Beschwerde das es sich um einen String handelt oder das der int zu groß ist.
Muss man das irgendwie als Array senden?
Ich würde mich freuen, wenn ihr mir hier etwas auf die Sprünge helfen könntet :)

LG
Tom

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 23 May 2018, 13:40
by volker
Hi,
wie es mit der Lib von Sven geht kann ich Dir leider nicht sagen (am besten schreibst Du so was aber in das dafür eingerichtete Forum: viewforum.php?f=41). Aber ich kann Dir verraten, wie man es mit Python alleine problemlos ins Prozessabbild bekommt.
Ich setze dabei mal voraus, dass Du Dir den Offset im PA vorab besorgst (entweder einmalig über die Ausgabe des Exports in PiCtory oder aber über einen IOCLT Aufruf wie im Tutorial von Dirk beschrieben). Der Offset der Prozessvariablen "Output_Word_1_i05" soll jetzt in meinem Beispiel also in einer Pythonvariable "OUTPUT_WORD_1_I05" stehen.

Code: Select all

import struct

f=open("/dev/piControl0","wb+",0)
f.seek(OUTPUT_WORD_1_I05)
x = struct.pack('HHHHHHHH', 4,0,5,250,2000,2000,0,0) 
f.write(x)
f.close()
Also kein Hexenwerk, oder?

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 28 May 2018, 13:53
by digohm
Vielen Dank! Das hat traumhaft funktioniert :)
Der Vollständigkeit halber werde ich im anderen Forum auch noch posten damit dann beide Möglichkeiten geklärt sind.

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 06 Aug 2018, 07:23
by RevPiModIO
Version RevPiModIO2 2.2.1 vom 01.08.2018 - Download

Unterstützt Revolution Pi Core und Connect!

Für den Connect gibt es eine automatische Triggerfunktion des Hardware-Watchdogs!

Versionslog

(WHEEZY, JESSIE und STRETCH kompatibel)

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 09 Aug 2018, 00:19
by volker
Super Sven, dass Du so schnell bereits die Connect Features in die Bibliothek aufgenommen hast.

Bitte lest aber auch mal hier:
viewtopic.php?f=3&t=862
Bei der Verwendung des automatischen Resets vom watchdog ("triggern" tut man den WD nicht, das macht er selber wenn er zuschlägt), bitte die Anmerkungen in dem o.g. Beitrag lesen. Das macht nämlich eigentlich nur für Debug- oder Entwicklungsphase Sinn - in einem produktiven System würde so ein automatisches Reset den Sinn eines watchdog ab absurdum führen.

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 09 Aug 2018, 08:48
by RevPiModIO
Hi Volker!

Danke für den Hinweis! Da war ich wohl zu "schnell" und habe der Funktion einen schlechten Namen gegeben. Ich "trigger" den Watchdog natürlich nicht sondern "toggle" ihn. Darum habe ich die Funktion jetzt umbenannt und ein neues Update nachgeschoben.

Aus .core.watchdogtrigger ist nun .core.wdautotoggle geworden!!! Ich denke das macht DEUTLICH mehr Sinn!

PS: Die Funktion sollte natürlich nicht der alleinige Bestandteil des Python-Programms sein. Sie sollte nur verwendet werden, wenn das Python-Programm die eigentliche Arbeit (Steuern, Daten erfassen, usw.) macht. Sollte das Programm abstürzen, würde der WD nicht mehr getoggled werden und der Connect einen Restart machen. Mal sehen ob man diese Funktion noch mit zusätzlichen Systembedingungen verknüpft, dann hätte man noch mehr Sicherheit.
Wenn man sich selber um Auswertefunktionen kümmert, sollte man den Watchdog selber triggern. Dafür bietet RevPiModIO .core.wd.value = True / False an.

Also bitte eure Repositories mit der Version 2.2.2 aktualisieren, bevor die 2.2.1 in den Umlauf kommt!
https://revpimodio.org/quellen/quellen2/

Gruß, Sven

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 04 Mar 2019, 19:26
by RevPiModIO
Version 2.3.1

Fragen und Antworten HIER

Re: RevPiModIO - Python3 Direktzugriff auf IOs

Posted: 18 Apr 2021, 10:10
by RevPiModIO
Version 2.5.7

Wir haben einige wichtige Aktualisierungen seit RevPiModIO 2.5.3!
Update-Log

Info: Momentan hat die Kunbus sehr alte Versionen unserer Software in deren Repositories! Das Update muss also manuell oder über unser eigenes Repository eingespielt werden:
https://revpimodio.org/unser-repository/