Inhaltsverzeichnis:

Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi - Gunook
Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi - Gunook

Video: Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi - Gunook

Video: Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi - Gunook
Video: Octoprint PSU Control (Teil 2 von Leistungsrelais für Octoprint zum Schalten von Druckern) 2024, Juni
Anonim
Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi
Steuern einer Relaisplatine von Octoprint auf einem Raspberry Pi

Sie haben also einen Himbeer-Pi mit Octoprint und sogar ein Kamera-Setup. Das Letzte, was Sie brauchen, ist eine Möglichkeit, Ihren 3D-Drucker ein- und auszuschalten und vielleicht ein Licht zu steuern. Dieses anweisbare ist für Sie!

Dies ist inspiriert und vereinfacht von:

Stellen Sie sicher, dass Sie mein vorheriges instructable überprüfen, wo ich eine Gehäusebox / Dunstabzugshaube für meinen 3D-Drucker gebaut habe, da dies die Fortsetzung ist.

Getestet mit:

Linux Octopi 4.14.79-v7+ #1159 SMP So 4. Nov 17:50:20 GMT 2018 armv7l GNU/Linux

OctoPrint-Version: 1.3.11OctoPi-Version: 0.16.0

Haftungsausschluss: Ich übernehme keine Verantwortung für das Schlimmste, was Ihnen passieren könnte, wenn Sie diese Anweisungen befolgen.

Lieferungen

  • 5V Relaisplatine mit Optokoppler (ebay)
  • Einige Überbrückungsdrähte
  • Ein Elektrokasten mit Steckdosen (optional)

Schritt 1: Anschließen der Relaisplatine an Ihren Raspberry Pi

Anschließen der Relaisplatine an Ihren Raspberry Pi
Anschließen der Relaisplatine an Ihren Raspberry Pi

Obwohl Relaisplatinen für 5V-Logik ausgelegt sind, werden sie bei 3,3V korrekt ausgelöst. Mit diesem Wissen konnte ich jede Änderung des Originalboards vermeiden.

Relaisschild Himbeere

------------ --------- Spulen: JD-VCC - 5V VCC - Nicht verbunden GND - GND Logik: GND - Nicht verbunden IN1 - GPIO #23 IN2 - GPIO # 18 VCC - 3,3 V

Es ist wichtig, den Jumper zwischen JD-VCC und VCC zu entfernen, falls vorhanden. Dies ermöglicht das Einspeisen von 5 V für die Spulen und das Einspeisen von 3,3 V für die Logikeingänge. Und da beide GND intern miteinander verdrahtet sind, verbinden wir nur einen davon.

Schritt 2: SSH zu Ihrem Raspberry Pi und konfigurieren es

SSH zu Ihrem Raspberry Pi und konfigurieren Sie ihn
SSH zu Ihrem Raspberry Pi und konfigurieren Sie ihn

Stellen Sie mit Putty oder Ihrem bevorzugten SSH-Client eine Verbindung zu Ihrem Raspberry Pi mit derselben IP-Adresse her, die Sie für den Zugriff auf Octoprint verwenden. Der Standardbenutzername ist pi und das Passwort ist raspberry.

Als erstes würde ich überprüfen, ob die Relais richtig reagieren. Geben Sie dazu diese Befehle ein

gpio -g Modus 18 aus

gpio -g Modus 23 out gpio -g schreiben 18 0 gpio -g schreiben 23 0 gpio -g schreiben 18 1 gpio -g schreiben 23 1

Die ersten 2 Zeilen ermöglichen es, den GPIO als Ausgang zu setzen. Dann schalten Sie die Ausgänge ein und aus. Das sollte das Relais klicken lassen. Wenn die Eingänge Low (0) sind, soll das Relais einschalten und wenn die Eingänge High (1) sind, sollten sie abschalten. Also ja, das ist ein bisschen kontraintuitiv, aber so ist es!

Schritt 3: Fügen Sie Octoprint neue Menüoptionen hinzu, um Ihre Relais zu steuern

