Indholdsfortegnelse:

Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi: 3 trin (med billeder)
Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi: 3 trin (med billeder)

Video: Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi: 3 trin (med billeder)

Video: Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi: 3 trin (med billeder)
Video: How To Use Addressable RGB WS2812B LED Strips With a Raspberry Pi Single Board Computer 2024, November
Anonim
Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi
Tilføj Adafruit's Ring LED Momentary Switch til Raspberry Pi

Som en del af mit snitskæringssystem vil jeg have en strømindikator og en nulstillingskontakt på et Raspberry Pi-baseret mediecenter, der kører Kodi på OSMC.

Jeg har prøvet flere forskellige kortvarige kontakter. Adafruit's robuste metal trykknap med blå LED er meget cool.

Dette er den første af flere instruktører, der danner grundlag for en Kodi/OSMC -hat til Raspberry Pi.

I hver instruerbar, får jeg en del af hatten til at fungere, og jeg tror, at hvert stykke af hatten er nyttigt i sig selv.

Trin 1: Saml dele

Dele, der er specifikke for denne instruerbare:

  • Robust metal trykknap med blå LED Adafruit $ 4,95
  • Korte udbrydernåle Adafruit $ 4,95

Genanvendelige dele og værktøjer (priser i USD):

  • Breadboard Fry's $ 7,99
  • Brødbrætstråde Fry's $ 7,99
  • Mand til kvinde Jumper Wires Fry's $ 3,99
  • MacBook Pro (en pc kan bruges)
  • Raspberry Pi 3 Element14 $ 35
  • 5.2V 2.1A USB -strømadapter fra Amazon $ 5,99
  • Micro USB til USB kabel 3ft fra Amazon $ 4,69
  • Etui fra Amazon $ 6,99
  • SanDisk Ultra 16 GB microSDHC klasse 10 med adapter (SDSQUAN-016G-G4A) fra Amazon $ 8,99
  • Loddemaskine, Loddemetal, Tiprens
  • TV med HDMI -port, USB -tastatur, USB -mus, HDMI -kabel

Bemærkninger:

  • Tekst i spader, f.eks. ♣ erstat-dette ♣, skal erstattes med en faktisk værdi. Fjern selvfølgelig spaderne.
  • Raspberry Pi skal konfigureres og køre Kodi/OSMC
  • Adafruit har nogle fremragende "instruktører", men jeg de er svære at finde. Prøv i Google:

    • ♣ søgeudtryk ♣ inurl:
    • robust LED -ring inurl:
  • Fritzing er et fantastisk værktøj til breadboarding

Trin 2: Ring -LED

Ring LED
Ring LED

I mine applikationer er ring -LED'en en strømindikator. Hvis hindbær pi er tændt og kører, skal ring -LED'en lyse (eller blå). Hvis der ikke er strøm, eller hindbærpien er lukket, skal ring -LED'en være slukket.

Ring -LED -forbindelser

Et brødbræt tillader mig at eksperimentere med kredsløbet, indtil det virker. Mand-til-hun jumperwire og forbindelsestråde, der følger med brødbrætter, gør denne proces lettere. Mand-til-hun jumper-ledninger forbinder brødbrættet med hindbær pi.

De to ydre forbindelser på Ring -trykknappen styrer Ring -LED'en. Jordterminalen er forbundet til Raspberry Pi -jorden i serie med en 330 Ohm modstand. Grunden er (-). Og GPIO 24 vil blive forbundet til den positive terminal (+).

Hjælpeprogram til python

Ring -LED -softwaren kræver pakken rpi.gpio. Følgende kommandoer downloader, bygger og installerer rpi.gpio

$ sudo su

# apt-get opdatering # apt-get install python-pip python-dev gcc # pip install rpi.gpio # exit

Exit vender tilbage til $ prompt

Ring LED -software

Tænd Ring -LED'en

$ sudo nano /usr/local/bin/power_ring_led.py

og rediger til at være:

#!/usr/bin/env python

import RPi. GPIO som GPIO import delproces import argparse parser = argparse. ArgumentParser () group = parser.add_mutually_exclusive_group () group.add_argument ("-l", "--light", action = "store_true") group.add_argument (" -o "," --off ", action =" store_true ") # Deaktiver advarsler GPIO.setwarnings (False) # tænd gpio pin 24 GPIO.setmode (GPIO. BCM) GPIO.setup (24, GPIO. OUT) args = parser.parse_args () if args.light: GPIO.output (24, True) elif args.off: GPIO.output (24, False)

Skriv CTRL-o, CTRL-x ENTER for at gemme filen og afslutte nano-editor

Rediger tilladelserne til filen

$ sudo chmod 755 /usr/local/bin/power_ring_led.py

Opret et start script:

$ sudo nano /etc/init.d/power_ring_led.sh

og rediger til at være:

#!/bin/sh

### BEGIN INIT INFO # Giver: scriptnavn # Required-Start: $ remote_fs $ syslog # Required-Stop: $ remote_fs $ syslog # Standard-Start: 2 3 4 5 # Standard-Stop: 0 1 6 # Kort beskrivelse: Start dæmon ved opstart # Beskrivelse: Aktiver service fra daemon. ### END INIT INFO # Starter og stopper power_ring_led.py # Directory: /etc/init.d/power_ring_led.sh # Tilladelser: chmod 755 /etc/init.d/power_ring_led.sh # Start eller stop power_ring_led.py case " $ 1 "i start) /usr/local/bin/power_ring_led.py --light &;; stop) /usr/local/bin/power_ring_led.py --off &;; *) ekko "Brug: /etc/init.d/power_ring_led.sh {start | stop}" exit 1;; esac exit

Skriv CTRL-o, CTRL-x ENTER for at gemme filen og afslutte nano-editoren

Rediger tilladelserne til filen

$ sudo chmod 755 /etc/init.d/power_ring_led.sh

Registrer scriptet til at køre ved opstart

$ sudo insserv power_ring_led.sh

Start scriptet

$ sudo /etc/init.d/power_ring_led.sh start

Ring -LED'en skal lyse!

Trin 3: Nulstil switch

Nulstil kontakt
Nulstil kontakt
Nulstil kontakt
Nulstil kontakt

Nulstil kontakt

Generelt kører min Raspberry Pis hele tiden. En Raspberry Pi 3 bruger meget lidt strøm.

Ideelt set vil jeg gerne have en afbryder til sikkert at lukke pi'en ved at ringe til sudo shutdown -h 0, inden strømmen afbrydes. Imidlertid er implementering af en afbryder mere kompliceret og vil sjældent blive brugt.

Dette er en nulstillingskontakt, grundlæggende genstarter den Raspberry Pi.

Lod to stifter til Raspberry Pi 3

Find Runner -hullerne på Raspberry Pi 3 - se billede, boks med gult. Run -hullerne er i nærheden af gpio -headeren.

Fjern alle kabler (strøm, HDMI, ethernet osv.) Og Micro SD -kortet fra Raspberry Pi.

Fra bunden af brættet loddes to korte udbryder -hanstifter gennem Run -hullerne.

Tilslut alt sammen igen, og sørg for, at det stadig fungerer.

Tilslut N01 (normalt åben) på den momentane switch til en af Run pins og C1 til den anden Run pin. NC1 (normalt lukket) bruges ikke.

Tryk på knappen, og systemet skal genstarte!

Anbefalede: