-
        

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Schrittmotor <- RS232 <- PC

  1. #1

    Schrittmotor <- RS232 <- PC

    Anzeige

    Hallo.

    Ich habe vor einen (später zwei) Schrittmotor per PC via RS232 zu steuern.
    Aufgebaut habe ich jetzt die Schaltung zur Motorsteuerung aus dem Datenblatt des L298.
    Mein Problem ist jetzt, dass mir noch die Schnittstelle richtung Rechner fehlt.
    Das ganze soll ohne Mikrocontroller realisiert werden.

    Hat da evtl jemand einen Schaltplan rumliegen? (max232 ist vorhanden, wäre vorteilhaft wenn diese ic in der Schaltung verwendet werden würde)

    Danke schonmal.

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    02.03.2005
    Ort
    OWL
    Beiträge
    216
    Hallo,
    ich denke, dass das ohne Mikrocontroller nichts wird, weist Du, wie Daten über die RS232 übertragen werden?!
    Ohne Controller bringt Dir der MAX232 gar nichts, möglich wäre jedoch, Controller und max wegzulassen und die nötigen Signale für Richtung und Takt mit Zenerdioden direkt von den Portleitungen der RS232 zu nehmen. Ein Controller wäre auf jeden Fall die bessere Wahl; so könntest Du Dir ein Empfangsprotokoll ausdenken und viel einfacher mehrere Motoren ansteuern. Protokoll zum Beispiel in der Form: NeuePosition, Geschwindigkeit oder ähnliches - so könnte ein Controller sehr einfach die Takt- und Richtungssignale generieren und mit der gesetzten Geschwindigkeit an die übermittelte Position fahren.
    Wenn das alles nix für Dich ist, würde ich sowas lieber über den Parallelport realisieren...

    Ruppi

  3. #3
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Hallo v29a!
    Habe mir den Datenblatt vom L298 kurz angeschaut. Das wichtigste ist eine Berechnung der Frequenz der Impulse, die über die serielle Schnittstelle zum L298 übertragen werden sollen. Das hängt von den Motoren ab, wieviel Schritte sie für eine Umdrehung brauchen und mit welcher maximalen Drehzahl sie arbeiten sollen. Wenn die Frequenz höher als die maximale Baudrate der seriellen Schnitstelle geteilt durch 8 ist, geht es ohne etwas schnelleres dazwischen nicht.
    MfG
    P.S. Schau dir in unserem Forum "Weitere Projekte und Bauanleitungen" das Thema "L297/L298 Kompletttreiber sehr kleine Bauform" an. Vieleicht is da was interesantes drin.

  4. #4
    ja ich habe jetzt auch bemerkt das es über seriell zwar ohne mc möglich ist aber wohl auch recht aufwendig ...

    wenn du schaltungen für den parallel port hast wär das auch klasse

  5. #5
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    fertige für Dich habe ich sicher nicht, aber ich schon per LPT viel Hardware gesteuert habe. Das Problem bei LPT ist, das sie mit reinen TTL Pegeln arbeitet und und sehr für Störungen auffällig ist. Die Länge des Verbindungskabels ist auf 5m beschränkt. Wie weit von dem PC sind Deine Motoren?

  6. #6
    Neuer Benutzer Öfters hier
    Registriert seit
    15.10.2005
    Ort
    München
    Alter
    43
    Beiträge
    5
    Dieses Projekt hier aus dem heise.de-Wettbewerb "Mach flott den Schrott" könnte Dich vielleicht interessieren:

    Da hat einer 'n Plotter mit Schrittmotoren aus alten Deskjet-Druckern gebaut, die er über den Parallelport ansteuert. Um mit acht Steuerleitungen vier Motoren à vier Wicklungen ansteuern zu können braucht's paar (CMOS-)Logikgatter (für demux) und Optokoppler lösen u.a. das TTL-Problem (wenn ich's richtig kapier; bin auch nicht so der Checker...). Stromversorgung ist extra, ich glaub' man kann's eh gleich vergessen, den Strom aus dem LPT zu nehmen.

    Projekthomepage: http://www.bittnermichael.de/elek.shtml
    Nachbauanleitung ("Das ist keine Detail-Bauanleitung für DAUs" - aber halb so wild): http://195.245.13.101/plotter.zip

    _______
    p.s.: Mein Name ist NICHT Bittner...

  7. #7
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    Hallo Meisl!
    Ich nehme an, dass Dein letzter Beitrag für mich vorgesehen ist.
    Mein Kommentar: Wenn man Schrot verarbeitet, kann nichts mehr schief gehen, oder? Ich lasse lieber Figer weg von dem Projekt, weil, wenn es für Dich schon lustig ist, kann für mich tödlich sein.
    Ab jetzt ernst. Ich bin für eifachste Lösungen, die nach gründlicher Analyse des Problems gewählt sind. Es gibt keine Perfekte Lösung, höchstens eine sehr gute. Ich bin kein Roboter Spezialist und die Problematik der möglichen Störungen ist mir nur allgemain bekannt. Du must selber entscheiden (nicht unbeding wissen), wie Du dass machst. Auf meine Hilfe bei konkreten Problemen kannst Du in jedem Fahl zählen.
    MfG

  8. #8
    Neuer Benutzer Öfters hier
    Registriert seit
    15.10.2005
    Ort
    München
    Alter
    43
    Beiträge
    5
    Zitat Zitat von PICture
    Hallo Meisl!
    Ich nehme an, dass Dein letzter Beitrag für mich vorgesehen ist.
    Äh nein, eigentlich eher für v29a, der vier Posts weiter oben nach Schaltungen für den LPT gefragt hatte. Aber natürlich darf sich jede(r) dafür interessieren (oder eben auch nicht) - ist ja schließlich ein öffentliches Forum.

    Aus dem was Du (PICture) weiter schreibst schließe ich, daß Du diesen Deskjet-Plotter für einen ziemlich grattligen Schmarrn hältst, stimmts?
    Naja, könntest recht haben. Ich weiß es nicht.

    Mir schien es halt so, als wollte v29a erst mal ein bißchen experimentieren mit Schrittmotoren und deren Ansteuerung und zwar zunächst ohne sich mit einem µC und dessen Programmierung zu befassen (dh. stattdessen lieber den Desktop programmiert).
    Und da ist mir eben dieser Deskjet-Plotter eingefallen, von dem ich gehört hatte und der ja doch irgendwie zu funktionieren scheint.
    Man kann bei dem Ding zumindest mal sehen, wie man den LPT von einem Programm aus ansteuert und mit den TTL-Pegeln dort dann irgendwas anfängt. Wie und ob das jetzt mit einem L298 (plus L297?) sinnvoll zu kombinieren ist weiß ich nicht, sorry.

    Also nochmal deutlich: Weder habe ich dieses Ding erfunden noch aufgebaut und habe ich das in nächster Zeit auch nicht vor.

    Trotzdem Danke für Dein Angebot, PICture. Vielleicht könntest Du genauer sagen, wo Deiner Meinung nach Probleme bei der Art und Weise liegen, in der bei diesem Deskjet-Plotter die Schrittmotoren angesteuert werden? Interessiert mich jetzt doch und vmtl. auch v29a.

  9. #9
    Erfahrener Benutzer Lebende Robotik Legende Avatar von PICture
    Registriert seit
    10.10.2005
    Ort
    Freyung bei Passau in Bayern
    Alter
    66
    Beiträge
    10.969
    @meisl
    Nein, ich habe gar nicht den Drucker, sodern Titel des Projektes "Mach flott den Schrott" gemeint. Ich wollte schnell kurz schreiben und habe das nicht bemerkt, das Du inzwischen Da bist. Sorry! Ich muß mehr aufpassen, bin da noch ziemlich "neu".
    MfG

  10. #10
    Neuer Benutzer Öfters hier
    Registriert seit
    15.10.2005
    Ort
    München
    Alter
    43
    Beiträge
    5
    @PICture
    Na ok, immer mit der Ruhe.
    Jedenfalls würd' mich echt interessieren was Du von dem "Bittner-Ansatz" hältst. Du verstehst doch was davon (als Elektronikingenieur, wie ich sehe). Irgendwie finde ich das Ding hat so seinen Reiz, gerade wegen der Einfachheit.

    Also ich versuch' mal ein bißchen konkreter zu fragen.
    Dazu fange ich mal an die Bittner-"Dokumentation" etwas aufzubereiten, die - sagen wir mal - etwas [flipv:fcb4784510]mühselig zu lesen[/flipv:fcb4784510] ist . Die Links führen zu den entspr. Datenblättern, "->" bedeutet sowas wie "angeschlossen an".

    je 2 LPT data out
    -> Optokoppler K847P
    -> 2/4 - Demultiplexer aus CMOS-Gattern (zB. MC74HC02AN Quad 2-Input NOR Gate
    , MC74HC32AN Quad 2-Input OR Gate)
    -> irgendwelche Transistoren/FETs die ich nicht erkennen kann.
    -> 4 Motorspulen an gem. GND. Vmtl. parallel dazu LEDs mit Vorwiderständen zur Funktionsanzeige/Überwachung.

    Das ganze versorgt aus der 12V-Schiene eines (separaten) Computernetzteils.
    Anzumerken ist vielleicht noch, daß auf den vorliegenden Platinen die Gatter-ICs wohl ein bißchen verschwenderisch eingesetzt sind (mir scheint etwa, daß die NORs nur als NOT und überhaupt nicht immer alle der Gatter in den Mehrfachgatter-Bausteinen genutzt werden).

    Der Demultiplexer (aka demux, meine Benennung) bildet dabei die vier möglichen Bitmuster aus zwei Bits (das sind 00, 01, 10, 11) der jweiligen beiden LPT data out auf vier Bitmuster aus vier Bits ab (0001, 0010, 0100 bzw. 1000), die dann mittels der Transistoren dazu benutzt werden, um die jew. Motorspule mit Strom zu versorgen (und die übrigen drei eben nicht).
    Da man auf diese Weise nur zwei Bit pro Motor benötigt kann man die 8 data out des LPT für die unabhängige Ansteuerung von vier (derartigen) Schrittmotoren verwenden.

    Beispiel:
    Code:
    Um Motor 1 (Bit 0 und 1) mit doppelt so hoher Drehzahl und umgekehrter Richtung wie Motor 2 (Bit 2 und 3) zu betreiben würde man in gleichen Zeitabständen folgende Bitmuster auf den LPT legen:
    
    3210 <- Bitnummer
    ----
    0000 (Anfangszustand)
    0001 (Motor 1 einen Schritt clockwise, Motor 2 unverändert)
    1110 (Motor 1 einen Schritt clockwise, Motor 2 einen Schritt anti-clockwise)
    1111 (Motor 1 einen Schritt clockwise, Motor 2 unverändert)
    1000 (Motor 1 einen Schritt clockwise, Motor 2 einen Schritt anti-clockwise)
    1001 (Motor 1 einen Schritt clockwise, Motor 2 unverändert)
    0110 (Motor 1 einen Schritt clockwise, Motor 2 einen Schritt anti-clockwise)
    0111 (Motor 1 einen Schritt clockwise, Motor 2 unverändert)
    0000 (Motor 1 einen Schritt clockwise, Motor 2 einen Schritt anti-clockwise)
    ... usw.
    Jetzt die Fragen:
    Hab' ich das so einigermaßen korrekt beschrieben?
    Kann man das so machen oder geht dabei (langfristig) irgendwas kaputt?
    Wie sieht's mit der zeitlichen Auflösung und Genauigkeit (ist nicht dasselbe!) aus?
    Welche Drehzahlen kann man damit (theoretisch) erreichen?

    Mfg

Seite 1 von 2 12 LetzteLetzte

Berechtigungen

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