Ardumower zum laufen bringen Teil 1

MarioFFK

Member
Hallo,
mein Aufbaufortschritt wie folgt:
  • Board1.4 aufgebaut mit Ardumower Brushless Adapter V1.1 - 06/21 und programmiert Stand 1.1.25
  • esp32 programmiert und mit Board1.4 verbunden
  • GPS Modul (Brücke Onboard ) mit Board1.4 verbunden
  • Bumper, IMU6050 und Sonar mit Board1.4 Verbunden
IMG_6428.jpg

IMG_6429.jpg

So aufgebaut habe ich den Ardumower an den Akku geschlossen den ESP32 am PC gehangen und in der Arduino IDE Umgebung den Seriellen Monitor geöffnet.

1737796174228.png

Ich habe schon einiges gelesen jedes mal aber hängengeblieben da meine config.h anders aussieht wie die beschrieben wurde. Wahrscheinlich weil die neuer ist.
Frage was ist denn jetzt als erstes in meine Lage zu tun und Software seitig zu testen. Welche Verbindung ist den zu prüfen.
Ich war schon im Browser um den Mower zu verbinden. Klappt nicht da ich im esp32 was einstellen muss diese aber in der config.h gar nicht (mehr ) gibt.
Ich habe mich richtig verrannt und würde mich freuen, wenn ich einen einfachen tipp bekommen würde was ich mal als erstes machen soll damit ich auf Kurs komme.
PS. Der Mower piept

VG Mario
 
Der esp32 ist im Netzwerk angemeldet
bekomme aber im Seriellen Monitor die Meldung Connection Failed!
1737797209806.png

1737797341600.png
 

Anhänge

  • 1737797186074.png
    1737797186074.png
    94,2 KB · Aufrufe: 5
Der SSID Name vom Repeater und deiner "Fritz" Box muss der gleiche sein. Auch das Password. Keine Leerzeichen oder Sonderzeichen und ich glaub nicht so lang . Nimm mal 8 Zeichen.
 
Du musst den Arduino mit dem PC verbinden und dann mit dem seriellen Monitor nachschauen, was dein Ardumower tut.
Habe ich doch wie oben beschrieben.

Also ich habe eine Einfache SSID 8stellig genommen ohne Leerzeichen was auch nicht ging.
Ich habe mich jetzt aber nicht über mein Fritzrepeater verbunden sondern mit der Fritzbox direkt.
Jetzt bekomme ich folgendes über den Seriellen Monitor:

1737828227016.png

es steht jetzt connected da.
 
weitere Ausgaben über den Seriellen Monitor erhalte ich nicht wie im vorhergehenden Beitrag zu sehen ist.
Ist denn da mehr zu erwarten oder wars das ?
 
Ich hatte noch gelesen, dass man den Bootloader von GrandCentral M4 aktualisieren sollte.
Habe ich gemacht und die txt lautet jetzt :
1737894085361.png
 
Das Dumme ist nur, dass das Board jetzt ständig in den Modus geht das im Dateibrowser das Laufwerk vom M4 angeht und die große LED auf den M4 Board grün leuchtet.
 
Du nutzt Windows, ja?
Da habe ich nicht viel Ahnung, aber du musst das Board sicher entfernen, wie bei einem USB-Stick und dann in der Arduino-IDE unter Werkzeuge das richtige Board und den Port einstellen, dann kannst du den seriellen Monitor starten und siehst, was auf dem M4 passiert (z.B. Kalibrierung IMU usw.)
 
Ja ich benutze Windoof Das Board geht halt nicht mehr aus den Bootloader modus raus. Sobald ich das USB Kabel anschließe ist das ding im Bootloadermodus und der Explorer zeigt mir sein Laufwerk an.
Hab ich das Board jetzt geschrottet?
 
Geschrottet glaube ich nicht. Es gibt doch unter Windows auch eine Funktion, um ein USB-Laufwerk sicher zu entfernen. Das musst du tun, dann kannst du auch mit der Arduino-IDE darauf zugreifen.
 
Das M4 kannst du dauerhaft mit dem kurzen USB-Kabel an die Doppel-USB-Buchse in der Rückwand anschließen, dann hast du immer Zugriff von Außen auf das Board zwecks Update oder Kontrolle und musst das Gehäuse nicht öffnen.
 
Aktueller Fortschritt
Folgende Komponenten sind angeschlossen
Akku, GPS, ESP32,Board1.4 mit M4 Board Sensoren: IMU, Sonar und Bumper

Im Anhang ist die Ausgabe vom M4 Serieller Monitor ( ist die ok?)
wie bekomme ich jetzt eine Verbindung zu Sunray Browser (fals das der nächste Schritt wäre)

das mit den "Dateien anhängen" scheint wohl nicht zu gehen.
Dann muss ich die txt so einfügen Sorry
 
Zuletzt bearbeitet:
15:05:24.385 -> no SD card found
15:05:24.385 -> RESET cause: external
15:05:24.385 -> Sunray,1.0.324
15:05:24.385 -> compiled for: Adafruit Grand Central M4
15:05:24.385 -> using robot driver: AmRobotDriver
15:05:24.385 -> robot id: 5b:cd:5a:24:53:38:57:57:51:20:20:20:ff:08:1d:26
15:05:24.385 -> MOTOR_DRIVER_BRUSHLESS: no
15:05:24.385 -> enableCharging 0
15:05:24.385 -> probing for HM-10 module (NOTE: will fail for ESP32)...
15:05:24.385 -> trying to detect Bluetooth 4.0/BLE (HM-10 module) (make sure your phone is NOT connected)9600...
15:05:24.849 -> BLE: AT
15:05:26.854 -> trying to detect Bluetooth 4.0/BLE (HM-10 module) (make sure your phone is NOT connected)115200...
15:05:27.361 -> BLE: AT
15:05:29.339 -> error: no BLE module found!
15:05:29.339 -> RCModel disabled in config
15:05:29.339 -> using bumper driver: LiDAR
15:05:29.339 -> ENABLE_PASS
15:05:29.339 -> ENABLE_TILT_DETECTION
15:05:29.339 -> FREEWHEEL_IS_AT_BACKSIDE: 1
15:05:29.374 -> WHEEL_BASE_CM: 36
15:05:29.374 -> WHEEL_DIAMETER: 250
15:05:29.374 -> ENABLE_ODOMETRY_ERROR_DETECTION: 0
15:05:29.374 -> TICKS_PER_REVOLUTION: 650
15:05:29.374 -> MOTOR_FAULT_CURRENT: 6.00
15:05:29.374 -> MOTOR_OVERLOAD_CURRENT: 1.00
15:05:29.374 -> USE_LINEAR_SPEED_RAMP: 0
15:05:29.374 -> MOTOR_PID_KP: 2.00
15:05:29.374 -> MOTOR_PID_KI: 0.03
15:05:29.374 -> MOTOR_PID_KD: 0.03
15:05:29.374 -> MOW_FAULT_CURRENT: 8.00
15:05:29.374 -> MOW_OVERLOAD_CURRENT: 2.00
15:05:29.374 -> ENABLE_OVERLOAD_DETECTION: 1
15:05:29.374 -> ENABLE_FAULT_DETECTION: 1
15:05:29.374 -> ENABLE_FAULT_OBSTACLE_AVOIDANCE: 1
15:05:29.374 -> ENABLE_RPM_FAULT_DETECTION: 1
15:05:29.374 -> SONAR_INSTALLED
15:05:29.374 -> SONAR_ENABLE: 0
15:05:29.374 -> SONAR_TRIGGER_OBSTACLES: 1
15:05:29.374 -> RAIN_ENABLE: 0
15:05:29.374 -> BUMPER_ENABLE: 0
15:05:29.374 -> BUMPER_DEADTIME: 1000
15:05:29.374 -> BUMPER_TRIGGER_DELAY: 0
15:05:29.374 -> BUMPER_MAX_TRIGGER_TIME: 30
15:05:29.374 -> LIDAR_BUMPER_ENABLE: 0
15:05:29.374 -> CURRENT_FACTOR: 0.50
15:05:29.374 -> GO_HOME_VOLTAGE: 21.50
15:05:29.374 -> BAT_FULL_VOLTAGE: 28.70
15:05:29.374 -> BAT_FULL_CURRENT: 0.20
15:05:29.374 -> BAT_SWITCH_OFF_IDLE: 0
15:05:29.374 -> BAT_SWITCH_OFF_UNDERVOLTAGE: 1
15:05:29.374 -> REQUIRE_VALID_GPS: 1
15:05:29.374 -> GPS_SPEED_DETECTION: 1
15:05:29.374 -> GPS_MOTION_DETECTION: 1
15:05:29.374 -> GPS_REBOOT_RECOVERY: 1
15:05:29.374 -> GPS_CONFIG: 1
15:05:29.374 -> GPS_CONFIG_FILTER: 1
15:05:29.374 -> CPG_CONFIG_FILTER_MINELEV: 10
15:05:29.374 -> CPG_CONFIG_FILTER_NCNOTHRS: 10
15:05:29.374 -> CPG_CONFIG_FILTER_CNOTHRS: 30
15:05:29.374 -> ALLOW_ROUTE_OUTSIDE_PERI_METER: 1.00
15:05:29.374 -> OBSTACLE_DETECTION_ROTATION: 0
15:05:29.374 -> KIDNAP_DETECT: 1
15:05:29.374 -> KIDNAP_DETECT_ALLOWED_PATH_TOLERANCE: 1.00
15:05:29.374 -> DOCKING_STATION: 1
15:05:29.374 -> DOCK_IGNORE_GPS: 0
15:05:29.374 -> DOCK_AUTO_START: 1
15:05:29.374 -> TARGET_REACHED_TOLERANCE: 0.10
15:05:29.374 -> STANLEY_CONTROL_P_NORMAL: 3.00
15:05:29.374 -> STANLEY_CONTROL_K_NORMAL: 1.00
15:05:29.375 -> STANLEY_CONTROL_P_SLOW: 3.00
15:05:29.375 -> STANLEY_CONTROL_K_SLOW: 0.10
15:05:29.375 -> BUTTON_CONTROL: 1
15:05:29.375 -> USE_TEMP_SENSOR: 0
15:05:29.375 -> BUZZER_ENABLE
15:05:29.375 -> SERIAL_BUFFER_SIZE=1024 (increase if you experience GPS checksum errors)
15:05:29.375 -> -----------------------------------------------------
15:05:29.375 -> UBLOX::begin serial
15:05:29.375 -> using gps driver: UBLOX
15:05:29.375 -> sizeof(short):2
15:05:29.375 -> sizeof(int):4
15:05:29.375 -> sizeof(long):4
15:05:29.375 -> sizeof(long long):8
15:05:29.375 -> sizeof(int16_t):2
15:05:29.375 -> sizeof(int32_t):4
15:05:29.375 -> sizeof(int64_t):8
15:05:29.375 -> ublox UBX-NAV-RELPOSNED decode test: relPosE=-7.52 TEST SUCCEEDED
15:05:29.375 -> ublox UBX-NAV-HPPOSLLH decode test: lat=52.26748477 TEST SUCCEEDED
15:05:29.375 -> trying to connect to ublox f9p...
15:05:29.375 -> NOTE: if GPS is not responding either set 'GPS_CONFIG=false' in config.h or perform GPS wire fix (see Wiki)
15:05:29.375 -> trying baud 115200
15:05:29.375 -> GPS receiver found!
15:05:29.375 -> ublox f9p: sending GPS rover configuration...
15:05:29.375 -> idx=0...OK
15:05:29.375 -> idx=1...OK
15:05:29.408 -> idx=2...OK
15:05:29.408 -> config sent successfully
15:05:29.408 -> Map::begin
15:05:29.408 -> sizeof Point=4
15:05:29.448 -> map load... no map file!
15:05:29.448 -> map dump - mapCRC=0
15:05:29.448 -> points:
15:05:29.448 -> perimeter pts: 0
15:05:29.448 -> exclusion pts: 0
15:05:29.448 -> exclusions: 0
15:05:29.448 -> dock pts: 0
15:05:29.448 -> mow pts: 0
15:05:29.448 -> free pts: 0
15:05:29.448 -> mowPointsIdx=0 dockPointsIdx=0 freePointsIdx=0 wayMode=3
15:05:29.448 -> probing for ESP8266 (NOTE: will fail for ESP32)...
15:05:29.908 -> WIFI (ESP8266) not found! If you have ESP8266 and the problem persist, you may need to flash your ESP to firmware 2.2.168
15:05:29.949 -> MPU6050/9150 found
15:05:29.949 -> using imu driver: MpuDriver
15:05:31.273 -> resuming is activated
15:05:31.273 -> state load... no state file!
15:05:31.273 -> ERROR motor current too high: current=6.34,6.33,6.33
15:05:31.273 -> dumpState: X=0.00 Y=0.00 delta=0.00 mapCRC=0 mowPointsIdx=0 dockPointsIdx=0 freePointsIdx=0 wayMode=3 op=0 sensor=0 sonar.enabled=0 fixTimeout=0 absolutePosSource=0 lon=0.00 lat=0.00 pwmMaxMow=255 finishAndRestart=0 motorMowForwardSet=1
15:05:31.273 -> save state... ERROR opening file for writing
15:05:31.400 -> batTemp=998 cpuTemp=34
15:05:31.400 -> GPS time (UTC): dayOfWeek=sun hour=0
15:05:31.400 -> AUTOSTOP: timetable is disabled
15:05:31.400 -> AUTOSTART: not docked automatically (use DOCK command first)
15:05:31.400 -> ==> changeOp:ImuCalibration(initiatedByOperator 0)->Idle
15:05:31.400 -> IMU gyro calibration (robot must be static)... 1
15:05:31.400 -> 0:0:8 ctlDur=0.00 op=ImuCalibration(initiatedByOperator 0)->Idle freem=238363 sp=20000098 bat=0.00,0.000(0.09) chg=0.00,0(0.00) diff=0.000 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=371400 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=8.54
15:05:31.760 -> ublox chka error, msgclass=1, msgid=B5, msglen=162: FF!=40
15:05:32.294 -> motor fault recover counter 1
15:05:32.371 -> ERROR motor current too high: current=6.32,6.32,6.34
15:05:32.371 -> IMU gyro calibration (robot must be static)... 2
15:05:32.865 -> WARNING - LoopTime: 3 min=2 mean=3.40 max=8540
15:05:33.116 -> ERROR motor overload (average current too high) - duration=0 avg current amps (left,right,mow)=1.02,1.02,1.02
15:05:33.276 -> charger conn=0 chgEnabled=0 chgTime=0 charger: 0.02 V 0.00 A bat: 28.45 V diffV=-0.28 slope(v/min)=0.00 slopeLowCounter=1
15:05:33.398 -> IMU gyro calibration (robot must be static)... 3
15:05:33.398 -> motor fault recover counter 2
15:05:33.436 -> ERROR motor current too high: current=6.34,6.31,6.33
15:05:34.389 -> IMU gyro calibration (robot must be static)... 4
15:05:34.507 -> motor fault recover counter 3
15:05:34.553 -> ERROR motor current too high: current=6.35,6.33,6.34
15:05:35.441 -> IMU gyro calibration (robot must be static)... 5
15:05:35.580 -> motor fault recover counter 4
15:05:35.628 -> ERROR motor current too high: current=6.35,6.31,6.35
15:05:36.372 -> 0:0:13 ctlDur=0.02 op=ImuCalibration(initiatedByOperator 0)->Idle freem=238363 sp=200018C4 bat=28.44,0.000(7.37) chg=0.20,0(0.00) diff=-12.955 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=376800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=13.54
15:05:36.416 -> IMU gyro calibration (robot must be static)... 6
15:05:36.681 -> motor fault recover counter 5
15:05:36.727 -> ERROR motor current too high: current=6.34,6.32,6.32
15:05:37.454 -> IMU gyro calibration (robot must be static)... 7
15:05:37.728 -> motor fault recover counter 6
15:05:37.810 -> ERROR motor current too high: current=6.33,6.32,6.34
15:05:38.458 -> IMU gyro calibration (robot must be static)... 8
15:05:38.832 -> motor fault recover counter 7
15:05:38.868 -> ERROR motor current too high: current=6.34,6.33,6.33
15:05:39.469 -> IMU gyro calibration (robot must be static)... 9
15:05:39.938 -> motor fault recover counter 8
15:05:39.970 -> ERROR motor current too high: current=6.34,6.31,6.33
15:05:40.482 -> IMU gyro calibration (robot must be static)... 10
15:05:40.991 -> motor fault recover counter 9
15:05:41.058 -> ERROR motor current too high: current=6.34,6.33,6.34
15:05:41.384 -> 0:0:18 ctlDur=0.02 op=ImuCalibration(initiatedByOperator 0)->Idle freem=238363 sp=200018C4 bat=28.42,-0.000(11.81) chg=0.22,0(0.00) diff=-22.403 tg=0.00,0.00 x=0.00 y=0.00 delta=0.00 tow=381800 lon=0.00000000 lat=0.00000000 h=0.0 n=0.00 e=0.00 d=0.00 sol=0 age=18.55
15:05:41.468 -> IMU gyro calibration (robot must be static)... 11
15:05:42.116 -> motor fault recover counter 10
15:05:42.116 -> ERROR: motor recovery failed
15:05:42.163 -> ERROR motor current too high: current=6.34,6.32,6.33
15:05:42.478 -> IMU gyro calibration (robot must be static)... 12
15:05:42.805 -> Info - LoopTime(ms) now=2 min=2 mean=2.88 max=7
15:05:43.211 -> motor fault recover counter 1
15:05:43.258 -> ERROR motor current too high: current=6.34,6.32,6.32
15:05:43.488 -> IMU gyro calibration (robot must be static)... 13
 
