AmI Sitter
View on GitHub

AmI main steps

The four main steps of all AmI systems

Sensing

The system will be able to understand baby's mood through micrphones and cameras, detecting if he's crying or laughing.

Reasoning

According to the baby's mood, this system will decide autonomously to call parents. Furthermore it will be able to understand what kind of sounds and lullabies the baby likes.

Acting

AmI Sitter will also be able to move some toys and play some music or reproduce the voices of the parents, to calm the baby in certain situations.

Interacting

Parents will be able to control their child via App and even save appointments or events that the system will remember for them.

About

A short description of our project

Being parent for the first time could be very hard... but don't worry!
AmI Sitter will help you to take care of your little children, making your life much easier. The aim of this project is to create an intelligent system that will be installed in the bedroom of the baby: it consists in a system of different sensors that will be capable of gathering informations about the kid preferences and the kid schedule, adapting future acting accordingly. If the baby is crying, AmI Sitter will be either play the voices of the parents, shake a little rattle or play some relaxing music to calm him down. Parents can also interact with the system not only by using standards functions (like baby monitor), but also saving important appointments regarding the baby. Through voice or app parents can save new memos, like doctors appointments and similar, making forgetting anything about their child impossible.

AmI Sitter Features

Sensitive

AmI Sitter is able to undestand when the baby needs help because he's crying or what he prefers listening to his laugh.

Responsive

The system will act accordingly to the situation, calling the parents for helping the baby when the only working solution is some parental love!

Invisible

AmI Sitter won't be noticed by anyone. It will be your invisible baby-sitter with very special skills!

Intelligent

Parents no longer need to worry about forgetting baby's visits or appointments: AmI Sitter will notify you to remember.




  • Priority 1:

    1. Ability to understand when the baby needs help:
    throught the use of microphones the system will be able to recognize when the baby is crying and will act accordingly to his needs.

    2. Notification for any need of the baby:
    The parents will get a notification on their smarthphone (via app) whenever the baby starts crying.

    3. Baby monitor's function:
    AmI Sitter will show you directly on your smartphone what is happening in the baby's room whenever you want.

    4. Play music:
    AmI Sitter will try to calm the baby down by playing some music or lullabies.

    5. Moove/Rotate a little toy:
    The system will also try to make your baby happy by rotating a carousel.


  • Priority 2:

    6. Full control of the system by the user:
    The user will be able to activate manually the music player and the carousel through the app in every moment.

    7. Personal organizer function:
    AmI Sitter can save all the appointments you need to remember and will remind them to you when it's time! Furthermore it can be connected to your digital calendar and automatically remind you every event.

    8. Intelligent suspension of functions:
    AmI Sitter will have the ability to understand when someone is in the room, suspending its automatic functions and working only when activated by the user.


  • Priority 3:

    9. Identification of cry and laughts:
    The system will recognize the laughts of the baby, understanding that he is having fun, and his cry, understanding that he is unconfortable and/or needs help.

    10. Learning ability:
    The system will be able to learn what kind of music the baby likes, and will not play anymore what he doesn't like.

Architecture

System architecture and materials




Hardware Architecture
The whole system will be connected to a raspberry pi that will play the role of computational node.
Microphones and cameras will comunicate with the raspberry. They will be placed in the baby's room's corner, in order to 'listen' and 'watch' the most of the baby's activities. If possible they will be connected with the raspberry throught elettric cables.
We will use some speakers to reproduce lullabies. There will be also a mechanical device that will move the baby's carousel on his bed.


Software Architecture
We will use a mobile application that will have a central role in the comunication with the user: it will allow parents to control their child and to be notified if there's something wrong.The application will play also the role of "secretary", reminding all the appointments.
We will use a noise analizer to understand when the baby is crying. It will be implemented in the central computational node. In this node there will be different parts encoded in order to elaborate the datas coming from all of the sensors and to send the rigt answer to each of them.


Network Architecture
The application will comunicate with the system through the Wi-Fi connection.
The notification will be carried out by a third part server named "FireBase".

Purpose and Scope

Here's what we're gonna do

The goal of the system is to help parents taking care of their baby.
AmI Sitter will provide many useful functions: it will act starting a motorized toy that will spin on itself, it will play sounds through speakers and it will turn on/off the lights. These functions provided by AmI Sitter are executed independently by the system or triggered via user-application (smartphones app or website).
Furthermore, the system will notify the parents every time the baby needs help and will offer to the user a 'baby monitor' function, so that the parents will be able to see their baby in every moment. AmI Sitter will also try to learn what the baby likes listening to his reaction and playing only the sounds he loves.
A main server will get all the data by the sensors, storing them in order to decide what actions to make on the room or on objects that populate the room itself.
Sensors will be sending informations to the main server through bluetooth modules: this will let us use a good amount of sensors and can let us place them in different spots in the room, leading to gathering more accurate data.
When it comes to user interaction, there will be a mobile application that will allow the user to manage the system directly: the application will dialogue with the server via API.

Hardware Components

Here's what we're going to need

  • Raspberry Pi

    This component will be used as a web server, storing all the data coming from the sensors and providing the API endpoints used by the application
  • Elettric cables

    The way we're gonna send data from sensors to the server. The Bloetooth modules will be used only if it will be impossible to connect the sensors with the Raspberry throught a cable.
  • Microphones

    We have to be able to capture audio, very important component of the system
  • Cameras

    To act as Baby Monitor, AmI Sitter will have to stream the camera view of the baby to the app
  • Motorized carousel

    To create movement we're gonna need a motorized carousel !
  • Speakers

    Babies like sounds! We need speakers to play it!





Software Components

Here's what we're going to need

  • Python and Flask

    Libraries: flask, flask_restful, pygame,pyfcm, numpy, pyaudio
    To build the server and the restfull APIs.
  • Flutter

    Used to create the application.


Open Issues

We would like to do these... but how?

  • The most significant question is how to teach system to recognize if the baby is laughing or crying.
  • We weren't able to understand if the song was apreciated by the baby because we couldn't code a laught recognition software.
  • Upload of songs and audio from the smartphone to the server.

Our Amazing Team

Four students from Politecnico di Torino

Lorenzo Del Sordo

Software developer

s226394

Simone Cosimo

Software developer

s229153

Solomiya Pidkova

Hardware developer

s225796

Diego Bruno

Software developer

s223875

Please, for any question or suggestion don't exitate to contact us!