Einleitung

Für Themen rund um das Prozessabbild des RevPi Core
Post Reply
User avatar
volker
Posts: 1046
Joined: 09 Nov 2016, 15:41
Answers: 1

Einleitung

Post by volker »

Unser zentrales Prozessabbild ist der Dreh- und Angelpunkt aller Hard- und Softwarekomponenten von KUNBUS als auch von Drittanbietern. Alle Module und Treiber sollten ihre Prozessdaten auschließlich hier abholen und abliefern. Genau dann haben wir als Ergebnis ein System, bei der die Komponenten miteinander Daten austauschen können.
Das Prozessabbild ist ein 4 kByte großer Puffer im RAM, der von PiControl, dem zentralen Treiber des RevPi Core bereitgestellt wird. In diesem Speicher stehen alle IO-Daten, die das System verwalten soll. Dafür müssen die Komponenten (Module, Treiber, etc.), die wir auch "Adapter" nennen, über PiCtory, unserem grafischen Konfigurator, dem System bekannt gemacht werden. Durch die Konfiguration in PiCtory bekommt jedes IO-Byte oder Bit seinen eigenen Platz (=Offset) im Prozessabbild zugewiesen. PiControl verwaltet dabei die Zugriffe und sorgt für den Datenaustausch von IO-Modulen (DIO, Gate, etc.) mit dem Core Modul.
Andere Applikationen (wie zum Beispiel logi.RTS) oder Treiber können nun durch Funktionsaufrufe des PiControl Treibers ebenfalls Daten in das Prozessabbild schreiben oder daraus lesen.
Hier findest Du mehr interessante Aspekte zu PiControl.
Beispiele für den Zugriff mit C als Programmiersprache kannst Du in Deinem Userverzeichnis auf dem RevPi Core finden: Im Unterverzeichnis "Demo" findest Du das Tool "piTest". Mit diesem Programm können von der Kommandozeile aus die Ausgangsleitungen von IO-Modulen gesetzt werden oder die Eingangsleitungen gelesen werden. Das Programm kann auch eine Liste aller konfigurierten Module anziegen. Gib einfach "piTest" ohne weitere Befehlskürzel ein und Du erhälts eine Anzeige aller Befehlsoptionen.
Der Quellcode für dieses Programm ist ebenfalls in dem Verzeichnis. Mit dem Quellcode kannst Du am einfachsten erkennen, wie man einen Zugriff in C oder C++ programmiert.
Für den Zugriff über Python haben wir ein eigenes Thema hier im Forum geschrieben.
Unser RevPi Motto: Don't just claim it - make it!
Post Reply