USS协议变频器Web控制方法的研究与实现

时间:2022-10-22 02:51:05

USS协议变频器Web控制方法的研究与实现

摘 要:随着Internet技术的迅速发展,嵌入式技术在网络方面的应用也逐渐成熟。该设计在硬件平台上移植与配置了实时操作系统μC/OS-Ⅱ和嵌入式TCP/IP协议,在此基础上设计了Web服务器,完成对变频器的监控。对USS协议变频器的Web控制进行研究,详细说明嵌入式Web服务器的设计方法。在服务器设计中,重点介绍USS协议报文的处理方法,并对嵌入式Web控制的软硬件实现进行了具体的介绍。

关键词:Web控制;USS协议;HTTP;变频器

中图分类号:TN919 文献标识码:A

文章编号:1004-373X(2010)03-174-03

Research and Implement of Web-based Monitoring for Frequency Converter with USS Interface

SUN Jinsheng1,GUO Zhipan2

(1.School of Information Engineering,Hebei Polytechnic University,Tangshan,063009,China;

2.Graduate School,Hebei Polytechnic University,Tangshan,063009,China)

Abstract:With the rapid growth of Internet,the embedded technology networking application are increasing sophisticated.Based on embedded TCP/IP stack and the real-time operating system μCO/S-II.Web server is designed to monitor frequency converter.A study of web-based monitoring for frequency converters with USS interface isanalysed.In the design of the server,it emphasizes on the USS protocol telegram processing method.The architecture of embedded monitoring system,hardware and software implementation are also described.

Keywords:Web-based monitoring;USS protocol;HTTP;frequency converter

基于TCP/IP协议的以太网已成为工业标准,随着以太网的发展,以及嵌入式Web服务器发展[1]为网络中的越来越小的网络节点,为嵌入式Web在工业中的应用提供了机会。本文研究的课题就是利用Web浏览器监制USS协议变频器。要实现这些功能,就要在硬件上开发一个小型的Web服务器,需要在硬件平台上完成TCP/IP的裁剪和移植。Web服务器完成对网络数据的处理,根据用户提交的命令来对USS变频器进行相应的控制。在浏览器端,如果用户监控网页的网址,就会向服务器发送HTTP请求,服务器把监控网页的HTML代码发送到浏览器端[2]。服务器里有相应的程序来接收和发送USS报文,实现对西门子变频器的控制。

1 系统的软硬件平台

1.1 EasyARM8962教学实验平台

EasyARM8962教学实验平台采用了Luminary Micro公司生产的Stellaris系列微控制器LM3S8962处理器,具有JTAG调试等功能。该芯片内部具有:UART,SSI,I2C,以及256 KB FLASH和64 KB SRAM。该处理器内部集成了网络控制器,具有强大的网络功能。硬件系统结构如图1所示。

图1 硬件系统结构图

1.2 μC/OS-Ⅱ的移植与嵌入式TCP/IP协议栈

μC/OS-Ⅱ是近年来发展迅速的开放源码实时操作系统,具有可移植性好、可裁减、可固化的优点。将μC/OS-Ⅱ引入嵌入式网络系统,既可以实现系统的实时性要求,又可以提高系统的可靠性。周立功公司提供的移植代码为使用μC/OS-Ⅱ做好了铺垫工作,与处理器类型有关的文件OS_CPU.H,OS_CPU_C.C,OS_CPU_A.ASM[3]。本文采用最新版本的μC/OS-Ⅱ V2.52。

本设计采用周立功公司的ZLG/IP协议栈。ZLG/IP协议栈代码量小,是面向嵌入式系统开发的基于μC/OS-Ⅱ的小型TCP/IP协议栈,它支持TCP,UCP,IP,ICMP,ARP。

基于ZLG/IP“用户可配置和裁剪”的特点,为了进一步提高代码的运行速度,根据实际项目应用需要可对ZLG/IP协议栈进行裁剪。对ZLG/IP协议栈的配置是通过修改软件栈下的cfg_net.h来实现的。在此文件里设置使用的MAC地址、子网掩码、IP地址和本地网关。设置的子网掩码应与客户机的相同、IP地址要设置成与客户机同一网段内,网关地址可以设置为客户机的IP地址[4]。

2 USS协议及MM440变频器的设置

要利用USS协议实现对西门子MM440变频器的远程控制,必须对其进行相应的设置[5]。对本设计而言,具体设置如下:

P0700[0]=5(设定命令给定源为COM链路的USS报文命令);

P1000[0]=5(设置频率给定源为COM链路的USS报文);

P2009[0]=0(USS标称化);

P2010[0]=6(设定USS通信的波特率为9 600 b/s);

P2011[0]=0(设定变频器的惟一地址,取值范围为0~31,这里给定地址为0);

P2012[0]=2(定义USS报文的PZD部分中16位字的数量,即USS PZD长度);

P2013[0]=127(定义USS报文的PKW部分中16位字的数量,即USS PKW长度。127是最有用的设定,此设定下PKW应答长度视所需的信息量而变);

P0971=1(在设定为1时,从RAM向E2PROM传送参数值)。

3 HTTP协议和嵌入式Web服务器的实现

3.1 HTTP协议

HTTP协议是基于请求/响应模式的。一个客户机与服务器建立连接后,发送一个请求给服务器。服务器接到请求后,给予相应的响应信息。在Internet上,HTTP通信通常发生在TCP/IP连接之上,缺省端口是TCP80。

Web浏览器利用HTTP协议和服务器进行通信。浏览器向服务器发送请求之后,服务器会将所请求的网页发送到浏览器,服务器也可以根据HTTP请求所提交的信息运行相关程序[6]。要从Web服务器获得网页,必须输入Web服务器的IP地址,例如:

210.31.192.70

浏览器定位IP地址然后打开TCP连接的服务器端口80,之后利用HTTP协议发送由GET行组成的请求:GET/HTTP/1.0。GET方法是获取Web文档的一种HTTP方法。如果服务器响应HTTP/1.0 200 OK表示连接成功,然后Web网页就可以发送。GET方法把参数数据队列加到提交表单的ACTION属性所指的URL(统一资源定位符)中,值和表单内各个字段一一对应,在URL中可以看到。GET请求的数据会附在URL之后,以“?”分割URL和传输数据,参数之间以“&”相连。如果数据是英文字母/数字,原样发送,如果是空格,转换为“+”[7]。虑到本系统提交的信息的特点,使用GET方法来设计Web服务器。

3.2 Web服务器的设计与实现

在μCO/S-II操作系统中,根据尽量减少任务数以提高CPU利用率的原则[8],本设计建立了四个任务[8]。这四个任务是:taskstart(启动任务)、taskC(接收TCP信号量任务)、taskE(TCP数据处理任务)、taskF(接收和发送USS报文任务)。四个任务之间的关系,各自的优先级设置及任务间的通信机制如图2所示。

图2 任务结构图

Web 服务器应用任务完成TCP 通信,在此任务中网页信息以HTML 格式存储于一个全局变量的Web[]数组中[9],这些信息通过HTTP 协议沿TCP连接发送到浏览器,以HTML文本格式定义的全局变量Web[]数组如下:

uint8 web[] = {

″\\r\\n″

″\\r\\n″

″测试网页\\r\\n″

″vLink=#321afd>\\r\\n″

″MM440变频器监控网页\\r\\n″

″\\r\\n″

启动:\\r\\n″

″\\r\\n″

″\\r\\n″

快速停止:\\r\\n″

″\\r\\n″

″\\r\\n″

惯性停止:\\r\\n″

″\\r\\n″

″\\r\\n″

工作频率(Hz):\\r\\n″″\\r\\n″

″\\r\\n″

点击按钮查询工作频率:

\″submit\″ value=\″查询\″ name=\″B4\″>\\r\\n″

″\\r\\n″

″\\r\\n″

″\\r\\n″

″\\r\\n″

};

在主监控网页中,可以任意设置变频器的工作频率,也可以实时监控其工作状态。图3就是本系统的Web监控网页。

图3 变频器监控网页

在监控网页,放置的频率设定按钮。它的方法都被设置为“GET”。GET将表单中提交的数据添加到URL中[10]。如果填写频率值“45”然后提交,Web服务器从浏览器接收到的URL如下:

GET/9?text1=45&B3=%CC%E1%BD%BBHTTP/1.1

在Web服务器中,建立一个接收数据缓冲区数组tempdata[400],用它来存储从浏览器发来的数据。根据URL的格式,能从URL中获得表单中提交的数据。它们被相关程序处理后会按照USS协议保存到数组SndData[12]中。参数P2009[0]=0对USS进行了标称化,频率的计算就要按照规格化进行。这个数组通过串口发送到变频器之后,就可以使变频器按照要求频率工作了。

服务器会把查询到的MM440变频器的当前工作频率发送到监控页面上。向变频器发送查询工作频率的USS指令是{02 08 00 10 15 00 00 00 00 0F}。此指令查询的是r0021的参数值,即变频器工作的实际值。变频器会返回一个相应的报文,如:

{02 0E 00 20 15 00 00 42 48 00 00 FF B4 40 00 38}

这里包含了要查询的工作频率,服务器在收到这个报文之后,会调用相应的程序对其进行处理,最终将工作频率以十进制形式显示在网页上。为了实时查看变频器的工作频率,实现监视网页的实时刷新,就要在网页信息里加入网页更新语句:

″\\r\\n″

实现动态网页。网页刷新速率为10 s/次,但由于数据处理速度的原因,刷新有一定的时延。

4 结 语

本文介绍的μC/OS-Ⅱ内核裁剪、TCP协议应用编程方法以及Web服务器的设计思想等内容具有广泛的应用性。USS协议变频器的Web监控设计已经调试通过,实现了远程监控,初步达到了设计要求。现在,随着嵌入式网络应用的发展,USS协议变频器的Web控制方法有着广阔的应用前景。

参考文献

[1]王贺,石磊.嵌入式Web服务器在智能住宅中的应用[J].自动化技术与应用,2004(5):62-64.

[2]王铁流,高嵩,袁海英,等.基于Cortex-M3内核处理器的嵌入式Web服务器设计[J].电子产品世界,2009(3):41-44.

[3]Labrosse Jean J.嵌入式实时操作系统μC/OS-Ⅱ[M].邵贝贝,译.北京:北京航空航天大学出版社,2003.

[4]周立功.ARM嵌入式系统软件开发实例(一)[M].北京:北京航空航天大学出版社,2004.

[5]SIEMENS.SIEMENS MICROMASTER 440中文使用手册[Z].2003.

[6]胡德斌.基于μC/OS-Ⅱ操作系统的嵌入式网络服务器的设计与实现[J].微计算机信息,2005,21(8):24-25.

[7]贺振欢,刘军,王保山.Web服务器开发技术[M].北京:人民邮电出版社,2007.

[8]黄小芬,刘大茂.μC/OS-Ⅱ下基于以太网接口的Web服务器应用研究[J].现代电子技术,2006,29(16):78-80.

[9]广州周立功单片机发展有限公司.LM3S8962实验教程(中文)[Z].2007.

[10]Stevens W R.TCP/IP详解[M].胡谷雨,译.北京:机械工业出版社,2000.

上一篇:基于RGB空间的DCT域彩色图像水印算法 下一篇:优化的BP神经网络在电子设备故障诊断中的应用