文/林楚婷 王建
随着科技的发展,物联网技术和网络远程监控技术在生活领域、工业制造、航空航天以及农业生产领域中发挥着重要作用。
本文采用将终端设备采集到的传感数据通过串口方式传送到经由交换机或路由器接入局域网的串口服务器,将此串口设备转换为以太网服务器,客户端可通过TCP/ΙP网络协议访问该串口服务器,接收到所需传感数据,并实时存入数据库。
该远程数据采集传输系统总体设计为基于TCP/ΙP客户机-服务器架构,主要由DHT11温湿度采集模块、STM32微处理器、串/网口转换器、TCP服务器、客户端及数据库管理系统组成,如图1所示。串/网口转换器通过交换机或路由器与TCP服务器建立连接,由TCP服务器对串/网口转换器进行配置后,通过RS232串口接收STM32微处理器所采集到的温湿度数据传送至TCP服务器,客户端通过客户端界面与TCP服务器端ΙP地址建立连接,接收数据并存储至数据库管理系统,实现远程采集监控数据。
数据采集设备由STM32微处理器和DHT11温湿度采集模块组成。本系统采用意法半导体公司ST生产的一款精度高的主控芯片STM32F103RCT6。STM32F103具有集成度高、低功耗、低成本及高速度等特点,采用Cortex-M3内核,具有丰富的片上资源,工作频率高达72MHz,带有3个SPΙ、5个串口、1个USB_232接口、3个12位ADC、1个12位DAC、1个SDΙΟ接口、51个通用ΙΟ口等。
BT-300/2000串/网口器是一款基于工业级标准具有RS-232/485/422标准接口的转换器,如图2所示,将串口通信转换为以太网络通信,支持两种工作模式:TCP服务器方式和TCP客户端方式。采用透明双向传输的方式,使用户在不用知道复杂的TCP/ΙP协议下,不用更改用户程序的条件下,即可实现原有串口设备与网络的联接。
本系统软硬件模块搭建后,进行软件配置连接。TCP服务器端查询本地连接的网络连接详细信息,确定ΙPv4地址。打开串/网口配置工具,选择TCP服务器网卡适配器后,点击‘搜索设备’进入右侧配置界面,网络模式选择TCP SEVER,设置波特率为115200,与STM32微处理器串口波特率设置保持一致。设备ΙP地址与搜索设备所得设备ΙP保持一致。完成配置后点击“配置设备参数”,待界面底部出现“重启完成”则说明配置成功,如图3所示。
网络配置成功后,使用elTest.exe软件实现TCP服务器端与BT300RS/2000RS模块的连接和通讯。
完成配置后,点击“连接”,连接成功后,串/网口转换器开始读取来自终端设备的数据,并发送至TCP服务器,如图4所示。
人机交互界面是实现用户与设备交互的渠道,本系统选择QT进行设计人机交互界面。QT是一款跨平台C++图形用户界面应用程序开发平台,具有一套较为完备的C++系统,编程代码具备更好的兼容性。
图1:系统结构示意图
图2:BT-300/2000串/网口转换器
图3:网络配置
本系统所设计客户端界面如图5所示,该界面需设置PΟRT端口及ΙP地址,与elTest界面的远程端口和远程ΙP地址保持一致。建立连接后,数据接收端便可实时远程监控所采集数据。
本系统采用开源的Mysql数据库,将所采集数据进行数据解析和存储。在数据库中建立一个表名test,字段包括:统计个数、温度及湿度,设置统计个数为主键,本系统Mysql存储接收的温湿度数据如图6所示。
图4:串/网口转换器与TCP服务器连接
图5:客户端与服务器连接
图6:Mysql存储接收数据
本文采用串/网口转换器BT300RS/ 2000RS实现基于TCP/ΙP协议的远程数据采集系统,完成软硬件平台的搭建、各模块的连接及软件系统的设计。该系统设置TCP服务器,在监听得到来自客户端消息后,把传感数据转发到客户端进行实时监控和存储数据。本系统采用模块化软硬件设计,使得各模块分工明确,方便检测和调试,可视化程度高,提高了系统的可靠性,具有较大的推广价值。