Innholdsfortegnelse:

Kontrollere et relékort fra Octoprint på en Raspberry Pi: 5 trinn
Kontrollere et relékort fra Octoprint på en Raspberry Pi: 5 trinn

Video: Kontrollere et relékort fra Octoprint på en Raspberry Pi: 5 trinn

Video: Kontrollere et relékort fra Octoprint på en Raspberry Pi: 5 trinn
Video: Контактор принцип работы и схема подключения 2024, November
Anonim
Kontrollere et relékort fra Octoprint på en Raspberry Pi
Kontrollere et relékort fra Octoprint på en Raspberry Pi

Så du har en bringebær pi med Octoprint og til og med har et kameraoppsett. Det siste du trenger er en måte å slå på og av 3D -skriveren din og kanskje kontrollere et lys. Dette instruerbare er for deg!

Dette er inspirert og forenklet fra:

Sørg for å sjekke min tidligere instruerbare hvor jeg bygde en skapboks / avtrekkshette for min 3d -skriver, siden dette er oppfølgeren.

Testet med:

Linux octopi 4.14.79-v7+ #1159 SMP sø 4. nov 17:50:20 GMT 2018 armv7l GNU/Linux

OctoPrint -versjon: 1.3.11OctoPi -versjon: 0.16.0

Ansvarsfraskrivelse: Jeg tar ikke noe ansvar for det som kan skje ved at du følger disse instruksjonene.

Rekvisita

  • 5V relékort med optokobler (ebay)
  • Noen hoppetråder
  • En elektrisk boks med uttak (valgfritt)

Trinn 1: Koble relékortet til din Raspberry Pi

Koble relékortet til din Raspberry Pi
Koble relékortet til din Raspberry Pi

Selv om relékort er laget for 5V logikk, vil de utløse riktig ved 3.3V. Da jeg visste dette, klarte jeg å unngå endringer i det originale kortet.

Stafettskjerm bringebær

------------ --------- Spoler: JD-VCC-5V VCC-Ikke tilkoblet GND-GND Logikk: GND-Ikke tilkoblet IN1-GPIO #23 IN2-GPIO # 18 VCC - 3,3V

Det er viktig å fjerne jumperen mellom JD-VCC og VCC hvis du har en. Dette vil tillate mating av 5V for spolene mens du mater 3.3V for de logiske inngangene. Og siden begge GND er koblet sammen internt, kobler vi bare til en av dem.

Trinn 2: SSH til din Raspberry Pi og konfigurer den

SSH til din Raspberry Pi og konfigurer den
SSH til din Raspberry Pi og konfigurer den

Bruk kitt eller din favoritt ssh -klient, og koble til bringebær -pi ved hjelp av den samme ip -adressen som du bruker for å få tilgang til Octoprint. Standard brukernavn er pi og passord er bringebær.

Det første jeg ville gjøre er å kontrollere at reléene reagerer riktig. For å gjøre dette må du utstede disse kommandoene

gpio -g -modus 18 ut

gpio -g -modus 23 ut gpio -g skrive 18 0 gpio -g skrive 23 0 gpio -g skrive 18 1 gpio -g skrive 23 1

De to første linjene lar deg sette GPIO som en utgang. Deretter slår du utgangene på og av. Det burde få stafetten til å klikke. Når inngangene er lave (0), bør reléet slås på og når inngangene er høye (1), bør de slås av. Så ja, dette er litt kontraintuitivt, men sånn er det!

Trinn 3: Legg til nye menyalternativer i Octoprint for å kontrollere reléene dine

Legg til nye menyalternativer i Octoprint for å kontrollere reléene dine
Legg til nye menyalternativer i Octoprint for å kontrollere reléene dine
Legg til nye menyalternativer i Octoprint for å kontrollere reléene dine
Legg til nye menyalternativer i Octoprint for å kontrollere reléene dine

Du må redigere filen config.yaml:

sudo nano.octoprint/config.yaml

I filen finner du delen "system" og legger til følgende:

system:

handlinger: - handling: skriver på kommando: gpio -g skriv 18 0 navn: Slå på skriveren - handling: skriver av kommando: gpio -g skriv 18 1 bekreft: Du er i ferd med å slå av skriveren. navn: Slå av skriveren - handling: lon -kommando: gpio -g skrive 23 0 navn: LightOn - handling: loff -kommando: gpio -g skrive 23 1 navn: LightOff

Etter at du har lagret filen (ctrl+x), starter du bringebær pi på nytt:

sudo omstart

Du bør nå kunne kontrollere reléene fra Octoprint webgrensesnitt!

Trinn 4: Høyspenningskabler (vær forsiktig)

Høyspenningskabler (vær forsiktig)
Høyspenningskabler (vær forsiktig)

Et relé fungerer som en bryter, bare den utløses av en kontroller, i dette tilfellet en bringebærpi. Bryteren består av en elektromagnet som vil koble pinner sammen, det er klikket du hører.

For å koble den til har du to valg. Enten kutter du en av ledningene til 3d -skriverens strømforsyning, og du kobler endene til reléet, eller så lager du en stikkontakt for det. Jeg foretrekker den andre måten, da dette vil gjøre det lettere å flytte skriveren. Jeg vil også bruke det andre uttaket til å koble til eksosviften min (se min andre instruerbare: Easy and Cheap 3D Printer Fume Hood).

Nå er det andre stafetten å kontrollere et lys. Det er det samme prinsippet, men i dette tilfellet anbefaler jeg at du bare kutter en av ledningene fra strømkabelen og kobler endene til reléet, mest sannsynlig trenger du ikke å flytte den.

Trinn 5: Konfigurer GPIO -utganger og forhindre at reléene dine slås på når Raspberry Pi starter på nytt

For å oppsummere problemet, er GPIO satt lavt når raspbian starter på nytt (i hvert fall for visse kjerneversjoner). Tilsynelatende er det ikke mye vi kan gjøre… vel! Så tanken er å kalle et skript som vil tilbakestille det når det er ferdig med oppstart ved å sette utgangene høye.

Se denne forumtråden for mer informasjon: https://www.raspberrypi.org/forums/viewtopic.php? T = 35321

Men viktigst av alt, dette skriptet setter GPIO -ene som utganger, ellers fungerer ikke menyelementene i Octoprint.

Lag et skript ved hjelp av nano:

nano /home/pi/setupgpio.sh

Lim inn denne koden og lagre filen.

#!/bin/sh

echo 18>/sys/class/gpio/export echo 23>/sys/class/gpio/export udevadm bosette ekko høyt>/sys/class/gpio/gpio18/direction echo high>/sys/class/gpio/gpio23/direction

Gjør filen kjørbar:

chmod +x /home/pi/setupgpio.sh

Rediger rc.local -filen:

sudo nano /etc/rc.local

Og ring til skriptet du nettopp opprettet ved å legge til disse linjene:

# konfigurer gpio -pinnene for portkontroll

/home/pi/setupgpio.sh

Start bringebæret på nytt og kontroller at det fungerer som det skal.

Anbefalt: