AlpaBot Demo Quelltext: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
(35 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 9: | Zeile 9: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! # !! Name !! Status !! Prüfer | ! # !! Name !! Status !! Prüfer !! Hinweis | ||
|- | |- | ||
| 1 || E01_Run_Test|| IO || Schneider, Ebmeyer | | 1 || E01_Run_Test|| IO || Schneider, Ebmeyer | ||
Zeile 21: | Zeile 21: | ||
| 5 || E05_Ultrasonic_Ranging || IO || Schneider | | 5 || E05_Ultrasonic_Ranging || IO || Schneider | ||
|- | |- | ||
| 6 || E06_Ultrasonic_Obstacle_Avoidance1 || nicht getestet || | | 6 || E06_Ultrasonic_Obstacle_Avoidance1 || nicht getestet || Ebmeyer | ||
|- | |- | ||
| 7 || E07_Ultrasonic_Obstacle_Avoidance2 || nicht getestet || | | 7 || E07_Ultrasonic_Obstacle_Avoidance2 || nicht getestet || Ebmeyer | ||
|- | |- | ||
| 8 || E08_Infrared_Line_Tracking || lauft | | 8 || E08_Infrared_Line_Tracking || lauft || Posner, Steffen || [https://www.youtube.com/watch?v=8ZPffd-RMfk Video] Kalibrierung beachten! Zuerst auf einen hellen und dann einem dunklen Untergrund stellen. Anschließend folgt der Roboter dem dunklen Wert | ||
|- | |- | ||
| 9 || E09_Bluetooth_Control || | | 9 || E09_Bluetooth_Control || IO || Schneider || Läuft nur, wenn Jumper E1 (A4<big>→</big>AL) entfernt wurde; Jumper 2 auf RXD TX; WS BLE herunterladen; Scan; Remote Control; Befehle ändern z.B. {"Car":"Forward"} {"Car":"Brake"} für den Direction key [https://www.youtube.com/watch?v=D8Hvqi6qrGM Beispielvideo] [https://www.waveshare.com/wiki/Dual-mode_Bluetooth Manual] | ||
|- | |- | ||
| 10 || E10_Zigbee_Control || nicht verbaut || | | 10 || E10_Zigbee_Control || nicht verbaut || | ||
|- | |- | ||
| 11 || E11_mjpg-AlphaBot || Funktion unklar || | | 11 || E11_mjpg-AlphaBot || Funktion unklar || Ebmeyer | ||
|- | |- | ||
| 12 || E12_mjpg-AlphaBot-PID || Funktion unklar || | | 12 || E12_mjpg-AlphaBot-PID || Funktion unklar || Ebmeyer | ||
|- | |- | ||
| 13 || E13_Photo_Interrupter_Sensor || IO || Schneider | | 13 || E13_Photo_Interrupter_Sensor || IO || Schneider | ||
|- | |- | ||
| 14 || | | 14 || E14_Wheel_Encoders || IO || Schneider | ||
|- | |- | ||
| 15 || | | 15 || E15_Wheel_Encoders_Drive || IO || Schneider | ||
|- | |- | ||
| 16 || | | 16 || E16_ADC || IO || Schneider | ||
|- | |- | ||
| 17 || | | 17 || E17_ADXL345_Accelerometer || IO || Schneider || Läuft nur, wenn Jumper E1 (A4<big>→</big>AL) entfernt wurde. | ||
|- | |- | ||
| 18 || | | 18 || E18_Beep || IO || Schneider | ||
|- | |- | ||
| 19 || | | 19 || E19_DS3231_RealTimeClock || IO || Schneider | ||
|- | |- | ||
| 20 || E20_Joystick || IO || | | 20 || E20_Joystick || IO || Schneider | ||
|- | |- | ||
| 21 || E21_LM75_DigitalTemperatureSensor || | | 21 || E21_LM75_DigitalTemperatureSensor || IO || Schneider || Läuft nur, wenn Jumper E1 (A4<big>→</big>AL) entfernt wurde. | ||
|- | |- | ||
| 22 || E22_OLED_Display || | | 22 || E22_OLED_Display || IO || Schneider || Läuft nur, wenn Jumper E1 (A4<big>→</big>AL) entfernt wurde. | ||
|- | |- | ||
| 23 || E23_RGB_LED || IO || Schneider | | 23 || E23_RGB_LED || IO || Schneider | ||
Zeile 65: | Zeile 65: | ||
| 27 || E27_ADC_Servo_Ausgabe || IO || Schneider, Ebmeyer | | 27 || E27_ADC_Servo_Ausgabe || IO || Schneider, Ebmeyer | ||
|- | |- | ||
| 28 || E28_IR_Line_Tracking_Sensor || | | 28 || E28_IR_Line_Tracking_Sensor || IO || Schneider || [https://www.waveshare.com/wiki/Tracker_Sensor Tracker Sensor Manual] | ||
|- | |||
| 29 || E29_Run_Test_Simulink || nicht getestet || Ebmeyer | |||
|- | |||
| 30 || E30_Temperature_OLED_Display || IO || Läuft nur, wenn Jumper E1 (A4<big>→</big>AL) entfernt wurde. | |||
|- | |- | ||
|} | |} | ||
== BT mit dem PC == | |||
* Win 10: Verbindung herstellen zu Waveshare_BLE | |||
Zeile 74: | Zeile 81: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
! # !! Name !! Adressen !! Zu beachten | ! # !! Name !! Adressen !! Zu beachten eventuelle Doppelbelegung | ||
|- | |- | ||
| 1 || Motor||A0 (In_1); A1( In_2); D5 (Enable A); D6 (Enable B); A2 (In_3); A3 (In_4) || | | 1 || Motor||A0 (In_1); A1( In_2); D5 (Enable A); D6 (Enable B); A2 (In_3); A3 (In_4) || Poti (A0) | ||
|- | |- | ||
| 2 || Motor-Drehzahlsensor || D2 (links); D3 (rechts) || | | 2 || Motor-Drehzahlsensor || D2 (links); D3 (rechts) || | ||
|- | |- | ||
| 3 || Infrarot Näherungssensor || A4 (analog links); A5 (analog rechts); D7 (digital links); D8 (digital rechts)|| | | 3 || Infrarot Näherungssensor || A4 (analog links); A5 (analog rechts); D7 (digital links); D8 (digital rechts)|| I²C-Bus (A4, A5, SCL, SDA) | ||
|- | |- | ||
| 4 || Ultraschall ||D11 (Triger); D12 (Echo)|| | | 4 || Ultraschall ||D11 (Triger); D12 (Echo)|| Linetracker (D12, D11) | ||
|- | |- | ||
| 5 || Servo|| D9 (Servo_1); D10 (Servo_2) || | | 5 || Servo|| D9 (Servo_1); D10 (Servo_2) || Linetracker (D10 <big>→</big> Servo_2) | ||
|- | |- | ||
| 6 || Linenfolge Sensor|| D10 (CS); D11 (Dout); D12 (ADDR); D13 (CLK) || | | 6 || Linenfolge Sensor|| D10 (CS); D11 (Dout); D12 (ADDR); D13 (CLK) ||Ultraschall(D12, D11), Servo_2(D10) | ||
|- | |- | ||
| 7 || Infrarot Fernbedienung || D4 || | | 7 || Infrarot Fernbedienung || D4 || | ||
|- | |- | ||
| 8 || OLED|| SCL & SDA (I²C-Bus(0x)); D7; D8 || | | 8 || OLED|| SCL & SDA (I²C-Bus(0x)); D7; D8 || Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
| 9 || Poti || A0 || | | 9 || Poti || A0 || | ||
|- | |- | ||
| 10 || Joystick || A1; A2; A3; A4; A5 || doppelt belegt mit Motor, Infrarot Näherungssensor | | 10 || Joystick || A1; A2; A3; A4; A5 || doppelt belegt mit Motor, Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
| 11 || Temperatur Sensor|| SCL & SDA (I²C-Bus(0x)) || | | 11 || Temperatur Sensor|| SCL & SDA (I²C-Bus(0x)) || Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
| 12 || Beschleunigungs Sensor 345B|| SCL & SDA (I²C-Bus(0x53)); D4 || | | 12 || Beschleunigungs Sensor 345B|| SCL & SDA (I²C-Bus(0x53)); D4 || Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
| 13 || Echtzeituhr|| SCL & SDA (I²C-Bus( | | 13 || Echtzeituhr DS3231 mit <div style="color:darkgreen"> eingebautem EEPROM </div>|| SCL & SDA (I²C-Bus(0x0x68)) <div style="color:darkgreen"> (I²C-Bus(0x0x57) einstellbar von 0x50-0x56) </div> || Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
| 14 || RGB LED|| D12 ( Helligkeit, Ein-Aus); D5 & D7 (RGB) || | | 14 || RGB LED|| D12 ( Helligkeit, Ein-Aus); D5 & D7 (RGB) || | ||
Zeile 106: | Zeile 113: | ||
| 15 || Piezosummer|| D11 || | | 15 || Piezosummer|| D11 || | ||
|- | |- | ||
| 16 || | | 16 || Bluetooth Modul || D2 (Reset); D3 (CTS); D9 (On); D10 (RTS) || | ||
|- | |- | ||
| 17 || Beschleunigungs Sensor 345B|| SCL & SDA (I²C-Bus(0x53)) || | | 17 || Beschleunigungs Sensor 345B|| SCL & SDA (I²C-Bus(0x53)) || Infrarot Näherungssensor analog (A4, A5); Addressenkonflikt mit dem gleichen Sensor auf dem Roboter <big>→</big> auslöten oder Pin 12 auf Vcc <big>→</big> andere Adresse 0x1D oder ausschalten Pin Vss auf GND legen. | ||
|- | |- | ||
| 18 || Drehwinkel Sensor ITG3205|| SCL & SDA (I²C-Bus(0x68)) || | | 18 || Drehwinkel Sensor ITG3205|| SCL & SDA (I²C-Bus(0x68)Pin9 low) (I²C-Bus(0x69) Pin9 high)|| Infrarot Näherungssensor analog (A4, A5); Addressenkonflikt mit Realtimeclock deswegen Pin 9 auf high legen (Pin 9 und Pin 8 verbinden anschluss zum Gnd trennen) oder realtimeclock auslöten oder verbindung trennen SCL SDA. | ||
|- | |- | ||
| 19 || Magnetfeld Sensor | | 19 || Magnetfeld Sensor (HML883L alt) neu IST8310|| SCL & SDA (I²C-Bus(0x1E)alt ) (I²C-Bus(0x )neu S.6 Datenblatt )||Infrarot Näherungssensor analog (A4, A5) | ||
|- | |- | ||
|} | |} | ||
== Offene Fragestellungen == | |||
# Einbindung des AlphaBot in MATLAB, so dass man mit MATLAB programmieren und flashen kann. | |||
# Einbindung des AlphaBot in Simulink, so dass man mit Simulink programmieren und flashen kann. | |||
# Programmierung und Debugging kabellos via Bluetooth. | |||
# E04_Infrared_Remote_Control - Steuerung des AlphaBot mit der IR-Fernbedienung. | |||
# Programmierung mit [[Erste_Schritte_mit_Visual_Studio |Visual Studio]] - Bislang brauchte man eine kostenpflichtige Bibliothek <code>Visual Micro</code> (Stand 9/21), die wir nicht haben. Geht das aktuelle auch ohne? | |||
---- | ---- | ||
→ zurück zum Hauptartikel: [[ | → zurück zum Hauptartikel: [[AlphaBot|AlphaBot]] |
Aktuelle Version vom 22. Mai 2022, 08:17 Uhr
Autoren: Prof. Dr.-Ing. Schneider, Marc Ebmeyer
Checkout URL: https://svn.hshl.de/svn/Informatikpraktikum_1/trunk/AlphaBot/AlphaBot_Demo/arduino/AlphaBot/examples/
Ziel: c:\Users\<Benutzer>\Documents\Arduino\libraries\AlphaBot\examples\
# | Name | Status | Prüfer | Hinweis |
---|---|---|---|---|
1 | E01_Run_Test | IO | Schneider, Ebmeyer | |
2 | E02_Infrared_Obstacle_Avoidance | IO | Schneider | |
3 | E03_Infrared_Tracking_Objects | IO | Schneider | |
4 | E04_Infrared_Remote_Control | IR Sendet, Demo läuft nicht | Schneider | |
5 | E05_Ultrasonic_Ranging | IO | Schneider | |
6 | E06_Ultrasonic_Obstacle_Avoidance1 | nicht getestet | Ebmeyer | |
7 | E07_Ultrasonic_Obstacle_Avoidance2 | nicht getestet | Ebmeyer | |
8 | E08_Infrared_Line_Tracking | lauft | Posner, Steffen | Video Kalibrierung beachten! Zuerst auf einen hellen und dann einem dunklen Untergrund stellen. Anschließend folgt der Roboter dem dunklen Wert |
9 | E09_Bluetooth_Control | IO | Schneider | Läuft nur, wenn Jumper E1 (A4→AL) entfernt wurde; Jumper 2 auf RXD TX; WS BLE herunterladen; Scan; Remote Control; Befehle ändern z.B. {"Car":"Forward"} {"Car":"Brake"} für den Direction key Beispielvideo Manual |
10 | E10_Zigbee_Control | nicht verbaut | ||
11 | E11_mjpg-AlphaBot | Funktion unklar | Ebmeyer | |
12 | E12_mjpg-AlphaBot-PID | Funktion unklar | Ebmeyer | |
13 | E13_Photo_Interrupter_Sensor | IO | Schneider | |
14 | E14_Wheel_Encoders | IO | Schneider | |
15 | E15_Wheel_Encoders_Drive | IO | Schneider | |
16 | E16_ADC | IO | Schneider | |
17 | E17_ADXL345_Accelerometer | IO | Schneider | Läuft nur, wenn Jumper E1 (A4→AL) entfernt wurde. |
18 | E18_Beep | IO | Schneider | |
19 | E19_DS3231_RealTimeClock | IO | Schneider | |
20 | E20_Joystick | IO | Schneider | |
21 | E21_LM75_DigitalTemperatureSensor | IO | Schneider | Läuft nur, wenn Jumper E1 (A4→AL) entfernt wurde. |
22 | E22_OLED_Display | IO | Schneider | Läuft nur, wenn Jumper E1 (A4→AL) entfernt wurde. |
23 | E23_RGB_LED | IO | Schneider | |
24 | E24_Servo_Knop | IO | Schneider | |
25 | E25_Servo_Sweep | IO | Schneider | |
26 | E26_GY85_Magnet_Gyro_Beschleunigung | nicht vorhanden | ||
27 | E27_ADC_Servo_Ausgabe | IO | Schneider, Ebmeyer | |
28 | E28_IR_Line_Tracking_Sensor | IO | Schneider | Tracker Sensor Manual |
29 | E29_Run_Test_Simulink | nicht getestet | Ebmeyer | |
30 | E30_Temperature_OLED_Display | IO | Läuft nur, wenn Jumper E1 (A4→AL) entfernt wurde. |
BT mit dem PC
- Win 10: Verbindung herstellen zu Waveshare_BLE
Einstellungen für die Sensoren
# | Name | Adressen | Zu beachten eventuelle Doppelbelegung |
---|---|---|---|
1 | Motor | A0 (In_1); A1( In_2); D5 (Enable A); D6 (Enable B); A2 (In_3); A3 (In_4) | Poti (A0) |
2 | Motor-Drehzahlsensor | D2 (links); D3 (rechts) | |
3 | Infrarot Näherungssensor | A4 (analog links); A5 (analog rechts); D7 (digital links); D8 (digital rechts) | I²C-Bus (A4, A5, SCL, SDA) |
4 | Ultraschall | D11 (Triger); D12 (Echo) | Linetracker (D12, D11) |
5 | Servo | D9 (Servo_1); D10 (Servo_2) | Linetracker (D10 → Servo_2) |
6 | Linenfolge Sensor | D10 (CS); D11 (Dout); D12 (ADDR); D13 (CLK) | Ultraschall(D12, D11), Servo_2(D10) |
7 | Infrarot Fernbedienung | D4 | |
8 | OLED | SCL & SDA (I²C-Bus(0x)); D7; D8 | Infrarot Näherungssensor analog (A4, A5) |
9 | Poti | A0 | |
10 | Joystick | A1; A2; A3; A4; A5 | doppelt belegt mit Motor, Infrarot Näherungssensor analog (A4, A5) |
11 | Temperatur Sensor | SCL & SDA (I²C-Bus(0x)) | Infrarot Näherungssensor analog (A4, A5) |
12 | Beschleunigungs Sensor 345B | SCL & SDA (I²C-Bus(0x53)); D4 | Infrarot Näherungssensor analog (A4, A5) |
13 | Echtzeituhr DS3231 mit eingebautem EEPROM |
SCL & SDA (I²C-Bus(0x0x68)) (I²C-Bus(0x0x57) einstellbar von 0x50-0x56) |
Infrarot Näherungssensor analog (A4, A5) |
14 | RGB LED | D12 ( Helligkeit, Ein-Aus); D5 & D7 (RGB) | |
15 | Piezosummer | D11 | |
16 | Bluetooth Modul | D2 (Reset); D3 (CTS); D9 (On); D10 (RTS) | |
17 | Beschleunigungs Sensor 345B | SCL & SDA (I²C-Bus(0x53)) | Infrarot Näherungssensor analog (A4, A5); Addressenkonflikt mit dem gleichen Sensor auf dem Roboter → auslöten oder Pin 12 auf Vcc → andere Adresse 0x1D oder ausschalten Pin Vss auf GND legen. |
18 | Drehwinkel Sensor ITG3205 | SCL & SDA (I²C-Bus(0x68)Pin9 low) (I²C-Bus(0x69) Pin9 high) | Infrarot Näherungssensor analog (A4, A5); Addressenkonflikt mit Realtimeclock deswegen Pin 9 auf high legen (Pin 9 und Pin 8 verbinden anschluss zum Gnd trennen) oder realtimeclock auslöten oder verbindung trennen SCL SDA. |
19 | Magnetfeld Sensor (HML883L alt) neu IST8310 | SCL & SDA (I²C-Bus(0x1E)alt ) (I²C-Bus(0x )neu S.6 Datenblatt ) | Infrarot Näherungssensor analog (A4, A5) |
Offene Fragestellungen
- Einbindung des AlphaBot in MATLAB, so dass man mit MATLAB programmieren und flashen kann.
- Einbindung des AlphaBot in Simulink, so dass man mit Simulink programmieren und flashen kann.
- Programmierung und Debugging kabellos via Bluetooth.
- E04_Infrared_Remote_Control - Steuerung des AlphaBot mit der IR-Fernbedienung.
- Programmierung mit Visual Studio - Bislang brauchte man eine kostenpflichtige Bibliothek
Visual Micro
(Stand 9/21), die wir nicht haben. Geht das aktuelle auch ohne?
→ zurück zum Hauptartikel: AlphaBot