Aric, Mark, Liz, and Jonathan with the hardware!
A close up of the acrylic sheet with hardware attached
Mark and Aric readjusting hardware setup
Jonathan, having fun with databases and UI
Chunk of Node-RED code
Coding the Raspberry Pi!
We were really excited to hear about the self-driving bus Olli using IBM's Watson. However, one of our grandfather's is rather forgetful due to his dementia, and because of this would often forget things on a bus if he went alone. Memory issues like this would prevent him, and many people like him, from taking advantage of the latest advancements in public transportation, and prevent him from freely traveling even within his own community.
To solve this, we thought that Olli and Watson could work to take pictures of luggage storage areas on the bus, and if it detected unattended items, alert passengers, so that no one would forget their stuff! This way, individuals with memory issues like our grandparents can gain mobility and be able to freely travel.
What it does
When the bus stops, we use a light sensitive resistor on the seat to see if someone is no longer sitting there, and then use a camera to take a picture of the luggage storage area underneath the seat. We send the picture to IBM's Watson, which checks to see if the space is empty, or if an object is there. If Watson finds something, it identifies the type of object, and the color of the object, and vocally alerts passengers of the type of item that was left behind.
How we built it
Hardware Arduino - Senses whether there is someone sitting based on a light sensitive resistor. Raspberry Pi - Processes whether it should take a picture, takes the picture, and sends it to our online database.
Software IBM's IoT Platform - Connects our local BlueMix on Raspberry Pi to our BlueMix on the Server IBM's Watson - to analyze the images Node-RED - The editor we used to build our analytics and code
Challenges we ran into
Learning IBM's Bluemix and Node-Red were challenges all members of our team faced. The software that ran in the cloud and that ran on the Raspberry Pi were both coded using these systems. It was exciting to learn these languages, even though it was often challenging.
Getting information to properly reformat between a number of different systems was challenging. From the 8-bit Arduino, to the 32-bit Raspberry Pi, to our 64-bit computers, to the ultra powerful Watson cloud, each needed a way to communicate with the rest and lots of creative reformatting was required.
Accomplishments that we're proud of
We were able to build a useful internet of things application using IBM's APIs and Node-RED. It solves a real world problem and is applicable to many modes of public transportation.
What we learned
Across our whole team, we learned:
- Utilizing APIs
- Watson Analytics
- Web Development (html/ css/ js)
- Command Line in Linux