Original research
Help button for elderly people on the Arduino platform
Botón de ayuda para ancianos de la tercera edad sobre la plataforma Arduino
Botão de ajuda para idosos através da plataforma Arduino
Help button for elderly people on the Arduino platform
Sistemas & Telemática, vol. 16, no. 45, pp. 45-53, 2018
Universidad ICESI
Received: 04 January 2018
Accepted: 04 February 2018
Abstract: The design and implementation of a system capable of providing elderly people with a fast track to ask for help, remotely, to the person in charge of their care, using the cellular network is reported t. The main functionality is a help button, through which the person in charge of the elderly care will receive a text message when the elder presses the button. Recognizing the little connection between the people of this age group with cellular technology, defining the number to which the messages will be sent (and writing them) is not their task. The system has other features of great value, as a group of automatic alarms, also operating via SMS, generated by a group of sensors included in the system, which facilitates remote decision making from caregivers.
Keywords: Elderly care, help button, Arduino, sensors.
Resumen: Se reporta el diseño e implementación de un sistema capaz de proveer a personas de la tercera edad de una vía rápida para pedir ayuda, de manera remota, al encargado de su cuidado, usando la red celular. Se implementó un sistema, cuya principal funcionalidad es un botón de ayuda, mediante el cual la persona encargada del cuidado del anciano recibirá un mensaje de texto cuando el anciano presione el botón. Reconociendo la poca vinculación de las personas de este grupo etario con la tecnología celular, definir el número al que se enviarán los mensajes (y escribirlos) es transparente para ellos. El sistema cuenta con otras prestaciones de gran valía, un grupo de alarmas automáticas, también vía SMS, definidas para un grupo de sensores incluidos en el sistema, que facilita la toma de decisiones de forma remota a través de un SMS.
Palabras clave: Cuidado de ancianos, botón de ayuda, Arduino, sensores.
Resumo: É relatado o desenho e a implementação de um sistema capaz de fornecer aos idosos uma via rápida para pedir ajuda, remotamente, à pessoa responsável pelos cuidados, usando a rede celular. Foi implementado um sistema, cuja principal funcionalidade é um botão de ajuda, através do qual a pessoa encarregada de cuidar dos idosos receberá uma mensagem de texto quando o idoso pressionar o botão. Reconhecendo a pouca conexão das pessoas desta faixa etária com a tecnologia celular, definir o número para o qual as mensagens serão enviadas (e a sua redação) é transparente para eles. O sistema possui outros recursos de grande valor, um grupo de alarmes automáticos, também via SMS, definidos para um grupo de sensores incluídos no sistema, o que facilita a tomada de decisões de forma remota através de um SMS.
Palavras-chave: Cuidado de idosos, botão de ajuda, Arduino, sensores.
I. Introduction
Cuba is among the oldest nations in Latin America. It has 2,158,703 inhabitants aged 60 and over, representing 19.2% of its population, a figure that, according to experts, continues to increase in an accelerated way.
According to the priority that the Cuban State gives to the current problem of its accelerated population, the regular session of the National Assembly, took up the issue of supervision to repair, enlarge and equip elderly homes and grandparents’ houses.
Hence, the State and health authorities design strategies and take actions to ensure that older people are healthier and enjoy a better life quality. Currently, the average survival in Cuba is 78.45 years (Fariñez, 2016).
The Universidad de Pinar del Río is involved in this process. So, in order to improve the life quality of the elderly, it has carried out some research aimed at automating some processes of their daily life. An example is this study, which pretends that the elderly, who are not familiar with the current technologies, can count on a system capable of, at any moment, sending a message to the person in charge of their care, just pressing a button.
II. Materials and Methods
As the main functionality, the proposed system responds to the need exposed, by interconnecting a button to the Arduino Uno programmable board on which a SIM900 GSM / GPRS Shield is already attached. This solution allows the person in charge of the elderly care to receive a previously defined SMS, once the elderly person presses the button, without having to write a text or define a number to send it. It should be noted that the process of defining the number to which the message needs to be sent is totally clear for the elderly.
In addition, the system is able to record several environmental parameters, such as temperature, humidity, and lighting, in order to improve the comfort of the elderly in the room. If any of these parameters are outside the defined range, an alert will also be automatically sent via SMS to the person in charge of caring for the elderly.
This system also allows the person in charge of the elderly care to know all the times and through via SMS, the behavior of each of the variables that are being sensed. After knowing these values, you can act on the equipment designed for the coupling of each of them, remotely, since a relay is used for the control of a higher-level power equipment.
A. Arduino UNO programable board
The Arduino Uno (Figure 1) is a board based on an Atmega328 microcontroller. It has fourteen digital input / output pins (which four can be used for PWM [Pulse Width Modulation] outputs), six analog inputs, a 16 MHz ceramic resonator, a USB type female connector, a jack for power source, an ICSP [In Circuit Serial Programming] connector and a reset button (Guerrero, 2014).

The board has everything necessary to operate the controller (Figure 2), it is simply connected to the computer through the USB cable or an external power source, which can be an AC-DC adapter [Alternating Current - Direct Current] or a battery. It should be noted that, if it is powered through the PC USB, it is not necessary to connect to an external source. To program the board you need the Arduino IDE.

Their characteristics are:
• Microcontroller: ATmega328.
• Operating voltage: 5v.
• Input voltage (recommended): 7 – 12 v.
• Digital input / output pins: 14 (of which six are PWM outputs).
• Analog Input Pins: 6.
• Flash memory: 32 KB (ATmega328) of them 0.5 KB used by boot-loader.
• SRAM: 2 KB (ATmega328).
• EEPRO: 1 KB (ATmega328).
• Clock speed: 16 MHZ.
Arduino is a platform for free hardware and software. Therefore, it is possible to obtain its schematics and its design, and it also has some libraries that are quite enriched thanks to the fact that its community of programmers is growing.
B. SIM900 GSM / GPRS Shield
SIM900 GSM / GPRS (Figure 3, Figure 4 and Figure 5) is an ultra-compact and reliable shield based on the SIM900 chip, 100% compatible with Arduino Uno and Mega. It can work on 850/900/1800/1900 MHz GPRS / GSM frequencies, to make voice calls, send SMS and fax. It has very low power consumption and a very small design with great possibilities.



It is controlled and configured through a UART protocol (Universal Asynchronous Receiver-Transmitter), using AT commands. By default, the UART speed is set to 19200 baud. For this function it has a jumper, in order to select the digital pins through which communication is wanted (D0-D3); on the board there is a switch that allows to select between a UART connection or a debug port, which can be configured for the Arduino as well. The SIM900 can be connected directly to a PC through an FTDI232 chip. One of the most interesting functions is that it has a super capacitor with its own power circuit, which can operate as a RTC and give information about the date and time (PatagoniaTec, 2017).
Their characteristics are:
• fully compatible with Arduino Connection, with serial port;
• Quad-Band 850/900/1800/1900 MHz;
• GPRS multi-slot class 10 / 8GPRS mobile station class B;
• compatible GSM phase 2/2 + Class 4 (2 W (AT) 850/900 MHz);
• Class 1 (1 W (AT) 1800 / 1900MHz) Embedded TCP / UP; and
• supports RTC, consumption of 1.5 mA (susp).
The SIM900 card model that was used does not include the pins to set it up directly on the Arduino, but it will not cause connection problems since it is controlled by UART. Only TX and RX are needed.
For the data transmission between the SIM900 and the Arduino, pins 7 and 8 are used, so it is necessary to ensure that the jumpers of the GSM card are positioned in D7 and D8 to activate these pins (HeTPro, 2017).
C. Sensors
DHT22 temperature and humidity sensor
The DHT22 sensor (Figure 6) is created as a natural evolution of DHT11, with higher temperature and humidity ranges, and more accuracy.

The sensor can be found loose, with a white plastic “case” and four connection pins, or with the same white sleeve, but welded on a plate and with three connection pins, as well as a pull-up resistor (between 3- 6 kΩ) and a filtering capacitor, normally 100 nF (Llamas, 2016A, García, 2014).
Its main characteristics are:
• Power source: 3.3v – 5.5v, tomando como valor recomendado 5v.
• Power source: 3.3v - 5.5v, taking 5v as recommended value.
• Decimal resolution. Humidity and temperature values are numbers with a decimal number.
• Sampling time: 2 seconds, that is, it can only offer data every 2 seconds.
Regarding its benefits, reading temperature:
• Range of values: from -40ºC to 80ºC.
• Accuracy: ± 0.5ºC, ± 1ºC, maximum in adverse conditions.
• Response time: <10 seconds, that is, on average, it takes less than 10 seconds to reflect a real temperature change in the environment.
And its benefits, reading relative humidity:
• Range: from 0 % to 99.9 %.
• Accuracy: ±2 % RH, at a temperature of 25ºC.
• Response time: <5 seconds, that is, on average, it takes less than five seconds to remark a change of real relative humidity in the environment (according to the tests, the air speed must be of 1 m / s for this affirmation).
Flame sensor
An optical flame sensor is a device that detects the existence of combustion from the light emitted by this one. This light can be detected by an optical sensor and captured by the digital inputs and analog inputs of Arduino. Some commercial flame sensors for Arduino are shown in Figure 7.

The flame is a phenomenon of light emission associated with combustion processes. Combustion is a process that releases large amounts of energy in a heat form. During the reaction, intermediate compounds are generated that release part of their energy through the emission of light.
The spectrum of flame emission depends on the elements that intervene in the reaction. In the case products combustion with carbon in the presence of oxygen, two characteristic peaks are presented in ultraviolet, in 185nm-260nm wavelengths, and in infrared, in 4400-4600nm wavelengths (Llamas, 2016B).
Flame sensors are widely used in the industry. Many machines execute processes that are liable to generate flames, such as, for example, machining or electro-erosion processes. Frequently they are carried out in the presence of combustible elements, such as oil or shavings.
Flame sensors are incorporated as safety devices that allow stopping the process in case of detecting any sign of combustion. These devices adjust to the wavelengths characteristic of the flame appearance and usually combine ultraviolet and infrared signals.
The electrical diagram is simple, the module is powered by connecting GND and 5V to the corresponding Arduino pins. Now, if you want to use digital reading, you can connect the DO output to one of the Arduino digital inputs; if you want to use the analog value, simply connect the AO output of the sensor to an analog input of Arduino (Prometec, 2016).
Magnetic sensor for windows and doors
The magnetic sensor for windows and doors (Figure 8) consists of a magnet and a reed switch (magnetic switch). This sensor works like a normally open switch (while there is a magnetic field). When the door or window is opened, the electrical circuit closes and it is possible to detect the respective opening. The sensor comes completely sealed in plastic which makes it extremely resistant (“Sensor ...”, 2017).

The connection with other systems is made by cables that are previously installed in the sensor and that will have to be connected with a longer cable. The assembly on the door or window can be done with self-adhesive tape (included) or with screws for a better attachment.
III. Results
The implementation of the system, taking into account the characteristics and the interconnection of each of the components described with the Arduino UNO, is shown in Figure 9.

Besides the help button, its main functionality, the system has other great benefits. In the case of a group of alarms, also via SMS, fully automatic, which attends each of the thresholds values that are defined for each of the sensors used in the system:
• When the temperature exceeds 32˚C and or decreases from 20 ˚C;
• when the relative humidity goes out of the range between 40 and 60 percent;
• when any of the doors or windows are opened;
• when the light of the room changes its state; and
• when some type of infrared component is detected, mainly fire.
Using the cellular network, through a text message, you can know the status of each of these variables, at any time:
• Check the temperature and humidity value;
• check the status of doors and windows; and
• know if the light is on or off.
The system also facilitates decision making through a text message:
• If the temperature or humidity are not at the desired value, an SMS can be sent to turn on the equipment that can affect these parameters; and
• the light status can be modified, in order to influence the lighting parameter.
IV. Conclusions
The implementation of this system aimed at helping elderly people provides a fairly complete and fully functional prototype is obtained for its execution, by any person who needs to maintain control of the room parameters where there is an elderly person under his care and who can have a way to ask for help as simple as possible, including any home for the elderly or grandparents, taking into account that in this variant could change the platform of communication for a more economical one like Wi-Fi.
References
Fariñez, G. (2016, July 8). Envejecimiento poblacional en Cuba: prioridad parlamentaria. Revista Mujeres. Retrieved from: http://www.mujeres.co.cu/art.php?MjQ3NA==
García, A. (2014, Feb. 8). DHT22: Sensor de humedad/temperatura de precisión para Arduino. Retrieved from: http://panamahitek.com/dht22-sensor-de-humedadtemperatura-de-precision-para-arduino/
Guerrero, J. (2014, Sept. 21). Arduino Uno: especificaciones y características. Retrieved from: http://arduino.cc
HeTPro. (2017, Sept.). SIM900 GSM GPRS shield con arduino uno. Retrieved from: http://www.instructables.com/id/SIM900-GSM-GPRS-SHIELD-CON-ARDUINO-UNO/
Llamas, L. (2016a, July 1). Detector de llama con Arduino y sensor infrarrojo. Retrieved from: https://www.luisllamas.es/detector-llama-arduino/
Llamas, L. (2016b, March 29). Medir temperatura y humedad con Arduino y sensor DHT11-DHT22. Retrieved from: https://www.luisllamas.es/arduino-dht11-dht22/
PatagoniaTec. (2017, Nov.). GPRS/GSM Shield SIM900. Retrieved from: http://saber.patagoniatec.com/gprsgsm-shield-sim900-arduino-argentina-ptec-elecfreaks/
Prometec. (diciembre de 2016). Detector de llama: Arduino y los sensores de fuego. Retrieved from: https://www.prometec.net/detector-llama/#
Sensor magnético para ventanas y puertas (2017). Retrieved from: https://www.geekfactory.mx/tienda/sensores/sensor-magnetico-para-ventanas-y-puertas/
Author notes
Ingeniero en Telecomunicaciones y Electrónica de la Universidad de Pinar del Río “Hermanos Saiz Montes de Oca” [UPR] (Cuba, 2016). Profesor del Departamento de Telecomunicaciones y Electrónica de la Facultad de Ciencias Técnicas de la UPR desde 2016. Ha impartido las asignaturas de Conmutación Telefónica y Telefonía IP. Ha indagado en temáticas como la síntesis de voz y los codificadores de banda ancha. Investiga en las áreas de: automatización de procesos, sistemas de ayuda y alerta temprana para ancianos de la tercera edad, e implementación de centrales telefónicas VoIP con Raspberry_Pi.
Ingeniero en Ciencias Informáticas, graduado en Universidad de las Ciencias Informáticas [UCI] (Cuba, 2008); Especialista B en Ciencias Informáticas en la Dirección de Informatización de la UCI (2008-2014); Especialista B en Informática en el Departamento de Informática perteneciente a la Dirección Provincial de Deportes en Pinar del Río (Cuba); profesor Instructor del Departamento de Informática de la Universidad de Pinar del Río “Hermanos Saiz Montes de Oca” (desde 2016). Sus áreas de interés profesional incluyen: administración de servidores en la nube; desarrollo de aplicaciones web en Symphony, Laravel y Java; desarrollo de sistemas de gestión documental y archivística en Alfresco; y desarrollo de aplicaciones Android para dispositivos móviles.
Técnico Medio en Informática (2013). Se desempeña como técnico informático en la Universidad de Pinar del Río “Hermanos Saiz Montes de Oca” [UPR], donde es estudiante de tercer año de Telecomunicaciones. Sus áreas de interés son: el desarrollo de aplicaciones con lenguaje de programación C++, la programación web, la programación para dispositivos móviles y el desarrollo de sistemas automatizados mediante las plataformas Arduino y Raspberry Pi.