ArduMower Brushless Drive

Woher weißt du die Übersetzung?
ChatGPT hat die Marotronics Seite wohl noch gecached, da steht:
  • Leerlaufdrehzahl (ohne Getriebe): 5040 U/min bei 30 V
  • Getriebeuntersetzung: 1:212,33

Das sind ca. 24U/Min, kommt mit jedenfalls realistisch vor.
Ich habe es im thread von Algo nachgelesen, und als ich vor 2 Jahren neue gesucht hatte war mir auch so. 24 u/min wäre zu langsam, damit ist deine Höchstgeschwindigkeit wahrscheinlich 20cm/s
 
Ich habe es im thread von Algo nachgelesen, und als ich vor 2 Jahren neue gesucht hatte war mir auch so. 24 u/min wäre zu langsam, damit ist deine Höchstgeschwindigkeit wahrscheinlich 20cm/s
Exactly.
0.2m/s is not OK .
For me minimum is 0.4m/s
For a 20 cm wheel diameter 0.4m/s is 38 RPM.
So if you have a 5000 RPM motor ,you need a gear ratio of 1:131

Finally the best selection is BL motor running between 3000 and 5000 RPM and gear ratio at 1:100.
For the 20 cm wheel speed is between 0.3 and 0.5 m/s

If you use a too low gear ration 1:30 for example with ZS-X11 driver: sunray can't control the speed of the inner wheel when roll and trajectory fail , motor stop and generate a pause on the movement.
 
I think the Goal of max Speed when going to dock for example, 60 cm per second is ideal. And you get that with the Standard Gear Ratio of 1:100 with a Standard 3 pole 24 Volt brushlessmotor. Its a good choice decision from orig Hardware. Has enought Torque to dig itself in and to overcome obstacles, while maintaining enough space for precise slow movements
 
Ich hab jetzt den hier eingebaut:
in kombination mit dem ZS-X11D1 Treiber.
Ich bin mir nicht sicher ob sich 2 von denen ausgehen, weil der deutlich länger als der Originale Motor ist. Könnte sich haarscharf ausgehen, hatte aber zu wenig Zeit das auszuprobieren.
Jedenfalls fährt mein Ardumower jetzt wieder 👏. Was mich wundert ist, dass er geradeaus fährt ohne dass ich mich mit der Firmware/ODO-Kalibierung spielen musste. Hatte ich glück dass der Motor die gleiche Drehzahl hat, oder gleicht Sunray das aus - falls ja, wie funkioniert das?
Durch das Odo-Signal weiß die Firmware ja wieviele Umdrehungen der Motor macht. Passt es dann die Spannung des PWM an, so dass beide Motoren gleich sind?
 
Wenn das Getriebe in der Nähe der originalen Übersetzung ist, und dein Rad Umfang passt, wird das alles über Odo berechnet und auch ausgeglichen. Für Drehungen ist es wichtig das es so genau wie möglich hinhaut. Die Nenndrehzahl des Motors ist irrelevant.
 
Guten Abend,
den Umbau auf Brushless habe ich mit den Brushless Adapter V1.1 und die Motor Driver V1.1 sowie die Motoren aus dem Shop mittlerweile vorgenommen. Ich kam erst jetzt dazu. Bei den ersten Tests in der Werkstatt haben beide Antriebe und auch der Mähmotor funktioniert. Draußen ist mir dann aufgefallen, dass die DRV8308 auf den Treiberplatinen sehr heiß werden. Ein DRV8308 vom linken Antrieb ist nun abgeraucht.
Woran kann das liegen? Was kann ich nun, nachdem der Shop nicht mehr verfügbar ist, einsetzen?
 
Das ist sehr schade, ich finde die Treiber gut... Habe aber die Adapter Platine 1.0 und die ersten Treiber. Laufen seit 5 Jahren, außer mowtreiber. Du musst ins saure Gras beißen und das Forum durchsuchen für zb. Jyqd Antriebstreiber.

In der config.h kannst du auch sehen, welche Treiber noch so funktionieren können bzw. Implementiert sind.

Mögliche Ursache ist zb. Ein verbauter fakechip, marotronics kann dafür nichts. Kleinserie.
 
Zuletzt bearbeitet:
Das ist sehr schade, ich finde die Treiber gut... Habe aber die Adapter Platine 1.0 und die ersten Treiber. Laufen seit 5 Jahren, außer mowtreiber. Du musst ins saure Gras beißen und das Forum durchsuchen für zb. Jyqd Antriebstreiber.

