Sisällysluettelo:

Raspberry Pi -laitteen virrankatkaisupainike: 3 vaihetta
Raspberry Pi -laitteen virrankatkaisupainike: 3 vaihetta

Video: Raspberry Pi -laitteen virrankatkaisupainike: 3 vaihetta

Video: Raspberry Pi -laitteen virrankatkaisupainike: 3 vaihetta
Video: MKS sGen L V2.0 - A4988/DRV8825 Step/Dir configuration 2024, Marraskuu
Anonim
Raspberry Pi: n virrankatkaisupainike
Raspberry Pi: n virrankatkaisupainike

Raspberry Pi on erittäin hyödyllinen tietokonealusta, jonka avulla voidaan luoda erilaisia IoT/robotiikka/älykoti/… -projektisovelluksia. Yksi asia, jota sillä ei ole, verrattuna normaaliin tietokoneeseen, on sammutuspainike. Joten miten voimme luoda sellaisen itse? Selvä, tehdään se yhdessä!

Tätä opetusohjelmaa varten tarvitset seuraavat:

  • 1 Raspberry Pi on jo määritetty ja käyttövalmis
  • 1 leipälauta tai jotain, jonka avulla voit luoda elektronisen piirin
  • 1 painike
  • 2 hyppyjohtoa

Jos et ole koskaan käyttänyt Raspberry Pi: tä, voit tarkistaa opetusohjelmani siitä, miten ja mitä tehdä sen määrittämiseksi:

www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/

Vaihe 1: Elektroninen piiri

Elektroninen piiri
Elektroninen piiri
Elektroninen piiri
Elektroninen piiri
Elektroninen piiri
Elektroninen piiri

Tässä ei ole mitään monimutkaista, se on melko yksinkertainen piiri. Yllä olevat kaksi kuvaa selittävät piirin rakenteen. Voit käyttää mitä tahansa GPIO -pin -näppäintä painikkeiden syöttämiseen, sinun on vain päivitettävä koodi vastaamaan sitä.

Selitämme nopeasti, miten tämä toimii:

  • PUNAINEN johdin vie 3.3V: n painikkeen toiseen päähän.
  • MUSTA kaapeli yhdistää painikkeen toisen pään Pi GPIO -laitteeseen, jota käytetään tulona.
  • oletusarvoisesti painike on auki, joten sen läpi ei tule jännitettä. MUSTA kaapeli on siis 0V jännitteellä, kun painiketta ei paineta. Tämä tarkoittaa, että Pi GPIO -tulon looginen tila on 0.
  • kun painiketta painetaan, jännite kulkee sen läpi ja MUSTA kaapeli kytketään 3.3V: iin. Raspberry Pi näkee sitten tulossaan 3,3 V: n jännitteen, joka vastaa loogista tilaa 1.

Vaihe 2: Python -koodi

Python -koodi
Python -koodi

Nyt kun piiri on käyttövalmis, meidän on kirjoitettava koodi, joka käyttää sitä, ja käytän Pythonia PyCharm -ympäristössä. Määritin painikkeen sammuttamaan Raspberry Pi vain, kun sitä painetaan yli 3 sekuntia. Syy miksi teen niin, on se, että se on erittäin helppo painaa vahingossa, etkä halua sulkea P: täsi vahingossa.

Yllä oleva tulostusnäyttö on PyCharm -ympäristöstäni, ja koodi on seuraava (pienellä erolla rivillä 26, joka on linkitetty toiseen projektiin, mutta jota ei vaadita tässä):

# Tämä on aa -koodi Raspberry Pi -laitteen sammuttamiseksi, kun määritettyä painiketta painetaan ja pidetään painettuna # Ulkoinen moduuli tuo RPi. GPIO: n GPIO -tuontiajan tuontiosiksi # Raspberry Pi -tappi ja muuttujat definitons & hold_time = 3 # Pitoaika sekunnissa poweroffbutton_poweroff = 1 # Painike sammuttaa Raspberry PiGPIO.setwarnings (False) GPIO.setmode (GPIO. BCM) # Broadcom-pin-numerointijärjestelmä GPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # Painike asetettu syötteeksi True: GPIO.wait_for_edge (button_poweroff, GPIO. > hold_time: os.system ("sudo poweroff")

Ensimmäinen asia, jos olet liittänyt painikkeen toiseen GPIO -laitteeseen, on päivittää yllä olevan tulostusnäytön rivi 11 asiaankuuluvalla GPIO -tulolla:

button_poweroff = GPIO_X # Päivitä oikealla piirilläsi käytetyllä GPIO: lla

Myös hold_time -muuttujan avulla voit muuttaa odotusaikaa, joka käynnistää Pi: n sammumisen.

Vaihe 3: Skriptin käynnistäminen automaattisesti käynnistysmenettelyn jälkeen

Skriptin käynnistäminen automaattisesti käynnistyksen jälkeen
Skriptin käynnistäminen automaattisesti käynnistyksen jälkeen
Skriptin käynnistäminen automaattisesti käynnistyksen jälkeen
Skriptin käynnistäminen automaattisesti käynnistyksen jälkeen

Nyt kun meillä on koodi valmiina, meidän on vain suoritettava se. Mutta olisi kätevää, jos saisimme tämän komentosarjan suoritettavaksi aina, kun Pi käynnistyy, automaattisella tavalla, joten painike toimisi ilman meitä suorittamaan komentosarjan joka kerta. On monia tapoja tehdä niin. Olen lisännyt tähän yhden rivin rc.local -tiedostoon, joka sijaitsee Pi -laitteesi / etc / -kansiossa. Se suoritetaan osana käynnistysjärjestystä.

Sinun on avattava komentorivi ja kirjoitettava seuraavat komennot (ensimmäinen tulostusnäyttö yllä):

cd /

cd jne sudo nano rc.local

Ensimmäinen komento vie sinut hakemistosta /home /pi juurikansioon, joka on /.

Toinen komento vie sinut hakemistoon / etc /.

Lopuksi kolmas avaa rc.local -tiedoston pääkäyttäjänä, jolla on täydet muokkausoikeudet ja jota sinun on muokattava.

Kun olet tiedostossa, sinun tarvitsee vain lisätä rivi sen loppuun, mutta ennen exit 0 -lauseketta (toinen tulostusnäyttö yllä):

# Lisää tämä rivi rc.local -tiedostoon käynnistääksesi komentosarjan

sudo python /home/pi/Documents/shutdown_with_hold.py &

Tässä on muutamia asioita, joihin sinun on kiinnitettävä huomiota:

  1. tiedostosi nimi: yllä olevalla rivillä oletan, että tiedosto on shutdown_with_hold.py. Mutta se voi olla mitä haluat, päivitä vain nimi omallesi.
  2. minne olet tallentanut tiedostosi: yllä olevalla rivillä oletan, että se on tallennettu hakemistoosi/home/pi/Documents. Mutta jälleen kerran, se voi olla missä tahansa. Sinun on vain varmistettava, että kirjoitat tiedoston absoluuttisen polun tähän.
  3. "&" -merkki sen lopussa: tämä on tärkeää, ja se sallii tämän komennon suorittaa taustalla

Ja siinä se! Joten nyt skripti suoritetaan joka kerta, kun Pi on päällä, ja sinun on vain painettava yli 3 sekuntia painiketta sammuttaaksesi sen.

Suositeltava: