当前位置:首页 >> 信息与通信 >>

基于嵌入式webserver的GPIO远程监控系统设计与应用_图文

第2 4卷

第 4期 















报 

Vo . 4 No 4 12   .  
A u 20   g. 08

20 0 8年 8月  

J OURNAL  OF  ANJ N  TI I UNI VERS TY    I OF TECHNOLOGY 

文章编 号 :6 3 0 5 20  0 —0 3 0  17 - 9 X(0 8 4 0 2 — 4 J

基 于 嵌 入 式 w bevr的 GP O 远 程 监 控 系统 设 计 与 应 用  e sr e I
韩丽娜 ,陈在平 
( 津理工大 学 自动化 学院 ,天津 3 0 9 ) 天 0 1 1  摘 要 : 于嵌入 式平 台的监控 系统 , 基 以其 体积 小、 可连 续工作 时间长、 能稳定 等特点 , 性 得到人 们的广泛认 可 , 成 

为 网络 化远程监 控 系统 的主流方 向. 本文 针对 工 业测 控领 域 中主 流 的 u l u c nx操 作 平 台 , 细论述 了基 于 ba和  i 详 o
C I 术 的嵌 入 式 w bevr 计 , G技 esre 设 并在 此 基 础 上 构 建 了 G I 远 程 监 控 系统 的 开 发 设 计 . 验 结 果 证 明 本 文 的 设   PO 实

计 方法是正确 与有效 的.  

关键 词 : 嵌入 式 ;ba w b evr G I o ; esre ; PO;远程监控 
中 图 分 类 号 :T 3 1 5   P 1 .4 文 献标识码 :   A

De i n a d a p i a i n o   sg   n   p l t   fGPI r mo e m o i r n   c o O  e t  n t i g o
s s e   s d o   m be y t m ba e   n e dde   bs r e   d we e v r
HAN  in L — a,CHEN Z ip n     a —i g
( col f uo t n Taj   nvri f eh o g , ini 3 0 9 , hn ) S ho o  t i , i i U i syo T c nl y Taj  0 1 1 C ia    A ma o nn e t   o n
Ab t a t sr c :Mo i r g s s m  a e   n e e d d p a  a   e n p p l r e a s  t a  mal u a e, o d p r r n e sa  nt i  y t b s d o   mb d e   lt sb e   o u a  c u ei h s s l c b g g o   e o ma c   t — on e h b     f bly a dln i t  n  o g—t   o t u d r n i g I h sb e  h   i   ie t n o   moe mo i r g s se T i p p ra ms a  e i i c n i e   u n n .t a   e n t eman d r ci   f e t  nt i   y t m. h s a e  i   tt   me n   o r on   h ma n u l u   p r t n s se i h   ed o   d sr   o t 1 Ho  o d sg  h   mb d e   b e v r c mb n n   o   n   i   ci x o e a i   y tm n t e f l   f n u t c n r . w t  e in t e e e d d we s r e , o i ig b a a d n o i i y o C ,s i t d e a d t e d v lp n   t o s o h   I r moe mo i rn   y t m s g v n i  h s p p r T e r s hso   GI i n r u d, n  h   e eo i g meh d   ft e GP O e t  n ti g s se i i e  n t i a e . h   e u   f   o o     e p r n sh v   r v d t a h   t o   r p s d i h s p p ri c re ta d efc ie  x e me t  a e p o e  h tte me h d p o o e  n t i a e  s o r c  n   f t . i     e v Ke   r s mb d e ;b a y wo d :e e d d o ;we s r e ;GP O ;r mo e mo i r g c n rl b evr I e t  nt i   o to  on

随着数字化 时代的到来 , 各种信 息的网络共享 
已经 越 来 越 受到 人 们 的重 视 和 亲 睐 . 如何 将 工 业 监 

于控制继 电器 、 呤器 、E 蜂 L D等 , 输入可以获取传感 
器 状 态 、 低 电平 、 速信 号 等 . 高 低 当微 控 制 器 或 芯 片 

控系统有 效地接 入 I e e, n r t实现 监控 信息 和控 制  tn 系统 策 略 的 网络共 享 , 目前 国 内外 学 者 研 究 的热  是 门课 题 l . 其 对 于 工 业 测 控 领 域 , 何 在 现 场设  1尤 j 如
备层 中 内置嵌 入 式 w bevr成 为嵌 入式 w bevr esre, esre  的发 展 方 向 J这 样 , 理 层 就 可 以直 接 使 用 w b . 管 e  浏览 器 通 过设 备 的 以 太 网 口或 其 他 网 络 端 口来 远  程 访 问 内 置 的 w bevr 专 用 网 页 , 而 实 现 对  esre 的 从 设 备 运 行 状 态 的 实 时监 控管 理 , 证 了不 同 操 作 系  保
统 或者 客 户 端 对 设 备 访 问 的一 致 性 J G I gn  . P O( e —

组没有足够的 IO端 口, 当系统需要采用远端 串 / 或   行通 信 或 控 制 时 , 计 者 可 以通 过 编 程 来 定 义  设
GI PO功 能 , 并通 过 C U 内核 实 现对 G I P PO的 控 制 ,  

以扩展外 围设 备功 能. 因此本 文结 合嵌 人式 w b e.  
sre 研 究 G I 的 远 程 控 制 , 足 了 工 业 监 控 系  evr PO 满 统 的现 场设 备 功 能 扩 展 和远 程控 制 问题 .  

1 基 于 w b的远 程监 控 系统 的方 案 设计 与    e
选 择 
基 于 w b的远 程 监 控 系统 有 两 种 实现 形 式 , e 即 

e l us IOpr 是通用输入输出接 口. 出可用  r ? r    o ) ap e/ t 输
收 稿 日期 : 07 0 — 1 20 —9 1 .  

基金项 目: 天津市科技创新基金 (0 4 A 8 . 20B 0 )  
第一作者 : 韩丽娜 (9 O 18 一 通讯作者 :陈在平 (9 0 15 一 )女 , , 硕士研究生.   )男 , , 教授 , 硕士生导师 

?

2 ? 4 















报 

第2 4卷

第 4期 

使用代理服务器和嵌入式服务器.  
对 于前 者 , 用 一 台 P 使 C机 作 为 内 部 网络 接 人 

境 , 在 内核 中编译 完成 后 即可作 为 服务器 使用 . 并   1 建 目录 . ) 由于 ul u ci x默认 的根文件 系统 rms n of   是 只读 的 , 不能 用 mki直接 新 建 目录 , 应 在 编 译  dr 故 内核 前 建 目录 , 通 过 修 F/ ci x—ds vnos  这  ̄ ulu n i/ edr t / P uP /p2 l/ aei 件 来 实 现 . R MF — HI slc20 m kfe文 l 在 O S 
DR I S=b  e t h me i  n po s vr i d v c o  br t rcur a 的后 边 添  n e  l a    

i e e 的代理服务器 , nr t tn 远程监控主机通过传输 网络  与代理服务器进行数据 的交互 , 来实 现设备 的远程 
监控 . 需要 额 外 的数 据 采 集 和控 制 设 备 负 责 把 采  它 集 到 的现 场 数 据 发 送 给 代 理 服 务 器 , 或者 把 代 理 服 

务器 的控制命令传递给现场设备.  
对 于后者 , 每 台设 备 均 配 备 微 型嵌 入 式 服 务  对 器, 不需 要额 外 的数据 采集 和 控 制设 备 , 以直 接 连  可 接 到 It nt , 有实 时采 集 数据 , 输 速 率 高 , ne e上 具 r 传 可 

加 urbaurba ci i, 样 编译 内核 后 , ms s o s o/g —b 这 / / n r f o  
就 包含 了新 建 的 目录.   2 指定 w bevr ) e sre 的根 目录路 径 . 了用 户 访 问  为

服 务器 时服 务 器 能 确 定 根 目录 的位 置 , 要 指 定 服  需 务 器 的根 目录路 径 S R E — O T  EVRRO.
# iu r r /u l x—d s v  s/sc c i nu iVus r o /sc e n s h e /b a r /d f e .   i

靠性 高等特点  . 同时, 嵌入式 技术 的发 展 日新 月  
异 , 芯 片 内部 移 植 操 作 系 统 , 构 建 嵌 入 式 w b  在 并 e— sre 正 在 逐 步取 代 传 统 的 以 P evr C为 中心 的技 术 应 
用 , 为 未 来 Itre 发 展 的主 力 军  . 文 采 用 基  成 nen t 本

定 义 :d f eS R E — O T/ s / o  # e n  E V R R O ur ba i

此外 , 可 以通 过 在 系 统 终 端 修 改 命 令 行 来 指  还

于 ul u 台 的嵌入 式服 务 器 方 案 , 建 w bevr cnx平 i 构 esre 

定 , ba—c/ s ba&, 用 命 令 行 指 定 的 即: o ur o / / 使  
S ERVER


实现 G I PO的远程监控 , 系统 的总体结构 如图 1 所 
示.  
1 e evr   bs r e   w

R O O T可 以覆 盖 df e. 件 中的 内容. ensh文  

3 修 改 ba cn ) o. of文 件 . v urs / cnx— # i s r ul u     /c i
d s/u e /b a x mpls o c n   it s r o /e a e /b a. o f

修改 为 :  
Us r0 e   Gr u     op0

Do ume t o us/ o   c n Ro t/ r b a Mi Ty s/us/b a mi .y e   me pe r o / me tp s Die tr l e  n e ht   r c oy nd x i d x. ml

图 1 系 统 总 体 结 构 图 
Fi 1 Co igur ton o  he s se   g.   nf a i   ft   y t m

De a lTy e tx/p an fu t p  e t l i 

Ad Ty   p lc t n d pe a p ia i /x— h t d— c ic i o — tp — g  g  S rp Ala c i t is/c i— b n /us/bo /e i— b n   g — i/ r a g —i / S rp Ala c i t is/i d x h ml/u r o i d x. t   ne.t s/b a n e hml /

2 基于 u l u ci x平 台的 wesr e 计原 理  n bevr设
与 实 现 技 术 
2 1 嵌 入式 we sr e . b ev r的选择  Ulu ci x环 境 提 供 对 3种 服 务 器 的支 持 :t d   n ht 、 p

这样配置 的 ba o 服务器将 以 目标板 中/ s o  u#ba
目录 作 为 w bevr的根 目录 ,urbaidx hml esre / s o ne. t   / / 为 远程 客户 浏 览 器 端 访 问 w bevr 看 到 的首 页  esre 所 默认 值 , 系统 支持 C I G 程序 , c语 言编写 的 C I 用 G 程  序 编译成 二 进 制 文 件 ,  ̄/ s baci i 目录  放 lur o g —bn J / / / 下 ,G 程序 能够 被 正 确地 执 行 . 此 以外 ,o.of CI 除 ba cn  文件 和 mie t e 文 件 必 须 放 到 w bevr的 根 目 m .y s p esre  
录/ s b a目录下 . ur o /  

ttd和 baHtd是 最 简 单 的一 个 服 务 器 , 能 最  ht p o. t p 功 弱, 只能生 成静 态 w b 不 支 持认 证 和 C IT t d和  e, G . ht p ba都支 持 认 证 、G 等 , 能 比较 全 . 比 tt d和  o CI 功 相 hp t baba是单 任 务 运 行 , 内存 脚 本 文 件 占用 空 间  o ,o 其 小, 适合 于 资 源 受 限 的嵌 入 式 环 境 . PO 的 远 程 监  GI 控 系统 需要 提 供 用 户 和 现场 设 备 的数 据 交 互 功 能 ,   必 须使 用 动态 w b技术 ; 硬件 环境 使用 的是 s r  e 而 ma . t am 2 0目标板 , 芯片 lc20中移植 ul u 操 作  r 20 在 p2 1 cnx i

4 修 改 系 统 启 动 配 置 文 件 . v / ciu ) # i ul x—ds   n i / t
v n osP I IS lc2  iia , ie: n n w :  e dr H LP /p2   /nt b 在 nt u k o n / / 1 0 t bn ie i nt / d后 加 入 : o :u k o n / i b a—c ur  b a/ n n w :bn o / /s /
b a  o.

系统 ; 因此本 系统 采用 ba C I o 和 G 相结合 的方式搭 
建嵌 入 式 w bevr e sre.   2 2 b a在 u l u .  o c n x内核 中 的配置 和编 译  i 在 ul u ci x的 内核 中 已经 包 含 b a源 码 , 过对  n o 通

最 后 , 配 置 过 程 完 成 后 , 新 编 译 ul u 在 重 ci x内  n 核. 即运 行 maemeuof , 行 内 核 的 基 本 配 置 , k  n cn g进 i  
编译 时 在/ srStn sN t o   p l a o U e  e ig/ e r A pi t n里 选 中  t w k ci

ba o 主要 配 置文 件 的修 改 使其 符 合 系统 的软 硬 件 环 

ba选 项 . 编 译 好 的 内 核 下 载 到 目标 板 s r  o 把 mat .

20 0 8年 8月  

韩丽娜 , : 于嵌入式 w bevr G I 等 基 esre 的 PO远程监控系统设计与应用 

? 5? 2  

am 2 0 启动 ul u , 成 I r2 0 , cnx 完 i P配 置 , 可 以在 客 户  就

{  
r t r — ENODEV ; eu n  

端 通过 I E浏览 器访 问 G I PO的初 始 网页 . 意 , 选  注 在 择 ba的 同时 , 可选 中 htd和 tt d 否则 ul u  o 不 t p ht , p cnx i
系统 开启 后 就会 出现 多种 服务 器 并 发 运 行 , 法 确  无

}  
/ 判 断驱动 程序 幻数 的 唯一性  /
i 一O   f IC ( P S c ) = PO I C MA I ) E (md ! G I —O — G C  

定使用 的具体服务器从而导致进入无限循环.  

3 基于 we sr e bevr的 GP O远 程监控 系统 的  I
实 现 
根据课题要求 , 应用嵌入式 w be e 的设计原  es vr r 理 , 系统 需要 完成 目标板 上 的 4个 G I 本 PO端 口 P   0、
P 、2 P lP 、3的开启 和关 闭 , 以及 它们 的循 环 流水 灯 演  示控 制实 验 , 就是 通过 设计 G I 的远程 监控 系统  也 PO

{  
r t r — ENOq Y ; eu n q'  

}  

/ 判断 i t命令是否超出驱动程序特殊命令最大值  / ol c
i 一O — R( m )> =G I — X R) f IC N c d ( PO MA N  

{  
r t r —ENOTF ; eu n Y  

来验证 wbe e 的正确性和有效性. es vr r 远程监控系统 
的设计 主要 分 为两个 部分 来 完成 : 服务 器 端 G I PO驱  动程序 的编写 , 以及 客户 端 和 w bevr 间 的动 态  esre 之 交 互程 序设 计 J .   3 1 在 ul u . ci x操 作 系统 中 GPO 驱 动 程序 的编 写  n I 在 ul u cnx中 , PO被 看 成 一个 设 备 文 件 , 对  i GI 是 应:/ e ] dv中的逻辑 设 备 节 点 . 用 G I : 使 PO驱 动 , 须  必 先创 建设 备 节 点 . 义 G I 的 主设 备 号 是 16 支  定 PO 2, 持 P 、1 P 、3共 4个 设 备 , 应 的从 设 备 号 定 义  o P 、2 P 相 为 0,, 3 本驱 动程 序不 能使 用标 准 的 c库 函数 来  12,.

}   / 使用 宏定 义分 别为 P 、 1P 、3寄存 器赋 初 值  / 0 P 、2 P
R g vlteu 2;) G I — D R— A E+G I — e =( o i 3 l ( PO A D B S al : PO  
PORT


A D n m)  D  u ;

S ih e ) w t ( md  c

{   / 设置 端 口引脚 为 高电平 , / 引脚 灯 闪烁 
I   c s  I S a e GP O ET P N :
— —

i ag 3 ) f r < 2  (

{   R g G I— E — F S T e[ PO S T O FE ]=l u<<ag  r; }  
b e k; ra  

访 问, 只能采用 ul u cnx内核提供 的文件操作 的接 口 i  
函数来 访 问.   在使用设备前 , 通过 oe (将其 以只读方式打开. pn )  
sr c n   p o tu ti tg i


o e (t c ioe % io e s ut p n s ut n d r   nd ,t c r  

/ 设 置端 口引脚 为低 电平 , / 引脚 灯熄 灭 
c s  I CLR PI : / a e GP O N /  
— —

i   fe l

l ) fp  i





{  
MOD I NC USE
— —

i ag 3 ) f r < 2  (


C U T / 每次打开 时增加使用次  ON; /

{  

数 
rtr    eu n 0;

R g G I— L — F S T = u e [ PO C R O F E ] l << r; a   g
}  
b e k; ra  

}  

使用完毕后用 c s( 将其关 闭, le ) o 应用 r d ) e ( 和  a w t( 来 向 G I i re ) PO设 备 文 件 读 写 数 据 . 过 ic (  通 ot ) l 执行读写外 的操 作, 如设 置 G I PO口的数 据传输 方  向, G I 让 PO口输 出指定电平等. 其中, c ( 函数的  it ) ol 编 写是 驱动程 序 的难 点 , 主要 说 明如 下 .  
sai n   pi ttc i tg o


d fu t  ea l: rtm eu —ENO, Y : rr  

b e k; ra  

}  
rtr    eu n 0;

ic ( t c io e ¥ i d . rc fe ot s u tnd l r   n e s ut l o t     i

i ,ni e  t d u s dl gag  fp u s n d i  m ,ni e   n  r ) l g nc n g o

}  

