PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RNBFRA -> rechter Stepper-Kanal



sek
08.04.2010, 08:56
Moin Folks,


ich habe ein paar Fragen/Probleme mit meinem RNBFRA-Board und hatte gehofft, dass ihr mir da evtl. bei dir Klärung helfen könntet.


(1) Nachdem ich das Board aufgebaut hatte, habe ich die diversen Tests aus dem Handbuch durchgemacht. Da ich aktuell keine Getriebemotoren habe, musste ich auf diese Tests verzichten. Im Verlauf dieser Tests hat sich heraus gestellt, dass sich der rechte Stepper-Kanal nicht im geringsten rührt. Das Netzteil zeigt zwar an, dass Strom gezogen wird, nur der Motor dreht sich leider nicht. Um halbwegs systematisch vorzugehen habe ich dann zunächst die beiden Motoren durchgetauscht, dann die L297-ICs in ihren Sockeln durchgetauscht und zu guter Letzt einen neuen L298 eingelötet. Leider hat das alles mich nicht weiter gebracht und das Ergebnis ist nach wie vor, dass sich nur der Motor, der am linken Kanal angeschlossen ist, bewegt. Da ich aber etwas fachfremd bin, gehen mir langsam die Lösungsansätze für die systematische Fehlersuche aus und ich hatte gehofft, ein paar Tips zu bekommen, wo ich weiter suchen kann.


(2) Als Schrittmotoren verwende die Teile aus dem Shop (Schrittmotor 1,6V/2,0A 1,8 Grad [Stepp5010] (http://www.shop.robotikhardware.de/shop/catalog/product_info.php?cPath=69&products_id=215)) und entsprechende habe ich die Referenzspannung habe ich laut dem RNBFRA-Handbuch auf ca. 1V (etwas drunter) eingestellt. Bei dem funktionierenden Stepper-Kanal habe ich eine Beobachtung gemacht, bei der ich mir nun nicht so ganz sicher bin, ob das in Ordnung ist: Wenn ich die "Timings" aus dem Beispiel (5ms high, 5ms low) verwende, zuckt der Motor immer nur links-rechts. Verlängere ich diese Werte z.B. auf 7/15ms klappt das schon etwas zuverlässiger, aber es kommt trotzdem noch öfter mal vor, dass der motor zwischendrin einfach mal ein paar Schritt zurück läuft. Kann ich das irgendwie verbessern oder muss ich das so hinnehmen?


So. Das reicht mal für den Anfang :)

PicNick
08.04.2010, 09:32
Blöde Frage: Sind die Jumper auf Stepperbetrieb richtig gesetzt ?

sek
08.04.2010, 09:37
Hmm. Also aus JP3 habe ich alle Brücken entfernt, JP8 und JP9 sind auf Vollschritt gesetzt. JP6 ist auch gesetzt, da ich momentan nur eine Spannung verwende. Gibt es sonst noch relevante Jumper für den Schrittmotor-Modus? Ach ja....die Adress-Jumper sind alle wie im Handbuch gesetzt.

PicNick
08.04.2010, 09:54
Beliebt ist es auch, bei den Fuses auf das Disablen von JTAG zu vergessen, dann ist nämlich das Portc nicht ordentlich zu brauchen

Da die Stepperei ja ziemlich statisch abläuft, kannst du am rechten L297 gut überprüfen, ob die richtigen Signale vom Mega32 auch so ankommen, wie gedacht.
Auf diese Weise kannst du auch Lötfehler definitiv ausschliessen.

Btw: irgendein Tastverhältnis spielt bei den Stepper eigentlich keine Rolle. Das kommt mir seltsam vor

sek
08.04.2010, 10:04
Ich habe gerade nochmal die Fuses gecheckt und JTag war auf disabled gestellt (siehe Anhang).

Zum Thema Signale am L297 prüfen: Kannst du mir nen Tip (oder Link geben), wie ich da vorgehen muss? Ich muss zu meiner Schande gestehen, dass ich als bislang "reinrassiger" Software-Entwickler keine wirklich tiefgreifende Ahnung von der Hardware und insbesondere der Fehlersuche habe. *seufz*

@Tastverhältnis: Seltsam? Oh mist :-D Ich hatte da halt einfach mal aus Frust andere Werte ausprobiert :-) Übrigens scheint es wohl so zu sein, dass wenn ich dem zitternden Stepper einen kleinen Schubs in die richtige Richtung gebe, er auch eher mal ein paar Schritte losläuft (aber dann auch bald wieder innehält).

