BARNARD MICROSYSTEMS LIMITED

helping you keep an eye on things...

   
     
Home / unmanned air systems / issues / command + control
   

 

   
Home | introduction | circuit design software | unmanned air systems | contact | what's new | site info
   
 

 

   

unmanned air ...

features 
issues 
applications I 
applications II 
geological survey 
oil leakage 
engines 
avionics 
airframes 
payload I 
payload II 
data processing 
milestones 
calendar 
reference 
 

issues

air worthy 
air traffic control 
sense and avoid 
command + control 
scenarios 
safety 
accidents 
reliability 
automation 
all weather 
test sites 
environment 
terrorism 

 

 

Unmanned Aircraft Command and Control

- from 1033_paparazzi.pdf

   

 

Beyond-Line-Of-Sight (BLOS) Unmanned Aircraft control

In the command and control system shown next for use on small Unmanned Aircraft, several important features are supported:

  • we use a 9,600 bps, duplex, satellite link which can be implemented using a small, light, relatively inexpensive satellite phone modem. This link is used for the duration of the flight. See comms BLOS.
  • Air Traffic Control (ATC) messages picked up on the VHF frequency band are digitally encoded, for example, using the Code Excited Linear Prediction (CELP) algorithm at 4,800 bps and are switched by SW1 in the diagram below to the multiplexer, which combines the FEC coded status message data with the digitised ATC voice and sends this information to the satellite modem for transmission to the satellite. SW1 is controlled by the Received Signal Strength Indicator (RSSI) from the VHF receiver, so the switching of Tx CH B from video line scan data to ATC voice data is immediate on detection of voice data.
  • In the absence of any ATC voice data, SW1 switches in video line scan data at 4.8 kbps (600 pixels x 8 bit mono imagery) derived from a 640 x 480 pixel imaging array. One line is sent every second to enable the Ground Control Station (GCS) to build up a strip map showing the progress of the UA.
  • On the uplink from the GCS to the Unmanned Aircraft, 4,800 bps of the 9,600 bps duplex data rate is used for direct UA control, which might be in response to an ATC request or order. In order to make it more difficult for an unauthorised person to gain control of the UA, this data is encrypted with a lossless encryption algorithm, and then coded with Forward Error Correction (FEC)  at the GCS, so FEC decoding followed by decryption must be applied in the Unmanned Aircraft receiver.
  • a unique, contiguous, message numberGPS synchronised, UTC timedate must be included in each uploaded flight plan update message, in each UA remote control message and in each UA status message download to avoid what is referred to as a "spoofing" attack in which a copy of an earlier message is inadvertently, or deliberately, transmitted to the UA, or, to the GCS.
  • SW2 is used to switch the Channel B data received between digital-to-analog conversion of the digitally encoded voice data reply to the ATC and the flight plan update system. The control of SW2 is both by the VHF Receiver and by the Aircraft Remote Control, with the Aircraft Remote Control having priority.
  • Again, to make it more difficult for an unauthorised person to gain control of the Unmanned Aircraft, the flight plan update information is both encrypted with Forward Error Correction applied at the GCS, with FEC decoding being applied on the UA to retrieve the original data.
  • One of the advantages of applying FEC to both the status messages from the UA to the GCS and the flight update plans and the UA remote control commands from the GCS to the UA is that the Bit Error Rate of the duplex communications link can be continuously monitored by tracking the number of errors detected by the FEC data processing.

Diagrammatic view of the duplex, 9,600 bps, communication channel

In summary, the single 9,600 bps duplex channel is used to:

  • relay voice communications from FIS-B to the GCS
  • relay duplex voice communications to and from the Tower, an ATC_1 centre and an adjacent ATC-2 centre;
  • support the download of progressive line scan imagery when voice channel 1 relay is not in use
  • support the download of Unmanned Aircraft status messages sent from the UA to the GCS at a rate of 1 message per second
  • support the upload of UA configuration control commands and flight plan change commands
  • support the remote control of the Unmanned Aircraft from the GCS

The Rx signal summing, Tx signal switching, section

The Rx and Tx data multiplexing, front-end, section

return to top

Bandwidth required for Unmanned Aircraft operations

- from http://www.caa.gov.au/pilotcentre/projects/vhf25khz/Discussion_paper_25_kHz_channel.pdf

  • We have demonstrated that the Unmanned Aircraft Status Message can be less than 4,800 bits in size. We envisage an always-ON link over which one status message per second is sent from the Unmanned Aircraft to the Ground Control station.
  • We sum the three voice channels picked up by the three VHF receivers on the Unmanned Aircraft and then digitise (for example, using the CELP algorithm) the resultant voice signals to a 4,800 bps data stream. The voice channels correspond to:

