Appendix A. Finding sensors

In order to find the desired sensor, there needs to be a way to specify what kind of sensor the application is looking for. In this API there are two qualifiers for this purpose: the quantity and the context type. They form the basis of the sensor ontology of this API. The application can use either one independently or specify both. When used together, the both must match.

Context types categorize sensors into four groups:

  1. ambient, sensors measuring some ambient property of the environment

  2. device, sensors measuring properties related to the device

  3. user, sensors measuring some function of the user

  4. vehicle, sensors measuring properties related to a vehicle

By using context types, it is possible to find, for example, user-related sensors for fitness, or ambient sensors for smart home controlling. Although the granularity of this level does not qualify the sensors very precisely, still in some cases it provides the way to make the distinction, for example, cf. air thermometer (ambient) / clinical thermometer (user).

The quantity provides a more precise qualifier. The unit and the quantity has a close relation. Some quantities are listed in tables of Unit class. When the quantity and context type is known, it is often easy to guess the full purpose of the sensor. Some examples are given here:

    Quantity: electric_current + context type: ambient = 
    sensor measuring electric current, amperemeter

    Quantity: catalytic_activity + contex type: ambient =
    sensor measuring catalytic activity
    

Sensor examples

To help the user to find the sensor, some ready made combinations and the sensor following from the definition, are presented here.

Table A.1.  Examples of defining sensors with quantity and context type

Sensor

Quantity

Context type

accelerometer

acceleration

user

alcometer

alcohol

user

altimeter

altitude

user

ambient light sensor

ambient_light

ambient

amperemeter

electric_current

ambient

anemometer

wind_speed

ambient

barometer

pressure

ambient

battery charge level sensor

battery_charge

device

blood pressure meter

blood_pressure

user

clinical thermometer

temperature

user

clock, time gauge

time

ambient

compass

direction

ambient

fingerprint sensor

fingerprint

user

flip state sensor

flip_state

device

GPS

location

user

heart rate sensor/RR interval

heart_rate/RR_inteval

user

humiditymeter

humidity

ambient

illuminance sensor

illuminance

ambient

"is charged" sensor

is_charged

device

joystick

direction_of_motion

user

keyboard

character

device

luminance sensor

luminance

ambient

microphone

sound_intensity

ambient

milometer

length

ambient

mouse

direction_of_motion

user

network field intensity indicator

network_field_intensity

device

orientation sensor

orientation

device

power sensor

power

ambient

proximity sensor

proximity

ambient

radiation sensor

absorbed_dose

ambient

respiration sensor

respiration

user

rotation sensor

rotation

device

scales

mass

user

sensor measuring user's blood glucose level

blood_glucose_level

user

sensor measuring user's blood oxygen saturation

blood_oxygen_saturation

user

sensor measuring user's fat percentage

body_fat_percentage

user

sensor measuring user's gestures

gesture

user

skin conductance sensor

skin_conductance

user

step counter

step_count

user

teslameter

magnetic_flux_density

ambient

thermometer for air

temperature

ambient

tilt angle sensor

angle

device

velocimeter

velocity

user