Fehlerbehebung: Unterschied zwischen den Versionen

Aus www.wiki.ardumower.de
Wechseln zu: Navigation, Suche
(Keine Verbindung über Bluetooth)
(Console output)
Zeile 78: Zeile 78:
 
* Überprüfe, dass der Arduino Mega nicht über USB mit Strom versorgt wird.
 
* Überprüfe, dass der Arduino Mega nicht über USB mit Strom versorgt wird.
  
=Console output=
+
=Konsolen-Ausgabe=
  
When the robot starts, it outputs something like this in the serial console:
+
Beim Start des Roboters wird über die serielle Konsole beispielsweise folgendes ausgegeben:
 
   START  
 
   START  
 
   Ardumower rXXXX
 
   Ardumower rXXXX
 
   press...
 
   press...
     d for menu
+
     d zum Menü
     v to change console output (sensor counters, values, perimeter etc.)
+
     v um Konsolenausgabe zu ändern (Sensor-Zähler, Werte, Perimeter usw.)
  
  
Zeile 93: Zeile 93:
  
  
Once a sensor triggers, its counter increases.  
+
Wenn ein Sensor auslöst, wird sein Zähler erhöht.  
Example (mower motor current overflow triggered):
+
Beispiel (Mähmotor-Überstromsensor löst aus):
  
 
  t    4 l177 v0 FORW spd  33  33    0 sen    0    0    0 bum    0    0 dro    0    0 son  0 yaw  0 pit  0 rol  0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower
 
  t    4 l177 v0 FORW spd  33  33    0 sen    0    0    0 bum    0    0 dro    0    0 son  0 yaw  0 pit  0 rol  0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower
Zeile 100: Zeile 100:
  
  
Here is a description of each column:
+
Hier ist eine  Beschreibung jeder Spalte:
  
  t - time of current machine state (ms)
+
  t - Zeit des akt. Maschinenzustands (ms)
  l - loop () - cycles per second
+
  l - Programmschleifen-Durchläufe/sek
  v - Verbose mode selected sensor (0 = counts / 1 = sensor values ​​/ 2 = sensor values​​)  
+
  v - Anzeige-Modus des ausgewählten Sensors (0 = Zähler / 1 = Sensorwerte ​​/ 2 = Sensorwerte​​)  
  - Current machine status (FORW, REV, ROLL etc.)  
+
  - aktueller Status (FORW, REV, ROLL usw.)  
  - After-home-drive? (1/0)  
+
  - Nachhause-Fahrt? (1/0)  
  spd - control / speed motor: left (PWM), right (PWM), mower (speed)  
+
  spd - Steuerung / Drehzahl der Motoren: links (PWM), rechts (PWM), Mähmotor (speed)  
  sen - motor current overflow counterleft, right, mower
+
  sen - Motor-Überstromzählerlinks, rechts, Mähmotor
  bum - bumper counter: left, right
+
  bum - Bumperzähler: links, rechts
  son - ultrasonic distance-below: counter
+
  son - Ultraschall- Distanz-Unterschreitung: Zähler
  pit, roll - inclination (calculated with Accel sensor)  
+
  pit, roll - inclination (berechnet mit Beschleunigungssensor)  
  yaw - compass course
+
  yaw - Kompass-Kurs
  bat - battery voltage
+
  bat - Akkuspannung
  chg - charger voltage sensor
+
  chg - Ladespannung
  
  
  
'''--- commands ---
+
'''---Befehle---
 
'''
 
'''
  
  'd': menu for testing, adjust IMU, Bluetooth
