INHOUDSOPGAWE:
- Stap 1: Elektroniese stroombaan
- Stap 2: Python -kode
- Stap 3: Hoe om die script outomaties na die opstartprosedure te begin
Video: Uitskakelknoppie vir Framboos Pi: 3 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:23
Die Raspberry Pi is 'n baie nuttige rekenaarplatform waarmee u verskillende IoT/robotika/smart-home/… projek-toepassings kan skep. Die enigste ding wat dit nie het nie, in vergelyking met 'n gewone rekenaar, is 'n afskakelknoppie. So, hoe kan ons self een skep? Goed, kom ons doen dit saam!
Vir hierdie tutoriaal benodig u die volgende:
- 1 Raspberry Pi is reeds gekonfigureer en gereed om te gebruik
- 1 broodbord of iets waarmee u die elektroniese stroombaan kan skep
- 1 drukknop
- 2 springdrade
As u nog nooit 'n Raspberry Pi gebruik het nie, kan u my handleiding raadpleeg oor hoe en wat u moet doen om dit op te stel:
www.instructables.com/How-to-Setup-a-Raspberry-Pi-and-Start-Using-It/
Stap 1: Elektroniese stroombaan
Niks super ingewikkeld hier nie, dit is 'n redelike eenvoudige kring. Die 2 foto's hierbo verduidelik die kringopbou. U kan die GPIO -pen wat u wil gebruik vir die invoer van die knoppie gebruik; u moet net die kode opdateer om dit weer te gee.
Kom ons verduidelik vinnig hoe dit gaan werk:
- die ROOI draad dra die 3.3V na die een kant van die drukknop.
- die SWART kabel verbind die ander kant van die drukknop met 'n Pi GPIO wat as invoer gebruik sal word.
- die knoppie is standaard oop, so daar is geen spanning nie. Die SWART kabel is dus op 0V as die knoppie nie ingedruk word nie. Dit beteken dat die logiese toestand van die Pi GPIO -invoer 0 is.
- as die knoppie ingedruk word, gaan die spanning daardeur en die SWART kabel word aan die 3.3V gekoppel. Die Raspberry Pi sal dan 'n spanning van 3.3V by sy ingang sien, wat ooreenstem met 'n logiese toestand van 1.
Stap 2: Python -kode
Noudat die kring gereed is vir gebruik, moet ons die kode skryf wat dit sal laat loop, en ek gebruik Python in 'n PyCharm -omgewing hier. Ek het die knoppie gekonfigureer om die Raspberry Pi slegs uit te skakel as dit gevolglik meer as 3 sekondes ingedruk word. Die rede waarom ek dit doen, is dat dit baie maklik is om dit per ongeluk te druk, en u wil nie u Pi per ongeluk afsluit nie.
Die drukskerm hierbo kom uit my PyCharm -omgewing, en die kode is die volgende (met 'n geringe verskil op reël 26 wat aan 'n ander projek gekoppel is, maar nie hier vereis word nie):
# Dit is 'n kode om die Raspberry Pi uit te skakel as u 'n gedefinieerde knoppie ingedruk hou om Raspberry PiGPIO.setwarnings (Onwaar) GPIO.setmode (GPIO. BCM) uit te skakel # Broadcom pin-numbering schemeGPIO.setup (button_poweroff, GPIO. IN, pull_up_down = GPIO. PUD_DOWN) # Knoppie as invoer ingestel terwyl True: GPIO.wait_for_edge (button_poweroff, GPIO. RISING) start = time.time () time.sleep (0.2) # Switch debounce while GPIO.input (button_poweroff) == 1: time.sleep (0.01) length = time.time () - start if length > hold_time: os.system ("sudo poweroff")
Die eerste ding, as u die drukknoppie aan 'n ander GPIO gekoppel het, is om reël 11 op die bogenoemde drukskerm op te dateer met die relevante GPIO -invoer:
button_poweroff = GPIO_X # Werk op met die korrekte GPIO wat op u kring gebruik is
Met die veranderlike hold_time kan u ook die wagtyd wat die Pi veroorsaak, verander.
Stap 3: Hoe om die script outomaties na die opstartprosedure te begin
Noudat ons die kode gereed het, moet ons dit net uitvoer. Maar dit sal gerieflik wees as ons hierdie script outomaties kan laat uitvoer elke keer as die Pi opstart, sodat die knoppie sonder ons werk om die script elke keer uit te voer. Daar is baie maniere om dit te doen. Ek het hier 'n reël bygevoeg in die rc.local lêer wat in die / etc / gids van u Pi geleë is. Dit word uitgevoer as deel van die opstartvolgorde.
U moet 'n opdragreël oopmaak en die volgende opdragte tik (eerste drukskerm hierbo):
cd /
cd ens sudo nano rc.local
Die eerste opdrag neem u van u /home /pi -gids na die wortel, wat is /.
Die tweede opdrag neem u dan na die / etc / directory.
Laastens maak die derde die rc.local -lêer oop as 'n supergebruiker, met volledige wysigingsregte wat u nodig het om die lêer te verander.
Sodra u in die lêer is, moet u net 'n reël aan die einde daarvan byvoeg, maar voor die afrit 0 -verklaring (2de drukskerm hierbo):
# Voeg hierdie reël by die rc.local -lêer om die script te begin
sudo python /home/pi/Documents/shutdown_with_hold.py &
Hier is 'n paar dinge waaraan u moet let:
- die naam van u lêer: in die lyn hierbo neem ek aan dat die lêer shutdown_with_hold.py is. Maar dit kan wees wat u wil, werk net die naam op met u naam.
- waar u u lêer gestoor het: in die lyn hierbo neem ek aan dat dit in u/home/pi/Documents -gids gestoor is. Maar weer, dit kan oral wees. U hoef net die absolute pad na u lêer hier te plaas.
- die "&" -karakter aan die einde daarvan: dit is belangrik, en dit laat hierdie opdrag op die agtergrond toe
En dit is dit! Die skrip word dus uitgevoer elke keer as u Pi aan is, en u hoef net meer as 3 sekondes op die knoppie te druk om dit uit te skakel.
Aanbeveel:
Hoe u u Framboos Pi kan verander in 'n gateway vir eksterne toegang: 6 stappe
Hoe u u Framboos Pi in 'n toegangspoort vir eksterne toegang kan verander: Hallo ouens! In die lig van die onlangse gebeurtenisse, het ons span by remote.it hard aan die dink gekom om idees vir afstandswerk pynloos en toeganklik te maak. Ons het die remote.itPi SD -kaartbeeld gekry, 'n SD -kaart wat u in 'n nuwe
Maklike opstelling IR -afstandsbediening met behulp van LIRC vir die Framboos -PI (RPi) - Julie 2019 [Deel 1]: 7 stappe
Easy Setup IR Remote Control Using LIRC for the Raspberry PI (RPi) - July 2019 [Part 1]: Na baie gesoek was ek verbaas en ontsteld oor die teenstrydige inligting oor hoe om IR -afstandsbediening vir my RPi -projek op te stel. Ek het gedink dit sou maklik wees, maar die opstel van Linux InfraRed Control (LIRC) was al lank problematies
Outomatiese videokonferensie vir ouma met framboos Pi: 9 stappe (met foto's)
Outomatiese videokonferensie vir ouma met framboos Pi: ek is bekommerd oor my 90-jarige ouma, want selfs sy moet tuis bly tydens die COVID-epidemie, maar sy is voortdurend besig om uit te kom en doen " noodsaaklik " dinge op straat, soos om lotterykaartjies te koop, met bure te gesels. Ek
Waarnemer vir humiditeit en temperatuur met behulp van Framboos Pi met SHT25 in Python: 6 stappe
Waarnemer vir humiditeit en temperatuur met Raspberry Pi met SHT25 in Python: as 'n entoesias vir Raspberry Pi, het ons gedink aan nog meer skouspelagtige eksperimente. en SHT25, Humidi
Eenvoudige sorteerstelsel vir produkte met Framboos Pi en Arduino: 5 stappe
Eenvoudige produksorteringstelsel met Framboos Pi en Arduino: ek is 'n fan van ingenieurswese, ek is mal daaroor om programmeer en elektroniese verwante projekte in my vrye tyd te maak; in hierdie projek deel ek met u 'n eenvoudige produksorteersisteem wat ek onlangs gedoen het. hierdie stelsel, berei asseblief die komponente voor