当前位置:首页 期刊杂志

基于嵌入式Web服务器的农机车载终端设计

时间:2024-05-22

王喜恩, 贡 军, 卢泽民, 王业球

(1.中联重机股份有限公司,安徽芜湖 241018,2.江苏大学农业工程研究院,江苏镇江 212013)

基于嵌入式Web服务器的农机车载终端设计

王喜恩1, 贡 军1, 卢泽民2, 王业球1

(1.中联重机股份有限公司,安徽芜湖 241018,2.江苏大学农业工程研究院,江苏镇江 212013)

设计了一种基于嵌入式Web服务器的农机车载终端,系统中ARM6处理器既作为采集电路单元又作为嵌入式网关单元,通过编写相应的应用层CGI程序,实现浏览器/服务器器(B/S)通信。同时,在Linux操作系统上移植TCP/IP协议,构建Web服务器,编写应用层通用网关接口程序,可以实现对农机运行参数远程在线监测,满足了低成本下数据远程传输和控制要求。

农机;嵌入式Web服务器;车载终端

三夏、三秋重要农事期间,农机跨区作业普遍,作业集中度高、连续作业时间长,机器磨损大,对机器维修的及时性要求较高,对跨区作业相关市场服务信息需求强烈。但机手在跨区作业过程中,与服务网点处于“双盲”状态,面临维修和零配件供应问题;由于作业市场的不确定性,面临盲目流动问题;对所跨区域天气、油料补给点不熟悉,面临后勤补给问题。得益于互联网技术的快速发展,建立一个远程在线服务平台成为可能,开发一种适用当前农机技术水平和成本接受度的车载终端,进行信息发出和接收,成为必要[1-2]。

笔者基于ARM-Linux嵌入式服务器构建了农机连载终端,系统中ARM6处理器既作为采集电路单元又作为嵌入式网关单元,通过编写相应的应用层CGI程序,实现浏览器/服务器器(B/S)通信,嵌入式服务器代码和服务器端应用程序代码编制简便,满足Web服务器基本功能;B/S通信架构可直接读取远程数据,系统开发简单,成本低,适合当前农机技术和用户使用水平。

1 硬件设计

1.1 硬件结构如图1所示,该农机车载终端硬件由数据采集电路与嵌入式网关两部分组成。以发动机冷却液温度传输为例,温度传感器由于不同的温度,其电阻发生变化,调理电路对变化值放大、滤波和稳压处理[3],处理后的信号经过2路数模电路板进行模数转换和计算,得到温度值;温度数据通过以太网网关,按通信协议实现数据转换和交换,在客户端的浏览器实时读取。

1.2 嵌入式网关构建选用由Davicom公司生产的DM9000A控制器作为以太网芯片的核心组件,它有1个10/100 M的自适应物理层与4 K双字节的静态随机存储器;支持8位和16位的接口,以访问内部存储器设备,从而支持不同类型的处理器[4-5]。构建的嵌入式网关结构如图2所示。1.3 硬件封装车载终端根据用户功能需求,封装数据采集模块、卫星定位模块、电源模块、控制及接口单元、天线、彩色液晶屏等,实现对农业装备的定位、导航,作业数据、图像、声频、视频的采集与传输。各模块相互关系如图3所示,封装成型的嵌入式农机车载终端如图4所示,搭配显示信息终端的设备组合如图5所示。

2 软件设计

2.1 Web服务器设计构建Web服务器,socket网络连接是基础[6-7]。当Web服务器建立起socket连接后,服务器端和客户端相互响应[8-9]。响应内容主要为客户端请求及服务器应答。

该研究设计了一个简易Web服务器,实现了Web服务器的基本功能,包括页面请求与响应、HTML文件解析和数据传送,工作流程如图6所示。客户发送请求( GET filename HTTP/version);Web服务器发送应答(HTTP/version status-code status-message)。

用户浏览器端与服务器端建立socket连接后,用户通过在浏览器端单击一个链接的形式获取网页,即发送一个命令请求,服务器端利用GET命令接受请求、读取请求,并打印输出相关数据信息。

2.2 应用层CGI程序设计通用网关接口 (Common gateway interface,CGI)表达一段程序,运行在Web服务器上,其主要功能是在Web的环境下,从客户端向Web服务器传达信息或命令,Web服务器启动指定程序来完成特定工作。在浏览器/服务器模式下,CGI是由浏览器的输入命令进行触发[10-11]。

用户在浏览器端的地址栏中输入要访问的地址,回车触发指令申请,同时浏览器将申请命令通过TCP协议发送至服务器端。Web服务器端在接收到申请后,按.htm或者.html的后缀名来识别文件是否是HTML类型的文件。如果是HTML类型的文件,Web服务器会从当前的存储中读取到正确的HTML型文件,并将其以网页的形式送回到浏览器端。Web浏览器、服务器以及CGI程序运行关系如图7所示。

