实验8-传感器之光敏篇_第1页
实验8-传感器之光敏篇_第2页
实验8-传感器之光敏篇_第3页
实验8-传感器之光敏篇_第4页
实验8-传感器之光敏篇_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

讯方公司传感器实验实验八传感器之光敏篇传感器实验八光敏传感器光敏传感器8.1实验简介8.1实验简介光敏传感器中最简单的电子器件是光敏电阻,它能感应光线的明暗变化,输出微弱的电信号,通过简单电子线路放大处理,可以控制LED灯具的自动开关。因此在自动控制、家用电器中得到广泛的应用,对于远程的照明灯具,例如:在电视机中作亮度自动调节,照相机种作自动曝光;另外,在路灯、航标等自动控制电路、卷带自停装置及防盗报警装置中等。光敏传感器主要应用于太阳能草坪灯、光控小夜灯、照相机、监控器、光控玩具、声光控开关、摄像头、防盗钱包、光控音乐盒、生日音乐蜡烛、音乐杯、人体感应灯、人体感应开关等电子产品光自动控制领域。8.28.2实验目的通过该实验项目,学生能够了解光敏传感器的硬件电路和工作原理;通过该实验项目,学生能够学会编写光敏传感器的程序。8.38.3实验内容编写一个读取光敏传感器输出电平信号的程序;将光检测状态做简单的处理显示,正常无光状态为0,检测到光的状态为1;用按键KEY1控制ZIGBEEN是否发送数据。8.48.4实验设备硬件部分ZIGBEE调试底板一个;电源开关电源电源开关电源传感器C端口指示灯2J-LINK接口ZigBee_DEBUG复位键节点按键拨码开关ZigBe按键红外发射指示灯1ZigBee复位键可调电阻传感器A端口传感器B端口图8-1ZIGBEE调试底板20PIN转接线一条和带USB的J-Link仿真器一个;20PIN转接线20PIN转接线,另一端接转接板方口USB线,另一端连接电脑上电指示灯方口USB线,另一端连接电脑上电指示灯图8-2J-Link仿真器10PIN转接线接口10PIN转接线接口20PIN转接线接口20PIN转接线接口串口接口图8-3转接板9~12V电源适配器2个;图8-4电源适配器带普通USB线的ZIGBEE仿真器一个;10PIN10PIN转接线普通USB普通USB线电源(上)和状态指示灯图8-5ZIGBEE仿真器智能网关一台; ZigBee模块组合接口USB下载数据线ZigBee模块组合接口USB下载数据线显示屏SD卡电源及开关显示屏SD卡电源及开关开关按钮图8-6智能网关ZIGBEE模块两个;图8-7ZIGBEE模块光敏传感器一个;灵敏度调节旋钮,顺时针增大模拟信号输出光敏感应探头输出信号指示灯,低有效GND输入TTL信号输出灵敏度调节旋钮,顺时针增大模拟信号输出光敏感应探头输出信号指示灯,低有效GND输入TTL信号输出+5V输入图8-8光敏传感器10PIN转接线和传感器连接线各一条。图8-9转接线与传感器连接线软件部分KeiluVision4集成开发环境;JLINK仿真器驱动;8.58.5实验知识模块介绍,如图8-8所示尺寸:长32mmX宽11mmX高20mm主要芯片:LM393、光敏感应探头工作电压:DC4.5-12V工作电流:<1.5mA特点:带模拟信号输出0-5V输出,可以直接ADC采集;带高低电平检测信号输出,有光照输出低电平,无光照输出高电平;输出有效信号为低电平,带LED指示输出;灵敏度电位器可调(精调),调节光照强度检测范围;电路板DOUT接口输出,可直接接单片机IO口,无光照输出高电平指示灯灭,有光照输出低电平,指示灯亮,响应时间<2μs;带固定安装孔,方便安装调试。光敏传感器工作原理电路中用到,光敏传感器电路、信号放大电路、单片机系统、状态显示系统构成。其基本工作原理:经过信号放大电路,光敏传感器电路将感受到光程度以高低电平形式输出至单片机系统,由状态显示系统进行显示。光敏传感器工作框图如图8-10:光敏传感器电路信号放大电路单片机系统状态显示系统光敏传感器电路信号放大电路单片机系统状态显示系统图8-10电路工作框图光敏传感器的硬件电路图电路中,光敏传感器电路如图8-11。图8-11光敏传感器硬件图8.58.5实验步骤烧好ZIGBEE和智能网关程序。(如果没有动传感器ZIGBEE和网关的程序,那么此步骤可以跳过;如果动了,详细下载过程可参考“传感器实验之环境搭建.doc”文档,这里恕不赘述。)将光敏传感器接到传感器A端口。可以在图8-1所示中找到传感器A端口的位置,对应原理图上的J4,如图8-11所示,切勿把传感器位置装错了。连接好外围硬件电路,如图8-12所示。(这个连接过程当中很多的卡槽,千万别把卡槽卡装反了,不然很容易烧坏J-Link。)J-Link,左边直接用USB线连接电脑20PIN连接线10PIN连接线传感器链接ZIGBEEN调试底板和ZIGBEEN模块转接板,这样类似的卡槽千万别装反了,不然可能烧坏J-Link电源J-Link,左边直接用USB线连接电脑20PIN连接线10PIN连接线传感器链接ZIGBEEN调试底板和ZIGBEEN模块转接板,这样类似的卡槽千万别装反了,不然可能烧坏J-Link电源图8-12外围硬件连接示意图将仿真器USB连接入PC机,插好电源,并打开开发实验箱上的电源开关和启动按钮,跳到网关显示界面,然后点击功能键进入,如8-13图所示。点击这进入功能界面点击这进入功能界面图8-13网关显示界面找到传感器实验图标如图8-14所示,点击进入传感器实验显示界面如8-15图所示。图8-14传感器实验显示程序图8-15网关传感器显示界面新建一个文件夹命名为“光敏传感器”,并在该文件夹下创建一个“RVMDK“文件夹(存放工程用);然后在“RVMDK”文件夹下新建一个“OBJ”文件夹(用来存放编译输出信息);在“传感器实验/实验例程/实验8传感器之光敏篇/code”文件夹下找到“rsc”文件夹,把它复制到到“光敏传感器”文件夹下,即与“RVMDK”文件夹并列;启动KeilμVision4;单击菜单栏的“Project”,选择“NewuVisionProject”,新建一个工程,命名为“LIGHT”;保它存在刚建立好的“光敏传感器”里面的“RVMDK“文件夹下;右键“Target1”,选择“ManageComponents”选项;把“Target1”修改为“LIGHT”,把SourceGroup1”改命为“Starup”并创建六个Groups,分别是“user”“usart”“lib”“led”“sensor”“key”。如图8-16所示;然后给每个Group分别在添加好对应的.c文件,(.c文件在刚刚复制过来的“rsc”文件夹里面),添加完成图8-16所示;图8-16文件示意图单击工具栏的“Rebuid”图标,直到编译没有警告和错误,如果有就根据警告和错位,进行修改程序;点击工具栏的“TargetOptions”,选择“Output”,把输出文件位置设置在“OBJ”下,并且设置有hex输出;点击工具栏的“TargetOptions”配置好J-Link;打开ZIGBEE地板上的电源开关,点击“LOAD”进行程序烧写验证;(以上建工程详细过程可以参考实验二)验证:先把光敏传感器放置黑暗中,然后改变光照,观察显示屏上状态的变化;验证完毕后,退出J-Link仿真界面,关闭KeilμVision4软件;关闭硬件电源,捡收好硬件设备,并整理桌面;实验完毕。8.78.7实验验证程序是否能运行和编译成功如图8-17所示为编译成功图:图8-17编译通过截图改变光敏传感器的光照强度,观察显示屏上显示的状态是否发生变化图8-18所示为光敏传感器未感应到强光时网关上所显示:图8-18未感应强光时的显示图8-19所示为光敏传感器感受到强光时网关上所显示:图8-19感应到强光时的显示8.88.8实验部分参考程序解析(完整程序见源程序文件)采集数据函数协议集介绍:整个数据位其实一共是10个字节,除去2个字节的头和2个字节的校验,所以一共要采集的是数据其实有6个字节。(可以参照“传感器通信协议.doc”文档)sensor_get_data(senser_type,&sensordata[2]);是采集函数,它首先保留了两个字节作头。然后调用u8sensor_get_data(u8type,u8*data1)函数。u8sensor_get_data(u8type,u8*data1){u8*data=&data1[1]; u8no_sensor=1;//有无传感器判断标志*data1=type;//传感器类型//************传感器采集数据************// switch(type){caseSENSOR_LIGHT5537: //判断光敏传感器GetSensorData(data);//采集数据break;default:no_sensor=0;break;}returnno_sensor;}分析:从这个函数不难看出,这里有1个字节的传感器型号。所以传感器还要获取只有五个字节的数据,其中包括符号。voidGetSensorData(u8*data){data[0]=0;data[1]=0;data[2]=!SENSOR2_IN();//读取传感器输出值//********D5输出显示*********// if(data[2]==1)Led_Ctr(LED1_ON);//感光点亮elseLed_Ctr(LED1_OFF);//未感光熄灭data[3]=0;data[4]=0;}分析:这便是传感器采集的五个字节的数据。从图8-20不难看出,当光敏传感器的见到强光时,STM32采集进来的是低电平信号,此时LED被点亮。这里特别需要注意的是,这里我们为了保持网关平台采集信号的一致性,也就是高电平触发报警,所以这里的信号必须进行取反处理;所以光敏传感器使用data[2]=!SENSOR2_IN(),进行数据采集,其中SENSOR2_IN();的宏定义为((Sensor_IO_PORT->IDR&Sensor_IO_PIN2)>>Sensor_IO_NUM2);其本质也就是采集PB7口的电平变化情况来判断光照强度的状态。图8-20光敏传感器的原理图串口发送数据函数voidUSART2_Senddata(u8*str){u8i,checksun_xor=0,checksun_add=0;u8ct=10;str[0]=0xff;str[1]=0x55;for(i=0;i<ct-2;i++) { checksun_xor^=str[i]; checksun_add+=str[i]; }str[8]=checksun_xor;str[9]=checksun_add;while(ct--!=

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论