Make Smart Products even Smarter

Blog Post created by s.kuensteresri-de-esridist Employee on Dec 19, 2016

Make Smart Products even Smarter

Using Location-based Controlling and Monitoring


There are already many smart products such as smartphones, SmartHome, or SmartGarden, meaning that these can be used intuitively and can free us from some of our chores by independently and intelligently taking over various tasks. One example would be controlling a heating system based on our current location. Even devices such as lawn mowers can be operated in a "smart" manner, and they could also communicate with other appliances such as humidity sensors or irrigation systems for optimized capabilities without any further action being required.


All of this is already available or currently being developed. Some of the first green shoots can be detected in context of the Internet of Things', but remain very much local. In most cases, compatibility is dependent on the manufacturer and the devices are designed for "minor" tasks only.


What if these products could take advantage of all of their data to communicate with thousands of other items - not only locally, but on a regional or even international level? What could we expect from these products and which advantages could be realized for both end users and other appliances, maybe even brand-new business opportunities for manufacturers?



With location-based controlling, monitoring, and communication we would like to show that already today there is a much larger potential. To do so, our focus will be on the most important data integration components and how to exploit the full potential of information: the spatial reference.


For our example, an off-the-shelf robotic lawn mower was used and extended with location awareness. This information is linked to the ArcGIS technology. The result: an even smarter robotic lawn mower that cannot only mow the lawn but is also informed about relevant severe weather alerts and in which cases it might be better to return to the charging station. At the same time, it uses its sensor data to "warn" other devices in close proximity.



The basis for these capabilities was established in a term project at the Bochum university. Students and faculty staff worked together extending the functionality of the robot: Communication with the device is possible via REST, it can determine its location with a GPS signal, and it can be controlled remotely. For the detection of the current position, a USB GPS module is used. Temperature and humidity sensors complement the existing sensor system. Both sensors are connected to a Raspberry Pi and mounted on the robot.



The entire actuating system was deployed using Python scripts. The current sensor data are being read in specified intervals and published via MQTT (Message Queue Telemetry Transport), an open and light-weight messaging protocol for Machine-to-Machine (M2M) communication. A MQTT broker is being used for this particular purpose. Eclipse Paho allows for the integration of a MQTT client deployment in the Python scripts for publishing and receiving sensor data.


The most difficult part of the implementation is the robotic lawn mower's control system. Initially, the mower did not provide for any open communication interface. But a resourceful developer in the north of Germany devised an extension module ("Robonect H30x") in his free time that allows for the transmission of HTTP control commands to the robot.


For the mower to determine if it is located in an area with severe weather alerts, information from ArcGIS GeoEvent Extension for Server is integrated.  As an ArcGIS Enterprise extension, this component allows for automated real-time data processing. The GeoEvent Server does not provide any "out of the box" MQTT connectors, though. A project to deliver this was set up by Esri on GitHub and rendered possible an upgrade with this important feature.


Severe weather alerts are provided as GeoFences, synchronizing with an ArcGIS Feature Service.


Real-time sensor data are collected via a GeoEvent Service. So-called GeoEvents are generated automatically from the MQTT JSON message to check if the robotic mower is located in an area with severe weather alerts. If this is the case, the robot will receive a "Go Home" command via MQTT to return to the charging station.


For persistence the sensor data are transferred to a feature service and, in addition, are used by a stream service for real-time visualization.


Visualization and control of the demo run on a JavaScript Dashboard that was configured specifically for this purpose.


The following video demonstrates the operation of the robotic lawn mower:



Based on location-specific severe weather alerts, the robot automatically returns to the charging station. This scenario is just a rather basic example of how location-based controlling and monitoring can make smart products even smarter. The spatial reference applied in this demo could be the basis for other scenarios where not only one device but thousands could be connected using their particular location. This also allows for devices to communicate with others in close proximity, transferring information like optimization or warning messages.


This concept opens up new opportunities for customers and manufacturers: The customer no longer needs to worry about the protection and the current state of the device. The manufacturer can take advantage of the location-based data to provide new offerings and services (e. g. predictive maintenance), to optimize the company's service operations, or to develop completely new business opportunities (e. g. security or maintenance subscription).


Are your "things" ready to get even smarter? Tell us and let's have a look how Esri's spatial technology can help you out!