Re: Daten Kategorie: Programmierung (von Tom - 9.01.2004 19:31) | |
Als Antwort auf Daten von Frank - 9.01.2004 14:32
| |
Hallo Frank, > Hier nun einige Daten: > - Der Inkrementalgeber gibt 2500 Impulse auf 360° > - Die Welle, auf der der Geber sitzt dreht mit 0,585 Umdrehungen / Minute > - Angeschlossen ist der Geber über den A-Kanal am P1H.0 an der Station Diese Daten sind alle im "grünen" Bereich. > Die Abfrage in meinem Programm erfolgt über ports.getcount(0); soweit i.O. > starte Motor; > ... > while Impulssumme nicht die Abbruchbedingung erfüllt wenn die Abbruchbedingung die Impulszahl ist, wird zu Früh abgebrochen?? > { > ... > lese Impulse aus und summiere; > ... > if Impulssumme erfüllt Abbruchbedingung then > { > stoppe Motor was ist mit warten das der Motor auch wirchlich steht ??? > lese nochmal Impulse und summiere (wg möglichem Nachlauf) macht eigentlich keinen Sinn , da der Motor ja noch nicht steht. > } > } > Um den Fehler mal einzukreisen, solltest Du dir mal die Impulse am Eingangsport mit einem Oszi ansehen, ob das auch wirklich saubere Recheckimpulse sind. Zur Software würd ich sagen, das die Zählerei der Impulse völlig unabhägig von irgendwelche Schleifen geschehen mu�, um irgendwelche Abweichungen zu vermeiden. Wie wird eigentlich die Richtung ausgewertet, oder dreht der Motor immer nur in eine Richtung? Fragen über Fragen, aber an den Counterport's liegts mit Sicherheit nicht, ich vermute den Fehler entweder im Anschluss der Drehgebers, soll heissen es sind keine richtigen Rechteckimpulse, oder eben in der Software. mfg Tom | |
Antwort schreiben Antworten: |