{   /通过从设备号判断操作 G I / PO哪个端 口  
n I =MI O io e >ire )  ui l N R(n d 一 _d v ;

然后 , 使用 i m d来 加载驱动程 序 ( 要包含  n o s 需 正确的程序路径) .  
总体 上 , 运用 G I 执 行 程 序 , 要 完 成 的工  PO可 需 作 主要有 :  

/ N断 操作 端 口号是 否溢 出  /
i nm > = X P R ) f u ( MA — O T 

1在底层 , ) 编写设备驱动程序, 编写 m kfe ael 文  i

?

2   6?















报 

第2 4卷

第 4期 

件, 编译 生成 可执 行文 件 以便动 态加 载.  

G I 制. P O控  

2 在用户层 , ) 编写 w be e 应用程序并编译生  es vr r
成可 执行 文件 .  

6 服务器接收 C I ) G 输出流 , 并在 C I C 程序的结 
果 上 附加状 态行 和一 些 头 标 信 息 , 后 将 结 果 返 回  然 给浏览 器 .  

3 开 启终 端 , ) 配置 N S网络 文件 系统 . F   4 加载 G I ) PO驱动 程序 .  
/ >c   s  dur /u r> p rm a s o t p& 

上述完成后 , 在客户端打开任一浏览器 , 在地址 
栏 输 入 给 w bevr 先 设 定 的 I esre 事 P值 :9 .6 .5  12 18 1. 1 , 可 进 入 G I 监 控 系 统 主 页 面 , 过 页 面 的  5就 PO 通 CI G 控件 能够 控制 G I PO引脚 灯 的闪烁 、 灭 以及循  熄
环 演示 等 .  

/u r>mo n —tn s 1 s ut   f  92. 68. 5.1 /h me hl/a m- 1 1 4: o / n r   wo k r 
/mn —   o o k t —O n lc  

/u r>c s d/mn/g i  t po
/u r> /mnt pi/. o d p o s /g o 1a g i 

4 结

论 

随着 网络 化 技术 和 嵌 入 式 技 术 的飞 速 发 展 ,2 3  位 微处 理器 的出现 , 得 嵌 入 式 w bevr的设 计成  使 esre 为 当今 研 究 的热 点技 术 问题 . 文 采用 A M 本 R 7系列  3 2位 lc20 处 理 器 为 硬 件 平 台 , 所 移 植 的  p2 1 以

3 2 客户 端和 we sre . b ev r之 间的动态 交 互程序 设 计 

动态 页 面的生 成 有 4种 技 术 :G 、 S 、 H C IA P P P和  JP 在 嵌 入 式 ulu S. ci x下 , n 由于 软 硬 件 资 源 的 限 制 ,   只能采 用 C I 术 来 实 现 1C I 为 通 用 网 关 接  G技 7. G 作 口是 一种 w bevr esre 端扩 展 代 码 , 独 立 于 w bevr 是 esre 
的一 个外 部 应 用 程 序 , 编 译 通 过 后 在 服 务 器 端 运  经 行 . bevr C I 序通 过 S D N、T O T方 式  Wesre 与 G 程 T I SD U

