基于智能手机的超声波除垢系统信号源控制模块设计*
2020-03-08张伟光王国荣余昌筠
杨 旭,张伟光,王国荣,余昌筠
(哈尔滨师范大学)
0 引言
目前广泛应用于换热器的超声波除垢系统,其主要构造由两部分构成,分别是机箱和换能器[1],其主要结构示意图如图1所示.
图1 超声波除垢系统示意图
其工作原理是通过机箱发出间歇性脉冲束驱动换能器产生超声波,使得焊接在换热器罐体前后两端的换能器震动进而带动换热器的罐体震动,使换热器内部的水垢在超声波的作用下发生一系列反应,使其物理和化学性质发生改变,最后松动、裂开、脱落,从而达到除垢的目的[2].实验表明,为了达到最佳除垢效果,在换热器上第一次安装超声波除垢系统时,需要在换热器上添加一个压电陶瓷传感器并且用示波器观察调节脉冲束超声波频率,当该频率与换能器和罐体本身谐振频率一致后,罐体产生最大振幅,此时除垢效果最佳.传统的调频方式是在主机箱上进行操作,但是换热器被测罐体位置和主机箱的距离过远,不便于操作调节,如果近距离安装主机箱,有可能会带来安全隐患.所以,为了解决这一问题,该文介绍了一种基于智能手机的超声波除垢系统信号源模块的设计思路.该模块使用无线控制技术,实现了远距离控制机箱产生的间歇性脉冲频率的功能.
1 整体设计方案
1.1 除垢机箱整体构造
超声波除垢系统的整体原理框图如图2所示,其中信号源起到产生间断性脉冲信号的作用,主控可以实现控制信号源频率以及其他控制功能.功放的功能是将信号源产生的脉冲进行放大,然后输出给换能器[3],超声波换能器可以把电能转换成超声波.
图2 超声波除垢系统结构框图
1.2 整体设计思路
传统的机箱频率调节采用按键或者红外遥控,有一定的限制性.该文的设计思路是在信号源处集成一个WiFi芯片和MCU,通过智能手机控制端调节信号源的脉冲频率.整体控制流程如图3所示,智能手机控制端将控制指令通过TCP通信方式发送到ESP8266WiFi芯片,WiFi芯片使用串口通信,将指令发送给MCU,MCU对收到的信息做出相应处理后,通过SPI通信方式发送给受控电路,达到控制脉冲频率的目的.
图3 模块工作流程图
1.3 WiFi芯片选择
鉴于WiFi芯片的传输频段较高,该文采用WiFi作为无线控制方式,可以避免工厂环境的高频信号对无线信号的干扰.WiFi芯片选择上海乐鑫公司生产的ESP8266,ESP8266WiFi芯片是面向物联网应用的一款高性价比、性能稳定、功耗低、高度集成的WiFi MCU[4],工作温度范围大,能够适应各种操作环境.而且ESP8266本身集成了32位Tensilica处理器,标准的数字外设接口等功能,满足实验和工程的绝大部分需求.同时,ESP8266WiFi芯片实现了超低功耗功能,其省电模式适用于各种各样的低功耗应用场景[5].
1.4 智能手机控制端开发平台的选择和应用
智能手机控制端的Android APP,选择使用Android studio作为开发工具,Android studio是基于IntelliJ IDEA,可以开发和调试智能手机APP的具体功能和UI设计,类似于Eclipse的ADT.其操作简单,编程语言多元化,是目前市面上主流的Android APP开发工具.通过Android studio进行智能手机控制端APP的界面UI设计,UI的按键功能定义[6],以及TCP通信协议和数据传输功能的定义与编写,成功开启TCP通信模式,实现手机和WiFi芯片的数据交流,从而把智能手机控制端的控制指令发送给WiFi芯片[7].
2 硬件电路的设计
主控的MCU选择STM32F103CBT6,该芯片是一款低功耗,性能优越,性价比极高的MCU,模块中的MCU和WiFi芯片进行串口通信,接收来自智能手机的控制指令.硬件原理图如图4所示,WiFi芯片通过串口通信和MCU进行数据交换,将从智能手机控制端接受到的控制指令发送给MCU,MCU将收到的数据做出处理,发送给受控设备的控制器,从而达到无线控制的目的[8].
图4 模块电路图
3 软件的设计方案
3.1 设置WiFi芯片的AP模式
首先通过ESP8266的开发工具对其功能进行定义,为了使得工作方式更加直接,该文采用固定的AP模式,即 WiFi芯片自动散出一个WiFi热点,这样能够在不依赖因特网的环境下进行工作,ESP8266的AP模式配置流程如图5所示.
图5 AP模式配置流程图
通过以上几个步骤成功打开ESP8266的AP模式,AP模式下WiFi芯片会开启热点功能供智能手机连接[9].手机成功连接WiFi热点后,继续下一步的配置来实现智能手机和WiFi芯片的数据交换.
3.2 建立TCP传输协议
TCP是一种字流节服务,其传输稳定,所以该文选用TCP传输控制协议,TCP协议的 “三次握手”示意图如图6所示.智能手机连接ESP8266散发出的WiFi网络,通过TCP通信功能完成数据的传输.
图6 TCP传输通信建立过程示意图
因为TCP传输协议具有面向的特殊性,所以客户端和服务端在连接建立完成之后,才可以互相交换数据流[10],面向数据流传输概念图如图7所示.
图7 TCP面向数据交换概念图
3.3 智能手机APP的设计与实现
该文采用智能手机APP实现对超声波除垢系统的信号源频率调节,其中,APP的设计主要包含四部分.
(1)根据需求进行APP的功能开发.为了实现频率控制的功能,首先分析STM32调节信号源频率的原理,STM32使用PWM调整输出波形的占空比.PWM原理图如图8所示,定时器向上计数,定时器重装载值为ARR,比较值CCRx,t时刻对计数器值和比较值进行比较,如果计数器值小于CCRx值,输出低电平,如果计数器值大于CCRx值,输出高电平.通过调整CCRx的值,可以调节输出波形的占空比.所以,APP通过WiFi芯片发送CCRx数据流到MCU,即可控制波形的输出频率.
图8 PWM的工作原理
(2)根据模块的无线控制需求填写设备的固定IP地址,ESP8266 WiFi芯片的固定IP地址是192.168.4.1.依据所需的IP输入、端口输入、连接设备、断开设备连接功能以及需要发送的控制指令来设计APP的UI界面.选用seekbar控件控制数据流的输出,seekbar控件的性质是对一个固定的区间值进行刻度化.然后通过左右滑动seekbar控件可以将数据流传送给WiFi芯片,达到传输无线控制指令的目的,APP的具体UI设计如图9所示.
图9 APP界面图
(3)对APP中UI的所有控件进行定义和绑定,同时开启TCP通信功能.在工程项目组的MainActivity.java文件中建立TCP网络通信,并且绑定笔者定义的控件,然后监听按键的事件信息,读取信息并存储相应的端口代码,定义每一个逻辑代码的功能[11],使APP中的控件实现所需要的功能.
(4)最为重要的一步是智能手机在读取APP输入的IP地址和端口号时,需要与连接WiFi的端口号和IP地址进行比对,判断其正确性,正确则进行下一步的工作,不正确则进行再次连接.连接成功之后,客户端和服务端成功建立TCP通信模式,在TCP模式下使用Socket进行数据交换,交换方式概念图如图7所示,整体通信流程框图如图10所示.
图10 TCP模式下的Socket通信流程框图
4 模块的性能测试
4.1 实时数据流传输功能测试
为了能够直观的测试出数据传输的实时性,使用网络助手APP模拟WiFi芯片服务端的功能,将测试手机连接WiFi芯片AP模式下的无线网,网络助手APP设置为TCP服务器,此时会生成一个IP地址和端口号.然后将模块对应的控制软件MyTCP打开,连接到虚拟端口,调节seekbar,就可以在TCP服务器收到实时发送的数据流,具体结果如图11所示.
(a)APP界面 (b)网络助手接收界面图11 实时数据传输结果
4.2 室外空旷条件下的传输功能测试
在室外空旷的环境下,无线控制模块上电,然后利用网络助手观察实时数据流的传输测试,调节控制软件的seekbar,查看网络助手数据接收情况,测试结果见表1.
4.3 室内传输距离测试
在实验室中,将模块放置在室内,室内有墙体作为干扰条件,会影响WiFi的传输距离.手持智能手机在实验室外的走廊中进行距离测试,测试结果见表2.
表2 室内距离测试
5 结束语
该文设计了一种基于智能手机的超声波除垢系统信号源控制模块,通过开发智能手机端APP,能够实现智能手机和WiFi芯片的通信,将控制指令通过WiFi芯片发送给MCU.主控芯片对接收到的指令,通过相应的编程可以控制波形频率.
实验表明,在室内可以实现在20 m之内的数据传输,室外环境简单空旷的前提下,能够实现在100 m之内的数据传输.通过测试说明,只要WiFi网络能够被智能手机连接,就可以实现智能手机控制端和模块的通信,从而可以安全有效的传输数据.
通过以上的实验证明,可以通过无线控制的方式解决不方便调频的问题.另外,可以对WiFi芯片设置不同的端口号,实现一部手机分别控制多台设备的功能.