Hi, super danke für die Info! Ich bin aber auch unsicher, nur die 12V für die H-Brücke auf die Batterie zu legen. Ich würde sicherheitshalber einfach die Kabel vom Ausgang des Ladereglers trennen und komplett an die Batterie hängen.
PiMowBot ein autonomer Rasenmäher-Roboter in 3D-Druck
-
TGD -
November 26, 2019 at 11:09 AM -
Thread is Unresolved
Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
-
-
PiMowBot ein autonomer Rasenmäher-Roboter in 3D-Druck? Schau mal ob du hier fündig wirst!
-
Hi, super danke für die Info! Ich bin aber auch unsicher, nur die 12V für die H-Brücke auf die Batterie zu legen. Ich würde sicherheitshalber einfach die Kabel vom Ausgang des Ladereglers trennen und komplett an die Batterie hängen.
Ja, genau das ist der Richtige Weg, nicht doppelt anklemmen.
Nur an die Batterie! -
Hallo
in den letzten Tagen habe ich mich mit dem QMC Kompass Modul beschäftigt. Es gab ja eine Zeit lang keine MPU9250 zu kaufen, vielleicht ist das immer noch so, ich weiß es nicht. Wie dem auch sei, ich habe mir vor einiger Zeit bei AZ-Delivery QMC Module gekauft, die waren im Angebot. Da ich nun nicht jedes mal zum Kalibrieren in dem PiMowBot ein anderes Modul einstecken wollte habe ich mir Gedanken um eine Kalibrierung außerhalb des PiMowBots gemacht. Das Ergbnis will ich hier gerne teilen. Grundlage war dieser Artikel , jedoch habe ich da einige Dinge übersprungen. Am Ende ist es ja wichtig dass man die Werte von X-Offset und Y-Offset bekommt. Also habe ich einen Pi genommen egal ob Zero oder Pi4 und habe das Kompass Modul angeschlossen. Als Stromversorgung nutze ich eine Powerbank Wichtig: I2C muss in der config aktiv sein, aber das wisst ihr ja alle. Dann habe ich das Script von TGD genommen und gemäß der How2s von RB-roboBASics angepasst. Ihr findet es hier.In dem Script werden 500 Messwerte protokolliert. Während der Messzeit muss der Sensor fortwährend gedreht werden. Daher die Powerbank am Pi und als Basis zum Drehen benutze ich einen Bürostuhl. Programm starten und dann geht`s rund (sprach der Papagei und flog durch den Ventilator) Das Programm liefert die 500 Messwerte und gibt sie in der Konsole aus.
Am Ende werden dann auf dem Bildschirm ähnliche Werte wie hier stehen.
496 (-570, -2255)
497 (-555, -2275)
498 (-550, -2290)
499 (-565, -2260)
[-490, -4985] XOffset= -2738
[1610, -3145] YOffset= -768
Werte abspeichern mit Y/y nicht abspeichern mit N/n ...
Ihr könnt dann die Offsets in einer Datei abspeichern oder ihr nehmt die Offset Werte und tragt sie
direkt in die .PiMowBotIt.Compass Datei im Pimowbot Verzeichnis ein Die magnetische Deklination könnt ihr noch gemäß Anleitung von TGD ergänzen. Aus allen Werten, die in der Konsole ausgegeben wurden, habe ich mir dann ein Diagramm erstellt.
Hier kann man sehr gut sehen wie der Offset – also die Mitte des Kreises - bei X und Y im Negativem liegen. Das ist aber von Modul zu Modul verschieden.
Viel Erfolg beim Calibrieren.
Noch eine Anmerkung, Es gibt sicherlich zig Verbesserungen in dem Pythonscript. Über konstruktive Anregungen freue ich mich.
Hallo Ulli,ich habe gerade bemerkt, wie kann es auch anders sein, das mein MPU9250 wohl ein fake ist. Zumindest bekomme ich folgende Meldung :
I2C MPU9250 WhoAmI-register: 0x63
!!! Your I2C MPU9250 modul seems to be fake !!!
Allerdings scheint der Kompass trozdem zu funktionieren.
Da ich ja jetzt wohl ein neues bestellen muss, wollte ich mal fragen, ob du ein bestimmtes Modul empfehlen kannst. Oder vielleicht hat jemand eine sichere Quelle für das MPU9250. Ich hatte meines beim Amazon bestellt.
Gruß
Sascha
-
Hi Everyone,
I wanted to share how the newly recommended wheel motor driver needs to be wired. Thanks to Ulli_Pi I was able to get both wheel motors operating. The key is to have the 5V and GND both hooked up and the following arrangement for the motors:
GPIO 13 to the left PWMI PIN
GPIO 19 to the left IN1 PIN
GPIO 26 to the left IN2 PIN
GPIO 16 to the right PWMI PIN
GPIO 20 to the right IN3 PIN
GPIO 21 to the right IN4 PINNote that the I/O pins are teh IN1-IN4 pins.
Also, DO NOT run the same ground from 12v IN to the GND pins. I ran the ground to a ground on the Pi, same for the 5V. Connect both 5V and both GND pins.
I also want to take a moment to thank Dirk for all of his support on this project, he's been very helpful to me with issues I was having with setting up the SW and correcting a few Rookie mistakes on my part.
Und noch ein Problem....
ich stelle gerade fest, das nur einer der beiden Motoren sich ansteuern lässt. Bei der Fehlersuche ist mir aufgefallen, das wenn ich vom Verbund GPIO16,20,21 das Kabel von GPIO21 trenne, läuft der Motor los. Verbinde ich die Leitung erneut, bleibt der Motor sofort stehen. Ich habe die Belegung doppelt und dreifach geprüft. Stimmt alles. Ich habe die Anschlüsse GPIO16,20,21 auch schon mal mit GPIO13,19,26 getauscht. Das Problem wandert, sodass ich denke es liegt am Motorcontroller. Und dort am IN4. Nur wenn ich diese Leitung trenne läuft der Motor auf diesem Kanal los.
Ich glaube so viele Fragen hab ich noch nie in so kurzer Zeit in einem Forum gestellt.
Vielleicht hat auch hier noch jemand eine Idee.Gruß
Sascha
-
Hallo Ulli,ich habe gerade bemerkt, wie kann es auch anders sein, das mein MPU9250 wohl ein fake ist. Zumindest bekomme ich folgende Meldung :
I2C MPU9250 WhoAmI-register: 0x63
!!! Your I2C MPU9250 modul seems to be fake !!!
Allerdings scheint der Kompass trozdem zu funktionieren.
Da ich ja jetzt wohl ein neues bestellen muss, wollte ich mal fragen, ob du ein bestimmtes Modul empfehlen kannst. Oder vielleicht hat jemand eine sichere Quelle für das MPU9250. Ich hatte meines beim Amazon bestellt.
Gruß
Sascha
Hallo Sascha,
eine sichere Quelle kenne ich nicht.
Aber wenn er funktioniert ist doch alles prima wichtig ist, dass er die Himmelsrichtung einigermaßen anzeigt und auf kippen und Neigung reagiert.
Du kannst Das in den jeweiligen Informationsdateien in der RAM-Disk sehen, Wenn ich mich recht erinnere gibt es da eine compas Datei und eine gyro datei
also ein ls -lart auf /dev/shm/und dann ein tail -f auf die jeweilige Datei und den PiMowBot Bewegen, Ich suche mir immer die Nord ausrichtung. Wenn ich ihn dann um jeweils 90 Grad drehe und in die Datei schaue, dann stehen da auch die neuen Werte.
Beim Gyro sind die Werte sehr klein. Da gibt es aber auch vielleicht in der Compass Datei die Werte pitch und roll, das weiß ich jetzt nicht genau.
Gruß
Ulli -
Hi Ulli, okay dann schaue ich dort auch nochmal nach. Ich hatte tatsächlich das Gefühl, das die Grafische Anzeige in der Web-UI nicht auf Pitch reagiert hat. Zudem, habe ich im Log die Meldung "Lifted" o.Ä. Aber wie gesagt, schaue ich mir gleich noch mal an.
Bzgl. eines neuen Moduls, soll ich dann am besten bei dem MPU9250 bleiben? Oder doch ein anderes Modell?Gruß und danke!
Sascha
-
Hi Ulli, okay dann schaue ich dort auch nochmal nach. Ich hatte tatsächlich das Gefühl, das die Grafische Anzeige in der Web-UI nicht auf Pitch reagiert hat. Zudem, habe ich im Log die Meldung "Lifted" o.Ä. Aber wie gesagt, schaue ich mir gleich noch mal an.
Bzgl. eines neuen Modus, soll ich dann am besten bei dem MPU9250 bleiben? Oder doch ein anderes Modell?Gruß und danke!
Sascha
Ich favorisiere auch das MPU, da es wesentlich stabiler den Kurs anzeigt als die anderen Module HMC5883L oder QMC5883L
Im Moment habe ich aber aus einem andern Grund das QMC in meinem MINIPiMowBot in Betrieb, -
okay, nachdem ich die I2C-Adresse des Witty Boards geändert habe um den I2C Adressenkonflikt zwischen Witty und dem MPU9250 zu vermeiden (wie in der FAQ beschrieben), sind die "Lifted" Meldungen nun weg und die Werte für Nick und Roll ändern sich bei Bewegung schonmal beim Hardware Test. Scheint also erst einmal zu funktionieren. Die "Fake" Meldung bleibt aber trozdem beim Hardware Check.
Bleibt eigentlich nur noch das Motor Problem. Eine Seite/Kanal funktioniert entweder überhaupt nicht oder stottert nur. Wenn ich über das Webbasierte RC-Control die Motoren Rückwerts laufen lasse, stottern beide bzw. drehen sich nur wenig und das Schrittweise. Schwierig zu beschreiben. Ich habe leider keine Idee, wie ich die Fehlersuche bzgl. Motosteuerung systematisch angehen soll.Gruß
Sascha
-
Hallo Sascha,
Hast du ein Netzteil, oder ein Ampere Meter um den Strom zum Motor oder zum Relais Modul zu messen?
Leider kenne ich die H- Brücke nicht.
Ich persönlich würde so vorgehen, dass ich nur einen Motor anschließe. Dann versuchen diesen Motor durch Umgehung der Relais Platine, ersteinmal durch Stimulierung der richtigen logischen pegel zum laufen zu bringen.
Also Komplexität raus nehmen, und immer wenn eine Stufe erreicht ist, die nächste Stufe angehen.
Hast du zu Beginn des Projektes Mal geschaut ob die Motore direkt an die Batterie zu halten.
Letzte Frage, du hast sicher eine e-mail Adresse schick mir die Mal über das White Board, oder wenn du magst auch hier übers Forum.
Ich würde dann morgen mit dir darüber Kontakt aufnehmen.
Gruß Ulli
-
Hallo Sascha,
Hast du ein Netzteil, oder ein Ampere Meter um den Strom zum Motor oder zum Relais Modul zu messen?
Leider kenne ich die H- Brücke nicht.
Ich persönlich würde so vorgehen, dass ich nur einen Motor anschließe. Dann versuchen diesen Motor durch Umgehung der Relais Platine, ersteinmal durch Stimulierung der richtigen logischen pegel zum laufen zu bringen.
Also Komplexität raus nehmen, und immer wenn eine Stufe erreicht ist, die nächste Stufe angehen.
Hast du zu Beginn des Projektes Mal geschaut ob die Motore direkt an die Batterie zu halten.
Letzte Frage, du hast sicher eine e-mail Adresse schick mir die Mal über das White Board, oder wenn du magst auch hier übers Forum.
Ich würde dann morgen mit dir darüber Kontakt aufnehmen.
Gruß Ulli
Hi Ulli,
danke dir. Ich habe dir meine Adresse auf deiner Pinwand hinterlassen. Bin nicht sicher ob ich wirklich beide Motoren zuvor getestet hatte. Einen aber auf jeden Fall. Allerdings kann ich das Problem durch umstecken/tauschen der Motoren das Problem auch auf den anderen Motor übertragen. Es tritt immer auf dem selben "Kanal" auf. Aber ich werde mal noch versuchen, die H-Brück vom Relay zu trennen und direkt mit Strom zu versorgen. Mal sehen.
Gruß
Sascha
-
hallo Sascha,
ich wollte mal nachfragen ob bei dir schon alles funktioniert bzw. was bei dir das Problem war. Bei mir funktioniert der Mähmotor aber die Antriebsmotoren lassen sich leider nicht ansteuern.
LG
Martin
-
hallo Sascha,
ich wollte mal nachfragen ob bei dir schon alles funktioniert bzw. was bei dir das Problem war. Bei mir funktioniert der Mähmotor aber die Antriebsmotoren lassen sich leider nicht ansteuern.
LG
Martin
Hallo Martin,
was gibt bei dem Befehl: ps -ef | grep python
für eine Ausgabe aus?
wenn Du da kein pi xxxx1 3 12:10 ? 00:00:07 python .PiMowBotIt_pyMotor.py ausgegeben wird, dann gebe mal
python /dev/shm/.PiMowBotIt_pyMotor.py ein
poste welcher Fehler ausgegeben wird.
Sollte das ps -ef | grep python ergeben dass dein Motor script läuft, wäre wichtig zu wissen, ob Dein Antriebsrelais anzieht?
und ob die Motore irgendwelche anzeichen von drehungen machen, oder knurren oder so.
Gruß
Ulli
-
hallo Ulli,
das Motorscript läuft, die Ausgabe lautet:
ps -ef | grep python
root 736 282 0 22:42 ? 00:00:00 python3 -
pi 966 1 0 22:43 ? 00:00:00 python .PiMowBotIt_pyINA.py
pi 970 1 3 22:43 ? 00:00:03 python /run/shm/.PiMowBotIt_pyGPIO.py
pi 973 1 2 22:43 ? 00:00:02 python .PiMowBotIt_pyCompass.py
pi 976 1 3 22:43 ? 00:00:02 python .PiMowBotIt_pyLASER.py
pi 983 1 0 22:43 ? 00:00:00 python .PiMowBotIt_pyBME_76.py
pi 986 1 5 22:43 ? 00:00:04 python .PiMowBotIt_pyMotor.py
pi 1176 1151 2 22:44 pts/0 00:00:00 grep --color=auto python
Beim Starten des Pi bzw. beim Starten der Software hört und sieht (LED) man, dass das Relais für die Antriebsmotoren für einige Sekunden an geht.
Wenn ich in dieser Zeit (während das Relais für die Antriebsmotoren anzieht) den Pi reboote, dann fängt das linke Rad an zu drehen.
Sehr eigenartig, oder?
Beim Hardware-Check (PiHWcheck.r) kann ich allerdings keine Antriebsmotoren an- und ausschalten.
lg
Martin
-
hallo Ulli,
das Motorscript läuft, die Ausgabe lautet:
ps -ef | grep python
root 736 282 0 22:42 ? 00:00:00 python3 -
pi 986 1 5 22:43 ? 00:00:04 python .PiMowBotIt_pyMotor.
Hallo Martin,
beim PiHWcheck.r wird das Antriebsreleais aber geschaltet, oder?
die Motore werden jeweils über eine Datei gesteuert. Der linke sollte sich drehen wenn Du echo 80 > /dev/shm/ .PiMowBot_Motor.left eingibst.
das Antriebsreleais muss angezogen sein. damit er sich drehen kann.
Ich kenne die Motortreiber platine nicht welche nutzt Du? und hast du da ein Schaltplan den du sharen kannst?
Gruß
Uli -
hallo Ulli,
ja das Antriebsrelais wird beim HWcheck geschaltet.
Also ich habe das Antriebsrelais per PWcheck eingeschaltet und dann "echo 80 > /dev/shm/.PiMowBot_Motor.left" bzw. das entsprechende Kommando für den rechten Motor ausgeführt, leider haben sich die Motoren nicht gedreht.
Wenn ich dann wieder bei angezogenem Antriebsrelais reboote, dann dreht sich während des Runterfahrens das linke Rad.
Ich benutze den empfohlenen 7A/160W Dual H-Bridge Motor Controller.
Ich habe den Motortreiber so verkabelt, wie Alink1185 (RE: PiMowBot ein autonomer Rasenmäher-Roboter in 3D-Druck) beschrieben hat.
Hier eine grobe Skizze des Schaltplans.
Danke und lg
Martin
-
Zur Info: Man kann dass Antriebsrelais auch wie im Workshop, Teil3 beschrieben über den Trip 10 (= Zündung) aktivieren.
Trip 10:
["0:00:00.5 engage"] ; 10 Zündung (Relais-Antrieb)
Befehl zur Ausführung:
pi@PiZero:~/pimowbot $ bin/r3 PiReplay.r "10"
VG
TGD
-
hallo Ulli,
ja das Antriebsrelais wird beim HWcheck geschaltet.....
Danke und lg
Martin
Hallo Martin,
im Forum gibt es ja schon einen Beitrag zu dem Treiber Modul im post 166 Lt. Deinem Schaltplan hast Du das genauso angeschlossen. ISt schon komisch, dass es bei Dir nicht funktioniert. Ich würde jetzt mal testen ob die Treiber Platine Funktioniert. Wenn Sie nach der gleichen Logik arbeitet wie das ursprüngliche L298 Modul dann kannst Du folgendes Machen.
Die Kontakte GPIO 13, 19 und 16 sowie GPIO 16 20 und 21 von der Treiberplatine trennen. 5Volt und Masse bleiben verbunden.
Dann nimmst Du 2 Jumper Kabel und verbindest den einen PWMI Eingang der Platine mit 5 Volt und einen IO Eingang der Platine ebenfalls mit 5 Volt. Bei angezogenem Antriebsrelais sollte sich dann der entsprechende Motor drehen.
Wenn Du den anderen IO Eingang der Platine nach 5 Volt legst sollte sich der Motor in die andere Richtung drehen.
So verhält sich die ursprüngliche L298 Treiberplatine. Achtung die GPIO Ausgänge des Pis dürfen bei dieser Aktion nicht mit der Motortreiberplatine vebunden sein, es droht sonst Zerstörung des Pis. Dieser Test sollte also mit großer sorgfalt durchgeführt werden und es wäre ein Test ob die Treiberplatine in Ordnung ist.
Wenn die Motore sich dann drehen, solltest Du gründlich die Verdrahtung prüfen. Ist die Verdrahtung Okay, bleibt eigentlich nur ein Fehler des Pis. Was ich nicht hoffe. Viel Erfolg!! ich drücke die DaumenLeider kann ich da so aus der Ferne nicht mehr helfen. Vielleicht noch die Optionsdatei checken und ggf. an TGD wenden.
bei mir steht dieser Eintrag
control_GPIO: 6 ; 6 for the new control, 16 for the old instead of .PiMowBotIt.L298NControl options file
Viel Erfolg
Ulli -
Komisch das gleich 2 leute probleme mit der H Brücke haben.
Hat sich da ein Bug eingeschlichen?
Bei mir läuft die H Brücke, leider kein aktuelles Releas drauf
-
Neuste Release aufgespielt und den RC Modus getestet, funktioniert tadellos.
-
Post by Weyl (
June 14, 2023 at 7:58 PM ).The post was deleted, no further information is available. -
Participate now!
Don’t have an account yet? Register yourself now and be a part of our community!