Sergey Nivens - Fotolia

IoT sensor selection: Find the best sensor for your apps' needs

When choosing which sensor to pair with your IoT applications, it is critical to keep several considerations in mind to ensure you find the sensor that best fulfills your applications' needs.

In any technology paradigm, there are always definitional elements, meaning there are things about it that are so important, so core that they literally make the concept useful, viable or relevant in the first place. For example, how useful would the cloud (as a concept) be without ubiquitous network connectivity? Probably not very useful.

In the Internet of Things world, arguably one of the most definitional elements is the IoT sensors that we choose because the value of IoT is in interacting with -- and responding to -- the physical world. The ability to sense the environment -- and in response interact with it -- enables autonomous functionality in response to real-world events, and thereby opens up much of the value that IoT can bring to the table, particularly from an enterprise point of view.

Maker IoT sensor selection

For those in the maker movement, picking the best sensor for the project you're working on encompasses a few different elements. There are hundreds of sensors in the marketplace right now that allow inventors and hobbyists to measure everything from barometric pressure to temperature and humidity to radiation. As such, this article can't cover every sensor available in depth; however there are a few useful things to keep in mind as you evaluate which sensor makes the most sense for your project.

First and foremost, one of the most important considerations is sensor accuracy. Not all sensors are equally accurate, so the specific circumstances of your project will dictate the accuracy that makes the most sense for use. For example, a humidity sensor with higher accuracy might be advantageous to you if you're making a weather station, but it's maybe less important in the context of building an alarm to text you when the basement's flooded. A temperature sensor like the RHT03 (accurate to within +/- 2 degrees) might be a good choice for remotely monitoring your home's heating system (for example, to keep an eye on stuff while you're on vacation), but if you're making something where 2 degrees makes a big difference -- like a medical thermometer -- something more accurate like the SHT15 (accurate to +/- .3 degrees) would be a better choice.

Likewise, durability and operating environment are factors within the context of the IoT applications you have in mind. For example, a temperature sensor that's resistant to ambient moisture like the Texas Instruments TMP100 might make for a good outdoor weather sensor, but if you want to monitor the temperature of your garden pond, a probe like the waterproofed DS18B20 is likely to be more appropriate in the context of that project.

Lastly, consider the specific platform that you're interfacing with. For example, if you're working on an Arduino platform with a 5V regulator only (for example, the 5V version of the Pro Mini), you may find a 5V sensor to be more convenient than a 3V3. Alternatively, if you're experimenting with the Windows IoT Core, you might find it beneficial to constrain your sensor selection to what's on the supported hardware list.

In general, it's worth a bit of extra research at the front end to make sure the sensors you select work optimally with the platform you're using -- or at least plan for how to compensate if that's not the case. For example, if you're using an LM35 and you need high resolution, researching the sketch that compensates for the wasted range on the Arduino 5V pin is probably time well spent.

Enterprise IoT sensor selection

From an enterprise point of view, IoT sensor selection might be arguably a bit more complicated -- or maybe less so depending on how you look at it. Not only do you have the same accuracy, durability and environmental considerations that a maker needs to contend with, but you have business-impacting considerations to contend with as well. For example, while a 50-cent price difference in the cost of an IoT sensor is as close to a non-issue as you're likely to find for a hobbyist, that cost adds up quickly when considering usage at scale.

Moreover, when you're looking at deployment at scale -- or even thinking about a proof of concept that might in the future lead to a solution at scale -- you're likely to spend less time tinkering at the hardware level and more time thinking about how to integrate your solution into existing technologies and processes that you already have, and also how to weave together individual devices into a cohesive solution. It's here where cloud platforms, such as Microsoft Azure IoT Suite and AWS IoT, can add value. Both offer mechanisms -- bi-directional communication -- that let you integrate devices into solutions you develop that leverage the cloud platform.

In the AWS world, devices send and receive JSON messages over MQTT (a lightweight messaging protocol) through a central message broker; these messages are processed by a rules engine that allows you to create customized actions based on the type of device, group of devices (i.e., MQTT topic) or content of a message (i.e., specific values in JSON properties). The Device SDK (Embedded C, JavaScript or Yún) provides the capability to connect a specific platform to the cloud environment.

Conceptually, Azure operates similarly. Like AWS, there exists also in Azure the concept of a central device registry. However, messaging is a little different. Under Azure, the IoT Hub provides the mechanism to send and receive messages from specific devices; it uses AMQP natively but provides a protocol gateway to translate to MQTT, if needed. It supports a wide array of devices and platforms in C, C#, JavaScript and Java.

The point is, no matter which platform you use, just like with a maker project, adapting sensors to the usage you have in mind starts with requirements. And while some consideration at the hardware level is important, since you'll be communicating with the microcontroller instead of individual hardware components directly, you have a wide selection of individual IoT sensors to choose from.

Next Steps

Would your organization consider using  SD-WAN to increase IoT performance?

Read advice on how to make a wise choice when selecting an IoT platform.

Learn about an IoT device startup that makes customizable sensors for IoT applications.

Dig Deeper on Internet of Things (IoT) Hardware