更全的杂志信息网

基于ARM的网络化智能仪表的设计与研究

更新时间:2009-03-28

随着互联网与物联网技术[1]的发展,智能化产品[2]越来越深入我们的生活中。智能仪表[3]在生活中的应用非常的多。国外研究此领域较早,在此市场发布较早的产品有美国的X-10系统[4-5]功能强大,但由于其设计前提是基于国外环境和应用需求以及西方人的生活习惯设计的,并且其价格昂贵,难以被国人接受,因此,此系统在国内很少运用。智能物联网的概念在中国起步较晚,而近几年随着科技的进步,智能仪表物联网在各行各业的发展突飞猛进[6-7],无线互联[8-11]已经深入人心,国内外对网络化智能仪表的研究也在不断的深入[12],STM32系列单片机[13-16]作为一款先进的芯片,广泛应该用于各类网络互联平台中。针对目前这样的现状,本设计主要以ARM Cortex-M3内核的STM32系列单片机为主控芯片,将实现基于Yeelink服务器的智能仪表,使用户可以将周围的环境信息反馈到网络平台上,可以服务于实用且有经济价值的智能仪表的研发。

1 系统功能构架

在STM32+W5500+Yeelink平台中,以ARM Cortex-M3内核的STM32F103系列单片机为内核。主要由单片机最小系统、以太网W5500模块、Yeelink物联网平台、热释电红外人体感应传感器、继电器驱动电路、OLED显示等几部分组成。系统构架如图1所示,实现的功能有设备参数实时采集、实时处理、实时查看等。用户可以用手机或PC机访问Yeelink物联网服务器,随时查看设备的环境参数。

  

图1 系统构架图

2 系统硬件的设计

硬件电路设计核心处理器采用STM32F103芯片,负责采集环境温度、湿度数据的是DHT11,同时利用OLED显示屏来显示图形数据,通过控制W5500网络模块上传数据到Yeelink服务器,通过引脚来控制报警器,人体红外传感器等外围硬件模块,硬件PCB图如图2所示,其中箭头方向是指控制信号的流向。

  

图2 硬件PCB图

2.1 主控模块

采用STM32F103ZET6单片机芯片作为主控,它负责控制整个硬件电路和程序的运行。如图3所示,STMF103ZET6需要2个晶振,其中一个晶振常用于外部高频使用,如上图中的Y2,主要起到倍频用;另一个晶振用作外部低频晶振,如上图中的Y1,其主要作用是系统待机使用。

  

图3 主控芯片以及外围电路

2.2 W5500网络模块

W5500与内核芯片的连接方式比较容易。W5500总线方式有三种分别是SPI、直接并行、间接并行。W5500的通信接口电路设计如图4所示。

考虑到司马相如写关中上林苑,未必也像左思写《三都赋》那样“稽之地图”“验之方志”,个别地方含糊带过也许只是文人寻常虚饰,那也还并不是特别值得批驳。但我们注意到,在关于上林苑的方位、界限这些基本的宏观地理指称多用含混虚夸之辞。

  

图4 W5500接口电路

2.3 人体感应模块

通过设置W5500的寄存器与存储器的值,就可以实现W5500和Interent连接起来进行数据通信。W5500的程序设计部分流程如图12所示,以太网模块不管是作为服务器还是客户端,通信时都是通过发送连接请求,所以在程序中也要判断是否需要建立连接,如果判断此次连接为有效连接,则进行接收数据,经过数据处理后再发送相应的数据,发送完成后,完成一次数据交流,需要关闭连接,然后依次循环进行。

  

图5 OLED引脚连线图

2.4 OLCD显示屏模块

轴距(mm)................................................2650

  

图6 OLED引脚连线图

3 系统软件设计

3.1 OLED显示模块软件设计

OLED显示采用4线串行SPI,使用4线制串行模式的接口信号线。RST引脚用来硬件复位OLED,让其恢复默认状态;DC引脚是命令/数据标志,用于读与写;SDIN引脚是数据线,不同模式下对应的信号线不同,SCLK引脚是时钟线,只有在串行模式下,D0时钟线为信号线,D1为数据线。

