pxdev Linux Tools für PiXtend installieren.

Ähnliche Dokumente
pxdev Linux Tools für PiXtend installieren.

pxdev Linux Tools & Library für PiXtend

PiXtend mit CODESYS Demo Projekt

PiXtend mit CODESYS Demo Projekt

PiXtend mit CODESYS Demo Projekt

RFID RC522. Ausgabe Copyright by Joy-IT 1

PiXtend mit CODESYS Digital-Analog-Converter

Application Note. Verwendung von PiXtend mit FHEM. APP-PX-302 Stand , V1.03

RFID RC522. Ausgabe Copyright by Joy-IT 1

Talking-Pi. Ausgabe Copyright by Joy-IT 1

CAN Kommunikation mit PiXtend

I2C Serial 2.6 LCD Modul

I2C Serial 2.6 LCD Modul. Verwendung mit einem Arduino

CAN-Kommunikation mit PiXtend

EXP500. Ausgabe Copyright by Joy-IT 1

CAN-Kommunikation mit PiXtend

Einbindung der RasPiLC in die CODESYS-Umgebung

1,8 Display Bedienungsanleitung Raspberry Pi

Application Note. PiXtend mit Hilfe der Control- & Status-Bytes konfigurieren und überwachen. Stand , V1.06

Raspi mit Image Jessy_Pixel einrichten

Startup, Shutdown und Reboot eines Raspberry Pi über die HomeMatic CCU

MotoPi. Ausgabe Copyright by Joy-IT 1

Application Note. Prozessdaten. Datenaustausch zwischen PiXtend-Controller und Raspberry Pi verstehen und nutzen. Stand , V1.

Raspberry Pi Rezepte Teil 6 Das ADC des guten Geschmacks

Raspberry als Cloud Server (Next Cloud / Owncloud)

Versuch 5: Linux embedded

3,2 Touch-Display-V2 / 3,5 Touch-Display Bedienungsanleitung [Version ]

Application Note. PiXtend Mikrocontroller Firmware Update. APP-PX-540 Stand , V1.00

MotoPi. Ausgabe Copyright by Joy-IT 1

Einrichtung der Raspberry Pi

mit Winzip oder anderem Programm auf PC entpacken => xxx.img-datei mit Win32Diskimager die xxx.img-datei auf Micro-SD-Card >= 4GB schreiben

Raspberry Workshop. User des Raspberry abmelden: Folgende befehle werden angenommen: Logout / Exit oder die Tastenkombination Ctl + D

Willkommen! Verdrahten des Panels mit dem Raspberry Pi:

Application Note PiXtend mit OpenPLC Project

Linkerkit OLED Raspberry Pi und Arduino

Embedded So)ware. Einrichten der Arbeitsumgebung

Inhaltsverzeichnis Erste Schritte Grundprinzipien in Linux

3.2 / 3.5 Touch-Display

JOY-iT TFT-Display 1.8

Application Note. Industrielle Motoransteuerung mit PiXtend & CODESYS - bürstenbehaftete Gleichstrommotoren - APP-PX-304 Stand , V1.

3.2 / 3.5 Touch-Display

Raspberry Pi: Betriebssystem installieren und WLAN einrichten

DC 5V Stepper Motor 28BYJ-48. Verwendung mit einem Arduino

Benötigte Teile für die Statusanzeige, Kosten und Beschaffungslinks:

RP6 mit dem Raspberry Pi verbinden

Raspberry Pi Rezepte Teil 5

Raspberry Pi. Einstieg - Optimierung - Projekte. Bearbeitet von Maik Schmidt

LCD Display 20x4 mit Buttons

3,2 Touch-Display-V2 Bedienungsanleitung [Version (Raspberry Pi 3)]

3,2 Touch-Display-V2 Bedienungsanleitung

Bedienungsanleitung der LED-Qube 5 V2

RPi - Explorer700. Ausgabe Copyright by Joy-IT 1

Steuern und Messen mit Raspberry Pi

Anleitung VM-Installation Ubuntu