PicNick
08.04.2010, 11:28
Messen: z.B. rechter schrittmotor:


Portc.4 = 0 ' mit Portc.4 = 1 andere Richtung
I = 400
Do
Ledaus
Portc.2 = 0
Waitms 5
Portc.2 = 1
Ledein
Waitms 5
I = I - 1
Loop until I < 1

d.h. Am Mega32 muss PortC.4 0 od. 1 sein, je nach richtung
und wenn du z.B. waitms 5 auf Waitms 500 stellst, muss Portc.2 sichtbar rauf/runter tickern.
Am L297 muss dann
Enable = 1
CW/CCW = 0/1 (richtung)
CLOCK = muss mit-tickern

A, B, C, D müssen sich mit den TIcks bewegen
das muss sich beim L298 auf INPUT 1, 2, 3, 4 wiederfinden

usw.

Is natürlich arbeit, aber besser als mit Depressionen in die Klapsmühle

sek
08.04.2010, 12:08
Super Sache! Das werd ich nachher gleich mal ausprobieren. Danke für die Hinweise.

sek
08.04.2010, 16:51
Hmm ok. Ich hab da jetzt mal mit meinen Begrenzten Möglichkeiten etwas nachgemessen und dabei ist folgendes rausgekommen:
Die gennanten Ports am Mega machen brav, was sie machen sollen.
An den L297ern fängt es dann an, komisch zu werden. Enable, Clock und CW/CCW stimmen so noch, wie ich es erwartet hätte. Am linken Kanal lässt sich dann auch die "Bewegung" auf A-D feststellen. Am rechten Kanal scheinen einfach alle Ausgänge permanent auf High zu sein und da bewegt sich auch nix. *grübel* Heißt das jetzt, dass das ein Lötfehler ist oder sind dann andere Bauteile dran schuld? *sich nochmal den plan anschauen geht*

PicNick
08.04.2010, 17:20
Am L297 ist noch wichtig:
ENABLE (sieh' im Testprogramm nach)
RESET muss low sein
VCC = + 5 V
GND = 0 V (auch checken, ist ein gemeiner Fehler)

sek
08.04.2010, 17:35
Danke für deine Geduld :-)

ENABLE ist bei beiden +5 V
RESET ist ein wenig komisch. Setze ich die Messspitze an, messe ich +1V. An dem funktionierenden Kanal resultiert das darin, dass der Motor zu steppen aufhört. Höre ich auf zu messen, steppt er weiter. Nehme ich da den falschen Referenzpunkt? (Minus vom Netzteil bzw. GND-Anschluss des L297)
VCC (Vs) ist bei +5V
GND ist gegen Minus vom Netzteil gemessen bei beiden bei +400mV

PicNick
08.04.2010, 19:46
Lt. Datenblatt ist RESET activ low.
Sollte also eigentlich auf High bzw. VCC liegen. Der Pin ist aber glaub ich in der RNBFRA garnicht beschaltet. Häng ihn vielleicht testweise mit 1k (sicherheitshalber) auf +5V, passieren kann nix, aber vielleicht geht's dann sogar.

Wenn der Reset-Pin spinnt und auf messen reagiert, ist das suboptimal


GND sollt eigentlich wirklich 0 V zeigen. Vergleich aber einfach, was die anderen IC's da so haben

sek
09.04.2010, 14:27
Jo also in Ermangelung eines passenden 1k (muss mich erstmal wieder mit bastel-kleinkram eindecken), hab ich ihn direkt auf 5V gehängt, allerdings ohne den gewünschten Erfolg (Mal abgesehen davon, dass ich ihn dann auf +5V messen kann, wie es auch z.B. beim ATmega32 funktioniert).

GND zeigt auch beim ATmega ca. 400mV, ich schiebe das jetzt einfach mal auf meine schlechte Messausstattung :-)

Jetzt habe ich allerdings noch andere Messergebnisse gemessen, die mich nun vollends an mir zweifeln lassen. Muss jetzt mal noch ein bisl was arbeiten und poste nachher (nach nochmaligem messen) die ergebnisse *seufz*

(ich seh schon meine motivation die in den keller runter laufen :( )

PicNick
09.04.2010, 14:33
Halt den Kopf oben, von so ein paar bescheuerten Halbleitern darf man sich nicht unterkriegen lassen *g*

Ich bin aber leider erst morgen wieder verfügbar

sek
13.04.2010, 22:00
Sorry, dass ich mich noch nicht wieder gemeldet habe. Ich hab grad auf Arbeit alle Hände voll zu tun, ich fürchte es geht erst am Freitag weiter *seufz*

sek
18.04.2010, 21:27
Moinsen, ich ma wieder :) Hat leider etwas gedauert, weil ich wie gesagt job-mäßig ziemlich eingebunden war und dann einige private sachen dazwischen gekommen sind, aber nu kanns weiter gehen, falls sich jemand erbarmt, mich beim debuggen zu unterstützen.

ich habe jetzt nochma mit nem zweiten multimeter folgende messung versucht zu verifizieren, die mich etwas stutzig macht:
Und zwar hab ich nochma an den beiden L297 gemessen und zwar GND gegen A-D und dabei ist folgendes raus gekommen:

Linker Kanal ("funktionierend"):
A: Toggelt zwischen 4,3V und 2,9V
B: Toggelt zwischen 4,3V und 2,9V
C: Toggelt zwischen 4,3V und 4,0V
D: Toggelt zwischen 4,3V und 4,0V

Rechter Kanal (Stepper bewegt sich nicht, kein Widerstand gegen manuelle Wellenbewegung):
A: Toggelt zwischen 4,3V und 4,0V
B: Toggelt zwischen 4,3V und 4,0V
C: Toggelt zwischen 4,3V und 4,0V
D: Toggelt zwischen 4,3V und 4,0V

Irgendwie kommt mir das komisch vor, aber mir fehlt es leider an Erfahrung, um diese Ergebnisse bewerten zu können.

Würde es eigentlich etwas bringen, die Stepper-Ausgänge auch mal zu messen?

PicNick
19.04.2010, 10:07
Also, 4.3 : 4 kommt mir auch seltsam vor. Wobei ich nicht sicher bin, ob nicht 4.4 : 2.9 genauso verdächtig ist.
Es gibt aber zwei Möglichkeiten: der(die) L297 liefern das, oder der angeschlossene L298 hindert ihn, anständige Pegel einzunehmen. Dann sollte man aber erwarten können, das der 297 mit der Zeit recht warm wird.
Im Anhang die Darstellung, was sich an den L97-Pins eigentlich so abspielen sollte.

Beim Voll-schritt wären INH1 u. 2 immer High.

Schau mal, ob vielleicht diese beiden irgendwie auf LOW festgehalten werden.

sek
19.04.2010, 10:17
Dieses Diagramm habe ich im Datenblatt und in einigen Erklärungen zu Steppern auch schon gesehen. Mal so zu meinem Verständnis: Wenn ich die beiden L297 raus nehme und das Board auf den Betrieb mit Gleichstrommotoren umkonfigurieren. Müsste ich dann in der Lage sein, dieses Bitmuster direkt vom Atmega aus mit den Ports für die Ansteuerung von den Gleichstrommotoren zu erzeugen? Wenn ich es richtig verstehe, müsste ich doch dann in der Lage sein, eine Aussage zu treffen, ob es sich überhaupt lohnt, weiter an den L297 rumzugucken oder ob ich mich eher auf die L298 und deren Umgebung konzentrieren muss. Stimmen diese Annahmen oder zerschiesse ich mir dann das halbe Board? *g*

sek
19.04.2010, 10:21
Beim Voll-schritt wären INH1 u. 2 immer High.

Schau mal, ob vielleicht diese beiden irgendwie auf LOW festgehalten werden.

Naja....also es wird konstant 4,3V an beiden L297 angezeigt. So richtig high ist das nicht, aber besser als nix :)

