Sensor Selection method for IoT systems – focusing on embedded system requirements

Recently, various types of sensors have been developed. Using these sensors, IoT systems have become hot topics in embedded system domain. However, sensor selections for embedded systems are not well discussed up to now. This paper focuses on embedded system’s features and architecture, and proposes a sensor selection method which is composed seven steps. In addition, we applied the proposed method to a simple example – a sensor selection for computer scored answer sheet reader unit. From this case study, an idea to use FTA in sensor selection is also


Introduction
Recently, various types of sensors have been developed and widely used.With these technical breakthroughs, IoT (Internet of Things) systems, which can realize and create various types of additional value, have been proposed and developed using these sensors [1] [2].In most IoT systems, embedded systems are used to collect or detect various data.An embedded system consists of a microcomputer and a wide variety of sensors.It detects various types of data through the sensors and processes data and information.However, if engineers do not pay attention to the sensors applied in the systems, the expected system functions may not be realized.We have developed embedded systems and discussed their problems and their solutions in terms of their architecture.This paper focuses on sensor selection for embedded systems and proposes a sensor-selection method.
2 Embedded-system architecture as a sensor-driving facility

System architecture
In an IoT system, the embedded system is responsible for driving the sensor mechanism, which provides the following functions.1.A microcomputer unit connects the sensor-driving circuits and activates the sensors by sending a start signal.2. The microcomputer unit receives data collected by sensors via amplifier circuits.

3.
Data or signals are recorded in the microcomputer's memory area, and then processed by the embedded software.

4.
The processed data are transferred to IT systems via data communication networks.These embedded-system functions and procedures are initially based on the functional and safety requirements of the target system.In addition, system sensors vary according to the expected functions and safety requirements of the system.Therefore, when selecting system sensors, the sensor's performance specification data should not only be considered, but also the system requirements and use cases.
Moreover, the sensor selection has a significant influence on the hardware and software architecture of the embedded system.From a hardware point of view, if the sensed data level is relatively low, amplifier circuits are necessary.Moreover, if the sensed data contains noise, then noise-reduction circuits are also required.On the other hand, if a multi-sensing mechanism is applied to a system to reinforce the system safety properties, one should pay careful attention to the pin assignments of the microcomputer.
From the software point of view, sensor selection has a significant influence on the data-sensing timing control and the data-collection process.These procedures are mainly accomplished by interrupt routines and a taskpriority mechanism in the embedded software framework.Thus, to realize suitable data sensing, the software architecture should also be considered.Furthermore, when removing noise from the sensed data with a software procedure, the software architecture and algorithm are also affected.Thus, sensor selection has a large influence, not only on the system functions but also Figure .1 Architecture of embedded systems on the embedded system of an IoT system that mainly drives sensing units.

Problems
As mentioned above, the sensor selection has a large influence on the embedded system architecture, as well as on the IoT system functions.However, there has been little discussion on the basic process of sensor selection from an embedded-system viewpoint.As a result, engineers tend to select sensors for their systems without sufficient consideration; they mainly refer to their own and other engineers' experience.Thus, in the worst case, a sensor may be changed during the development phase, possibly resulting in a software or hardware architecture change.
The above sensor-selection process poses the following problems.
1.The sensor-selection process and its steps are not clearly defined.2. The evaluation viewpoint of the sensor selection is not discussed sufficiently 3. The relation between the selected sensor and the embedded-system architecture as a sensor-driving unit is not discussed well.Visual sensors, sound sensors, and other types of sensors are applied in terms of system development.This variety of sensors and basic physics makes sensor selection difficult, and as a result, the sensor-selection method cannot be clearly defined.Thus, it is important to define the general process and steps for sensor selection, which are commonly applied to various sensor types and physics.
3 Sensor-selection method As Figure 2 shows, the proposed sensor-selection procedure is composed of the following seven steps.
Step 1. Identification of the target to be sensed By considering the IoT system specifications and requirements, the type of sensing data, information, and situations can be found.
Step 2. Sensing viewpoint analysis Which of the five human senses-eyesight, hearing, touch, smell, or taste-is suitable for the sensing target is determined.
Step 3. Sensing-device candidate list Sensor types and physics are examined while considering the sensing viewpoints and target.Then, the sensordevice candidates are listed.
Step 4. Sensing-device level evaluation There are three types of sensors.The first is a presencejudging sensor that can detect the presence of a phenomenon or a target object.The second is a scalemeasure sensor that can measure the feature-value level of a target phenomenon or object.The third is a physicaldegree sensor than can determine the degree of a physical phenomenon.Considering the system specification and listed sensor's physics, the required sensing-device level should be evaluated.
Step 5. Sensing condition checking The detailed conditions for sensor selection are compared with the system specifications.In this step, use-case analysis is also helpful.
Step 6. List sensor constraints After examining the actual system's use cases and safety viewpoint, the sensing constraints are extracted.
Step 7. Define the applied sensor Considering the above six steps, the sensors for the system are defined.

b. Characteristics of the proposed steps
Many sensors types and physics are available.Thus, it is important to select sensors with a unique procedure without any restriction of sensor types.In the above procedure, sensor-selection sheets are also proposed.Engineers describe and summarize their sensor selection examination or discussion results in these sheets.This makes sensor-selection easier for a less-experienced engineer.These sensor-selection sheets not only contain information from the sensor-data sheets, but also requirements and constraints from the IoT system users' viewpoint.Referring to these sheets, engineers can confirm the reasons for the sensor selection.The detailed notation for the sensor-selection sheets is depicted in the next section.

Case study and Sensor-selection notation
In this subsection, a simple example of the proposed method using a computer-scored answer-sheet reader unit is presented.The example application system automatically reads four figures printed in a bubble pattern on each answer sheet.These four figures show a matriculation number.Each bubble pattern on a sheet is two or three square millimeters, and the four laterally aligned bubble patterns are represented by four figures.The reading unit detects each bubble pattern using a sensor and identifies the colors of the bubble patternwhite or black.Figure 3 shows the example sensorselection sheets for this application.

(1) Steps 1 and 2
In Step 1 and Step 2, as Table .1 shows, we can determine that the sensing target for this system is a bubble pattern printed on answer sheets.We can observe from the sensor-selection sheets that the bubble-pattern size is two or three square millimetres, and its color is white or black.In order to detect the bubble pattern, a visual sensor is the preferred alternative.

(2) Steps 3 and 4
As shown in Table .2,Step 3 includes various types of visual sensor-e.g., a CCD (charge-coupled device) camera, infrared array, color-metric sensor, etc.In the candidate sensor sheets, the comparison and evaluation of each sensor are described from the viewpoints of accuracy, limitation, and stability.For the sensing-device level evaluation in Step 4, the CCD belongs to a physicaldegree sensor and the infrared array is a presencejudgment sensor.The color-metric sensor is a scalemeasure sensor..3, the sensing conditione.g., sensing area, sensing time constraints, detection accuracy, noise-and the sensing constraints-e.g., the privacy, safety, and cost of the sensing unit-are described.Confirming from Figure 3.1 to Figure 3.3, the infrared array sensor is the most suitable sensor for reading the bubble pattern in this system.

Discussion
In this research, referring to the above sensor-selection results, a computer-scored answer-sheet reader unit with an infrared array sensor was actually developed.Reviewing the experimental development, the problems of the proposed method are discussed here.In the systemevaluation phase, the following system problems were confirmed.
There are differences in the bubble-pattern detection rate depending on the environment of the system installation site.
The bubble patterns cannot be properly identified when the answer sheets are slightly out of alignment in the correct position.In the proposed method, a sensor was selected by analysing the system requirement specifications.However, the system environment situation was not considered, because it was not described in the system specification.As a result, a deficient system situation that might not be well handled by the selected sensors could occur.In order to solve these problems, the system's  4 shows, a fault-tree analysis of the target system is an effective tool.The sensor candidates that can respond to the system's invalid behavior are extracted.In the case of the computer-scored answer-sheet reader unit, the most undesirable situation was "Cannot read bubble pattern."This situation is caused by the following three conditions: 1. Incorrect marking, 2. Incorrect answer-sheet setting, and 3. Incorrect environment for the system, or invalid system setting.
Of those, condition 1 is difficult to control with the developed system.However, misclassification of the bubble patterns can be reduced by installing a patterndetection mechanism that uses a sensor to check the sheet's position, or a sensor that evaluates the environmental brightness.

Related work
As for sensor selection, several researches and ideas have been reported.Saini proposed a context based multimedia sensor selection method [3].In the method, sensor for multimedia system is selected by two stages.In the first stage, in order to provide meaningful information for query evaluation, context and availability map are used.
In the second stage, sensors are divided and their priorities are evaluated.The proposed method is quite useful for multimedia system's sensor selection, however, it is insufficient for other types of systems.On the other hand, Cao proposed a multiobjective optimization technique for sensor selection [4].The proposed technique was mainly focusing on Wireless Sensor Network's sensor selection.It provided a simulation model and simulation algorism for sensor selection.This research is also insufficient for applying other system domains, because the proposed simulation model was deeply depend on Wireless Sensor Network.. Elahi proposed a sensor ranking method [5].In the method, single-period-model and multi-period-model for prediction model are discussed.Using their method, suitable sensors are searched with matching a contentbased sensor search.

Conclusion
This paper focused on IoT systems, which have been widely developed and used in recent years.A sensorselection method and a simple application example were introduced to select a suitable system design.The proposed method was a basic idea for selecting a suitable sensor for the system requirements.Sensor selection considerably influenced the system hardware and  software, which provided essential mechanisms for the embedded system.Thus, while considering the sensorselection condition from the system specifications, the sensor's effects on the embedded system's hardware and software should be analysed.
Moreover, skilled engineers are not always in charge of sensor selection.Sometimes, a less-skilled engineer might choose the sensors.Thus, it is important to be able to select appropriate system sensors in spite of the engineer's experience.Therefore, to more intelligently select a sensor, the following information is quite important.
A sensor specification notation which describes the sensor's detailed features; A formal and visualized representation of the sensor information.If these techniques become a practical reality, an automatic sensor-selection system may be realized.

Figure. 2
Figure.2 Sensor selection process flow a. Basic steps

Figure. 3
Figure.3 Bubble patterns on answer sheet

Figure. 4
Figure.4 Fault Tree Analysis for bubble pattern sensing unit