Thursday, February 4, 2016

Lab 3: Communicate Something.


Waitperson assistant; A smart coaster that communicates [Beware, Attend, and Resolve]


Lab partner: Salma Kashani.

Problem:

In order to appeal to the new customers and keep the old clients, the customer service plays a crucial role in all the small and large businesses. In this project, we came up with an intelligent coaster to assist waitpersons manage and provide better services to the diners during busy hours. The main duties of our smart coaster are to communicate the following words:

  •  Attend [uh-atend]: to take care of; to pay attention  to
  • Resolve [ri-zolv]: to settle; to deal with 
  • Beware [bih-wait]: to be cautious; be careful 
We have narrowed down our focus to deal with a situation when the waitperson needs to provide warm tea to the diners in a restaurant. Imagine a busy day at a sushi place full of people who not only need to be served with food but also wish to be treated with tea at the right temperature. So the waitpersons need to keep their eyes on the consumers' cups to fill and refill them.

By communicating Attend we aimed to show the waitperson when:
1.              There is a diner with no teacup;
2.              Teacup is more than half empty and; 
3.              Tea is too cold and needs to be changed.
In the Resolve situation there would be an interaction between waitperson and system when:
1.             A waitperson has seen the request and is about take an action. This will reduce the traffic of requests and avoid distracting other waitpersons.
2.             System should work on the standby mode (no need of help).
Beware is a word of communication between the system and diner, and the system and waitperson when:
1.             Teacup is too hot and should be touched carefully.
2.             Tea is in the normal range and safe to drink.
3.             Tea is cold and needs to be replenished.


Realization 


In order to communicate the mentioned words with our hardware, we used a group of sensors, an actuator and a light indicator. To measure the temperature a TMP36  sensor was used and directly connected to the analog pin 0. Assuming that there is a linear relation between temperature and output voltage we use analogread with default frequency of arduino (50-200 kHz) temperature can be calculated by simple subtraction and multiplication. More details about wiring and functionality can be found here.

A RGB LED was connected to digital pins of 3, 5, 6 for our light indication purposes (these pins were not used by motor shield).




Fig1, Implementation of Temp Sensor and RGB indicator (photo courtesy Salma Kashani )

A force sensing resistor 0.5" circle with a range of 0-10 kg was wired to analog pin 1. We also considered a linear relation between pressure and change of resistance and put it in series with a 10k  resistor. So by using voltage dividing technique we can find the resistance change of the FSR and read the voltage accordingly, however it shows near infinite resistance in no touch case. Here is more details about FSR. 


Fig 2, A force resistive sensor is mounted on the surface of coaster (photo courtesy Salma Kashani )

To control the movements of our DC motor we used Adafruit motor shield V2 kit.  The motor was connected to  M1 pins so we can change the polarity of voltage and control the speed. Using "Forward" and "Backward" we will change the polarity of voltage and the amount of driving voltage by mapping [0V-5V]to [0-255.] The motor is connected to our coaster by means of 2 stages 3:1 gear train so when the motor is engaged it can produce enough torque to rotate the teacup. We made two types of movement by rotating the coaster back and forth.
 a) Turning move by making a speed ramp between 0:128 .
 b) Shaking move by ramping the speed between 100:200,

Video1, Hardware test using serial input (Video courtesy Salma Kashani )

The following conditions were used that our hardware communicates the predefined words:
  • If there is no cup on the coaster or need a refill:
    •  No keystroke; shake the coaster
  • If there is a cup on the coaster:
    • Temperature < 30 C;  turn on the the LED light to blue
    •  30 C <temperature <70 C; change the LED light to green
    • Temperature>70 C; change the LED light to red & start turning the coaster  
  • Keystroke; Standby mode to stop the movement turn off LED
here you can find the link to the code!

Results:

As Video 2 shows, three words of communication is implemented in our hardware to serve a warm tea to diners by informing the waitpersons without distracting them .If the tea temperature is too hot and may burn the diners, the LED will turn red and we can see the slight turn movements of the cup (Beware) and if the tea is in right temperature the LED will turn green and if it is too cold, it will turn blue to ask for warmer tea.
If there is a customer with no teacup or it is less than half empty, the coaster will shake to inform the waitperson (Attend). When the wait person received the system's message and is going to do the proper action (Resolve).By pressing the keystroke the system will go on standby.


Video2, Communication of  3 words of Attend, Beware and shake.(Video courtesy Salma Kashani )

Future plan:

The movement of the system both in shake and turn need more improvement. There are more conditions that need to be considered in real situation and need to be added for example when someone is lifting the cup to drink or put it somewhere else. There should be a history of requests and responses per each customer to avoid many unpredicted situation.

No comments:

Post a Comment