IOT (Internet of things)
The Internet of Things (IoT) is an ecosystem of Computer devices, automated/digital machines, Object, people or animals which holds unique identifiers and has the ability to transfer data over network without involving human-to-human or human-to-computer interaction.
Internet in Internet of things can be any device capable of sending and receiving signal, can be a person with heart monitor implant, can be any automobile that has sensor built-in to signal driver when fuel/tire pressure is low or can be any natural or human made object that has unique IP address assigned to it and has the capability to send and receive signal when required.
IOT has been brought in picture with union of wireless technology, micro electro-mechanical system, micro-services and internet. This union has bridged the gap between operational technology (OT) and informational technology (IT) their by allowing unstructured machine generated data to analyzed and plotted for useful statistics.
Concept of IOT was first officially announced in year 1999 but has been in development for decades. The first internet machine, was a Coke machine at Carnegie Melon University in the early 1980s. The developer were able to connect to the machine to Internet, check the status of the machine and determine whether or not there would be a cold drink waiting, and deciding whether to re-fill machine or not.
Internet of things (IOT) concept are generally executed on IOT boards. These boards come with pre-configured hardware capable to sending and receiving signal. These boards are generally controlled by software running on top of their hardware like our personal computers. Latest IOT board comes with Bluetooth and Wifi pre-configured as part of hardware capable of sharing and receiving data. Popular IOT boards variants are –
- Raspberry PI
- Intel IOT Edision
- BeagleBone Black
Areas For IOT
Practical application of IOT can be found in many industry like agriculture, building, health care, energy, transport, education etc. Figure below demonstrate practical areas for IOT applications –
Why Node Js and IOT
- Devices like sensors, beacons, transmitters, motors has tendency of generating large volume of data thereby generating large number of request, Node JS is well equipped to handle this request through streams. Streams offers both readable and writable channels which helps in piping the request to destination without temporary storing the data. Streams are basically Unix pipe and can directly connect to destination.
- Key feature of any IOT driven application are collecting data, communicating, analyzing and acting . Node js makes perfect partner for all above features.
- Sockets and MQTT protocol are well suited in Node js which are generally used for continuous data transmission in IOT application.
- IoT-application cable boards, such as Intel Edison, BeagleBone Black, and Raspberry Pi, can easily install Node js as programming environment. Node js comes with NPM packages manager which contains many useful IOT modules, which can be used for rapid and robust application development.
- Node js is known for its speed, scalability and efficiency making it key player for data- intensive real time application. This makes Node js well suited for IOT which relies on data intensive real-time traffic.
- Node js open source community NPM (Node package manager) contains more than 80 for Arduino controllers, raspberry pi, intel IOT Edison. It contains more than 30 packages for different sensors and bluetooth devices. These modules make application development fast and easy.
Getting started with Node Js and IOT
To make use of these tools (or module) in Node.js we need to install and manage them in a useful way. This is where NPM, the node package manager, comes in. It installs the packages you want to use and provides a useful interface to work with them.
NPM contains many popular IOT modules suited to different type of application development. You can use npm module for getting started with node js and IOT. Key npm modules for IOT are listed below-