ENTRIES TAGGED "sensors"
The importance of network architecture on the Internet of Things
There are a lot of moving parts in the networking for the Internet of Things; a lot to sort out between WiFi, WiFi LP, Bluetooth, Bluetooth LE, Zigbee, Z-Wave, EnOcean and others. Some standards are governed by open, independent standards bodies, while others are developed by a single company and are being positioned as defacto standards. Some are well established, others are in the early adoption stage. All were initially developed to meet unique application-specific requirements such as range, power consumption, bandwidth, and scalability. Although these are familiar issues, they take on a new urgency in IoT networks.
To begin establishing the right networking technology for your application, it is important to first understand the network architecture, or the network topology, that is supported by each technology standard. The networking standards being used today in IoT can be categorized into three basic network topologies; point-to-point, star, and mesh.
The following figure illustrates these three topologies followed by a deeper discussion of each.
Network technologies appropriate for Internet of Things
An application developer has to consider numerous networking attributes when choosing a wireless network. The following five can help you understand the characteristics, capabilities, and behavior of the three topologies.
The Jawbone UP shows the promise available in all kinds of wearable sensors.
In a recent conversation, I described my phone as “everything that Compaq marketing promised the iPAQ was going to be.” It was the first device I really carried around and used as an extension of my normal computing activities. Of course, everything I did on the iPAQ can be done much more easily on a smartphone these days, so my iPAQ sits in a closet, hoping that one day I might notice and run Linux on it.
In the decade and a half since the iPAQ hit the market, battery capacity has improved and power consumption has gone down for many types of computing devices. In the Wi-Fi arena, we’ve turned phones into sensors to track motion throughout public spaces, and, in essence, “outsourced” the sensor to individual customers.
Phones, however, are relatively large devices, and the I/O capabilities of the phone aren’t needed in most sensor operations. A smartphone today can measure motion and acceleration, and even position through GPS. However, in many cases, display isn’t needed on the sensor itself, and the data to be collected might need another type of sensor. Many inexpensive sensors are available today to measure temperature, humidity, or even air quality. By moving the I/O from the sensor itself onto a centralized device, the battery power can be devoted almost entirely to collecting data.
Don't be afraid of the bus
After a short period of time, beginners working with the Arduino development boards often find themselves wanting to work with a greater range of input or sensor devices—such as real-time clocks, temperature sensors, or digital potentiometers.
However each of these can often require connection by one of the two digital data buses, known as SPI and I2C. After searching around the Internet, inexperienced users may become confused about the bus type and how to send and receive data with them, then give up.
This is a shame as such interfaces are quite simple to use and can be easily understood with the right explanation. For example let’s consider the I2C bus. It’s a simple serial data link that allows a master device (such as the Arduino) to communicate with one or more slave devices (such as port expanders, temperature sensors, EEPROMs, real-time clocks, and more).
Author Federico Lucifredi on developing sensor-enabled Arduino sketches.
Federico Lucifredi (@federico_II) is the maintainer of man(1) and also the author of the upcoming book, Sensor Interfaces for Arduino. We had a chance to sit down recently and talk about how to connect sensors to microcontrollers (in particular Arduino).
Given how many sensors there are in the wild, there’s a lot to say about sensors. Some of the key points from the full video are:
- When to look for a library to support your sensor and when to just write a few lines of code to read it. [Discussed at the 3:00 mark]
- Thinking about sensors that return non-linear responses and how that might affect your code. [4:40]
- Detecting a human presence on a door mat. [6:00]
- Using a Geiger counter to measure radiation and generate random numbers. [8:14]
- Where to look for docs and code when you start working with an unfamiliar sensor. [11:30]
In this first episode of "Editorial Radar," O'Reilly editors Mike Loukides and Mike Hendrickson discuss the important technologies they're tracking.