MNAV100CA Users Manual
MNAV100CA Users Manual
MNAV100CA Users Manual
Document 7430-0198-01
Revision F, June 2007
Table of Contents
1 Introduction........................................................................................... 1
1.1 MNAV100CA Features ................................................................ 1
1.2 Package Contents.......................................................................... 2
2 MNAV100CA Overview...................................................................... 3
2.1 MNAV100CA Layouts................................................................. 3
2.2 MNAV100CA Board Size ............................................................ 3
2.3 Connectors .................................................................................... 5
2.4 Power Supply................................................................................ 7
2.5 GPS............................................................................................... 7
2.6 Pressure sensor.............................................................................. 8
2.7 Serial Ports.................................................................................... 8
2.8 Talk with R/C Transmitter ............................................................ 8
3 Quick Start ............................................................................................ 9
3.1 MICRO-VIEW Software .............................................................. 9
3.1.1 MICRO-VIEW Computer Requirements.............................. 9
3.1.2 Install MICRO-VIEW........................................................... 9
3.2 Connections ................................................................................ 10
3.3 Setting up MICRO-VIEW .......................................................... 11
3.4 Take Measurements .................................................................... 13
4 MNAV100CA Details ........................................................................ 14
4.1 MNAV100CA Architecture........................................................ 14
4.2 MNAV100CA Coordinate System ............................................. 15
4.3 Measurement Modes................................................................... 15
4.3.1 Voltage Mode ..................................................................... 15
4.3.2 Scaled mode........................................................................ 16
4.4 Control Modes .................................................................................. 17
4.4 Sensor Calibration....................................................................... 17
4.5 Commands .................................................................................. 18
4.5.1 Input Packets....................................................................... 18
4.5.2 Output Packets .................................................................... 19
4.5.3 Command List..................................................................... 19
4.6 Data Packet Format..................................................................... 23
5 MNAV100CA as a Development Platform ........................................ 30
; NOTE
Note provides additional information about the topic.
; EXAMPLE
Examples are given throughout the manual to help the reader understand the
terminology.
3 IMPORTANT
This symbol defines items that have significant meaning to the user
0 WARNING
The user should pay particular attention to this symbol. It means there is a
chance that physical harm could happen to either the person or the
equipment.
1 Heading 1
1.1 Heading 2
1.1.1 Heading 3
Normal
1 Introduction
The MNAV100CA is a calibrated digital sensor system with servo drivers,
designed for miniature ground and air robotic vehicle navigation and
control. All sensors required for complete airframe stabilization and
navigation are integrated into one compact module. The MNAV100CA
includes 3-axis accelerometers, 3-axis angular rate sensors, and 3-axis
magnetometers; static pressure (altitude) and dynamic pressure (airspeed)
sensors; and a GPS receiver module.
The MNAV100CA R/C servo controller allows direct connection of R/C
servos to MNAV100CA. The R/C Receiver PPM interface allows for
software interpretation of R/C receiver commands (PPM) and switching
between software control and R/C receiver control for human “takeover”
capability.
The MNAV100CA has two RS-232 serial ports. The sensor data may be
requested via serial port ‘0’ as a single measurement or streamed
continuously. And GPS can be directly read from serial port ‘1’.
The MNAV100CA can plug into a Crossbow Stargate via the 51-pin
connector to form a sophisticated open-source inertial platform. As an
option, the MNAV100CA, like a sensor board, can also be plugged into
Crossbow Mote. (See ‘Section 2.3 Connectors’ for details.)
The MNAV100CA firmware and tool chain is open-source for maximum
user flexibility. PC based MICRO-VIEW software is included to facilitate
recalibration of the MNAV100CA sensors.
2 MNAV100CA Overview
LEDs
MMCX Connector
Pitot Hole
Connector 1
Barometer
PIN 1
2.3 Connectors
Connector 1 (See Figure 2.1) provides an interface to the power supply
connector, the servo battery connector, two RS232 connectors, a PPM input
connector, 9 servo connectors and a high speed servo connector. These are
compatible with standard servo battery and servo connectors. Figure 2.3
shows the top view of Connector 1 showing the pin numbers and the
dimensions. The orientation of Fig 2.3 is identical to the orientation
described above in Figure 2.2. Table 2.1 lists the pin assignments for this
connector.
Pin Function
1 – 15,31 Ground
16,32 Input Power
17,20-30 Servo Power
18 RS-232 Receive Port 0
33 RS-232 Transmit Port 0
19 RS-232 Receive Port 1
34 RS-232 Transmit Port 1
35 PPM Input
36 High Speed Servo PWM
37 Servo#8 PWM
38 Servo#7 PWM
39 Servo#6 PWM
40 Servo#5 PWM
41 Servo#4 PWM
42 Servo#3 PWM
43 Servo#2 PWM
44 Servo#1 PWM
45 Servo#0 PWM
The 51-pin male connector (See Figure 2.2) on the bottom side of the
MNAV100CA board provides the interface to connect to the Stargate or to
Crossbow Mote. Table 2.2 shows the pin assignments for this connector.
Table 2.2 51-Pin Connector Pin Assignments
Pin Function
1 Ground
2 – 15 Not Connected
16 Serial Program MOSI
17 Serial Program MISO
18 SPI Serial Clock
19 GPS UART1 RXD
20 GPS UART1 TXD
21 – 26 Not Connected
27 MCU UART0 RXD (PE2=LOW)
or
MCU UART0 TXD (PE2=HIGH)
28 MCU UART0 TXD (PE2=LOW)
or
MCU UART0 RXD (PE2=HIGH)
29 ~ 35 Not Connected
36 JTAG Port TDI
37 JTAG Port TDO
38 JTAG Port TMS
39 JTAG Port TCK
40 – 47 Not Connected
48 Reset
49 Not Connected
50 Input Power
51 Ground
3 IMPORTANT
If the MNAV100CA is attached directly to the Stargate via a 51-pin
connector, PE2 of ATmega128L on MNAV100CA must be set as output
pin and logic 0. If the MNAV100CA is attached directly to a Crossbow
Mote via 51-pin connector, PE2 must be set as output pin and logic 1.
The MMCX connector (See Figure 2.1) provides connectivity to the GPS
antenna.
2.5 GPS
A GPS receiver is integrated into the MNAV100CA. A GPS antenna with
the MMCX male connector can be directly plugged into the MNAV100CA
MMCX connector (See Figure 2.1). This GPS receiver has two serial ports:
GPS USART1 (9600 Baud, 8 bits, no parity bit, 1 stop bit) and GPS
USART2 (57600 Baud, 8 bits, no parity bit, 1 stop bit). The GPS USART2
is connected to MCU USART1 of the onboard AVR microcontroller.
3 Quick Start
3 IMPORTANT
MICRO-VIEW 2.1 is only compatible with MNAV firmware version Rev -
04_B or later. Please use the MICRO-VIEW 1.x with MNAV firmware Rev
-01 and -02, and use MICRO-VIEW 2.0 to communicate with the MNAV
firmware Rev -03, Rev -04_A or later. See the table as follows:
3.2 Connections
The MNAV100CA is shipped with 3 cables: two digital signal cables and
one power cable to connect the MNAV100CA to a PC Serial port and
power supply. Follow the instructions below:
1. Connect the 3-pin end of the power cable to the power pins (1, 16
and 31) of Connector 1 of the MNAV100CA.
2. Connect the other end of the power cable to the batteries or other
DC power supply.
0 WARNING
Do not reverse the power leads! Applying the wrong power to the
MNAV100CA can damage the unit; although there is reverse power
protection, Crossbow Technology is not responsible for resulting damage to
the unit should the reverse voltage protection electronics fail.
Table 3.2 Power Cable Connections
Wire Color Function
Red Power Input (4.5-16V)
Brown Power Ground
3. Connect the 3-pin end of the digital signal cable to the RS232 pins
(3, 18 and 33) of Connector 1 of the MNAV100CA.
4. Connect the 9-pin end of the digital signal cable to the serial port
of your computer.
Table 3.3 Digital Signal Cable Connections
Wire Color Function
Grey / Yellow RS-232 Transmit Data
White / Green RS-232 Receive Data
Black / Blue RS-232 Signal Ground
4. Select the type of sensor data you want to display in Graphs from
the “Sensor” menu. You can zoom into the waveform by “Shift +
Click Mouse Left/Right Button” and pan it by “Ctrl + Press Mouse
Left Button”. By selecting the submenu “Tile” or “Cascade” of
“Windows”, you can tile or cascade the sensor Graph windows.
5. You can log data to a data file from the “Logging” menu.
6. You can calibrate the MNAV100CA sensors in voltage mode.
Select “Start Cali” from the “Calibration” menu and the calibration
interface window will appear. See Appendix B for detailed
calibration instructions.
7. You can debug the servos by selecting “Servo” from the
“Servo/PPM” menu. See Appendix C for detailed servo debug.
8. PPM GUI is enabled when the output rate is less than 100 Hz in
scaled mode. Select “PPM” from the “Servo/PPM” menu and the
PPM window will appear. See Appendix D for detailed
instructions.
9. You can replay from data file by selecting “Load and Replay”
from the “File” menu and select submenu “Halt” or “Stop” if you
want to halt or stop the replay. Please note that only the data file
logged by MICRO-VIEW can be replayed.
4 MNAV100CA Details
the data packet over the serial interface. The data of the accelerometers,
absolute pressure sensor and pitot pressure sensor are sent as unsigned
integers where as the data of the angular rates, temperatures and
magnetometers are sent as signed integers.
The voltage data is scaled as:
For angular rate and temperature:
Voltage = 2.5V+data*(5 V)/216 ;
For other sensor:
Voltage = data*(5 V)/216
Where voltage is the voltage measured at the sensor. See the “Data Packet
Format” section for a complete description of the voltage mode outputs.
Where temp is the actual measured temperature in 0C, data is the digital
data sent by the MNAV100CA, and TR is the Temperature Range: 200 0C.
To convert the absolute pressure data into altitude and velocity, use the
following conversion:
Press = data*(PR)/215
Where press is the altitude in meters and velocity in m/s, data is the digital
data sent by the MNAV100CA, and PR is the pressure Range: 10000m for
absolute pressure and 80m/s for pitot pressure.
The GPS data is directly scaled and represents velocity in cm/s, altitude in
millimeters, longitude & latitude in 10e-7 degrees and ITOW in
milliseconds.
4.5 Commands
The MNAV100CA has a simple command packet structure. You send a
command to the MNAV100CA over the RS-232 interface and the
MNAV100CA will execute the command. All communications to and from
the unit are packets that start with a two-byte header 0x5555. This is the
ASCII string “UU”. All communications packets except for the ping
command and response end with a two-byte checksum. The checksum is
calculated in the following manner:
1. Byte-wise sum packet contents excluding the header and checksum
itself.
2. The least significant 16-bits are the checksum.
MICRO-VIEW is the tool to use when troubleshooting your device.
MICRO-VIEW formulates the proper command structures and sends them
over the RS-232 interface. You can use MICRO-VIEW to verify that the
MNAV100CA is functioning correctly. MICRO-VIEW does not use any
commands that are not listed here.
3 IMPORTANT
The commands and MICRO-VIEW support the factory firmware. If the user
alters the open source code and loads the new image file into the
Atmega128L, neither the commands nor MICRO-VIEW can be guaranteed
to function properly.
4.5.1 Input Packets
All communications sent to the unit except for the ping command are input
packets with the following format:
UU <2-byte command> <variable length data> <2-byte checksum>
This generalized input structure allows input commands to carry data for
advanced user interaction. All input packets can be no longer than 128
bytes. All two-byte input commands consist of a pair of ASCII characters.
As a semantic aid, consider the following single character acronyms:
P = packet
F = fields (these are settings or data contained in the unit)
R = read (pertains to default non-volatile fields)
All packet types will be single printable ASCII characters. All output
packets can be no longer than 128 bytes.
There are 5 output packet types: P, D, V, S and N. the P is response type
packet, which is sent in response to a Ping request. And the D is sent in
response to a ‘Query Serial Number and Firmware Version’ request. The
remaining packets are available using the get packet command (polling) or
can be configured for continuous (fixed rate) output.
Command Ping
Input UU PK
Packet
Response UU P
Packet
Description Pings MNAV100CA to verify communications. The ping
command does not have data or a checksum to facilitate
human interaction from a keyboard. Sending the ping
command will cause the unit to send a ping response. All
bytes sent and received during the ping command and
responses are ASCII printable characters.
3 IMPORTANT
This “set servo output” command packet format that is used
in MICRO-VIEW version 2.x, is only compatible with
MNAV firmware later than Rev -03. The old servo
command packet in MICRO-VIEW 1.x and MNAV
firmware Rev -01 and -02, is described in Appendix C.
Command Set Reverse Bits of PPM Signals
Input UU SP <1-byte Reverse Bits> Checksum
Packet
Response None
Description This command allows the user to set the motion direction of
the servos. Bit 0~7 of 1-byte Reverse Bits in this command
is the motion direction flags of the servos from channel 0 to
7 respectively. For example, if Bit 0 is reset, the pulse width
of channel 0 in PPM signal will be directly output to channel
0 of servo interface. If Bit 0 is set, the pulse width of
channel 0 in PPM signal will be reversed and then output to
channel 0 of servo interface.
When the update rate is 100 Hz, the GPS data is divided into 7 packets
(each packet contains 5 bytes), See Table 4.1-3 and 4.2 as reference.
Each data packet will begin with a two-byte header (hex 5555) and end with
a two-byte checksum. The checksum is calculated in the following manner:
1. Byte-wise sum packet contents excluding the header and checksum
itself.
2. The least significant 16-bits data is the checksum.
The packet also contains a byte representing the MNAV100CA working
mode. The detailed description of the data packet is shown in table 4.1.
4.1-2 Scaled Mode Packet (Output Rate =100 Hz, Without GPS Data)
Bytes Description Range Units
1,2 Header (0x5555)
3 ‘s’
4,5 X-Axis Acceleration [-2, 2] G
6,7 Y-Axis Acceleration [-2, 2] G
8,9 Z-Axis Acceleration [-2, 2] G
10,11 X-Axis Angular Rate [-200, 200] Deg/sec
12,13 Y-Axis Angular Rate [-200, 200] Deg/sec
14,15 Z-Axis Angular Rate [-200, 200] Deg/sec
16,17 X-Axis Magnetic Field [-1, 1] Gauss
18,19 Y-Axis Magnetic Field [-1, 1] Gauss
20,21 Z-Axis Magnetic Field [-1, 1] Gauss
22,23 X-Axis Temperature [-200, 200] 0 C
24,25 Y-Axis Temperature [-200, 200] 0 C
4.1-3 Scaled Mode Packet (Without PPM, With GPS Data, output rate = 100 Hz)
Bytes Description Range Units
1,2 Header (0x5555)
3 ‘n’
4,5 X-Axis Acceleration [-2, 2] G
6,7 Y-Axis Acceleration [-2, 2] G
8,9 Z-Axis Acceleration [-2, 2] G
10,11 X-Axis Angular Rate [-200, 200] Deg/sec
12,13 Y-Axis Angular Rate [-200, 200] Deg/sec
14,15 Z-Axis Angular Rate [-200, 200] Deg/sec
16,17 X-Axis Magnetic Field [-1, 1] Gauss
18,19 Y-Axis Magnetic Field [-1, 1] Gauss
20,21 Z-Axis Magnetic Field [-1, 1] Gauss
22,23 X-Axis Temperature [-200, 200] 0 C
24,25 Y-Axis Temperature [-200, 200] 0 C
26,27 Z-Axis Temperature [-200, 200] 0 C
28,29 Abs Pressure [-100,10000] m
30,31 Pitot Pressure [0, 80] m/s
32~36 Divided five byte of GPS
package
37,38 Checksum
4.1-4 Scaled Mode Packet (Output rate < 100 Hz, with PPM, without GPS Data)
Bytes Description Range Units
1,2 Header (0x5555)
3 ‘S’
4,5 X-Axis Acceleration [-2, 2] G
6,7 Y-Axis Acceleration [-2, 2] G
8,9 Z-Axis Acceleration [-2, 2] G
10,11 X-Axis Angular Rate [-200, 200] Deg/sec
12,13 Y-Axis Angular Rate [-200, 200] Deg/sec
14,15 Z-Axis Angular Rate [-200, 200] Deg/sec
4.1-5 Scaled Mode Packet (Output rate < 100 Hz, with PPM and GPS Data)
Bytes Description Range Units
1,2 Header (0x5555)
3 ‘N’
4,5 X-Axis Acceleration [-2, 2] G
6,7 Y-Axis Acceleration [-2, 2] G
8,9 Z-Axis Acceleration [-2, 2] G
10,11 X-Axis Angular Rate [-200, 200] Deg/sec
12,13 Y-Axis Angular Rate [-200, 200] Deg/sec
14,15 Z-Axis Angular Rate [-200, 200] Deg/sec
16,17 X-Axis Magnetic Field [-1, 1] Gauss
18,19 Y-Axis Magnetic Field [-1, 1] Gauss
20,21 Z-Axis Magnetic Field [-1, 1] Gauss
22,23 X-Axis Temperature [-200, 200] 0 C
24,25 Y-Axis Temperature [-200, 200] 0 C
26,27 Z-Axis Temperature [-200, 200] 0 C
28,29 Abs Pressure [-100,10000] m
30,31 Pitot Pressure [0, 80] m/s
32~66 GPS data packet
67~84 PPM data packet
85,86 Checksum
; NOTE
The 200 deg/sec is digital scaling range of the angular rate sensors. The
actual measurement range of angular rate sensors is ± 150 deg/sec.
; NOTE
(1) Bits 0~7 of the Status Byte are the motion direction flags of the servos
from channel 0 to 7 respectively. For example, if Bit 0 is reset, the
pulse width of channel 0 in PPM signal will be directly output to
channel 0 of servo interface. If Bit 0 is set, the pulse width of channel 0
in PPM signal will be reversed and then output to channel 0 of servo
interface.
When the output rate is 100 Hz, the GPS data is divided into 7 packets
following the sensor data as shown in Table 4.2.
Suppose the time is “0” when one complete GPS data-packet is valid, and
the GPS update rate is F Hz (F=1 ~ 4).
Define one complete GPS data transport cycle as 1/F seconds {0 ~ (1/F-
0.01)}. In each cycle, the GPS data is transported from time “0” and after
these 7 packets are completed, the data packet format changes to Scaled
Mode Data packet without GPS data (see table 4.1-2).
The data format is shown as below.
Table 4.2 GPS Data Transport Cycle, MNAV100CA output rate = 100
Hz, GPS output rate=F Hz
Time Bytes Packet
(s) Length
1,2 3 4~31 32~36 (see Table 4.1-3) 37,38 38
Bytes
0 0x5555 ‘n’ Sensors data GPS Packet Bytes: 1~5 Checksum
0.01 0x5555 ‘n’ Sensors data GPS Packet Bytes: 6~10 Checksum
0.02 0x5555 ‘n’ Sensors data GPS Packet Bytes: 11~15 Checksum
0.03 0x5555 ‘n’ Sensors data GPS Packet Bytes: 16~20 Checksum
0.04 0x5555 ‘n’ Sensors data GPS Packet Bytes: 21~25 Checksum
0.05 0x5555 ‘n’ Sensors data GPS Packet Bytes: 26~30 Checksum
0.06 0x5555 ‘n’ Sensors data GPS Packet Bytes: 31~35 Checksum
0.07 Scaled Mode Packet without GPS Data, see Table 4.1-2 33
Bytes
… ...
… ...
… …
1 / F- Scaled Mode Packet without GPS Data, see Table 4.1-2
0.01
3 IMPORTANT
The firmware was made from WinAVR-20040404, which includes gcc
3.3.2 and avr-libc 1.0.3 etc.
The source code may not work if it is compiled under the WinAVR later
than WinAVR-20040404, because the WinAVR later than WinAVR-
20040404 may include the later gcc or avr-libc.
6 Limitations
6.1 Installation
The MNAV100CA should be mounted as close to the center of gravity
(CG) of your system as possible.
8.1 Introduction
The sensors of the MNAV100CA output voltages, which can be converted
to the scaled values to represent physical units. The zero bias and scale
factor are necessary for this conversion. So it is necessary to perform a
calibration to get the accurate zero-bias and scale factor values for the
sensors.
The parameters mentioned above are provided from the factory calibration,
users can also re-calibrate the sensors by using MICRO-VIEW software.
Please refer to 6740-0001-02 for detail calibration procedure.
17) The default scale factors of absolute pressure and pitot pressure
have been shown in relevant text frame, and stored in EEPROM.
18) Click the button “Check Cali Result”, if “Pass” is shown, the
calibration result is eligible; if “Failure” with some help message
are shown, please operate referring to the help message.
19) Click the little button “R” beside the text frame if you want to read
parameter of certain sensor, and click the button “Read all
Parameters from EEPROM” if you want to read parameters of all
sensors from EEPROM. The bias and scale factor of sensors will
be displayed in relevant area.
20) The Zero Bias and Scale Factor of gyroscopes, accelerometers and
magnetometers are shown in text frames. Click the little button
“W” beside the text frame if you want to write parameter of certain
sensor, and click the button “Write all Parameters to EEPROM” if
you want to write parameters of all sensors to EEPROM.
21) Click the button “Page Setup”, “Print Preview”, and “Print” to
print this calibration result.
22) Re-power-up the MNAV100CA, and set MICRO-VIEW in ‘Scaled
Mode’, open all the graph of sensors output. You can check
whether the unit works well.
9.1 Introduction
The MNAV100CA provides the ability to control servos, which can help
users to make a complete control system. The MNAV100CA can support a
maximum of 9 servo channels. You can drive the servos by sending the
command “Set Servo Output” described in 4.5.3, and you also can debug
the servos by using the MICRO-VIEW software.
Description This command allows the user to set the position of the
servos, the number of servos set in this command ranges
from 1 to 9, which is specified as 1 byte num of servos in the
input packet.
The servo channels and their corresponding byte value is
listed below:
Servo Channel ID Byte Value
0 0x07
1 0x03
2 0x06
3 0x02
4 0x00
5 0x01
6 0x05
7 0x04
8 0x08
For example, to set the servo 0 to maximum pulse width,
send 0x55555353 01 07 FFFF 02AC; to set TWO servos -
servo 0 at minimum pulse width and servo 1 at the middle
point, send 0x55555353 02 07 0000 03 8000 0132.
10.1 Introduction
The MNAV100CA provides a PPM interface, which can receive and extract
the PPM signal from the R/C transmitter. A convenient GUI is integrated
into the MICRO-VIEW software, as shown in Figure 10.1.
; NOTE
The CH0~CH7 in the PPM GUI are the sequent by the time order in the
PPM signal. The CH0~CH8 in the Servo GUI match with Servo#0~Servo#8,
ordered by the connector. So, CH0 in PPM GUI and Servo GUI is different.
In RC Mode (See ‘Section 4.4 Control Mode’), the RC transmitter takes
over the control of the servos. The change of CH0 data of PPM signal,
which is shown in CH0 track bar in PPM GUI, will not control Connector#0.
Table 10.1 shows the mapping between PPM channels and Servo Channels.
Table 10.1 Mapping between PPM Channels and Servo Channels
PPM Channel No.* Servo Channel No.
0 4
1 5
2 3
3 1
4 7
5 2
6* 0
7* 8
To obtain the latest datasheets for these sensors and the GPS receiver,
please visit the vendor websites listed above.
12.3.4 Marking
Please write the words, “FRAGILE, DELICATE INSTRUMENT” in
several places on the outside of the shipping container(s). In all
correspondence, please refer to the equipment by the model number, the
serial number, and the RMA number.
12.4 Warranty
The Crossbow product warranty is one year from date of shipment.