PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Motor-Problem



shutdown1
13.02.2009, 21:48
Hallo,
ich bin seit ca. 3 Wochen stolzer Besitzer eines Asuro. Doch nach den Lötarbeiten stellte ich fest das ein Motor immer wieder Probleme macht: Er stoppt einfach mal während des fahrens.

Ich habe ein Programm geschrieben welches mir "Stop!" + den Schalter wiedergibt der grade gedrückt worden ist (Anfangs nahm ich noch an, dass es ein Schalterproblem ist). Doch er sendet mir nur "Stop!" mehr nicht.

Also hab ich mich daran gemacht die beiden motoren zu checken: Erst nur den einen laufen lassen, dann nur den anderen. Mittlerweile weiß ich dass das Problem nur Auftritt wenn (ich weiß das hört sich jetzt komisch an) wenn er auf der Platine auf der Position des linken Motors liegt.

Ich habe beide Motoren ausprobiert, gleiches Problem.

Ausserdem gibt es ein Problem bei der Erkennung der Schalter. Wenn ich K1 und K2 drück, kommt die Funktion von K1+K2+K6 ??? Hat das was damit zu tun?

Jetzt weiß ich nicht mehr weiter... bitte helft.

IC
21.02.2009, 18:09
Hi

Probier dochmal den SelfTest von der CD aus, den man dann nach dem Löten machen sollte.

Wenn da das gleiche Problem auftritt guck mal die Lötstellen nach. Wenn nicht wäre es glaub ich sinnvoll dein Program mal zu posten.

Aso..ne kleine blöde Gegenfrage: Weißt du oder ein anderer, wie man Variablenwerte über SerWrite ausgibt? Ist zwar ne doofe Frage aber ich hab schon verschiedenes versucht aber es hat nichts geklappt und ich komm irgendwie nicht dahinter.. ](*,)

orusa
22.02.2009, 13:49
Wenn das Problem bei beiden Motoren auftritt, aber erst, wenn sie sich an einer bestimmten Position auf der Platine befinden, dann würde ich mir mal die Platine in diesem Bereich genauer anschauen. Ich tippe auf eine kalte Lötstelle. Versuch mal vorsichtig bei laufendem Motor an den Transistoren und Widerständen der H- Brücke zu wackeln. Da sollte sich der Fehler schnell zeigen.

Chrissi_P
23.02.2009, 15:34
Hallo,
ich habe ein Programm zum ausgeben von werten von radbruch(glaub ich, ich weiß es nicht mehr genau von wem es ist) in einen anderen Thread bekommen:

void PrintInteger(unsigned int x)
{
char ergebnis[5] = {'0','0','0','0','0'};
while (x >=10000) { ergebnis[0]++; x -=10000; }
while (x >= 1000) { ergebnis[1]++; x -= 1000; }
while (x >= 100) { ergebnis[2]++; x -= 100; }
while (x >= 10) { ergebnis[3]++; x -= 10; }
ergebnis[4] +=x;
SerWrite(ergebnis,5);
};



dass die Schalter falsche Werte zurückgeben kommt manchmal vor, lässt sich aber duch mehrmaliges aufrufen von PollSwitch beheben!

shutdown1
26.02.2009, 20:00
Danke erst mal für eure Hilfe...

Das Problem ist zu beheben, wie Chrissi bereits gesagt hat, indem man den PollSwitch() mit zwei Variablen ausliest und dann später in einer if Anweiung überprüft, ob beide Werte gleich sind.

Warum es bei mir nur Fehler ausgab, wenn der Motor auf der Platine liegt .. Keine Ahnung.
Vielleicht hat das was mit den Magnetfeldern vom Motor zu tun.

Gruß.
Shutdown1