该研究设计的简易Web服务器仅支持GET命令,主循环如下所示:

sock = make_server_socket(atoi(av[1])); //建立socket连接监听客户端请求

if (sock == -1)

exit(2);

while(1)

{ fd = accept(sock, NULL, NULL); //接受请求

fpin = fdopen(fd, "r");

fgets(fpin, request, LEN); //读取客户端的请求

read_until_crnl(fpin); //跳过其他命令

process_rq(request, fd); //接收客户端请求

Fclose(fpin);

}

3 装机及测试

将车载终端安装到本公司生产的4YZ-5自走式玉米收割机上,进行性能测试。

首先,确定ZigBee是否组网成功,然后测试采集节点能否根据程序的设计要求进行数据采集、汇聚节点实时的数据并显示。

对发动机冷却液温度进行测量,系统通电后开始组建网络,并对系统硬件进行初始化,传感节点加入到该网络后,实时地发送数据给汇聚节点,最后在液晶显示屏显示。每隔30 s液晶显示屏变化一次数据,采集到的数据见表1。

表1 发动机冷却液温度测量结果

由表1可知,该车载终端的测量误差较小,在可接受的范围内。说明该研究所设计的农机车载终端具有实用价值。

4 结论

该研究设计的基于嵌入式Web服务器的农机车载终端,其ARM芯片既可作为信号采集终端,又可作为以太网网关组件,有效利用了硬件资源。同时,在Linux操作系统上移植TCP/IP协议,构建Web服务器,编写应用层通用网关接口程序,可以实现农机运行参数实时监测,满足了低成本下数据远程传输和控制要求。试验证明,系统具备较强的实时性和稳定性,可以搭载到相关农机局上,作为远程服务平台的前端设备。

[1] 唐世浩,朱启疆,闫广建,等. 关于数字农业的基本构想[J].农业现代化研究, 2002,23(3):183-187.

[2] 张小超,胡小安,任继平,等. 精准农业关键技术与装备的研究进展[C]//2005 年中国农业工程学会学术年会论文集第三分册.广州:出版者不详,2005.

[3] 金珍珍.基于 Protel DXP 的电路设计技巧[J].电脑与电信,2010 (2): 37-39.

[4] 项雷军.基于 ZigBee,GPRS 和 TCP/IP 协议的无线网关设计[J].微型机与应用,2013,32(8):51-54.

[5] CHALLA V R,PRASAD M G,FISHER F T.Towards an autonomous self-tuning vibration energy harvesting device for wireless sensor network applications[J].Smart Materials and Structures,2011,20(2): 25004.

[6] 王江涛,陈志刚,邓晓衡.WSN 中基于可信核心树的路由算法研究[J].计算机科学,2012,38(12): 36-42.

[7] 司海飞,杨忠,王珺.无线传感器网络研究现状与应用[J].机电工程,2011,28(1):16-20.

[8] HIERTZ G R,DENTENEER D,MAX S,et al.IEEE 802.11 s: the WLAN mesh standard[J].Wireless Communications,IEEE,2010,17(1): 104-111.

[9] LIANG G,LIU D,HAO F.Design of ZigBee wireless network node based on CC2430[J].Electronic Design Engineering,2010,2:9.

[10] XIN Y,YAO H,JIANG Y,et al.Analysis and Design of ZigBee Network Layer Protocol under Cellular Network Environment[C]//Computer Science and Electronics Engineering (ICCSEE),2012 International Conference on.IEEE,2012:59-62.

[11] 钱志鸿,王义君.面向物联网的无线传感器网络综述[J].电子与信息学报,2013,35(1): 215-227.

Design of Agricultural Machinery Vehicle Terminal Based on Embedded Web Server

WANG Xi-en1, GONG Jun1, LU Ze-min2et al

(1. Zoomlion Heavy Machinery Co. Ltd., Wuhu, Anhui 241018; 2. Institute of Agricultural Engineering, Jiangsu University, Zhenjiang, Jiangsu 212013)

This paper designed an agricultural machinery vehicle terminal based on embedded Web server, the ARM6 processor system not only as the acquisition circuit unit and as the embedded gateway unit in the system, by writing the corresponding application layer CGI program, communication between browser/server(B/S) was realized. At the same time, TCP / IP protocol is transplanted to the Linux operating system, building Web servers, writing the corresponding application layer common gateway interface program can be achieved on agricultural machinery remote online monitoring of operating parameters to meet the low-cost remote data transmission and under control requirements.

Agricultural machinery; Embedded Web server; Vehicle terminal

芜湖市科技计划项目(2103ZD05);“十二五”先进制造领域国家科技计划项目(2103AA040401)。

王喜恩(1966- ),男,河南尉氏人,高级工程师,从事农机先进制造及管理研究。

2015-03-25

S 126

A

0517-6611(2015)13-346-02

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!