Download presentation
Presentation is loading. Please wait.
1
High Resolution AMR Compass
Advisor Dr. Andy Peczalski Advisor Professor Beth Stadler Pat Albersman Jeff Aymond Dan Beckvall Marcus Ellson Patrick Hermans Honeywell
2
Abstract This project’s purpose is to improve the accuracy of a digital compass by using multiple compass IC’s. These will work together to collectively improve the accuracy of the overall system. Using the HMC6532 compass (discussed later) Using most accurate regions of each IC (discussed later) Honeywell
3
Project Motivation Magnetic ICs in High Demand
Navigation HDD Proximity sensing Position sensing Increasing Accuracy is Required Decreasing Size is also Beneficial Why Do We Want to Do This? (why are we making a hyper-accurate compass?) Before further project explanation, a review of magnetic sensing Magnetic Ics are becoming more heavily used. Go through other applications Like most other sensors and embedded systems they are decreasing in size and increasing in accuracy Honeywell Images from
4
Current Technology Anisotropic Magnetoresistance Wheatstone bridge
What is arleady on the market? Most sensing is done using these. Explain Go over resistance change as field direction changes Go over how this works in the Wheatstone bridge, give example relating to change in resistance. Honeywell Images from
5
Current Technology Analog Digital Honeywell 1, 2 or 3 axes sensing
Direct access to bridge Navigational accuracy depends on ability to read voltages Digital 2 or 3 axes Internal heading calculation Accurate to 1 degree The bridges are often found in all in one IC’s that eitehr output anlog voltages or can be found packeged with A2D’s and other processing technology Honeywell
6
Future Technology What is the next step? Nanowires Honeywell
AMR sensing abilities Decreased size Decreased sensitivity Nanowires allows for a much smaller sensing element therefore a much smaller sensor. However they are less accurate therefore to get comparable or higher accuracy many more sensing elements must be used. Honeywell Images from Prof. Beth Stadler
7
Project Description Feasibility study for the use of nanowires
Not actually working with nanowires Trying to increase accuracy by using multiple bridges as would be required with nanowires Providing Honeywell with a new use for nanowires We are doing a feasibility study to hopefully prove that multiple wheatstone bridges will greatly improve accuracy. If this can be proved it can than be implemented with nanowire technology to reduce the size of current compass IC’s and perhaps incrase accuracy as well. Honeywell
8
Increased precision and repeatability is also desired.
Project Description One benchmark is to try to increase the accuracy of the system by the number of sensors used. Increased precision and repeatability is also desired. In our case, 10 sensors in an attempt to have 10x accuracy. Precision and repeatability to be discussed later. Honeywell
9
Customized software will be required to manage the implementation.
Project Description Customized hardware is necessary to implement the multiple sensor system. Customized software will be required to manage the implementation. Do a brief overview of the design, such that the software sections make sense, State, we will be using a micro processor to communicate to chosen sensors and obtain data. The micro will also be able to display the data to use via serial communication and HyperTerminal A VB program can then be written to interface to the device as well, useful for data collection. These will all be discussed in more detail shortly. Honeywell
10
Chosen IC: HMC 6352 Digital 2-axis compass On board ADC
Modifiable sensing range Speaks I2C Small package Improvable accuracy Barber pole bridges Gives access to heading and bridge voltage data. Discuss I2C, it is a serial communication protocol that uses a data line and a clock line. Used to transmit digital data. Honeywell Image from
11
Modeling & Simulations Matlab
Software & Algorithms Modeling & Simulations Matlab Firmware MPLab & CCS Compiler User Interface Visual Basic (VB) Honeywell
12
Sensor Modeling Goal: Parameters-> M-file -> Sensor Data
Consists of Many Sub-functions Noise, Bridge, OpAmp, A2D - - the globe pic, -Matlab icon -Sensor from our wiki The rest I drew Needs to model real world situations Honeywell
13
MATLAB Successfully used to simulate single and multiple sensors before our hardware could be designed Provided a vehicle to test the performance of our heading calculation algorithms Totaled 1702 lines of MATLAB code Image from mathworks Honeywell
14
Sensor Placement The placement of the sensors must create a system accurate across 360 degrees Each individual bridge of each sensor can be simulated independently in MATLAB Multiple arrangements can be simulated to determine the best implementation 2 bridges per sensor offset 90 degrees from each other. Linear region is the most accurate. Honeywell
15
Orientation Simulations
Single IC Senor Output Wave Form: Start by showing the singe IC output. Describe in some detail the linear and non linear region and why the non linear region is bad. First Spacing idea was that it takes the wave from 360 degrees to repeat and we want to space NumICs in that region. Therefore: 360/NumIC = 360/10 = 36 Degree Spacing This creates what appears to be an evenly distributed field, but note that optimal axes intersect (draw a line at zero) and are spaced 18 degrees apart. Data Appears Evenly Spaced ICs at: 0, 36, 72, 108, 144, 180, 216, 252, 288, 324 Degrees Honeywell
16
Orientation Simulations
Single IC Senor Output Wave Form: Next we realized that if we space each linear region (aka each color) evenly and such that none overlapped we should create a more dense and evenly spaced region of linear regions. Since there is a linear region every 90 degrees and we have: 90/NumICs = 90/10 = 9 Degree Spacing Data Evenly Spaced ICs at: 0, 9, 18, 27, 36, 45, 54, 63, 72, 81 Degrees Honeywell
17
MicroController C Code
Written in MPLab Version 8.0 CCS complier Version 4 Run on PIC 18f4550 1326 Lines of C 2532 Lines of Assembly Ccsinfo.com Microchip.com Honeywell
18
Sensor Communication Sensor Commands Heading Calibrate Re-address
Adjusted voltages Raw voltages Calibrate Re-address Number of Summed measurements Talk on the ability to change ram and EEPROM values Image from philips Honeywell
19
Serial Communication Allows Compass to display results
Very helpful in debugging Allows for VB to control sensor Easy to implement in CCS Baud allowable from the 20Mhz crystal Baud of from the 20Mhz crystal Image from wikipedia Honeywell
20
Weighted Averaging Honeywell
Don’t Describe this in detial, just state we are perofrming a weighted average The weights are bassed upon when arctan is most accurate and when our data is most accurate Honeywell
21
As shown here, weights are high when everything is fairly accurate, and really low when something is supper in accurate Honeywell
22
Visual Basic (VB) Interface
Provides an end-user interface Synchronizes the compass and the rotation table used to accurately measure moves Allows for automated data acquisition Provides a repeatable test benching system Requires a third board to handle adjusted ground on PMC Total of 4733 Lines of Code Done by dan Pmc interface voltage problem, took a week to fix, Problems like this are what cause delays in the real work force and need to be planned for As Randy would say: You don’t know what you don’t know. Honeywell
23
Honeywell PMC Interface and controls, includes a mini terminal windows
Done by dan Honeywell
24
Visual Basic (VB) Interface
Done by dan Commands to perform repeatable data acquisition and benchmark tests. Honeywell
25
Honeywell Serial Serial Personal Computer (VB) PMC Controller
PIC18F4520 (C) Rot. Table Parallel I2C Sensors Honeywell
26
Hardware: Abstract One compass, two boards Main Board Daughter Board
Microcontroller Daughter Board Sensors MB is the brains DB has the sensors Honeywell
27
Hardware: Main Board Essentially a controller board Microcontroller
RS-232 Communication I2C Communication Interfacing Daughter Board Front Panel Features Honeywell
28
Initial Design: Daughter Board
Three functional systems Sensor array Power MUX Laser Constraint: One of the dimensions must be less than 3.5” Opening of zero-gauss chamber is 3.5” in diameter 3.132” Features 3.492” Honeywell
29
Daughter Board I2C Bus Honeywell Clock Data
I2C bus – these are all on the bottom! Honeywell
30
Daughter Board Power MUX Design challenge:
Need to assign unique address to each sensor Each sensor is factory installed with address 0x42 In order to change addresses, a command must be sent to a sensor on the bus This command message contains: How to change address of individual sensor if every sensor is receiving the command? Start Address [Ack] Command Stop Honeywell
31
Daughter Board Power MUX
Solution: Need to isolate communication to individual sensor How? Burn-in Socket Use a network of jumpers Multiplex I2C to each sensor Multiplex power to each sensor Honeywell Photo taken from
32
Daughter Board Power MUX We chose to multiplex power Advantages
Saves power Simplifies troubleshooting Disadvantages Signal loss through MUX Other unknowns… Honeywell
33
Problems with Initial Design
Main Board None Daughter Board I2C bus When powered off, the sensors interfere with I2C bus 5V data signal is pulled down to 2.5V Therefore communication will not work Problems not related to design Sensor 3 will not communicate Will not hinder project; algorithm will still work Slight loss of sensitivity at sensor 3’s axes of sensitivity (27° and 117 °) Sensors interfere with I2C bus because when they are powered off, they have a low resistance (because of the PIC?) Honeywell
34
Changes to Initial Design
I2C bus fix Remove MUX and feed power to all sensors Cut I2C traces Add jumpers to I2C vias and address them one by one Connect all jumpers to I2C bus Honeywell
35
Changes to Initial Design
Other changes No laser mount Laser mounted directly to plexi-glass case Saves cost ($25) Honeywell
36
Proposed Final Design Due to I2C bus issues, our current design does not work Two options Power all sensors and use burn-in or jumpers socket to isolate sensors Multiplex I2C bus Add Physical Jumpers to the I2C bus to individual connect one sensor at a time Briefly state, these are fixes that could be made and each have there own advantages and disadvantages that would need to be analyzed Honeywell
37
Testing Prototype Final Honeywell
38
Test Setup Honeywell
39
Precision Repeatability Accuracy ß field Honeywell Compare Compare
Talk about the zero gauss chamber Rotating sensor array to find the B field with each sensor. ß field Compare Honeywell
40
Prototype Testing Given one sensor CCS compiler Honeywell
For testing we only had one sensor to test with and could not test to see if I2C bus communications would work with multiple sensors. We did however, get it to work and obtained data that matched our Matlab models CCS compiler Honeywell
41
Final Testing Elements of Final testing
Pretesting to determine zero gauss values Pretesting to determine IC positional offsets Testing to obtain compass specs Accuracy, Precision, Repeatability Honeywell
42
Pre-testing (zero gauss)
Place sensors in the zero gauss chamber Rotate 360 deg. while taking readings Analyze data and get zero gauss values This determines what value we should see when the IC is experiencing zero gauss, aka: parallel to the field direction. Honeywell
43
Pre-testing (offsets)
Place sensors in artificial magnetic field Run VB script that finds sensor locations Uses the zero gauss value of each chip Works using relativity, sensor 1 = 0, sensor2 = ? From 1 Bang bang control Analyze data and find chip placements Hardcode this to software Honeywell
44
Raw voltage readings with offsets
Honeywell
45
Raw voltage readings with offsets
Honeywell
46
Accuracy Test Procedure Determine the B field Take measurement
Find the zero crossing on each axis B field should be 90 degrees from zero crossing Average the 20 axes results Take measurement Compare result to actual Rotate to different position Repeat steps 2-5 113 deg 23 deg Honeywell
47
Results Results Comprise of: Determining Specs
Comparison of Specs to Controls Ways to improve Future for Nanowires? Honeywell
48
Results: Control Comparisons
First Control is the Sensor Heading output We Don’t know how they compute this Second Control is performing arctan(x/y) on a single designated sensor These will be compared with our computation of arctan(x/y) of multiple sensors averaged Honeywell
49
Results: Specs - Repeatability
Comprised of 5 readings taken at 0, 90, 180,270 Our Product: Min = Max = Control: Min = Max = Honeywell: Min = Max = These are in degrees, as you can see ours is not the best, but do notice the min was much better than all others. This is due to the fact we have an inaccurate region that needs to be fixed still. As shown next… Honeywell
50
Results: Specs - Precision
This is for rotating 1 Deg for full 360, and graphed is the error in displayed amount moved The error is due to roll over of the heading, 359-> 0 next and we are having problems with averaging 359 heading of some sensors and 0 from other sensors, this is easily fixable. Honeywell
51
Results: Specs - Accuracy
THe PMC is set to be with respect to true direction, the error in respected headings is graphed The accraucy will be the worst of these errors. Honeywell
52
How Can We Improve Currently using arcTan(x/y) to compute heading
This assumes we have X and Y which need to be 90 degrees apart In practice this is not true, we found this is actually only within +-8 degrees Use different algorithms, better weighting More Sensors Honeywell
53
Future For Nanowires? Nanowires are inherently less accurate
Means greater room for improvement Small enough to use more than 10 bridges Weighting should have more of an effect Will have completely different obstacles All in all, from the results of this feasibility test they look very promising Honeywell
54
Conclusion Questions/ Comments? Thanks for your Attention and Time!
Honeywell
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.