Main Content

readMagneticField

Read one sample of magnetic field from sensor

Since R2021a

Add-On Required: This feature requires the MATLAB Support Package for Raspberry Pi Hardware add-on.

Description

[magReadings,timestamp] = readMagneticField(sensorobj) returns one sample of the magnetic field data on x, y, and z axes read from the sensor in units of µT (microtesla) along with the timestamp. Timestamp is optional.

Note

The readMagneticField function is available for the MPU9250, LSM9DS1, LSM303C, and ICM20948 sensors.

Examples

collapse all

Create a connection from MATLAB® to the Raspberry Pi® hardware board.

mypi = raspi('raspberrypi-hysdu8X38o','rocky','bullwinkle')
mypi = 

  Raspi with Properties:

           DeviceAddress: 'raspberrypi-hysdu8X38o'
                    Port: 18734
               BoardName: 'Raspberry Pi 3 Model B+'
           AvailableLEDs: {'led0'}
    AvailableDigitalPins: [4,5,6,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27]
    AvailableSPIChannels: {‘CE0’,’CE1’}
       AvailableI2CBuses: {'i2c-1'}
             I2CBusSpeed: 100000
        AvailabelWebCams: mmal service 16.1 (platform:bcm2835-v4l2)

Create the sensor object for the sensor in use.

Note

The sample code and output in this example is for lsm9ds1 object. If you are using another sensor that supports readMagneticField function, use the corresponding sensor object.

sensorobj = lsm9ds1(mypi,'Bus','i2c-1','I2CAddress',{'0x6A','0x1C'});
sensorobj = 

  lsm9ds1 with properties:

                         I2CAddress: 106 ("0x6A")
                                   : 28 ("0x1C")
                                Bus: i2c-1 

Return one sample of magnetic field data read from the sensor on the X, Y, and Z axes.

[magReadings,timestamp] = readMagneticField(sensor);
magReadings =

  data

    9.1980    7.0980  -52.9480


timestamp = 

  datetime

   9-Dec-2020 16:13:28.573

Since the timestamp output is optional, you can obtain only the magnetic field data from the sensor.

[magReadings] = readMagneticField(sensor);
magReadings =

  data

    9.1980    7.0980  -52.9480

Input Arguments

collapse all

The sensor object.

Output Arguments

collapse all

The magnetic field value on x, y, and z axes read from the sensor.

The time at which MATLAB receives magnetic field data from the sensor, specified as a datetime.

Extended Capabilities

Version History

Introduced in R2021a