Low.Co.I.N.S.
Low Cost Inertial Navigation System
 

 
 

 

 

About INS

 

Objectives
Project History
Technical Specifications
Experiment Results

 

Support & Facilities

 

Index Home Page

Our Project Team Members Schedule Rexus-Bexus Prog Acknowledgements

 

Objectives

Electronic Design Mechanical Design Thermal Design Mass & Power Budget Software Connections

 

Functional Block Diagram

 

  • Onboard Software

  • List of telecommand

  • Ground Station Software

  • Data Rate & Storage of Data

  • Communication, Data Link & Protocol

  •  

    Onboard Software

    The onboard software is very simple and straightforward. There is a main loop that occur every 50 ms, regulated by a microcontroller timer, that holds all the principal tasks.

     

    The unit has two main state: “Flight Mode” and “Service Mode”. The Flight Mode is the default state. In this mode the unit acquires data from sensors, sends telemetry and writes to memory, if enabled. It is able to receive a limited number of telecommands, and the TC reception is assured by periodically polling the RX buffer. In Service Mode, the unit is able to receive long telecommands for calibrations purposes. In this state the TCs are handled with an Interrupt Service Routine (ISR) because the RX buffer is not big enough to receive the entire TC. This causes the telemetry packet to be corrupted when a TC is sent to the unit, and this is the main reason for the existence of two modes, “flight” and “service”. While in Service Mode, the unit can go to the “memory dump mode” state. In this case the data acquisition is halted until the unit remains in memory management mode.

    There are three interrupt service routines: 

    • Real time clock ISR: the routine is entered to alert the main program that is time to acquire data from sensors. If 20 Hz sampling frequency is selected, the interrupt occurs every 50ms.

     

    • Capture ISR : is an interrupt that occurs every rising edge of the incoming signal from magnetometers. It is used to make frequency measurements of magnetometers output.

     

    • RX buffer ISR: is a routine that store the telecommand when received from e-link and makes it available to the main program for proper handling.

    A C-compiler (CCS) has been used to program the microcontroller.

     

    List of Telecommand

    LowCoINS experiment is able to receive either from e-link serial port or service serial port several telecommands.

    Thermal Control Telecommands

    • TCs regarding TCU are needed to switch the heater on and off manually and set the temperature threshold that trigger the heater switch when the TCU is in automatic mode.

    • Heater On/Off TCs switch the heater on/off regardless the actual temperature read on T0 and threshold temperatures. The Heater will remain in the on/off state until another on/off TC is received. When “Heater Auto” TC is received, the control of the heater is restored to the automatic mode and the heater will be switched on or off accordingly to the temperature thresholds.

    • TLT & THT (Temperature Low/High Threshold) TCs can set the temperature thresholds that trigger the heater switch. The TC is made by a first byte that specifies if the High or Low threshold has to be modified, the second byte specifies the value as two’s complement format over 8 bits, the 3rd byte doesn’t care.

    Calibration Telecommands

    • Automatic Bias Null Calibration
      A single-command, automatic bias calibration measures all three gyroscope output registers, then loads the three bias correction registers with values that return their outputs to zero (null).

    • Precision Automatic Bias Null Calibration
      Another option for gyroscope calibration, which typically provides better accuracy, is with the single-command, precision autonull. This incorporates the optimal averaging time for generating bias correction factors for all three gyroscope sensors. This command requires approximately 30 seconds to complete. For optimal calibration accuracy, the device should be stable (no motion) for this entire period.

    • Manual Bias Calibration
      Using this set of TCs, the user can manually set the bias correction for accelerometers or gyros. The TC format is as follows: 1st byte: set the inertial sensor to be calibrated, 2nd & 3rd bytes specifies the correction value in two’s complement format over 12 bit (accelerometers) or 13 bit (gyros).

    Memory Dump Telecommands

    • Enter memory dump mode
      Makes the unit to enter in memory dump mode; the telemetry transmission is suspended and a synchronization frame is transmitted every second.

    • Read All Memory
      The entire memory is dumped by the unit.

    • Read Bank N
      Only the bank N is dumped.

    • Read bank n, from page m, for k pages
      It allows for read a part of memory bank.

     

    Ground Station Software

    Software for live data recording has been developed using National Instruments Labview 8.5.

    It allows to manage every aspect of LowCoINS experiment:

    ·         Live data recording

    ·         IMU management, sensor sampling rate, digital filtering, calibration and bias set up

    ·         Memory management: memory erase, memory dump

    ·         Thermal control unit management: allows for change temperature threshold that triggers the heater also during the flight, and allows for manual control of the heater.

    ·         Estimated remaining battery charge

    Three different versions have been developed:

    1.      Flight mode: to be used for live data recording during the flight. This version has the ability to send only the TCs needed during the flight, does not have the TCs for the calibration of the unit.

    2.      Service mode: to be used to calibrate the sensors and debug.

    3.      Memory Dump: to be used to read the data from the flash memory and save in the PC.

     

    Below the screenshots of the different software:

     

    LowCoINS GSS Service Mode

     

    LowCoINS GSS Flight Mode

     

    LowCoINS GSS Memory Dump Mode

     

     

    Data Rate & Storage of Data

    In order to have a simpler data acquisition software every measurement is gathered with the same sampling frequency, however only nine measurement are downlinked and saved to memory with this frequency. The packet of data (frame) to be stored in the memory is organized as follow:

    The last three bytes contain cyclically ten different data, the resulting update rate for these measurements is 2 Hz.

    Since the flash memories are organized in 8192 pages of 528 bytes size, each data frame is 24 bytes long, in this way 22 different frames exactly fit the page memory size of 528 bytes. Using four Atmel AT45DB321D 32Mbit memories the total amount of data stored reaches 10 hours of recordings.

    The unit begins to record data in the memory upon reception of the “Start of acquisition” telecommand.

     

    Communication, Data Link & Protocol

    The experiment is connected to E-link TM/TC module through RS-232 interface. The primary function is to downlink data collected to the ground station. The telemetry frame layout is the same as the data frame to be recorded in memory showed earlier. The only difference is the presence of the byte 25 that contains a checksum for error detection. The checksum byte is simply the 8 bits sum of the 24 data bytes.

     

    Serial communication is a standard 9600 bps, 1 bit stop, parity none, no hardware flow control setup. The protocol used to identify each data frame is the DLE-STX/ETX protocol. Each data frame starts with two control bytes DLE-STX (10-02 hex) and stops with DLE-ETX (10-03 hex). If in the data frame any byte is equal to “DLE” (10 hex), then it is sent twice. Adopting these rules, the start and the end of the frame can be recognised by the ground software without errors, as DLE-STX and DLE-ETX sequences can only identify the frame boundary since if they are encountered in the data frame an extra DLE is present.

     

     


    Our Project | Team Members | Schedule | Rexus-Bexus Prog | Acknowledgements

    Objectives | Project History | Technical Specifications | Experiment Results