Locations

Globo-Daq

 
System Design | Methodology Implementation
Update #10116  |  06 Oct 2014
 

 

Following the methodology described in the last update, we proceed with its implementation.

 

1. Context Description

This project in collaboration with the company Toradex AG, aim to develop a data acquisition system of environmental data and positioning, during a hot air balloon flight. Offering to the user different possible applications where the data obtain can be used, for example, back –up of an existing flight instrument, weather conditions monitoring, among others that could require this kind of data.

An initial set of functional requirements was provided at the beginning, here are the most relevant:

  • Record position - 3D tracking (Latitude, altitude, longitude).
  • Record physical variables ( e.g. barometric pressure / temperature / r.H).
  • Record Live pictures.
  • Analyze all the data (position, physical variables and live pictures) recorded and transmitted to a data server via GPRS/GSM.
  • Display the live and recorded data on Maps/Pictures and diagrams.
  • Provide offline storage of the data recorded.

As well a list of hardware constraints:

  • Main computer unit is the ColibriT20 module on an Iris Carrier board.
  • GNSS module on an UART interface, and NMEA protocol.

The diagram below is a shows a representation of the system context.

Context Diagram

 

1.1  System stakeholders

Following guidelines in [1]. The next table list the systems stakeholders with a short description of their interest.

Stakeholder

Comments/Interest

ALaRI – USI Lugano

Reliable system and design methodology implementation

Toradex AG

Module Colibri T20 must be the system control unit.

Toradex AG provide the main set of systems requirements.

Ground-based user

Wants a friendly user interface, complete analysis of the data, reliable communication.

Hot air balloon – based user

Full data storage.

 

2.      Requirements Engineering

The starting point for this phase of the design are the set of functional requirements provided by Toradex AG, defining the main guidelines and constraints for the project. Having reviewed and analyzed it, the following requirements where extracted.

 

2.1 Main functional requirements

The following list summarize the main requirements of the system:

  • Obtain the hot air balloon position (Longitude, Latitude, Altitude and timing).
  • Measure weather conditions around the hot air balloon, such as barometric pressure, temperature and Humidity.
  • Obtain pictures take it from the hot air balloon.
  • Reliably communication via GSM/GPRS to provide live data to a server.
  • Reliable storage of captured data (position, weather and pictures.
  • Offer to the user a live track data on map and pictures through a website.
  • Perform and show different data analysis via diagrams, e.g. speed vs. time.

 

2.2  Hardware Requirements

The following list summarize the hardware requirements of the system split it into module :

  • Computer Module: The computer module that shall be used is Colibri T20, which will the core of the system based on a NVIDIA Tegra 2, ARM Cortex – A, mounted on an Iris Carrier Board, supplying all the peripheral connections , Toradex Products.
  • The whole electronic must be mounted in a case with a protection of at least IP 64.
  • The power supply should be through a battery which is mounted inside the case. It shall be possible to charge the battery with a connector on the case.
  • GNSS module: should use a UART Interface for communication and the protocol used must be NMEA.
  • Temperature and humidity sensor: should measure the temperature and humidity around the hot air balloon.
  • Barometric pressure sensor: should measure the barometric pressure in order to calculate the hot air ballon altitude.
  • Camera:  Standard USB webcam, with an easy holder mount. The main module (Colibri T20) should acquire pictures, add time/location to the EXIF data and store the pictures on the micro SD card.Offline Data Storage Module: Shall storage all produced files, tracks or photos in a micro SD card on the computer module (Iris Board), allowing easy access to the data offline.
  • Offline Data Storage Module: Shall storage all produced files, tracks or photos in a micro SD card on the computer module (Iris Board), allowing easy access to the data offline.
  • GUI/Data Module:  Should show all the data obtain from the navigation module in a friendly way for the user, through a website. E.g follows the flights on Google maps, plot of the different weather variables during the fly.

  • Development module:   Should be the main interface between the whole system and its development.

  • Power source module: This module should supply enough power to the system in order to operate correctly.

  • HMI module: Shall consist in a power button/switch and the LEDs on the Iris to show if power is on or off. The DVI connector on the Iris must be accessible for development or service. The debug UART & USB client connector on the Iris should be accessible for development or service. This may only be possible when the case is open but it should not be necessary to disassemble everything.

  • GUI/Data Module:  Should show all the data obtain from the navigation module in a friendly way for the user, through a website. E.g follows the flights on Google maps, plot of the different weather variables during the fly.

  • Development module:   Should be the main interface between the whole system and its development.
  • Power source module: This module should supply enough power to the system in order to operate correctly.
  • HMI module: Shall consist in a power button/switch and the LEDs on the Iris to show if power is on or off. The DVI connector on the Iris must be accessible for development or service. The debug UART & USB client connector on the Iris should be accessible for development or service. This may only be possible when the case is open but it should not be necessary to disassemble everything.

 

2.3  Software Requirements

The following list summarize the software requirements of the system.

  • The software deploy on the Colibri T20, should provide:
    • Starting up the communication between GNSS module, sensors, camera, GPRS/GSM module and the computer on module – Colibri T20.
    • Implementation of an internet connection for the module Colibri T20 via GPRS/GSM.
    • Implementation of the following tasks: reading, analyzing, saving and transmitting the data. For each acquisition component (Sensors, GNSS module and Camera).
    • Synchronization between reading, analyzing, saving and transmitting the data via GPRS/GSM module.
    • Implementation of several message-status to assure that different tasks (reading, analyzing, saving and transmitting) has been reached.
    • In case of a lost connection between any acquisition component and the computer on module – Colibri T20, the system emits a message reporting the event.
    • In case of an internet connection lost, the system should queue the data and retransmit it once the connection is restored.
    • The reading tasks take into account the different protocol and interfaces managed by each acquisition component, and obtain the data for the analyzing task.
    • The analyzing tasks receive different data structures depending of the source, and perform different operations and calculations in order to obtain the values to display and analyze.
    • The saving tasks storage on micro SD card, the values (temperature, humidity, pressure, longitude, altitude, time, latitude) once these are calculated.
    • The transmitting tasks are in charge to take the data once it is save and transmit it to the data server, using FTP to upload, access and modify the files on the sever.
    • Receive the pictures from the camera and add time/location, save it and transmit it.
  • The website implementation should offer a graphical user interface which display live and recorded data:
    • Position representation: map, box displaying # of satellites.
    • Temperature representation: Diagram (temp vs time) and/or gauge plot.
    • Pressure, altitude and humidity representation: gauge plot.
    • Analyzing representation: different diagrams such as speed vs. time, altitude vs. time.
    • A media library should offer the pictures taken, organize by location and time.
    • Data server:  File transaction protocol (FTP) and reliable connection.

     

2.4 Requirements diagram

Once we have extracted these requirements we proceed with the requirements diagram, below is presented a general view summarizing all the system requirements:

 

Requirements DiagramsRequirements diagram general view

 

Requirements Diagram Description Requirements diagram

 

3.     Use Cases Definition

Finished the requirements analysis, we continue with the actor identification. The actor that interact with the system are:

  • Pressure sensor.
  • Temperature and Humidity sensor.
  • Camera.
  • GNSS module.
  • ColibriT20.
  • Communication module.
  • Data server.
  • GUI- Website.
  • Power Source.
  • Offline Storage – Memory.

Actors

Once the actors are defined, we continue with the use cases (UC) definition.  The main use cases identified based on the requirements extraction, are:

  1. Positioning: Provide the hot air balloon positioning, through the data obtained from the GNSS module. Such a data is saved and transmitted to the data server, in order to be displayed in a map via the GUI.
  2. Environmental Measures: Provide temperature, humidity and barometric pressure measures, through the data obtained from the different sensors. Such a data is saved and transmitted to the data server, in order to be displayed in diagrams via the GUI.
  3. Live pictures: Provide temperature, humidity and barometric pressure measures, through the data obtained from the different sensors. Such a data is saved and transmitted to the data server, in order to be displayed in diagrams via the GUI.

Below is the use case (UC) high level diagram, introducing all the three main cases. After is presented each use case in detail.

UC - High level

UC - Positioning Diagram

UC - Environmental Measures Diagram

 

UC - live pictures diagram

 

4.      System Modeling

Throughout this point will be develop different diagrams where it can be seen the recursion between modeling behavior and structure.

 

4.1   Sequence Diagrams (SD)

Once defined and identify the use cases, we proceed with the scenarios definition through the interaction description between the system and its actors [1].

SD - Environmental Measures

SD - Position

SD – Pictures

In the diagrams exposed above, it is shown with more detail the interaction between the actors and the systems, also the sequence of the actions created based on the requirements.

 

4.2 Block Definition diagrams (BBD)

We continue with the structural representation, via BDD defining the components of the system as blocks, its relation with others components (blocks) and its association with a port.

BDD - Diagram

The block description is presented below:

  • MCU ColibriT20: This module performs the data acquisition, processing and delivery of the tracking, location, images and other services of Globodaq. The computer module that will be used is Colibri T20, system based on a NVIDIA Tegra 2, ARM Cortex – A9, mounted on an Iris Carrier Board, which will supply all the peripheral connections, Toradex Products. 
  • GNSS module: This module provides all the information about the hot air balloon location. It will be used a GPS Module to get the latitude, longitude, time.  The data will be transmit through UART Interface, the protocol used will be NMEA.
  • Pressure sensor: Perform the measure of the atmospheric pressure.
  • Temperature and humidity sensor: Perform the measure of the atmospheric pressure.
  • Camera:  Will be used a standard USB webcam, with an easy holder mount to take pictures.
  • Offline Data Storage: This module is used to storage all produced files, tracks or photos are on a micro SD card on the computer module (Iris Board), allowing easy access to the data offline.
  • Communication Module: This module will be in charge to receive the data from the Colibri T20 and transmit it to the data server via GSM/3G/4G connection.
  • Data Server: This module hosts the website and the data coming from the Colibri T20.
  • GUI Website: This module shows all the data obtain from the GNSS module and sensors and processes by the MCU, in a friendly way for the user. E.g follows the flights on Google maps, plot of the different measures during the fly.

 

4.3  Internal Block Diagram

Once the block are defined we proceed with a more detailed structure using the IBD, which captures the internal structure of a block in terms of properties and connectors between them [2].

IBD - System

 

4.4  State Machine Diagrams

We proceed with the behavior description of each block using state machine diagrams (SMD). Based on the behavior already presented in the sequence diagrams, and the structure in the block definition diagrams and internal block diagrams.

SMD – MCU

SMD – Temperature and humidity sensor

 

SMD – Pressure sensor

 

SMD – GNSS Module

 

 

SMD – Offline Memory

SMD – Communication module

 

SMD – Data server

 

SMD – GUI Website

Finally with theses state machine diagrams we conclude the modeling behavior and structure of the system, leaving open the possibility to add more diagrams if is necessary to complement the design process.

In the code generation stage we will take advantage of all the system modeling performed, starting from a system structure and behavior well defined in this design phase.

 

References

[1] T. Weilkiens. Systems Engineering with SysML/UML: Modeling, Analysis, Design. Morgan Kaufmann OMG Press, 2007.

[2] Igor Kaitovic and Mauro Prevostini, UML-SysML for SoC Design, ALaRI USI Lugano, 2012

 

 More info www.globodaq.co

 

gmail       pinterest   twitter   wordpress     

 

Comments