IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 创新认知 基于LPC1114单片机的传感器使用 -> 正文阅读

[嵌入式]创新认知 基于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气压传感器采集温度和气压,并根据气压解算出高度。将温度、气压、高度信息在数码管上循环显示。
五、 传感器原理介绍
(一)超声波测距传感器
1、 采用IO口Trig(控制端)触发测距,保持至少10us的高电平信号
2、 模块自动发送8个40khx的方波,自动检测是否有信号返回
3、 有信号返回,通过IO口Echo输出一高电平,高电平持续的时间就是超声波从发射到返回的时间
测量距离=高电平时间声速/2,声速为340m/s
4、 LPC1114的主频为48Mhz,分频系数是47,所以16位定时器的频率是1Mhz
实际时间:1us
LPC_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)+θ。
(三)加速度计传感器
加速度传感器是一种能够测量加速度的传感器。通常由质量块、阻尼器、弹性元件、敏感元件和适调电路等部分组成。传感器在加速过程中通过对质量块所受惯性力的测量利用牛顿第二定律获得加速度值。
静止时三轴加速度计的返回值为重力加速度在各个方向的分量,根据安装方式得俯仰角pitch=arctan(X/Z)、横滚角roll=arctan(Y/Z)。
(四)气压传感器
BMP085是新一代的小封装气压传感器,其核心是一个电阻式压力传感器,集成了数据采集电路和温度传感器。该传感器属于IIC总线接口,依然沿用标准IIC驱动程序。
六、 实验中用到的单片机功能资源介绍
LPC1114单片机是NXP公司推出的一款ARM Cortex-M0内核的32位单片机,可用于高集成度和低功耗的嵌入式应用。它的主频最大可达50Mhz。内部集成时钟产生单元,不用外部晶振也可以工作。外设包括32KB的FLASH程序存储器、8K的SRAM数据存储器、1个Fast-mode Plus的I2C接口、1个RS-485/EIA-485 UART、2个SSP接口、4个通用定时器、1个系统定时器、1个带窗口功能的看门狗定时器、功耗管理模块、1个ADC模块和42个GPIO口。
七、 传感器与单片机接口图
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
八、 传感器数据处理原理
(一)超声波测距传感器
IO口Trig触发测距后,模块自动发送8个40Khz的方波并有返回一段时间的高电平信号,通过IO口Echo输出。Echo的上升沿触发中断开始计时,持续一段时间后Echo的下降沿再次触发中断结束计时。计时时间与测量距离成线性关系,通过对距离和时间的标定并用最小二乘法拟合得距离(cm)=0.0175*时间。
(二)磁传感器
采集传感器数据之后结合地磁场的磁场分布和传感器安装位置来判断三轴磁场强度大小,利用几何关系计算出航向角。因为直接取反三角函数得到的是弧度值,所以利用π=180°变换单位。又因为得到的角度为磁场角度且范围是-90°到90°,所以根据地磁偏角得到地理角度,根据三轴磁场强度的正负将角度变换为0-360°。
(三)加速度计传感器
因为加速度计的返回值有零漂,所以让Z轴垂直向下、X轴和Y轴水平,根据几百个周期内的三轴加速度的均值和理论值消除零漂,其中X轴和Y轴的理论值为0、Z轴的理论值为g。
(四)气压传感器
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)确认,然后是8个LSB。主机发送“不确认”(NACKM),最后发送停止条件。
十、 实验结果
1 由数码管显示的结果和实际测量结果相对照可知,超声波测距传感器的结果准确。
2 可以将航向角实时显示在数码管上
3可以根据姿态角变化小灯的闪烁模式
4 能够实时的讲温度、气压和高度显示在数码管上
十一、 实验结果分析
1 超声波传感器实验标定的标度因数0.0175与理论计算得到的标度因数0.017相差很小,实验结果基本无误。受外界环境及ADC采样的影响,认为测量范围在3m之内有效,测量精度为1mm。
2 对磁传感器进行数据处理时,没有很好的考虑外部磁场的影响,存在误差
3姿态角基本正确,但在运动过程中,传感器采集的加速度信息受运动的影响会有一定的偏差
4数码管可实时更新温度、气压、高度信息。用手触摸芯片,温度会小幅度上升。通过管子对小孔吹气,可以改变BMP805输入的压力。
十二、 总结
本实验通过对四种传感器的学习,熟练了lpc1114单片机和单片机的固件库层的使用。同时,加深了对定时器、串口、IIC等内容的认识,熟悉了keil开发环境。
使用超声波测距模块有一定的局限性,例如测量倾斜的金属外壳的距离时会因为金属外壳对超声波的不规则反射导致信号丢失、测量结果偏小。
在使用磁传感器时应远离电脑等具有磁场干扰的设备。
在使用ADXL345加速度计时,加速度信息会受运动干扰,所以要注意静止一段时间之后再读数。注意在使用加速度计时消除零漂。
在使用气压传感器BMP085时,因为不同位置不同天气的大气压强在不断变化,所以会存在一定的误差,计算时要根据实际情况进行相应调整。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2021-08-26 12:16:06  更:2021-08-26 12:17:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/28 18:55:13-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计