Sisukord:

Nutikas alarm: 6 sammu
Nutikas alarm: 6 sammu

Video: Nutikas alarm: 6 sammu

Video: Nutikas alarm: 6 sammu
Video: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, November
Anonim
Nutikas alarm
Nutikas alarm

Koolist sain ülesande teha projekt. Valisin nutika äratuse, sest magan oma äratuse alati läbi ja jätan siis kooli. Alarmi saate tappa ainult valguse, heli ja liikumise korral, nii et te ei saa unes tagasi kukkuda ega seda edasi lükata ilma silmi avamata. Samuti on veebisait, kus saate vaadata oma unerežiimi, seada äratusi ja teha uusi häireid.

Tarvikud

Projekti ehitamiseks on vaja mõningaid materjale. nimekirja leiate altpoolt. Materjalide nimekirjast leiate ka kõik, sealhulgas hinna.

  1. Vaarika pi 3
  2. T-cobbleri purunemislaud
  3. PIR-andur
  4. Valgusandur
  5. Heli tuvastamise andur
  6. Sumin
  7. LCD ekraan
  8. Nupp

Samm: riistvara

Riistvara
Riistvara

Enne kui hakkasin kõike ehitama, tegin friteerimisel 2 skeemi (1 elektriline ja 1 leivaplaadil) ja sain need kontrolli alla, et olla kindel, et selles pole vigu. Kui olin kindel, et kõik on korras, alustasin projektiga. Kõigepealt alustasin helisignaali ja nupuga, sest need olid lihtsaimad komponendid. Pärast seda ühendasin oma ekraani vaarika pi -ga. Lõpuks ühendasin andurid. valgusandur ja liikumisandur on lihtsad, sest te ei vaja midagi muud, kui PIR -andur vajab midagi lisat. Tagamaks, et PIR ei tekitaks lühist, peate kasutama pingesilda. See tähendab, et peate kasutama täiendavat takisti 1k oomi ja 2k oomi, et olla kindel, et kõik läheb hästi. Nööpnõelte täpse kasutamise ja selle ühendamise pi -ga leiate skeemidest.

2. samm: andmebaas

Andmebaas
Andmebaas

Andmete salvestamiseks vajasin andmebaasi.

Minu andmebaas sisaldab 6 tabelit.

  1. Andur
  2. Ajalugu_andurid
  3. Isik
  4. Alarm_person
  5. Sleep_patern
  6. Alarm

andmebaasis on 2 osa. 1 andurite jaoks ja 1 inimese ja kogu tema statistika jaoks.

Andurite tabel sisaldab ID -d ja nime. See tabel on ühendatud ajalooanduritega, millel on ID, väärtus, Sensor_id ja nimi. sensor_id on vajalik, et teada saada, millisel anduril on väärtus, ja kuupäeva on vaja teada, millal andur seda mõõtis.

Lauainimene sisaldab ID -d, nime ja parooli. Sisselogimiseks on vaja parooli ja nime, nii et keegi teine ei saaks teile häiret panna. See tabel on ühendatud tabeli sleep_pattern ja tabeliga Alarm_person. Tabel Sleep_patern sisaldab ID -d, Hours_sleep, Date, Person_id, Bedtime ja Wake_up_time. Nii et siin on salvestatud andmed, et teha graafikat teie une patri kohta.

Tabel Alarm_person sisaldab Person_id, Alarm_id ja kellaaega. Seda tabelit on vaja, kuna alarmi saavad korraga kasutada erinevad inimesed ja mitu inimest. Viimane tabel on äratuslaud. See sisaldab ID -d ja kirjeldust.

3. samm: tagakülg

Tagakülg
Tagakülg
Tagakülg
Tagakülg

Taustaks pidin kirjutama erinevaid funktsioone.

  1. küsige lauaandureid
  2. küsige tabelit history_sensors
  3. küsige unerežiimi
  4. pane uus äratus
  5. küsige laua äratust
  6. registreerige kasutaja
  7. Logi sisse
  8. pange andurite väärtused tabelisse history_sensors

Kasutasin pycharmi ja kirjutasin koodi pythonis.

kõigi funktsioonide jaoks kasutan @app.route ja seejärel aadressi. iga kord, kui peate kasutama erinevat aadressi, sest muidu see ei tööta. Pärast seda kirjutan funktsiooni if väärtusega meetod, nii et kui see on tõsi, täidab ta koodi. väärtuses if on andmete hankimiseks või andmete eemaldamiseks proovisaak ja SQL -avaldus.

Anduritega funktsioonide puhul on see erinev. Siin ma ei kasutanud @app.route'i, vaid tegin lihtsalt anduri jaoks funktsiooni. siin deklareerite oma nööpnõelad ja teete tagasihelistamise funktsiooni. Sel viisil tuvastab andur iga kord, kui funktsioon täidetakse. Tagasihelistamisfunktsioonis kasutasin, kui see töötab, kui andur tuvastab midagi. Kui see tähistab koodi andmete lauale panemiseks koos SQL -lausega. Selles on ka unerežiim, sest muidu paneks see tabelisse liiga palju väärtusi ainult 1 tuvastamiseks.

Minu githubist leiate projekti täieliku koodi.

4. samm: veebisait

Veebisait
Veebisait
Veebisait
Veebisait
Veebisait
Veebisait

Oma veebisaidi jaoks töötasin html -iga ja css -is, minu veebisait sisaldab 11 html -lehte.

Lehti on nii palju, sest kõik töötab veebisaidi järgi. saate määrata äratuse, lisada äratuse ja selle kustutada. Seadete lehel saate muuta oma parooli ja e -posti. Teil on oma unemustri jaoks leht. Samuti saate lisada hetke, millal läksite magama ja millal ärkate. Positiivne on see, et igal lehel on sama välimus ja kasutatakse enamasti samu asju, nii et css on sageli igal lehel sama.

Samm: esiplaan

Esiosa on kirjutatud javascriptiga.

6. samm: juhtum

Juhtum
Juhtum
Juhtum
Juhtum

Minu puhul otsustasin kasutada puitu. Lõikamine pole nii raske, see näeb kena välja. Minu ümbris on 26 cm 14 cm kõrgusel 7,5 cm. See on nii suur, sest kõik vajalik mahtus sisse. Tegin augud anduritele, nupule ja LCD -le, nii et aeg on nähtav ja andurid suudavad liikumist või valgust tuvastada. Nende valmistamiseks kasutasin laserlõikurit. Korpuse sees on minu leivalaud ja vaarika pi.

Soovitan: