-
-
Hi,
also so ganz versteh ich deine Platine immer noch nicht. In einem Byte sind doch die kompletten Infos für eine Phasenstellung vorhanden, also müsste auch jedes Byte einen Schritt bewirken.
Geb doch mal eine ganz langsame Schrittfolge 2 Sekundentakt oder so aus, dann kannst du alles mitzählen und überprüfen.
Bei der L297/298 Schaltung ist jeder Takt ein Schritt, aber check nochmal ob das nicht doch bei dir auch so ist!
Natürlich kann man den Takt akt anders generieren. Wenn es nicht so genau sein muss dann bekommt man das mit einem Logik IC wie 7413 und einem Kondensator hin. Die Schaltung hab ich immer zum testen von Schrittmotoren benutzt.
Aber das wäre eigentlich Verschwendung des Schrittmotors. Beim Schittmotor ist es ja gerade das schöne das du gezielt eine ganz genaue Anzahl von Takten ausgeben kannst. Um beispielsweise einen Roboter um 90 Grad zu drehen braucht man je nach Radgröße eine festgelegte Zahl von Takten. Die Geschwindigkeit in der man die schickt ist eigentlich völlig egal - solange die Anzahl stimmt würde der Bot immer einen 90 Grad Winkel drehen. Teilt man die Anzahl der Takte durch 2 dann hat man den Wert für die 45 Grad Drehung usw. Man kann also den Bot in jedem Winkel genau drehen und bewegen, man muss nur die Taktzahl addieren.
Das ganze würde man nicht mehr so genau hinbekommen wenn du einen Taktgenerator benutzt.
Aber vermutlich willst du sowieso etwas anderes mit dem Schrittmotor machen. Für schnelle Flitzer und Rennbots ist ein Schrittmotor sowieso nicht sonderlich gut geeignet - da solltest du vielleicht dann doch ein normalen Getriebemotor denken.
Beim Schrittmotor ist etwas Assemblercode oder zumindest compilierter Basic-Code wie mit AVR-Bascom empfehlenswert, da bekommt man schon recht flotte Taktraten hin. Timer braucht man noch nicht mal unbedingt.
Gruß Frank
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln
Lesezeichen