Alle wollen digital – Wir machen analog!

Wir haben das analoge Modul AIO an unserem Revolution Pi!

Hinweis: Basiert auf RevPiModIO Version ab 0.16.1 wo analoge IOs automatisch mit Vorzeichen (signed=True) instantiiert werden.

piCtory Konfiguration

Natürlich müssen wir als erstes das Modul in unserer piCtory Konfiguration einfügen.

Aber damit ist es noch lange nicht getan! Bei dem analogen Modul haben wir in piCtory viele Konfigurationsparameter (Im Value Editor unter MEM), die wir an unsere Bedürfnisse anpassen MÜSSEN. Diese bestimmen das Verhalten des AIO.

Anschlussplan

Temperatur mit PT 100

Beginnen wir mit einem einfachen PT100 um die Temperatur zu messen. Das AIO bietet uns dafür zwei Eingänge – Wir verwenden RTD1 auf Pin 10, 12, 14, 16.

In piCtory müssen wir nun bei den MEMs für unseren 4-adrigen PT100 folgende Konfiguration setzen, speichern und den Treiber neu starten:

Schließen wir nun unseren PT100 am AIO Modul an.

Wenn wir uns per SSH an unserem RevPi anmelden, können wir mit Python3 den Wert ganz bequem auslesen:

Alte RevPiModIO Syntax

pi@RevPi0000:~ $ python3

>>> import revpimodio
>>> rpi = revpimodio.RevPiModIO(auto_refresh=True)
>>> rpi.devices["aio01"]["RTDValue_1"].value
283
>>>

Neue RevPiModIO2 Syntax

pi@RevPi0000:~ $ python3

>>> import revpimodio2
>>> rpi = revpimodio2.RevPiModIO(autorefresh=True)
>>> rpi.io.RTDValue_1.value
283
>>>

Wir haben auf unserem Netzteil eine angenehme Raumtemperatur von 28,3 °C (hier ist endlich Sommer)

Analoge Ausgänge verwenden

Als nächstes wollen wir uns die analogen Ausgänge ansehen. Für unsere Tests konfigurieren wir den Wertebereich für den ersten Output in piCtory von -10 V – 10 V. Auch hier natürlich wieder speichern und den Treiber zurücksetzen.

An den Pins 3 und 5 messen wir die Spannung mit unserem Multimeter.

Auch hier melden wir uns wieder per SSH an unserem Revolution Pi an und verwenden die interaktive Python Shell:

Alte RevPiModIO Syntax

pi@RevPi2191:~ $ python3

>>> import revpimodio
>>> rpi = revpimodio.RevPiModIO(auto_refresh=True)

>>> # Aktuellen Wert auslesen (erwartungsgemäß 0)
>>> rpi.devices["aio01"]["OutputValue_1"].value
0
>>> # Neuen Wert setzen ( 5 Volt)
>>> rpi.devices["aio01"]["OutputValue_1"].value = 5000

Neue RevPiModIO2 Syntax

pi@RevPi2191:~ $ python3

>>> import revpimodio2
>>> rpi = revpimodio2.RevPiModIO(autorefresh=True)

>>> # Aktuellen Wert auslesen (erwartungsgemäß 0)
>>> rpi.io.OutputValue_1.value
0
>>> # Neuen Wert setzen ( 5 Volt)
>>> rpi.io.OutputValue_1.value = 5000

Alte RevPiModIO Syntax

>>> # Oder -5 Volt
>>> rpi.devices["aio01"]["OutputValue_1"].value = -5000

Neue RevPiModIO2 Syntax

>>> # Oder -5 Volt
>>> rpi.io.OutputValue_1.value = -5000

Alternativ zum Testen – RevPiPyPLC

Wir können unsere Tests natürlich auch grafisch von einem Netzwerkrachner aus über RevPiPyControl erledigen. Hier können wir unsere Werte überwachen oder die Outputs setzen.

Wie geht es nun weiter…

Natürlich muss man sich bei der Konfiguration genau überlegen, was man machen möchte. Es gibt viele MEM Konfigurationsparameter um das Verhalten zu steuern.

Der nächste Schritt ist nun die Ansteuerung unseres Frequenzumrichters bei dem Revolutionsumbau.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.