In der config.h kannst du auch sehen, welche Treiber noch so funktionieren können bzw. Implementiert sind.

Mögliche Ursache ist zb. Ein verbauter fakechip, marotronics kann dafür nichts. Kleinserie.
HI.
I follow your work and see also many people with driver motor issue.
As you understand sunray code maybe you check if i am not wrong.


into robot.cpp
Code:
 if (ENABLE_OVERLOAD_DETECTION)
  {
    //bber800
    if (motor.motorOverloadDuration > 2000) //20000 in the master but too dangerous for driver
    {
      // one motor is taking too much current over a long time (too high gras etc.) and we should stop mowing
      CONSOLE.println("overload!");
      activeOp->onMotorOverload();
      return;
    }

into some version motor can be in overload for 20 second , i have reduce this to 2 second in my code .
In 20 second driver can burn !!!
 
Actually, thanks bernard for mentioning. What max amps is safe for this driver? clearly, the 2,5 fuses never came but alot of drivers burned anyway. It was probably to late for my mow driver, and it did get abused quite alot (2years) until it died, but after that, i added heatsinks to all chips on the drive drivers and they are fine for 5 years, but have the stuck bug if the rotor idles for longer times.

Another thing is, that the motorcurrent in original sunray sense runs through a LP filter, so the 2 secs you define in config is way off because the lpf is slow to follow. And so it might already have a overcurrent way beyond 2 seconds.

For the jyqd driver i now have installed i have a cheap adjustable voltage current regulator before the driver, so if it wants to suck more than adjusted shorting amps on laboratory powersource... it will just start to drop voltage and thus limits power while keeping a constant voltage for the driver if battery input drops due to battery drainage. until now, works really good.

Despite, i am messing with a first alfred just now, and there is some hardware software issues as well regarding current. the orig error current is 8 Amps, just for mow!
So basically, if this is true and its going thru the LP filter, you will have burning wires inside the mower with that amps on 30 volts. i know this because i have a trex helicopter and used to recharge the battery through a car 12 volt plug with thicker wires and 8 amps 19 volts voltcraft charger. the 12 volt cigarette adapterplug starts to melt after 15 minutes. so i startet opening the hood and plug it to the battery directly on the field. the wires still get warm.

I just realized, because the lpf filters do not count for actual iteration time in code, every deviation in iteration times will give you false readings because its assumed to be a constant iteration time. thats flawed.
 
Zuletzt bearbeitet:
Actually, thanks bernard for mentioning. What max amps is safe for this driver? clearly, the 2,5 fuses never came but alot of drivers burned anyway. It was probably to late for my mow driver, and it did get abused quite alot (2years) until it died, but after that, i added heatsinks to all chips on the drive drivers and they are fine for 5 years, but have the stuck bug if the rotor idles for longer times.

Another thing is, that the motorcurrent in original sunray sense runs through a LP filter, so the 2 secs you define in config is way off because the lpf is slow to follow. And so it might already have a overcurrent way beyond 2 seconds.

For the jyqd driver i now have installed i have a cheap adjustable voltage current regulator before the driver, so if it wants to suck more than adjusted shorting amps on laboratory powersource... it will just start to drop voltage and thus limits power while keeping a constant voltage for the driver if battery input drops due to battery drainage. until now, works really good.

Despite, i am messing with a first alfred just now, and there is some hardware software issues as well regarding current. the orig error current is 8 Amps, just for mow!
So basically, if this is true and its going thru the LP filter, you will have burning wires inside the mower with that amps on 30 volts. i know this because i have a trex helicopter and used to recharge the battery through a car 12 volt plug with thicker wires and 8 amps 19 volts voltcraft charger. the 12 volt cigarette adapterplug starts to melt after 15 minutes. so i startet opening the hood and plug it to the battery directly on the field. the wires still get warm.

I just realized, because the lpf filters do not count for actual iteration time in code, every deviation in iteration times will give you false readings because its assumed to be a constant iteration time. thats flawed.

In all case my post was only to help understanding the burning issue of many driver , and i think the 20 sec is too large .

Yes i thing heatsinks is mandatory for this kind of motor driver.
Maybe you can create a post and add picture of heatsink on marotronics driver.

I use Teensy and INA226 to read sense and no need LP filter is needed or only LP=0.5, so my code is not real sunray.
I also never burn a ZSX11 driver for 2 or 3 years , and i have really made hard test.
 
Oben