ul u 操作系统为软件环境 , cnx i 详细论述 了结合 ba o 
和CI G 技术 的嵌 入 式 w bevr的研 究 设 计 , 在 此  esre 并 基 础 上开发 出了 G I 程监控 系 统. PO远 此设 计 方 法具  

实现交 互 , 最后 w bevr 将 结果 送 回浏 览 器 显 示  esre 再
给  户.  

有一定 的实用性 , 可应用于工业控制现场设备 , 而  从 满 足 了客 户 端 管 理 层 和 设 备 信 息 层 的无 缝 集 成 要 
求, 具有 很 好 的研 究 价值 和广 泛 的市 场前 景 .  
参 考 文 献:  

当浏 览器访 问一个 C I G 程序 ( 用 U L地 址 指  使 R 向 C I 进 制 文 件 ) , esre 守 护 进 程 为 该 请  G 二 时 w bevr 求创建 一个 子 进 程 , 子 进 程 将 C I 求 的有 关 数  此 G 请 据设 置 成 环 境 变 量 , 建 立 标 准 数 据 IO 通 道  并 /
( T I S D U ) 然后 启 动 U L地 址 连 接 到 指 定  S D N、T O T , R 的 C I 序路径 . 进 程 通 过 标 准 输 出 流将 处 理 结  G程 子

[] 骆 1

丽, 张岳强 , 欧小龙 . 入式 Eh re 和 It t 嵌 tent n me 通  e

信设计 技 术 [ . 京 : 京 航 空 航 天 大 学 出版 社 , M] 北 北  
2 06. 0  

[ ] 陈从 生 , 名 日, 2  朱 马学 文 . 于 ul u 基 ci x的 C I 口设 计  n G接

果传递给服务器守护进程 , 守护进 程再将处理 结果 

与应用 [ ] 桂林工学 院学报 ,0 5 1 :0 — 1 . J. 2 0 ( ) 19 1 1   [] 张 3 
8   8.

作为应答消息回送到客户端. 过程如下 :  
1 浏览 器 与 w bevr 立 连 接 , 送 H T ) esre 建 发 T P请 
求;  

恒, 叶玮琼 , 林

伟 . 于嵌 入式 We  evr的智  基 bSre

能家居 中央控制器设计 [ ]现 代计算机 ,0 6 6 :5  J. 20 ( ) 8 —

[] 孔 4

明, 树峰, 艾 杜

辉 . 于 T PI 基 C /P的嵌 入式 We— b 

2 w bevr 收 到 H F ) esre 接 T P请 求 , 析 请 求 的 资  分 源是 否 为 C I 序 ; G程  

sre 网络测控 系统设计 [ ] 电讯 技术 ,0 5 5 :6 — e r v J. 2 0 ( ) 17 
1 . 71 

3 服务器将 H T ) r P请求头标设置成环境 变量 , I   执行 C I 序 ; G程   4 判断请求方法. ) 如是 P S , G 程序从请求  OT C I 信息中读取浏览器发送的数据 , 如是 G T C I E ,G 程序  从环 境 变量 Q E Y— T I G 中获 取浏 览 器 发送 的  UR SRN
数据 ;  

[ ] 周功业 , 5  郑
[] 谭 6 

红. 在嵌 人式 Ln x系统 中实现基 于 We  i u b

的配置管理 [ ] 计算机工程与应用 , O ( ) 9 . 5 J. 2 6 8 :2 9 . O   航 , 昌勇 , 曹 谭善 文. 于 ul u 环 境下微 处理器  基 ci x n 的GI PO设备驱动程序 的开发 [ ] 西华大学学报 ,07 J. 20  
( ) 7 —6  1 :4 7 .

[ ] 宋明浩 , 7  阳宪 慧 , 梁泰 文. 一种基 于可 配置 片上 系统 的 

C N总线 远 程监 控 方 案 [ ] 工 业 控 制计 算 机 ,04 A J. 20 
( ): —   9 3 4.

5 C I 序 根 据 浏 览 器 发 送 来 的数 据 , 行 相  )G 程 进 应处 理 , 并将 结 果 输 出到标 准输 出 ( T O T , 行  SD U )进