Änderungen
Aus Hackerspace Ffm
== setup ==
Aller Code und auch ein Setup können im https://github.com/hackffm/arucomover gefunden werden.
vorbereiten sollten. Das in der arucodetection verwendete Shared Memory ist
erst ab Python 3.8 verfügbar. Auf einem RaspberryPi3 ist 3.7 default. Daher
gibt es im Setup Folder ein entsprechendes Skript für den Pi. Vor der Ausführung
der Setups muss das Swapfile vergrößert werden
<code>
Skripte können, mit der richtigen Python Version dann ausgeführt werden.
Der Schritt 2_setup_folders.sh installiert auch alle python requierements.
Das kann auf eine PI 3 mehrere Stunden dauern., da diverse Kompilierungen im Hintergrund laufen !
== Arucodetetcion ==
Config File camera.json mit create_camera_config.py erstellt werden. Dies muss dann in den
vom Setup erstellten /USERHOME/arucodetection Folder kopiert werden.
Dort liegt auch eine config.json mit der sich die Camera, Auflösung , Debug usw. einstellen läßt.Das los landet in ~/arucdetection/log.Es wird immer von einem DICT_6X6_50 Aruco Code ausgegangenund kann zur Zeit nur in der camera.py umgestellt werden.
Um zu testen ob alles funktioniert, stellt arucodetection.py eine entsprechende Webseite zur verfügung,
die Websocket und Video Stream abfragt.
Die Webseite ist auf 127.0.0.1:9080 zu finden
[[Datei:Arucodetection.jpg |x300px ]]
mit ? abgefragt werden. Will man nur I2C testen, kann man code.py umbenennen. Dann wird automatisch main.py
aufgerufen, daß in einer Endlosschleife die angeschlossenen I2C Devices abfragt.
== Node-Red ==
Entweder durch die Setup Skripte oder so sollte ein Node.js 14x vorhanden sein
Wenn 2_setup_folders.sh nicht ausgeführt wurde muss selbst dafür gesorgt werden, daß
das Package.json File in ~/nodered/ abgelegt wurde und alle Package Depencies darin müssen installiert wurden.
node_red_start.sh startet
<code>
node red --settings ~/git/arucomover/code/nodered/arucomover.js --flowFile ~/git/arucomover/code/nodered/flows_arucomover.json
</code>
Das Settings File starte NodeRed auf Port 9010<br>
Der Editor kann dann auf http:;//127.0.0.1:9010 und<br>
Die UI auf kann dann auf http:;//127.0.0.1:9010/ui gefunden werden.<br>
<br>
Der Flow ist in zwei Tabs aufgeteilt.<br>
Ein Tab für die Daten von ItsyBitsy M4 und arucomover.py<br>
Ein Tab für die Steuerbefehle an den ItsyBitsy M4<br>
Beide Tabs habe UI Elemente und sind miteinander verbunden um ein einheitliches Handling zu ermöglichen.<br>
<br>
== Start ==
Es müssen zwei Prozesse gestartet werden also entweder nacheinander mit & in den Hintergrund oder z.B. mit screen oder tmux.
1.Start der arucodetection<br>
<code>
source ~/arucodetection/venv/bin/activate
...../arucomover/code/arucodetection/arucodetection.py
</code>
2.Start der Node-Red Flows<br>
<code>
...../arucodetection/cosde/bash/node_red_start.sh
</code>
== Hardware Evolution ==