Sadržaj:

Pametni alarm: 6 koraka
Pametni alarm: 6 koraka

Video: Pametni alarm: 6 koraka

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

Od škole sam dobio zadatak napraviti projekt. Odabrao sam pametni alarm jer uvijek prespavam alarm i tada propuštam školu. Alarm možete ubiti samo ako ima svjetla, zvuka i pokreta kako ne biste mogli zaspati ili odgoditi a da ne otvorite oči. Tu je i web stranica na kojoj možete vidjeti svoj način spavanja, postaviti alarme i postaviti nove alarme.

Pribor

Za izradu projekta potrebno je nekoliko materijala. popis možete pronaći ispod. također možete pronaći sve natrag u popisu materijala, uključujući cijenu.

  1. Malina pi 3
  2. T-postolarska ploča za razbijanje
  3. PIR-senzor
  4. Svijetli senzor
  5. Senzor za otkrivanje zvuka
  6. Zvučni signal
  7. LCD zaslon
  8. Dugme

Korak 1: Hardver

Hardver
Hardver

Prije nego što sam počeo graditi sve, napravio sam 2 sheme (1 električnu i 1 na ploči) na fritingu i kontrolirao ih kako bih bio siguran da u tome nema grešaka. Kad sam bio siguran da je sve u redu, krenuo sam s projektom. Prije svega počeo sam sa zujalicom i gumbom jer su to bile najjednostavnije komponente. Nakon toga sam spojio svoj zaslon na malinu pi. Na kraju sam spojio svoje senzore. senzor svjetla i senzor pokreta su laki jer ne trebate ništa drugo, ali PIR senzoru treba nešto dodatno. Da biste osigurali da PIR ne bi napravio kratki spoj, morate koristiti naponski most. To znači da morate koristiti dodatni otpornik od 1 k ohma i 2 k ohma kako biste bili sigurni da sve ide dobro. Točnu uporabu pinova i način povezivanja svega s pi možete pronaći u shemama.

Korak 2: Baza podataka

Baza podataka
Baza podataka

Za pohranu svih podataka trebala mi je baza podataka.

Moja baza podataka sadrži 6 tablica.

  1. Senzor
  2. Senzori_povijesti
  3. Osoba
  4. Alarm_osoba
  5. Spavanje_patern
  6. Alarm

u bazi se nalaze 2 dijela. 1 za senzore i 1 za osobu i sve njene statistike.

Tablica senzora sadrži ID i naziv. Ova je tablica povezana s povijesnim senzorima koji imaju ID, vrijednost, senzorski_id i naziv. sensor_id je potreban da bi se saznalo koji senzor ima vrijednost, a datum je potreban da bi se znalo kada ga je senzor izmjerio.

Osoba za tablicom sadrži ID, ime i lozinku. Lozinka i ime potrebni su za prijavu tako da nitko drugi ne može postaviti alarm umjesto vas. Ova je tablica povezana s tablicom sleep_pattern i tablicom Alarm_person. Tablica Sleep_patern sadrži ID, Hours_sleep, Date, Person_id, Bedtime i Wake_up_time. Dakle, ovdje su pohranjeni podaci za izradu grafike o vašoj spavaćoj ploči.

Tablica Alarm_person sadrži Person_id, Alarm_id i vrijeme. Ova je tablica potrebna jer različite osobe mogu istovremeno koristiti alarm, a jedna osoba može koristiti više alarma. Posljednja tablica je tablica alarma. Ovaj sadrži ID i opis.

Korak 3: Back-end

Back-end
Back-end
Back-end
Back-end

U pozadini sam morao pisati različite funkcije.

  1. pitajte za stolne senzore
  2. zatražite tablicu history_sensors
  3. pitajte za obrazac spavanja
  4. postaviti novi alarm
  5. zatražite stolni alarm
  6. registrirati korisnika
  7. prijaviti se
  8. stavite vrijednosti senzora u tablicu history_sensors

Koristio sam pycharm i napisao kod u pythonu.

za sve funkcije koristim @app.route, a zatim adresu. svaki put morate koristiti drugu adresu jer inače neće raditi. Nakon toga pišem if funkciju s metodom kao vrijednošću pa kad je to istina on izvršava kod. u if vrijednosti postoji try catch i sql izraz za dobivanje podataka ili odlaganje podataka.

Za funkcije sa senzorima je drugačije. Ovdje nisam koristio @app.route nego sam samo napravio funkciju za senzor. ovdje deklarirate svoje pinove i obavljate funkciju povratnog poziva. na ovaj način svaki put kad senzor nešto otkrije funkcija se izvršava. U funkciji povratnog poziva koristio sam ako radi ako senzor nešto otkrije. U if -u stoji kôd za stavljanje podataka u tablicu s sql izrazom. U njemu postoji i sve spavanje jer bi u protivnom stavio previše vrijednosti u tablicu za samo 1 detekciju.

U mom githubu možete pronaći cijeli kôd projekta.

Korak 4: Web stranica

Web stranica
Web stranica
Web stranica
Web stranica
Web stranica
Web stranica

Za svoju web stranicu radio sam s html -om i css -om, moja web stranica sadrži 11 html stranica.

Toliko je stranica jer sve radi na web stranici. možete postaviti alarm, dodati alarm i izbrisati ga. Na stranici s postavkama možete promijeniti lozinku i e -poštu. Imate stranicu za svoj obrazac spavanja. Također možete dodati trenutak kada ste otišli na spavanje i kada ste se probudili. Pozitivno je to što svaka stranica ima isti izgled i koristi uglavnom iste stvari pa je css često isti na svakoj stranici.

Korak 5: Prednji kraj

Prednji dio je napisan u javascript-u.

Korak 6: Slučaj

Slučaj
Slučaj
Slučaj
Slučaj

U svom slučaju odlučio sam koristiti drvo. Nije tako teško rezati, izgleda lijepo. Moje kućište je 26 cm na 14 cm i visine 7,5 cm. Ovoliko je velik jer je sve potrebno za uklapanje. Napravio sam rupe za senzore, gumb i LCD, tako da je vrijeme vidljivo i senzori mogu detektirati kretanje ili svjetlost. Za njihovu izradu upotrijebio sam laserski stroj. Unutar kućišta sjedi moja ploča i malina pi.

Preporučeni: