Student Conference on Computer Science Erfurt University of

advertisement
Student Conference on Computer Science
Erfurt University of Applied Science
Telemetry data receiving and processing using single-board computer
running QNX OS
ODESSA NATIONAL POLYTECHNIC UNIVERSITY
1 Shevchenko Ave
65044
Filiahin Denys
Ilfa and Petrova str.,35a
65104
2015
Advisors:
Ukraine: Chervonenko Petr
Canada: Ivan Lobachev
1
Student Conference on Computer Science
Erfurt University of Applied Science
Abstract
In this project we improved our skills in teamwork and learned how the real
development occurs. We developed and tested a simplified model of the Internet
of Things on the basis of Beaglebone single-board computer running QNX and
wearable devices with Pebble OS, which communicate to each other via
Bluetooth interface.
2
Student Conference on Computer Science
Erfurt University of Applied Science
Abstract ............................................................................................... 2
Table of contents ................................................................................. 3
1 Introduction....................................................................................... 4
2 Wearable Telemetry Monitoring System............................................ 4
Figure 1: Gateway ............................................................................ 4
3 Development .................................................................................... 5
3.1 GPS............................................................................................ 5
3.2 Wireless connection .................................................................... 6
List of references ................................................................................. 7
3
Student Conference on Computer Science
Erfurt University of Applied Science
Introduction
In addition to studying at the University students should take part in various
projects, developments and events. This helps them to acquire important
teamwork skills and to learn about the newest technologies. For example, about
the Internet of Things (IoT).
IoT is a developing area of the information technology industry and electronics
market. Many breakthroughs have occurred and continue to occur to make the
system of gateways, servers, routers and individual sensor nodes work well
together. The goal is to be efficient in terms of both power and data transfer.
The things in IoT share five key components: the need for smarter power
consumption, storage, and management; the need for stronger safeguards for
privacy and security; high-performance microcontrollers (MCUs); sensors and
actuators; and the ability to communicate.
Wearable Telemetry Monitoring System
Within the International IT startup school second grade students of the ONPU
were offered to participate in some project. We were supposed to create some
kind of a simplified model of the Internet of Things.
The goal of the project was to develop and implement the Wearable Telemetry
Monitoring System with a Data Gateway driven by RTOS QNX 6.6, as can be
seen in Figure 1.
Ga tew ay
GP S Receiver
(Telem etry d ata)
US B po rt
TI Beagle Bone
(Controller)
Q NX 6.6
Serial port
US B Serial
con nection
Peb b le
Sm a rtw a tch
B lu eto oth
st ack
US B po rt
Figure 1 Gateway
4
Student Conference on Computer Science
Erfurt University of Applied Science
Development
The development was divided between two teams.
One team was supposed to implement a Gateway based on TI Beagle Bone
driven by QNX which served as a controller.
Another team was creating a user-friendly application to represent the received
information on the Pebble Smartwatch.
As a member of the first team, I would like to represent our part of the project.
On the first step, we made the QNX to receive the telemetry data. QNX Neutrino
is a real time operating system (RTOS). It is based on the microkernel concept,
so the minimum configuration requires a small amount of resources. This makes
it suitable for installation on a single board computer.
QNX Momentics IDE gave us an opportunity to create our own disk image to boot
and run on TI BeagleBone. It was possible to manage the BeagleBone by
providing the SSH connection.
BeagleBone has a Sitara ARM Cortex-A8 processor running at 720 MHz. The
advantage of ARM processors is low power consumption. Since the IoT devices
supposed is to autonomously operate for a long time, energy consumption plays
an important role. BeagleBone also features 256 MB of RAM, two 46-pin
expansion connectors, on-chip Ethernet, a microSD slot, and a USB host and
multipurpose device port which includes low-level serial control and JTAG
hardware debug connections, so no JTAG emulator is required.
GPS
The GPS receiver provided a constant flow of telemetry data of the location. The
data exchange was implemented using standard protocol NMEA 0183. It was
done through a USB connection which first needed to be converted to a serial
connection prior to processing the information. QNX for Beaglebone included a
serial port driver, named devc-serusb. We started it, entered the parameters and
got a device, which we were able to read, as a file in our program. Then we wrote
a C-program, which received stings like this one:
$GPRMC,125504.049,A,5542.2389,N,03741.6063,E,0.06,25.82,200906,,,*17
5
Student Conference on Computer Science
Erfurt University of Applied Science
It is a standard protocol NMEA 0183. First is a source (a satellite), then UTC
time, status, latitude (North, South), longitude (East, West), horizontal component
of speed, track angle, date and checksum.
The program parsed the information from the string into the structure. The
selected data was stored and organized on the controller using a database
named QDB, and relevant information was sent to the wearable device upon
request. The remainder of data was used for statistics, logging or in the case that
the user requested all of the information within a certain time period.
Wireless connection
The smartwatch wirelessly requested and received the information via Bluetooth
communication channel. Due to the fact that there is no Bluetooth driver available
which could be used for such an application, it was implemented as part of the
project. In order to do this, the driver was built on the already available Host
Controller Interface (HCI) for QNX as a base, and required the adaptation of a
Serial Port profile (SPP) as well as a Bluetooth stack. This driver was added to
the others on the board and allowed the BeagleBone to communicate wirelessly
with the wearable device.
The data was received by another team, so it is the time for the member of the
second team to tell about their part of the project.
6
Student Conference on Computer Science
Erfurt University of Applied Science
Bibliography
1) QNX Software Systems Limited, "QNX Neutrino RTOS System
Architecture," QNX Software Systems Limited, Ottawa, 2014.
2) QNX Software Systems Limited, "Building Embedded Systems," QNX
Software Systems Limited, Ottawa, 2014.
3) Oleg Logvinov, IEEE P2413 Chair Electronic Design, Open Standards
Will Enable the IoT’s Growth, Sep 11, 2014.
7
Download