When developing an IoT prototype, most of the experimentation with electronic components will happen on what is referred to as a solderless breadboard. The breadboards provide a platform that simplifies experimentation with different components in a rapid and fast way. When working in an IoT project, the two types of electronics that you work with are sensors and actuators. Sensors provide a way of consuming the state of the environment while actuators enable a device to perform actions.
There are multiple ways in which sensors and actuators communicate with a computer. One way the electronics communicate with the computer is through an I/O that can only assume only two states. Examples of these states could be on or off among others. Connection of the two types of states happens through general purpose input/output (GPIO) pins. The way in which the voltage mapping happens is that digital 0 corresponds to 0 circuit voltage while digital 1 corresponds to the voltage at which the processor runs.
For a more controlled connection that offers more than two options, an analogue signal is needed. For example to run a heating system at capacities other than the minimum and maximum a voltage between the minimum and maximum needs to be supplied. The challenge is that computers are digital devices therefore the analogue signals need to be translated to digital signals. An analogue to digital converter solves this challenge by providing a mechanism to measure the voltage between the minimum and maximum. Examples of states that can be measured at varying levels by sensors are light, vibration, humidity, movement and distance.
A breadboard offers a very simple way to experiment with components without the need for soldering. Once you are satisfied with component layout you proceed to solder them to a protoboard which offers some form of permanency. When you outgrow a protoboard it is time to learn how to build a PCB. This may seem daunting initially but the two important elements necessary for success are understanding the software and vocabulary used.
At the preliminary stages through-hole components that allow hand soldering. The complete system is not designed at once. Instead, you use building blocks referred to as companion boards that enable you build a system in stages.
Building a circuit board involves three steps that are highlighted below:
• The first step is using a breadboard to explore the best layout of electronic components
• The second step is using a stripboard where the components are soldered which prevents any components loosening or falling off.
• The third step is creating a PCB from the circuit. This simplifies circuit building and minimizes the risk of short circuits happening.
To build a successful Internet of Things product, it is necessary to understand the jargon used. A microcontroller is a scaled down integration of a processor, memory and storage. There are microcontrollers that support either 8 bit or 32 bit computing. The memory and storage of microcontrollers are offered in kilobytes which may make them seem limited but they can be used very productively.
System-on-chips (SoC) provide capabilities that are in between those of a microcontroller and those of personal computers. A SoC includes a processor and some elements in a single chip. The processing power and memory are more powerful but storage is excluded in favor of SD cards.
There are several factors that need to be considered when identifying an appropriate platform.
These factors are highlighted below: –
• The processor speed provides an idea about the computing power. Besides the speed it is important to look at other features of importance in your project, for example you may need support for floating point computing. For basic processing a microcontroller is adequate but when there is heavy data processing a SoC is more appropriate.
• Communication between the device the internet and external components needs to be carefully considered. Wired and wireless communication options are available. Wi-Fi is a popular option, but it has the disadvantages of high power consumption and cost. Bluetooth 4.0 and ZigBee are Wi-Fi alternatives that are cheaper and use less power but these advantages result in a lower bandwidth. Applications that process minimum amounts of data can adequately rely on SMS while applications processing large amounts of data may need 3G. Connecting to peripherals such as screens and sensors relies on peripheral buses or GPIO pins.
• It is critical to consider the power consumed by the devices. Generally fast processors will consume more power than slow processors. There are some fast processors that have been optimized to consume little power when on sleep mode. Therefore, they can be used for processing heavy data without the disadvantage of high power consumption.
Arduino has found wide application in Internet of Things projects. This section will highlight the different components that are used in Arduino development. To develop Arduino code an integrated development environment is available here https://www.arduino.cc/en/Main/Software for Windows, Linux and Mac. The IDE enables error checking and pushing code to the board. Setting up code on the board is simple and it involves connecting through a USB port and the code gets copied to the board storage. After the code is placed on Arduino it reboots and begins running the code. A default set up of has only a bootloader without an operating system.
In this article, we discussed the different stages in prototyping and the types of boards that are used. We discussed how fine grained control can be achieved. We highlighted the steps involved in constructing a circuit board and the factors to put in consideration when selecting a platform. Finally, we highlighted how code for an Arduino board is developed.