Taula de continguts:

IDC2018IOT IoPill Box: 7 passos
IDC2018IOT IoPill Box: 7 passos

Vídeo: IDC2018IOT IoPill Box: 7 passos

Vídeo: IDC2018IOT IoPill Box: 7 passos
Vídeo: DEF CON Safe Mode IoT Village - Deral Heiland - Getting Started Building an IoT Hardware Hacking Lab 2024, Desembre
Anonim
IDC2018IOT IoPill Box
IDC2018IOT IoPill Box

Es tracta de l'IoPill Box: la caixa de píndoles setmanal connectada a Internet.

Per al nostre projecte final del nostre curs d’IoT, vam decidir oferir una solució que ajudés a garantir que les persones grans (o qualsevol altra persona que utilitzi una caixa de pastilles setmanal) no s’oblidin de prendre les pastilles diàriament i a temps.

En els passos següents es descriuran els diferents processos del nostre projecte, incloses les futures implementacions suggerides i les millores al projecte.

  1. Indicació del dia: segons el dia de la setmana, s’il·luminarà la cel·la corresponent del quadre, que indica quines pastilles s’han de prendre.
  2. Indicació que s’han pres les pastilles del dia donat: a través d’un sensor LDR instal·lat a cada cel·la, la caixa sap automàticament cada vegada que s’ha obert una cel·la per retirar les pastilles diàries, tots els 7 LED donaran indicació al pacient.
  3. Recordatori 1: en cas que no s'hagin pres les pastilles diàries en el termini requerit, s'enviarà un recordatori per correu electrònic a l'usuari per recordar-li que prengui les pastilles
  4. Recordatori 2: en cas que l'usuari encara no hagi pres les pastilles, transcorregut el període de temps donat i després del primer recordatori, s'enviarà un correu electrònic a un membre de la família o a un ajudant mèdic, en el qual s'informarà que no s'han pres les pastilles diàries.
  5. Recordatori de final de setmana: al final de la setmana, s’enviarà a l’usuari un recordatori per omplir les pastilles de la propera setmana, incloses les instruccions de les dosis i tipus de pastilles per dia, per correu electrònic.
  6. Registre de dades: l'historial de dates i hores de presa de píndoles es guarda en un feed de registre de dades mitjançant MQTT.

Pas 1: maquinari, programari i material obligatoris

  1. ESP8266 NodeMCU
  2. 7 LEDS
  3. 7 LDR
  4. Resistència de 7 x 10 k Ohm (per ldrs)
  5. Resistències de 7 x 200R Ohm (per a leds)
  6. Resistència de 4,7 k Ohm (per MCP23017)
  7. Multiplexor analògic de 16 canals
  8. MCP23017
  9. Caixa de pastilles
  10. Una caixa de cartró

Pas 2: la caixa i la caixa de pastilles

La caixa i la caixa de pastilles
La caixa i la caixa de pastilles
La caixa i la caixa de pastilles
La caixa i la caixa de pastilles
La caixa i la caixa de pastilles
La caixa i la caixa de pastilles

Vam trobar una caixa de cartró i hi vam posar el circuit i vam enganxar la caixa de pastilles a sobre.

A causa de la sensibilitat a la llum del ldr i del nostre objectiu de fer que la seva precisió sigui bona, vam haver de pintar amb aerosol la caixa de pastilles.

Per cada ldr vam "perforar" 2 forats a la part posterior de cada dia de la caixa de pastilles, utilitzant el mètode de l'antiga "agulla calenta".

Per a cada led vam pessigar el doble de la caixa amb l'agulla freda.

Per al cable d'alimentació vam fer un forat a la part posterior de la caixa de cartró.

Pas 3: diagrama del circuit

Esquema de connexions
Esquema de connexions
Esquema de connexions
Esquema de connexions
Esquema de connexions
Esquema de connexions

Com podeu veure a les imatges, hem soldat tots els components tal i com es mostra a l’esquema: ho vam fer després de pintar la caixa de pastilles, els ldrs estaven a l’interior cada dia i els leds a la caixa de cartró.

A les imatges només es poden veure 2 dels llums i leds (els inferiors representen el diumenge i els superiors representen el dissabte), per tenir els 7 dels dos simplement copieu els del diagrama i connecteu-los a la bretxa entre aquests que apareixen al diagrama.

El nodeMCU serà alimentat per un cable USB.

Pas 4: alimentació Adafruit MQTT

Adafruit MQTT Feed
Adafruit MQTT Feed

Configurem 2 canals de dades:

  1. IOP_PatientDemoPT: representa les marques de temps de cada dia en què el pacient prenia les píndoles d'aquest dia
  2. IOP_PatientDemoHR (encara no implementat, treball futur): representa el BPM del pacient.

Pas 5: Configuració IFTTT

Configuració IFTTT
Configuració IFTTT
Configuració IFTTT
Configuració IFTTT
Configuració IFTTT
Configuració IFTTT

Vam fer 3 esdeveniments IFTTT:

  1. recordatori_1: en cas que no s'hagin pres les pastilles diàries en el termini requerit, s'enviarà un recordatori per correu electrònic a l'usuari per recordar-li que prengui les pastilles
  2. recordatori_2: en cas que l'usuari encara no hagi pres les pastilles, transcorregut el període de temps donat i després del primer recordatori, s'enviarà un correu electrònic a un membre de la família o a un ajudant mèdic, informant-los que no s'han pres les pastilles diàries
  3. fill_pill: al final de la setmana, s’enviarà a l’usuari un recordatori per omplir les pastilles de la setmana següent, incloses les instruccions de les dosis i tipus de pastilles per dia, per correu electrònic

Pas 6: el codi

El codi és molt senzill i està ple de comentaris útils.

Per a la vostra configuració, assegureu-vos de canviar les claus secretes IFTTT i Adafruit, i també la configuració del wifi.

El diagrama de màquina d’estats del codi és el que es descriu a la imatge afegida a aquest pas.

Pas 7: Extres

Reptes del projecte

Hem d'assegurar-nos que les píndoles s'han pres? - Aquesta és una pregunta que ens vam fer durant el procés de pluja d’idees del projecte, ja que al final del dia l’usuari és un ésser humà i no una màquina, i fins i tot si hi ha indicis que ell prengui les pastilles del quadre, encara hi ha una limitació en la indicació de si realment va utilitzar les pastilles o no.

Tot i així, vam decidir que aquesta pregunta no era l’objectiu principal del nostre projecte i d’aquest dispositiu, i ens vam centrar en la manera de minimitzar les possibilitats que un usuari perdi una dosi diària del seu medicament.

Un altre problema que volíem resoldre era garantir que un usuari no pren pastilles d’un dia diferent. La nostra solució era una indicació específica i clara de la cel·la actual a utilitzar, però hi ha solucions millors i més segures per garantir que aquest error no es produeixi, però no teníem les eines per donar suport a aquestes solucions (per exemple, un bloqueig al cel·les, veure futura aplicació per al projecte)

Limitacions

El nostre projecte fa referència a una única caixa setmanal: una dosi de pastilles al dia. La solució es pot ampliar per donar suport a diverses dosis de pastilles al dia / diverses caixes.

Mecànica: no hem utilitzat cap motor / motor mòbil, ja que no formaven part del curs. Podria haver estat útil per permetre’ns bloquejar cel·les que no s’utilitzaran, omplir automàticament les cel·les amb pastilles al final de la setmana, etc.

Aplicacions futures / millores al projecte

Freqüència cardíaca: afegiu un sensor per mesurar la freqüència cardíaca del pacient i, prement un botó, envieu les dades a un canal MQTT per fer un seguiment posterior

Aplicació: una aplicació fàcil d'utilitzar que controla el sistema, mitjançant aquesta aplicació, l'usuari pot actualitzar els diferents

variables del dispositiu:

  1. A quina hora de prendre les pastilles
  2. Actualitzeu els tipus de píndoles i les dosis a emplenar
  3. Rebeu els recordatoris a través de l'aplicació
  4. Deseu les dades i el registre del consum de drogues.
  5. Feu una comanda de medicaments a través de l'aplicació quan hàgiu acabat

Amplieu el dispositiu per admetre dosis al dia / diverses caixes

Ompliment automàtic de cèl·lules: al final de la setmana o després d’haver-se utilitzat els medicaments, el dispositiu reomplirà les cèl·lules diàries amb els medicaments necessaris.

Bloqueja les cel·les que no s’utilitzaran: totes les cel·les, excepte la cel·la diària que s’utilitzarà, es bloquejaran per garantir que els usuaris no prenguin accidentalment les píndoles / sobredosi equivocades.

Millores en el disseny.

Connecteu el dispositiu a companyies mèdiques / asseguradores que supervisin els usuaris, desin la informació rellevant, actualitzin les subscripcions i enviïn medicaments quan sigui necessari, etc.

Recomanat: