微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 基于EPA协议的IEEE802.11b无线测控系统

基于EPA协议的IEEE802.11b无线测控系统

时间:01-18 来源:单片机与嵌入式系统应用 点击:
引言

  EPA(Ethernet for Plant Automation)标准是一种基于以太网、无线局域网和蓝牙等信息网络通信技术,适用于工业自动化控制系统装置与仪器仪表间、工业自动化仪器仪表相互间数据通信的工业控制网络通信标准。

  802.11b是一种灵活的数据传输系统,使用无线射频(RF)技术越空收发数据,减少使用线缆的连接,因此802.11b无线网络系统既可达到建设计算机网络系统的目的,又可让设备自由安排和随意移动。802.11b协议的这些特点使它在工业控制领域有较好的应用前景,不仅能实现工业遥控、遥调、遥测功能,而且还能实现对工控现场远程图像实时监控,可集中管理各工业控制设备的工作状态,满足工业控制自动化发展的要求,本文主要讨论了EPA协议在IEEE802.11b无线现场设备中的实现和测控。

1 802.11b无线测控系统的设计

  如图1所示,802.11b无线测控系统包括EPA协议通信模块、EPA上位机监控模块、无线网关模块、液晶触摸显示模块。在本系统中由温度变送器通过串口实时采集热电偶的温度变化数据,用EPA协议栈进行数据的封装后,经过802.11b无线网络把EPA报文发送到EPA无线手持设备中进行显示,并通过无线网关传输到EPA有线网络中的EPA上位机和其他EPA设备,对EPA报文数据进行处理。

\


  系统中除手持设备采用电池供电外还采用了以太网供电模块,通过以太网传输直流电源,简化了系统设计,提高了系统的可靠性,最后,设计好的设备(基于MPC852T的802.11b无线网关、基于S3C2410的802.11b无线手持设备和基于S3C2410的802.11b无线温度传感器)就构成了一个完整、可应用的无线测控系统。

2 802.1b无线测控系统的软件实现

2.1 IEEE802.11b的无线网关软件设计

  802.11b的通信协议在嵌入式平台实现,需要比较高的系统性能。因此,本文选用基于摩托罗拉MPC852T处理器的硬件平台(其中包括以太网供电模块和802.11b通信接口等)开发IEEE802.11b无线网关。

  要实现无线网关的功能,将系统软件结构从上到下可以分为如下一些模块:系统配置模块,系统监测模块,底层驱动、数据收发模块,数据转发模块、命令行模块(Command line),IEEE802.1x认证、授权模块(Authentication Authorization)和WEB管理模块。

无线网关软件功能模块流程如图2所示。

\


  无线网关在此系统中起到的作用是在以太网和802.11b无线局域网之间进行数据帧格式的转换,并要求其能转发不同网段之间的数据,这就要求在无线网关的软件模块中移植Bridge模块,在嵌入式Linux系统中编译,移植完Bridge模块后对其进行设置:

brctl addbr br0

brctl addif br0 eth1

brctl addif br0 wlan0

  把无线和有线网络接到一起,再使用工具软件ifconfig对其中有线网卡和无线网卡进行相应的网络配置,无线网关就可以正常运行了。

2.2 IEEE802.1无线手持设备软件设计

  无线手持设备在开发过程中,要求具有小巧、灵活的特点,在开发过程中采用了体积相对较小而功能强大的S3C2410作为开发平台,以这个平台为基础开发802.11b温度传感器和802.11b无线手持设备等现场设备。

  首先,在S3C2410平台上移植同样小巧、灵活的USB无线网卡。这款无线网卡的芯片是Prism系列芯片。无线网卡是移动终端的主要设备,其软件部分分为接口驱动模块(Prism_usb.o)、无线网卡驱动(P802.o)和无线网卡配置管理软件3部分,第1步:下载无线网卡的源代码Linux-wlan-ng,这是针对PC机的源代码,要使它能在ARM上运行就进行交叉编译,第2步:交叉编译USB无线网卡驱动时必须先相应地配置网络类型、内核路径和交叉编译工具,这是一款针对2.4.x的内核源代码,在编译的过程中会出现错误,原因是生成的mkmetadef和mkmetastruct是ARM arch的,在i386上不能执行,必须修改自动生成的Makefile,或者做一套适用于i386的Makefile。在交叉编译通过后生成USB接口驱动Prism_usb.o和无线网卡驱动P802.o这两个模块。第3步,在ARM Linux系统的内核中加载这两个模块。加载时有两种方式,动态加载和静态编译到内核里,笔者采用了动态加载的方式,并采用NFS Mount的方式来调试要加载的模块,第4步:把无线网卡的配置文件rc.wlan和工具软件wlanctl-ng、wland、nwepgen、wlancfg等拷贝到相应的目录下,并用他们对802.11b无线网络进行系统认证、密钥认证、WEP加密和SSID设定等。

  在无线手持端加载MINIGUI界面,以显示控制模块和EPA通信协议模块。在MINIGUI主程序中把接收到EPA报文解包后,通过函数SendReadMessage(hwnd,IDC_ReadINFOBOX,LB_ADDSTRING,0,(LPARAM)str)发送到设定的位置进行显示,完成EPA协议中的信息读服务,通过函数SendWriteMessage(hwnd,IDC_writeINFOBOX,LB_ADDSTRING,0,(LPARAM)str)对温度变送器的最高量程进行设定,完成EPA协议中的信息写服务。

  在802.11b无线测控系统,在温度变送器端要加载温度变换器串口驱动模块,温度变送器串口被驱动后,编写一个对温度采集的应用程序,把EPA通信协议的模块和温度数据采集模块嵌套在同一个主程序中进行编译,模块启动后,温度变送器采集从串口读到的数据,进行查询,CRC校验等服务后运用EPA协议栈对将从设备得到的数据进行封装,然后通过IEEE802.11b USB无线网卡进行数据的发送。软件模块如图3和图4所示。

\


  在802.11b无线测控系统中,把包含EPA协议的无线现场设备设置成开机启动的模式,当给802.11b无线网关上电时,它就会自动搜索在其通信范围内的802.11b无线现场设备,并建立通信连接,在需要它工作时开启EPA通信,其他时候处于节电模式。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top