Taula de continguts:

Alarma intel·ligent: 6 passos
Alarma intel·ligent: 6 passos

Vídeo: Alarma intel·ligent: 6 passos

Vídeo: Alarma intel·ligent: 6 passos
Vídeo: Праздник. Новогодняя комедия 2024, De novembre
Anonim
Alarma intel·ligent
Alarma intel·ligent

Des de l’escola vaig rebre la tasca per fer un projecte. Vaig triar una alarma intel·ligent perquè sempre dormo per la meva alarma i en aquell moment trobo a faltar a l'escola. Només podeu matar l'alarma si hi ha llum, so i moviment, de manera que no pugueu tornar a dormir ni posposar-la sense obrir els ulls. També hi ha un lloc web on podeu veure el vostre patró de son, establir alarmes i crear noves alarmes.

Subministraments

Per construir el projecte hi ha alguns materials necessaris. podeu trobar una llista a continuació. també podeu trobar-ho tot a la llista de materials, inclòs el preu.

  1. Raspberry pi 3
  2. Tauler de ruptura per a sabates
  3. Sensor PIR
  4. Sensor de llum
  5. Sensor de detecció de so
  6. Zumbador
  7. Pantalla LCD
  8. Botó

Pas 1: maquinari

Maquinari
Maquinari

Abans de començar a construir-ho tot, feia 2 esquemes (1 elèctric i 1 a la taula de treball) en fritzing i els controlava per assegurar-me que no hi havia cap defecte. Un cop vaig estar segur que tot estava bé, vaig començar amb el projecte. Primer de tot, vaig començar amb el botó acústic i el botó perquè eren els components més fàcils. Després vaig connectar la meva pantalla al raspberry pi. Al final, vaig connectar els meus sensors. el sensor de llum i el sensor de moviment són fàcils perquè no necessiteu res més, però el sensor PIR necessita alguna cosa més. Per garantir que el PIR no faci un curtcircuit, cal utilitzar un pont de tensió. Vol dir que heu d’utilitzar una resistència addicional d’1k ohm i 2k ohm per assegurar-vos que tot va bé. Es pot trobar als esquemes l’ús exacte dels pins i com connectar-ho tot al pi.

Pas 2: base de dades

Base de dades
Base de dades

Per emmagatzemar totes les dades necessitava una base de dades.

La meva base de dades existeix de 6 taules.

  1. Sensor
  2. Sensors_història
  3. Persona
  4. Persona_alarma
  5. Patern_dorm
  6. Alarma

hi ha 2 parts a la base de dades. 1 per als sensors i 1 per a la persona i totes les seves estadístiques.

La taula de sensors conté un identificador i un nom. Aquesta taula està connectada als History_sensors que tenen un identificador, un valor, un sensor_id i un nom. el sensor_id és necessari per saber quin sensor té un valor i la data és necessària per saber quan el sensor el va mesurar.

La persona de la taula conté un identificador, un nom i una contrasenya. La contrasenya i el nom són necessaris per iniciar la sessió, de manera que ningú més no us pot donar cap alarma. Aquesta taula està connectada a la taula sleep_pattern i a la taula Alarm_person. La taula Sleep_patern conté un identificador, Hours_sleep, Date, Person_id, Bedtime i Wake_up_time. Així doncs, aquí teniu les dades emmagatzemades per fer un gràfic sobre el vostre somni.

La taula Alarm_person conté un Person_id, Alarm_id i l’hora. Aquesta taula és necessària perquè diferents persones poden utilitzar una alarma alhora i 1 persona pot utilitzar diverses alarmes. L’última taula és la taula d’alarma. Aquest conté una identificació i una descripció.

Pas 3: back-end

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

Al fons he hagut d’escriure diferents funcions.

  1. demaneu els sensors de taula
  2. demaneu la taula history_sensors
  3. demana el patró de son
  4. posa una nova alarma
  5. demana l'alarma de taula
  6. registra l'usuari
  7. iniciar Sessió
  8. poseu els valors dels sensors a la taula history_sensors

He utilitzat pycharm i he escrit el codi en python.

per a totes les funcions que faig servir @ app.route i després l'adreça. cada vegada que necessiteu fer servir una adreça diferent perquè, si no, no funcionarà. Després d'això escric una funció if amb el mètode com a valor, de manera que quan això és cert executa el codi. al valor if hi ha un try catch i una sentència sql per obtenir les dades o deixar-les de banda.

Per a les funcions amb els sensors és diferent. Aquí no he utilitzat @ app.route, sinó que he fet una funció per al sensor. aquí declareu els vostres pins i feu una funció de devolució de trucada. D'aquesta manera cada vegada que el sensor detecta alguna cosa que s'executa la funció. A la funció de devolució de trucada he utilitzat un if que funciona quan el sensor detecta alguna cosa. A la casella if apareix el codi per posar les dades a la taula amb una sentència sql. També hi ha dormir, perquè si no, posaria massa valors a la taula per només 1 detecció.

Al meu github podeu trobar el codi complet del projecte.

Pas 4: lloc web

Lloc web
Lloc web
Lloc web
Lloc web
Lloc web
Lloc web

Per al meu lloc web he treballat amb html i css el meu lloc web conté 11 pàgines html.

Hi ha tantes pàgines perquè tot funciona al lloc web. podeu configurar una alarma, afegir una alarma i suprimir-ne una. A la pàgina de configuració podeu canviar la contrasenya i el correu electrònic. Teniu una pàgina per al vostre patró de son. També podeu afegir el moment en què vau anar a dormir i en despertar-vos. El positiu és que totes les pàgines tenen el mateix aspecte i utilitzen sobretot les mateixes coses, de manera que el css sol ser el mateix a totes les pàgines.

Pas 5: portada

La portada està escrita en javascript.

Pas 6: cas

Caixa
Caixa
Caixa
Caixa

Pel meu cas, vaig optar per utilitzar fusta. No és tan difícil de tallar sembla bonic. El meu cas fa 26 cm sobre 14 cm amb una alçada de 7, 5 cm. És tan gran perquè hi calia tot el que calia. Vaig fer forats per als sensors, el botó i la pantalla LCD perquè el temps sigui visible i els sensors puguin detectar el moviment o la llum. Per fer-los, he utilitzat un trencaclosques. Dins de la caixa hi ha la meva taula de pa i el pi de gerds.

Recomanat: