资讯详情

创新认知 基于LPC1114单片机的传感器使用

一、 实验题目 基于lpc1114单片机的传感器使用 二、 实验目的 1.学习超声波测距传感器、磁传感器、加速度传感器、气压传感器和8位数字管的工作原理和使用方法 2、 学习LPC1114的timer使用组件和串口通信的方法 3、 学习使用GPIO模拟IIC接口方法,深入了解IIC接口时序 三、 实验设备 PC机、LPC1114最小系统、HC-SR04超声波测距传感器,HMC5883L磁传感器、ADXL345加速度传感器,BMP085气压传感器,ST-LINKV2下载器、MAX7219数字管、发光二极管、电阻和导线 四、 实验目标 1 用超声波测距传感器测距,实时在数字管上显示结果 2 用磁传感器将航向值(0-360°)显示在数码管上 3 利用加速度传感器检测板子的倾斜角度,在板子的倾角小于30°当小灯闪烁时,板的倾角大于30°流水灯显示 4 利用BMP085气压传感器收集温度和压力,并根据压力计算高度。在数字管上循环显示温度、压力和高度信息。 5、 传感器原理介绍 (1)超声波测距传感器 1、 采用IO口Trig(控制端)触发至少10个测距us高电平信号 2自动发送8个40个模块khx方波自动检测是否有信号返回 3.通过信号返回 3IO口Echo输出高电平,高电平的持续时间是超声波从发射到返回的时间 测量距离=高电平时间声速/2,声速340m/s 4、 LPC1114的主频为48Mhz,分频系数为47,因此16位定时器的频率为1Mhz 实际时间:1usLPC_TMR16B0->CR0=0.000001* LPC_TMR16B0->CR0s 测量时间:0.0000005* LPC_TMR16B0->CR0s 测量距离为: 0.0000005LPC_TMR16B0->CR0s34000cm/s=0.017*LPC_TMR16B0->CR0

