Main Content

readMagneticField

Read one magnetic field data sample from LSM303C sensor

Description

example

[magReadings,timestamp] = readMagneticField(sensor) returns one sample of the magnetic field data from the LSM303C IMU sensor. The magnetic field sample is returned as a 3-by-1 vector in μT (microtesla) along the X, Y, and Z axes. The function also returns the timestamp at which MATLAB® receives the magnetic field data from the LSM303C sensor. The timestamp output is optional.

Examples

collapse all

Read the magnetic field data from the LSM303C IMU sensor on the X, Y, and Z axes.

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

mypi = raspi;
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 an lsm303c sensor object on the I2C bus 'i2c-1' on addresses '0x1D' and '0x1E'.

sensor = lsm303c(mypi,'Bus','i2c-1','I2CAddress',{'0x1D','0x1E'});
sensor = 

  lsm303c with properties:

                         I2CAddress: 29 ("0x1D")
                                   : 30 ("0x1E")
                                Bus: i2c-1

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

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

  data

    42.5720   -5.5100  -53.7660

timestamp = 

  datetime

   9-Dec-2020 18:12:19.518

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

[magReadings] = readMagneticField(sensor);
magReadings =

  data

    42.5720   -5.5100  -53.7660

Input Arguments

collapse all

LSM303C sensor object connection to the Raspberry Pi hardware board, specified as a lsm303c object.

Example: sensor = lsm303c(mypi) creates a connection to the LSM303C sensor on the Raspberry Pi object mypi.

Output Arguments

collapse all

Read the magnetic field data from the LSM303C sensor on the X, Y, and Z axes.

Read the date and time at which MATLAB receives the magnetic field sample value from the LSM303C sensor, specified as a datetime.

Extended Capabilities

Introduced in R2021a