PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Schrittmotorboard: IC kaputt? (neues Problem)



hal9004
14.11.2007, 18:49
Hi,

bei unserem RN-Schrittmotor (das vor einigen Wochen noch lief) gibt der Mega32 keine Enabled-Signale mehr an die Schrittmotortreiber, sodass die Stepper sich kein bischen drehen. Nicht einmal das Testprogramm läuft also, geschweige denn eine Ansteuerung über i2c. Trotzdem blinkt LED1 nach jedem reset normal. Ganz kaputt kann der Prozessor also nicht sein.

Ich habe leider kein RS232-Kabel, könnte mir aber zur Not eines besorgen (z.B. falls ich die Firmware neu aufspielen muss). Die Schrittmotoren haben 4.5V/1.8A. Die Wicklungstest-LED leuchten nicht; die Motoren sind ja auch richtig angeschlossen (funktionierte ja früher auch).

Ein weiteres Problem ist die Zeit: Ich habe nur noch etwa eine Woche Zeit, die Stepper zum laufen zu bringen; so schnell ist Robotikhardware meiner Erfahrung nach nicht, ein Neukauf scheidet dashalb aus.

Was kann ich tun?

LG Stefan

hal9004
15.11.2007, 16:53
Update: Habe jetzt ein RS232-Kabel und zwei ATMegas bestellt. Lässt sich mithilfe des Kabels die Firmware auf den neuen Chip flashen? Ich kenne mich damit nicht so gut aus und habe schon die Befürchtung, dass nur ein Update der Firmware über die PC-Steuersoftware möglich ist, nicht aber eine Programmierung.

Hubert.G
15.11.2007, 17:13
Du brauchst auch noch einen Programmer dazu, schau unter ISP

hal9004
15.11.2007, 20:20
In der Beschreibung stand, Firmwareupdate sei über rs232 möglich:

Dadurch wird die neue Firmware über das RS232
Kabel aktualisiert, einfacher gehts nicht!
Spezielle Programmierkabel etc. sind nicht notwendig
Gilt das auch für das Aufspielen der Firmware auf den unprogrammierten Chip?
Ansonsten hab ich einen Programmieradapter für das RN-Control (AVR-ISP-Programmer von Robotikhardware). Wird der auch mit dem RN-Schrittmotor-Board funktionieren?

Hubert.G
15.11.2007, 20:34
Update ist möglich über RS232 da der µC einen Bootloader programmiert hat. Ein neuer unprogrammierter hat aber noch keinen Bootloader drauf. Du musst den neuen µCs erst auf einem anderen Board den Bootloader mit dem ISP-Programmer draufladen und dann kannst du die Firmware über RS232 laden.

hal9004
16.11.2007, 18:11
Die bestellten Sachen sind da. Zum Aufspielen des Bootloaders kann ich ja mein RN-Control verwenden. Nur: woher bekomme ich den Bootloader? Auf der Robotikhardware-CD habe ich nichts über einen Bootloader für das RN-Schrittmotor-Board gelesen. Und wie spiele ich ihn dann auf? (Bascom, Ponyprog?)

Hubert.G
16.11.2007, 20:14
Aufspielen geht z.B. mit PonyProg, woher du dem Bootloader für den Mega32 bekommst kann ich dir nicht sagen.

hal9004
17.11.2007, 11:06
Gestern abend hat sich herausgestellt, dass es nur die Firmware war, auch wenn ich mir da keinen Reim drauf machen kann: Wie konnte die Firmware kaputtgehen, ohne dass irgendwer sie verändert hat? Naja - so hab ich jetzt zwei frische neue Mega32 und mit dem Bootloader brauch ich mich auch nicht mehr herumschlagen. Über die RS232-Schnittstelle hab ich die Firmware nochmal aufgestpielt und schwupps ging das Schrittmotorboard wieder. Naja, jetzt harkts am i2c-Kabel zwischen RN-Control und RN-Schrittmotor, aber da bekomme ich heute ein neues. Vielleicht läuft's ja dann... :-)

hal9004
22.11.2007, 17:28
Update: Kurzzeitig hat es geklappt - nicht über i2c sondern über rs232. RN-Control hat mit dem SM-Board geredet. Aber mittlerweile scheint das Schrittmotorboard wieder kaputt zu sein: Wenn ich auf einen der Test-Knöpfe auf dem Board drücke, dreht sich der zugehörige Motor, aber nach einiger Zeit fängt er an zu ruckeln. Beide Motoren zusammen lassen sich jetzt gar nicht mehr starten. Und Steuerung über PC funzt auch nicht mehr. Irgendwie hab ich es langsam satt. Kabel ist ok, Lötstellen sehen alle einwandfrei aus. Zur Not muss ich den ATMega doch ersetzen, aber ob das klappt, ohne passenden Bootloader?

Hubert.G
22.11.2007, 18:25
Stromversorgung ist sicher OK.
Den Bootloader www.shop.robotikhardware.de/shop/catalog/index.php?cPath=77
gibt es hier.

Frank
05.12.2007, 17:31
Also der normale Chip hat einen Bootloader (abe rnicht der oben genannte Bootloader). Das heißt die Firmware kann jederzeit problemlos mit dem Steuerprogramm aufgespielt werden.
Vorausgesetzt de rCHip ist ganz, allerdings geht der in der Regel auch nie kaputt (vorausgesetzt man hat es korrekt aufgebaut).

Wichtig: Man kann keinen neuen AVR Chip kaufen und einfach einen Bootloader drauf machen. Das geht nicht das dies ein spezieller lizensierter Bootloader ist, den es frei erhältlich gibt. Bei einem defekten Chip müsstest du also den programmierten Controller bei Robotikhardware kaufen (Rubrik Elektronikteile). Da ist dann Bootloader als auch Firmware drauf!

Wenn ein Chip nicht mehr per I2C reagiert, so kann es sein das du versehendlich die I2C Adresse verstellt hast. Das kann in seltenen Fällen auch versehendlich erfolgen wenn du schnell die Befehle geschickt hast. Indem fall musst du nur RS232 Kabel anschließen und mit dem Steuerprogramm die Grundstellung wieder aktivieren.

hal9004
06.12.2007, 16:44
Sorry, dass ich mich jetzt erst wieder melde; es hat doch noch geklappt, und zwar mit RS232. Damit ist das Problem erst mal erledigt. Die Probleme mit den nicht mehr einwandfrei laufenden Motoren lagen an zu niedriger Spannung. Der Roboter ist übrigens gelaufen, und zwar am 24. und 25. November in Chemnitz zum Roboking-Wettbewerb (deshalb war das auch so dringend ;-). Die Motoren (je 1,8A) haben sich als stark, aber langsam herausgestellt und die Sensoren (Sharp IR) als ungenau, aber ansonsten lief alles blendend.
Was mich immer noch stört, sind
a) BASCOM (hatte ich auch nur genommen, weil der Einstieg schneller ist, in Zukunft heißt es "C"!)
b) dass ich die Dekodierung der Information über gedrehte Schrittzahl, die RN-Schrittmotor als 4-Byte-Zahl verschickt, nicht hingekriegt habe (in Bascom). Im pdf zum RN-Schrittmotor war nur der Code für i2c beschrieben, das ja bei mir nicht läuft. Debuggen war auch dadurch erschwert, dass ja die RS232-Schnittstelle zum Computer durch das Schrittmotorboard besetzt war. Ich habe mir da mit einer Zwischenspeicherung eines "Logs" der Kommunikation beholfen, konnte aber mit den ganzen Sonderzeichen nichts anfangen (war auf jeden Fall kein Standard- Ascii). Auch wollte das Schrittmotorboard keine hohen Werte für den Befehl "drehe um n Schritte" akzeptieren; nach etwa 400 Schritten stoppte es einfach. Solche Sachen sind für passionierte Elektroniker und Bastler wahrscheinlich ganz normal, aber ich bin eben PC-verwöhnt, da passt einfach alles immer.

@Hubert.G: Danke für deine schnellen Antworten
@frank: Das mit dem Bootloader hatte ich schon geahnt, ist sehr schade, zumal Robotikhardware-Shop nicht gerade der schnellste im Versand ist.
Die i2c-Adresse des RN-Schrittmotor ist immer 89, sowohl im Bascom-Programm als auch über PC-Steuersoftware. Aber jetzt hab ich ja erst mal Zeit, über andere Konfigurationen nachzudenken.

Zu den o.g. neuen Themen kann ich ja u.U. noch Threads aufmachen, wenn es absolut nicht klappt; dieser hier kann meinetwegen geschlossen werden.

AverageIdiot
07.02.2008, 10:52
Hallo, wir nehmen auch am Roboking teil, verwenden auch das RN-Schrittmotor und haben auch Probleme ...

Beim Zwischenfinale ist unser Bot zum Beispiel 2mal einfach stehen geblieben, allerdings traten da die fehler noch sehr selten auf, es war wohl ziemliches pech, dass das in 2 wertungslaeufen passiert ist :(

Inzwischen ist es aber leider so, dass andauernd fehler auftreten, sie sind nicht reproduzierbar und treten in verschiedener Form auf:

1. Manchmal blinkt die LED1 (gruen) kurz auf, danach steht der Bot und bewegt sich nicht mehr, Spannung liegt aber ausreichend an

2. Haelt man den Resetschalter gedrueckt, dann leuchten LED 2 (orange) 3 und 4 (rot) solange schwach auf ... ich weiss leider nicht mehr ob dass vorher schon so war

3. Es kommt auch vor, dass LED 2 3 und 4 mitten in der Fahrt alle hell zu leuchten beginnen. Der Bot faehrt zwar weiter, aber normal ist dass doch auch nicht oder?

4. Es kam auch mal vor, dass die Motortreiber ziemlich heiss wurden, allerdings ist dass nun schon laenger nicht mehr aufgetreten

5. Das Motorboard hat sich auch schon einmal selbstaendig in CRC-Mode umgestellt. Es hat ganz schoen lange gedauert, bis ich dahinter gekommen bin, warum es sich nicht mehr ansprechen liess und habs dann mit der PC-Steuerungssoftware korrigiert.

Irgendwo muss da ziemlich der Wurm drin sein bei uns, die Leitungen und Loetstellen sind natuerlich alle mehrfach ueberprueft worden. Merkwuerdig ist halt, dass die Fehler unregelmaessig und so vielfaeltig auftreten, daher waere eine Vermutung, dass etwas mit dem Atmega nicht ganz stimmt. Wie seht ihr das? Lohnt es sich einen neuen Atmega mit Firmware zu bestellen, oder liegt es vermutlich eher an etwas anderem? Wenn ja, was koennte die Ursache bzw die Ursachen sein?

Vielen Dank schon einmal fuers Lesen

Fabian

PS: Ich hab etwas ueber ClockStretching gelesen, was ist das? Haengt das nicht vom Compiler ab? Ich benutze avr-gcc mit der lib von fleury fuer i2c ...