Fügen Sie Octoprint neue Menüoptionen hinzu, um Ihre Relais zu steuern
Fügen Sie Octoprint neue Menüoptionen hinzu, um Ihre Relais zu steuern
Fügen Sie Octoprint neue Menüoptionen hinzu, um Ihre Relais zu steuern
Fügen Sie Octoprint neue Menüoptionen hinzu, um Ihre Relais zu steuern

Sie müssen die Datei config.yaml bearbeiten:

sudo nano.octoprint/config.yaml

Suchen Sie in dieser Datei den Abschnitt "system" und fügen Sie Folgendes hinzu:

System:

Aktionen: - Aktion: Drucker ein Befehl: gpio -g schreiben 18 0 Name: Drucker einschalten - Aktion: Drucker aus Befehl: gpio -g schreiben 18 1 Bestätigen: Sie sind im Begriff den Drucker auszuschalten. name: Drucker ausschalten - Aktion: lon Befehl: gpio -g write 23 0 Name: LightOn - Aktion: loff Befehl: gpio -g write 23 1 Name: LightOff

Nachdem Sie die Datei gespeichert haben (Strg+x), starten Sie den Himbeer-Pi neu:

sudo neu starten

Sie sollten jetzt in der Lage sein, die Relais über das Octoprint-Webinterface zu steuern!

Schritt 4: Hochspannungsverkabelung (Vorsicht)

Hochspannungsverkabelung (Vorsicht)
Hochspannungsverkabelung (Vorsicht)

Ein Relais fungiert als Schalter, nur wird es von einem Controller, in diesem Fall einem Himbeer-Pi, ausgelöst. Der Schalter besteht aus einem Elektromagneten, der die Pins miteinander verbindet, dh das Klicken, das Sie hören.

Für die Verkabelung haben Sie zwei Möglichkeiten. Entweder Sie schneiden einen der Drähte Ihres 3D-Drucker-Netzteils ab und verbinden die Enden mit dem Relais, oder Sie machen eine Steckdose dafür. Ich bevorzuge den zweiten Weg, da dies das Bewegen des Druckers erleichtert. Ich werde auch die zweite Steckdose verwenden, um meinen Abluftventilator anzuschließen (siehe mein anderes anweisbares: Einfacher und günstiger 3D-Druckerabzug).

Jetzt soll das andere Relais ein Licht steuern. Es ist das gleiche Prinzip, aber in diesem Fall empfehle ich, dass Sie einfach einen der Drähte vom Stromkabel abschneiden und die Enden mit dem Relais verbinden, höchstwahrscheinlich muss es nicht bewegt werden.

Schritt 5: Konfigurieren Sie die GPIO-Ausgänge und verhindern Sie, dass sich Ihre Relais beim Neustart des Raspberry Pi einschalten

Um das Problem zusammenzufassen, werden GPIO beim Neustart von Raspbian niedrig eingestellt (zumindest für bestimmte Kernel-Versionen). Anscheinend können wir nicht viel tun… na ja! Die Idee ist also, ein Skript aufzurufen, das dies nach Abschluss des Bootvorgangs rückgängig macht, indem die Ausgänge auf High gesetzt werden.

Weitere Informationen finden Sie in diesem Forenthread:

Aber am wichtigsten ist, dass dieses Skript die GPIOs als Ausgänge setzt, sonst funktionieren die Menüpunkte in Octoprint nicht.

Erstellen Sie ein Skript mit nano:

nano /home/pi/setupgpio.sh

Fügen Sie diesen Code ein und speichern Sie die Datei.

#!/bin/sh

echo 18 > /sys/class/gpio/export echo 23 > /sys/class/gpio/export udevadm setze echo high > /sys/class/gpio/gpio18/direction echo high > /sys/class/gpio/gpio23/direction

Machen Sie die Datei ausführbar:

chmod +x /home/pi/setupgpio.sh

Bearbeiten Sie die Datei rc.local:

sudo nano /etc/rc.local

Und rufen Sie das soeben erstellte Skript auf, indem Sie diese Zeilen hinzufügen:

# Richten Sie die gpio-Pins für die Torsteuerung ein

/home/pi/setupgpio.sh

Starten Sie Ihre Himbeere neu und überprüfen Sie, ob sie ordnungsgemäß funktioniert.

Empfohlen: