Përmbajtje:
- Hapi 1: Pjesët
- Hapi 2: Procedura
- Hapi 3: Programimi
- Hapi 4: Zgjidhja e problemeve dhe modifikimi
- Hapi 5: Pajisje kompjuterike
Video: Zbuluesi i humorit të qenve (Raspberry Pi): 5 hapa
2024 Autor: John Day | [email protected]. E modifikuara e fundit: 2024-01-30 12:24
Ky udhëzues është krijuar për të marrë tingujt që bën një qen dhe për të përcaktuar nëse atyre duhet t'u afrohen apo jo me LED -të tregues. Shumica e pronarëve të qenve i njohin kafshët e tyre shtëpiake dhe mund të lexojnë sinjalet që japin, kështu që ky Udhëzues u drejtohet kryesisht të huajve që mund të vijnë në kontakt me qenin tuaj.
Hapi 1: Pjesët
Do t'ju duhet:
- Raspberry Pi
- LED të kuq/jeshil (X2)
- Monitor
- Tastiera/miu me USB
- Dongle WiFi
- Mikrofon i jashtëm USB
- Rezistencë 330 ohm (X2)
Pjesë Opsionale
- Furnizimi me energji i jashtëm i Raspberry Pi
- Jakë qeni
Hapi 2: Procedura
Hapi i parë për të filluar këtë projekt është të vëzhgoni sjelljet dhe modelet që lidhen me qenin tuaj. Mund të klikoni KETU për një udhëzues të thjeshtë mbi atë që duhet të kërkoni. Në rastin tim, qeni im ulërin sa herë që është i emocionuar ose i lumtur të shohë dikë dhe leh me ndërprerje kur është nervoz ose i rënduar. Në hapat e ardhshëm unë do të shpjegoj se si të modifikoj programin tim në mënyrë që të përshtaten sjelljet e qenit tuaj.
Hapi 3: Programimi
Më poshtë është programi Python që kam përdorur për qenin tim. Në hapin tjetër unë do të shpjegoj se si të modifikoni programin për sjelljen e qenit tuaj. Mos e ekzekutoni programin akoma pasi nuk do të funksionojë derisa të bëni hapin tjetër.
#!/usr/bin/pythonimport pyaudio import sys fije importi nga koha e importimit të gjumit nga importimi i grupit të grupit të importit RPi. GPIO si GPIO
leh = 0
ulërimë = Mbajtje e rreme = 0 leh Gjatësia = 5 vonesa = 0 pritje = 2 flamur = 0 e kuqe = 7 jeshile = 5 dalje Flamur = I rremë
def toggleLightRed (c):
GPIO.setmode (GPIO. BOARD) GPIO.setup (e kuqe, GPIO. OUT) GPIO.putput (c, True) fle (10) GPIO.output (c, False) print ("Red toggled")
def toggleLightGreen (c):
GPIO.setmode (GPIO. BOARD) GPIO.setup (jeshile, GPIO. OUT) GPIO.putput (c, True) fle (10) GPIO.output (c, False) print ("Green toggled")
def kryesore ():
global leh global ulërim global global mbaj leh globaleVonesa globale globale flamuri global global global red green
copë = 8192
FORMAT = pyaudio.paInt16 KANALET = 1 VLER = 44100 pragu = 3000 max_vlera = 0 p = pyaudio. PyAudio () lumi = p.hapur (format = FORMAT, kanale = KANALE, norma = VLERA, hyrje = E vërtetë, dalje = E vërtetë, frames_per_buffer = copë) GPIO.setmode (GPIO. BOARD) GPIO.setup (e kuqe, GPIO. OUT) GPIO.setup (jeshile, GPIO. OUT) provoni: printoni "Zbulimi i inicializuar" ndërsa True: provoni: të dhënat = stream.read (copë) përveç IOError si psh: nëse ex [1]! = pyaudio.paInputOverflowed: ngre të dhëna = '\ x00' * copë as_ints = array ('h', data) max_value = max (as_ints) ndërsa max_value> pragu: vonesë = 0 mbaj = mbaj+1 provo: të dhëna = stream.read (copë) përveç IOError si psh: nëse ex [1]! = Pyaudio.paInputOverflowed: ngre të dhëna = '\ x00' * copë as_ints = array ('h', të dhëna) max_value = max (as_ints) if hold> = barkLength: howl = Printimi i vërtetë "HOWL DETECTED" toggleLightGreen (green) GPIO.cleanup () elif mbaj> 0 dhe mbaj
nëse _name_ == '_majt_':
kryesore ()
Hapi 4: Zgjidhja e problemeve dhe modifikimi
Konfigurimi
Para se të ekzekutoni programin, do t'ju duhet të shkruani sa vijon në Terminal për të instaluar PyAudio:
sudo apt-get intall python-pyaudio
Pas kësaj ju mund të testoni-ekzekutoni programin për t'u siguruar që ai po funksionon siç duhet.
Zgjidhja e problemeve
Mund të përjetoni gabimin e mëposhtëm:
IOError: [Hyrja e Errno tejmbushur] -9981
Për ta rregulluar këtë, thjesht rrisni numrin e caktuar në pjesën e ndryshueshme derisa gabimi të mos shfaqet më.
Duke modifikuar
Variabla barkLength dikton numrin e herëve që programi bën sythe para se një zhurmë të mos shihet më si leh, por si një ulërimë. Nëse qentë tuaj ulërijnë, por e bëjnë këtë vetëm për një shpërthim të shkurtër, atëherë duhet ta zvogëloni këtë numër.
Variablat e kuqe dhe jeshile i referohen porteve të daljes që do të përdoren për treguesit LED. Këto mund të ndryshohen për t'iu përshtatur nevojave tuaja.
Edhe pse nuk e përdor vonesën e ndryshueshme në mënyrë aktive në programin tim, mund të vërehet se tregon shpeshtësinë e lehjes ose ulërimës.
Mbajtja e ndryshueshme i referohet sa herë programi bën sythe ku niveli i zhurmës është mbi pragun dhe përdoret për të përcaktuar nëse një ulërimë po ndodh. Ky ndryshore nuk duhet të modifikohet në asnjë mënyrë pasi ulërimat zbulohen përmes manipulimit të ndryshores së barkLength.
Variabli i pragut mund të ulet nëse lëvorja nuk është shumë e fortë ose e ngritur nëse ka zhurmë në sfond që mund të keqinterpretohet si zhurmë që del nga qeni.
Hapi 5: Pajisje kompjuterike
Atshtë në këtë pikë që ju duhet të keni një program plotësisht funksional që shfaq në ekran se çfarë do të bëjë pajisja. Kjo pikë në projekt është ajo ku ju duhet të vendosni nëse ky do të jetë një mikrofon i palëvizshëm i vendosur në një vend (p.sh. një vend në shtëpi ku qeni normalisht frekuenton ose bie në kontakt me vizitorët) ose nëse projekti do të minimizohet dhe bashkangjitur në jakën e qenit për të siguruar reagime të menjëhershme për personin që ndërvepron me qenin.
Stacionare
Gjëja më e lehtë për të bërë është të lini gjithçka në një pjatë pasi nuk do të ketë lëvizje që mund të shkëpusë telat. Lidhni katodat e LED -ve të Kuq me kunjin Ground në Raspberry Pi dhe Anodat ose përmes një rezistori 330 ohm ose direkt në kunjin 7 të Raspberry Pi. Bëni të njëjtën gjë me LED -të e Gjelbër, por lidhni Anodat me pin 5. Drejtoni programin dhe duhet të keni një projekt të përfunduar pasi të keni modifikuar kodin sipas nevojave tuaja.
Jo Stacionare
Unë do të rekomandoja që së pari të përfundoni versionin e palëvizshëm vetëm për të siguruar që gjithçka po funksionon dhe pastaj të vazhdoni nga atje duke bashkuar gjithçka së bashku në mënyrë që asnjë tela të mos lidhet me lëvizjen e qenit.
Bashkangjitni LED -të në jakë në mënyrë që ata të dy të jenë në një pozitë të rehatshme dhe të jenë në gjendje të shihen nga dikush kur afrohen.
Pastaj lidhni furnizimin tuaj të jashtëm me energji elektrike, siç është ai i parë KERTU me mjedrën pi dhe sigurojeni atë në jakë në një mënyrë që është e rehatshme për qenin.
Pasi të jetë siguruar gjithçka në vend, vazhdoni dhe ekzekutoni programin, bashkojeni jakën qenit dhe mbaroni!
Recommended:
Mikro: Hapës i dyerve të qenve të qenve: 8 hapa (me fotografi)
Mikro: Hapës i dyerve të qenve të qenve të vegjël: Kafshët tuaja shtëpiake bllokohen në dhoma? Dëshironi që ta bëni shtëpinë tuaj më të arritshme për miqtë tuaj* të mbuluar me qime ?? Tani mundeni, ura !! Ky projekt përdor një mikrokontrollues mikro: bit për të hapur derën kur shtyhet një ndërprerës (miqësor ndaj kafshëve shtëpiake). Ne do
Elektriciteti/Zbuluesi i fushës EM (më i thjeshti): 3 hapa
Elektriciteti/Zbuluesi i fushës EM (më i thjeshti): Ky është një detektor më i thjeshtë i fushës EM që mund të gjeni në internet. Unë e kam projektuar vetë dhe është shpjeguar se si funksionon në hapin tjetër. Në thelb ajo që do t'ju duhet, janë dy transistorë disa rezistorë, antena për shembull e bërë nga një tel bakri li
Trajner i qenve të qenve: 5 hapa
Trajner i qenve të qenve: Sipas AKC, (https://www.akc.org/expert-advice/nutrition/how-many-times-a-day-should-a-dog-eat/) madhësia e pjesës së vaktit për ushqimet janë thelbësore për qentë, dhe madhësia e kutisë gjithashtu kufizoi numrin e ushqimeve që qeni mund të hajë në ditë, "Vet
Mikro: Zbuluesi i nivelit të zhurmës së bitit: 3 hapa
Mikro: Detektori i nivelit të zhurmës së bitit: Ky është vetëm një shembull i shkurtër për një detektor të nivelit të zhurmës bazuar në mikro: bit dhe Pimoroni enviro: bit. Mikrofoni në mjedis: bit zbulon nivelin e zërit, dhe nga vlera që rezulton një pozicion në matricën LED 5x5 llogaritet dhe
Zbuluesi i tymit IOT: Përditësoni detektorin ekzistues të tymit me IOT: 6 hapa (me fotografi)
Zbuluesi i tymit IOT: Përditësoni detektorin ekzistues të tymit me IOT: Lista e kontribuesve, Shpikësi: Tan Siew Chin, Tan Yit Peng, Tan Wee Heng Mbikëqyrës: Dr Chia Kim Seng Departamenti i Inxhinierisë Mekatronike dhe Robotike, Fakulteti i Inxhinierisë Elektrike dhe Elektronike, Universiti Tun Hussein Onn Malajzi. Shpërndarja