TOWER or FIS-B (Flight Information Service - Broadcast)

ATC_1 centre = an arbitrary ATC centre

ATC_2 centre = an adjacent ATC centre

  • We need to be able to transmit three channels (forward left, forward and forward right) of video information when the Unmanned Aircraft is on the ground to enable the remote pilot to steer the Unmanned Aircraft on the runway, and avoid all obstacles (including other aircraft). The video cameras need to convey at least the same visual information as seen by a real pilot, that is +/- 115 degrees azimuth and +/- 15 degrees in elevation. Hence the need to use three cameras. These same three cameras can be used by an on-board sense and avoid system, although the video signals will not be transmitted back to the GCS once the Unmanned Aircraft is in the air due to the extreme bandwdth requirements for such a transmission.

return to top

LOS bandwidth required for Unmanned Aircraft operations

We assume the use of an efficient modulation scheme, such as GMSK or QPSK to achieve a modulation efficiency in excess of 1 bit/s/Hz:

modulation scheme

modulation efficiency

in bits/s/Hz

comments

GMSK

1.35

Gaussian Minimum Shift Keying

frequency shift keying used in GSM 900 / 1800

QPSK

1 - 1.6 (typ)

2 (max)

quaternary (4) PSK

The suggested bandwidth requirement for each Unmanned Aircraft is shown next.

  • remote control = Unmanned Aircraft remote control, typically on take-off, landing and in an emergency
  • FPU = Unmanned Aircraft Flight Plan update

So, from the above, one can support the Command and Control communications (apart from the video data required at take-off and landing, including emergency landing)  for 80 Unmanned Aircraft per MHz of bandwidth. Since one might like to use a LOS link to an aircraft at Flight Level 600 (= 60,000 ft = 18.3 km) one would define a LOS distance of at least 20 km.

Since the video transmission will only occur when the aircraft is moving relatively slowly at take-off and landing, one could use the high fidelity COFDM modulation format as used in DVB-T (Digital Video Broadcasting-Terrestrial) which has a bandwidth of 8 MHz (actually, 7.61 MHz + guard band). This modulation scheme is sensitive to Doppler shift, and degrades when the speed difference between the transmitter and the receiver exceeds 185 kph.

The license free, 5.8 GHz Industrial, Scientific and Medical ("ISM") band, is a large, contiguous, 125 MHz band stretching from 5,725 MHz to 5,850 MHz. It appears that manufacturers have selected bands in the 5.8 GHz ISM band to suit their communication system technology. One could support up to 5 Unmanned Aircraft, each using three video channels, in the ISM band at 5.8 GHz.

return to top

BLOS bandwidth required for Unmanned Aircraft operations

In the Beyond-Line-Of-Sight situation, the Status Messages and the digitised Tower, ATC_1 and ATC_2 data is send using a modem via a satellite link with a GSM back-up link. Again, as in the LOS situation, we will assume the use of an efficient modulation scheme, such as GMSK or QPSK to achieve a modulation efficiency in excess of 1 bit/s/Hz.

Again, as in the LOS case, one can support the Command and Control communications (apart from the video data required at take-off and landing, including emergency landing)  for 80 Unmanned Aircraft per MHz of bandwidth. However, in this BLOS case, the number of Unmanned Aircraft that need to be supported are those that will fall within the antenna footprint of the satellite.

For the video data transmission via a satellite link, we have suggested the use of MPEG-2 video compression in which a 720 x 480 pixel frame at a rate of 30 frames per second requires a bit rate of about 4 Mbps. Again we assume the use of an efficient modulation scheme, such as QPSK, GMSK or better, to achieve 1 b/s/Hz or better. This will allow each MPEG-2 video channel to be squeezed into a 4 MHz band, including guard band.

It is suggested that the amount of satellite bandwidth required for video data transmission required during take-off and landing, including emergency landings, is 4 + n x 4 MHz, where n = the number of Unmanned Aircraft taking off and landing within the antenna footprint of the satellite. 

return to top

Example of a UAS Status Message Syntax

Here is the message syntax used at Barnard Microsystems for the status message transmitted at regular intervals from the Unmanned Aircraft to the Ground Control Station via a GSM modem or satellite phone modem based Beyond-Line-Of-Sight ("BLOS") communications link. See comms BLOS .