OLED,即有机发光二极管,正因为OLED具有自发光,其具有对比度比较高,显示效果比一般的液晶屏好许多;此次用的是SPI接口,如图6所示。

3.2 OLED数据读取时序

设计不是一个时髦的代名词,而是标志着一个时代。在信息时代,人们要靠科技与文化融合的创新设计迈向未来。我们要从过度依赖自然资源,向依靠人力资源转化。同时,我们要思考一个问题:人的智慧如何才能变成促进发展的资源?纵观历史,推动每一次人类世界革命性变革的力量背后,都有设计方法的突破与创新。

  

图7 写操作的时序图

3.3 字模提取

OLED模块的显存。SSD1306将这些显存分成8页显示;SSD1306的每页包含了128个字节,这样刚好是128*64的点阵大小。运用OLED模块显示汉字时,需要用到显存,而本设计用到的显存大小为128*64Bit,足以满足设计要求。需要用取模软件转换,如液晶屏上显示“商洛学院”字样,取模方法如图8所示。取模方式是共阴——列行式——逆向输出,将生成的字模加载到程序中,根据程序设计思路,以及函数实现的功能,如图9所示,取模结果最终在液晶屏幕上显示出来。

Yeelink是由青岛一家互联网公司免费开放的物联网平台,类似于国内的乐联网、机智云、中国移动物联网、传感云等平台一样;需要经过相关设置便可接入用户的设备,它是一个安全可靠的云存储平台,会保留用户提交的每一条数据,并且支持多平台接入。Yeelink的优点是将复杂的传感器数据以简便的方式组合到一个网络内。Yeelink与用户的设备连接方式简单,云服务流程如图13所示。

在4线串行SPI方式下,数据的长度均为8位,只有当SCLK的状态由低电平转变成上升沿到来时,数据才按照 D7、D6、D5…D1、D0的顺序从SDIN写进SSD1306。DC信号线为Data和Control标志位。在4线串行通信下,写操作的时序如图7所示。

  

图8 软件取模

  

图9 OLED显示效果图

4.4 温、湿度模块软件设计

DHT11采用单总线数据格式,即使用一个IO口即可实现双向通信,其数据包由5Byte(40Bit)组成;该传感器采集将得到的数据为浮点型,可以将数据分为小数和整数部分,但都要经过相应处理;每次传输数据为40Bit,数据输出格式是高位在前。温湿度数据计算方式如图10所示。DHT11将数据通过IO传递给单片机,运算速度在4毫秒左右,所以在进行设计时,要考虑其反应时间,防止在死区时间里读取错误数据,建议时间间隔大于50 ms。

  

图10 数据计算方式

图11为温湿度传感器和单片机之间进行数据读取的过程,通过主机发送信号30us的低电平信号,使传感器的数据线的电平被拉低,然后通过程序设置开启DATA对应引脚的中断,通过检测DATA引脚的电平变化是否满足条件,设置变量并进行计数,如果在此期间DATA再次检测到有高电平到来,记录下此时时间为T0,当DATA再次监测到有下降沿到来时,记录此时时间T1,通过比较T=T1-T0的值得到一次采集到的数据,依次循环进行40次,得到最终数据,然后送给单片机进行处理。

  

图11 温湿度传感器读取数据过程图

3.5 以太网通信配置

人体感应模块,全称为热释电红外的传感器模块,它是一种可以检测人或动物发射的红外线而输出电信号的传感器,只要设置STM32对应的GPIO引脚为输入模式,当有人靠近过时就会检测到高电平,达到报警的功能。引脚图如图5所示。

程序中进行设置网络参数、MAC地址、用户设备IP、子网掩码、网关、DNS、Yeelink服务器IP地址、开启DHCP的端口、连接TCP服务器的端口、数据缓冲区、设备ID、传感器ID等等,然后在函数中进行处理。设备与Yeelink进行通讯时的程序流程图如图16所示。单片机通过申请发送和接收缓存,确定HTTP请求首部的格式,程序中添加数据上传属性,比如:采集的数据上传到对应设备下的传感器属性上;数据传输过程中需要知道APIKey、设备ID、传感器ID等信息;添加表单编码格式,例如:Host:api.yeelink.net为Yeelink 的域名地址;最终程序中将HTTP首部与HTTP内容分隔开,分别处理。

  

图12 W5500模块配置流程图

3.6 云服务器软件设计

因此,本研究的主要目的是利用感官评价、色谱骨架成分分析以及GC-Osme等多种风味化学技术评价低度五粮液的风味特征并与高度五粮液的风格特征进行比较,为科学认识五粮液风格特征、诠释民族优秀传统工艺提供有力的数据支撑。

  

图13 设备与Yeelink连接流程图

通过在Yeelink平台注册账号,用户会获得一个属于自己专有的APIKey,它是设备和Yeelink连接的唯一通道;然后在网页上添加设备;添加了一个温度设备和湿度设备。如图14所示为用户在温湿度设备下添加的两个传感器,其ID分别为407105和407113,当其上传数据时需要知道传感器属于哪个设备,以及设备ID、传感器ID。用户所添加的温湿度设备相关信息如图15所示,一个设备下可以挂载多个传感器。

  

图14 在Yeelink上添加设备

  

图15 设备相关信息

W5500与单片机进行通信,使用SPI协议。在SPI协议中设置了不同环境下四种工作模式(0,1,2,3 四种模式);每种模式的区别是根据SCLK的电平高低和相位不同来定义的;SPI的模式0和3唯一不同在于默认状态下,SCLK的信号电平不同;数据都是在SCLK上升沿锁定,当数据传输完成时,在下降沿输出[6]。W5500的数据帧分有三部分:地址段,用于存放接收到的数据;控制段,用于控制数据何时开始接收,何时发送;数据段,数据传送过程中的载体。W5500实现UDP通信,UDP与TCP有许多相似之处。在使用UDP时,经常遇到数据丢失,主要原因是在没有连接的时候自发传送数据。

  

图16 设备与Yeelink通信流程

调试完毕后,通过串口调试助手查看,如图17所示。

NaNO33 g/l、MgSO4·7H2O 0.5 g/l、KCl 0.5 g/l、Fe-SO4·7H2O 0.01 g/l、K2HPO41 g/l,用3 mol/l盐酸调成所需pH值。

  

图17 程序运行后打印的HTTP报文格式

由串口调试助手可以知道详细信息:设备的IP 地址:192.168.103,子网掩码:255.255.255.0,网关 :192.168.1.1,MAC 地 址 :0X00-0X08-0XDC-0X00-0XAB-OXCD等,以及单片机发送的对应API函数,如果数据成功上传到Yeelink,则串口会显示HTTP OK!指令,以及上传的温湿度数据;如图25所示下位机采集的温湿度数据已经上传到Yeelink平台了,此时登陆网页可以看到数据已经更新到当前时间段;也可以查看历史数据,比如:显示最近一天、一周、一月、一年等采集的数据,方便了解数据变化趋势。

案例1:武进区湖塘河清淤工程。湖塘河为典型城区河道,沿岸有聚集老住宅区及老式小区,雨污合流,河水发黑,气味难闻。该清淤工程于2014年组织实施,采用环保绞吸为主、人工清淤为辅的方式进行,对于边角窄处,清淤船无法清理到的地方,则采用水下清淤机辅助清淤。施工过程中,利用环保铰吸船通过搅动河底表层20~40cm的淤泥层,再利用水下清淤机清淤,对淤泥进行铰切破碎、抽吸,最后底泥由污泥泵直接输送到控源分离系统。

4 系统分析与调试

系统由软件、硬件以及Yeelink平台组成,系统上电前,需要保证该系统上的总电源开关处于关闭状态;由于用到网络,所以需检查一下该系统板是否连接网线;检查相关传感器是否安装良好。将程序下载进MCU,打开串口调试助手,先通过串口调试助手查看数据的运行情况是否正常,如果串口有数据从服务器返回,则说明系统采集的数据已经成功上传云服务器,此时可以通过手机或电脑登陆Yeelink页面,实时查看采集到的数据。来自路由器的网线,接入系统的以太网模块,单片机通过与以太网模块之间的通信,最终实现将采集的数据上传至云服务器。在网页登陆到云服务器界面,可看到相应数据,以及历史数据,也可以通过数据曲线了解数据变化趋势。分段采集各个节点处的电压值、电流值、损耗等相关数据并上传至云服务器Yeelink,当线路发生异常时,可以快速判断出异常位置。