Zusätzlich Tipps und Informationen

BlueSpice Installation lokales Testsystem ohne Installer

Bedienungsanleitung der LED-Qube 5

Lernziele Dateiverwaltung Bearbeiten von Textdateien Sichere Anmeldung per SSH-Schlüssel. Linux für Anfänger

Benutzer und Rechte Teil 1, Paketverwaltung

Raspberry Pi Appliances. Das richtige Betriebssystem für die eigene SW Lösung finden Pi and More 7 Nico Maas

DV4mini_compact. 1 Inhalt 1 Inhalt... i

PiXtend mit CODESYS - Installation

pwd mkdir Zeigt das aktuelle Verzeichnis an Beispiel: pwd

Benutzer- und Rechtevergabe

Application-Note PiXtend V2 mit Node-RED

Lokale Scanner am Thin Client als Netzwerkscanner nutzen. Inhaltsverzeichnis

Tutorium 1 Systemadministration 2 - Linux Universität Hildesheim

Application-Note PiXtend V2 -S- mit Node-RED

JOY-iT 10.1 Touchscreen-Display

Diplomarbeit LEGO Mindstorms Simulator - JORGE Installationshandbuch.

BASIC Tutorial für Anfänger

StromPi 3 Softwareanleitung

Anleitung Zusammenbau

4,5 eink-display für den Raspberry Pi - Bedienungsanleitung

FAQ - Einstellungen Vortix Realtime Bridge LAN to RF 169MHz

10.1 HDMI LCD. Index. Veröffentlicht: Copyright by Joy-IT 2

Inbetriebnahme einer lokal installierten Demoversion von VuFind

Verdrahten des GPS Empfängers mit dem Raspberry Pi:

Moto1. 28BYJ-48 Stepper Motor. Ausgabe Copyright by Joy-IT 1

Moto1. 28BYJ-48 Stepper Motor. Ausgabe Copyright by Joy-IT 1

Benutzer und Rechte Teil 1, Paketverwaltung, SSH

Die Temperaturmessung mit dem Sensor LM75. Andreas Heller & Eduard Auer

Installations-Dokumentation, YALG Team

PiXtend mit CODESYS Projekt erstellen

10.1 HDMI LCD. 1. Einführung. 2. Halterungsmontage. 3. Verwendung mit einem PC 3.1 Geräteverbindung

Installationsanleitung Lernwerkstatt 7 auf Ubuntu/Kubuntu 8.04 (Hardy Heron)

Handout Raspberry Pi Workshop Touch-Display

HomeMatic CCU-Historian auf einem Raspberry Pi 3 Model B betreiben (Raspian Jessie)

3,2 Touch-Display Bedienungsanleitung

DE - Deutsch. Bedienungsanleitung CS Instruments GmbH Service Software Dew Point Sensors

Mit PuTTY und WinSCP an der Pi

SX3 PC Software rev. 0.99c

Transkript:

pxdev Linux Tools für PiXtend installieren. Anleitung um das pxdev-package auf dem Raspberry Pi zu installieren und zu verwenden. Stand 13.12.2014, V1.01 Stand 30.05.2015, V1.02 pxdev V0.4.1 Qube Solutions UG (haftungsbeschränkt) Luitgardweg 18, D-71083 Herrenberg http://www.qube-solutions.de/ http://www.pixtend.de www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 1 / 17

Inhaltsverzeichnis 1. Einleitung...3 1.1 Allgemeine Hinweise...3 1.1.1 Warnhinweise...3 1.1.2 Einsatzbereiche PiXtend...3 1.1.3 Einsatzbereiche pixtendtool Einzelbefehle für PiXtend...4 1.1.4 Einsatzbereiche pxauto GUI für PiXtend...4 1.1.5 Einsatzbereiche PiXtend - C - Library...4 1.2 Haftungsausschluss...4 2. Voraussetzungen...5 2.1 Benötigte Software...5 2.2 Benötigte Hardware...5 3. Installation von pxdev...6 3.1 SPI Aktivieren...7 Methode 1:...7 Methode 2:...7 Methode 3:...8 4. Verwendung von pixtendtool...9 Beispiele:...10 Weitere Schritte...11 5. Verwendung von pxauto...12 5.1 Navigation:...12 5.2 Felder editieren...15 5.3 Datenaustausch aktivieren...16 www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 2 / 17

1. Einleitung Diese Anleitung beschreibt alle Schritte die notwendig sind um pxdev, die Linux Entwicklungs Tools für das PiXtend, (www.pixtend.de) zu installieren. In pxdev sind folgende Komponenten enthalten: pixtend Die PiXtend C Library ermöglicht den Zugriff auf PiXtend I/O Hardware. Der Datenaustausch zwischen PiXtend Mikrocontroller und Raspberry Pi findet per SPI statt. Dazu wird die wiringpi Library verwendet (https://projects.drogon.net/raspberry-pi/wiringpi/) pixtendtool - Ein PiXtend Kommandozeilen Tool, mit dem auf die PiXtend I/O Hardware und Konfigurationsbytes mittels einfachen Konsolen Befehlen zugegriffen werden kann. pxauto Eine einfache Konsolen-Anwendung mit grafischem User Interface. PiXtend kann damit kontinuierlich überwacht werden. Die Anwendung eignet sich für schnelle Inbetriebnahme und I/O-Tests. Die Linux Tools können Sie nach Belieben für ihre eigenen Projekte verwenden und anpassen. 1.1 Allgemeine Hinweise 1.1.1 Warnhinweise 1.1.2 Einsatzbereiche PiXtend PiXtend und das Raspberry Pi sind nicht für den Einsatz im rauen industriellen Umfeld konzipiert! PiXtend darf nicht in sicherheitskritischen Systemen eingesetzt werden. Das PiXtend ist hervorragend geeignet für private als auch kommerzielle Projekte: Haus-Automation Zur Evaluierung von Teil-Systemen Proof of Concept, Vorserie Als Lern und Lehrplatform für Steuerungstechnik und Automation Als Lern und Lehrplatform für Mikrocontroller Hard- und Software Techniken Amateurfunk Anwendungen www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 3 / 17

1.1.3 Einsatzbereiche pixtendtool Einzelbefehle für PiXtend Das pixtendtool bietet direkten Zugriff auf die PiXtend-Hardware aus der Linux Kommandozeile. Es eignet sich daher u.a. für folgende Einsatzwecke: Absetzen von Einzelbefehlen über die Kommandozeile lokal, oder auch via SSH- Zugriff über das Netzwerk um z.b. Ausgänge zu bedienen. Aufruf von pixtentool Befehlen aus eigenen Shell-Skripten Zyklischer Aufruf von pixtendtool Befehlen um Daten periodisch zu loggen und für andere Dienste bereitzustellen, z.b. in einer mysql-datenbank. Dient als Referenz für die Verwendung der Pixtend-C-Library im manuellen Modus (Einzelbefehle) Kann an ihre eigenen Bedürfnisse angepasst werden. 1.1.4 Einsatzbereiche pxauto GUI für PiXtend Das pxauto-tool verfügt über eine Grafische Oberfläche und eignet sich für die schnelle Inbetriebnahme ihrer PiXtend Hardware. Die Zustände der Eingänge können zyklisch überwacht werden. pxauto kann sowohl lokal, als auch remote aus einem ssh Terminal verwendet werden. I/O-Tests der angeschlossen Hardware und Sensoren Testen des Funktionsumfangs von PiXtend Grundlage für eigene Projekte mit GUI Dient als Referenz für die Verwendung der pixtend C-Library im Auto-Modus (Zyklisches Prozess Abbild in C verwendbar) 1.1.5 Einsatzbereiche PiXtend - C - Library Die PiXtend-C-Library wird von den beiden genannten Programmen verwendet und bildet die Schnittstelle zwischen Raspberry Pi und dem von PiXtend verwendeten Mikrocontroller. Änderungen an der Library sind z.b. dann notwendig, wenn sie z.b. ihre eigene Mikrocontroller Version für das PiXtend verwenden. Wenn sie vorerst nur auf bestehende PiXtend Funktionalität zugreifen wollen, empfehlen wir Ihnen die C Library unverändert zu lassen. 1.2 Haftungsausschluss Qube Solutions UG haftet nicht für etwaige Schäden die unter Umständen durch die Verwendung der zur Verfügung gestellten Software, Hardware, oder der hier beschriebenen Schritte entstehen können. www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 4 / 17

2. Voraussetzungen Es wird vorausgesetzt dass Sie PiXtend bereits erfolgreich in Betrieb genommen haben und dass eine SD Karte mit der Linux Distribution Raspbian Wheezy eingelegt ist. 2.1 Benötigte Software Aktuelle Raspbian Linux Distribution auf einer SD Karte wiringpi (https://projects.drogon.net/raspberry-pi/wiringpi/) ncurses Libraries libncurses5-dev libncursesw5-dev Optional SSH-Client (z.b. putty.exe www.putty.org) 2.2 Benötigte Hardware PiXtend Board (www.pixtend.de) Raspberry Pi Model B (bei Verwendung von Model B+ / Banana Pi wird ein zusätzlicher Adapter benötigt) www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 5 / 17

3. Installation von pxdev Die aktuellste Version des pxdev-package kann auf unserer Homepage im Download Bereich als.zip-file heruntergeladen werden, oder mit GIT aus dem pxdev-repository ausgecheckt werden. Git wird zur Versionsverwaltung eingesetzt, und ermöglicht in diesem Falle, mit einfachen Befehlen komplette Repositories aus dem Internet herunterzuladen. Wir empfehlen folgende Vorgehensweise. Geben sie zunächst den Befehl sudo apt-get install git-core in der Kommandozeile des Raspberry Pi ein, um GIT auf dem Raspberry Pi zu installieren (falls nicht bereits vorhanden). Pxdev verwendet intern die wiringpi-bibliotheken (https://projects.drogon.net/raspberrypi/wiringpi/) als Grundlage. Installieren sie die wiringpi Libraries mittels git wie folgt: git clone git://git.drogon.net/wiringpi cd wiringpi./build pxauto verwendet die ncurses Library. Installieren sie die benötigten Pakete: sudo apt-get install libncurses5-dev libncursesw5-dev Installieren sie das pxdev Paket in das Home Verzeichnis ihres Raspberry Pi. cd ~ Klonen sie das pxdev Repository wie folgt: git clone git://git.code.sf.net/p/pixtend/pxdev pxdev mit dem Befehl ls können Sie die Inhalte ihres Home Verzeichnis darstellen. Wechseln sie in den Ordner pxdev : cd pxdev www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 6 / 17

mit ls -la können sie die Inhalte des pxdev-paketes einsehen: Darin ist ein einfaches build-skript enthalten. Machen sie das Skript ausführbar chmod +x build Sie können das build script nun starten mittels:./build Es werden nun der Reihe nach die PiXtend-library, das pixtendtool, und das pxauto-tool erstellt. 3.1 SPI Aktivieren Die Kommunikation zwischen dem Raspberry Pi und dem PiXtend-Microcontroller verwendet SPI. Stellen sie deshalb sicher dass das SPI Modul auf dem Raspberry Pi aktiviert ist. Methode 1: Öffnen sie raspi-config und aktivieren sie SPI unter Advanced Options SPI yes sudo raspi-config Methode 2: Bearbeiten sie die Datei /etc/modprobe.d/raspi-blacklist.conf sudo nano /etc/modprobe.d/raspi-blacklist.conf Kommentieren sie den Eintrag "blacklist spi-bcm2708" aus in dem sie der Zeile ein #- Zeichen voranstellen, oder löschen sie die komplette Zeile. Speichern sie die Änderungen mit Ctrl-O, Return, Ctrl-X www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 7 / 17

Bearbeiten sie die Datei /etc/modules sudo nano /etc/modules Fügen sie den Eintrag spidev in einer neuen Zeile (ohne Anführungszeichen) hinzu. Speichern sie die Änderungen mit Ctrl-O, Return, Ctrl-X Methode 3: Ab Kernel Version 3.18.x wird Device Tree verwendet um Kernel Module zu laden. Bearbeiten sie die Datei /boot/config.txt sudo nano /boot/config.txt Fügen sie den Eintrag dtparam=spi=on" in einer neuen Zeile (ohne Anführungszeichen) hinzu. Speichern sie die Änderungen mit Ctrl-O, Return, Ctrl-X Ausführlichere Informationen zu den Änderungen und der Vorgehnsweise ab Kernel 3.18.x finden sie hier: http://raspberry.tips/faq/raspberry-pi-device-tree-aenderung-mit-kernel-3-18-x-geraetewieder-aktivieren/ Bei allen Methoden ist anschliessend ist ein reboot notwendig: sudo shutdown -r now www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 8 / 17

4. Verwendung von pixtendtool Wechseln sie in das Verzeichnis das pixtendtool beinhaltet z.b. mit cd ~/pxdev/pixtendtool Geben sie nun den Befehl sudo./pixtendtool -h ein. Dieser Befehl listet alle akzeptierten Optionen auf. PiXtend Tool - www.pixtend.de usage: pixtendtool [OPTION] [VALUE(s)] available options: -h prints this help -do VALUE set the digital output byte -di get the digital input byte -ai INDEX get the analog value of AI[INDEX] -aic VALUE0 VALUE1 write AI Control Registers -ao ENABLE CHANNEL GAIN VALUE set the analog output bytes -rel VALUE set the relay output byte -gw VALUE write GPIO Byte -gr read GPIO Byte -gc VALUE write GPIO Control Register -tr CHANNEL read temperature -hr CHANNEL read humidity -srv CHANNEL VALUE set a servo value -pwm CHANNEL VALUE set a pwm value -pwmc VALUE0 VALUE1 VALUE2 write PWM Control Registers -swc CHAR writes a char on rs232 -sws STRING writes a string on rs232 (max. len=16) -sr reads data from rs232 until Ctrl^C -ucc VALUE write uc Control Register -ucr Reset the microcontroller -ucs Read microcontroller Status Register -ucv Read microcontroller Version -rasp VALUE write the RaspberryPi Status Register www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 9 / 17

Beispiele Der Befehl sudo./pixtendtool -di gibt Auskunft über den Zustand des digitalen Eingangs-Bytes zum Zeitpunkt des Aufrufes: sudo./pixtendtool -do 15 Setzt die digitalen Ausgänge auf 15. Dies repräsentiert binär 00001111, setzt also die Ausgänge 0, 1, 2, 3, während 4,5, (6,7) gelöscht werden. Um Analoge Eingänge abzufragen, verwenden Sie dementsprechend: sudo./pixtendtool -ai 0 Analog Eingang 0 liefert uns den Wert 516. Bei einer Referenzspannung von 10 V und der Auflösung von 10 Bit (2^10) entspricht der Wert also 10 V/1024 * 516 = 5.04 Volt. www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 10 / 17

Weitere Schritte Experimentieren sie mit den Optionen. Nachdem sie mit der Verwendung und den Parametern des pixtendtool vertraut sind, können sie ihre eigene Shell-Skripte schreiben in denen sie die pixtendtool-aufrufe verwenden. Sie können alle Ausgaben von pixtendtool z.b. direkt in eine Text Datei umleiten: sudo./pixtendtool -h > Help.txt oder Daten an eine bestehende Datei anhängen: sudo./pixtendtool -ai 0 >> analog0.log Richten sie z.b. einen cronjob ein, der ein Skript zyklisch aufruft um die Zustände aller Analogen Eingänge in einer Datei ablegt. Oder ein Skript das die Analogen Werte in eine MYSQL Datenbank einträgt. Oder ein Skript das täglich zu einer gewissen Uhrzeit ein Relais einschaltet, und zu einer anderen Uhrzeit wieder aus. Oder oder oder... www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 11 / 17

5. Verwendung von pxauto Wechseln sie in das Verzeichnis das pxauto beinhaltet z.b. mit cd ~/pxdev/pxauto Geben sie nun den Befehl sudo./pxauto ein, um pxauto zu starten. Hinweis: Hier ist die Verwendung des sudo Befehls extrem wichtig. Wird pxauto ohne sudo gestartet kommt es zu unerwartetem Verhalten, da nicht auf die Hardware zugegriffen werden kann. Ausserdem wird die Konsolenausgabe gestört. Abhilfe: Mit Ctrl-C kann die Ausführung abgebrochen werden. Anschliessend kann der Befehl reset blind eingegeben und mit RETURN bestätigt werden. Danach ist die Kommandozeile wieder verfügbar. Das Problem ist bekannt und wird bald behoben. Pxauto verfügt momentan über folgende Menupunkte DIN Digitale Eingänge AIN Analoge Eingänge / Temperatur / Luftfeuchte GPIO General Purpose Input / Output DOUT Digitale Ausgänge AOUT Analoge Ausgänge PWM PWM Ausgänge CTRL Control / Aux Bytes STAT Status Bytes www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 12 / 17

www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 13 / 17

5.1 Navigation Nach dem Start von pxauto befinden Sie sich zunächst im Menu (MENU-MODE) Mit den Cursor Tastern HOCH und RUNTER können sie einen anderen Menu Punkt anwählen. Mit RETURN wechseln sie in das gerade ausgewählte Fenster (EDIT-MODE). Farblich hervorgehobene Felder können editiert werden indem sie einen Wert eintippen. Um Werte zu löschen benutzen Sie bitte DEL / BACKSPACE. Boolsche Werte (z.b. Digitale Ausgänge) und Auswahlmöglichkeiten können mit den Cursortasten LINKS / RECHTS gewählt werden. Um Änderungen zu übernehmen verlassen sie den Fokus des Feldes mit HOCH/RUNTER. Um wieder ins Menü zu gelangen, drücken sie erneut RETURN. Ein q Im Hauptmenü beendet das Programm. www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 14 / 17

5.2 Felder editieren Die Farblich hervorgehobenen Felder können verändert werden. Navigieren Sie mit den CURSOR Tasten zu dem gewünschten Feld und verwenden sie LINKS/RECHTS um zwischen den verfügbaren Werten zu wählen, oder tippen sie einen neuen Wert direkt ein. (Hinweis: Nummernblock wird i.d.r. nicht unterstützt bei Zugriff via Terminal) www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 15 / 17

5.3 Datenaustausch aktivieren Um den Datenaustausch mit dem Mikrocontroller zu initiieren, tragen sie bitte den Wert 016 in das Feld UC_CTRL (Mikrocontroller Control Byte) ein und verlassen sie es wieder um den Wert zu übernehmen (durch Pfeiltaste-hoch oder Pfeiltaste-runter). Hinweis: Verwenden sie bitte NICHT den NUM-Block ihrer Tastatur, da je nach Terminal die NUM-Block Eingaben unterschiedlich interpretiert werden. www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 16 / 17

Wenn sie ins Status Menu wechseln sehen sie die aktuelle Mikrocontroller Version und den Micro Controller Status in den Status Bytes. Die Kommunikation ist aktiv und das PiXtend reagiert nun direkt auf die von ihnen vorgenommenen Änderungen. Wir wünschen Ihnen viel Spaß bei der Benutzung des PiXtend mit CODESYS und ein gutes Gelingen für Ihre Projekte. Wir sind immer an Feedback interessiert, sollten sie PiXtend in einem Projekt verwenden würden wir uns über eine Erwähnung freuen. www.pixtend.de Copyright by Qube Solutions UG (haftungsbeschränkt) 17 / 17