-         

Ergebnis 1 bis 10 von 10

Thema: routine für schrittmotor in c-basic gesucht.

  1. #1
    Gast

    routine für schrittmotor in c-basic gesucht.

    Anzeige

    nicht daß ich nicht in der lage wär,das ding nicht steuern zu können,aber
    es is einfach zu langsam.

    ich arbeite mit 3 ports

    1 für enable
    1 für r/l lauf
    und 1 mal step

    meine routine funktioniert eigentlich einwandfrei,bloß der motor dreht zu langsam.

    meine bisherige sub sieht ungefähr so aus:

    enable = 1
    cw_ccw = 1
    for x = 1 to 20
    pulse step
    (pause y)
    next
    enable = 0

    dem byte y hab ich natürlich verschiedene werte zu gewiesen,
    um zu experimentiert ,aber ohne erfolg.

    das delay is drin,weil wenn ich ohne delay "pulse" verliert der motor schritte,und das ohne last.



    dann hab ich noch ein weiters problem mit dem auslesen der ports
    hab für 2 motoren jeweils 2 endschalter.
    also 4,jeder belegt einen digitalport.
    in etwa so:

    define t1 port[10]
    define t2 port[9]
    ...
    ..

    in der anleitung zu c-control steht jetzt,
    daß ein geöffneter taster eine logische 1 am zugewiesenen port liefert,und ein geschlossener taster eine logische 0.

    wenn ich jetzt aber z.b.

    if NOT t1 ...

    abfrage,hab ich dasselbe resultat wie bei

    if t1 ...

    nämlich gar keins.

    in der simulation funkts,aber nicht in der praxis.
    es sei angemerkt,daß meine angehängte hardware DEFINITIV in ordnung ist.
    nachdem ein port nur 0 oder 1 also true or false haben kann,muß ich ja wohl nicht mehr abragen

    if t1 = 0 ....

    oder?

    für hilfe wär ich wie immer sehr dankbar.

    greetz... Mr.G.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    25.11.2003
    Ort
    Freiberg
    Alter
    55
    Beiträge
    237
    Damit der Port als Eingag funktioniert muß er glaube ich disabled werden.

    Gruß

    Torsten

  3. #3
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2004
    Beiträge
    378
    Hi,

    was für eine C-Control benutzt du? CBASIC 2.02 hat Programmierbare Pull Up´s die alte jedoch nicht die musst du noch mit etwa 1K --- 33K nach +5V ziehen!

    Lass den Motor über eine Schrittmotor Tabelle laufen und nicht über Impulse!

    By .... Ulli

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    27.08.2004
    Beiträge
    159
    Ich denke mit ner Schrittmotortabelle kommmt man hier nciht weit, da scheinbar schon ein Motortreiber für SM verbaut ist der eben über die drei Leitungen CW/CCW (Richtung), Enable (an/aus) und Clock (Impulse) verfügt.
    Meine Motoren werden direkt über den Timer des µC angepulsed, das funktioniert recht problemlos

  5. #5
    Gast
    ich verwende die c- control 1

    das problem mit den "nicht invertieren" hab ich gelöst,jetzt gehts nur noch um den motor.

    ich hab jetzt einen DC-Spannungswandler gebastelt und hab ca. 20 V zur verfügung (max 2 A)

    aber mehr power hat der trotzdem nicht.
    is sauschwach das ding.

    und die geschwindigkeit läßt sich auch nicht regeln.
    außer mit delays verzögern.
    aber ich hätts gern schneller.

    mit

    pulse step

    ohne delay springt der nur nervös herum.
    also is der takt zu schnell,oder meine hardware zu langsam.
    kann man den l297 höher takten als 50khz?

    wenn ich mit dieser geswchwindigkeit mein TFT schwenke,bin ich eingeschlafen,bevor der film läuft.
    der Schrittmotor bekommt nämlich auch noch ein getriebe.
    den motor hab ich aus einem drucker ausgeschlachtet,und weiß,daß er schneller geht,er hat den druckkopf gesteuert.
    würde er nur so schnell laufen wie jetzt,würde der drucker für eine seite,etwa 3 tage benötigen.

    HELP!!

  6. #6
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2004
    Beiträge
    378
    Hallo,

    also ich hoffe nicht das du Ihn mit 50Khz ansteuerst da geht nicht recht viel *g*

    Die Drehzahlen von Schrittmotoren ligen so bis max. 200U/min. da ist er aber bereits sehr schwach.

    100U/min sind meistens recht gut und er zieht noch was aber 50Khz ist die falsche Frequenz.

    Ich würd das ganze schwenken über einen DC-Getriebemotor lösenund einen Istwertgeber (POTI) das geht wie ein Servo und funtzt!

    MfG.

    By... Ulli

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    18.03.2004
    Beiträge
    225
    50khz Ausgangstakt mit C-Control ohne Assembler?

    Ich hatte mal ein ähnliches Verhalten, aber da war eine Stepper-Phase schlecht kontaktiert...

    RG

  8. #8
    mr.g.
    Gast
    Also ich hab jetzt ein bissl experimentiert.

    programmtechnisch hab ich jetzt das maximum rausgeholt.

    wenns noch schneller soll,muß ich die hardware anpassen.

    ich verwende die im tutorial vorgestellte schaltung mit den 297,298
    hab den 22k widerstand rausgenommen und durch ein 10 k poti und 10k widerstand ersetzt,dachte,das würde den 297er schneller schalten lassen.
    is aber nicht so.
    außerdem hat der motor immer noch kein drehmoment.
    das haltemoment is aber in ordnung.
    mit 100 rpm wär ich schon zufrieden,aber im moment siehts eher nach einem zehntel davon aus.

    was kann ich noch versuchen?

    ich hab in meiner routine die delays rausgenommen,und durch einfache variablenzuweiseungen ersetzt,um die control zu beschäftigen,bis der motor den schritt ausgeführt hat.

    das sieht jetzt ungefähr so aus:


    for a = 1 to 50 (50 schritte)
    pulse clock (no comment)
    c = c
    c = c
    c = c (je mehr zuweisungen,desto länger die verzögerung)
    .
    .
    .
    next



    aber schneller wurde das auch nicht wirklich.
    zwar schon merklich,aber zu wenig.

    what next?

    mfg,mrg

  9. #9
    Gast
    nachdem ich mein tft in verschiedenen winkeln stoppen möchte(wg. z.b. sonnenlicht,oder blickwinkel optimal einzustellen,hab ich die Schrittmotor variante gewählt. außerdem hab ich das alles schon aufgebaut,ich plane nicht mehr um. ich werde das schaffen,egal wielang es dauert. und SO schwer kanns ja auch nicht sein.

    mrg

  10. #10
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    06.08.2004
    Beiträge
    378
    Hi,

    da schau dir das mal an, der hat das a mit einer C-Control gemacht.
    Hab dieses Programm a mal auf Parsic umgewandelt und Proton+

    http://www.wolfgang-back.com/PDF/Schrittmotor.pdf

    Also jetzt musst es hinbringen.

    By Ulli

Benutzer, die dieses Thema gelesen haben: 0

Derzeit gibt es keine Benutzer zum Anzeigen.

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •