APP下载

基于CC3200的设备电源远程控制系统设计

2017-03-21王元月赖其涛

计算机测量与控制 2017年2期
关键词:服务器端调用客户端

王元月,赖其涛

(1.绍兴职业技术学院 机电工程学院,浙江 绍兴 312000;2.绍兴职业技术学院 信息工程学院,浙江 绍兴 312000)

基于CC3200的设备电源远程控制系统设计

王元月1,赖其涛2

(1.绍兴职业技术学院 机电工程学院,浙江 绍兴 312000;2.绍兴职业技术学院 信息工程学院,浙江 绍兴 312000)

针对工业设备电源接入无线网络实现远程监测与控制的要求,设计了一款基于CC3200的数据实时监测和远程控制系统,并给出了硬件和软件设计方案;系统采用CC3200内嵌的应用MCU对电源进行信息采集和控制,采集的数据通过内嵌的Wi-Fi网络处理器无线传递到本地服务器并存入SQL数据库中,而来自终端的控制命令通过Wi-Fi处理器接收并送给应用MCU处理;实验结果表明系统运行稳定可靠,灵活高效,具有良好的应用前景。

CC3200;Wi-Fi;设备电源;socket

0 引言

目前,一些工业设备安装的地点跟设备管理人员所在处距离相隔较远,而这些设备由于环境的变化或者软件的原因容易出现死机的现象,为了方便工作人员的管理和维修,缩短设备故障时间。因此,将电源接入网络实现远程控制系统的研制刻不容缓[1-2]。而CC3200的出现给电源的联网管理带来了新的途径。该芯片符合网络标准IEEE802.11,内置TCP/IP协议栈,它能轻松实现以太网信号和无线网Wi-Fi信号之间的转换,使传统电子设备更好地加入网络[3],从而实现电子设备的远程监测和管理。基于此,提出了基于CC3200的设备电源远程控制系统,利用CC3200内嵌的应用MCU将现场采集的电源参数通过WI-FI网络处理器将数据上传到服务器,设备管理人员通过客户端的软件平台可以实时监控工业设备电源的参数,并对电源进行远程控制。

基于Wi-Fi的无线监测系统,与传统的有线监测系统相比,具有超低功耗、低成本、结构简单、安装方便、易于扩展等特点。电源管理中引入Simplelink Wi-Fi CC3200芯片,降低了设备电源的管理成本,提高了管理效率。

1 系统的总体设计

无线电源控制系统方案采用TI公司推出的片上Wi-Fi MCU CC3200作为核心处理器、配合服务器、路由器、终端设备等并辅以必要的外围电路将设备电源接入网络,实现设备电源的远程管理和控制。系统总体结构如图1所示,CC3200内含无线WI-FI处理器需要相应的Wi-Fi无线收发电路才能实现无线数据的收发;辅助电路包括电源电路、复位电路以及时钟电路等[4];服务器主要是起到数据转发,以及数据存储和数据查询的功能;路由器和服务器的功能差不多,但是路由器不能对数据进行存储,只能对数据进行转发。

系统功能要求如下:1)CC3200内嵌的ARM Cortex-M4 MCU周期性的采集设备电源的输出电压、电流、工作温度和湿度信息;2)CC3200通过继电器控制电源的开/关状态;3)CC3200模块作为STA与无线AP连接,通过socket技术与局域网内的本地服务器进行数据传输,远距离可以用中继器将路由信号放大;4)服务器将接收的电源数据存入SQL数据库中;5)用户可通过终端设备PC、平板或手机的平台软件实时查看电源信息,同时也可通过平台软件向电源发送关断或开启命令。

图1 系统结构框图

2 硬件的实现

2.1 CC3200模块

图3 CC3200模块电路

电路核心是TI公司推出的一款高端、低成本、低功耗的CC3200芯片,它由应用MCU子系统、无线WI-FI网络处理器子系统和电源管理子系统构成。应用MCU子系统包括一个行业标准的ARM Cortex-M4内核,集成了各种外设接口,包括快速并行相机接口,I2S,SD / MMC,UART,SPI,I2C,四通道12位ADC等;Wi-Fi网络处理器子系统包含一个片上互联网和一个专用的ARM单片机,该子系统符合网络标准IEEE802.11支持多个互联网协议,其内部有802.11b/g/n Radio、802.11b/g/n PHY和具有强大加密引擎的802.11b/g / n MAC,提供快捷、安全的256位加密无线局域网和互联网连接;电源管理子系统集成了DC-DC转换器支持两种供电配置,一种是宽电压模式,芯片的供电电压范围为2.1~3.6 V;另一种预稳压模式由1.85 V供电。它具有低功耗运行机制,具实时时钟 (RTC) 的休眠模式所需电流少于4 μA,低功耗深度睡眠 (LPDS)小于120 μA[5-7]。

CC3200模块负责采集设备电源的电压、电流、工作温度和湿度信息,并将这些信息通过Wi-Fi网络处理器发送出去;该模块还要负责接收来自终端的电源开/关命令,并通过继电器控制电源的工作状态。硬件构成如图2,包括温度湿度传感器模块、继电器、A/D转换以及供电模块。

图2 硬件构成框图

CC3200集成度很高,只需要外加一下简单的元器件就能实现无线控制功能,主要电路如图3。电源信号的采集以及电源开/关的控制采用CC3200中内嵌的应用MUC来完成,应用MCU以ARM Cortex-M4为核心,其内置高达256 KB的RAM以及四通道的12位模数转换器ADC,因此对电源输出的直流电压和电流的采集不需外置A/D转换器;系统中采用温湿度传感器DHT11对电源的工作温度和湿度进行检测,以I2C方式与微处理器通信;系统通过应用MCU输出的电平来控制继电器线圈的通断,从而实现设备电源开关的通断控制。CC3200芯片采用宽范围的电源电压模式,由3.3电源供电,为了得到一个稳定的3.3 V电压,使用TI 公司的REG117-3.3芯片将5 V转换成到3.3 V电压输出。

2.2 Wi-Fi无线收发电路

CC3200 内含的无线Wi-Fi 子系统内部没有自带的射频功能,因此需要外加的外围射频电路才能实现射频收发,电路图4 所示。它的射频为单端输入输出,在Pin 31上复用,其中待发送的无线信号从CC3200 的无线发射引脚RF_BG(Pin 31)出来,经过一个2.4 GHz 带通滤波器(BPF)和阻抗匹配网络后,再由一个2.4 HGz 的天线辐射到空间中。图中U3是2.4 G的带通滤波器,由于不同芯片射频发射和接收的内部设计不同,射频上会产生不同的杂散,所以需要特殊的频段用以抑制二次和三次谐波和带外杂散。射频部分的设计分为两部分,一部分是电路的传导部分,另外一部分是天线电路。在布线时需要控制阻抗,使其在2.4 GHz工作频段为50 Ohm,以此来确保电路拥有较好的传输特性[8]。2.4 GHz的天线选用体积小,使用方便的陶瓷天线,它是全向天线,没有明显的方向性,符合Wi-Fi应用的需求。

图4 Wi-Fi无线收发电路

3 软件的实现

系统采用server/client网络架构模式,CC3200作为客户端将采集的数据上传至服务器或者接收网络终端发来的数据。Wi-Fi与服务器之间通信方式有两种:一是采用socket通讯方式与服务器建立链接传输数据,另一种是采用WEB服务器,Wi-Fi将数据以post方式或者get方式提交到服务器,服务器可返回数据给Wi-Fi。本方案中采用socket通信通过TCP协议与服务器进行数据的传输。Socket为程序内部与外界通信的提供了端口,并提供了通信双方的数据传输通道,Socket通信在服务端和客户端建立好连接后就可以直接进行信号的传输。

3.1 客户端软件

CC3200作为客户端,它的任务主要是两个,一是采集设备电源的电压、电流、温度等信息通过Wi-Fi处理器无线发送出去;二是接收来自终端的控制命令并执行。客户端工作流程如图5。

图5 客户端工作流程

CC3200支持AP和STA组网模式,AP是无线接入点,是无线网络的中心节点;STA是无线网络的终端,也就是无线站点。本方案中CC3200的Wi-Fi选用STA模式,Socket通信选择TCP/Client模式,CC3200作为TCP/Client,服务器作为TCP/Server,CC3200与服务器采用socket通信。因为客户端CC3200配置成STA模式,它的IP地址是由无线AP自动分配的,需要配置目标的路由参数,程序通过调用sl_start()函数启动SimpleLink,再调用sl_wlanconnect()连接到接入点AP,调用sl_netapppingstart()函数ping AP检查网络是否可以通信。

客户端需要与服务器建立socket连接进行数据的传输,客户端建立socket连接通信的流程如图6,客户端首先调用socket()函数创建一个套接字[9],然后调用connect()函数发送连接请求与指定的服务器socket连接,并等待服务器的应答信息,与服务器连接成功后,与之进行数据的传输,数据传输完毕后,关闭Socket连接。

3.2 服务器端软件

在系统设计中,服务器端负责接收Wi-Fi 网络处理器上传的数据信息,然后按照协议格式检出电源ID、电压、电流、温度和湿度并存储到SQL数据库中;服务器也会将终端的控制命令发送到客户端,服务器端的工作流程如图7。

图6 socket通信流程

图7 服务器端的工作流程

服务器端需要建立socket连接与客户端传输数据,服务器端建立socket连接流程如图6,在建立socket通信时,服务器端首先调用Socket()函数创建套接字,使用bind()函数将本地协议地址绑定到创建的套接字上[9],接下来调用listen()函数监听客户端发来的连接请求、用循环的方式调用accept()函数接收客户端的连接请求,如果检测到来自客户端的连接请求时,会向客户端回应收到请求连接的信息,并建立服务器与客户端之间的连接。服务器与客户端建立好socket连接后,TCP协议为两者提供全双工的通信服务,服务器从accept()函数返回后就立刻调用read()函数,如果没有数据到达就阻塞等待,这时客户端调用write()函数发送请求给服务器,服务器收到来自客户端发来的请求后从read()函数返回,对客户端的请求进行处理,在此期间客户端调用read()阻塞等待服务器的应答,服务器调用write()将处理结果发回给客户端,再次调用read()阻塞等待下一条请求,客户端收到后从read()返回,发送下一条请求,如此循环下去完成数据的传输,当通信完成后,关闭Socket连接。

4 测试结果及分析

把已编写好的程序下载到CC3200芯片中,服务器安装好已编写好的服务器端程序,将系统上电,CC3200模块Ready灯亮表示工作正常,Link灯亮表示模块已连接到路由器,将服务器接入同一个网络。打开服务器端平台软件设置好IP地址和端口号,点击启动后,窗口将会显示来自CC3200模块采集的电源参数,CC3200模块每2秒钟向服务器上传电源参数,系统中需要监控的电源用于太阳能电池组件测试设备(EL测试仪),它是一种具有恒压恒流特性的开关电源,输出稳压值为0~100 V,输出电流为0~15 A,工作频率为32 kHz。测试结果如图8。

图8 服务器端程序测试结果

图8窗口中电源参数分别是电源ID号、电压、电流、温度和湿度,这些参数将会写入到网络数据库SQL Server的表中,打开SQL中的数据表将会看到这些数据,测试结果如图9。

图9 数据写入数据库

通过网络,用户在客户端可及时收到远程现场采集的数据,远程现场的电源状态可实现实时监测和控制。网络终端界面如图10。

图10 网络终端界面显示数据

5 结论

本文介绍的设备电源控制系统采用CC3200芯片对电源的状态及参数进行检测,与服务器建立socket连接进行数据传输,系统完成了对设备电源的实时监控,为远程监控电源的实现提供了全新的途径。该系统采用CC3200芯片进行设计,简单容易实现,经过实验结果分析,数据采集及数据的传送稳定,数据无错误,该系统采用SQL数据库可实现大容量数据的采集,服务器端软件预留了监控电源,很容易实现监控电源的添加。

[1] 王刚刚,杨 燕,王 正.基于物联网的高校大型仪器设备电源控制系统研究(一)[J].林业机械与木工设备,2016,44(4):20-24.

[2] 穆莉莉,薛程光.基于以太网的设备电源远程控制系统设计[J].安徽理工大学学报(自然科学版),2015,35(2):48-52.

[3] 陈颖莹.芯片上的网络TI SimpleLink Wi-Fi让联网如此简单[J].电子技术应用,2014,40(7):2-2.

[4] 郭书军,田志鹏.基于单片Wi-Fi MCU CC3200的无线串口[J].仪器仪表用户2016(1):24-27.

[5] Texas Instruments.CC3100/CC3200 SimpleLinkTMWi-Fi ® Internet-on a Chip User’s Guide[EB/OL]. http://www.ti.com.cn/cn/lit/ug/swru368a/swru368a.pdf. 2015.

[6] Texas Instruments.SimpleLinkTMCC3100/CC3200 Wi-Fi Internet-on-a-chipTMNetworking Sub-system Power Management [EB/OL]. http://www.ti.com.cn/cn/lit/an/swra462/swra462.pdf, 2015.

[7] 林 婷,王 磊.基于CC3200及MT9D111的嵌入式无线图像采集系统设计[J].技术与市场, 2015(9):9-11.

[8] Texas Instruments.CC3200 SimpleLink Wi-Fi and Internet of Things Solution,a Single Chip Wireless MCU Technical Reference Manual[EB/OL].http://www.ti.com.cn/cn/lit/ug/swru367c/swru367c.pdf,(2016-05 -18).

[9] Texas Instruments. CC3200 SimpleLinkTMWi-Fi® and IoT Solution, a Single Chip Wireless MCU Programmer's Guide[EB/OL].http://www.ti.com.cn/cn/lit/ug/swru369c/swru369c.pdf.

Design of Equipment Power Remote Control System Based on CC3200

Wang Yuanyue1, Lai Qitao2

(1.School of Mechanical&Electrical Engineering, Shaoxing Vocational&Technical College, Shaoxing 312000, China;2.School of Information Engineering,Shaoxing Vocational&Technical College, Shaoxing 312000, China)

For the demands of wireless monitoring and control of industrial equipment power to access the wireless network, a network equipment power control system was designed based on CC3200.The paper gave hardware and software design scheme. The system used the applications MCU embedded in the CC3200 to carry on the information collection and the control to the power. The collected data was transmitted to the local server through the embedded Wi-Fi network processor and stored in the SQL database. The commands from the terminal was received by the Wi-Fi processor, and the commands was sent to the applications MCU. After several reliability tests, the system was stable and reliable, flexible and effective, and has good prospects for practical application.

CC3200;Wi-Fi;equipment power;socket

2016-09-22;

2016-10-16。

王元月(1977-),女,贵州毕节人,硕士,讲师,主要从事电源技术及智能控制方向的研究。

1671-4598(2017)02-0098-04DOI:10.16526/j.cnki.11-4762/tp

TP

A

猜你喜欢

服务器端调用客户端
你的手机安装了多少个客户端
“人民网+客户端”推出数据新闻
——稳就业、惠民生,“数”读十年成绩单
Linux环境下基于Socket的数据传输软件设计
核电项目物项调用管理的应用研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用
新华社推出新版客户端 打造移动互联新闻旗舰
利用RFC技术实现SAP系统接口通信