| @@ -1,10 +1,10 @@ | |||
| # IOT-Labor | |||
| ## Versuch 1 | |||
| ## Versuch 1: Bash | |||
| - Alle Aufgaben sind als Skripte implementiert | |||
| ## Versuch 2 | |||
| ## Versuch 2: Python | |||
| - Aufgaben a bis c als Skripte implementiert | |||
| @@ -36,21 +36,101 @@ echo 2=10000 > /dev/servoblaster | |||
| ### f) | |||
| - in der servoblaster_ctl.py **TODO** | |||
| - in der servoblaster_ctl.py | |||
| ### g) | |||
| - Als Skript implementiert | |||
| ## Versuch 3 | |||
| ## Versuch 3: Steuerung Keyboard | |||
| ### Aufgabe 1 a) | |||
| ### 4d) | |||
| --- | |||
| #### Motor | |||
| Implementieren Sie eine Methode, mit der Sie die Geschwindigkeit auf Basis eines einfachen Tastendrucks, stufenweise verändern können. Nehmen Sie für die maximale Geschwindigkeit (Vor- und Rückwärts) den Wert v max = 11m/s an. Fügen Sie außerdem eine Möglichkeit hinzu, die Geschwindigkeit zurückzusetzen. (Resetbutton). | |||
| - Pulsbreite von 100 bis 200 | |||
| - $150 + \frac{v}{v_{max}} * 50$ | |||
| --- | |||
| | v [m/s] | PWM (gemessen) | PWM (soll) | | |||
| |---------|----------------|------------| | |||
| | 0 | |1.5ms | | |||
| | -12.3 | |2ms | | |||
| | 0.9 | |15.409ms | | |||
| | -7.4 | |11.636ms | | |||
| - Taste zum positiven Beschleunigen ist **w**, zum negativen Beschleunigen **s** | |||
| #### Steuerung | |||
| - Pulsbreite von 100 bis 200 | |||
| - $150 + \frac{\alpha}{\alpha_{max}} * 50$ | |||
| | $\alpha$ [°] | PWM (gemessen) | PWM (soll) | | |||
| |-------|----------------|------------| | |||
| | -3 | |14.66ms | | |||
| | 18 | |17ms | | |||
| | 0 | |1.5ms | | |||
| | -44.2 | |10.08ms | | |||
| ### Versuch 5 | |||
| - Verbinden mit WLAN | |||
| - ESSID: group20n | |||
| - Kein Passwort und kein DHCP | |||
| ```bash | |||
| sudo ifconfig ra0 192.168.1.42 netmask 255.255.255.0 up | |||
| sudo iwconfig ra0 essid off | |||
| sudo iwconfig ra0 essid group02n | |||
| ``` | |||
| - dann Routen prüfen | |||
| #### Delays und Offset messen | |||
| - Zeit synkronisieren | |||
| ```bash | |||
| ntpq time1.rrzn.uni-hannover.de | |||
| ``` | |||
| - Für dratgebunden | |||
| | | Dealy | Offset | | |||
| |-------|-------|--------| | |||
| |Laptop | | | | |||
| | Pi | | | | |||
| - Für dratlos | |||
| | | Dealy | Offset | | |||
| |-------|-------|--------| | |||
| |Laptop | | | | |||
| | Pi | | | | |||
| - **Default Route wieder auf ethernet stellen** | |||
| ### Streaming über das drahtgebundene Netz | |||
| - Mittelwert = sum(i)/n = x | |||
| - Varianz = sum((i - x)^2)/n | |||
| - Std.Abw = root(Varianz) | |||
| - Eingestellte Bitrate: | |||
| - Tatsächlich gesendete Bitrate: | |||
| ### Streaming über WLAN | |||
| #### Plot TCP | |||
| #### Plot UDP | |||
| #### Mittelwert und Standardabweichung der OWDs | |||
| - TCP: | |||
| - Mittelwert: | |||
| - Standardabweichung: | |||
| - UDP: | |||
| - Mittelwert: | |||
| - Standardabweichung: | |||
| - Um OWDs mit UDP genauer zu berechnen müsste die Reihenfolge der Pakete beachtet werden und die Uhren von Client und Server genaustens synkronisiert werden. | |||