The compact binary implementation of this format is shown in the Status Message section.

  • The status message consists of a set of data blocks, each block beginning with the BEGIN keyword SectionName, and ending with an END keyword.
  • The data items are listed between the BEGIN and END keywords.

BEGIN SectionName_01

MessageItem_01 ItemValue_01

MessageItem_02 ItemValue_02

END

  • A comment can be included after the exclamation mark.
  • A sub-section can be nested within a section, with the sub-section also starting with a BEGIN SubSectionName and ending with an END keyword.

BEGIN SectionName_01

! comments can be added after an exclamation mark

MessageItem_01 ItemValue_01

BEGIN SubSectionName_02

MessageItem_03 ItemValue_03

MessageItem_04 ItemValue_04

MessageItem_05 ItemValue_05

END SubSectionName_02

MessageItem_02 ItemValue_02

END

  • Section names can be added, or omitted.

The main section names are as follows:

Header

Status message header

IMU

Inertial Measurement Unit information

FCU

Flight Control Unit parameters

Power

Power systems status

Warnings

Status of warnings: eg. wheels down,

Comms

communications systems status

Payload

payload status: will vary with payload(s) present

GPS

GPS NMEA codes for this interval (get one at least eveyr second)

Sense

Sense and Avoid system (if fitted) status

By way of example, here are some example sections. We start with the HEADER Section.

BEGIN HEADER

time 16:35:23.100

date 20071114

ua_ID GB_BML_014_DeltaW

msg_num 133

END

The IMU Section

BEGIN IMU

gyro_x 23.105

gyro_y 13.243

gyro_z 12.596

accel_x 3.933

accel_y 0.022

accel_z 0.223

mag_x 15.877

mag_y 225.112

mag_z 8.254

inclin_y 1.989

inclin_z 3.850

temp 11.213

END

The GPS Section

BEGIN GPS

$GPRMC,143903.00,A,5112.31099,N,00158.66984,W,0.004,,151007,,,A*64

$GPVTG,,T,,M,0.004,N,0.007,K,A*20

$GPGGA,143903.00,5112.31099,N,00158.66984,W,1,07,1.21,136.0,M,48.2,M,,*41

$GPGSA,A,3,21,05,06,24,13,31,16,,,,,,1.90,1.21,1.47*0B

$GPGSV,3,1,09,21,46,150,41,05,10,118,37,06,61,070,49,07,,,47*45

$GPGSV,3,2,09,24,51,093,48,13,08,340,37,10,,,39,31,53,216,40*42

$GPGSV,3,3,09,16,42,293,47*4A

$GPGLL,5112.31099,N,00158.66984,W,143903.00,A,A*7B

$GPZDA,143903.00,15,10,2007,00,00*6A

END

The Aircraft Sense Section

BEGIN SENSE

BEGIN OBJECT

ObjectID 1

long 23:45:32.44

lat 3:45:32.44

bearing 121.2

altitude 2600

climb_rate 11.2

speed 344

END

BEGIN OBJECT

ObjectID 2

long 23:45:32.44

lat 3:45:32.44

bearing 121.2

altitude 1550

climb_rate 11.2

speed 344

END

END

return to top

Status message size

Although a 9.6 kbps BLOS sat comms link is used, both the transmit and the receive paths are divided into two equal data rate channels A and B, each operating at 4.8 kbps. A 9.6 kbps duplex data link represents a small, lightweight, relatively inexpensive solution for an always-ON satellite based data link between the Unmanned Aircraft and a distant Ground Control Station. This link is operational even when the Unmanned Aircraft is beyond the line of sight of staff at the GCS.

The backup system is a GSM modem based system, but this fails in areas where there is no GSM coverage, or very weak GSM coverage, such as over oceans and in remote parts of the earth.

We send a status message from the UA to the GCS every second, corresponding to the GPS data update rate. The transmitted message size is 4,800 bits. The status message data is Forward Error Correction encoded using the standard Reed Solomon RS(255,223) format, in which 223 bytes of message data are supplimented with 32 bytes of FEC information to make up a 255 byte data block. We can fit 2 such data blocks in our 4,800 bit maximum message size, with 720 bits to spare. The 720 bits = 90 Bytes are used for the Payload status information, since this information is not considered "mission critical". This payload information section included a 4 Byte checksum, but is not FEC encoded to enable the detection of a transmission error in this section, but not the correction of any errors.

