4
14 Xcell Journal First Quarter 2011 MicroBlaze Hosts Mobile Multisensor Navigation System Researchers used Xilinx’s soft-core processor to develop an integrated navigation solution that works in places where GPS doesn’t. XCELLENCE IN AEROSPACE & DEFENSE by Walid Farid Abdelfatah Research Assistant Navigation and Instrumentation Research Group Queen's University [email protected] Jacques Georgy Algorithm Design Engineer Trusted Positioning Inc. Aboelmagd Noureldin Cross-Appointment Associate Professor in ECE Dept. Queen's University / Royal Military College of Canada

Xcell Journal Issue 74: MicroBlaze Hosts Mobile Multisensor

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Xcell Journal Issue 74: MicroBlaze Hosts Mobile Multisensor

14 Xcell Journal First Quarter 2011

MicroBlaze Hosts Mobile Multisensor Navigation System

Researchers used Xilinx’s soft-core processor to develop an integrated navigation solution that works in places where GPS doesn’t.

XCELLENCE IN AEROSPACE & DEFENSE

by Walid Farid AbdelfatahResearch AssistantNavigation and Instrumentation Research Group Queen's University [email protected]

Jacques GeorgyAlgorithm Design EngineerTrusted Positioning Inc.

Aboelmagd NoureldinCross-Appointment Associate Professor in ECE Dept. Queen's University / Royal Military College of Canada

Page 2: Xcell Journal Issue 74: MicroBlaze Hosts Mobile Multisensor

First Quarter 2011 Xcell Journal 15

T he global positioning system(GPS) is a satellite-based navi-gation system that is widely

used for different navigation applica-tions. In an open sky, GPS can providean accurate navigation solution.However, in urban canyons, tunnelsand indoor environments that blockthe satellite signals, GPS fails to pro-vide continuous and reliable coverage.

In the search for a more accurate andlow-cost positioning solution in GPS-denied areas, researchers are develop-ing integrated navigation algorithmsthat utilize measurements from low-cost sensors such as accelerometers,gyroscopes, speedometers, barometersand others, and fuses them with themeasurements from the GPS receiver.The fusion is accomplished using eitherKalman filter (KF), particle filter or arti-ficial-intelligence techniques.

Once a navigation algorithm isdeveloped, verified and proven to beworthy, the ultimate goal is to put iton a low-cost, real-time embeddedsystem. Such a system must acquireand synchronize the measurements

from the different sensors, then applythe navigation algorithm, which willintegrate these aligned measure-ments, yielding a real-time solution ata defined rate.

The transition from algorithmresearch to realization is a crucial stepin assessing the practicality and effec-tiveness of a navigation algorithm and,consequently, the developed embeddedsystem, either for a proof of concept orto be accepted as a consumer product.In the transition process, there is nounique methodology that designers canfollow to create an embedded system.Depending on the platform of choice—such as microcontrollers, digital signalprocessors and field-programmablegate arrays—system designers use dif-ferent methodologies to develop thefinal product.

MICROBLAZE FRONT AND CENTERIn research at Queen’s University inKingston, Ontario, we utilized a Xilinx®

MicroBlaze® soft-core processor builton the ML402 evaluation kit, whichfeatures a Virtex®-4 SX35 FPGA. The

applied navigation algorithm is a 2DGPS/reduced inertial sensor system(RISS) integration algorithm thatincorporates measurements from agyroscope and a vehicle’s odometeror a robot’s wheel encoders, alongwith those from a GPS receiver. Inthis way, the algorithm computes anintegrated navigation solution that ismore accurate than standalone GPS.For a vehicle moving in a 2D plane, itcomputes five navigation states con-sisting of two position parameters(latitude and longitude), two velocityparameters (East and North) and oneorientation parameter (azimuth).

The 2D RISS/GPS integration algo-rithm involves two steps: RISS mecha-nization and RISS/GPS data fusionusing Kalman filtering. RISS mecha-nization is the process of transform-ing the measurements of an RISS sys-tem acquired in the vehicle frame intoposition, velocity and heading in ageneric frame. It is a recursiveprocess based on the initial condi-tions, or the previous output and thenew measurements. We fuse the posi-

TimerLocal

Memory Debugger

UART(1)

UART(2)

UART(3)

MicroBlazeCore

UART(4)

LEDs GPIO

PPS GPIOInterrupt

Controller

PushbuttonsGPIO

FPU

GPSMeasurements

PPS Signal

IMUMeasurements

EncoderMeasurements

Host Machine

Simple UserInterfaceCrossbow

IMU

Microcontrollersending the

robot’s encodersdata

Nov/Atel SPAN

Virtex-4

X C E L L E N C E I N A E R O S PA C E & D E F E N S E

Figure 1 – MicroBlaze connections with the mobile robot sensors and the host machine

Page 3: Xcell Journal Issue 74: MicroBlaze Hosts Mobile Multisensor

tion and velocity measurements fromthe GPS with the RISS-computedposition and velocity using the con-ventional KF method in a closed-loop, loosely coupled fashion. [1, 2]

A soft-core processor such asMicroBlaze provides many advan-tages over off-the-shelf processors indeveloping a mobile multisensornavigation system. [3] They includecustomization, the ability to design amultiprocessor system and hard-ware acceleration.

With a soft-core device, designersof the FPGA-based embedded proces-sor system have the total flexibility toadd any custom combination ofperipherals and controllers. You canalso design a unique set of peripheralsfor specific applications, adding asmany peripherals as needed to meetthe system requirements.

Moreover, more-complex embed-ded systems can benefit from the exis-tence of multiple processors that canexecute the tasks in parallel. By usinga soft-core processor and accompany-ing tools, it’s an easy matter to createa multiprocessor-based system-on-chip. The only restriction to the num-

