测量LSM9DS1传感器输出使用纳米33 BLE意义
这个例子展示了如何使用MATLAB®支持包Arduino®硬件连接一种Arduino金宝app纳米33 BLE董事会通过蓝牙与LSM9DS1®。
传感器连接到Arduino董事会在一个I2C接口。
您可以使用一台电脑从传感器读取数据,支持蓝牙4.0或更高版本。金宝app
概述
的lsm9ds1
传感器是一个九自由度(自由度)的惯性测量单元(IMU)用于读取加速度、角速度,在所有三维磁场。
传感器对象表示一个设备连接Arduino硬件I2C总线。LSM9DS1传感器是目前纳米33 BLE董事会。你可以读取数据从传感器在MATLAB使用对象的功能。
您还可以使用其他传感器hts221
,lps22hb
,或apds9960
Arduino董事会MATLAB在蓝牙连接。
Arduino董事会MATLAB /蓝牙,连接类型arduinosetup
在MATLAB命令行并设置蓝牙连接类型。选择董事会和港口后,Arduino上传服务器窗口中,选择I2C。完整的工作流程,请参阅通过蓝牙连接。
连接到传感器和读取传感器输出
创建一个Arduino对象。
一个= arduino
= arduino的属性:地址:“DEBD293F7CDC”的名字:“LSMOverBLE”连接:1板:“Nano33BLE”AvailablePins: {‘D0-D13’,‘A0-A7} AvailableDigitalPins: {‘D0-D13’,‘A0-A7} AvailablePWMPins: {“D0-D13”} AvailableAnalogPins: {‘A0-A3’,‘A6-A7} AvailableI2CBusIDs: [0,1] AvailableSerialPortIDs:[1]库:{I2C, SPI,“伺服”}显示所有属性
创建传感器对象。LSM9DS1传感器连接到I2C总线1
Nano 33 BLE董事会。
lsmObj = lsm9ds1 (,“公共汽车”,1)
lsmObj = lsm9ds1属性:I2CAddress: 107 (“0 x6b”): 30 (“0 x1e”)总线:1 SCLPin:“SCL1”SDAPin:“SDA1”显示所有属性所有功能
读取加速度。
加速度= readAcceleration (lsmObj)
加速度=1×32.6315 -7.8341 5.6433
这个函数返回一个加速度数据的示例。有关更多信息,请参见readAcceleration
。
读角速度。
angularVelocity = readAngularVelocity (lsmObj)
angularVelocity =1×30.0053 0.0057 0.0078
这个函数返回一个角速度数据的示例。有关更多信息,请参见readAngularVelocity
。
读磁场。
磁场= readMagneticField (lsmObj)
磁场=1×326.1100 27.0620 14.0140
这个函数返回一个磁场数据的示例。有关更多信息,请参见readMagneticField
。
清理
一旦不再需要传感器连接,明确相关的对象。
清晰的lsmObj一个