Sisukord:

SmartBox - teie kodu nutikas kodusüsteem: 6 sammu
SmartBox - teie kodu nutikas kodusüsteem: 6 sammu

Video: SmartBox - teie kodu nutikas kodusüsteem: 6 sammu

Video: SmartBox - teie kodu nutikas kodusüsteem: 6 sammu
Video: CS50 2013 - Week 2 2024, November
Anonim
SmartBox - Teie kodu nutikas kodusüsteem
SmartBox - Teie kodu nutikas kodusüsteem

Tere kõigile!

Selles juhendis selgitan teile, kuidas nutikat toasüsteemi teha. See süsteem sisaldab kahte seadet.

Üldine niiskusanduri ja temperatuurianduriga seade, mis mõõdab teie ruumi praegust elukvaliteeti. Saate seadistada soovitud minimaalse ja maksimaalse temperatuuri/niiskuse. Kui need väärtused erinevad, saate avalehele märguandeid.

Lisaks anduritele on ka kõlariga integreeritud nutikas raadiokell, mida saate veebisaidi kaudu juhtida. Saate häireid luua, kustutada ja lubada/keelata. Häireid keelatakse lihtsa käeliigutusega üle ultrahelianduri.

Teise ja eraldi seadmena saate juhtida LED-riba, millel on eelprogrammeeritud mustrid ja värvid.

Tarvikud

- Raspberry Pi 3 mudel B+

- 16 GB SD -kaart

- Arduino Uno

- Kokkupandud Pi T-Cobbler Plus

- väike leivalaud

- Leivaplaadi toiteallikas (näiteks YwRoboti toiteallikas)

- ühe juhtme temperatuuriandur (DS18B20+)

- Digitaalne niiskuse ja niiskuse andur (DHT22)

- Ultraheli kaugusandur (HC-SR05)

- 16x2 LCD ekraan

- potentsiomeeter

- Võimendi (Adafruit MAX98357A I2S 3W D klassi võimendi)

- Kõlar 3 läbimõõt - 4 oomi 3 vatti

- Bluetooth-moodul (HC-05)

- 5V RGB LED -riba (WS1812B)

- 1x 4,7 K oomi takisti

- 1x 10K oomi takisti

- 3x 1K oomi takisti

- 1x 330 oomi takisti

- Hüppa traatkaableid

Samm: juhtmestik

Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik
Juhtmestik

Alustame, eks.

Esiteks ühendage kõik nagu ülaltoodud skeemil. Veenduge, et ühendate kõik õigesti, vastasel juhul ei tööta mõned asjad.

MÄRKUS. Kui soovite kohandusi teha, peate koodi muutma. Nii et tehke seda ainult siis, kui teate, mida teete! Küsimuste või probleemide korral võite minuga alati ühendust võtta.

Kui vajate friteerimisskeeme, saate need siit alla laadida.

2. samm: andmebaas

Andmebaas
Andmebaas

Andmebaas salvestab kõik andurite mõõtmised ajaloo tabelisse. Seda kasutatakse veebisaidi ajaloo graafikute jaoks.

Kui soovite veebisaidil tegutseda, vajate kontot. Iga konto salvestab häired, valgusseadmed, märguanded ja seaded.

MÄRKUS. Sisselogimismehhanism ei kuulu komplekti, kuid võin selle hiljem lisada.

Samm: Raspberry Pi seadistamine

Nii et kui kõik on ühendatud, võime alustada Raspberry Pi seadistamisega.

Esiteks alustame pildist.

Pilt

1: Laadige alla Raspberry Pi OS -i pilt:

2: Laadige alla ja installige Win32DiskImager:

3: Sisestage SD-kaart ja käivitage Win32DiskImager.

4: Valige draivil allalaaditud pilt. Seejärel valige oma SD-kaart ja vajutage kirjutamisnuppu. (Enne selle protsessi alustamist veenduge, et SD-kaart on tühi, kõik andmed eemaldatakse!)

5: Kui protsess on tehtud, saame teha viimaseid kohandusi Raspberry Pi -s. Minge SD-kaardi kataloogi ja lisage laiendita ssh-fail, veendumaks, et pi lubab SSH-i käivitamisel.

6: Seejärel avage samas kataloogis cmdline.txt ja lisage rea lõppu "ip = 169.254.10.1" ja klõpsake nuppu Salvesta. MÄRKUS. Hoidke kõik ühel real või mõni seade ei tööta.

7: Nüüd eemaldage SD-kaart arvutist ohutult ja pange SD-kaart Raspberry Pi-sse.

8: Kui see on tehtud, saate ühendada pi Etherneti kaabli abil sülearvuti või arvuti LAN -pordiga.

9: Lülitage Raspberry Pi sisse.

Wi-Fi ja Pi konfiguratsioon

Raspberry Pi juhtimiseks SSH kaudu vajame tarkvara nimega Putty. Putty saate alla laadida ja installida siit:

1: Kui Putty on installitud, saate pi -ga ühenduse luua IP -aadressiga: 169.254.10.1 ja pordiga: 22. Kui ilmub käsurealiides, saate sisse logida kasutajaga: pi ja parooliga: vaarikas.

2: Nüüd oleme sisse logitud tüüpi "sudo raspi-config" ja läheme liidese suvandite juurde. Veenduge, et One-Wire, Serial (lubage ainult jada riistvaraport, mitte jada kaudu sisselogimiskoor), I2C et SPI on lubatud.

3: Wifi -ga ühenduse loomiseks peame kasutama juurkasutajat. Juurkasutajana sisselogimiseks tippige "sudo -i".

4: Wifi -võrgu lisamiseks Raspberry Pi -le tippige

"wpa_passphrase" SSID "" teie parool ">> /etc/wpa_supplicant/wpa_supplicant.conf"

terminalis oma võrgu nime ja parooliga.

5: Kui see on tehtud, taaskäivitage oma pi.

6: Kui kõik on õige, peaksite nägema, et teie wlan0 liidesel on IP. Selle kontrollimiseks tehke "ip".

7: Viimase tüübina "sudo apt-get update" ja "sudo apt-get upgrade" oma pi värskendamiseks.

8: installige selle projekti jaoks kindlasti MySQL, apache2 ja php-mysql. Tüüp: sudo apt install apache2 mariadb-server php-mysql -y

9: MySQL-i installimiseks lugege seda artiklit:

10: Muutke oma MySQL -i kasutajat ja parooli taustaprogrammi failis config.py.

Bluetoothi seadistamine

1: Lülitage Arduino sisse

2: Bluetooth -mooduli mac -aadressi leidmiseks tippige hcitool scan. Kui see on leitud, kirjutage see üles või kopeerige see teise dokumenti.

3: Nüüd lisame Bluetooth -mooduli Raspberry Pi -le. Tehke järgmised käsud:

sudo bluetoothctl

agent peal

siduda mac-aadress (kui see küsib PIN-koodi, on tavaline PIN-kood 1234)

usalda mac-aadressi

4: lisage oma mac -aadress taustaprogrammi failile app.py.

Kõlarite seadistamine

Nüüd on teie pi uuendatud ja meil on Interneti -ühendus. Võime alustada kõlarite seadistamist.1: Käivitage järgmine käsk: "curl -sS https://raw.githubusercontent.com/adafruit/Raspbe… | bash"

2: Kui see on tehtud, palub see teil taaskäivitada, vajutage y ja sisestage.

3. Nüüd käivitage skript uuesti, see tagab, et heli töötab õigesti. Kui kõik on korras, kuulete naist rääkimas.

4. Kui see on tehtud, taaskäivitage teine kord.

Pythoni konfiguratsioon

Projekti kood töötab pythonis, nii et veenduge, et teil oleks installitud python 3.7. Kontrollige seda "python3 -V" abil. Kui teil on python, saate pip installeriga installida järgmised paketid: pip install Flask Flask-Cors Flask-MySQL Flask-SocketIO PyMySQL gevent gevent-websocket python-socketio

SmartBoxi installimine

Nüüd on kõik põhiseaded konfigureeritud ja saame alustada ametliku SmartBoxi seadistusega.

1: Kloonige SmartBoxi hoidla oma kodukataloogi (/home/pi), tippides: git kloon

2: Kui see on tehtud, saate käivitada sql -faili. Andmebaasi tegemiseks tippige "sudo mysql -u root -p << SmartBox.sql".

3: Seejärel kopeerige kasutajaliides kataloogi/var/www/html, tehes "cp -R kasutajaliides/./Var/www/html"

4: automaatseks käivitamiseks lisage teenusfail systemd -i. Tippige: "cp service/SmartBox.service /etc/systemd/system/SmartBox.service" ja tehke selle lubamiseks "sudo systemctl enable myscript.service".

5: Kui see on tehtud, minge taustaprogrammi config.py ja muutke see oma mysqli parooliks.

6: taaskäivitage oma pi

Samm: Arduino Uno seadistamine

Nüüd on põhiseade tehtud, alustame LED -ribaga. Arduino juhib meie jaoks 5V WS1812B LED -riba.

1: laadige alla ja installige Arduino IDE:

2: laadige Arduino kood alla minu githubi hoidlasse:

3: Kui kõik on alla laaditud ja installitud, saate oma Arduino Uno ühendada.

4: Avage fail LedStripCode.ino ja laadige see oma Arduinosse, klõpsates paremal oleval noolel.

5: Ühendage oma Bluetooth -moodul ja LED -riba arduinoga ja kõik peaks toimima. (Vt 1. samm Juhtmestik)

5. samm: korpuse kujundamine

Korpuse disain
Korpuse disain
Korpuse disain
Korpuse disain
Korpuse disain
Korpuse disain

Korpuse kujundamisel kasutasin olemasolevat plastkasti ja ametlikku Raspberry Pi ümbrist. Eestvaates tegin kõlarile erinevad augud ja ühe LCD -ekraanile.

Tagaküljele tegin ava temperatuuri ja niiskuse anduri juhtmestiku jaoks. Sees on ka ava leivaplaadi toiteallika juhtmestiku jaoks.

Pealtvaates on ultrahelianduri jaoks kaks auku, nii et häire korral saab liikumist tuvastada.

Paigaldasin Raspberry Pi karbi paremale küljele, et saaksin seda hõlpsamini uuendada või asendada.

Kui see on tehtud, saate integreerida oma T-cobbleri ja andurid. Kasutasin kruvisid ja silikooni, et veenduda, et kõik on kindel.

MÄRKUS. Kui kasutate Raspberry Pi paigaldamiseks metallkruvisid, kasutage kindlasti isoleerlinti.

6. samm: puudutuse viimistlemine

Nüüd on kõik tehtud, kas saate IP -osa cmdline.txt -st kustutada.

Kasutage: sudo nano /boot/cmdline.txt

Soovitan: