模拟量传感器采集.
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
软件上就显示检测到的气体电压信息与光照电压信息。
目
录
一、实训目的
二、实训内容 三、实训原理 四、实训步骤
实训原理
本实训需要用到协调器与传感器,传感器负责采集传感数据, 把传感数据打包后通过ZigBee网络无线发出去;协调器负责建立网 络,接收传感器传来的无线数据,并发送到串口。传感器与协调器
连接拓扑图如图6.1所示。其他内容参照实训4、实训5等内容。
实训步骤
//把接收到的无线发送到串口 halUartWrite(pRxData,len); } } } 程序分析: 第14行,接收到无线数据,并得到无线数据的长度。 第16行,把接收到的无线发送到串口。
第三步,建立模块设备。
1.建立光敏传感器模块设备
实训步骤
(1)建立模块设备 选择菜单“ProjectEdit Configurations”,弹出项目的配置对 话框,如图6.2所示,系统会检测出项目中存在的模块设备。
实训步骤
void main(void) { uint16 len = 0; halBoardInit(); //模块相关资源的初始化 ConfigRf_Init(); //无线收发参数的配置初始化 halLedSet(1); halLedSet(2); while(1) { if(basicRfPacketIsReady()) //查询有没接收到无线信号 halLedToggle(4); // 红灯取反,无线接收指示 //接收无线数 len = basicRfReceive(pRxData, MAX_RECV_BUF_LEN, NULL);
模拟传感器采集
目
录
一、实训目的
二、实训内容 三、实训原理 四、实训步骤
实训目的
(1)掌握CC2530的ADC工作原理 (2)掌握模拟量传感器工作原理 (3)能实现模拟量传感器采集功能
wenku.baidu.com 目
录
一、实训目的
二、实训内容 三、实训原理 四、实训步骤
实训内容
采用气体传感器、光敏传感器,以及ZigBee模块组成一个模 拟量传感器采集系统。以Basic RF无线点对点传输协议为基础,将 一块ZigBee模块连接气体传感器模块,另一块ZigBee模块连接光敏
图6.2 项目配置对话框
实训步骤
单击“New...”按钮,在弹出的对话框中输入模块名称为:“gm _sensor”,基于Deubg模块进行配置,然后单击“OK”按钮就完成了模 块设备的建立,对话框如图6.3所示。然后在项目配置对话框中就可以 自动检测出刚才建立的模块设备“gm_sensor”。
实训步骤
//把采集数据传化成字符串,以便于在串口上显示观察 printf_str(pTxData,"光照传感器电压:%d.%02dV\r\n",sensor_v al/100,sensor_val%100); #endif #if defined (QT_SENDOR) //气体传感器 sensor_val=get_adc(); //取模拟电压 //把采集数据传化成字符串,以便于在串口上显示观察 printf_str(pTxData,"气体传感器电压:%d.%02dV\r\n",s ensor_val/100,sensor_val%100); #endif
halLedToggle(3); // 绿灯取反,无线发送指示
//把数据通过ZigBee发送出去 basicRfSendPacket(SEND_ADDR, pTxData,strlen(pTxData )); Timer4_On(); //打开定时 } /*【传感器采集、处理】 结束*/ } }
实训步骤
传感器模块;将协调器模块的串口连接到电脑,同时需要将ZigBee
模块上电,在电脑上打开串口调试软件,设置波特率38400bps、数 据位8等参数。使用打火机在气体传感器模块释放气体,通过手机电 筒照射光敏传感器模块等操作,当气体传感器检测到不同浓度的气 体时,光敏传感器检测到不同光强的光照时,会在电脑的串口调试
PC
气体传感器
光敏传感器
RS-232 协调器
ZigBee 网络
图6.1 连接拓扑图
目
录
一、实训目的
二、实训内容 三、实训原理 四、实训步骤
实训步骤
第一步,新建工程、配置工程相关设置。具体参照实训3操作。 第二步,编写程序。 由于程序很长,只能对关键部分的程序进行分析。详细见“实训 5 模拟器传感器采集/Project”目录包含的源程序文件。
程序分析: ① 第14、19行,条件编译,用来选择光敏传感器模块功能与气
体传感器模块功能。
② 第15、20行,get_adc()函数为读取AD转换电压值。 ③ 第17、22行,把采集数据按格式连接成字符串写入到pTxDat a中。 ④ 第26行,把采集数据通过ZigBee发送出去,在PC机串口调试 终端显示出来。 2. collect.c中的关键代码
实训步骤
实训步骤
#if defined (QT_SENDOR) //气体传感器 sensor_val=get_adc(); //取模拟电压 //把采集数据传化成字符串,以便于在串口上显示观察 printf_str(pTxData,"气体传感器电压:%d.%02dV\r\n",s ensor_val/100,sensor_val%100); #endif
1. sensor.c中的main函数
void main(void) { uint16 sensor_val; uint16 len = 0; halBoardInit(); ConfigRf_Init();
//模块相关资源的初始化 //无线收发参数的配置初始化
halLedSet(1); halLedSet(2); Timer4_Init(); //定时器初始化 Timer4_On(); //打开定时器 while(1) { APP_SEND_DATA_FLAG = GetSendDataFlag(); if(APP_SEND_DATA_FLAG == 1) //定时时间到 { /*【传感器采集、处理】 开始*/ #if defined (GM_SENDOR) //光敏传感器 sensor_val=get_adc(); //取模拟电压