TobyLorenz
New member
Ich wollte mal etwas frustriert den Stand meines Ardumowers präsentieren.
Gekauft habe ich die Teile als Winterprojekt, damit der Roboter im Frühling dann einsatzbereit ist. Leider hat es bisher noch immer nicht geklappt.
Man muss dazu sagen, dass ich immer mal wieder sporadisch daran weiter arbeite und nicht viele Möglichkeiten habe, die Elektronik zu diagnostizieren. Kein Oszi oder so. Deswegen versuche ich rein über die Software raus zu bekommen, was alles nicht geht. Nach meinem Empfinden macht die Software für eine reine Inbetriebnahme aber schon viel zu viel. Deswegen habe ich mir eine eigene Inbetriebnahmesoftware geschrieben.
Ergebnis:
- ESP8266 WiFi und HC-05 Bluetooth haben noch nie funktioniert.
- Die GY-80 IMU geht nur teilweise: BMP180, ADXL345 und L3G4200D gehen. Der HMC5883L Kompass geht nicht. Schon kaputt?
- Die TinyRTC (DS1307 und AT24C32) geht, wobei der Zeitabgleich natürlich noch nicht geklappt hat.
- GPS geht nicht. Zumindest hat das Modul mal geleuchtet. Dann habe ich gelesen, dass man die TX/RX Pins verdrehen muss. Seither leuchten die LEDs gar nicht mehr. Wieso gibt es nicht schon längst eine PCB 1.4, die den Fehler korrigiert?
Natürlich könnte ich jetzt einfach alle nicht funktionierenden Module (GPS, Bluetooth, WLAN, IMU) neu bestellen. Aber ob dass das Problem löst, weiß ich nicht.
Mechanisch stellen sich immer wieder Fragen:
- Wie sind denn die Perimetersensoren gedacht? Kann ja nicht sein, dass man die Platinen außen drauf klebt. Was wenn da mal Feuchtigkeit dran kommt?
- Etwas umständlich ist schon, dass man zum Flashen/Monitoren jedes Mal den Deckel aufschrauben muss. Die Adern sind so kurz, dass man den Deckel auch nicht sinnvoll daneben stellen kann. Wieso ist da nicht standardmäßig eine externe USB-Buchse im Bausatz dabei?
Beruflich bin ich Softwarearchitekt/-programmierer. Mit der Arduino IDE arbeite ich erstmals und wirklich toll ist die nicht, wenn man mal QtCreator, Visual Studio oder etwas vergleichbares benutzt hat. Auch fehlt der Arduino-Umgebung einfach massiv normale C++ Unterstützung. Wieso gibt es keine std::string Klasse, dafür aber eine stark limitierte String Klasse. Gleiches mit Console/Serial oder ähnliches. Wieso kann Arduino nicht einfach eine normale std::stream Klasse nutzen? Kurzum: Wieso wurde das Projekt nicht einfach mit einer richtigen Linux-basierten Hardware (Raspberry Pi oder ähnlich) gemacht? Da könnte man Web-Server zur Bedienung drauf bringen, die Sensoren/Aktoren über MQTT (wie auch bei IoT üblich) anbinden oder sogar ROS direkt darauf laufen lassen und von allen vorhandenen Bibliotheken (Sensor Fusion, SLAM) profitieren. Ich hätte Lust den Arduino raus zu schmeißen und alles mit Raspberry und ROS neu aufzubauen. Aber dann bin ich wahrscheinlich nächstes Jahr noch nicht fertig.
Gibt es jemanden, dem ich den ganzen Kram schicken kann und der mir das fertig baut? Ich überlege schon, mir übergangsweise einen richtigen Rasenmähroboter (Husqvarna oder so) zu kaufen, wobei dann die Motivation den Ardumower fertig zu bauen weg ist.
Soweit so gut...
Gekauft habe ich die Teile als Winterprojekt, damit der Roboter im Frühling dann einsatzbereit ist. Leider hat es bisher noch immer nicht geklappt.
Man muss dazu sagen, dass ich immer mal wieder sporadisch daran weiter arbeite und nicht viele Möglichkeiten habe, die Elektronik zu diagnostizieren. Kein Oszi oder so. Deswegen versuche ich rein über die Software raus zu bekommen, was alles nicht geht. Nach meinem Empfinden macht die Software für eine reine Inbetriebnahme aber schon viel zu viel. Deswegen habe ich mir eine eigene Inbetriebnahmesoftware geschrieben.
Ergebnis:
- ESP8266 WiFi und HC-05 Bluetooth haben noch nie funktioniert.
- Die GY-80 IMU geht nur teilweise: BMP180, ADXL345 und L3G4200D gehen. Der HMC5883L Kompass geht nicht. Schon kaputt?
- Die TinyRTC (DS1307 und AT24C32) geht, wobei der Zeitabgleich natürlich noch nicht geklappt hat.
- GPS geht nicht. Zumindest hat das Modul mal geleuchtet. Dann habe ich gelesen, dass man die TX/RX Pins verdrehen muss. Seither leuchten die LEDs gar nicht mehr. Wieso gibt es nicht schon längst eine PCB 1.4, die den Fehler korrigiert?
Natürlich könnte ich jetzt einfach alle nicht funktionierenden Module (GPS, Bluetooth, WLAN, IMU) neu bestellen. Aber ob dass das Problem löst, weiß ich nicht.
Mechanisch stellen sich immer wieder Fragen:
- Wie sind denn die Perimetersensoren gedacht? Kann ja nicht sein, dass man die Platinen außen drauf klebt. Was wenn da mal Feuchtigkeit dran kommt?
- Etwas umständlich ist schon, dass man zum Flashen/Monitoren jedes Mal den Deckel aufschrauben muss. Die Adern sind so kurz, dass man den Deckel auch nicht sinnvoll daneben stellen kann. Wieso ist da nicht standardmäßig eine externe USB-Buchse im Bausatz dabei?
Beruflich bin ich Softwarearchitekt/-programmierer. Mit der Arduino IDE arbeite ich erstmals und wirklich toll ist die nicht, wenn man mal QtCreator, Visual Studio oder etwas vergleichbares benutzt hat. Auch fehlt der Arduino-Umgebung einfach massiv normale C++ Unterstützung. Wieso gibt es keine std::string Klasse, dafür aber eine stark limitierte String Klasse. Gleiches mit Console/Serial oder ähnliches. Wieso kann Arduino nicht einfach eine normale std::stream Klasse nutzen? Kurzum: Wieso wurde das Projekt nicht einfach mit einer richtigen Linux-basierten Hardware (Raspberry Pi oder ähnlich) gemacht? Da könnte man Web-Server zur Bedienung drauf bringen, die Sensoren/Aktoren über MQTT (wie auch bei IoT üblich) anbinden oder sogar ROS direkt darauf laufen lassen und von allen vorhandenen Bibliotheken (Sensor Fusion, SLAM) profitieren. Ich hätte Lust den Arduino raus zu schmeißen und alles mit Raspberry und ROS neu aufzubauen. Aber dann bin ich wahrscheinlich nächstes Jahr noch nicht fertig.
Gibt es jemanden, dem ich den ganzen Kram schicken kann und der mir das fertig baut? Ich überlege schon, mir übergangsweise einen richtigen Rasenmähroboter (Husqvarna oder so) zu kaufen, wobei dann die Motivation den Ardumower fertig zu bauen weg ist.
Soweit so gut...