hi... Ich möchte gerne eine Gray Code Signal auswerten und damit einen Schrittmotor ansteuern? Wie kann ich so etwas realisieren? DANKE
Das ist ganz einfach:
1 | _________ ____________ ____________ _________ |
2 | | | | | | | | | |
3 | | Signal- | ---> | Gray-Code- | ---> | Stepper- | ---> | Stepper |--+-+BRATHÄHNCHEN+-+- |
4 | | quelle | | Decoder | | Controller | <--- | | | | |
5 | |_________| |____________| |____________| |_________| A A |
Man beachte, dass das in guter übereinstimmung mit der Problemstellung alles Blackboxen sind (abgesehen vom Geflügel;-) Oder in anderen Worten: gehts noch ungenauer?
Ja ok, danke aber nun mal langsam: 1)Meine Signalquelle ist eine Welle! 2)dann der Gray code decoder 3)weiters die schrittmotor steuerung 4)und zum schluss der Schrittmotor und wie sieht so eine Schaltung aus? DANKE
Die einzig mögliche Antwort: Indem Du einen Gray-Code-Decoder an einen Schrittmotor-Treiber anschließt. Das ist ja schon der Hammer. Leute, da Euch alle Information im Internet zu Füßen liegt: lernt das Suchen und das Fragen! Versetze Dich doch mal in unsere Lage, wir wissen überhaupt nichts von deinen "Zutaten". - Welche Welle - Welche Drehzahl - Welche Geberfrequenz / -Auflösung - Welche Genauigkeit - Welcher Schrittmotor - Welche Leistung - Welche Dynamik Und - was willst Du eigentlich (ernst gemeinte Frage)?? Soll sich der Schrittmotor synchron zur Welle drehen? Oder was?
hallo! Ich kann dir genau Infos geben! Ich bin nur sehr froh das es s profis gibt wie dich. Ich kann nur von dir lernen! Meine Angaben: Das Signal kommt von einem Windrad (Windrichtungsgeber), dies ist ein Absolutwertgeber (=Winkelmessung)(Gray Code). Der Schrittmotor hat 48Schritte je Umdreheung. Nennspannung 12VDC und 1 A. Die Genauigkeit ist egal, da das ganz System nur für das Windrad ist. Der Schrittmotor sollte sich Synchron mit dem Absolutwertgeber drehen. Da der Wind und die Rotorblätter immer den gleichen Winkel aufweisen sollen. DANKE
...(gast) schrieb: > Der Schrittmotor sollte sich Synchron mit dem Absolutwertgeber drehen. Hallo, dann musst du an den Schrittmotor den gleichen Absolutwertgeber anschliessen und die Differenz auf Null regeln. Der Schrittmotor liefert nämlich keinerlei Information darüber, in welcher Stellung er steht, und nach dem Einschalten ist die rein zufällig. Gruss Reinhard
Wieviel Schritte hat den der Geber pro Umdrehung? Und soll der Schrittmotor die alle ansteuern? Oder nur so ungefähr? Weil wenn der Geber 64 Schritte hat, der Motor 48, wird das interessant. Wenn der Geber nur 16 Schritte hat, muss der Motor halt pro Geberposition 3 Schritte machen. Oder wird der Motor nochmal mit einem Getriebe auf das Windrad untersetzt? Du kannst auch an den Motor eine Lichtschranke setzen. Beim Einschalten macht der Motor eine Bewegung, bis er mit der Lichtschranke übereinstimmt. Von dort aus können dann die Schritte gezählt werden. Obwohl, könnte bei einer Windböe zu Schrittverlusten führen, dann steht das Windrad irgendwo.
Und nicht zu vergessen: Wo ist der Troll versteckt? Das hier kann doch nicht wahr sein.
Hallo! Der Absolutwertgeber hat genau 48 Schitte (Eigenbau). D.h. ich brauche kein Getriebe oder ähnliches. Mfg
Die Idee mit dem zweiten identischen Encoder auf der Achse des Schrittmotors ist eine gute Idee. Diese Lösung hätte zumindest den Vorteil, dass Schrittverluste wegen Überlast automatisch korrigiert werden. Eigentlich ist das eine nette Aufgabe sowas mit einem kleinen Mikrocontroller zu erschlagen.
>das ist ja schon krankhafter Durchfall.
Ich bitte solch Ausdrücke zu unterlassen.
Du kannst ja auch etwas produktiveres schreiben!
Kann ich, ja. Mache ich auch gelegentlich. Aber bei Fragen wie deiner tut es mir nicht leid um den Thread. Du könntest ein Minimum an Verstand aufwenden, bevor du eine Frage stellst und den Leuten hier Zeit stiehlst. Dann bin ich auch ernsthaft dabei. Bei dem Quark, mit dem du oben anfängst, kannst du doch nicht ernsthaft vernünftige Antworten erwarten, oder? Außerdem hattest du mit Schitte angefangen :-)
Toll, also den Encoder und das Windrad hast Du ja. Sonst noch was? Schrittmotor, Treiber, Controller vorhanden? Wenns nicht Graycode wäre, könntest Du das durch paar Logikschaltkreise erschlagen. Da Graycode hier schon sinnvoll ist (siehe den Artikel zum Wetterhahn bei ELV), würd ich das so steuern: Je 1 Encoder am Windrichtungsmesser (Soll) und am Windrad (Ist). 1. beide Encoder in µC einlesen 2. Graycode in normalen Binärcode wandeln (über Tabelle), weil der µC das besser rechnen kann 3. event. über mehrere Werte filtern, wegen Sprüngen 4. Differenz von Soll und Ist berechnen, unter Berücksichtigung der 48-Positionen-Periode 5. wenn Ist größer Soll + Hyst, Schritt zurück wenn Ist kleiner Soll - Hyst, Schritt vor sonst mache nichts weiter bei 1. Die Hysterese würd ich einführen, damit das Windrad nicht ständig springt, wenn der Fühler zwischen 2 Positionen pendelt. Die Steuerung passt in einen ATtiny2313 oder einen ATmega8. Der ist damit so unterfordert, dass er nebenher noch SETI rechnen kann. Ob Du die Schritte jetzt in Mikroschritte auflöst oder Vollschritte machst, hängt von der Größe des Windrades und der Mechanik ab. Da Du dazu nichts verraten hast...
Btw: Graycodescheibe mit 48 Positionen? Wie das? Wie machst Du den Übergang von 47 auf 0? Der Witz am Graycode ist doch, dass sich von einer zur nächsten Position immer nur ein Bit ändert. Aber von 47 auf 0 müssten sich mehrere Bits ändern. Die Scheibe müsste 2^n Positionen haben, also 32, 64 oder 128... Oder?
101 100 110 010 000 001 011 111 tadaa... geht bei 48 auch.
Michael M. schrieb: > 101 100 110 010 000 001 011 111 > tadaa... geht bei 48 auch. Sein Gray-Code hat 6 bit. Trotzdem denke ich, dass es auch mit 6 bit möglich ist eine Gray-Kodierung zu finden.
Hallo sven!
>Wenns nicht Graycode wäre, könntest Du das durch paar Logikschaltkreise
erschlagen.
Wenn möglich sollt ich es auch mit Digi-Bausteinen (Logikschaltkreisen)
realisieren. Sollte ich in diesem Fall einen Inkrementalwertgeber
benutzen!
Wäre vl einfacher zu lösen...
Mfg
@Michael und Helmut: Euch ist aber aufgefallen, dass das Beispiel auch 2^n Positionen hat. Bei 48 Positionen ist es meiner Meingung nach nicht möglich. @... Nimm einen µC. Mit Graycode rechnen dürften nicht viele Logikbausteine können. Du must also auf jeden Fall umrechnen. Absolutwertgeber geben auch Graycode aus. Vielleicht findest Du einen Wandler zu BCD dafür, dann kannst Du digitale Zähler und Vergleicher nehmen. Der µC ist trotzdem einfacher und flexibler. Inkrementalgeber hat das Problem, dass Du beim Einschalten nicht weisst, wo Du bist. Und es dürfte schwierig werden, den Wind zu überreden, Deine Wetterfahne erst einmal im Kreis zu drehen. Poste mal bitte Deine Graycodeaufteilung für 48 Positionen.
Was mir etwas zu Denken gibt: Warum kommen denn in letzter Zeit die 48 Schritte/U immer öfter ins Spiel? So wie im Beitrag "Winkelsensor, Schrittmotor, Steuerung"
Helmut S. schrieb: > Michael M. schrieb: >> 101 100 110 010 000 001 011 111 >> tadaa... geht bei 48 auch. > > Sein Gray-Code hat 6 bit. Trotzdem denke ich, dass es auch mit 6 bit > möglich ist eine Gray-Kodierung zu finden. war auch nur als beispiel gedacht, das die zählweise verdeutlichen soll. für 6 bit war ich zu faul =)
Mal ngenommen ich nehme jetzt einen Absolutwertgeber. Dieser liefert mir einen Gray Code. Diesen Gray code werde ich umwandeln in einen BCD-code. BCD to Gray Code umwandler besteht meiner Meinung nach aus Exklusiv-Oder Verknüpfungen (XOR). (siehe Anhang) Wie würde dann diese realisierung mittls Logikschaltkreisen aussehen. Denn dann habe ich ja das Problem der Referenzfahrt nicht.
Michael M. schrieb: > für 6 bit war ich zu faul =) nicht 6 bit, sondern 6 Schritte: 000 001 011 111 110 100 3 x verdoppeln gibt 48. Aber zu was soll eine Umwandlung mit Logikbausteinen gut sein? Dann hat man die Position zwar in Binär oder BCD, aber das Problem ist damit keineswegs gelöst. Das ist wieder so ein Thread, wo der grösste Unsinn diskutiert wird, weil der Fragesteller nicht in der Lage ist, eine Lösung zu verstehen. Nachdem schon 3 mal ausgeführt wurde, dass die Stellungen verglichen werden müssen, und das völlig ignoriert wird, muss man das Problem als "mit den vorhandenen Mitteln unlösbar" einstufen. Mittel sind in dem Fall die geistigen Möglichkeiten. Gruss Reinhard
Das wird unser österreichischer Freund ... jetzt aber nicht gerne hören!
@Gast Ich bin interessiert daran wie so etwas praktisch realisiert wird. Wie sieht eigentlich die Opto/Mechanik zum "abtasten" der Graycode-Scheibe aus? Bild? Wie werdden die 6 Empfangsdiodendioden befestigt? Ist deine Lösung mit Durchlicht- oder Reflexionsprinzip? Gibt es sowas als Block zu kaufen?
@Helmut: Guckst bei bei ELV nach Wetterhahn. Dioden im Durchlicht. Zu kaufen gibt das mit bis zu 4096 Positionen als Absolutwertgeber, aber das willst Du nicht wirklich bezahlen... Ich hab letztens nen Kodak-Diaprojektor repariert, mit serieller Schnittstelle, Diapositionswahl, Dimmen, Programmautomatik und dem ganzen Kram. Auf der Hauptplatine waren gefühlt 100 ICs, um einen Schrittmotor, einen Autofokusmotor und einen Motor für den Bildwechsel anzutreiben. Heute würde man das mit einem µC und 3 Treiberschaltkreisen machen. Ne sorry, man baut einfach keine IC-Friedhöfe mehr, wenn man einen µC verwenden kann. Und wenn Du einen Fehler in der Schaltung hast, fängst Du an Leiterbahnen aufzukratzen und rumzufädeln.
Hmpf, ich seh gerade, die - uralte - Anleitung zum Wetterhahn gibt es bei ELV nicht zum Download. Wollen wohl lieber ihre eigenen verkaufen. Und ich hab die Anleitung auch nicht mehr. Im Prinzip waren das 2 Platinen, einmal 4 LEDs, auf der anderen 4 Phototransis. Dazwischen auf der Achse des Wetterhahns befestigt die Codescheibe mit 16 Positionen, ich glaub aus Pertinax gefräst. Das kann man mit bißchen Bohren und Feilen hinbekommen. Angezeigt wurden die 16 Positionen mit 16 LEDs, Übertragung war glaub ich seriell. Die Achse war in 2 Kugellagern gehalten, oberhalb des Gehäuses mit der Elektronik war auf der Achse ein sich mitdrehender kegelförmiger Schutz, damit kein Wasser in das Gehäuse kommt.
Hallo, ich wollte keinen extra Beitrag aufmachen. Ich suche einen Gray to BCD decoder. Gibt es so einen Baustein und wie heißt er? Danke sulospace
Andreas Knaup schrieb: > ich wollte keinen extra Beitrag aufmachen. wäre aber wohl besser. Ich hätte auch noch ein paar Fragen die hier nicht dazu passen. Rate mal, warum ich die nicht hier unterbringe?
>Gibt es so einen Baustein und wie heißt er?
Eher nicht. Um wieviele Bits wuerd's denn gehen ? Falls es den einen
N-bit Gray-zu-Binaer gaebe, muesst man noch den passenden Binaer nach
BCD codierer kaskadieren. Ein Controller ist sicher die einfachere Wahl.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.