Archiv der Kategorie: Exkursion

  1. Halbleiter-Poesie und kostenloses Know-How

    Hinterlasse einen Kommentar

    17.08.2015 von plaintron

    In memoriam Jim Williams, der mich mehr über Schaltungstechnik lehrte als alle anderen Menschen, die jemals versuchten, mir etwas darüber beizubringen.

    In diesem Blog möchte ich eigentlich keine einzelnen Firmen, Marken oder Produkte hervorheben (solange sie mich nicht schrecklich gut dafür bezahlen 😉 ), aber letztendlich stellt all die Komponenten, mit denen man als Bastler so arbeitet, irgend eine Firma her, deren Name dann auch genannt werden muss. Und manche Hersteller geben sich einfach sehr viel Mühe bei der Entwicklung neuer Bausteine oder sind auf ihrem Gebiet außergewöhnlich kompetent.

    In meiner Lehrzeit haben mich speziell die durchdachten Schaltungen von Maxim fasziniert, weil damit oft eine Aufgabe mit einem einzigen IC gelöst werden konnte, für die vorher eine ganze Platine notwendig war. Heute erlebe ich das immer wieder mit Bauteilen von Linear Technology, besonders bei linearen und getakteten Spannungsreglern sowie bei A/D- oder D/A-Wandlern.

    Außerdem mag ich die Application Notes von LT. Als das Internet gerade anfing interessant zu werden, habe ich alles was ich an „AN“-Dokumenten von LT bekommen konnte heruntergeladen, ausgedruckt (Festplatten waren damals ziemlich klein) und in Ordnern gesammelt. Viele dieser mehrseitigen Abhandlungen zu einem bestimmten Thema waren nicht nur informativ, sondern auch unterhaltsam geschrieben, weshalb ich die gewöhnlich lieber gelesen habe als meine Fachbücher aus der Hochschulbibliothek.

    LT-Entwickler Jim Williams hat in der „Application Note 35“ von 1989 über Schaltregler geschrieben und sehr verständlich erklärt, wie ein Step-Down-Regler entwickelt wird und worauf man bei der Anwendung achten muss. Eine Seite, auf der es um die Auswahl der richtigen Induktivitäten geht, zitiere ich hier komplett, weil sie mir so gut gefällt:

    lt-inductors

    Jim Williams starb im Juni 2011 und bleibt vielen Entwicklern als Quelle kreativer Lösungen und tiefgehenden Analog-Know-Hows in Erinnerung.

    Viele Texte, die er für LT schrieb, finden sich in diesem Archiv:

    Texte von Jim Williams
    http://www.linear.com/doclist/?au=Jim+Williams

    Sichert Euch diese Kunstwerke, bevor sie verschwinden.

    williams_doodle

    Letzte Seite der Application Note 25 vom September 1997
    Switching Regulators for Poets
    A Gentle Guide for the Trepidatious

    http://cds.linear.com/docs/en/application-note/an25fa.pdf

     

    Links:

    Better before bigger: How Linear Tech was built
    http://www.edn.com/design/systems-design/4439975/Better-before-bigger–How-Linear-Tech-was-built

    Reading Jim Williams
    http://readingjimwilliams.blogspot.de/

    Jim Williams’ Coffee-Table Book for Analog Engineers
    http://electronicdesign.com/blog/jim-williams-coffee-table-book-analog-engineers

    An Analog Life: Remembering Jim Williams
    http://www.computerhistory.org/atchm/an-analog-life-remembering-jim-williams/

    Jim Williams and Bob Pease
    http://realityandreason.blogspot.de/2011/06/jim-williams-and-bob-pease.html

    Analog guru Jim Williams dies after stroke
    http://www.edn.com/electronics-blogs/readerschoice/4368121/Analog-guru-Jim-Williams-dies-after-stroke

    Advertisements
  2. Step by Step: Video Stepper Motor Basics

    Hinterlasse einen Kommentar

    11.08.2015 von plaintron

    In den letzten Beiträgen der Serie „Step by Step“ habe ich einige Grundlagen der Schrittmotor-Ansteuerung erklärt. Ein Video von STMicroelectronics geht hier noch etwas mehr in die Tiefe, zeigt mathematische Zusammenhänge und illustriert verschiedene Optimierungsmöglichkeiten:

    Stepper motor basics (ePresentation) STMicroelectronics (39:31)

  3. Step by Step: Ansteuerung

    Hinterlasse einen Kommentar

    05.08.2015 von plaintron

    Im letzten Beitrag dieser Serie ging es um den Leistungsteil der Schrittmotorsteuerung. Nun fehlt noch das passende Signal, um die Endstufen im richtigen Takt so umzupolen, dass daraus ein Drehfeld für den Motor resultiert.

    Die Grafik mit den Spannungsverläufen habe ich hier auf acht Takte gekürzt und jeweils eine 1 für V+ und eine 0 für GND eingetragen.

    signale_c

    Nun lässt sich für jeden Takt ein Wert in Form einer Binärzahl mit 4 Bit darstellen:

    1: 1000h-bridge
    2: 1001
    3: 0001
    4: 0101
    5: 0100
    6: 0110
    7: 0010
    8: 1010

    Nochmal zur Verdeutlichung: Die Endstufe hat 4 Anschlüsse. Je H-Brücke existiert ein Anschluss für „positiv“ (A und C) und ein Anschluss für „negativ“ (B und D). In unserem Beispiel soll jeweils am gerade aktiven Anschluss eine Spannung von +5V anliegen, ansonsten 0V. Das sieht also nach einem idealen Job für einen kleinen 8-Bit-Mikrocontroller aus. Wir nehmen uns einfach einen Port und verbinden die unteren 4 Bit mit dem Schrittmotortreiber. Die oberen 4 Bit bleiben ungenutzt oder werden durch logische Verknüpfung anderweitig genutzt.

    Was noch fehlt, ist das passende Programm. Wir könnten uns jetzt einen wahnsinnig raffinierten Algorithmus ausdenken, um die oben gezeigten Bitfolgen zu generieren. Wir können aber auch einfach ein 8-Byte-Array spendieren und die Werte dort ablegen. Das spart Rechenleistung, die wir für andere Aufgaben sinnvoller nutzen können.

    Die Zahlenfolge für dieses Beispiel lautet 8,9,1,5,4,6,2,10.

    Hexadezimal sieht das dann in C stark vereinfacht dann so aus:

    char states[8] = {0x08, 0x09, 0x01, 0x05, 0x04, 0x06, 0x02, 0x0A};

     

    Mit einer einfachen Schleife werden diese Werte nun nacheinander auf einen Port geschrieben:

    int step = 0;
    
    while (step < 8){
      PORTA = states[step];
      step ++;
      if ( step > 7 ) step = 0;
    }

     

    Natürlich fehlt hier noch eine Menge, etwa Initialisierungen und eine Verzögerung in der Schleife für die korrekte Drehgeschwindigkeit. Außerdem soll die Drehzahl variabel und auch die Drehrichtung umkehrbar sein. Um das Grundprinzip zu erklären genügt das aber und es gibt natürlich fertige Controller, die diese Aufgabe komfortabel erledigen. Das wird dann Thema des folgenden Artikels dieser Serie.

  4. Step by Step: Die H-Brücke

    1

    02.08.2015 von plaintron

    signale_exp

    Im dritten Teil meiner Schrittmotor-Serie wollen wir eine Schaltung herleiten, die in der Lage ist, den Motor mit einem Leistungssignal zu versorgen. Das Bild oben entspricht im Prinzip dem Graph aus dem vorherigen Beitrag, allerdings ist die Darstellung etwas anders gewählt.

    Wir betrachten hier jeden Anschluss des Schrittmotors einzeln: A und B für die blaue Wicklung, C und D für die gelbe Wicklung. Wie wir sehen, wird jeder Anschluss in einem bestimmten Takt zwischen Masse und Betriebsspannung hin und her geschaltet. Liegt Anschluss A auf Betriebsspannung und B auf Masse, fließt der Strom in positiver Richtung durch die Wicklung. B auf Betriebsspannung und A auf Masse sorgt für die umgekehrte Stromrichtung. Liegen beide Anschlüsse auf Masse oder auf Betriebsspannung, fließt kein Strom.

    Wir benötigen also ein Bauteil, das einen Punkt der Schaltung zwischen Betriebsspannung und Masse hin- und herschalten kann. Grundsätzlich können wir das mit zwei einfachen Transistoren in Reihe erledigen und unseren Wicklungsanschluss zwischen die beiden Transistoren hängen. Stark vereinfacht sieht das so aus:gegentakt_exp

    Wer sich schon mal mit Transistorschaltungen beschäftigt hat, erkennt sofort die Gegentaktschaltung, wie sie auch in Audio-Verstärkern zum Einsatz kommt. Dieser Aufbau lässt sich spiegeln, um eine Brückenschaltung herzustellen. Die Motorwicklung hängt dann zwischen den beiden Gegentaktschaltungen, was an den Buchstaben „H“ erinnert. Das Ergebnis wird dann auch H-Brücke genannt. Mit einer H-Brücke können wir einen normalen Elektromotor steuern. Je nach Eingangssignal dreht dieser sich dann links oder rechts herum bzw. überhaupt nicht.

    Für unseren Schrittmotor, der ja über zwei Wicklungen verfügt, benötigen wir zwei H-Brücken, also eine Doppel-H-Brücke. Diese Schaltung hat nun insgesamt vier Steuereingänge, 4 Ausgänge für die Spulen und sieht so aus (Prinzipschaltung L298 von ST):

    L298_block

    Wir sehen hier einige Logik-Bausteine in der Schaltung. Die sind in der Praxis aufwändiger als hier dargestellt und müssen nebenbei auch noch dafür sorgen, dass nie zwei in Reihe liegende Transistoren gleichzeitig schalten. Das würde nämlich dazu führen, dass der magische Rauch aus dem Bauteil entweicht und es nicht mehr funktioniert 😉 Außerdem wird der Ausgangsstrom getaktet, um ihn lastabhängig verändern zu können.

    Mit den Eingangssignalen In1 bis In4 wird der Motortakt gesteuert. Wie das geht und wie diese Signale aussehen müssen, zeige ich im nächsten Artikel dieser Serie.

  5. Step by Step: Erste Schritte

    2

    01.08.2015 von plaintron

    Gestern habe ich eine kurze Einführung zum Thema Schrittmotoren geschrieben. Eine genauere Betrachtung soll zeigen, was zu welchem Zeitpunkt in den Wicklungen geschieht.

    Der grundsätzliche Aufbau eines bipolaren Schrittmotors sieht so aus:

     

    bipolar_expDer Permamentmagnet im Rotor richtet sich nach den Magnetfeldern der beiden Statorspulen aus. Im Bild fließt ein Strom durch die blaue Spule zwischen den Anschlüssen A und B. Wird nun zusätzlich ein Strom durch die gelbe Spule geschickt, dreht sich der Anker um 45 Grad nach links oder nach rechts, je nach Stromrichtung.

    Wird der Strom in der blauen Spule nun unterbrochen, erfolgt eine weitere Drehung um 45 Grad und der Anker richtet sich nach der gelben Spule aus. Für die nächsten 45 Grad muss wieder die blaue Spule durchströmt werden, aber in entgegengesetzter Richtung wie zuvor.

    Es ergibt sich also folgende Schaltsequenz (B für blau, G für gelb, + und – für die Stromrichtungen bzw. 0 für Strom aus):

    G0 -> G+ -> B0 -> B- -> G0 -> G- -> B0 -> B+ -> (G0 …)

    drehung_exp

    Im grauen Diagramm sehen wir die Signalverläufe der beiden Spulenströme. Jeder Spulenstrom kann drei Zustände annehmen: Positiv, negativ und aus. Im oben gezeigten Halbschrittbetrieb ergeben sich so also acht Positionen für eine volle Drehung. Jede Flanke führt zu einem Positionswechsel. Um die Spulen richtig ansteuern zu können benötigen wir also ein Bauteil, das pro Spule zwei Umschalter mit Aus-Stellung beinhaltet:

    dpdt_exp

    Dieser Schalter muss natürlich elektronisch gesteuert werden, damit das Timing genau stimmt. Ein solches Bauteil ist der Schrittmotortreiber, den ich im nächsten Beitrag genauer erkläre.

     

  6. Step by Step: Der Schrittmotor

    2

    31.07.2015 von plaintron

    Plötzlich und unerwartet ist ein halbes Jahr vergangen, ohne dass es hier neue Beiträge gab. Wenn andere Baustellen rufen, bleibt ein Blog leider schnell mal legen.

    In einem früheren Beitrag habe ich über Schrittmotortreiber geschrieben und warum ich mit diesen Bauteilen so gerne arbeite. Nun möchte ich etwas mehr in die Grundlagen schauen: Warum braucht man diese Treiber? Was ist überhaupt die Besonderheit eines Schrittmotors? Was kann ich damit anstellen?

    370px-AnkerdeEinfache DC-Motoren (Asynchron-Motoren) bestehen aus einem Stator, einem Rotor und einem Kommutator. Der Stator ist meistens das äußere Teil, also ein Gehäuse mit Permamentmagneten. Der Rotor besteht im Prinzip aus mehreren Elektromagneten, die abwechselnd von Strom durchflossen werden und so mit den äußeren Permamentmagneten über das Magnetfeld interagieren, um die Drehung auszulösen. Der Kommutator sorgt dafür, dass die einzelnen Magnetspulen abwechselnd mit Strom versorgt werden. Bei Motoren mit nur einer einzelnen Spule wird jeweils die Stromrichtung umgepolt.

    Bürstenlose Motoren (“Brushless”) haben keinen Kommutator, deshalb muss das Drehfeld außerhalb des Motors elektronisch erzeugt werden (Synchron-Motor). Die Spulen werden dann einzeln angesteuert, wobei die Frequenz der angelegten Wechselspannung (gewöhnlich 3 Phasen) die Drehzahl bestimmt.

    Der Schrittmotor ist im Prinzip ein Synchron-Motor, muss also mit einem bestimmten Signal von außen angesteuert werden. Einige Bastler haben vielleicht schon mal einen kleinen Schrittmotor aus einem CD-Laufwerk, einem Drucker oder Scanner ausgebaut und festgestellt, dass sich nichts dreht, wenn man eine Spannung anlegt. Höchstens ein kleiner Ruck ist zu beobachten, wenn eine der Spulen ein Magnetfeld aufbaut.

    Betrachten wir zunächst einen sehr einfach aufgebauten Schrittmotor: Die vier Spulen liegen außen im Gehäuse, der Rotor ist mit einem Permamentmagneten bestückt. Jede Spule kann einzeln angesteuert werden. Nehmen wir an, die Wicklung auf 6-Uhr-Position, wie in der Grafik gezeigt, ist gerade eingeschaltet. Wird nun die 9-Uhr-Wicklung unter Strom gesetzt und gleichzeitig die vorherige Verbindung geöffnet, dreht sich der Rotor um genau 90 Grad nach rechts. Wird dieser Vorgang nun Schritt für Schritt im Uhrzeigersinn wiederholt, erhalten wir eine ständige Rechtsdrehung.

    Ein großer Vorteil bei dieser Vorgehensweise ist nun, dass wir nicht nur eine Drehung des Motors erreichen, sondern zu jedem Zeitpunkt auch die volle Kontrolle darüber haben, in welcher Position sich der Anker gerade befindet. Treibt dieser Motor etwa den Sensorschlitten eines Scanners an, wissen wir genau, auf welcher Höhe des Papiers gerade ein Linienbild aufgenommen wird, weil die Anzahl der Impulse mitgezählt wird. In Verbindung mit einer Mikrocontrollerschaltung erhalten wir also ein zusammengesetztes Bild aus vielen einzelnen Linien, das schrittweise in einen Speicher eingelesen werden kann.

    StepmotschemeDurch eine feinere Aufteilung des Rotors in mehrere einzelne Magnete lässt sich der Schrittwinkel des Motors verkleinern. Schrittmotoren für CNC-Anwendungen arbeiten gewöhnlich mit 200 Schritten pro Umdrehung, wobei durch Zwischenschritte mit zwei gleichzeitig aktivierten Wicklungen 400 Einzelschritte erreicht werden. Die Auflösung lässt sich weiter erhöhen, indem ungleiche Ströme durch zwei Wicklungen geschickt werden (Microstepping).

    So weit zur grundlegenden Funktionsweise eines Schrittmotors. Zu den Feinheiten der Schrittmotortechnik und der Ansteuerungs-Varianten schreibe ich morgen mehr.

  7. Windpark – Erster Kontakt

    1

    21.12.2014 von plaintron

    Normalerweise nehme ich nur Jobs an, bei denen ich zumindest den Eindruck habe, dass ich etwas davon verstehe. Das Windpark-Projekt war ein Sprung ins kalte Wasser, mit ungewissem Ausgang, jenseits meiner Kompetenzen. Aber es sah am Anfang alles so einfach aus:

    “Kannst du sowas wie einen Y-Adapter für Lichtwellenleiter bauen? Ich muss da an ein paar Daten rankommen.” Das war die Frage eines Kollegen (Programmierer, Datenbankentwickler), und ich habe sie selbstbewusst mit einem “Ja klar” beantwortet. Ich fragte also weiter, was das für Signale seien, wie die verarbeitet werden und auf welcher Art von Schnittstelle sie zur Verfügung stehen sollen. Das war aber alles völlig unklar. Also musste ich mir selbst ein Bild der Lage machen. Kurz darauf stand ich erstmals mit ein paar Messgeräten in einer Windkraftanlage (WKA) und versuchte, die dort verbaute Technik zu verstehen.

    wingang-wka

    Die eigentliche Steuerungstechnik der Anlage war zunächst kein Thema. Es ging nur um die Kommunikation der Anlagen mit dem Zentralrechner. In einer WKA fallen eine Menge Betriebsdaten an: Windgeschwindigkeit, Drehzahl von Rotor und Generatoren, Außentemperatur, Luftfeuchtigkeit, Generator- und Getriebetemperatur, Netzfrequenz, abgegebene Leistung, Spannung, Strom, Phasenverschiebung und vieles mehr. Umgekehrt können die Anlagen auch über Steuersignale ein- und ausgeschaltet oder in einen Wartungsmodus versetzt werden. Zusätzlich gibt es noch ein Überwachungssystem, das auftretende Fehler an den Anlagen selbst oder am Kommunikationssystem an eine Service-Zentrale meldet. An diese Daten wollten wir ran, und es wurde ganz schnell klar, dass es mit einem “Y-Adapter” nicht getan ist.

    servicemodul

    Der Windpark war knapp 15 Jahre alt und hatte keinen Internet-Anschluss. Außer einer ISDN-Leitung gab es keine Verbindung zur Außenwelt. Der Windpark-Betreiber wollte aber sämtliche Anlagendaten über ein Web-Interface abgreifen und war auch bereit, dafür etwas Geld auszugeben. Wir waren uns einig, dass es etwas längern dauern könnte, mindestens ein Jahr, und dass ich natürlich meine Arbeitszeit berechnen würde. Damit begann meine kleine Forschungsreise in die weitgehend undokumentierte Welt des Windparks.

    (Es gibt selbstverständlich Firmen, die sowas schon gemacht haben und über die notwendigen technischen Unterlagen sowie entsprechende Erfahrung verfügen. Allerdings sind diese Firmen nicht sehr kooperativ und geben Ihr Know-How nicht mal gegen Geld aus der Hand. Die Alternative wäre also nur eine komplette Vergabe des Auftrags gewesen. Entsprechende Angebote haben wir eingeholt und für zu teuer befunden.)

    Im nächsten Teil der Serie werfen wir einen ersten Blick auf die Kommunikationsprotokolle und Schnittstellen für die Anlagenkommunikation.

Blogverzeichnis - Bloggerei.de