Home C++ Libraries and Tools Support & Services Company Contact Us
International | AT CH DE

C++ Libraries and Tools

   

Application Example: Distributed Data Acquisition System

The following example shows how a distributed data acquisition system can be built with the C++ libraries and tools from Applied Informatics. The system consists of multiple data acquisition devices connected to a LAN. The devices contain a dedicated small microcontroller that interfaces with ADCs and other sensors, as well as a larger microcontroller running an Embedded Linux system, providing network connectivity. Both are connected with a serial line (UART). The data acquisition microcontroller acquires multiple channels of sensor data in realtime and sends it to the Embedded Linux system. There the data is preprocessed, packaged and timestamped, and sent to a central server. The central server filters the data and stores it for later processing and analysis.

Embedded Data Acquisition Application Architecture

Implementation

The Embedded Linux system runs an application built with the POCO C++ Libraries that interfaces with the data acquisition microcontroller. It receives the sensor data, preprocesses, buffers and timestamps it, and sends it to the central server for further processing. The application has a built-in web server providing a web application for configuring, monitoring and controlling the device. Integrated into the application is also the Applied Informatics UPnP SSDP (Simple Service Discovery Protocol) stack. Therefore, the devices, once powered up and connected to the LAN, are automatically visible in the Network view of Windows Explorer and the device's web interface can be launched just by double-clicking the device's icon. It's not necessary to remember and manually enter IP addresses of the data acquisition devices. This greatly simplifies the set-up of the system.