Schranken für Fahrzeuge begegnen uns beinahe Täglich. Vor allem auf Parkplätzen, Parkhäusern, Bahnübergängen bzw. Bahnanlagen aber auch bei Waschanlagen oder in Werkstätten. Dabei ist das Prinzip immer das gleiche, erst wenn eine bestimmte Bedingung erfüllt ist, öffnet oder schließt sich die Schranke, zudem gibt es einige Sicherheitseinrichtungen. Ich wurde um Hilfe für eine solche Schaltung gebeten und habe gerne geholfen. Um dem Thema der Schranken etwas näher zu kommen, vor allem weil sie oft im Modellbau eingesetzt werden, habe ich mir ein solchen Modell von einer Parkhausschranke einmal nachgebaut. Wobei ich zudem noch eine Sicherheitseinrichtung eingebaut habe, falls sich beim Schließen ein Hindernis im Schließbereich befindet.
Da ich das Modell nur zum "debugging" bzw. programmieren und testen der Hardware verwendet habe und später nicht mehr benötige. Habe ich der Einfachheit wegen, die Bauteile kurzerhand mit dem Styroporschneider ausgeschnitten und mit Doppelseitigem Klebeband auf einer Holzplatte befestigt.
Aber ich denke das kann sich sehen lassen, zumindest für eine Schranken Testanlage im Modellformat.
Die Schranke besteht im Prinzip aus einem Taster, einem Laser + LDR, einem Servo, zwei LEDs und einem Arduino der das ganze steuert.
Arbeitsweise der Schranke
- Ausgangssituation:
- Schranke ist geschlossen und Lampe auf leuchtet rot.
- Nun gibt es 3 mögliche Szenarien, die natürlich auch in Kombination funktionieren.
- Normaler Betrieb
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Drückt den Taster
- Balken öffnet sich
- Zeit
- Lampe wechselt von rot nach grün
- Fahrer fährt mit seinem Auto durch die Schranke
- Lampe wechselt grün nach rot
- Zeit
- Zeit
- Balken beginnt sich zu schließen
- Balken ist geschlossen
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Ausgangssituation
- Warte Betrieb
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Drückt den Taster
- Balken öffnet sich
- Zeit
- Lampe wechselt von rot nach grün
- Fahrer fährt mit seinem Auto durch die Schranke und bleibt in der Schranke stehen
- Schranke wartet bis das Fahrzeug die Schranke verlassen hat
- Lampe wechselt grün nach rot
- Zeit
- Zeit
- Balken beginnt sich zu schließen
- Balken ist geschlossen
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Ausgangssituation
- Not Betrieb
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Drückt den Taster
- Balken öffnet sich
- Zeit
- Lampe wechselt von rot nach grün
- Fahrer fährt mit seinem Auto durch die Schranke
- Schranke wartet bis das Fahrzeug die Schranke verlassen hat
- Lampe wechselt grün nach rot
- Zeit
- Zeit
- Balken beginnt sich zu schließen
- Auto fährt zurück, ein anderes Fahrzeug oder ein Fußgänger betriebt den Schließbereich des Balkens
- Balken öffnet sich in schnellstmöglicher Geschwindigkeit
- Schranke wartet bis der Schließbereich des Balkens frei ist
- Lampe wechselt grün nach rot
- Zeit
- Auto fährt zurück, ein anderes Fahrzeug oder ein Fußgänger betriebt den Schließbereich des Balkens
- Balken beginnt sich zu schließen
- Balken ist geschlossen
- Eine Fahrer fährt mit seinem Auto an die Schranke
- Ausgangssituation
Anmerkung zum Notbetrieb. Dieser ist natürlich so in der Regel nicht enthalten, sonst könnten ja einfach die Autos nacheinander durchfahren. Eine Schranke soll ja schließlich schließen damit nur ein Auto durchfahren kann. Dennoch habe ich dieses Programm einmal mit hinein genommen.
Schaltung Parkhaus Schranke
Damit die Schranke sicher funktionieren kann, braucht es ein bisschen Hardware, die ich jeweils direkt in das Styropor geschnitten habe.
Ein Servomotor ist für diese Schranke die beste Wahl, er ist einfach anzusteuern und kann durch die Eingabe der „Gradzahlen“ seine „auf und zu“ Positionen genau und sicher anfahren. Durch sein Getriebe können trotz kleiner Bauweise rel. große Schranken gebaut werden und durch den Anschluss mit nur drei Kabel hält sich der Verdrahtungsaufwand in Grenzen.
Die beiden LEDs in rot und grün, werden an die PWM Pins „Pulsweitenmodulation“ angeschlossen. Somit entfällt der Vorwiderstand und die Helligkeit kann ohne eine Veränderung der Hardware eingestellt werden.
Der Taster wird mit dem ground verbunden und Softwareseitig auf den internen pullup gestellt. Somit entfällt der pulldown Widerstand für die beiden LEDs auf dem Steckbrett. Damit muss der Taster aber im Programm negiert werden (kringle im Bild) (im Programm steh ein ! vor der Bedingung i(f)), das heißt, wenn der Taster „keine Spannung“ also minus bekommt, ist er „HIGH“ also wahr.
Den 5,0 Volt Laser habe ich an den 3,3 Volt Pin angeschlossen, damit er nicht so ganz so hell leuchtet. Dennoch gilt bei einem Laser immer besondere Vorsicht, da er auch bei 3,3 Volt eine hohe Leistung hat (vor allem bei den China Import Lasern). Auch wenn nicht direkt in den Laser geschaut wird, so können doch die Oberflächen von Autos oder anderen Gegenständen stark reflektieren und damit die Augen schädigen. Alternativ kann auch eine helle LED verwendet werden, dann müssen aber ggf. die Werte etwas herabgesetzt werden.
Der LDR ändert seinen Widerstand je nach einfallendem Licht. Damit ändert sich auch die Spannung die am analogen PIN A1 gemessen wird. Über diesen Wert erkennt die Schaltung ob sich ein Hindernis zwischen Laser und LDR befindet. Die Werte von >500 am Eingang A1 gilt für meinen LDR, sollte eure Lichtschranke schließen auch wenn ein Auto drin Steht bzw. wenn die Sonne scheint oder das Licht an ist, dann muss dieser Wert noch oben, bzw. wenn sie nicht schließt nach unten korrigiert werden.
Und natürlich ein Arduino, der die Steuerung übernimmt und ein Breadbord auf dem die paar Kabel untergebracht sind.
Verdrahtung der Schranke und der Ampelanlage
Im Prinzip ist die Verdrahtung wirklich ganz simpel. Leider gibt es in Fritzing keinen Laser, deshalb habe ich das Bauteil genommen das einem Laser am ähnlichsten sah. !!! Wer für die LEDs andere Pins verwenden will, muss ggf. Widerstände einbauen.
Software für die Parkhausschranke
Im Prinzip ist die Software auch recht einfach. Der Taster wird abgefragt und öffnet dann die Schranke. Ist der LDR Wert in Ordnung beginnt sich die Schranke zu schließen. Ist der Wert nicht in Ordnung bleibt sie einfach so lange offen, bis der Wert anzeigt dass sich kein Fahrzeug im Schließbereich befindet. Dann wird die Schranke geschlossen, während des Schließvorgangs wird der LDR Wert kontrolliert, ist er nicht mehr in Ordnung, öffnet sich die Schranke so schnell wie möglich. Ist der Wert wieder in Ordnung, dann beginnt sich die Schranke erneut zu schließen.
Arduino serial.println Text
Ist der Arduino mit dem PC verbunden und der Serial Monitor geöffnet, kann man auch schön sehen was gerade passier. Ich habe im Programm nach jeder Statusänderung der Schranke eine serial printin Text eingebaut. So kann jederzeit die Stellung der Schranke oder die Wartezeit eingesehen werden.