在本系统中,EWS内嵌于设备中并通过串口连接设备,每个设备都具有自身的IP地址,经内部EWS由RJ-45接口接入本地局域网(LAN)中(本实验中,LAN为以太网)。一方面EWS读取设备状态信息并将其发送给本地或远程用户;另一方面则接收控制指令并发送给设备。而更大范围的广局网通信则可通过Internet或移动通信网络实现。
2 EWS的设计与实现
2.1 软件架构
本系统采用浏览器/服务器的结构实现,其中包括两部分——网络浏览器与EWS,EWS通过嵌入式网络技术实现其功能。在实际应用中,EWS被配置在嵌入式设备中,作为设备的一部分而存在,这使得该设备无需更多改动或配置即可直接接入网络。与此同时EWS还内建了TCP/IP协议栈、嵌入式文件系统、设备网关及硬件接口等组件,其基本架构如图2所示。
在该架构中,嵌入式文件系统对事先配置的监控页面进行存储和管理。嵌入式设备网关实现了TCP/IP与实际使用的特定设备自身控制协议之间的相互转换,从而实现了双向透明通信。两种不同结构的网络便可通过嵌入式设备相互连接,而硬件接口则负责EWS、硬件设备及网络之间的连接。
当本系统工作时,首先EWS接收到来自局域网的客户端基于网址的请求并回应该请求。通过回应事先配置好并存放在嵌入式文件系统中的监控网页界面,用户可通过标准的浏览器向远端设备发送指令。该指令经由互联网传送后被设备网关接收,设备网关将其翻译为专用指令并进一步传递给硬件设备本身。与此同时,设备数据或信号也被传输给远程客户端以供用户查看。
2.2 简化TCP/IP协议栈
嵌入式互联网技术有效地解决了嵌入式设备接入因特网的问题,使得这些设备可通过普通的浏览器进行远程访问和控制,如何将TCP/IP协议栈内嵌到设备中是解决问题的关键所在。传统的TCP/IP协议栈相对比较庞大复杂并需要固定的系统资源支持,而大部分嵌入式设备都采用8位或16位MCU,其运算能力和系统资源比较薄弱。若直接将传统的TCP/IP协议栈接入设备,则大部分运算时间和系统资源都将被占用,这对系统的整体性能影响很大[3]。为了解决此矛盾,在设计该监控系统时根据具体情况选用了成熟的LWIP协议栈以实现网络功能,同时最大限度地减少系统资源消耗并提高了可靠性。