lundi 30 mai 2016

Understanding the architecture of IoT(Internet of Things) system in technical perspective

I have recently started in the domain of IoT. Though, during R&D, I have seen lots of small examples over internet where people are lightning up LEDs connected to a Raspberry board, using internet and mobile app. But, that's just OK for small learning projects. I want to understand what software tools and hardware it takes to build a working IoT system on a large scale. Lets take 2 example projects :

  1. Smart Home - Controlling Home Devices over-the-internet through mobile app.
  2. Smart Garbage - Dustbins across the city that send data to a central server, whether they are filled or empty.

I want to get an idea, how will I get the things operational for above two sample projects, to a production level? What are the possible designs I can adopt?

If I had to work on Smart Home Project, the best I can think of is I put a Raspberry board in the house connected to internet, install a TCP/IP server like apache, code the backend in PHP to handle requests (in JSON) from mobile apps acting as clients , and execute the scripts (written in bash) locally on the board to control different peripherals connected to it, depending on the type of request. e.g. controlFan.sh, controlLight.sh, controlGarageDoor.sh, etc.

And, if I had to work on the second project, I now put the Raspberry board on each dustbin connected to a central server. This time, I don't need a server on the dustbins. There will be a central TCP/IP server, at the city's Garbage Collection Department, which will expose APIs in the form of URLs like :

http://ift.tt/1sncKTX;

Simply hitting the url via a cron job will suffice the job.

I understand that my architecture is naive and might not suit the production level of quality. So I request if any of you have worked on such project, what architecture and softwares did you use? How were your clients and servers programmed to communicate?




Aucun commentaire:

Enregistrer un commentaire