智能人数统计、环境监测等系统,一直以来备受无线通信及电子行业的高度关注,并被广泛应用于机场、车站、剧院等人流量较大且空间有限的环境资源中。教室作为现在大学生最为熟悉的学习场所,其环境的优劣直接关系到学生的学习效率。教室人数统计系统作为出勤率统计的辅助系统,一方面,服务于教师,使教师能将精力集中于教学活动而非出勤率考量活动(点名或签到);另一方面,便于学校教师管理部门实时获得教室利用率等信息的传递与反馈,从而合理安排教室资源,同时也有助于同学快速了解教室使用情况。
蓝牙无线技术是使用范围广泛的全球短距离无线标准之一,蓝牙技术联盟(SIG)于2010年7月发布了蓝牙4.0版本核心规范,自此蓝牙迈入了4.0时代。蓝牙4.0规范的核心是低功耗技术,即蓝牙4.0BLE。该技术最大特点是拥有超低的运行功耗和待机功耗,蓝牙低功耗设备使用一粒纽扣电池便可以持续工作数年之久。同时,该设备可以应用于对成本和功耗都有严格要求的无线方案,并广泛应用于医疗保健、体育健身、家庭娱乐、传感器物联网等众多领域。
因此,本文设计了一种基于最新蓝牙4.0技术的教室人数统计系统,相比于已有的人数统计系统,具有低成本、低功耗和更好的通用性能,扩展了无线传感器网络在智能手机、平板电脑等移动终端上的应用,具有很高的实用价值和参考价值。
1 系统架构
系统主要由CC2540射频单片机、液晶显示器、红外光电传感器、温湿度传感器及WiFi模块组成,分为教室前门和后门两个子系统,其中,前门蓝牙模块作为主节点(Central),而后门蓝牙模块作为从节点(Peripheral)。与后门系统相比,前门系统多了一个WiFi模块,其主要作用是为手机终端和上位机提供连接。系统组成框图如图1所示。
前后门子系统的温湿度传感器和光电传感器负责采集教室的温湿度、人数信息,前门(后门)子系统将采集到的数据通过蓝牙4.0协议发送到后门(前门)子系统,接收到的数据将通过液晶显示器显示在门口,也可以通过WiFi发送给上位机监控终端和手机终端。
2 系统的硬件设计
2.1 处理器单元
主控单元以CC2540射频单片机为核心,CC2540是TI公司推出的集成了2.4 GHz射频收发器、完全兼容8051内核的无线射频单片机,它与蓝牙低功耗协议栈共同构成高性价比、低功耗的片上系统(SoC)解决方案,非常适合蓝牙低功耗应用。它也包含了丰富的硬件资源,包括21个通用I/O口、8通道12位ADC、3个通用定时器、2个串口、5通道DMA,支持SPI、USB等。
CC2540外围电路简单,外接几个阻容器件构成的滤波电路和PCB天线即可实现网络节点的构建。CC2540最小系统主要由32 MHz片外晶振、32 kHz睡眠晶振、复位电路、+5 V电源及去耦电容、射频阻抗匹配电路及单极性PCB天线组成。如果芯片不需要休眠,32kHz晶振可以不用。 CC2540芯片外部接口电路如图2所示。
其中,L1为磁珠,型号为BLM15HG102SN1D,其在100 MHz时,阻抗为1 kΩ。
2.2 WiFi模块
人数统计模块与服务器端通过WiFi模块实现数据传输,一般校园内的无线网络都使用WiFi覆盖并且会覆盖每一个教室,为了节约成本,可以合理利用现有的资源,实现每个数据统计模块与服务器之间的无线通信。
WiFi模块选用的芯片是海凌科电子推出的低成本模块HLK—RM04,该模块是基于通用串行接口的符合网络标准的嵌入式模块,内置TCP/ IP协议栈,能够实现用户串口、以太网、无线网(WiFi)3个接口之间的转换。通过HLK—RM04模块,传统的串口设备在不需要更改任何配置的情况下,即可通过Internet网络传输自己的数据。HLK—RM04模块通过串口与CC2540相连。
2.3 传感器模块
温湿度传感器采用瑞士Scnsirion公司推出的一款数字温湿度传感器芯片SHT11。其主要特点如下:将温度感测、湿度感测、信号变换、A/D转换和加热器等功能集成到一个芯片上;提供二线数字符串行接口,接口简单、传输可靠性高、测量精度可编程调节、测量精确度高、封装尺寸超小,测量和通信结束后,自动转入低功耗模式。将其数据线接口外接上拉电阻,电源与地之间加上100nF去耦电容,CC2540就可以用它来采集温湿度信息。
光电传感器选用的是上海泰武电器有限公司型号为E3F-DS304C的光电传感器,其本身已经将放大器LM324、电阻等外围器件集成在该模块内,并引出三根线,分别是地线、数据线和电源线。只要将数据线直接接在CC2540的外部中断接口并接好电源和地线,就可以实现计数的功能。在前后门系统各装两个光电传感器,并排架设,一前一后。
3 系统的软件设计
系统软件设计是根据蓝牙4.0BLE协议,在蓝牙4.0BLE协议栈基础上构建节点应用程序,实现蓝牙设备的互联以及无线数据的发送。此协议栈不仅完全支持CC2540芯片的单模模式,而且还具有结构简单、清晰、兼容性高以及可以免费下载等优点,极大地节省了系统开发的成本。
协议栈代码以C语言为基础,具有很强的易读性,开发人员只需要修改部分代码便能实现相应的特定功能,节省了软件开发的时间及成本。协议栈的实现方式采用分层的思想,从下到上一共分了8层,分别为物理层、链路层、控制接口层、逻辑链路控制及自适应协议层、安全管理层、属性协议层、通用访问配置文件层 (GAP)、通用属性配置文件层(GATT),掌握与应用紧密关联层(GAP和GATT)就可以满足大部分设计需要。
上一篇:基于单片机的快速代码生成方法
下一篇:CC1101的远距离无线数据传输协议设计
推荐阅读最新更新时间:2024-03-16 14:47
设计资源 培训 开发板 精华推荐
- TI有奖直播|精密 ADC 在变送器中的应用
- 看泰克视频讲座,了解先进医疗电子测试方案,填问卷,赢好礼!
- ADI有奖下载活动之11 ADI锂电池测试设备解决方案
- 电工也疯狂!玩游戏,晒得分,赢4G U盘!
- 免费申请|Maxim 高性能模拟工具包(内含78个器件)
- 深入剖析恩智浦LPC1000处理器
- 答题赢好礼!ADI技术直通车——汽车应用娱乐与信息交互解决方案
- ADI有奖直播:基准电压源产品技术及应用选择 7月25日上午10:00-11:30 不容错过~
- 直播已结束|如何通过【TI MSPM0 固件示例】及【常用电机驱动器方案和拓扑】,在10分钟内旋转电机
- 下载有礼|ADI 最新《模拟对话》合订本