Sunday, 25 January 2015

home automation - What sensor to choose to track human presence indoors?


This is a hobby project about home automation. The idea is that of distributed system of cheap microcontrollers that take measurements, communicate, output data and control appliances.


One important task that this system should perform is detect at every room if there are humans inside (awake or asleep distinction would be a over-the-top bonus :) ). I am still at a loss if this is feasible. PIR-s? Webcameras? Microphones? Optical counters at the doors? Ultrasound?


Available processing power per sensor output: 5MIPS of avr instructions (8-bit RISC) for 3 seconds = 15 million instructions.


Typical usage scenario would be:




  • The apartment is empty (the system should know that).

  • The door opens and a group of 4 people enters the hallway. (the system should know that someone is in the hallway).

  • Two go to a room (the system should track their path by room, with a lag of no more than several seconds, plus know that there is still someone in the hallway).

  • , one of them returns, the other sits on a chair, (the first one is to be tracked. the system should also know in which room is the sitting person).

  • In the meantime the rest two wander randomly in a 2 x 2 meter area in the hallway (taking shoes off, hanging coats) (the system should know they are still in that area).

  • One goes to another room, turns the radio on and goes to sleep (the system should know that there is a sleeping person there).

  • Someone leaves the apartment and returns 10 minutes later (here the only requirement is that the system know that there are still persons inside).

  • The three leave (the system should know that there is still someone inside).

  • Much later, the sleeper gets up, wanders around for half an hour and then leaves the apartment (the system should track his position by room with a lag no more than several seconds, and know when he leaves that there is now no one inside).



I have no pets.



Answer



Especially for a home hobby project I'd probably start with PIR (Passive InfraRed) sensors. They are cheap and very effective at detecting something warm like a human body moving around.


However, PIR sensors will not detect static warm objects like someone sleeping or sitting still on the couch. With enough PIR sensors around the place, you can probably infer where people are motionless by where you know there was movement and in what direction. PIR sensors don't inherently give you direction, but enough of them activated in sequence does. For example three sensors triggered in sequence in a hallway is a strong clue someone is walking down the hall in that direction. If you saw motion of someone entering a room and then motion in the room, but nothing at the doorway, then you can make a good guess the person that entered is still inside but motionless.


This system isn't foolproof, but PIR sensors are cheap and remarkably sensitive, so with enough of them I think you can get to quite a useable level.


One thing to keep in mind is that other warm moving things will trigger PIR sensors too, like pets moving about. If you have a dog, then aiming the sensors so they only see motion a few feet off the floor helps. Cats jump around a lot, but are smaller, so maybe there is a way to not trigger on cats. This system will be a lot easier if you know the only warm moving things are humans though.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...