The Rising Tide of M2M and IoT Applications
M2M or “machine to machine” solutions have become relevant to companies that have never seen themselves as being in the software space. Continuous connectivity is the new fact of life. Whether you are an automotive company, an energy company or—in fact—a company that deals with any type of physical objects at all, M2M is either in your future, or you’re already using it.
As the name implies, M2M applications involve the interaction of one device with another, mediated through software. The simplest of these are applications that push data or control signals in one direction: Connected vehicles that supply location and CAN bus data to the cloud; Cloud-based systems that push software updates to distributed devices; logistics tracking systems using remote GPS sensors; and remote-control systems that fly drones or model cars. These monitoring and control applications include what used to be referred to as “telematics”, which is now considered a special case of M2M.
More sophisticated M2M applications provide bi-direction information and control. For example, a wind energy system might monitor the effectiveness that a turbine blade’s pitch and yaw have on power generation in certain wind conditions, and produce an analysis showing how this can be optimized. Or the system might predict the failure of a certain turbine component based on its duty cycle, temperature in operation, and other complex factors. An operator can then use that information to schedule maintenance and optimize the output of their wind farm.
More sophisticated IoT systems use “context aware decision-making” that takes into account not just sensor input, but also historical data and data “federated” from other sources
M2M applications in general still involve a relatively high degree of human control—a human is “in the loop” to monitor results, and to take the appropriate actions. Once a system begins to become autonomous, we enter the domain of the “internet of things”, or IoT.
IoT systems use analytics against data harvested from “sensors” to drive “actuators” and cause some physical result. An IoT system is somewhat like a robot that is distributed over multiple devices and the Cloud. An IoT system processes data from its environment, and uses it to drive some action. Simple IoT systems use direct logical rules like “If This, Then That” (IFTT) processing: when a certain condition is sensed, then a specific action is initiated; like a switch turning on a light. More sophisticated IoT systems use “context aware decision-making” that takes into account not just sensor input, but also historical data and data “federated” from other sources.
The rich pool of data that complex IoT systems can draw on enables complex and automatic actions. For example, in an IoT system attached to a wind farm, the system itself would directly adjust the pitch and yaw of the turbine blades. It would do this autonomously, based on its sensors providing current wind and other weather conditions, its monitoring of real-time as well as historic turbine performance data, theoretical models, and many other factors. Maintenance crews would automatically be prioritized, scheduled and dispatched by the system based on predicted parts failures, resource availability, geographic location and other factors. Humans might monitor these decisions, but they would be “out of the loop”. In a true “IoT” system, the decisions are delegated to the software.
A wide range of technologies are used to implement M2M and IoT systems. Sensor, communications and control systems technologies are central to industrial systems, but for more business-oriented applications like fleet management, everyday mobile devices and the Cloud are frequently all that’s necessary. While we tend not to think of it, the mobile device in our pocket or purse contains a surprising number of sensors that can include an accelerometer, gyroscope, GPS system, microphone, touchscreen, compass and many others—along with the communication technology required to convey this information to the Cloud or another device.
While a dominant player in the M2M / IoT platform space has yet to emerge, most would agree that two strong contenders are GE’s Predix, and PTC’s ThingWorx. Predix is focused on industrial automation, while ThingWorx appears to be pursuing more business-oriented areas like Retail and Customer Support. The M2M / IoT market is far from mature, and many companies developing these systems use more “general” Cloud application hosting “PaaS” platforms like Amazon Web Services (AWS), Microsoft Azure, and IBM’s Bluemix.
The range of skills required to develop complex M2M and IoT applications can be vast, ranging from sensor to communications technology, control systems, high speed message capture, “big data” batch and streaming analytics, “data science”, Cloud technologies, and Web and Mobile application development. This is in addition to the required and specialized domain skills. Even large companies find themselves stretching to identify and allocate the required range of skillsets required for success in their M2M and IoT projects. Over time, domain-specific solutions are likely to emerge for specific industries—renewable energy, automotive, etc.—that will be easy to adopt. For now, however, companies tend develop their own systems, in partnership with solution providers and integrators that can supply them with the necessary know-how.
M2M and IoT are among the most interesting and exciting technologies to emerge in a generation. They offer the prospect of software control of physical devices, and of an unprecedented era of safety and efficiency. As a CIO, determine if M2M and IoT would give you a competitive or transformational advantage. While few commercial systems are currently available to buy “off the shelf”, the technology and expertise exist to create a compelling and highly differentiated solution for your company.