From ed467cdb0d536bf0753753f4233c5340070dd43b Mon Sep 17 00:00:00 2001 From: Langspielplatte Date: Sun, 13 Sep 2020 12:31:15 +0200 Subject: [PATCH] Letzten beiden Versuche angefangen. --- README.md | 55 +++++++++++++++++++++++++++++-- Versuchstag-4/ikt_car_sensorik.py | 25 +++++++++++--- 2 files changed, 74 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 980df17..55ee393 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,22 @@ echo 2=10000 > /dev/servoblaster | 0 | |1.5ms | | -44.2 | |10.08ms | -### Versuch 5 +## Veruch 4: Wiimote + +- Wiimote mit dem hcitool finden + +```bash +hcitool scan +``` + +- Grundgerüst ist implementiert + +- Accelerometer Steuerung + - TODO + - Anlog zur Maussteuerung + - Werte MAX, MIN anpassen + +## Versuch 5 - Verbinden mit WLAN - ESSID: group20n @@ -84,7 +99,7 @@ sudo iwconfig ra0 essid group02n - dann Routen prüfen -#### Delays und Offset messen +### Delays und Offset messen - Zeit synkronisieren @@ -107,10 +122,23 @@ ntpq time1.rrzn.uni-hannover.de | Pi | | | - **Default Route wieder auf ethernet stellen** +- NTP Service konfigurieren# + - in ```/etc/ntp.conf``` + - ```server time1.rrzn.uni-hannover.de``` eintragen + - ```sudo service ntp stop|start``` + ### Streaming über das drahtgebundene Netz +- PI Kamera konfigurieren + - Kamera anstellen + +```bash +sudo raspi-config +``` + - Segmentation offloading ausschalten + - Für beide Interfaces ```bash ethtool -K tso off @@ -220,3 +248,26 @@ tcpdump -i tcp and port 1337 and src -r - Wenn das Modellauto sich stetig vom Router entfernt. - Wenn das Modellauto den Raum verlässt. - Was kann in beiden Fällen beobachtet werden? + +## Versuch 6 + +- Sensoten für diesen Versuch: + - Infrarot: GP2D12 + - Kompas: CMPS03 + - Radencoder: Hat Reflexoptokoppler CNY70 + - Ultraschall-Modul: SRF08 + +- Überprüfen ob Sensoren angeschlossen sind + - y-Flag gibt den Bus an + +```bash +sudo i2cdetect -l +sudo i2cdetect -y 1 +``` + +- Kernelmodule laden i2c-bcm2708 + - Überprüfen mit ```lsmod``` + +- Adressen in die ```ikt_car_sensorik.py``` eintragen + - Unten in der Main + diff --git a/Versuchstag-4/ikt_car_sensorik.py b/Versuchstag-4/ikt_car_sensorik.py index 20357c9..b2ae681 100644 --- a/Versuchstag-4/ikt_car_sensorik.py +++ b/Versuchstag-4/ikt_car_sensorik.py @@ -84,7 +84,15 @@ class Compass(object): # # Diese Methode soll den Kompasswert auslesen und zurueckgeben. def get_bearing(self): - return 0 + b = 0 + try: + bear1 = bus.read_byte_data(address, 2) + bear2 = bus.read_byte_data(address, 3) + bear = (bear1 << 8) + bear2 + b = bear/10.0 + except: + print "Bearing konnte nicht ausgelesen werden!" + return b class CompassThread(threading.Thread): ''' Thread-class for holding compass data ''' @@ -122,13 +130,22 @@ class Infrared(object): # # In dieser Methode soll der gemessene Spannungswert des Infrarotsensors ausgelesen werden. def get_voltage(self): - return 0 + voltage = 0 + try: + voltage = bus.read_byte(self.address) + except: + print "Spannung konnte nicht ausgelesen werden!" + return voltage # Aufgabe 3 # # Der Spannungswert soll in einen Distanzwert umgerechnet werden. def get_distance(self): - return 0 + # v=(readChannel(0)/1023.0)*3.3 + v = self.get_voltage() + # interpolation von https://tutorials-raspberrypi.de/wp-content/uploads/gp2y0a02yk-600x455.png + dist = 16.2537 * v**4 - 129.893 * v**3 + 382.268 * v**2 - 512.611 * v + 301.439 + return dist class InfraredThread(threading.Thread): @@ -249,4 +266,4 @@ if __name__ == "__main__": # Aufgabe 6 # - # Hier sollen saemtlichen Messwerte periodisch auf der Konsole ausgegeben werden. \ No newline at end of file + # Hier sollen saemtlichen Messwerte periodisch auf der Konsole ausgegeben werden.