任务17 红外测距系统设计与实现[15页]
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Internet+ Education Solutions
面向物联网的CC2530与传感器应用开发
任务17 红外测距系统设计与实现
目录 Contents
项目场景说明 距离传感器 Sharp红外传感器 项目实践
Education Solutions
Internet+
项目场景
红外线测距仪指的就是激光红外线测距仪,红 外测距仪----用调制的红外光进行精密测距的 仪器,测程一般为1-5公里。在100米以内超 声波测距更有优势,但是超声波测距的距离一 般无法测量1米以内,而红外测距则可以测出 这一段距离,而且有着不错的精度。
红外发射器按照一定的角度发射红外 光束,当遇到物体以后,光束 会反射 回来,如图所示。反射回来的红外光 线被CCD检测器检测到以后,会获得 一个偏移值L,利用三角关系,在知道 了发射角度a,偏移距L,中心矩X,以 及滤镜的焦距f以后,传感器到物体的 距离D就可以通过几何关系计算出来 了。
09:43 / 6
项目思考
Sharp的红外传感器的测量原理? 红外测距传感器在生活中还有那些用途?
09:43 / 15
09:43 / 3
任务目标
某公司要生产一款红外测距设备,该设备使用GP2D12红外测距传 感器对1米以的距离的进行测量,测量到的数据通过串口上传到上位 机设备。
09:43 / 4
距离传感器
距离传感器,又叫做位移传感器,是传感器的一种,用于感应其与某物 体间的距离以完成预设的某种功能,目前以得到相当广泛的应用。
value |= (ADCH << 6)>> 4;
//取得最终转化结果,存入value中
if((value >= 86)&&(value <= 750)){
return (2547.8/((float)value*0.75-10.41)-0.42); //获取距离
}else{return 0;}
}
09:43 / 14
ADCCON3 = 0xB4;
//选择AVDD5为参考电压;12分辨率;P0_4 ADC
ADCCON1 |= 0x30;
//选择ADC的启动模式为手动
ADCCON1 |= 0x40;
//启动AD转化
while(!(ADCCON1 & 0x80));
//等待ADC转化结束
value = ADCL >> 2;
Sharp GP2D12的输出曲线图
图中,可以看到,当被探测物体的 距离小于10cm的时候,输出电压 急剧下降,也就是说从电压读数来 看,物体的距离应该是越来越远了。 但是实际上并不是这样的。
09:43 / 7
GP2D12产品参数
09:43 / 8
目录 Contents
项目场景说明 距离传感器 Sharp红外传感器 项目实践
Education Solutions
Internet+
项目分析
本项目通过距离传感器GP2D12获取传感器与阻挡物之间的距离, 并将采集到的距离值通过串口输出到上位机程序,1S更新一次。
CC2530
距离传感器
串口
09:43 / 10
项目硬件图
距离传感器原理图
09:43 / 11
距离传感器程序逻辑
开始
定义状态变量 和数组
初始化系统时钟
初始化LED
初始传感器
距离赋值
距离不为0
是
否
串口缓存数据
串口缓存数据
串口打印信息
初始化串口
延时1s
09:43 / 12
项目实现
距离模块初始化
void stadiometry_init(void) { APCFG |= 0x10; P0SEL |= 0x10; P0DIR &= ~0x10; ADCCON3 = 0xB4; ADCCON1 |= 0x30; }
//模拟 I/O 使能 //端口0_4 功能选择外设功能 //设置输入模式 //选择AVDD5为参考电压;12分辨率;P0_4 ADC //选择ADC的启动模式为手动
09:43 / 13
项目实现
模块获取数据
ຫໍສະໝຸດ Baidu
float get_stadiometry_data(void){
unsigned int value;
“飞行时间法”(flying time)是通过发射特别短的并测量此光脉冲从 发射到被物体反射回来的时间,通过测时间间隔来计算与物体之间的距 离。
距离传感器根据其工作原理的不同可分为光学距离传感器、红外距离传 感器、超声波距离传感器等多种。
09:43 / 5
红外传感器测距原理
Sharp的红外传感器都是基于一个原 理,三角测量原理。
面向物联网的CC2530与传感器应用开发
任务17 红外测距系统设计与实现
目录 Contents
项目场景说明 距离传感器 Sharp红外传感器 项目实践
Education Solutions
Internet+
项目场景
红外线测距仪指的就是激光红外线测距仪,红 外测距仪----用调制的红外光进行精密测距的 仪器,测程一般为1-5公里。在100米以内超 声波测距更有优势,但是超声波测距的距离一 般无法测量1米以内,而红外测距则可以测出 这一段距离,而且有着不错的精度。
红外发射器按照一定的角度发射红外 光束,当遇到物体以后,光束 会反射 回来,如图所示。反射回来的红外光 线被CCD检测器检测到以后,会获得 一个偏移值L,利用三角关系,在知道 了发射角度a,偏移距L,中心矩X,以 及滤镜的焦距f以后,传感器到物体的 距离D就可以通过几何关系计算出来 了。
09:43 / 6
项目思考
Sharp的红外传感器的测量原理? 红外测距传感器在生活中还有那些用途?
09:43 / 15
09:43 / 3
任务目标
某公司要生产一款红外测距设备,该设备使用GP2D12红外测距传 感器对1米以的距离的进行测量,测量到的数据通过串口上传到上位 机设备。
09:43 / 4
距离传感器
距离传感器,又叫做位移传感器,是传感器的一种,用于感应其与某物 体间的距离以完成预设的某种功能,目前以得到相当广泛的应用。
value |= (ADCH << 6)>> 4;
//取得最终转化结果,存入value中
if((value >= 86)&&(value <= 750)){
return (2547.8/((float)value*0.75-10.41)-0.42); //获取距离
}else{return 0;}
}
09:43 / 14
ADCCON3 = 0xB4;
//选择AVDD5为参考电压;12分辨率;P0_4 ADC
ADCCON1 |= 0x30;
//选择ADC的启动模式为手动
ADCCON1 |= 0x40;
//启动AD转化
while(!(ADCCON1 & 0x80));
//等待ADC转化结束
value = ADCL >> 2;
Sharp GP2D12的输出曲线图
图中,可以看到,当被探测物体的 距离小于10cm的时候,输出电压 急剧下降,也就是说从电压读数来 看,物体的距离应该是越来越远了。 但是实际上并不是这样的。
09:43 / 7
GP2D12产品参数
09:43 / 8
目录 Contents
项目场景说明 距离传感器 Sharp红外传感器 项目实践
Education Solutions
Internet+
项目分析
本项目通过距离传感器GP2D12获取传感器与阻挡物之间的距离, 并将采集到的距离值通过串口输出到上位机程序,1S更新一次。
CC2530
距离传感器
串口
09:43 / 10
项目硬件图
距离传感器原理图
09:43 / 11
距离传感器程序逻辑
开始
定义状态变量 和数组
初始化系统时钟
初始化LED
初始传感器
距离赋值
距离不为0
是
否
串口缓存数据
串口缓存数据
串口打印信息
初始化串口
延时1s
09:43 / 12
项目实现
距离模块初始化
void stadiometry_init(void) { APCFG |= 0x10; P0SEL |= 0x10; P0DIR &= ~0x10; ADCCON3 = 0xB4; ADCCON1 |= 0x30; }
//模拟 I/O 使能 //端口0_4 功能选择外设功能 //设置输入模式 //选择AVDD5为参考电压;12分辨率;P0_4 ADC //选择ADC的启动模式为手动
09:43 / 13
项目实现
模块获取数据
ຫໍສະໝຸດ Baidu
float get_stadiometry_data(void){
unsigned int value;
“飞行时间法”(flying time)是通过发射特别短的并测量此光脉冲从 发射到被物体反射回来的时间,通过测时间间隔来计算与物体之间的距 离。
距离传感器根据其工作原理的不同可分为光学距离传感器、红外距离传 感器、超声波距离传感器等多种。
09:43 / 5
红外传感器测距原理
Sharp的红外传感器都是基于一个原 理,三角测量原理。