A typical message length in plain text form, as shown above, is 3,600 text characters, where each character is represented by a Byte. This message size dramatically exceeds our above mentioned limit. In order to compress the information, we use a binary format. For a small Unmanned Aircraft, the status message consists of:

  • two blocks of 223 Bytes of binary data each. Each block is then FEC encoded using RS(255,223) to become 255 Bytes in size.
  • we can transmit important information in each message (such as GPS location, bearing), with other information (such as battery voltage), being reported less frequently. To ensure correct interpretation of the different message data set formats, we identify a Data_Set_ID in the header of each message.
  • each data item starts with a one byte Status_Item_ID (= B0) followed by the Status_Item_Value, which can be 8 bits (B1), 16 bits (B1:B2), 24 bits (B1:B2:B3) or 32 bits (B1:B2:B3:B4) in length.
  • a maximum of 256 types of Status_Item_ID
  • Byte numbering is as follows: B0:B1:B2:B3:B4

See the Status Message section for the binary message syntax, and details on the message size.

return to top

Small UA Message Syntax and STANAG 4586

Commonalities

  • ...the philosophy for developing the message types in the DLI shall be to use metric (SI, ISO 1000:1992) units wherever possible. - STANAG 4586
  • All times shall be represented in Universal Time Coordinated (UTC) in seconds since Jan 1, 1970 ... - STANAG 4586
  • ID numbers are represented as individual hexadecimal bytes separated by colons (e.g., 10:4E:F3:06).
  • STANAG 4609 specifies a standard compression (MPEG-2) and means to capture metadata describing digital motion imagery.

Differences

This section outlines the differences between the Small Unmanned Aircraft Message Syntax and that in STANAG 4586.

Download a copy of STANAG 4586

STANAG 4586

Small UA Message Syntax

All times shall be represented in Universal Time Coordinated (UTC) in seconds since Jan 1, 1970 using IEEE double precision floating point numbers.

All times shall be represented in Universal Time Coordinated (UTC) in seconds since Jan 1, 1970 using IEEE UNSIGNED INTEGERs

All angular parameters shall be expressed in radians. Bearings shall be measured clockwise from true north.  Elevation shall be referenced from local horizontal, positive toward the zenith.

All angular parameters shall be expressed in degrees.

3.3.1.5   Message Length.

The length shall be a 32-bit unsigned integer of the number of bytes in the “Message Data”.  The length shall be any number between 1 and 538.

Note the UDP protocol under IPv4 has a guaranteed minimum datagram size of 576 bytes that must be supported by all implementations.  Subtracting the IPv4 header size of 20 bytes and the UDP header size of 8 bytes, leaves 548 bytes as the maximum amount data that can be sent in a datagram that will guarantee interoperability.  Therefore, no message or multi-message datagram shall exceed this data limit.  Subtracting the message wrapper size of 24 bytes, gives 524 bytes as the maximum message length of a single message with no room for another message in the datagram.  Extra care should be taken when packing multiple messages in the same datagram.

BLOCK 0 size = 90 Bytes

BLOCK 1 size = 255 Bytes after FEC coding

BLOCK 2 size = 255 Bytes after FEC coding

 

To be compatible with STANAG 4586, we transmit the Status Message in two datagrams:

Part 1 = Block 0 = 90 Bytes

Part 2 = BLOCK 1 + BLOCK 2 = 510 Bytes

Both datagrams are < 524 Bytes.

3.3.1.9   Checksum.

Checksum shall be employed to determine the presence of errors during transmission or handling of messages.  The checksum shall be a 4-byte unsigned integer and calculated by simple, byte-wise unsigned binary addition of all data contained in the message excluding the checksum, and truncated to four bytes.

BLOCK 0 has a 4 Byte Unsigned INT checksum

BLOCK 1 is FEC encoded using RS(255,223)

BLOCK 2 is FEC encoded using RS(255,223)

much coverage of weapon systems

no coverage of weapon systems

Only the NATO countries + 19 countries in the Partners for Peace initiative have defined country codes. See below for the codes. Hardly the basis for an international agreement...

We use the International Telephone Dialling Code for the country code. Every country in the world has a unique Telephone Dialling code number. The largest number is 1929 (the North American Numbering Plan) for Puerto Rico.

return to top

Flight Plan Language

Here is an example from the Paparazzi Project, from 1033_paparazzi.pdf. Note the use of the XML Format.

return to top


© Barnard Microsystems Limited 2006 - 2008