Skip to Main Content
Basic Sensors in iOS
book

Basic Sensors in iOS

by Alasdair Allan
July 2011
Beginner to intermediate content levelBeginner to intermediate
108 pages
2h 29m
English
O'Reilly Media, Inc.
Content preview from Basic Sensors in iOS

Measuring a Magnetic Field

To use the device to measure a magnetic field—for instance that of a small bar magnet, or the field generated by an electric current in a wire—you should first make a zero-point measurement of the ambient magnetic field of the Earth. Further readings should subtract this zero-point measurement.

When measuring, move the magnet to the device rather than moving the device to the magnet. Moving the device will cause the magnetic field of the Earth across the measuring sensor to change, which will spoil the zero point calibration you took earlier. If the device must be moved, only small movements should be attempted.

You can retrieve the raw magnetic field measurements along the X, Y and Z-axes by querying the CLHeading object passed to the locationManager:didUpdateHeading: method:

- (void)locationManager:(CLLocationManager *)manager 
      didUpdateHeading:(CLHeading *)heading {

    double x = heading.x;
    double y = heading.y;
    double z = heading.z;

    double magnitude = sqrt(x*x + y*y + z*z);

    ... code ...
}

The values returned are normalized into a ±128 range, measured in microtesla (µT), representing the offset from the magnetic field lines measured by the magnetometer.

Note

Apple provides sample code that displays the raw x, y, and z magnetometer values, a plotted history of those values, and a computed magnitude (size or strength) of the magnetic field. The code can be downloaded from the iPhone developer website at http://developer.apple.com/library/ios/#samplecode/Teslameter ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

Building iPhone and iPad Electronic Projects

Building iPhone and iPad Electronic Projects

Mike Westerfield
iPhone and iPad App 24-Hour Trainer

iPhone and iPad App 24-Hour Trainer

Abhishek Mishra, Gene Backlin
BioCoder #3

BioCoder #3

O'Reilly Media, Inc.
iOS 7 Programming Cookbook

iOS 7 Programming Cookbook

Vandad Nahavandipoor

Publisher Resources

ISBN: 9781449309480Supplemental ContentErrata Page