PicNick
19.04.2010, 10:56
Das "zu-fuss-steuern" sollte schon gehen, dazu müsste man sich die notwendigen Pin's und die Ansteuerung dazu durchdenken.

Vielleicht gar keine schlechte Idee. Kommst du da zurecht oder muss ich mein Hirnschmalz in Schwung bringen ?

Die L297 hast du ja schon ma getauscht. Der Fehler wandert dann mit ?

sek
19.04.2010, 10:59
Ich muss eben erst mal noch ein Kapitel einer Schulung überarbeiten und dann denk ich mal drüber nach bzw. schau es mir an und schreie, wenn ich nicht weiter komme bzw. wenn es irgendwo angefangen hat zu qualmen *gg* danke für das angebot

sek
19.04.2010, 15:24
Tja schade. Ich hatte mich gerade hingesetzt, und habe angefangen, mir die Ports rauszuschreiben und nachzumessen, als mir aufgefallen ist, dass das RNBFRA nur an der linken Stepper-Seite den alternativen Anschluss von Gleichstrom-Motoren erlaubt, dürfte sich dieser Test auch wieder gegessen habe, da meine linke Seite ja mehr oder weniger tut und aktuell hauptsächlich der rechte Stepper-Kanal den Totalausfall darstellt *seufz*

PicNick
19.04.2010, 16:07
Ja, aber auch nur "mehr oder weniger".
"C" u. "D" am linken kann eigentlich auch nicht so sein ( 4,3 : 4 )

Was man bei rechten stepper machen kann, ist, den L297 rausnehmen und an A, B, C, D zu fuss pegel anlegen und sehen, ob der L298 nicht schon abgedampft ist.

Überprüfen müsst man auch die Regelspannungen. Vielleicht choppert er sich irrtümlicherweise die Outputs nieder, weil er denkt, er müsse runterregeln

sek
19.04.2010, 20:02
Hmm stimmt....da bin ich auch noch gar nicht drauf gekommen *lach* ich glaub das mach ich nachher einfach mal. vielleicht bringts ja was.


Überprüfen müsst man auch die Regelspannungen. Vielleicht choppert er sich irrtümlicherweise die Outputs nieder, weil er denkt, er müsse runterregeln

huch?! das war mir nen tick zu schnell. könntest du mir das bitte erklären?

PicNick
20.04.2010, 11:14
kurz gesagt, der L297 kann den Strom für den Motor mittels einer Art PWM begrenzen, wenn die eingestellte Referenz-spannung überschritten wird. Das ist das, was mit dem Spindeltrimmer eingestellt wird. Das wäre beim Messen hinderlich, denk ich

sek
20.04.2010, 22:00
Was man bei rechten stepper machen kann, ist, den L297 rausnehmen und an A, B, C, D zu fuss pegel anlegen und sehen, ob der L298 nicht schon abgedampft ist.

Hmm. Kann ich das so einfach machen? L297 raus, +5V an Enable A und B und dann an die inputs das entsprechende muster anlegen?

Was ist mit den Sense-Anschlüssen? Was muss ich mit denen anstellen?

Außerdem hab ich leider noch nicht ganz verstanden, was du mit dieser Regelspannungs-Kiste meintest. Falls du damit die Spannung meinst, die an den URef-Anschlüssen anliegt: Links habe ich sie auf. ca. 0,85V und rechts auf ca. 0,95V. Ermittelt habe ich die Werte anhand des Handbuchs und aufgrund der Tatsache, dass die Stepper wohl nen Phasenstrom von 2A können (die da sinds (http://www.robotikhardware.de/download/stepp5010.pdf))

sek
11.05.2010, 21:27
Sodale. Um das Thema nun letztlich auch fachlich abzuschließen, hier mal des rätsels lösung:

picnick hat herausgefunden, dass die leistungswiderstände keinen sauberen kontakt zu den leiterbahnen hatten, weil sich wohl beim löten eine korrosionsschicht zwischen lötzinn und bauteil gebildet hatte. kaum sind die dinger neu eingelötet, funzen auch beide stepper-kanäle erwartungsgemäß.

danke picnick!