Taula de continguts:

Smart Pill Box (IDC2018IOT): 8 passos
Smart Pill Box (IDC2018IOT): 8 passos

Vídeo: Smart Pill Box (IDC2018IOT): 8 passos

Vídeo: Smart Pill Box (IDC2018IOT): 8 passos
Vídeo: IoT Full Course - Learn IoT In 4 Hours | Internet Of Things | IoT Tutorial For Beginners | Edureka 2024, Desembre
Anonim
Image
Image
Smart Pill Box (IDC2018IOT)
Smart Pill Box (IDC2018IOT)

Es tracta del projecte final de Jonathan Braslaver i Maor Stamati al curs IOT d’IDC del 2018.

En aquest instructiu, recorrereu els passos per construir una caixa de píndoles intel·ligents IoT. Es tracta d’un prototip completament funcional amb les funcions següents:

1. Envia SMS a l'usuari si la temperatura o la humitat del quadre són massa altes.

2. Encén un led al compartiment de la píndola dret quan és hora que l'usuari prengui les píndoles.

3. Els girs de led quan l'usuari pren les pastilles del compartiment.

4. Si l'usuari s'oblida de prendre les pastilles, al cap d'una hora s'envia un SMS de recordatori.

5. Envieu un recordatori els dissabtes per tornar a omplir la casella.

Esperem que aquest producte pugui recordar a la gent que prengui els seus medicaments a temps i els ajudi a mantenir-los en les condicions adequades.

Pas 1: parts:

1. Tauler MCU de node.

2. Sensor de temperatura i humitat dht22

3. MPR121, controlador de sensor tàctil capacitiu de proximitat

4. 7 leds senzills.

6. Làmina de llauna

9. Cinta adhesiva.

10. Un quadre amb 7 comparacions.

Pas 2: Creeu un fitxer Scheudle amb píndoles

Crea un fitxer Scheudle amb píndoles
Crea un fitxer Scheudle amb píndoles

El fitxer està en format json, és una matriu de matrius, cada matriu és un dia de la setmana, és a dir, la matriu a 0 és diumenge i la matriu a 5 és divendres.

Els elements de la matriu són una cadena de la forma "HH: MM" com "14:00".

Podeu crear el fitxer de manera manual o programàtica amb el vostre mètode preferit.

mantingueu la ruta del fitxer a l'ordinador, ja que la necessitarem per a més endavant.

Pas 3: connecteu la placa i els components:

Connecteu la placa i els components
Connecteu la placa i els components
Connecteu la placa i els components
Connecteu la placa i els components
Connecteu la placa i els components
Connecteu la placa i els components

1. Cobriu l’interior de cada píndola amb paper de llauna i assegureu-vos que no es toquin.

La làmina d’estany actuarà com a conductor, de manera que quan preneu una pastilla i toqueu el compartiment, actuarà el sensor de copacitància.

2. seguiu l'esquema adjunt:

(actualment només admet 5 leds, podeu afegir-ne més amb un mux)

3. enganxeu els leds darrere de cada compartiment.

4. connecteu les entrades 0-6 del MPR121 a cada làmina de llauna del compartiment.

Pas 4: Creeu un compte Io.adafruit

Crea un compte Io.adafruit
Crea un compte Io.adafruit

io.adafuit us permetrà utilitzar el seu servidor MQTT de forma gratuïta.

Aneu a https://accounts.adafruit.com/users/sign_up i inscriviu-vos, creeu els següents feeds tal com es veu a la imatge.

que copieu la vostra CLAU AIO.

Pas 5: carregueu el codi al tauler

assegureu-vos de configurar els detalls del servidor adafruit mqtt aquí:

// CONFIG DEL SERVEI MQTT

#define AIO_USERNAME "el vostre nom d'usuari"

#define AIO_KEY "la vostra clau"

i els detalls del vostre wifi:

// Configuració WIFI # defineix WLAN_SSID "nom de xarxa"

#define WLAN_PASS "contrasenya"

Pas 6: IFTT

IFTT
IFTT
IFTT
IFTT
IFTT
IFTT

IFTTT (IF This Then That) és un servei gratuït basat en web per crear cadenes d’instruccions condicionals simples, anomenades applets. Una miniaplicació s’activa pels canvis que es produeixen en altres serveis web com Gmail, Facebook, Telegram, Instagram o Pinterest.

Utilitzarem IFTT per crear un webhook que quan sigui cridat per HTTP rest enviarà un SMS a l’usuari.

1. creeu un compte IFTT am.

2. Feu clic a "Els meus applets" i no a l'applet nou, i seleccioneu Webhooks com a primera part, per utilitzar el segon SMS.

3. vegeu les configuracions de la imatge.

Pas 7: NodeRed

NodeRed
NodeRed

Node-RED és una eina de programació per connectar dispositius de maquinari, API i serveis en línia de maneres noves i interessants.

Ofereix un editor basat en navegadors que facilita la connexió de fluxos mitjançant l’àmplia gamma de nodes de la paleta que es poden desplegar al seu temps d’execució amb un sol clic.

Primer:

  1. Baixeu-vos i seguiu les instruccions d’instal·lació de
  2. Inicia el vermell del node des de
  3. Baixeu el fitxer nodes.json i substituïu el següent:
  • IFTTT_KEY amb la vostra clau IFTTT
  • IFTTT_USER amb el vostre nom d'usuari IFTTT
  • PATH_TO_Fichier amb la ruta del fitxer de programacions.

feu clic a l'extrem superior dret -> importa -> porta-retalls i enganxeu el contingut del fitxer adjunt nodes.json

El resultat hauria de semblar a la imatge adjunta.

Es crearan 5 fluxos:

1. executar cada 10 minuts -> llegir el fitxer de programació -> convertir a objecte js -> comprovar si heu de prendre una pastilla en els propers 10 minuts -> límit a 1 missatge per 10 minuts -> enviar el codi del dia -> mqtt publica al canal led.

2. obtingueu el dia de la setmana -> si dissabte HTTP truqueu a IFTT per enviar SMS a l'usuari per omplir la píndola.

3. escolteu el feed d'humitat mqtt -> límit per un missatge cada 3 hores -> afegiu la humitat a l'URL IFTTT -> truqueu a IFTTT per enviar SMS.

4. 3. escolteu el feed de temperatura mqtt -> límit per un missatge cada 3 hores -> truqueu a IFTTT per enviar SMS.

5. Escolta el feed mqtt oblidat -> truca a IFTTT per enviar SMS.

Pas 8: reptes i següent pas

Hem tingut alguns reptes amb el servidor mqttt, primer hem intentat executar-ne un localment que no semblava funcionar (ports bloquejats), de manera que hem utilitzat un de núvol.

A més, actualment estem limitats a 5 leds on necessitem 7, hem provat d'utilitzar un mux, però tampoc no funcionava.

Següent pas:

IU totalment funcional per programar la presa de la píndola.

Aconseguiu una caixa de pastilles més sofisticada sense paper de llauna i el tauler amagat.

Esperem que trobeu útils les nostres instruccions i us agradi construir aquest projecte.

Recomanat: