Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Programmierung TMV222 über Basic++ Kategorie: Hardware (von Guido - 16.11.2005 16:25)
 Als Antwort auf Re: Programmierung TMV222 über Basic++ von Spletzer Michael - 15.11.2005 13:46
Guido nutzt:  CC1-M-Unit V1.2/2.0

>
> >
> > Wie steuere ich die Referenzfahrt eines Schrittmotores über das I²C Bus Stepper Modul (TMC222) in Basic++ an. Wie stoppe ich den Schrittmotor bei erreichen einer Position die kleiner als die Targetposition des TMC222 ist.  
> >
> Die Referenzfahrt kann nicht direkt angefahren werden. Als Referenzpunkt können 2Möglichkeiten in Betracht kommen.
> 1. Einen Wert positiv oder negativ eingeben. Den Motor gegen einen festen Anschlag drehen lassen der innerhalb des Wertes liegt. Nach Abschalten den Motor reseten. Das ist der erste Referenz-Nullpunkt.
> oder
> 2. Den Motor mit einer eintgegengesetzten Drehrichtung aus dem Anschlag herausdrehen lassen und sofort stoppen mit FUNCTION HARD_STOP. Dann den Motor reseten. Das ist der andere Referenz-Nullpunkt.
>
> Obwohl im Manual vom TMC222 die Referenz Search mit Commandbyte 88Hex angegeben ist wird dieses Byte nicht verarbeitet. (SCHROTT) Warum dann auf dem Schaltbild ein Referenzschalter angegeben ist weis ich nicht.
>
> Den Motor kann man 2Mal abschalten.
> 1. mit der Function Hard_Stop (sofort stopp ohne Nachlauf)
> oder
> 2. mit der Function Soft_Stop (sofort stopp mit Nachlauf)
>
> Die Function Soft_Stop muss in der Datei TMC222_Generic.bas im LIB Ordner neu geschrieben werden.
>
> FUNCTION SOFT_STOP(ADDR ref TMB1)
> PUTCOMMAND(ADDR,8Fh)
> END FUNCTION
>
> Viel Spass
> Michael
>
>
Hallo,
ich bin neu hier im Forum, aber ich schlag mich gerade auch mit der Programmierung bzw Ansteuerung eines Steppers via des von Conrad angebotenen Stepper-Modul herum.

Was den Referenzschalter betrifft hab ich heut herausgefunden, das irgendwas mit der Beschaltung auf der Conrad-Platine nicht passt. Wenn du den Kondensator C8 entfernst und den Widerstand R2 durch eine Drahtbrücke ersetzt und die R-C-Beschaltung extern aufbaust, kannst du den Status des Referenzschalters abfragen (FullStatus 1 response -> Byte6 -> Bit4). Wird der Kontakt auf V+ bzw auf GND geschalten, entspricht dies einer logischen "1", beibt der Konakt offen entspricht dies einer "0".

Was die Referenzfahrt betrifft habe ich diese (momentan) so gelöst, dass ich zunächst in Richtung des Referenzschalters fahre und dabei den Status 1 abfrage. Sobald der Referenzschalter erreicht ist, löse ich einen HardStop, gefolgt von einem ResetPosition aus. Danach noch einmal eine Status 1-Abfrage (um das StepLoss-Bit zurückzusetzen, welches durch den HardStop gesezt wurde).

Gruß
Guido

 Antwort schreiben

Bisherige Antworten: