Today, connected objects, GPS and other sensors are affordable for everyone and within 3 years, the IoT market should double to 520 billion USD.
The problem is that companies are still reluctant to adopt these technologies, among others, due to the complexity of integrating IoT solutions into business processes.
It is therefore necessary to understand the issues for successful integration of IoT in organizations. Whether for automating or monitoring the assembly line, real-time vehicle tracking, precision farming, optimizing snow removal systems or monitoring parking spaces, essential steps must be taken. used and implemented to properly integrate IoT.
The first step is obviously to select, depending on the needs, the type of sensors that must be integrated. Some questions then arise:
You will have realized that there are no simple and unique answers, all depending on the needs and available infrastructure.
When equipment and their specifications are defined, it is necessary to acquire the data from the IoT. To do this, the devices must be configured to transmit the information updates to acquisition systems with a standard protocol such as MQTT, CoAP or a proprietary protocol.
For more details on the protocols used in the field of IoT, see this excellent article on the subject.
Information from the IoT must then be routed to message management and redirection technology such as AWS IoT Core, Azure Iot hub, PubNub, or Apache Kafka. These solutions make it possible to route, depending on the task and needs, the IoT message to the right services that have to process the data and store it.
Before storing it, the data processing module is executed and it can be composed of several sub-treatments. For example, the raw information can be filtered, validated, and a rules engine can be used to make decisions about the new information. When a GPS reports its position, this step will confirm whether it is in a specific zone and if an email should be sent to its supervisor, for example.
Once the data is processed, it can now be stored in a database. A popular technology is to use a NoSQL system in order to store data without a predefined structure (e.g. MongoBD, CouchBase, AWS or Azure). This makes it possible to store, in the same document, several types of IoT that do not have the same data schema. It is then easy to make the requests to display them on a map or in a dashboard.
The last step is to display the IoTs on a map. This step is obviously crucial and certainly not trivial. There are of course solutions like Cayenne or Thingsboard which include a cartographic component but with very limited functionalities. For a more complex integration, it is necessary to develop a complete client solution (Javascript Portal, HTML) with Google Maps, Here or MapBox, for example.
It is therefore a process that involves several complex, expensive technologies and specialized expertise; so I can understand that many companies are reluctant to embark on the adventure.
“So you have to be able to simplify and facilitate such an integration to enable businesses to reap the benefits of using connected objects.”
The Rasters.io web platform offers a complete solution for deploying, in record time, all the components needed to manage your IoT.
A fully hosted solution that offers:
1- Simple connectors for the acquisition of your IoTs;
2- A flexible and powerful rule and notification engine;
3- Storage and management of the history of your IoTs data and all your cartographic data;
4- Editing and management tools for your data (zones, GeoFence, markers, IoTs);
5- A complete real-time map, personalized and efficient;
6- A tested turnkey system, and simple integration directly into your portal.
This saves you development time, IT infrastructure and integration time. Concentrate on the essentials of your product and let Rasters.io do the rest.
Here’s an example of how to configure Rasters.io to track assets on a map and embed that map into your website.
The first step is to create a new map in your account Rasters.io, and give it a name, for example: “Bus Tracking”:
Then, using the “New Layer” button, add an IoT layer and select the RESTApi connector. You must now configure the connection to the IoTs data source. For this example, we have chosen a REST API that gives us access to the real-time position of buses in the city of Phoenix. Here’s how to specify the connector configuration:
{ "Endpoint": "https://transitdata.phoenix.gov/api/vehiclepositions?format=json", "Format": "json", "Mapping": { "RootPath": "entity[*].vehicle", "Location": { "Latitude": "position.latitude", "Longitude": "position.longitude" }, "Geometry": null, "DeviceId": "vehicle.id", "DeviceName": "vehicle.label", "LocationFormat": "DD" } }
This JSON specifies how the RESTApi connector will process data from the data source. Copy it in the “Settings” section of the connector, choose the update frequency (20 seconds in our example), and test the connection “Test Connection“. If the configuration is well defined, the connector will turn green and you can save the settings. For all details concerning the configuration of the connectors, you can consult the tutorial.
The IoTs will automatically appear on the map and all information for each object will be updated every 20 seconds. By selecting a vehicle from the map, you can change some of the default layer settings from the left panel:
In addition, all the information coming from the IoT will appear in a tooltip (speed, direction, date, etc.) on the right. This information comes directly from the device (IoT) and is generally not very readable in addition to containing properties that do not interest us. To use only useful information and improve visibility, set the desired properties (3).
Using this panel, you can select only the properties to use and assign them a readable name and a unit. In this case, only 3 properties have been selected. In addition, a property has been manually added to all objects in this layer: “Home Terminal“.
This property will be added to all objects. Thus, users will only see properties that have been selected with a much more readable name.
From now on, the IoTs are correctly configured, the vehicle information is updated every 20 seconds and the history is automatically stored in Rasters.io.
The next step is to configure the rule engine to establish your business procedure in terms of IoT and the geographical environment. For example, here are the rules we want to put in place in our management system:
1- If the speed of a bus exceeds 50 km/h AND the bus is operating normally THEN perform the following actions:
– Display the bus in yellow
– Send an email
To do this, in the “Rules” section, add a first rule by naming it “OverSpeed” and specify the following configuration.
The rule applies to “All” objects in the “IoT” layer. It checks whether the value of the Speed property of an IoT is greater than 13.8 metres/second (50 km/h). If the condition is true for a particular object, the color of the object is changed and an email is sent.
When the rule is saved, it is applied instantly and the corresponding buses are displayed in yellow:
2- If the speed exceeds 30 km/h within certain specific zones (these zones are defined by the user) THEN perform the following actions:
For the second rule, it is necessary to specify zones by adding an “Annotation” layer in Rasters.io:
Next, a rule that takes into account the intersection with these areas which can be defined as follows:
To this rule, the necessary actions are added to modify the style of the IoTs and the underlying areas, and send a Webhook to Zapier to populate a report, for example. For details on Zapier actions and styles, see the tutorial on this topic.
At this point, the tracking system and all the business rules are now in place. Now it is time to integrate the solution itself into your product.
To integrate your brand new map into a web portal, you first need to generate a key/token for the map to share. To do this, go to the “Settings / API Keys” page at the top right of Rasters.io. Then just add a key and relate the corresponding map. This token allows access to the map from any environment.
To integrate the Rasters.io map, a Javascript API is available here (https://rasters.io/docs/example/basic/display-a-simple-map/). So just add the example code to your portal and use the key/token to finalize the integration.
Example of a map integration in existing portal
Rasters.io greatly simplifies the integration of an IoT management system with business systems.
Try Rasters.io for free right now to set up your maps and connect your devices.