(二)磁传感器 霍尼韦尔 HMC5883L具有数字接口的弱磁传感器芯是一种高集成模块。HMC5883L包括最先进的高分辨率 HMC118X放大器、自动消磁驱动器、偏差校准、罗盘精度控制在1°~2°12位模数转换器,简单IIC系列总线接口。磁传感器将磁场信号转换为检测相应物理量的电信号。 地磁场是一个矢量。对于固定位置,该矢量可分解为两个与当地水平面平行的重量和一个垂直于当地水平面的重量。如果电子罗盘与当地水平面保持平行,则罗盘中磁力计的三个轴于这三个重量。 事实上,对于水平方向的两个重量,它们的矢量总是指向磁北。罗盘中的航向角(Azimuth)它是当前方向和磁北之间的夹角。由于罗盘保持水平,只需使用磁力计水平方向两轴(通常是X轴和Y可以计算出轴)的检测数据。 因为如上图所示安装,由北到东到南到西依次为0°(360°)、90°、180°、270°,所以偏航角是arctan(Y/X)。但由于地磁方向和地理方向的偏差,实际偏航角为arctan(Y/X) θ。 (3)加速度计传感器 加速度传感器是一种可以测量加速度的传感器。通常由质量块、阻尼器、弹性元件、敏感元件和适应电路组成。传感器通过测量牛顿第二定律获得加速度值。 静止时,三轴加速度计的返回值是重力加速度在各个方向的重量。根据安装方法,必须俯仰角pitch=arctan(X/Z)、横滚角roll=arctan(Y/Z)。 (4)气压传感器 BMP085是新一代小型封装气压传感器,其核心是集数据采集电路和温度传感器于一体的电阻压力传感器。该传感器属于IIC总线接口仍遵循标准IIC驱动程序。 6、 实验中单片机功能资源介绍 LPC1114单片机是NXP公司推出的一款ARM Cortex-M32位内核单片机可用于高集成度、低功耗的嵌入式应用。其主频最大可达50Mhz。内集成时钟产生单元,无需外部晶振即可工作。外设包括32KB的FLASH程序存储器,8K的SRAM一个数据存储器Fast-mode Plus的I2C接口、1个RS-485/EIA-485 UART、2个SSP接口,4个通用定时器,1个系统定时器,1个带窗口功能的看门狗定时器,功耗管理模块,1个ADC模块和42个GPIO口。 7、 传感器与单片机接口图 MAX7219:VCC-5V;GND-GND;DIN-P0.7;CS-P1.9;CLK-P1.8 MAX72192:VCC-5V;GND-GND;DIN-P1.10;CS-P1.11;CLK-P2.0 HC-SR04:VCC-5V;GND-GND;Trig-P2.7;Echo-P0.2 HMC5883L:VCC-5V;GND-GND;SCL-P0.4;SDA-P0.5 ADXL345:VCC-5V;GND-GND;SCL-P0.4;SDA-P0.5 BMP085:VCC-5V;GND-GND;SCL-P0.4;SDA-P0.5 8、 传感器数据处理原理 (1)超声波测距传感器 IO口Trig模块触发测距后,自动发送8个40Khz方波通过返回一段时间的高电平信号IO口Echo输出。Echo上升沿触发中断开始计时,持续一段时间Echo下降沿再次触发中断结束计时。计时时间与测量距离成线性关系,通过校准距离和时间,用最小的二乘法拟合距离(cm)=0.0175*时间。 (2)磁传感器 采集传感器数据后,结合地磁场的磁场分布和传感器的安装位置,判断三轴磁场的强度,并利用几何关系计算航向角。由于弧值直接从反三角函数中获得,因此使用π=180°变换单位。因为获得的角度是磁场角,范围是-90°到90°,因此,根据地磁偏角,根据三轴磁场强度的正负,将角度转换为0-360°。 (三)加速度计传感器 由于加速度计的返回值为零漂,因此Z轴垂直向下,X轴和Y根据数百个周期内三轴加速度的平均值和理论值,消除轴水平的零漂X轴和Y轴的理论值为0,Z轴的理论值为g。 (4)气压传感器 UP = 压力数据(16-19位)UT =温度数据(16位) 开始测量温度值UT和压力值UP时序图如下所示。启动后,写入主机发送器件地址、寄存器地址和控制寄存器数据。接收数据时,BMP085每8个数据位发送一次确认(ACKS)。最后一次主机ACKS后发送停止条件。 为了读温度数据UT(16位),压力数据字UP(16到19位)和E2PROM数据如下: 启动后,主机将模块地址发送到命令和寄存器地址。寄存器地址选择读取寄存器:E2PROM数据寄存器0xAA至0xBF温度或压力值UT或UP 0xF6(MSB),0xF7(LSB),可选0xF8(XLSB),主设备发送重启条件,读取模块地址,BMP180(ACKS)确认。BMP180首先发送8个MSB,由主设备(ACKM)然后是8LSB。主机发送不确认(NACKM),最后发送停止条件。 十、 实验结果 1 与数字管显示的结果和实际测量结果相比,超声波测距传感器的结果是准确的。 2 可以在数码管上实时显示航向角 3可根据姿势角改变小灯的闪烁模式 4 能在数码管上实时显示温度、气压和高度 11, 实验结果分析 1 超声传感器实验校准的标度因数0.0175和理论计算得到的标度因数0.017差别很小,实验结果基本正确。受外部环境影响ADC采样的影响,认为测量范围在3m测量精度为1mm。 2 对磁传感器进行数据处理时,不考虑外部磁场的影响,存在误差 3姿态角基本正确,但传感器采集的加速信息在运动过程中会受到一定的偏差 4数字管可以实时更新温度、气压和高度信息。用手触摸芯片,温度会小幅上升。通过管道吹小孔可以改变BMP805输入压力。 十二、 总结 通过学习四种传感器,本实验熟练lpc114单片机和单片机固件库层的使用。同时,定时器、串口、串口、IIC对内容的理解,熟悉keil开发环境。 使用超声波测距模块有一定的局限性。例如,由于金属外壳对超声波的不规则反射,测量倾斜金属外壳的距离会导致信号丢失和测量结果较小。 使用磁传感器时,应远离电脑等磁场干扰设备。 在使用ADXL345加速度计时,加速度信息会受到运动的干扰,所以在阅读前注意静止一段时间。使用加速度计时注意消除零漂。 使用气压传感器BMP085时,由于不同位置和天气的大气压力不断变化,会出现一定的误差。计算时应根据实际情况进行调整。

标签: 压强传感器的使用三轴压电式加速度传感器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台