5 结语

本系统运用搭建了STM32+W5500+Yeelink的平台,主要由单片机最小系统、以太网W5500模块、Yeelink物联网平台、热释电红外人体感应传感器、继电器驱动电路、OLED显示等几部分组成。实现了远程数据采集和远程控制,具有安防报警功能,摆脱了传统的设计只能在局域网内实现的限制。设计的远程控制和远程数据采集功能可以应用在地区粮仓的空气质量、光照强度变化趋势、病虫报警处理、多点温度检测等领域,具有非常广阔的应用前景。

参考文献

[1]SAKAINO A.Expectations and challenges for IoT-recommendations to IoT system developers and users[J].The Journal of Information Science and Technology Association,2017,67(11):560—565.

[2]SASAKI R.Security on internet of things (IoT)systems[J].The Journal of Information Science and Technology Association,2017,67(11):571—581.

[3]BESSHO M,SAKAMURA K.INIAD:a new university campus for the IoT era[J].The Journal of Information Science and Technology Association,2017,67(11):582—588.

[4]刘小宪,魏海涛,于俊清.面向X10的数据流程序编译优化算法[J].小型微型计算机系统,2013,34(10):2239—2245.

[5]蒋坤,李宏.智能家居中X-10协议电力线载波模块的设计[J].宁波大学学报:理工版,2015,28(03):38—41.

[6]袁冲,郑涛,董平,姚琳元.高速环境下智慧动态监测系统的设计与实现[J].计算机技术与发展,2016,26(03):5—8.

[7]吕勇庆,刘冰,夏祥武.基于Modbus的施耐德PLC与智能仪表的通讯[J].煤炭技术,2015,34(08):258—260.

[8]徐舰,赵印明,陈柯行.现场扭矩扳手检定用智能仪表的研制[J].工业计量,2017,27(06):23—24+26.

[9]李春辉.基于单片机的智能仪表设计及其运用解析[J].自动化与仪器仪表,2017,24(03):206—207+210.

[10]楚丹琪,李睿智,高洪皓,等.基于智慧实验室的安全事故分析与预测[J].计算机技术与发展,2018,28(05):1—6.

[11]陈思佳.无线互联互通技术在地铁通信中的应用[J].数字通信世界,2017,13(04):153—154.

[12]OYMAN O,SINGH S.Quality of experience for HTTP adaptive streaming services[J].Communitions Magazine,2012,50(4):20—7.

[13]姜小云,李昭春,吴俞.基于STM32的新一代天气雷达远程监控系统设计[J].计算机技术与发展,2017,27(05):196—200.

[14]JIN Hao-ran,SUN Xiang-e.Design of the brushless DC motor driving system based on STM32 [J].Open Access Library Journal,2017,04(06):1—9.

[15]HARIZ M B,BOUANI F.Synthesis and implementation of a fixed low order controller on an electronic system [J].International Journal of System Dynamics Applications (IJSDA),2016,5(4):42—63.

[16]ZHANG Yan-chao,XIAO Yu-zhao,ZHUANG Zai-chun,et al.Development of a near ground remote sensing system[J].Sensors(Basel,Switzerland),2016,16(5):648.

 
杨琳,李媛,冯爽,向胜奎,杨雪松,韩婧,乔成芳
《计算技术与自动化》2018年第04期文献

服务严谨可靠 7×14小时在线支持 支持宝特邀商家 不满意退款

本站非杂志社官网,上千家国家级期刊、省级期刊、北大核心、南大核心、专业的职称论文发表网站。
职称论文发表、杂志论文发表、期刊征稿、期刊投稿,论文发表指导正规机构。是您首选最可靠,最快速的期刊论文发表网站。
免责声明:本网站部分资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有
如有不愿意被转载的情况,请通知我们删除已转载的信息 粤ICP备2023046998号