Medicine Reminder

Made by Seema Bansal

Found in DioT 2019: Augmented Objects

Get reminders when meds are due, tracks when the action of medicine taken is performed.

0

Intention

for my mother ––––––
She takes close to 60 pills in a week. She is an author, a mother of 4 kids and wife of a doctor. She often has an occupied mind and forgets to take her medicine on time which disrupts her sleep schedule. 
0

Goal

To create a periodic reminder to notify the user to take medication

0

Components 


  • Mini Breadboard (1)
  • Male to Female Jumper Wires (10)
  • USB Micro B Cable (1)
  • Argon
  • Force sensitive Sensor 
  • Transistor TIP120
  • Speaker
  • Particle console


LED (for V1.0) , Vibration motor (for V2.0)

0
Components
Components
0

Process

To create the loop, the Particle IDE runs a counter, for ease of testing the object, currently the code is set on a timer for 12 seconds however for real-world scenario, change it to 12 hours.

For notifying the customer:

Version1.0

Used the LED to draw the attention of the user, when performed usability testing, the user wasn't excited about an LED blinking as a reminder

Version2.0

Used the vibrator motor to draw the attention of the user, when performed usability testing 2.0, the user feels the vibration as a notifying signal can be intrusive.

Version3.0

Used the speaker to draw the attention of the user, when performed usability testing 3.0, the user, My mother, suggested an audio notification would work the best for her. 


0

Functionality


How this medicine reminder works:

Step 1

The timer runs and when medicine needs to be taken, it notifies the user

Step 2

To make sure, user has performed the action of taking medicine, the pressure sensor reads the input (to imitate the box opening / closing)

Step 3

Particle.publish to notify loved ones that the action of taking medicine has been performed or not.

0
void loop() 
{
    
    counter=counter+1;
    
    x = analogRead(PeizoPin);
    // if (x>800)
    // {
    //     digitalWrite(Vibrator,LOW);
    //     delay(4000);
    //      digitalWrite(Vibrator,HIGH);    //for version 2.0
    // }
    if (counter%12==0) {
        //digitalWrite(Vibrator, HIGH);
        speaker.processMelody();           // for version 3.0
        digitalWrite(led, HIGH);
    }
    
    if (x>1000) {
        //digitalWrite(Vibrator, LOW);
        digitalWrite(led, LOW);
        Particle.publish("Action","Medicine taken");   //to keep a track of action performance
    }
    
    Particle.publish("val",String(x));
    delay(1000);
Click to Expand
0

Next Steps

The next steps could be adding a feature of keeping a track of the inventory of the medicines in the box. So that, the user can be notified about the same when she is running out of medicine and can buy in advance.

0

References and Acknowledgements

Thanks TA Dylan and Professor Daragh for sorting through the Vibrator motor and transistor, Thankyou Vaibhav for recommending suggestions for my code, and explaining key concepts of the counter.

https://diotlabs.daraghbyrne.me/docs/working-with-sensors/fsrs/


x
Share this Project

Courses

49713 Designing for the Internet of Things

· 18 members

A hands-on introductory course exploring the Internet of Things and connected product experiences.


Skills
About

Get reminders when meds are due, tracks when the action of medicine taken is performed.

Created

January 31st, 2019