Category Archives: Raspberry Pi

28BYJ-48

Schrittmotor 28BYJ-48

Ausdrucken Ausdrucken

Vorab: Ich habe diesen interessanten Artikel auf https://grahamwideman.wikispaces.com/Motors-+28BYJ-48+Stepper+motor+notes gefunden.

Leider gibt wikispaces.com bekannt, dass Sie den Wikidienst 2018/2019 beenden werden. Damit diese Seite möglicherweise nicht vollständig verschwindet, habe ich Sie hier übernommen und so gut ich es konnte übersetzt.
Die Originalseite als PDF in Englisch kann auch am Ende des Artikels heruntergeladen werden.
Vielen Dank an Graham Wideman für seine umfangreichen Informationen zu diesem Schrittmotor.

“Read More”

Optokoppler

Ein Optokoppler ist leichter nutzbar, als man anfänglich vielleicht denkt. Doch klären wir erstmal, was man mit einem Optokoppler macht:

Mit einem Optokoppler überträgt man Signale und zwar nicht elektrisch, sondern mittels Licht, denn ein Optokoppler ist eigentlich nichts anderes als eine Leuchtdiode und ein Fototransistor in einem einzigen Gehäuse.

Sichtbar wird das im Schaltplan-Symbol des Optokopplers:

Der Vorteil der Übertragungsmethode mittels Licht ist, dass dabei keine elektrische Verbindung zwischen der Leuchtdiode und dem Fototransistor besteht.
Leuchtet die Fotodiode auf, schaltet auf der anderen Seite der Fototransistor durch.

Wir sprechen daher auch von einer galvanischen Trennung zweier Stromkreise (auch mit möglichen unterschiedlichen Spannungsniveaus) und wir können damit Signale innerhalb der Schaltungen hin- und herschicken.
Das ist vor allem dann notwendig bei einer gefährlich hohen Spannung, störverseuchten Umgebungen und zur Verhinderung von Masseschleifen.
Auch ist es möglich, das Signal mittels Optokoppler zu invertieren.

Spezielle Einsatzgebiete wären beispielsweise in Maschinensteuerungen, Relaisansteuerungen, Computern, medizinischen Apparaten, usw.

Die große Anzahl an Optokoppler sind nur für digitale Signale nutzbar (0 oder 1).
Zur Trennung analoger Signalen gibt es spezielle analoge Optokoppler.

Ich verwende hier einen CNY17/4-Optokoppler. Falls Ihr einen anderen habt, dann müsst Ihr unbedingt einen Blick ins Datenblatt werfen.

Berechnen des LED-Vorwiderstands

Der LED-Teil des Optokopplers benötigt UNBEDINGT einen Vorwiderstand, der an die Spannung der Schaltung angepasst ist. Berechnet wird das ganz genau so wie man den Vorwiderstand einer ganz normalen LED berechnet.
Hierzu brauchen wir nur das ohmsche Gesetz zum berechnen:

In unserem Test hat die Schaltung eine Spannung von U = 5V.
Die Spannung der Foto-LED von 1.5V ist ein Mittelwert, denn laut Datenblatt liegt UF zwischen 1,39V – 1.65V.
IF liegt bei 10mA.

    \[ R = \frac{U - U_F}{I_F} = \frac{5V - 1.5V}{0,010 A (10mA)} = 350\Omega \]

Somit brauchen wir einen 350Ω-Widerstand.

Berechnen des Arbeitswiderstands

Auf der anderen Seite (Fototransistor) brauchen wir noch einen Arbeitswiderstand für die Schaltung.

    \[ R_A = \frac{V_c_c * SF}{I_F * CTR} = \frac{12V * 3}{0,010 A (10mA) * (160/100) } = 2250\Omega \]

RA:      Arbeitswiderstand
Vcc:     Betriebsspannung am Ausgang
CTR:   Stromübertragungsfaktor (engl. Current Transfer Ratio)
IF:        Vorwärtsstrom LED
SF:       Sicherheitsfaktor

Wir brauchen wieder unser Datenblatt … In diesem suchen wir uns den minimalen ausgewiesenen CTR für unseren Optokoppler. Dieser ist abhängig vom Typ, Temperatur und möglicherweise vom LED-Strom.

Normale Transistoren haben ja eine Stromverstärkung, Optokoppler eine CTR (Current Transfer Ratio).  Damit kann man abschätzen wieviel Strom man am Eingang braucht um einen bestimmten Strom am Ausgang zu schalten.

Der Sicherheitsfaktor ist mindestens 2, da die Lebensdauer eines Optokopplers in der Regel auf die halbe optische Leistung ausgelegt ist.
Je höher unser Sicherheitsfaktor, desto höher die Lebensdauer des Bauteils.
Man sollte daher zwischen einem Wert von 2-5 auswählen.

Kompromisse muss man eingehen, denn um die maximale Schaltgeschwindigkeit eines Optokopplers zu erreichen, muss man mit Nennstrom und minimalem Arbeitswiderstand arbeiten.
Zum einfachen Schalten von Relais, Motoren und dergleichen spielt die Schaltgeschwindigkeit keine große Rolle, da auch mit ausreichendem Sicherheitsfaktor der Koppler schnell genug schaltet.

Und für andere Fälle ist man mit einem High-Speed-Optokoppler besser bedient. Kostet aber halt ein wenig mehr.

Hat der Optokoppler am Transistorausgang einen herausgeführten Basisanschluss – so wie es bei dem CNY17 der Fall ist, kann man durch einen passenden Widerstand zwischen Basis und Emitter die Abschaltgeschwindigkeit deutlich steigern.
Allerdings erkauft man sich das dann auf Kosten der Empfindlichkeit.

Der Arbeitswiderstand ist in den weiter unten abgebildeten Grundschaltungen R4, bzw. R6.

Verbraucher Berechnen

Möchte man mit dem Ausgang gleich einen Verbraucher, beispielsweise ein Relais schalten, dann muss man vorher sicherstellen, den Optokopplerausgang nicht zu überlasten.
Beispiel: Wir haben ein 12V Relais mit einem Spulenwiderstand von 400 Ω (Fin 36.11.9.012-Relais).

Kleine Anmerkung: In der Regel steht der Spulenwiderstand auch im Datenblatt. Falls nicht, könt Ihr diesen wie folgt messen:
Voltmeter auf “Ω” stellen und an den Pins des Spulensymbols messen:

 

Auch bei der Lastberechnung gilt das ohmsche Gesetz:

    \[ I = \frac{U}{R} = \frac{12V}{400\Omega } = 0,03 A = 30mA \]

Der CNY17 ist nach dem Datenblatt mit bis zu 60 mA am Ausgang belastbar.
Das funktioniert wunderbar ohne weitere Mittel (aber die Freilaufdiode am Relais nicht vergessen!).

Ist die Belastung höher, beispielsweise bei mehr als einem Relais, brauchen wir weitere Bauteile, wenn wir unseren Optokoppler nicht grillen möchten.

Mit der maximalen 60 mA-Belastung können wir beispielsweise einen Transistor, einen MOSFET oder eine Darlington-Schaltung/-IC schalten um die große Last dahinter ansteuern zu können.
Optokoppler-Grundschaltungen:

Nichtinvertierende Grundschaltung

 

Invertierende Grundschaltung am Eingang

 

Invertierende Grundschaltung am Ausgang (häufigste Schaltung)

 

 

 


Raspberry Pi Zero Rev 1.3 mit Pibow Case zusammenbauen

Kategorien: Raspberry Pi

Ausdrucken Ausdrucken

Es ist Juni 2017 und endlich komme ich mal dazu, mich mit dem Raspberry Pi Zero zu beschäftigen, den ich mir für – ich glaube, es waren 15 EUR – letztes Jahr auf der Maker Faire in Berlin gekauft habe.

Ausgestattet war dieser mit dem Pibow-Gehäuse, so wie einem USB-Kabel von Micro-USB auf Standard-USB, so wie einem Stecker, der HDMI auf Mini-HDMI ermöglicht.

Mittlerweile gibt es seit Februar 2017 bereits ein neues Modell, welches WLAN und Bluetooth 4.0 mit on Board hat. Dieser nennt sich “Raspberry PI Zero W“.

Eigentlich soll der nackte Pi Zero 5 EUR kosten, aber für den Preis ist er schlecht zu bekommen, da die Händler meistens Kits verkaufen. So auch der Pi Zero W, der ohne Alles 10 EUR kosten soll.

“Read More”

Raspberry Pi Zero Headless installieren

Kategorien: Raspberry Pi

Ausdrucken Ausdrucken

Nachdem wir unter “Raspberry Pi Zero Rev 1.3 mit Pibow Case zusammenbauen” unseren Mini zusammengebaut haben, brauchen wir nun noch ein Betriebssystem um ihm Leben einzuhauchen.

Mein Monitor hat einen VGA- und einen DVI-Port, aber leider keinen HDMI-Port.

Aber das ist alles kein Problem, denn der Pi Zero lässt sich auch wunderbar einfach headless – also ohne Monitor und/oder Tastatur/Maus – installieren, da er eine neue Funktion mitbringt, die ein virtuelles Netzwerkgerät per USB emuliert und es via Avahi/Bonjour bereitstellt. (Ähnliche Technik wie Arduinos mit dem PC programmiert werden.)
Auf Grund dessen können wir den Pi Zero mittels USB-Kabel an unseren PC anschließen und er wird als Gerät mit einem virtuellen USB Ethernet-Adapter erkannt.

“Read More”

Spannungsregler variabel mit LM317

Ausdrucken Ausdrucken

Heute bauen wir uns einen regelbaren Spannungsregler und verwenden hierzu einen LM317-Baustein.

Im Gegensatz zu den meisten Reglern gibt es beim LM317 praktisch keine maximale Eingangsspannung, so lange die Differenz von Ein- zu Ausgangsspannung nicht höher als 40V ist.
Das Ganze funktioniert, da der LM317 keinen direkten Massebezug hat, nur den über den Widerstand zur Einstellung der Ausgangsspannung.

“Read More”

SSH mit dem Raspi – Erstellen von Schlüsseln und Verbinden via SSH

Kategorien: Raspberry Pi

Ausdrucken Ausdrucken

sshkeyHeute beginnen wir eine neue Reihe und ich erkläre Euch, wie Ihr die Kommunikation mit Eurem Raspberry sicherer machen könnt.

Dazu kommen Zertifikate zum Einsatz, mit denen Ihr ein Schlüsselpaar generieren könnt und dann nur derjenige auf den Server Zugriff hat, der im Besitz eines gültigen Schlüssels ist.

Das Ganze gibt es natürlich auch in der Form für https, aber das folgt im zweiten Teil.

Fangen wir an: Zuerst benötigen wir auf unserem Raspi das openSSL-Paket.
In der Regel ist dies bei Raspian bereits vorinstalliert und Ihr könnt diesen Schritt überspringen.

“Read More”

Schieberegister – Am RaspberryPi anschließen

Kategorien: Raspberry Pi

Ausdrucken Ausdrucken

74hc595

Gehen uns die Ausgabepins an unserem Raspi aus, können wir einfach und preisgünstig mit einem oder mehreren Schieberegistern die Pinanzahl erhöhen.

Pro Schieberegister können wir 8 weitere Pins hinzufügen.

Zum Anschließen von weiteren 8 Pins werden lediglich einmalig 3 freie Pins am Raspi benötigt.

Wie eine Schieberegister funktioniert, könnt Ihr unter “Schieberegister – Was ist das?” nachlesen.

In diesem Beitrag zeige ich Euch, wie Ihr ein Schieberegister über das SPI-Bussystem anschließen könnt und gehe auf den Schaltplan ein.
Danach erweitern wir noch unser Schieberegister um ein weiteres Register.

“Read More”

Schieberegister – Was ist das?

Ausdrucken Ausdrucken

74hc595Das Schieberegister erweitert zum Beispiel die Eingangs- und/oder die Ausgangspins eines Mikrocontrollers.

Hierbei gilt zu beachten, dass man für Eingangs- und Ausgangspins das jeweilig passende Schieberegister verwendet.

Das wohl bekannteste Schieberegister trägt die Bezeichnung “74HC595” und ist ein Schieberegister des SIPO-Typs (SIPO steht für Serial in, Parallel out, was bedeutet, dass es ein Ausgaberegister ist).

Das Pendant hierzu – beispielsweise ein “74LS299” – ist ein Schieberegister des Typs PISO (PISO steht für Parallel in, Serial out). Mit diesem kann man den Status eines Pins des Schieberegisters abfragen.

Diese beiden Schieberegister gehören zu der Klasse der 8Bit-Schieberegister. Das heißt, man kann mit diesem Baustein 8 Pins (jeweils Ein- oder Ausgang des verwendeten Typs) ansteuern.

Es gibt auch eine Mischform, den “74LS194A”. Dieser ist ein 4bit-Schieberegister und besitzt 4 Ein- und 4 Ausgabepins in einem Baustein.

“Read More”

Pullup- und Pulldown Widerstand

Ausdrucken Ausdrucken

PullupPulldown-HeaderHeute mal ein kurzer Beitrag zum Thema Pullup- und Pulldown-Widerstände in Verbindung mit Buttons, sprich Tastern.

Aber auch beim Einsatz von Transistoren kommen recht häufig auch Pulldown-Widerstände vor. Das ist nicht sehr verwunderlich, sind Transistoren ja auch eine Art Schalter, die schalten, sobald an der Basis genug Strom anliegt und der Transistor dann Collector und Emitter durchschaltet.

Wofür brauchen wir aber diese Pullup-/Pulldown-Widerstände?
In knappen Worten: Um einen unbestimmten Zustand bestimmt zu machen. Mit den Worten eines Programmierers: Wir initialisieren die Variable “Taste” mit dem Wert “HIGH” oder “LOW”.

Stellen wir uns folgendes vor:

Zum Vergrößern Bild anklicken

Zum Vergrößern Bild anklicken

“Read More”

Raspi Infrarot-Empfänger für Fernbedienung (IR-Empfänger und Kabel löten)

Kategorien: Raspberry Pi

Ausdrucken Ausdrucken

TSOP4838-38khzIm vorherigen Beitrag haben wir ja unsere TSOP4838-Schaltung auf dem Breadboard aufgebaut und LIRC und IREXEC installiert und aktiviert.
Jetzt wollen wir das natürlich so umsetzen, dass wir auf das Breadboard verzichten können. Da wir hier lediglich das IR-Modul und drei Kabel haben, brauchen wir auch keine Platine.

Mein Aufbau sieht wie folgt aus, da ich das Kabel hinter dem Fernseher ein wenig verlegen möchte. Ihr testet am Besten zuerst mit dem Breadboard aus, wie und wo Ihr den besten Empfang habt, denn ein Vorteil des TSOP4838 ist, dass er keinen direkten Sichtkontakt benötigt, sondern auch komplett hinter dem Fernseher verschwinden kann.

Was wird benötigt:

“Read More”