Connectivity is essential in any networked system. This may be wired or wireless in nature, each of which may be decided based upon what entire application warrants. If your application is very much distributed geographically, more than one type of connectivity may be used. Such as one could use WiFi or ZigBee for local network communication and use RS485 or RF links for long range communication.
The main job of this link is to transfer information gathered by end node and processed by processing node to the application software or could based service. Connectivity is always in duplex form which means it acts as to and fro channel for communication between application software and local hardware.
Bluetooth, WiFi, Z-Wave, 6LoPan, etc. are typical types of local connectivity used for house or office automation projects. GSM, RS485 and RF are other types of connectivity used for long range communication.
Some of the bluetooth, GSM or RF modules are readily available in marketplace while rest of the complex modules need to be built specifically depending upon the complexity of application.
Cloud based service or end-application is another end point in IoT system which is essential to reap true benefits of deployed end nodes.
Most of the applications heavily rely and exploit cloud computing due to ubiquity of available services. Application node works as a service delivery point and performs user defined actions.
Users can easily modify and manipulate information available with this node and can apply various visualization methods for effective and attractive representation. Application can also auto-perform certain actions based upon data and rule sets which highly depends upon user requirements
Typical examples of such applications are weather information apps, security systems, field data collection and display software, industrial control hub, etc.
All the software applications and cloud services are custom built for specific requirements and various tools could be used for making them. For example, a webservice could be built using Classic ASP, PHP or ASP.NET and similar scripting technologies. PC based software could be developed with VB or VC while mobile phone app as Android, Windows or iOS based applications developed using Eclipse or app-inventor like tools.
Now we know much more about IoT, what next?
Thus while working on any IoT project design, as a good design practice, one should divide the project work into these four critical blocks and design each of these separately by considering their characteristics. Once designed separately, they can be later combined and tuned to work together effectively.
While in the next article, we will learn more about a hands-on project to get going; there are a few things which you as designers should always remember…
- Think from users’ and applications’ perspective – there are umpteen applications in the market already which are called as IoT applications or devices but seriously lack user perspectives. Just because designers are proud of their creation does not mean users would appreciate the application; it might be useless from them too. The key to avoid this is to think and understand users’ point of view.
- Always ask yourself, even before starting to work on an idea – does it really make any sense? Sometimes, we develop something which has no practical use or it doesn’t meet cost versus value proposition. The cost of building or buying such thing exceeds the value it delivers or sometimes it is almost not practical to use it in reality. Having sanity check can avoid disappointment later.
- Do not convolute or un-necessarily complicate – just because it is IoT application or it involves mixed technologies and things does not mean it has to be complicated. A good engineer would always keep it simple, realistic and smarter.
The author is a senior technical correspondent at EFY.