Ob die Ausgaben im seriellen Monitor so alle OK sind, kann ich so auf die Schnelle nicht sagen. Ich habe z.Z. auch keine Vergleichsmöglichkeiten, aber es sind ja schon einmal Ausgaben da, d.h. der Arduino arbeitet, GPS-Receiver und IMU werden erkannt. Das sieht schon mal gut aus.
Was mir aufgefallen ist, du hast doch brushless-Motoren, im Log steht: MOTOR_DRIVER_BRUSHLESS: no
Motor ERROR sind auch da, kann ich mir jetzt nicht erklären, der Mower fährt oder mäht doch sicher nicht.
Wenn du die Sunray-App verwenden willst, brauchst du nach meinem Wissen zwingend eine SD-Karte im Mäher für die Mähkarte, mit Cassandra wohl nicht.
Sunray kannst du im Browser starten mit 'http//grauonline.de/am', das funktioniert dann genauso, wie mit der Viewer-App, die es wohl nicht mehr gibt. Du kannst nur nicht über Bluetooth auf dem Mower zugreifen, sondern nur über http. Ansonsten kann ich dir Cassandra wärmstens empfehlen, nutze ich seit fast 2 Jahren, ist komfortabler und für meine Begriffe auch schöner. Brauchst halt nur noch einen RaspberryPi zusätzlich.
 
Oben