电子说
设计简介
本项目是一个基于zigbee CC2530的照度计,传感器使用的是TI的环境光传感器OPT3001。成果如上图所示,关于OPT3001传感器硬件电路设计,可参考《基于ZigBee CC2530 opt3001的环境光传感器设计(附原理图、PCB源文件)》。
本次设计开发平台为嵌入式 IAR Embedded Workbench,该平台适用于8 位、 16 位以及 32 位的微处理器和微控制器。比较其他的ARM 开发环境,IAR 具有入门容易、使用方便和代码紧凑等特点。
关于IAR软件,可参考《Zigbee开发平台的构建》(附安装包)和《IAR集成开发环境入门》。
设计方案
本文以CC2530-ZigBee为控制核心,对从环境光传感器OPT3001 传来的数字信号进行处理,然后通过液晶屏LY-OLED 12854显示出来。系统原理框图如下图所示:
系统原理框图
软件设计
由于ZigBee-CC2530开发板对外没有I2C总线,这里采用的是普通IO口模拟实现I2C通信。
关于如何实现IO口模拟I2C通信的,可点击《OPT3001环境光传感器利用普通IO口模拟实现I2C通信调试心得》。
这里可以用示波器观察SDA、SCL波形,将其与OPT3001数据手册上的波形进行对比,查看数据是否一致(I2C通信是否成功),从而判断程序错误在哪里。
如系统原理框图所示,利用IO口模拟I2C通信成功后,接下来主要进行的就是数据读取转换及显示。OPT3001数据手册上结果转换如下图所示:
为了减小数据类型的出错率,这里对数据逐位处理,直接转换成两个相同的数据类型,然后再计算。
完整的源码可点击附件下载。
结果分析
为了检测上述简易照度计测量出的光照度值是否准确,将特安斯照度计与其一起测量,方便对比。
理论上测试范围为0~83865Lux,因测试环境有限,测试不到大值。借助按键灯和面纸,
测量的40多组数据,部分如下表所示:
照度值比较表
特安斯照度计04.931.15887116216436543660807106212351558CC2530-OPT300104224971112210439546662801106612391562
(完整的测量数据可点击附件下载)
将上述表格数据用折线图表示如下:
通过对比可知,在误差范围内,基于ZigBee CC2530 opt3001的照度值较准确。
附录:(部分测量照片)
责任编辑:gt
全部0条评论
快来发表一下你的评论吧 !