嵌入式Web服务器的实现
基于DS80C400的嵌入式Web服务器设计实现
2睥第7 科 1 L 0 1 期
基于DS 0 4 0 8 C 0 的嵌入 式we 服 务器设计实现 b
李会平 ,韩 进 ,薛庆军
(. 1青岛职业 技术 学院软件与服务外包学院 ,山东青 岛 2 6 5 ;2山东科技大 学信 息科学 与1程学 院,山东青 岛 2 6 1 655 . 二 6 5 0)
给C U。 P
接收/ 发送缓冲存储 :D 8 C 0 1 S 0 4 0 ̄太网控制器使用8 的内部S AM ) KB R 作为发送/ 接收包缓冲区。C U P 可以使用MO 指令对这个S A VX R M进行读,
写访 问 。
电源管理模块:D 8C 0 I太网控制器包含了一个电源管理模块 , S 0 40)  ̄
摘 要 介 绍嵌人 式wE 服务 器在工 控应用 领域 中的优势 ,提 出以D 8 c o 为核心处 理器 设计wE 服务 器的方 案 。介  ̄D 8C 0 I B s040 B S0 40MI 模 块 ,给 出基 于D 8 c o 设计wE 服务 器硬件设计 的基本条件 。详细阐述嵌入式WE 系统的硬件系统设计 ,介绍T P s0 4o B B c 议栈 以及H 哪 议
中图分 类号 T 38 文 献 标识 码 A P6 文 章编 号 17 —6 1( 1) 102— 2 639 7- 000 — 000 2 9
WE 技术是Itme It nt B ne tnr e的核心技术之一 ,以H1r技术为基础 , / a TP 具有简单 、高效 、跨平 台等优点,是信息网络的一种最普遍应用的信息 交互平台。借助w B E 服务器和浏览丁具可以实现T业底层控制 网络与上 层监视网络之间数据信息的动态交互 。传统的解决方法是借助P 机和专 c 用的现场智能设备来实现w B E 服务器 ,有成本 高,不易移动等缺点。嵌 入式wE 服务器 ,是将T PI协议 和H T 协议集成 到一个嵌入式系统 B C/ P 1P r 中,成为嵌入式Itnt ne e设备,实现WE 功能。相 比于传统的解决方法 , r B 嵌入式wE 服务器的方法新颖独特,更具 市 B 场竞争力和经济价值。新型 D 8 C 0 是具有高性能结构、多层 网络节点和I S040 / O口及稳定的R M固件 O 的网络微控制器 ,使用o 8c o ̄建we服务器 ,具有开发方便 ,系统 s o 4o b 高度 安 全 可靠 等 优点 。
基于μCLinux的嵌入式Web服务器的设计与实现
式 We b服 务 器 。该 服 务 器 能 支持 工 业 设备 、 用 电 器连 入 互 连 网 , 家 并具 有 很 好 的 We 页 面功 能 , b 能很 好 地 满足 家 用 电 器和
工 业 设 备 接入 互联 网 的 需 求 。
关 键 词 : 入 式 系统 , CLn x, 入 式 We 嵌  ̄ iu 嵌 b服 务 器
《 业控制计算机}0 1 第 2 工 21年 4卷 第 2期
6 7
基于 t L u 的嵌入式 We  ̄ ix C n b服务器的设计与实现
De i n a d e l a i n o sg n R a i t f Emb d e e e v r Ba e o  ̄ z o e d d W b S r e s d n CLn x iu
个 客 户 端 来 的 请 求 。建 立
T CP 类 型 S OCK T 在 E 8 0端 口进 行 监 听 连接 求 。
图 1就是 系统 的结 构 图 。 2 系统 各 模块 设计
L =
& 女
. . 图 ’ 系统结构 流程 图
图 2 系 统 主 程 序 模 块 流 程 图 图 3 客 户 连 接 处 理 模 块 流 程 图
嵌 入式 We b服 务 器 是 指 将 We b服 务器 引入 到 现 场 测 试 和
该 模 块 的 算 法 流 程 图 如 图 3所 示 。
控 制设 备 中 , 传 统 的 测 试 和 控 制 设 备 转 变 为 具 备 了 以 T /P 使 CP I
为 底层 通 信 协 议 , b技 术 为 核 心 的基 于互 联 网 的 网络 测 试 和 We 控 制设 备 。 本 文 选 择  ̄ i x作 为 嵌 入 式 操 作 系统 , CL u n 已成 功将 其移植到开发平台上。
探析嵌入式Web服务器的设计与实现
实现 。 这种 基 于 H T T P协议 的嵌 入 式服 务 器在 运作 上具 有标 准接 口的形 式 以及 通信 协议 。文章 主要 对 实际应 用 中嵌入 式
的 We b服 务 器的论 述 ,介 绍 了嵌入 式 We b 服 务 器 的总体 设计 方案 与主要 作 用 ,分析 了其技 术措 施 。 关键 词 :W e b服 务 器 ;嵌 入 式 ;协议 ;设 计 中图分 类号 :T P 2 7 4 文献标 识码 :B
一
、
引言
控 制 器 作 为 核 心 ,首 先 在 内部要 对 T C P /
嵌 入 式 的 We b服 务器 主 要 就是 通 过 I P协 议 栈 予 以实 现 ,且 对 网络 接 口的控 将 服务 器 嵌 入到 现 场控 制 和测 试设 备 中, 制器予 以驱 动 ,通 过偶 和隔离 变压 器 同以 以相 应 软件 系统和 硬件 的支持 为支持 ,是 太 网接 入 因特 网。另外 ,微控 制器 还要 实 传统 的控 制 、 测 试设 备变 为具备 通信协 议 , 现其作 为 系统控 制单元 的功 能 。 且其 核 心为给 予互 联 网的控制 以及测 试 的 文 章 主要 选 用 了 目前 使 用 最 为 广泛 网络 设 备 ( 通信协 议底层为 T C P  ̄ P)。 的 以太 网作 为 网络接人 方式 。 以太 网是 以 任何 接人 的合 法用 户都 可以通 过 网络 已浏 美 国微 芯 公司生 产 的网络接 口控 制器 为基 览器 方 式为基 础 ,获得其 提供 的控 制 、操 础产 生 的 ,其使 得介 质能具 备 了能够访 问 作 界 面 。且 we b服 务器 具 有 很 强 的独 立 物 理 层 以 及 控 制 子层 功能 。 HI 1 0 2能 够 性 、开 放性 ,为技 术开 发提供 了方便 ,降 直接 连入 以太 网作为 网络 脉冲 的滤波 和转 低 了通 信系 统的维 护工 作量 ,减少 了软件 换器 的耦 合隔 离变压 器 。在嵌 入式 的 We b 设计 的难度 , 进一 步提高 了对 现场 的管理 、 服务 器 中串行 电平转 换主要 选用 了美信 公
嵌入式Web服务器的研究与实现
报警 、 传送 数 据等功 能 。 嵌入 式 We 务 器 系统 可 利 用现 有 的 网络 , b服 不
执行 网络芯 片传送 过来的指令和数据就 可 以实现
中图分 类号 :P 9 .9 T 330 文 献标 识码 : A 开 发周 期 。本 文将 在 8位 单 片 机 的 硬 件平 台上 , 讨 论 和实 现嵌 入式 We b服务 器 的过 程和 方法 。
在嵌入式 I e e 时代 , nm t t 随着信息技术 , 网络技
术 和嵌 入式 系统 的 飞速 发 展 , 多 以单 片 机 应 用 系 许
嵌入式 We 服务器的实现关键是 T P I b C /P协议 栈的引入和裁剪。而将实 时操作 系统 移植到嵌 入 式系统则可提 高系统可靠性 , 提高开发效率 , 缩短
收 稿 日期 :0 70 .5 20 -41 -
独立的通信任务 , 称为 e M c , m i o监测嵌入式设备 中 r
应用 系统 M U只处理较 简单 的 e N t 议 , 行 网 C m e协 进 络连 接 。 ( 1 U 直 接 实 现 形 式 。 实 现该 形 式 的 We 3 MC b 服务 器 , 可选用 多种 型 号 的 MC U来 实 现 网络 协议 ,
C5P F0 6 81 . 0 7 0 2J I
P 0一 7. P 7 7.
P . 45 P . 43
P4. 6
7 HC 7 4 53
如 A 8 C 22 S 5B 10等 , 可根 据具体要 求 T 9 85 、X 2 D 0 并 选用不 同速度 的 M U作为核心 芯片, C 但是基本 硬
嵌入式Web服务器的实现及其CGI应用
Ke r s e e d d w b s r e ;S t d;e e d d d mo b a d;C ;C C y wo d : mb d e e e r ht v p mb d e e o r GI GI
王 俊 ,郭 书军
( 方 工 业 大 学 信 息工 程 学 院 ,北 京 1 o4 ) 北 0 lJ 4
摘 要 :嵌 入 式 设 备 资 源有 限 , 这 种 情 况 下 实现 We 在 b服 务 功 能 比较 困难 。 针 对 嵌 入 式 设 备 这种 特 点 , 文 通 过 比较 本 几种 We b服 务 器 的 优 缺 点 , 定 了 S t d作 为嵌 入 式 We 选 ht p b服 务 器 , 对 其 在 Ln x嵌入 式 平 台下 进 行 了移 植 。 文 中 并 i u 详 细 解析 了 C I 术 的 相 关 原 理 , 结合 H ML表 单 和 C I 术 , 出 了用 C语 言编 写 的基 于 C I G技 并 T G技 给 G C库 的 串 口程 序 ,
( oeeo n r ai n i eig N r hn n esyo Tc nl y B in 0 14 C i ) C lg f m t nE gn r , ot C i U i ri f ehoo , e ig104 , hn l fI o o e n h a v t g j a
l rr a ie ,whc o ie i i ayw sgv n b ih cmbn d wt HTML fr n GItc n lg , e iigd n mi nea t i ewen tecin h msa d C h oo o e y ra zn y a citrci t b t e l t l 21 .
嵌入式Web服务器设计与实现
( 数据 数据 数据 数 据 数据…………)
硬件 的主要 组成 : P XA2 7 0 一 R P 实 验 平 台 。本 系 统 开 发板 中的操作 系统 采用 嵌入 式 L i n u x, 其 具有 优 异 、 可 移
植性强 、 稳 定 性 高 的 网络 功 能 , 采用 2 . 6 . 1 8版 本 的 内核 。
Ac c e pt — l a ngu a ge: z h — c n
0 引 言
嵌 入式 系统是 2 1世 纪 具 有 广 阔 发 展 前 景 的 技 术 方 向之一 , 自2 0世 纪 7 O年 代 初 出 现 嵌 人 式 系 统 的 概 念 以 来 , 嵌 入 式 系 统 以其 高 性 能 、 低 功 耗 等 特 点 获 得 了 高 速 的 发 展 。在 2 0世 纪 末 、 2 1世 纪 初 , 嵌 入 式 技 术 又 与 网 络
( 额 外 的 回 车符 和 换 行 符 )
HTTP响 应 消 息
HTTP / 1 . 1 2 0 0 OK
Da t e:T u e, 2 5 De c 2 0l 2 0 0: 45: 45 G M T
S e r v e r :BW S / 1 . 0
Co nne e t i o n: C l O Se
输 协 议 。 HTTP客 户 首 先 发 起 建 立 与 服 务 器 TC P 的 连
并 响应 , 并根 据 C l i e n t 的请 求 向 C l i e n t 传 送 所 需 内容 。
查
客 户 向 服 务 器 资 源 请 求
服 务 器 端 监 听 客 户 请 求
接 。一 旦 建 立 连 接 , 浏 览 器 进 程 和 服 务 器 进 程 就 可 以 对
嵌入式Web服务器的实现
嵌入式Web服务器的实现1Boa程序1.1Boa简介boa是最受人喜爱的嵌入式web服务器,功能较为强大,支持认证,cgi等。
Boa 是一个单任务的HTTP SERVER,它不像传统的web服务器那样为每个访问连接开启一个进程,也不会为多个连接开启多个自身的拷贝。
Boa对所有的活动的http连接在内部进行处理,而且只为每个CGI连接(独立的进程)开启新的进程。
因此,boa在同等硬件条件下显示出更快的速度。
测试表明boa在Pentium 300MHZ下能够每秒钟处理几千次点击,在20 MHz 386/SX 下能够每秒钟处理几十次点击访问。
Boa和thttpd等,与apache等高性能的web服务器主要区别是,它们一般是单进程的服务器,只有在完成一个用户请求后才能响应另一个用户的请求,无法并发响应,但这在嵌入式设备的应用场合里已经足够了。
Boa设计主要出于速度和安全,是指不被恶意用户暗中破坏,而不是指它有很好的访问控制和通信加密。
可以添加SSL来保证数据传输中的保密和安全。
1.2Boa的功能、特点1)支持HTTP/1.0(实验性的、有条件的支持HTTP/1.1)1.12)支持CGI/1.1,编程语言除了C语言外,还支持Python, Perl, PHP,但对PHP没有直接支持,没有mod_perl, mod_snake/mod_python等。
3)Boa支持HTTP认证,但不支持多用户认证。
4)它可以配置成SSL/HTTPS和IPv6。
5)支持虚拟主机功能。
Boa服务器与其它服务器的不同:为了追求速度和简单性,boa服务器在一些方面不同于一些流行的web服务器。
1)CGI程序的REMOTE_HOST环境变量没有设置2)Boa不具有ssi(server side includes)3)Boa不具有访问控制4)没有chroot选项1.3Boa的工作原理BOA是一款非常小巧的Web服务器,源代码开放、性能优秀、支持CGI通用网关接口技术,特别适合应用在嵌入式系统中。
嵌入式Web服务器的分析与实现
N. o 4,2 0 01
九江 学 院 学 报 ( 自然 科 学版 ) Ju a o ui gU iesy (a r c ne ) orl fi a n r t nt a si cs n jjn v i ul e
( 总第 9 期 ) 1
( u o9 ) S m N . 1
We b服务 器需 要 占用 巨 大空 间 ,无 法 应 用 于 专 门 的领域 。因此对 嵌人 式 We 务 器 的探 索 成 为 一 b服
种必须 。
生成 动态 Fr 发 送 给 嵌 人 式 We om b服 务 器 ;嵌 人
式 We b服务 器解 析 H f 1 P请求 ,然 后 由 F r 解 析 r o m
方式 实现 相互 连 接 ,在 网络 通 信 市场 上 极 具 生 命 力 。而实 际上 ,随着人们 对 Itnt ne e 应用 的依 赖 度 r 增强 ,也 一 定 程 度 上 促 进 了 嵌 人 式 技 术 的发 展 , 嵌入式 设 备几 乎 包 括 了所 有生 活 电器 :手 机 、汽 车 、微 波 炉 、 电 梯 、 自动 取 款 机 、 医 疗 仪 器 等 。 It c技术 的发展使 嵌 人式 设 备 的远 程 控 制 和 管 ne t a r
T PI C /P协议 ,顶 层 由 HI 协 议 进 行 通 信 ,We , b 浏览 器通 过 Sr t 析 器 解 析 浏 览 器 脚 本 ,通 过 cp 解 i
H ML解 析器 解 析 HT Lห้องสมุดไป่ตู้ 言 ,由客 户端 Jv T M aa虚 拟机来 解 析 Jv p lt 且 同时 由 F r 生 成 器 aaape,并 om
设备 则可 以在世 界任 何一 个地 方就 能够 控制 它 。
微型嵌入式Web服务器的设计与实现.
微型嵌入式Web服务器的设计与实现微型嵌入式Web服务器的设计与实现类别:嵌入式系统1引言随着计算机、网络通信和Internet技术的飞速发展和不断进步,嵌入式系统在家庭和工业应用广泛。
如何将嵌入式系统和工业控制系统接人Internet,综合利用嵌入式系统资源,实现嵌入式系统的远程管理和控制,已成为关注的研究课题,而实现嵌入式系统的网络化则成为嵌入式系统的发展趋势。
以太网以其成本低、速度快、应用普遍、有广泛的硬件和软件支持等优点为实现管理控制网络一体化提供可能,在现场设备内置WEB服务器,使现场设备具有网页发布功能,将Internet技术直接引入现场设备。
本设计是基于ARM7的微型嵌入式Web服务器。
目前市场上大部分以太网控制器的封装均超过80引脚,而ENC28J60是业界最小的以太网控制器,只有28引脚,这样既能提供相应功能,又大大简化相关设计,减小空间,其标准的SPI串行接口只需4条总线即可实现与单片机连接,有利于在小型系统上实现以太网功能。
在研究和分析TCP/IP协议的基础上,合理简化TCP/IP协议,选择实现ARP、IP、ICMP、TCP和HTTP协议。
2系统硬件设计ENC28J60的硬件连接如图1所示。
ENC28J60的硬件设计包括复位电路、时钟振荡器、网络变压器和其他外部元件以及LED配置单元模块。
2.1复位电路当ENC28J60的RESET引脚为低电平时ENC28J60工作在复位模式。
RESET引脚内部有弱上拉电阻,应外接一只10kΩ的上拉电阻。
2.2时钟振荡器ENC28J60工作频率为25MHz。
在OSC1和OSC2引脚之间连接无源晶体振荡器。
ENC28J60要求使用平行切割的晶体。
本设计采用连接至OSC1引脚的外部25MHz有源晶体振荡器驱动,此时3.3V的外部时钟连接OSC1引脚,OSC2引脚可使用一只接地电阻或断开OSC2引脚以减少系统噪声。
2.3网络变压器和其他外部元件实现以太网接口控制,还需多个标准外部元件:网络变压器、偏置电阻、储能电容和去耦电容。
嵌入式WEBSERVER的设计与实现
1.绪论自18世纪的工业革命以来,人类社会在每个世纪都有它的主流技术。
在经历了机械时代,蒸汽机时代和电气时代后,以信息的收集,处理和发布为主要特点的信息技术是成为我们这个时代的主流技术。
信息技术的蓬勃发展,对我们这个社会产生了极为深远的影响。
1.1 嵌入式系统的发展及现状嵌入式概念早在20世纪60年代末己被提出,在经历了二、三十年的缓慢发展后,截止到上世纪90年代,它获得了全面的应用和发展。
目前,随着IT 业向数字化、网络化和智能化方向发展,嵌入式技术的应用全面展开。
在通信领域中,采用嵌入式技术的交换和路由设备实现了智能的交换和路由。
在广播电视领域,嵌入式软件技术和数字技术的结合,造就了家电行业的未来发展方向-信息家电。
在控制领域,广泛应用于ATM机、自动售货机、工业控制等设备。
在商业领域中,先进的PDA己能在屏幕上实现汉字写入、短消息语音发布,应用范围也将日益广阔。
在个人领域中,嵌入式产品将主要作为个人移动的数据处理和通信软件。
由于嵌入式设备具有人性化的人机交互界面,GUI屏幕为中心的多媒体界面给人以很大的亲和力,手写文字输入、语音拨号、收发电子邮件以及彩色图形、图像取得初步成效,所有上述产品都离不开嵌入式系统技术。
中国的单片机应用和嵌入式系统开发有15年的历程,有超过10万名从事单片机开发应用的工程师,但绝大多数是以封闭的方式开发几乎不可重用的软件。
今天面对的是嵌入式系统工业化的潮流,嵌入式软件必须以工业化的方式生产开发,这对加速知识创新和建立面向新世纪的知识经济具有战略意义。
[1] 本文将讲述的单片机+TCP/IP软件的方法就可以使嵌入式系统上英特网,使嵌入式设备之间可以相互通信。
这种技术现今已用于工业自动化,POS(电子收款机系统)网络及电子商务,智能公路等方面。
1.2 嵌入式系统的定义嵌入式系统泛指单片机和微处理器构成的电子设备。
根据IEEE的定义,嵌入式系统是“控制、监视、或者辅助设备、机器和车间运行的装置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。
基于S3C2440的嵌入式Web服务器的设计与实现
移植 B A到 ¥ C 4 0处 理器 开发 板 , O 3 24 并设 置 配置 文件 , 使其 能 正常着 实 现进行 WE B服务 器 的功能 。
1 1 1 嵌入 式 B A服 务 器 移植 .. O 从 ht :/W W b a og 下载 B A源码 后 解 压 。进 人 源 码 目录 的 s t / W . o . r/ p O r c
用 , 。 。
通 过基 于 ¥C 4 0的嵌人 式 We 324 b服务 器 系 统 , 过 普通 的浏 览 器 就可 以对 远端 现 场 进行 控 制 和 测 通 量 以及 获 取远 端现 场 的图像 信息 , 用嵌 入式 WE 使 B服 务器 的好 处 如下 : () 1 只需浏 览器 , 需开发 应 用软 件 , 无 降低 系统 成 ; ( ) 控终 端平 台 与服务 器平 台无关 , 正实 现 了跨平 台 ; 2监 真
务 器 系统 可 以满足 一般 测控 系统 的要 求 , 而且 成本 低 、 体积 小 , 不仅 可 以广泛 应用 于工 业控制 领域 , 实现 小
型工业 监 测 系统 网 络 化 , 可 以 实 现 智 能 仪 器 、 能 园 区 、 境 工 程 、 物 工 厂 、 业 制 冷 等 方 面 的 应 还 智 环 植 工
安徽科技学院学报 ,0 12 ( )4 5 2 1 ,5 2 :8~ 2
Jun l fA h lS in ea dT c n lg nvri o ra n u ce c n e h oo y U iest o y
基 于 ¥ C 4 0的嵌 入 式 We 3 24 b服 务 器 的 设 计 与 实 现
郭 志 勇
一种嵌入式Web服务器的设计与实现
程 , 着 由此 C I 程 接 管 对服 务 器 需 完 成 的 相 关 操 作 的 控 制 。 接 G进 C I 用程 序 读 取 从 嵌 入 式 WE G应 B服 务 器 传 递 来 的 各 种 信 息 . 并
2 系统 硬 件设 计 : .
对 客 户 端 的 请 求 进 行解 释 和处 理 。最 后 C I G 应用 程 序会 将 处 理 Smsn a u g公 司 的 A M7 0 D R 2T MI内 核 的 S C 4 O 是 适 用 结 果 按 照 C I 范 返 回给 嵌 入 式 We 3 3B A G规 b服 务 器 .嵌 入 式 We b服 于低 端 的 A M 处 理 器 .它 可 以提 供 三 级 流 水 线 及 冯 . 依 曼 结 务 器 会 对 C I 用 程 序 的处 理 结 果 进行 解析 .并 在 此 基 础 上 生 R 诺 G应 构 , 作 频 率 在 6 Z。 了减 少 系 统 总 成 本 和 减少 外 围器 件 . 成 H兀P 响应 信 息 返 回给 客 户 端 。 工 6MH 为
访 问 控制 方 式 来 读 取 数 据 的 。 以要 实 现 H兀P协 议 。 所 4嵌 入 式 We . b服 务 器 的 实现 和 数 据 处 理
We b服 务 器 使 用 的 主 要 协 议 是 H f 协议 .即 超 文 本传 输 1 1 协 议 。HI' 议 是 用 于从 We 务 器 传 输 超 文本 到 本 地 浏览 P协 ’ I b服 器 的 传 送 协 议 . 于 应 用 层 的 面 向对 象 的协 议 。 位 于 T PI 模 属 它 C ,) I 型 的 最 上 层 即应 用 层 , 以使 浏 览 器 更 加 高 效 。 网 络传 输 量 减 可 使 少 , 不 仅保 证 计 算 机 正 确 快 速 地传 送 超 文 本 文 档 . 它 还确 定 传 送 文 档 中的 哪 一 部 分 。 以及 哪 部 分 内容 首 先 显 示 等 。H r T P协议 具 有 如 下 特 点 : 持 客 户/ 务 器 模 式 、 支 服 简单 快 速 、 活 、 连 接 、 灵 无 无 状态 。H Y T P协 议 是 基 于 请 求 / 应 模 式 的 。 响 哪 通 信 建 立 在 T PI C /P连 接 之 上 。基 于 Hr 协 议 的客 户/ 务 器 模 式 的 信 息 r 】 服 交 换 过 程 分 4个 步 骤 : 立 连 接 、 建 发送 请 求 信 息 、 送 响 应 信 息 发
基于Coldfire微处理器的嵌入式Web服务器的设计与实现
1 嵌入式 We b服务器 的系统结构
嵌入式 We b服务 器将 We 务器 引入 到 现 b服
还处于独立应用的阶段 , 通信协议相对较少 , 覆盖 范 围有 限 , 难 实 现灵 活 的 远程 访 问 与管 理 。将 很
嵌人 式设备 接入 Itre, nent在其 上实 现完 善 的 We b
Ab t a t s r c -A iy e e d d W e e v r sd s n d t e l en t o k l k fri d s ilf l mb d e e t mb d e b s r e e i e o r ai ew r i o n u t a i d e e d d d — d wa g z n r e
低压 电器 (00 ) 2 1№5
・ 现场总线 ・
基 于 C lf e 处理 器 的嵌 入 式 od r 微 i We b服 务 器 的 设 计 与 实 现
张 跃 常
( 上海电器科 学研究所( 集团) 有限公司, 上海 2 0 6 ) 0 0 3
摘 要: 为实现工业现场嵌入式设备 网络互联 , 设计 了一个精 简的嵌 入式 We b服 张 跃 常 ( 9 2 ) 18 一 ,
vc s Th lfr i ge c i CF5 0 n h r tc p DP 8 r a en a a d r lto m. Th r n — ie. e Cod ie sn l— h p M 2 8 a d Et e Ne hi 83 48 we e tk sh r wa e pa fr e ta s
议 、 b技 术 为 核 心 的基 于 It nt 网络 监控 We ne e 的 r
展趋 势 。 虽 然诸 如 E bde iu 、 x rs等 m eddLnx V Wok 嵌入 式 操 作 系 统 已提 供 T P I 议 栈 支 持 , C /P协 但 其软件 和硬件 成本 相 对 较 高 , 不适 合 大 多 数低 并
基于嵌入式Linux的Web服务器的设计与实现
人 式 W e 服 务 器 的设 计 与 实 现 方 法 , 嵌 入 式 设 备 的 远 程 管 理 提 供 了 一 种 可 行 的 实 施 方 案 。该 w e b 为 b服 务 器 以 嵌 入 式 Ln x系统 和 ¥ C 4 0C U 为 软 硬 件 开 发 平 台 , 用 C I 术 , C语 言 编 写 完 成 。 iu 3 2 1 P 采 G 技 用 关键词 超 文 本 传 输协 议 ; 人 式 系 统 ; e 务 器 ;移 植 嵌 W b服
1 引言
随着 数字 信 息技术 高 速发 展 , 有借 助 于 计算 只
机 , 能 够对各 类 信息 进行 高 效处 理 。如今 的计算 才
机 已不再 局 限于 P 而是 扩展 到形 态各 异 、 能 千 C, 性
理 与维 护提 供 了方便 , 入式 设备 的 网络化 成 为可 嵌
能 。市 场 的发展 趋 势也要 求 将工 业控 制 、 筑 物 自 建
TP 9 . 7 3 3 0 中 图分 类 号
De i n a d I p e e t to f W e e v r Ba e n Em b d e n x sg n m l m n a i n o b S r e s d o e d d Li u
M a Su ng ga W a 。 ng Li XuZh we en n”
动 化等各 种 领域 的嵌 入式 设 备联 网 , 现远 程 监视 实
和 控制 。基 于 W e b的控 制 方 式 具 有 两 个 显 著 优 势 [ : 方 面 , 系 统 的监 控 不 需 要 专 门 的客 户端 1一 ] 对
差万 别 的嵌 入式 系 统 。嵌 入 式 系统 因其 可 定 制 性
t e mo e h s s l t n ma e tf a i l O r mo ey ma a e e b d e e ie .Th e e v r b s d o mb d e n x h r r ,t i o u i k s i e sb e t e t l n g m e d d d v c s o e W b s r e a e n e e d d Ii u
基于嵌入式WEB服务器的SCADA系统实现
• 205•ELECTRONICS WORLD・技术交流基于嵌入式WEB服务器的SCADA系统实现武汉铁路职业技术学院 朱志伟本文阐述了一种基于嵌入式WEB服务器的SCADA系统的实现方式,主要剖析了嵌入式WEB服务器和浏览器WEB人机交互界面的设计与实现,并通过测试结果验证了该SCADA系统能够满足某些特定工业应用的需求且具有较好的实时性和可靠性,为小型嵌入式SCADA系统的推广与应用提供一个简单易行的解决方案。
1.SCADA系统发展现状SCADA系统,即数据采集与监视控制系统,是工业控制系统的一种。
目前,SCADA系统已发展到了第四代,第四代SCADA 系统的一个重要技术要求是融合Inte rnet。
典型的SCADA系统,是一个由现场控制设备、数据服务器和监控计算机构成的3层控制系统,广泛应用在电气化铁路、电力、石油、化工等工业领域。
[1]总之,SCADA系统的大型应用技术十分成熟,但小型嵌入式SCADA系统的应用未得到充分发展。
2.基于嵌入式WEB服务器的SCADA系统方案基于嵌入式WEB服务器的SCADA系统,其实是一个小型的嵌入式的B/S模式SCADA系统。
本文重点设计实现SCADA系统的上层结构,包含数据服务器、监控计算机及其构成的工作模式,不针对具体现场设备。
方案设计目标:满足小规模远程数据采集与监视控制系统的应用需求,满足需要把数据服务器集成到现场设备中的SCADA系统的应用需求,满足成本低、易于维护和设备通用。
据此设计SCADA系统方案:数据服务器选用性价比高的STM32F103单片机作为核心,监控计算机选用通用PC计算机,数据服务器和监控计算机通过工业交换机构成B/S模式,数据服务器数量可为1台以上。
本文SCADA系统方案,有两个需要设计实现的关键部分:基于STM32F103单片机的嵌入式WEB服务器和基于PC计算机浏览器的WEB人机交互界面。
3.嵌入式WEB服务器的设计与实现基于STM32F103C8T6单片机的嵌入式WEB服务器,需要完成两个设计任务:具备RJ45以太网接口,能够支持TCP/IP协议,并在此基础上实现HTTP协议,以完成WEB服务器的远程浏览器WEB访问功能;具备RS485总线接口、CAN总线接口、模拟量输入输出通道AI/AO和数字量输入输出通道DI/DO,能够支持常用现场总线通信、模拟量和数字量的输入输出,以完成WEB服务器对各类不同现场设备的数据采集与控制功能。
基于嵌入式Web服务器的远程控制系统的实现
图 2 硬 件 系 统设 计 框 图
用户应用程序
p 1n x C iu 操作系统 设备驱 动程序 底层硬件设备
器 的数 据 采 用 U L编 码 的 方 式 传 送 ,例 如参 数 采 用 n n = R al e
vle的形 式 , 对 之 间用 ” 连 接 , 殊 字 符 用 ” 加 一 个 十 au 每 &” 特 %”
言 具 有 较 强 的平 台 无 关 性 , 因此 该 系 统 采 用 C语 言 来 编 写
C I 序1 G 程 2 1 。
hH 卜 曲
l ’ 处理器 ’ l I ’。
善
外部控制设备
动 态 网 页是 通 过 网 页 内嵌 表 单 的方 式 进 行 信 息传 递 的 。
该 系 统 首 先 采 用 网 页 编 辑 软 件 Dem evr 辑 登 陆 界 面 ra w ae 编 idxhm 及 远 程控 制 界 面 rm t. m 。 编 辑 表 单 选项 时 由 ne . l t e oe t l在 h at n属 性 指 向相 应 C I 序 路 径 , m  ̄o co i G 程 由 e d属 性 决 定 提 交 数 据 的方 式 是 G T方式 还 是 P S E O T方 式 。 户 端 传 送 到 服务 客
由于 该 处 理 器 不 具 有 MMU( 储 器 管 理 单 元 ) 需 要 完 存 且
备 以太 网协 议 构 建 网 页服 务器 , 选 择 开 源 的 嵌 入 式 t l . 故 L i Cn
U 操 作 系 统 。该 操 作 系统 从 Lnx .. 展 而 来 , 门应 用 于 X iu20发 专 不 具 备 MMU的 微 控 制 系 统 。该操 作 系统 提 供 了 3个 We 服 b 务 器 :t dT t d和 B A。其 中功 能 最 简单 的是 htd 不 支 ht ,ht p p O t , p 持 认 证 、G 。T t d和 B A 服 务 器 都 支 持 认 证 、 G ( o C I ht p O C IGm. m nG tw yItr c , 共 网 关接 1 等 , 由 于 T t d服 务 o a a e ae公 e n f 3) 但 ht p 器 需 要 的 资 源 比 B A 大 得 多 . 该 系 统 最 终 采 用 B A 服 务 O 故 O 器 作 为 远 程控 制 的 网 页服 务 器c ” 。
一种基于ARM的嵌入式Web服务器的研究与实现
s u n g 公 司的 ¥ 3 C 2 4 4 0 A L A R M 9处理 器作为 硬件核 心 , 以L i n u x 操 作系统 下 的 B o a 服务 器作 为软件平 台 , 研 究并实 现 了一个 嵌入 式 We b 服务 器 。给 出了系统 硬件 平 台结构 的设计 及组 成 , 详细 讨论 了 L i n u x 操作 系统 和 C G I C库 的移植过 程 , 对B o a 服务 器 的建立 以及 运用 C G I 实现 浏览器 与嵌入 式 We b服务器之 间 的动态交 互技术 进行 了研究 。对 该嵌 入式 We b 服 务器 的 实验测 试结果 表明其 响应迅 速 , 运 行稳定 , 满足 应用设 计需求 。
t i o n b e t we e n W e b b r o ws e r nd a he t e mb e d d e d W e b s e ve r r b y u s i n g CGI re a e s p e c i ll a y na a l y z e d . T h e e x p e r i me n t a l r e s u l t o f t h e e mb e d d e d
Re s e a r c h a n d Re a l i z a t i o n o f a n Em be d de d W e b
S e r v e r Ba s e d o n ARM
LI Bo1 U n i t o f t h e P L A, S h e n y a n g 1 1 0 1 6 2 , C h i n a ;
Ab s t r a c t : T o r e a l i z e t h e o n l i n e r e mo t e a c c e s s a n d ma na g e me n t t O t h e e mb e d d e d d e v i c e s u s i n g he t We b b r o ws e r o v e r I n t e r n e t , n a e mb e d —
基于单片机的嵌入式Web服务器设计与实现
摘
要: 介绍 了一种能在单 片机 无操 作系统的环境 下实现嵌 入式 W b服务器 的设计思想与方法,能很好地 满足嵌入 式系 e
一பைடு நூலகம்一
与服务器端都可 以 前中断—个连接。例如,当用一个浏览 提 器 下载一个文件时,我们可以通过点击 “ 停止”键来中断文 件 的下载, 关闭与服务器 的 H T 连接 。 TP
2 CGl 理 原
2 1C I . G 概述 C I( G 通用 网关接 口) 定义了w b e 服务器与 C I G 脚本之间 的接 口标准 。其主要功能是在 W b e 环境下,从客 户端传送一 些信息 给 Wb e 服务器 ,Wb e 服务器把接收到的有关信息放入 环境变量,然后再去启动所指定的 C I G 脚本以完成特定的工 作, G 脚本从环境变量 中获取相关信息来运行, CI 最后以H M TL 格 式输出相应的执行结果返回给浏 览器端。由于用 户能传递 不同的参数给 CI G 脚本,所 以 cI G 技术使得浏 览器和服务器 G在 e 计之 间具有交互性 。C I 整个数据传送的过程 中,要从 W b 与 实现 服务器传递有关数据给 C I G 脚本,因此 Wb e 服务器先将从浏 览器接收到 的有关数据转换为各种环境变量 ,然后 c I G 脚本 就可以从这 些环境变量中读取所需要的 内容。也就是说,环 境变量 是 Wb e 服务器和 CI G 脚本进行数据传递 的途径 。 22CI . G 输入输 出 C 输入方式是使用 H M 表单向 W b服务器 发送信息 。 G I TL e 基 本语 法如下 :
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第三章 嵌入式Web服务器的实现3.1 嵌入式Web服务器的概况随着计算机的日益普及,互联网络(Internet)已经成为人们日常生活的一部分。
互联网络是覆盖率极广、联网设备众多、协议完善、功能强大的一种通信方式,已经成为社会重要的基础信息设施,是重要的信息流通渠道。
具备互联网络的接入功能,已经成为众多使用微处理器的嵌入式应用的发展方向。
网络控制设备逐渐成为一种趋势。
使用互联网络的接入功能将给嵌入式的微处理器应用带来很多好处:利用无所不在的互联网络,可以从全球的任何一个角落实现对设备的监控;利用开放的TCP/IP 网络通信协议,任何的计算机都可以使用通用的网络浏览软件访问设备,不需要专门的计算机和专门的软件;设备的信息通过网页的形式体现。
因此从概念性上来讲,嵌入式Web服务器(Embedded Web Server)是指将Web服务器引入到现场测试和控制设备中,在相应的硬件平台和软件系统的支持下,使传统的测试和控制设备转变为具备了以TCP/IP为底层通信协议,Web技术为核心的基于互联网的网络测试和控制设备。
嵌入式Web服务器系统与传统的Web应用相比,简化了系统结构,将信息采集和信息发布都集成到现场的测控设备中。
一般来说,Web服务器通常由以下几个部分组成:● 服务器初始化部分。
这部分主要完成Web服务器的初始化工作,如建立守护进程、创建TCP套接字、绑定端口、将TCP套接字转换成侦听套接字,进入循环结构,等待接收用户浏览器连接。
● 接收客户端请求。
由于客户端请求以文本行的方式实现,所以服务器也以文本行为单位接收。
● 解析客户端请求。
这部分工作比较复杂,需要解析出请求的方法、URL(统一资源定位符)目标、可选的查询信息及表单信息。
如果请求方法为HEAD,则简单地返回响应首部即可;如果方法是GET,则首先返回响应首部,然后将客户端请求的URL 目标文件从服务器磁盘上读出,再发送给客户端:如果是POST,则比较麻烦,首先要调用相应的CGI程序,然后将用户表单信息传给CGI程序,CGI程序根据表单内容完成相应的工作,并将结果数据返回。
● 发送响应信息之后,关闭与客户机的连接。
Linux环境下,主要有三个Web服务器:Httpd、thttpd和Boa。
Httpd是最简单的一个Web服务器,它的功能最弱,不支持认证,不支持CGI。
thttpd和Boa都支持认证和CGI等,功能都比较全。
如果Web服务器仅需提供一些静态页面,例如系统介绍、简单的在线帮助等,完全可以用静态服务器Httpd 来实现。
但若需要与用户进行交互,例如数据查询、实时状态查询等,则必须使用动态Web技术,可以选用thttpd或者Boa来实现。
目前实现动态Web页面有多种技术可供选择,CGI, ASP, PHP等技术。
针对具体的嵌入式人机界面要实现动态数据和状态查询,而且要实现逻辑算法的实现,因此选择支持ASP、CGI、embedded JavaScript等脚本语言的Goahead。
3.2Goahead服务器3.2.1 GoAhead Web服务器的概况Web服务器采用GoAhead Web服务器,一款主要面向嵌入式系统的Web服务器。
它的体积非常小巧,但提供了不少的服务特性,它支持ASP,嵌入的JavaScript与内存CGI处理。
3.2.2 GoAhead Web服务器的结构图3-1为GoAhead Web服务器的处理流程,下面简单介绍其结构:main.c:GoAhead Web服务器的主程序文件,完成初始化、设置环境和启动Web 服务器等功能。
● 网页的根目录:*rootWeb = T("web");修改*rootWeb到新的网页目录下。
● 设置网站主页:websRedirect( wp, T("home.asp"));● 设置访问密码:*password = T("");● 设置访问端口:port = 80;Asp.c:asp解释器模块,主要有以下几个功能函数:websAspFunctions = symOpen( WEBS_SYM_INIT * 2 );创建asp函数列表,其中WEBS_SYM_INIT在头文件“wsIntrn.h”中定义。
websAspDefine( char_t *name, int (*fn)( int ejid, webs_t wp, int argc, char_t **argv));创建asp函数命令。
websAspFunctions是加载asp函数的标志;aspOpenCount是使用asp功能块的程序的个数;int websAspOpen()打开websasp正确返回0;void websAspClose()关闭asp模块;int websAspRequest( webs_t wp, char_t *lpath);处理asp请求和script命令。
Form.c:实现/goform的处理,主要有以下几个功能函数:formSymtab 是/goform处理列表的标志;int websFormHandler( webs_t wp, char_t *urlPrefix, char_t *webDir, int arg, char_t *url, char_t *path, char_t *query)处理form请求;int websFormDefine( char_t *name, void (*fn)( webs_t wp, char_t *path, char_t *query))定义一个form 的函数功能块;void websFormOpen()打开form表;void websFormClose()关闭form表。
cgi.c:cgi功能块int websCgiHandler( webs_t wp, char_t *urlPrefix, char_t *webDir, int arg, char_t *url, char_t *path, char_t* query)处理form请求。
security.c:安全功能块int websSecurityHandler( webs_t wp, char_t *urlPrefix, char_t *webDir, int arg, char_t *url, char_t *path, char_t *query)处理安全请求。
基于以上GoAhead Web服务器的结构和特点,针对动态网页的实现方面,采用ASP 和embedded JavaScrip技术来实现,才能实现组态动态网页。
3.3 Goahead服务器的移植Goahead的移植工作可以分为以下三个步骤来完成:第一步:下载Goahead源码由于Goahead的源代码是开放的,因此可以从Goahead的官方网站上下载到Goahead最新版本的源码。
最新开放源代码的Goahead版本为2.18。
第二步:配置Goahead Web服务器解压缩最新版本的Goahead服务器,进入目录,在修改/LINUX下的Makefile文件,将CC = arm-linux-gccAR = arm-linux-ar加到文件开始处,将cc -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $<换成$(CC) -c -o $@ $(DEBUG) $(CFLAGS) $(IFLAGS) $<第三步:编译并下载执行$ Make clean$ Make将在LINUX目录下生成webs 和libwebs两个文件,只需将两个文件拷贝到ARM 目标板。
由于嵌入式系统没有足够的内存或存储资源来编译可执行代码,只有通过交叉编译代码来创建针对嵌入式系统的可执行文件,并把此文件送到目标机上执行。
因此,通常的嵌入式系统的开发都是装有Linux的PC机作为宿主机来编译内核和应用程序。
编译时可用arm-linux-来指定交叉编译器,不过使用之前先检查PATH路径是否正确。
在ARM目标板上运行Goahead Web服务器,还必须对目标板进行设置,设置如下:首先,在/etc/modules.conf 中加入alias binfmt-464c off ;其次,由于ARM中的Linux没有hostname,因此设置:hostname localhost; 设置IP地址:ifconfig eth0 192.168.1.34。
这样本地的浏览器或者其他主机的浏览器就可以浏览Goahead Web服务器网页。
注意:编译后用 strip 裁减生成的静态库与 webs 的文件大小,两个都在 120kb 左右,否则两个大小有 1.5MB。
3.4 Goahead服务器功能修改与增加3.4.1 Goahead服务器配置Goahead服务器得在程序中编译其配置信息,必须在编译之前将系统参数设置好,编译后,便不可以再改变。
针对这个功能,可以采取将配置信息存储在文件中,Goahead 运行时去获取相应配置信息即可。
那么就不需要重新编译其应用程序,只需要修改一下配置信息。
修改一些参数将其设置成配置信息,使其在修改时,不用重新编译和下载程序,现在做如下规定,配置参数存放在webs文件的同目录下,文件名为:“ServerCfg”。
需要配置的参数主要有以下几个,并定义其顺序,方便程序读取其参数。
0----------*rootWeb = T( "web" )1----------*password = T( "123456" )2----------port = 8080 (int)3----------retries = 5 (int)4----------umRestore( T("websconfig.txt") )5----------T( "/goform" )///goform handler6----------T( "/cgi-bin" )///cgi handler7----------T( "default.asp" )////default page8----------T( "asp.asp" )////home page9----------hostname///10---------ip地址定义了初始化程序,在Goahead服务器启动时,首先调用初始化程序;其次才正常启动Goahead服务器。
static int initconfig();//初始化配置信息为了方便初始化配置数据信息,定义了如下数据结构供初始化函数时使用: #define nmemb 11struct para_test{char name[30];int size;}serverCfg[nmemb];由于Goahead服务器启动过程中需要有hostname和ip地址,因此,在初始化程序中,将设置hostname和ip地址。