49713 Designing for the Internet of Things
· 25 members
A hands-on introductory course exploring the Internet of Things and connected product experiences.
Found in DIoT 2018 3: Connected Intimacy
How often do you contact your parents? Will you sometimes want to express your feelings to your families and friends but just did not actually take action? We found this to be a common problem among people - they wish to feel connected with their family and friends but they are too busy to do so or feel awkward doing so. Sometimes people may be are afraid to disturb others with calls or messages. We aim to create a non-intrusive device that can connect people in a meaningful way.
We found that smiles have magic, they make people feel closer but it also makes us happier in our own day when we smile. We added the "smile" element into our design because we believe a smile is a sign of love and care and people love to share happy moments. Similar to candy, it represents sweet moments and can remind users of happy times they have shared together.
Our concept includes two parts, one is the flex sensor that is put on the user's face, which senses the bending caused by movement of cheek when the user smiles. Another device, the candy ball, is installed in the other user's house. Once a bending is detected, the candy ball will dispense a candy/a few candies. The two users involved will feel connected by sharing happiness and feel excited when discovering the other's live status. (Our flex sensor is a representation of our concept of detecting smiles, other technologies that can detect facial expression such as facial recognition will provide ideal results.)
Building Sweet Smiles
We split our work into three parts, the mechanism behind the dispenser, forms of the devices and the code. We started with sketches to find out the most suitable mechanism, and we chose a mechanism works for a servo motor that prevented the candies from jamming. It is connected to a small piece of cardboard that moves down and up as a barrier for the candies. We then brainstormed on the form of the devices. We decided to use a round shape for the candy container to mimic the shape of a human head, hence when the device dispenses candies, it looks like someone hands you candies.
User Experience & Components
We ideated on the appearance of dispenser further. We thought it was not only a cold device but also an object that stirs the emotional feelings of people when they see it. We chose the patterns that convey our idea of love and art. When people see it, it is an IoT device and is also a piece of art.
//#include <Servo.h>
int servoPin = D1;
Servo s1; //declaration
int servoPos = 0;
// This value will store the last time we published an event
long lastPublishedAt = 0;
// this is the time delay before we should publish a new event
// from this device
int publishAfter = 10000;
//declare pins for the flex sensor
int flexPin = A0;
void setup()
{
pinMode(D1, OUTPUT);
pinMode(A0, INPUT);
s1.attach(D1);
Serial.begin(9600);
// attaches the servo on the D0 pin to the servo object
//enter input output for the flex senspr
Particle.subscribe("smile/diot/paired/", servoHandler, "3f003d000b47343438323536");
}
void loop()
{
s1.write(50);
int x = analogRead(A0);
Serial.println(x);
if (x>= 2700)
{
publishMyEvent();
}
delay(100);
}
void publishMyEvent()
{
// s1.write(20);
// delay(200);
// s1.write(50);
// delay(500);
if( lastPublishedAt + publishAfter < millis() )
{
String eventName = "smile/diot/paired/" + System.deviceID();
Particle.publish( eventName, "smile", PUBLIC );
lastPublishedAt = millis();
}
}
void servoHandler (const char *event, const char *data)
{
//convert to string
String eventName = String(event);
//check if event name contains device id
String deviceID = System.deviceID();
//if we get any value other than -1 the event
//came from this device
if( eventName.indexOf( deviceID ) != -1 )
{
return;
}
s1.write(20);
delay(200);
s1.write(50);
}
Click to Expand
We enjoyed the brainstorming process at the beginning because we found out the opportunity gap in the communication issue between people separated by distance from one another. It was hard to start the project at the beginning because the technology we would like to use (muscle sensor or image recognition) was too difficult to implement in such a short period of time with our level of knowledge. After several ideations, we successfully found an alternative to the muscle sensor, flex sensor. We learned that sometimes the concept behind was more important than the form. Our current device is sufficient enough for us to convey the main idea.
Learnings
Challenges
Future Iterations
A hands-on introductory course exploring the Internet of Things and connected product experiences.
~
February 13th, 2018