Dies ist die Dokumentation des Paketes uracoli-sensorlogger-<VERSION>.zip. Das Paket enthält sowohl die Software für die Gateway- und Sensorknoten als auch die Python-Skripte.
Links
- Chemnitzer Linux-Tage 2011
- Vortragsseite
- Projekt-Home
- Mailing List
Paketinhalt
. |-- bin ................ AVR Hexfiles |-- inc ................ uracoli includes | `-- boards |-- lib ................ precompiled Libraries |-- pc_apps ............ Python Scripts |-- sensor ............. Sensor app. sources |-- uracoli-src ........ Library sources | |-- libioutil | |-- libradio | `-- libwibohost `-- wuart .............. Wuart sources.
Flashen der Knoten
Das Paket enthält bereits vorkompilierte hex Files für die beiden derzeit unterstützten Sensorboards Muse231 und Tiny230. Sollten andere Boards für die Knoten verwendet werden, müssen Anpassungen in den sensor-Applikationen vorgenommen werden.
Wenn zum Flashen beispielsweise das AVR Dragon Board verwendet wird, so können zum Flashen eines Muse231 und Tiny230 Boards folgende Kommandos verwendet werden:
avrdude -P usb -p m88 -c dragon_jtag -U bin/sensorapp_muse231.hex avrdude -P usb -p t84 -c dragon_jtag -U bin/sensorapp_tiny230.hex
Bei Verwendung eines anderen Programmers müssen ggf. die Optionen -P und -c angepasst werden.
Wichtig: Wenn mehr als ein Knoten verwendet wird, dann müssen die Knoten mit unterschiedlichen Eidentifiern versehen werden. Hierzu gibt es das pc_apps/wibo_muse231.py script, mit dem die hex-Files gepatcht werden können. Weitere Informationen:
cd pc_apps python wibo_muse231.py -h
Bauen der Sensor App.
Derzeit werden die Boards tiny230 und muse231 von der Sensor App. unterstützt. Das bauen der Software erfolgt aus dem Paketverzeichnis uracoli-sensorlogger-<version> mit dem Kommando:
cd uracoli-sensorlogger-<version> make -C sensor tiny230 muse231
Nach der Compilierung befinden sich die folgenden Dateien im sensor/bin/ Verzeichnis.
sensorapp_muse231.elf sensorapp_muse231.hex sensorapp_tiny230.elf sensorapp_tiny230.hex
Bauen der Wuart App.
Die Software für den Sensorknoten wird analog zur Sensor App. gebaut.
cd uracoli-sensorlogger-<version> make -C wuart psk230
Hierbei ist statt psk230 das verwendete Gatewayboard anzugeben. Die Liste der unterstützten Boards ist auch im wuart/Makefile zu finden.
Flashen des Gateways
Es wird wieder der avrdude verwendet. Für im obigen Beispiel verwendetes Board ist für den Dragon Programmer dann beispielsweise folgendes Kommando zu verwenden:
avrdude -p m1281 -c dragon_jtag -Pusb -U wuart/bin/wuart_stb230.hex
Starten des Sensorloggers und der Webserver
Nachdem der Gatewayknoten per USB Kabel an den PC angeschlossen wurde und beispielsweise das erste serielle USB-Interface belegt wurde (/dev/ttyUSB0), kann nun der Sensorlogger gestartet werden:
cd pc_apps # not as daemon and verbose output: python sensorlogger.py -v -p /dev/ttyUSB0 # or: if run as daemon: python sensorlogger.py -D -p /dev/ttyUSB0
Es kann noch die Geschwindgkeit der seriellen Schnittstelle eingestellt werden mit der -b Option.
Wenn der Logger läuft, sollten für jeden Sensor eine .rrd Datei um data Verzeichnis angelegt werden, welche die Round Robin Archieve enthält.
Nun können die Webserver zur Datenvisualisierung gestartet werden:
# Table server, default serves at port 8081, python tableserver.py -v # Sensor server, default serves at port 8080, python sensorserver.py -v
Sollen die server als Daemon gestartet werden, ist die Option -D zu verwenden. Alternative Ports können über die Option -p eingestellt werden.