+
  'd': Testmenü, Abgleich IMU, Bluetooth
  'v': monitorMode (show Value not Counter
+
  'v': Anzeigemodus(zeigt Werte oder Zähler
  'h': drive home
+
  'h': Fahr zur Ladestation
  'p': track perimeter
+
  'p': Schleifenfahrt
  'l': simulate left bumper
+
  'l': simuliert linken Bumper
  'r': simulate right bumper
+
  'r': simuliert rechten Bumper
  's': simulate lawn sensor
+
  's': simuliert Rasensensor
  'm': toggle mower motor
+
  'm': schaltet Mähmotor
  'c': simulate charging
+
  'c': simuliert Laden
  '+': rotate 90 degrees
+
  '+': drehen 90 Grad
  '-': rotate 90 degrees
+
  '-': drehen 90 Grad
  '3': activate model RC
+
  '3': aktiviert Fernsteuerung
  '0': OFF
+
  '0': Aus
 
  '1': Automode motorMowEnable
 
  '1': Automode motorMowEnable
  

Version vom 9. Juli 2015, 12:18 Uhr

Fehlersuche

Fehlercodes

wenn dein Ardumower periodisch piepst, ist er in einem Fehler-Status. Um den genauen Fehler zu finden, kann man die serielle Konsole oder die APP ('pfodApp->Error Counters') benutzen.

 ERR_MOTOR_LEFT          Fehler  linker Getriebemotor
                         * Überprüfe Motortreiber und linken Getriebemotor
                         * MC33926: stelle sicher, dass der SLEW Jumper nicht gesteckt ist
                         * beim Fahren: veringere 'Motor-Max-PWM' und 'Tracking-P' um EMF zu veringern
 ERR_MOTOR_RIGHT         Fehler rechter GetriebemotorRight gear motor error
                         * Überprüfe Motortreiber und rechten Getriebemotor
                         * MC33926: stelle sicher, dass der SLEW Jumper nicht gesteckt ist
                         * beim Fahren: veringere 'Motor-Max-PWM' und 'Tracking-P' um EMF zu veringern
 ERR_MOTOR_MOW           Mähmotor Fehler 
                         * Überprüfe Motortreiber und Mähmotor
                         * MC33926: stelle sicher, dass der SLEW Jumper nicht gesteckt ist
                         * Veringere Motor-Max-Power, damit Überstrom früher erkannt wird
 ERR_MOW_SENSE           Mähmotor Überstrom
                         * Überprüfe Mähmotor-Treiber und Mähmotor
                         * Vergrößere Motor-Max-Power, damit Überstrom später erkannt wird
 ERR_IMU_COMM            IMU Kommunikationsfehler
                         * Überprüfe die Verbindung zum IMU-Modul
 ERR_IMU_CALIB           IMU Abgleich-Fehler
                         * Start 'IMU calibration' (entweder über die Konsole oder über pfodApp->Settings->IMU)                     
 ERR_IMU_TILT            IMU Neigungsfehler
                         * Überprüfe IMU-Modul und Ausrichtung des Roboters
 ERR_RTC_COMM            RTC Kommunikationsfehler
                         * Überprüfe die Verbindung zum RTC-Modul, Batterie usw.
 ERR_RTC_DATA            RTC-Daten sind fehlerhaft
                         * stelle und speichere Datum und Zeit
 ERR_PERIMETER_TIMEOUT   Perimeter-Signal, Zeitüberschreitung 
                         * Überprüfe Perimeter-Sender, Schleife usw.
                         * veringere 'Perimeter-smag', damit die Auszeit größer wird
                         * Erhöhe 'Perimeter-timeout-seconds', damit die Auszeit größer wird
 ERR_TRACKING            Perimeter-Folge-Fehler 
                         * Überprüfe Perimeter-Sender, Schleife usw.
                         * Erhöhe 'Perimeter-tracking-timeout', damit die Auszeit größer wird
 ERR_ODOMETRY_LEFT       Odometrie-Fehler linker Motor 
                         * Überprüfe das linke Odometrie-Kabel
 ERR_ODOMETRY_RIGHT      Odometrie-Fehler rechter Motor 
                         * Überprüfe das rechte Odometie-Kabel
 ERR_BATTERY             Akku-Fehler 
                         * Überprüfe Akku-Verbindung
 ERR_CHARGER             Ladefehler 
                         * Überprüfe Verbindung zum Ladegerät 
 ERR_GPS_COMM            GPS Kommunikationsfehler 
                         * Überprüfe GPS-Kabel
 ERR_GPS_DATA            GPS Datenfehler 
                         * Überprüfe GPS-Antenne und -Kabel
 ERR_ADC_CALIB           ADC Abgleich-Fehler
                         * Starte 'ADC calibration' (entweder über Konsole oder pfodApp->ADC calibration)
 ERR_EEPROM_DATA         EEPROM Datenfehler 
                         * Speichere Benutzer-Einstellungen (entweder über Konsole oder pfodApp->Settings-Save)

Deaktiviere alle Pins, die nicht angeschlossen sind

Stelle sicher, dass alle Pins und Eigenschaften die nicht angeschlossen sind (nicht verwendet werden), in der Roboter-Konfiguration deaktiviert sind.

Beispiel: Wenn du die Odometrie-Pins nicht beschaltet hast, muss Odometrie in der Roboter-Konfiguration deaktiviert werden. (mower.cpp):

odometryUse       = 0;       // use odometry?

Drehen die Motoren richtig?

Führe einen Motortestlauf aus. Gehe in die serielle Konsole (Arduino IDE: STRG+SHIFT+M, 19200 Baud) drücke 'd' und ENTER um ins Menü zu gelangen. Dann drücke '1' und ENTER. Es startet der Motortest.

Unerwartete Sensorauslösung

Wenn dein Roboter etwas Unerwartetes tut, kann es ein Sensor , der fehlerhaft auslöst. Überprüfe das über die serielle Konsole:

Starte die serielle Konsole (Arduino IDE: CTRL+SHIFT+M, 19200 Baud), und schalte den Roboter ein. Jedes Mal, wenn ein Sensor auslöst, wird der Zähler dieses Sensors erhöht. Siehe Beschreibung der Sensoren weiter unten. Wenn sich also der Roboter nicht so verhält, wie er soll, dann schau dir die Sensor-Zähler an, stelle fest, welcher Zähler hochzählt, um das Problem zu lokalisieren.

Einige Sensoren lösen nicht aus?

...

Keine Verbindung über Bluetooth

  • Stelle sicher, dass die Baudrate des BT-Modules richtig eingestellt ist (verwende die Ardumower Konsole) - Aktiviere den Programmier-Modus des BT-Modules und stelle die Baudrate ein Bluetooth & App.
  • Stelle sicher, das das BT-Modul mit dem Handy "gepaart" ist
  • Überprüfe, dass der Arduino Mega nicht über USB mit Strom versorgt wird.

Konsolen-Ausgabe

Beim Start des Roboters wird über die serielle Konsole beispielsweise folgendes ausgegeben:

 START 
 Ardumower rXXXX
 press...
   d zum Menü
   v um Konsolenausgabe zu ändern (Sensor-Zähler, Werte, Perimeter usw.)


t     0 l177 v0 FORW spd   33   33    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower
t     1 l177 v0 FORW spd   33   33    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower
t     3 l177 v0 FORW spd   33   33    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower


Wenn ein Sensor auslöst, wird sein Zähler erhöht. Beispiel (Mähmotor-Überstromsensor löst aus):

t     4 l177 v0 FORW spd   33   33    0 sen    0    0    0 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 20.8 chg 21.7  0.0 imu  0 adc  0 Ardumower
t     5 l177 v0 REV  spd  -26  -26    0 sen    0    0    1 bum    0    0 dro    0    0 son   0 yaw   0 pit   0 rol   0 bat 20.8 chg 21.7  0.0 imu  0 adc  1 Ardumower


Hier ist eine Beschreibung jeder Spalte:

t - Zeit des akt. Maschinenzustands (ms)
l - Programmschleifen-Durchläufe/sek 
v - Anzeige-Modus des ausgewählten Sensors (0 = Zähler / 1 = Sensorwerte ​​/ 2 = Sensorwerte​​) 
- aktueller Status (FORW, REV, ROLL usw.) 
- Nachhause-Fahrt? (1/0) 
spd - Steuerung / Drehzahl der Motoren: links (PWM), rechts (PWM), Mähmotor (speed) 
sen - Motor-Überstromzähler:  links, rechts, Mähmotor 
bum - Bumperzähler: links, rechts 
son - Ultraschall- Distanz-Unterschreitung: Zähler 
pit, roll - inclination (berechnet mit Beschleunigungssensor) 
yaw - Kompass-Kurs
bat - Akkuspannung
chg - Ladespannung


---Befehle---

'd': Testmenü, Abgleich IMU, Bluetooth
'v': Anzeigemodus(zeigt Werte oder Zähler
'h': Fahr zur Ladestation
'p': Schleifenfahrt
'l': simuliert linken Bumper
'r': simuliert rechten Bumper
's': simuliert Rasensensor
'm': schaltet Mähmotor
'c': simuliert Laden
'+': drehen 90 Grad
'-': drehen 90 Grad 
'3': aktiviert Fernsteuerung
'0': Aus
'1': Automode motorMowEnable

How to report a new bug/new feature/new code

Click on 'this link' and create a new issue - Please let us know:

   Your platform version (Arduino Mega 2560, Arduino Due)
   Your Arduino IDE version (latest code requires 1.6.3)
   Your exact operating system (Windows 8, Linux etc.)
   Your Ardumower code version (for a list of releases see https://github.com/Ardumower/ardumower/releases)
   Any other information that may be useful...

Further links

  1. Diagnostic