Orodha ya maudhui:
- Vifaa
- Hatua ya 1: Usanidi wa Pi ya Raspberry
- Hatua ya 2: Kufanya Uunganisho na Kuunganisha Rpi Wireless kwa Mtandao wako wa Karibu
- Hatua ya 3: Sensor DS18B20 (joto) - 1-waya
- Hatua ya 4: MCP3008 - Analog Sensing
- Hatua ya 5: Vifaa
- Hatua ya 6: Kuunda Datbase ya Mariadb
- Hatua ya 7: Nambari ya Github na Upimaji
- Hatua ya 8: Run Code on Boot Up
- Hatua ya 9: Sanidi Tovuti
- Hatua ya 10: Hiari - Mfano mdogo
Video: Mradi wa Sensorer ya Gesi ya TheAir: Hatua 10
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:51
Monoxide ya kaboni na dioksidi kaboni, pia inajulikana kama CO na CO2. Mkaa ambao hauna rangi, hauna harufu, hauna ladha na ukweli ni hatari wakati uko kwenye viwango vya juu kwenye chumba kilichofungwa. Ikiwa unaishi sema kwa mfano katika chumba cha wanafunzi ambacho kimetengwa vibaya, hakuna mtiririko mzuri wa hewa na kwa sababu fulani, kibaniko hufanya kelele ya kushangaza wakati wa kufanya toast. Basi unaweza kuwasiliana na gesi hizi na wakati hiyo itatokea, lets hope inaisha tu na maumivu ya kichwa kidogo, kwa sababu katika mkusanyiko mkubwa inaweza kudhoofisha au hata kukuua (ingawa ni nadra sana).
Kwa hivyo niliamua kuja na mradi huu. Wazo langu ni rahisi, tumia mashabiki kufanya mtiririko wa hewa. Hewa nzuri na mbaya kutoka kwa kusema. Kwa matumizi ya ziada, niliongeza sensorer ya ziada ya joto, kitufe cha mashabiki wa uanzishaji wa mwongozo na pia wavuti ya wale ambao wanapenda kuona takwimu na / au kuamsha mashabiki kutoka kwa kompyuta zao.
Kama mwanafunzi, mzazi, mtu mmoja au kiumbe hai. Hili ni jambo ambalo kwa kawaida ungependa kuepuka wakati unakaa katika raha ya nyumba yako mwenyewe. Hii husaidia wale ambao wanapenda kufanya maisha yao iwe rahisi.
Vifaa
- Raspberry Pi 3+
- Chaja mini-usb 5V / 2.5A
- Kadi ya Micro-sd
-
Sensorer
- MQ-7 (CO)
- MQ-135 (CO2)
- DS18B20 (joto)
- Shabiki wa 2 x 12V DC
- 2 x 2n2222 transistors
- Maonyesho ya LCD 16 * 2
- Pushbutton
- MCP3008
- Kigeugeu cha kiwango cha Logi
- Cable ya Ethernet (kwa sababu za usanidi)
Hatua ya 1: Usanidi wa Pi ya Raspberry
Kabla ya kufanya kazi na Rpi, tutahitaji programu.
- WinSCP au FilleZilla (hiari ikiwa unataka kuhamisha faili kutoka kwa kompyuta yako kwenda Rpi)
- Diski ya Win32 au Etcher (ambayo unapendelea zaidi)
- Putty au MobaXterm (ambayo unapendelea zaidi)
- Picha ya Raspbian na desktop
Kabla sijaanza ningependa kutaja kwamba wakati wa kufanya mafunzo haya, wakati ninachagua programu juu ya nyingine, haimaanishi kwamba ninapendekeza. Kwa mfano napenda kutumia etcher kwa sababu ni rahisi kutumia lakini Win32 ina chaguo la kutengeneza nakala rudufu. Sasa hiyo iko nje ya mfumo wangu, hebu tuanze.
Ikiwa tayari unayo Rpi ambayo imeunganishwa na mtandao wako wa wifi, ruka hadi hatua ya 3.
Kwanza tutatumia Etcher kuweka picha ya Raspbian kwenye kadi yako ya sd. Sasa kabla hatujatoa kadi ya sd, tutabadilisha "vitu" kadhaa kwenye faili ya cmdline.txt, ambayo inaweza kupatikana kwenye picha. Fungua faili ya.txt -> Ongeza mstari huu "ip = 169.254.10.1" (hakuna alama za nukuu) mwisho wa mstari (yote kwenye laini 1) -> Hifadhi faili
Pili fanya folda tupu iitwayo "ssh" katika kizigeu cha boot (bila alama za nukuu).
Baada ya hapo unaweza kutoa salama kwa Microsd na kuiweka kwenye Rpi.
Sababu ya IP tuli iliyowekwa ngumu ni kuifanya iwe rahisi kuungana na Rpi. Ikiwa kwa sababu fulani Rpi haina ip na DHCP basi unatumia static ip.
Hatua ya 2: Kufanya Uunganisho na Kuunganisha Rpi Wireless kwa Mtandao wako wa Karibu
Tutazima Rpi -> unganisha kebo ya ethernet kati ya kompyuta na Rpi.
-
Anza Putty na ujaze hii:
- Jina la Mwenyeji (au anwani ya IP): 169.254.10.1
- Bandari: 22
-
Kituo kinaibuka na unachapa jina la mtumiaji na nywila chaguomsingi:
- Jina la mtumiaji: pi
- Nenosiri: rasipberry
Sasa kwa kuwa tumeunganishwa kijijini kwa rpi, tunataka Rpi iwe na muunganisho na wifi yako.
- Ziada: andika katika "sudo raspi-config"
- Hapa utahitaji kubadilisha nywila kwa mtumiaji wa pi (sababu za usalama)
- Baadaye nenda kwenye Chaguzi za Ujanibishaji -> Badilisha Wakati (chagua sahihi) -> Kisha nenda kwa Wifi Country -> chagua nchi.
- Funga raspi-config na uwashe upya.
- Unapoingia, fanya mtumiaji wa mizizi kwa muda mfupi -> sudo -i
-
Andika amri hii ili kuongeza mtandao wako kwa Rpi (nambari hapa chini orodha)
- nywila = "nywila" (na alama za nukuu)
- Mtandao wa jina = "SSID"
- Kumbuka kutumia mara mbili >>! Muhimu!
echo "nywila" | wpa_passphrase "SSID" >> /etc/wpa_supplicant/wpa_supplicant.conf
Sasa reboot tena
Wakati wa kuunganisha tena, angalia ip yako kwa kuandika:
ifconfig
na angalia wlan0, karibu na inet.
Sasa kwa kuwa tuna unganisho la mtandao, hebu fanya sasisho la "haraka".
sasisho la sudo apt
Sudo apt dist-upgrade -y
Hii inaweza kuchukua muda.
Hatua ya 3: Sensor DS18B20 (joto) - 1-waya
Kwa kila mradi, kutakuwa na kitu maalum ambacho lazima kifanyike ama sivyo haifanyi kazi wakati huu.
Wakati huu tunayo na sensorer ya joto ya DS18B20 ambayo inahitaji waya 1 ambayo sitaelezea kwanini lakini nitaelezea jinsi ya kuifanya ifanye kazi angalau.
Kwa hili lazima turudi kwenye raspi-config kwenye Rpi, skrini nzuri ya samawati.
- Nenda kwenye chaguzi za Interfacing
- Chagua 1-Waya na uchague kuwezesha.
Nimemaliza…
Ninatania tu.
Sasa tutahitaji kurekebisha / boot/config.txt
Sudo nano / boot/config.txt
Ongeza mstari huu chini.
# Wezesha moja kwa moja
dtoverlay = w1-gpio
Sasa Sudo reboot kitu hicho na sasa tumemaliza.
Kuangalia ikiwa inafanya kazi, unganisha sensa kwa Rpi kisha urudi kwenye kituo na uandike nambari hii (Tazama hatua inayofuata vifaa vya jinsi ya kuunganisha sensor ya joto).
cd / sys / basi / w1 / vifaa / w1_bus_master1
ls
Unapaswa kuona kitu kilicho na nambari na herufi zilizo na hudhurungi nyeusi kushoto juu, hakikisha kuandika kipande hiki cha habari baadaye wakati tutafanya kazi na nambari kutoka kwa github.
Ikiwa kwa sababu fulani haifanyi kazi, angalia kiunga hiki ambacho kinaingia ndani zaidi.
Hatua ya 4: MCP3008 - Analog Sensing
Kama tulifanya mabadiliko kwa sensorer ya joto, tunahitaji pia kufanya mabadiliko kwa sensorer zingine kwani zinahitaji kusoma katika data ya analog. Hapa ambapo MCP3008 inakuja vizuri, tunahitaji pia kubadilisha kiolesura cha SPI.
Sudo raspi-config
Nenda kwenye Chaguzi za Kuingiliana -> Chagua SPI -> wezesha.
Kisha Maliza.
Hatua ya 5: Vifaa
Hatujafanya kabisa na Rpi lakini ya kutosha ili tuweze kuanza kujenga na kuweka vifaa pamoja.
Ushauri mwingine ni kuangalia vizuri miunganisho yako wakati wa kujenga ili uhakikishe… hailipuki Rpi.
Pia, katika Mpangilio utaona baadhi ya vifaa viko juu yake mara moja tu ingawa tutafanya kazi na zaidi ya 1 ya sehemu moja. Inamaanisha tu kwamba lazima urudie mchakato ule ule wa kujenga kipengee 1. Kuna ubaguzi 1 mdogo, sensorer za mq-x haziitaji kibadilishaji cha kiwango cha ziada au MCP3008. Ongeza tu kebo ya ziada ya kijani kibichi (katika pdf) kwa ubadilishaji wa kiwango na MCP3008.
Hariri ya ziada: Mashabiki wanahitaji kutumia transistor kama swichi. Ninatumia transistor ya 2n2222A kwa shabiki 1, kwa sababu mashabiki 2 wanaweza kuwa mzigo mzito.
Ikiwa una transistor inayoweza kushughulikia mkondo mkubwa basi mzuri, ruka sehemu ya mwisho ya hatua hii.
Ikiwa hauna mmoja kama mimi, basi utahitaji kuifanya kama hii, shabiki 1 = 1 transistor, mashabiki 2 = transistors 2, na kadhalika (kila shabiki ni diode ya transistor + yake mwenyewe kama vile pdf).
Utahitaji pia kuongeza nambari fulani kwenye programu.py katika backend_project baadaye kwenye Hatua ya 7: Msimbo wa Git….
Hatua ya 6: Kuunda Datbase ya Mariadb
Kama kichwa kinamaanisha, tutaunda hifadhidata ili tuwe na mahali pa kuhifadhi data zetu za sensa.
Kwanza fanya vitu vya kwanza, pakua Mariadb kwenye Rpi.
Sudo apt-get kufunga mariadb-server
Baada ya usanikishaji, wacha tuitumie.
mysql -u mzizi
Nenosiri ni tupu, kwa hivyo hakuna kitu cha kuchapa. Bonyeza kuingia.
Wacha tuunde mtumiaji sasa.
Unda Mtumiaji 'Mtumiaji' @ '%' IDEDIFIED BY 'userdb';
TOA MAHAKAMA YOTE KWA *. * KWA 'mtumiaji' @ '%' KWA UCHAGUZI WA RUZUKU;
HAKI ZA FLUSH;
Bonyeza Ctrl + C ili kutoka na kuanza upya huduma kwa haraka:
huduma ya sudo kuanza tena mysql
Ingia na jina la mtumiaji: mtumiaji na nywila: userdb:
mysql -u mtumiaji -p
Wakati wa kuunda hifadhidata sasa.
Unda mradi wa dabati_db SETA YA UFAFANUZI SET utf8;
TUMIA mradi_db
Unda meza "historiek" (inamaanisha historia).
Unda JEDWALI IKIWA HAIKO `historiek` (` id` INT NOT NULL AUTO_INCREMENT, `sensorID` VARCHAR (5) SI NULL,` datum` TAREHE YA SIKU SIYO YOTE UFAFANUZI CURRENT_TIMESTAMP, `waarde` FLOAT (4) NULL DEFAULT 0, KEY YA MSINGI (` id`)) ENGINE = InnoDB;
Na voila, hifadhidata imetengenezwa.
Hatua ya 7: Nambari ya Github na Upimaji
Tunakaribia mwisho wa mradi wetu.
Kabla ya kupata nambari, tutahitaji kuagiza moduli kadhaa kwenye Rpi:
pip3 kufunga Flask_MySQL
pip3 kufunga chupa-socketio
pip3 kufunga -U chupa-cors
pip3 kufunga spidev
Sasa tunahitaji nambari kuifanya ifanye kazi, andika kwenye terminal:
clone ya git
Angalia ikiwa folda iko na:
ls
Sasa utahitaji vituo 2 kwa hivyo ni rahisi kubofya kulia kwenye kituo na bonyeza vipindi vya Nakala:
Nenda kwa backend_project na joto ukitumia amri ya cd.
Sasa kabla ya kuanzisha programu kwa madhumuni ya upimaji. Bado unakumbuka Hatua ya 3 na sensa ya waya 1 ambapo unahitaji kuandika nambari kadhaa? Hakuna wasiwasi ikiwa unayo, angalia tu hatua haraka 3.
Tutaongeza nambari hizi kwa nambari hiyo kwa sababu itahitaji kujua sensa sahihi wakati wa kuitumia.
Kituo na folda ya joto, utapata app.py. Tutaifungua.
Sudo nano app.py
Tafuta kazi inayoitwa "def temperatuur ():", hapo itabidi ubadilishe "**" na nambari ulizoandika. Katika kesi yangu ningeipata laini hii ya nambari (kila nambari ni ya kipekee).
sensor_file_name = '/ sys / vifaa / w1_bus_master1 / 28-0316a4be59ff / w1_slave
Wakati wa kupima. Vituo vyote katika folda ya backend_project na joto, andika:
python3 app.py
Sasa kumbuka hatua ya 5: vifaa ambapo unahitaji kuongeza nambari ikiwa unatumia mashabiki na transistors nyingi?
Nzuri, ikiwa sio kurudi hatua ya 5.
Sasa tunahitaji kuongeza nambari kama nilivyosema kwa app.py katika backend_project. Ili kurahisisha, nilifanya mfano wa hii katika nambari. Kila mstari wa nambari ya maoni ambayo ina "fan1" ndani yake, ondoa mistari hiyo na voila, sasa unaweza kutumia mashabiki 2.
Ikiwa unataka kutumia zaidi basi mashabiki 2 tu, nakili na ubandike nambari sawa chini yake lakini na nambari tofauti. Ubaya wa hii ni kazi ya kibinafsi kwako na pini ndogo za gpio zinapatikana. Hakuna faida kwa hii ambayo najua.
Hatua ya 8: Run Code on Boot Up
Tunataka hati hizi za chatu 2 ziendeshe wakati buti zetu za Rpi zikiibuka na ikiwa hati itaanguka, inapaswa kuanza yenyewe. Ili kufanya hivyo tutafanya huduma 2.
Ili kufanya hivyo, andika:
sudo nano /etc/systemd/system/temperature.service
Nakili na ubandike hii kwa huduma ya joto:
[Kitengo] Maelezo = Huduma ya Joto Baada ya = multi-user.target
[Huduma] Aina = rahisi
ExecStart = / usr / bin / python3 / nyumba /pi / Nyaraka / nmct-s2-project-1-TheryBrian/temperature/app.py
StandardInput = nguvu ndogo
Anzisha upya = kutofaulu
Anzisha upyaSec = 60s
[Sakinisha]
InayotarajiwaBy = multi-user.target
Funga na ufanye tena lakini kisha kwa huduma ya backend_project:
Maandishi ya kwanza wazi:
sudo nano /etc/systemd/system/backend_project.service
Kisha tena nakili na ubandike:
[Kitengo] Maelezo = Huduma ya mradi wa backend_project
Baada ya = multi-user.target
[Huduma]
Aina = rahisi
ExecStart = / usr / bin / python3 / nyumba / pi / Nyaraka / nmct-s2-project-1-TheryBrian/backend_project/app.py
StandardInput = nguvu ndogo
Anzisha upya = kutofaulu
Anzisha upyaSec = 60s
[Sakinisha]
InayotarajiwaBy = multi-user.target
Okoa na funga.
Sehemu ya mwisho ni kuandika hii:
Sudo systemctl daemon-reload
Sudo systemctl wezesha hali ya joto. huduma sudo reboot
Sasa hati zetu 2 za chatu zinapaswa kukimbia kiatomati kwenye boot.
Hatua ya 9: Sanidi Tovuti
Wakati unapakua hazina, unapaswa pia kupata folda inayoitwa mbele. Hapa ndipo yaliyomo ni ya wavuti.
Kwanza tunahitaji apache kabla ya kutumia folda. Fuata mwongozo kwenye kiunga hiki cha apache.
Wakati uko tayari. Nenda ambapo folda ya mbele iko:
cd / Nyaraka / nmct-s2-mradi-1-TheryBrian
Kisha andika:
sudo mv mbele / var / www / html
Wakati hiyo imekwisha, nenda kwenye folda ya html, jiandae kwa kazi fulani ya kuchosha (kosa langu).
cd / var / www / html /
kisha nenda kwenye folda ya mbele na anza kusogeza kila kitu kwenye folda ya html.
mfano:
sudo mv css / var / www / html
Kisha futa folda ya mbele.
Na tumemaliza na kila kitu.
Bahati njema:).
Hatua ya 10: Hiari - Mfano mdogo
Kwa sababu za kujaribu nilitengeneza mfano wa sanduku tu na vifaa vyote ndani ili niweze kuona ikiwa kila kitu hufanya kazi kuagiza.
Kwa kawaida mradi huu ungefanywa kwa kiwango kikubwa. Kwa mfano: chumba, nyumba, kiwanda, duka na kadhalika…
Lakini ni wazi kabla ya kuanza kutengeneza mashimo kwenye kuta (wimbo mzuri). Kwanza tunataka kuona ikiwa inafanya kazi tu. Huna haja ya kutengeneza sanduku la kujaribu, lakini kila wakati ni raha kufanya ufundi.
Hapa ni mfano wangu.
Ilipendekeza:
Jinsi ya Kusawazisha & Kutumia MQ9 Sensorer ya Gesi W / Arduino: Hatua 8
Jinsi ya Kusawazisha & Kutumia MQ9 Sensorer ya Gesi W / Arduino: Unaweza kusoma hii na mafunzo mengine ya kushangaza kwenye wavuti rasmi ya ElectroPeak Muhtasari Katika mafunzo haya, utajifunza jinsi ya kupima na kutumia sensorer ya gesi ya MQ9 na bodi ya Arduino. sensa ya gesi ni na jinsi inavyofanya kazi. Com
WIND - Mradi wa kuongeza kasi kwa Mradi wa Adafruit: Hatua 9 (na Picha)
Upepo - Mradi wa kuongeza kasi kwa Manyoya ya Adafruit: Nimekuwa nikikusanya polepole wadhibiti wa manyoya wa Adafruit na bodi za sensorer ambazo zinapatikana kutoka Adafruit. Wanafanya prototyping na upimaji kuwa rahisi sana, na mimi ni shabiki mkubwa wa mpangilio wa bodi. Kwa kuwa nilijikuta tumetumia
Sensorer ya Gesi ya IoT: Hatua 7
Sensorer ya Gesi ya IoT: Nilikuwa nikitaka kuunda Sensor ya Gesi ambayo inaweza kugundua kuvuja kwa gesi ndani ya nyumba. Matumizi halisi ya hii kuhakikisha haukuacha jiko bila moto, na kusababisha sumu ya gesi. Matumizi mengine yanaweza kuwa kuhakikisha kuwa haukushangilia
Sensorer ya Gesi ya Arduino: Hatua 5
Sensorer ya Gesi ya Arduino: sensa hii ya Gesi itamruhusu mtumiaji kupima gesi kama kaboni monoksidi na methane na vile vile gesi zinazoweza kuwaka na kufanya kama pumzi
Mchomaji umeme wa USB! Mradi huu unaweza kuchoma kupitia Plastiki / Mbao / Karatasi (Mradi wa kufurahisha Pia Inapaswa Kuwa Kuni Nzuri Sana): Hatua 3
Mchomaji umeme wa USB! Mradi huu unaweza kuchoma kupitia Plastiki / Mbao / Karatasi (Mradi wa kufurahisha Pia Inapaswa Kuwa Mti Mzuri Sana): USIFANYE KUTUMIA USB HII !!!! niligundua kuwa inaweza kuharibu kompyuta yako kutoka kwa maoni yote. kompyuta yangu ni sawa tho. Tumia chaja ya simu ya 600ma 5v. nilitumia hii na inafanya kazi vizuri na hakuna kitu kinachoweza kuharibika ikiwa unatumia kuziba usalama kukomesha nguvu