ber of processors that you can add isthe availability of FPGA resources.

Finally, one of the most compellingreasons for choosing a soft-coreprocessor is the ability to concurrentlydevelop hardware and software, andhave them coexist on a single chip.System designers need not worry if asegment of the algorithm is found to bea bottleneck; all you have to do to elim-inate such a problem is design a cus-tom coprocessor or a hardware circuitthat utilizes the FPGA’s parallelism.

INTERFACES AND ARITHMETICFor the developed navigation systemat Queen’s University, we mainly need-ed a system capable of interfacingwith three sensors and a personalcomputer via a total of four serialports, each of which requires a univer-sal asynchronous receiver transmitter(UART) component. We use the serialchannel between the embedded sys-tem and a PC to upload the sensor’smeasurements and the navigationsolution for analysis and debugging. Inaddition, the design also requires gen-eral-purpose input/output (GPIO)channels for user interfacing, a timer

for code profiling and an interruptcontroller for the event-based system.

We also needed a floating-pointunit (FPU), which can execute thenavigation algorithm once the meas-urements are available in the leasttime possible. Although the FPU usedin the MicroBlaze core is single-preci-sion, we developed our algorithmmaking use of double-precision arith-metic. Consequently, we used soft-ware libraries to emulate our double-precision operations on the single-precision FPU, resulting in a slightlydenser code but a far better naviga-tion solution.

We first tested the developed navi-gation system on a mobile robot toreveal system bugs and integrationproblems, and then on a standardautomobile for further testing. Wechose to start the process with itera-tive testing on the mobile robot due tothe flexibility and ease of systemdebugging compared with a vehicle.We compared the solution with an off-line navigation solution computed on aPC and with the results from a high-end, high-cost, real-time NovAtelSPAN system. The SPAN system com-bines a GPS receiver and high-end tac-tical-grade inertial measurement unit(IMU), which acts as a reference.Figure 1 shows the MicroBlaze proces-sor connections with the RISS/GPSsystem sensors on a mobile robot.

Figure 2 presents an open-sky tra-jectory which we acquired at theRoyal Military College of Canada for9.6 minutes; the solution of the devel-oped real-time system is compared tothe GPS navigation solution and theSPAN reference system. The differ-ence between the NovAtel SPAN ref-erence solution and our solution isshown in Figure 3. Both solutions arereal-time, and the difference in per-formance is due to our use of thelow-cost MEMS-based CrossbowIMU300CC-100 IMU in the developedsystem. The SPAN unit, by contrast,uses the high-cost, tactical-gradeHG1700 IMU.

16 Xcell Journal First Quarter 2011

X C E L L E N C E I N A E R O S PA C E & D E F E N S E

Reference (SPAN)

GPS

MicroBlaze (real-time)

Figure 2 – Mobile robot trajectory, open-sky area

Page 4: Xcell Journal Issue 74: MicroBlaze Hosts Mobile Multisensor

Figure 4 presents the differencebetween the positioning solutionsfrom the C double-precision off-linealgorithm and the C single-precisionoff-line algorithm computations,where the difference is in the range ofhalf a meter. The results show that thechoice of emulating the double-preci-sion operations on the MicroBlazecore is far more accurate than usingsingle-precision arithmetic, whichwould have consumed less memoryand less processing time.

MULTIPROCESSING ANDHARDWARE ACCELERATIONUtilizing a soft-core processor such asthe MicroBlaze in a mobile navigationsystem composed of various sensorsprovides the flexibility to communi-cate with any number of sensors thatuse various interfaces, without anyconcern with the availability of theperipherals beforehand, as would betrue if we had used off-the-shelfprocessors. In terms of computation,designers can build the navigation

algorithm using embedded softwarethat utilizes the single-precision FPUavailable within the MicroBlaze, as isthe case in this research. You can alsopartition a design between softwareand hardware by implementing thesegments of the algorithm that arefound to be a bottleneck as a customcoprocessor or a hardware circuit thatspeeds up the algorithm.

The future of this research canprogress in two directions. The first isto use a double-precision floating-point unit directly with the MicroBlazeprocessor instead of double-precisionemulation. The second is related toimplementing more powerful and chal-lenging navigation algorithms that uti-lize more sensors to be integrated viaparticle filtering or artificial-intelli-gence techniques, which can make useof the power of multiprocessing andhardware acceleration.

More information about the embed-ded navigation system design processand more results can be found in themaster’s thesis from which this workwas derived. [4]

REFERENCES

[1] U. Iqbal, A. F. Okou and A.

Noureldin, “An integrated reduced iner-

tial sensor system — RISS / GPS for land

vehicle,” Position, Location and

Navigation Symposium proceedings,

2008 IEEE/ION.

[2] U. Iqbal and A. Noureldin, Integrated

Reduced Inertial Sensor System/GPS for

Vehicle Navigation: Multisensor position-

ing system for land applications involving

single-axis gyroscope augmented with a

vehicle odometer and integrated with

GPS, VDM Verlag Dr. Müller, 2010.

[3] B. H. Fletcher, “FPGA Embedded

Processors—Revealing True System

Performance,” Embedded Systems

Conference, 2005.

[4] Walid Farid Abdelfatah, “Real-Time

Embedded System Design and Realization

for Integrated Navigation Systems” 2010.

http://hdl.handle.net/1974/6128

First Quarter 2011 Xcell Journal 17

X C E L L E N C E I N A E R O S PA C E & D E F E N S E

Figure 3 – Mobile robot trajectory: Difference between NovAtel SPAN reference and MicroBlaze real-time solutions

Figure 4 – Mobile robot trajectory: Difference between C double-precision and single-precision off-line solutions