基于web的嵌入式远程监控系统

2024-08-20

基于web的嵌入式远程监控系统(精选8篇)

基于web的嵌入式远程监控系统 篇1

基于web的嵌入式远程监控系统

第1页

共33页

基于web的嵌入式远程监控系统

学生:刘 仁

指导老师:蔡 硕

摘要: 随针对当前国内国外嵌入式服务器技术研究和发展情况的分析,本报告提出了将 WEB 服务器、嵌入式系统以及当前的一些嵌入式实验板板载功能进行融合的设计思想。设计了结合 WEB 服务器技术的嵌入式监控系统。该系统具有浏览交互式网页,对嵌入式平台进行监视和控制等功能。通过本套嵌入式WEB 服务器系统,用户可以通过 HTTP 协议方便的访问相应的嵌入式平台进行有效监视的同时还可以进行实时的有效控制。该系统对硬件要求极低、响应速度快、安全性好、可扩展性强等优点,具有较高的实际应用价值。该系统在智能家居、嵌入式组网等方面的应用将有较广阔的发展前途。

关键词:ARM 嵌入式系统;嵌入式 web 监控;boa 服务器;CGI 编程;Linux 操作系统

关键词:自动化、奏乐器、VHDL、数字电路

基于web的嵌入式远程监控系统

第2页

共33页

Abstract: According to the analysis of the researches about the status of the mbeddedserver of the world.We rise a design of a embedded internet control system basedon the Web service which integrates the web server,embedded technology and thefunctions on the embedded experiment Board.This system has the function of browsing the web pages,monitoring theembedded Board and so on.With this embedded WEB server,the users can watchthe embedded system conveniently according the HTTP protocol.At the sametime the users can also monitor the ystem.This system have a lot of longtageslike a low request of the hardware,limited time of response and a stable status.Wewill see that this kind of system used in the application of intelligent familyelectronics,embedded neting and so on would have a good development.Keywords: ARM Embedded System;Embedded Web Server System;Boa Server;CGI Programing;Linux Operating System

基于web的嵌入式远程监控系统

第3页

共33页

引 言

嵌入式系统课程设计是本专业在学习完 C 语言、LINUX 操作系统、嵌入式系统原理与接口设计、嵌入式操作系统原理之后的专业课程设计,属于专业课内容。通过课程设计建立嵌入式系统主体环节,嵌入式系统的最小结构和系统应用设计基本技能,培养分析和解决一些简单的实际问题的能力,为今后毕业设计奠定基础。随着嵌入式技术的发展和高速宽带网络的普及, 利用网络实现远程监控已为人们广泛接受, 嵌入式网络监控技术正是在此条件下逐步发展成熟起来的。用户使用 Web 浏览器, 通过以太网远程访问内置 Web 服务器的监控摄像机, 不但可以实现对现场的远程视频监控, 而且可以向监控现场发送指令。在整个系统的实现过程中, 嵌入式 Web 服务器起着十分重要的作用。本课题就是基于该项技术,最终编程实现通过网络控制下位机嵌入式控制器的电机启动和停止。

1.1研究目的和意义

1、通过嵌入式课程设计,熟练掌握 C 语言的编程方法。基于 WEB 的远程监控的实现,CGI 的编写和使用,将理论联系到实践中去,提高我们的动脑和动手的能力。

2、通过基于 WEB 的嵌入式远程监控系统的设计,掌握 S3C2410 实验箱,直流电机的工作原理,BOA 服务器的使用,CGI 的使用和简单程序的编写及调试方法,最终提高我们的动手实践能力。

3、本课题的研究目的是用 BOA 服务器、CGI、IE 浏览器设计一个通过 IE 浏览器监控电机的系统,能够通过两个简单的按键对电机进行启动和停止的控 3

基于web的嵌入式远程监控系统

第4页

共33页

制,并能够在 IE 浏览器上看到电机的当前状态。

4、由于基于 WEB 的嵌入式远程监控系统将成为今后远程监控技术发展的主流方向,所以需要设计出简单实用,让人们更满意的产品。

1.2 本设计任务和主要内容

1.基本要求

本课题主要设计和研究基于WEB的嵌入式远程监控系统,要求在保证可靠运行的前提下,电路设计尽量简洁紧凑,以减小成本、提高系统的效率和安全性。

2.应解决的问题 1)设计系统网络方案

2)分析网络程序结构和应用程序的使用方法 3)编程实现嵌入式系统服务器功能 4)编程实现嵌入式系统联网功能

5)编程实现通过网络控制下位机嵌入式控制器的电机启动和停止

3.扩展功能

演奏时可以通过按键选择是手动演奏还是自动演奏,手动演奏是通过按键进行简易乐曲的演奏。

基于web的嵌入式远程监控系统

第5页

共33页总体方案设计

2.1 整体方案设计

系统总体设计是基于嵌入式系统和 WEB 服务器结合的思想开发的,其网络拓扑结构如图 2.1 所示

图 2.1 系统网络拓扑图

针对本次课程设计提出的系统设计如图 2.2 所示

图 2.2 系统方案框图

基于web的嵌入式远程监控系统

第6页

共33页

2.2 硬件系统设计

2.3.1 核心处理器的选择

核心处理芯片需要完成处理和支持整个系统的功能需求,通过运行 BOA 服务器要实施的接收来自各个客户端的请求和信息,并根据获得的请求和信息进行相应的后台处理以及信息的反馈。为完成上述功能,实现服务器正常运行,对处理芯片进行选型,对比现有处理芯片的优缺点,选择 ARM9 S3C2410X 芯片作为设计开发嵌入式服务器系统的核心处理芯片。S3C2410X 微处理器是一款由 Samsung 公司为手持设备设计的低功耗、高集成度的基于ARM920T 核的微处理器,为了降低系统总成本和减少外围器件,这款芯片还集成了以下部件:16KB 指令 Cache、16KB 数据 Cache、MMU、外部存储器控制器、LCD 控制器、NAND FLASH 控制器、4 个 DMA 通道、3 个 UART 通道、1 个 IIC 总线控制器、1 个 IIS总线控制器、4 个 PWM 定时器、1 个内部定时器、通用 IO 口、实时时钟、8 通道 10 位ADC 和触摸屏接口、USB 主、USB 从、SD/MMC 卡接口等。

2.3 软件环境选择

2.3.1 操作系统的选择

当选定了硬件系统后,为了配合硬件达到系统的最优控制要求,对市面上常用的嵌入式系统进行分析比较。

(1)价格比较:Linux 是完全免费的操作系统,只需遵循 GPL 声明,不需支付任何费用;WinCE 是微软的商用嵌入式操作系统,使用它需要支付 WinCE 及其开发环境的费用,开发出来的每套产品也需交纳一定费用。uc/os—II 系统,可以免费用于学习或科研,但开发商使用产品或销售都是收费的。

(2)开放性比较:Linux 是源代码完全开放的操作系统,可以自由下载,并且

基于web的嵌入式远程监控系统

第7页

共33页

在遵循GPL 声明的前提下可以自由地修改、移植,为系统的开发和调试带来极大的便利;winCE是部分源码开放的商用操作系统,如果要修改其中的代码,需获得微软公司的授权;uc/os—II 也是开放的实时操作系统。

(3)文件系统的比较:Linux 支持绝大部分文件系统,只需选择相应的文件系统即可;

WinCE 仅支持 Windows 系列的 FAT16、有限文件系统;uc/os—II 本身没有包括文件系统,需购买或移植。Linux 与 ARM 处理器从以上可以看出,Linux 系统在诸多方面都存在优势,而且本身的 ARM 处理器与 Linux 也有着紧密的联系。因此采用 Linux 操作系统。2.3.2 服务器的选择

典型的嵌入式 Web 服务器有 Boa 和 thttpd 两种,它们和 Apache 等高性能的 Web 服务器主要的区别在于它们一般是单进程服务器,只有在完成一个用户请求后才能响应另一个用户的请求,而无法并发响应,但这在嵌入式设备的应用场合里已经足够了。Boa 是一个非常小巧的 Web 服务器,可执行代码只有约 60KB。它是一个单任务 Web服务器,只能依次完成用户的请求,而不会 fork 出新的进程来处理并发连接请求。但 Boa支持 CGI,能够为 CGI 程序 fork 出一个进程来执行。Boa 的设计目标是速度和安全,在其站点公布的性能测验中,Boa 的性能要好于 Apache 服务器。经过上述的对比和判断,选择Boa 作为系统的嵌 入式服务器。

综合以上的讨论以及选择,根据系统的实际需求,最终确定了采用 S3C2410X 为核心处理器,Linux 为嵌入式操作系统,boa 为服务器以及相应的 http 浏览器的系统设计方案。

基于web的嵌入式远程监控系统

第8页

共33页硬件设计

3.1 系统硬件平台介绍

我们所介绍的硬件平台是基于 ARM 体系结构,由北京博创兴业科技有限公司开发的UP-NetARM2410-S 实验仪器。UP-NetARM2410-S 的 CPU 为 ARM920T 内核的三星S3c2410 芯片,由于有 MMU(内存管理单元)可以运行标准的 ARM-LINUX 内核。通过这个平台,我们可以实现嵌入式 LINUX 中的针对无 MMU 的开发过程。

3.2 s3c2410 芯片介绍

图 3.1 芯片结构图

基于web的嵌入式远程监控系统

第9页

共33页

3.3 ARM 处理器的外围设备

3.3.1 电源电路

设备提供 12v 的电源,经 LM1085-3.3V 和 AS1117-1.8V 分别得到 3.3V 和 1.8V 的工作电压。开发板上的芯片多数使用了 3.3V 电压,而 1.8V 是供给 S3C2410 内核使用的。5V 电压供给 LCD、电机、总线等电路使用。

图 3.2 电源电路

3.3.2 硬件复位电路

硬件复位电路由IMP811T构成,实现对电源电压的监控和手动复位操作。2410-S主板复位电路设置专用逻辑:IMP811T 的复位电平可以使CPU JTAG(nTRST和板级系统(nRESET)全部复位;来自仿真器的ICE_nSRST 信号只能使板级复位;来自仿真器的ICE_nTRST 可以使JTAG(nTRST)复位,通过跳线选择是否使板级nRESET复位。nRESET反相后得到RESET 信号。硬件复位电路如图3.3所示

基于web的嵌入式远程监控系统

第10页

共33页

图3.3 硬件复位

基于web的嵌入式远程监控系统

第11页

共33页软件设计

4.1 设计思想

基于 web 的嵌入式监控系统设计主要的功能有简单的网页浏览,实现简单应用功能(客户端与服务器的交互)以及服务器端的控制功能。因此软件的设计分为三个部分:boa 服务器的搭建、应用程序设计和驱动程序的加载。

4.2 BOA 服务器的简介与搭建

4.2.1 嵌入式 Web 服务器 Boa 的特点

Boa 是一款单任务的 HTTP 服务器, 与其他传统的 Web 服务器不同的是当有连接请求到来时, 它并不为每个连接单独创建进程, 也不通过复制自身进程来处理多链接, 而是通过建立 HTTP 请求列表来处理多路 HTTP 连接请求, 同时它只为 CGI 程序创建新的进程,这样就在最大程度上节省了系统资源, 这对嵌入式系统来说至关重要。同时它还具有自动生成目录、自动解压文件等功能, 因此 Boa 具有很高的 HTTP 请求处理速度和效率, 在嵌入式系统中具有很高的应用价值。4.2.2 Boa 的功能实现

嵌入式 Web 服务器 Boa 和普通 Web 服务器一样, 能够完成接收客户端请求、分析请求、响应请求、向客 户端返回请求结果等任务。它的工作过程主要包括:

(a)完成 Web 服务器的初始化工作, 如创建环境变量、创建 TCP 套接字、绑定端口、开始侦听、进入循环结构, 以及等待接收客户浏览器的连接请求;

(b)当有客户端连接请求时,Web 服务器负责接收客户端请求, 并保存相关请求信息;

(c)在接收到客户端的连接请求之后,分析客户端请求, 解析出请求的方法、基于web的嵌入式远程监控系统

第12页

共33页

URL 目标、可选的查询信息及表单信息, 同时根据请求做出相应的处理;

(d)Web 服务器完成相应处理后, 向客户端浏览器发送响应信息, 关闭与客户机的TCP 连接。嵌入式 Web 服务器 Boa 根据请求方法的不同,做出不同的响应。如果请求方法为HEAD,则直接向浏览器返回响应首部;如果请求方法为 GET,则在返回响应首部的同时,将客户端请求的 URL 目标文件从服务器上读出,并且发送给客户端浏览器;如果请求方法为 POST,则将客户发送过来的表单信息传送给相应的 CGI 程序,作为 CGI 的参数来执行 CGI 程序,并将执行结果发送给客户端浏览器。Boa 的功能实现也是通过建立连接、绑定端口、进行侦听、请求处理等来实现的。4.2.3 BOA 的搭建与移植

(1)准备源代码、解压软件包,安装源代码到 boa 网站 http://TB0 = DCM_TCNTB0;/* less than 10ms */ TCMPB0 = DCM_TCNTB0/2;TCON &=~(0xf);TCON |=(0x2);TCON &=~(0xf);TCON |=(0x19);})在 s3c2410_dcm_ioctl 中提供调速功能接口: case DCM_IOCTRL_SETPWM: return dcm_setpwm((int)arg);应用程序 dcm_main.c 中调用:

ioctl(dcm_fd, DCM_IOCTRL_SETPWM,(setpwm * factor));实现直流电机速度的调整。a.编译直流电机模块 cd /arm2410s/kernel-2410s

基于web的嵌入式远程监控系统

第20页

共33页

make menuconfig 进入 Main Menu / Character devices 菜单,选择 DC MOTOR 为模块加载: b.编译内核模块: make dep make make modules 直流电机模块的编译结果为:

/arm2410s/kernel-2410s/drivers/char/s3c2410-dc-motor.o c.编译应用程序

cd /arm2410s/exp/basic/10_dcmotor/ make 生成 dcm_main d.挂载驱动模块

insmod /host/kernel-2410s/drivers/char/s3c2410-dc-motor.o e.运行程序

mount –t nfs 192.168.0.xxx:/arm2410s /host insmod /host/kernel-2410s/drivers/char/s3c2410-dc-motor.o cd /host/exp/basic/10_dcmotor/./dcm_main 程序运行结果:直流电机转动 1 秒,停转 1 秒。由于是根据原有变速程序稍做改动完成的程序,所以遇到的问题不是很多,经过几次尝试就得到了期望的结果。

基于web的嵌入式远程监控系统

第21页

共33页

5.3 调试结果分析

5.3.1 调试结果

1、静态网页

图 5.1 静态网页

2、乘法网页

图 5.2 乘法网页

基于web的嵌入式远程监控系统

第22页

共33页

3、电机控制网页

图 5.3 电机控制网页

图 5.4 返回结果

5.3.2 结果分析

经过 x86 下的调试和基于 ARM 的下载与调试后,系统能够实现静态网页浏览,简单人机交互以及电机控制的功能,系统工作稳定,响应速度快,组网方便快捷,如果与 DNS 服务器或者 WINS 服务器相结合即可实现用主机名就能登录相应平台的功能。

基于web的嵌入式远程监控系统

第23页

共33页设计总结

经过三个周的学习与努力,经过系统分析、方案论证、硬件和软件设计、调试 等阶段完成了基于 web 的嵌入式远程监控系统的设计制作。在这三个周的课程设计中,我得到了老师和同学很大的帮助,有时候觉得进行不下去了,老师或同学一句话就能让我茅塞顿开。即使听不懂,他们也会耐心的讲解。

在系统的设计制作过程中,确实遇到了各种各样的问题,如调试思路正确但是没有能够进行找到合适的方法进行进一步的实验,设计中对于程序的编写以及目录结构的认知上存在偏差,其主要原因还是基础功不扎实,把握系统的能力不足,这为我们以后的学习和工作提了一个醒。在问题的解决过程中,也提高了组员的动手动脑能力,学到了许多在书本上学不到的知识。在具体的设计当中解决了诸如 boa 服务器的搭建,C 程序的修改及 CGI编程的理解,程序的调试和系统的整体认识等问题,小组成员收获很大。

基于web的嵌入式远程监控系统

第24页

共33页

致谢

在这次课程设计中,学校和学院给予了大力的支持,提供了与设计有关的环境,方便了课程设计的顺利进行。在这其中我确实学到了很多知识,在此仅代表个人衷心的感谢学校和学院的大力支持。本论文是在指导老师蔡烁的悉心指导和严格要求下完成的。在整个课程设计过程中,蔡烁老师时时督促和引导,并在设计过程中进行了方向指导,在总体方向不出错的基础上,施展自己的所学,发挥个人的所长。他不仅在学习上和生活上给予了我们多方面的指导和无微不至的关怀,而且他渊博的学识、严谨的治学态度、孜孜不倦的工作作风和宽以待人的处事风格使我终身受益,并且还从中学会了分析问题和解决问题的方法此外,在本次设计过程中,还得到了其他老师和的热情关心和帮助,值此论文完成之际,谨向老师表示崇高的敬意和最诚挚的谢意。

基于web的嵌入式远程监控系统

第25页

共33页

参考文献

[1]郑灵翔编著 《嵌入式 LINUX 系统设计》 北京航空航天大学 2008 年 [2]孙纪坤、张小全编著 《嵌入式 LINUX 系统开发技术详解-基于 ARM》人民邮电出版社 2007.9、[3]王进德 编著 《嵌入式 LINUX 程序设计与应用案例》 中国电力出版社 2007.5 [4]郑慕德 编著 《嵌入式微型计算机系统实例教程-ARM 与 LINUX》 科学出版社2006.7 [5]刘淼 编著 《嵌入式系统接口设计与 LINUX 驱动程序开发》 北京航空航天大学出版社,2006.5 [6]魏洪兴等编著 《嵌入式系统设计与实例开发 II-基于 ARM9 微处理器与 LINUX 操作系统》 清华大学出版社 2005.12 [7]魏洪兴等编著 《嵌入式系统设计与实例开发实验教材 II-基于 ARM9 微处理器与LINUX 操作系统》清华大学出版社 2005.12 [8]金敏等编著 《嵌入式组成、原理与设计编程》 人民邮电出版社 2007.6

基于web的嵌入式远程监控系统

第26页

共33页

附录 1 主要程序清单

乘法网页的HTML表单: 测试

 测试

请在下面填入乘数和被乘数,按下确定后可以看到结果

基于web的嵌入式远程监控系统 篇2

关键词:远程监控,嵌入式系统,片上系统,Web技术

0 引 言

远程监控是指本地计算机通过一定的网络系统对远端的计算机或设备进行监测与控制,远程监控系统是当前工业自动化应用领域研究的热点之一。随着网络信息技术和嵌入式技术的飞速发展,基于Internet的Web技术日益发展和成熟,Web技术越来越多地应用在嵌入式系统的控制领域[1];而嵌入式设备具有体积小、实时性好、可靠性高、功能完善等特点[2]。因此,Internet与嵌入式系统结合是远程监控系统研究的必然趋势。目前国内外对远程监控技术的研究主要集中在远程实验的研究、机器人远程控制的研究以及远程监控应用于工业领域的研究[3]。其中,在工业领域的研究,是远程监控技术最为活跃、最为接近人们的生产与生活的研究课题,本研究设计的系统就是对远程监控应用于工业领域的研究。

嵌入式互联网技术(EI)的发展解决了不同网络与Internet之间连通的问题,使得通过嵌入式互联网对网络中嵌入式设备的在线远程访问、控制与管理成为可能[4]。在此基础上,本研究提出了基于Web与嵌入式系统的远程监控模型及其解决方案,该方案是信息网络与控制网络结合的产物,它借助网络完成监视与控制任务,将监控范围扩展到更广的空间,进一步推进了控制技术向网络化、分散化和开放化发展,突破了传统控制系统只能服务于应用现场的局限。

1 基于Web的嵌入式远程监控系统整体设计

1.1 远程监控系统功能要求

该远程监控系统由三大主体组成,即:PC机、嵌入式控制器、片上系统控制器。该系统通过Internet通信与UART通信两种通信方式将三大主体连接起来,构成一个以Internet为传输媒介,以嵌入式系统与片上系统为现场控制器,以PC机为上位监控机,能够控制多种被控对象的远程监控系统。该系统中,是以步进电机为被控对象进行设计的。

该监控系统设计实现了如下六大功能:

(1) 通过上位机设置步进电机的运动程序;

(2) 通过Internet通信与UART通信传输控制信号到下位机,以控制电机运行;

(3) 步进电机的软启动与软停止;

(4) 上位机实时监控并显示电机的运动状态;

(5) 监测分析步进电机的运行异常,并排除故障;

(6) 上位机可以保存电机运动的历史数据,并根据历史数据绘制运动折线图。

1.2 系统中有关概念的定义

为了便于设计与应用,本研究先对系统的有关组成部分作如下定义:

(1) 监控端:在远程监控系统中起最终监测与控制功能的部分,也就是上位PC机。

(2) 现场主控端:工业现场总线的主机,能够统筹控制多个从机,该系统以嵌入式系统作为现场总线的主机。现场主控端除了作为现场总线的主机之外,还要实现与上位监控端之间的Internet通信,完成接收监控端控制指令并发送该指令到现场执行端的功能。

(3) 现场执行端:现场总线的从机与被控对象共同组成的部分,该系统使用片上系统控制器作为现场总线的从机。片上系统控制器能够接收现场总线主机给出的控制指令,并直接控制被控对象按照指令运行。

1.3 系统整体设计

1.3.1 系统整体设计方案

该系统由3部分组成:监控端、现场主控端与现场执行端。其中监控端与现场主控端之间通过Internet连接,现场主控端与现场执行端之间通过UART(Universal Asynchronous Receiver/Transmitter,通用异步收/发信器)总线连接。系统的整体架构如图1所示[5,6]。

监控端有一个可视化的操作界面,界面的主窗口由设置步进电机运转的设置窗口与实时监控运行状态的窗口组成。另外,监控端还可以记录、分析电机运行的历史数据。

Internet通讯模块采用Windows系统内核中已经自带的UDP协议,将监控端的控制指令打包为UDP报文之后发送到现场主控端。

现场主控端的嵌入式芯片采用三星公司的S3C2440,嵌入式操作系统选用微软公司的Windows CE系统。现场主控端一方面用于接收监控端通过Internet传输来的控制指令,并通过UART通信传输给最终控制电机的现场执行端;另一方面接收现场执行端由UART通信发送过来的运行状态信息,并通过Internet转发给监控端。因此,现场主控端需要实现传送数据的格式转换,即能将UDP报文中的控制指令解析出来,并打包为UART通信的指令发送到现场执行端;反之,也可以将现场执行端UART通信发送的状态数据解析出来并打包为UDP报文发送到监控端。

现场主控端与执行端之间,本研究采用加入RS458芯片的UART总线(即通常所说的485总线)的通信方式。选用UART总线有3个原因:①实现简单,几乎所有芯片都配有UART通信的引脚和特殊功能寄存器;②经济实用,不需要像CAN总线一样外加总线控制器;③功能能够满足要求,在加入RS485芯片之后UART通信可以传输1 km~3 km的距离,并且有很强的抗共模干扰能力。从便于应用和扩展出发,该系统中采用UART总线一主机多从机的方式。

对现场执行端的主控芯片,本研究选用Silicon Lab公司的8位片上系统微控制器C8051F360。步进电机选用常见的四线两相式步进电机,以配合旋转编码器进行闭环控制。现场执行端可以根据监控端的设计控制步进电机运行,并能实现步进电机由慢速逐渐加速到稳定速度的软启动,由快速逐渐减速到停止的软停止,在电机受到干扰发生故障时能够发送异常信息到监控端,并根据指令排除故障。

1.3.2 系统的可靠性与经济性分析

该系统选用的通信协议是UDP协议。虽然在可靠性上UDP协议不如TCP协议高,但UDP协议传输的速度快、效率高,且该系统传输的数据量并不大,正是UDP协议适用的情况,可保证系统通信的实时性和足够的可靠性。

系统设计中还充分考虑了经济原则,芯片的选用都以“够用”为原则。如现场总线选用不需要外加总线控制器的UART总线而不是CAN总线;现场执行端因为只有一个设备需要12 V供电,故只使用了一个5 V电源配合直流升压芯片,而没有使用两个电源。

该系统搭建的平台非常具有通用性,不管被控对象如何改变,只要微调监控端的界面和现场执行端的个别电路就能适应,其他模块几乎没有改动。而且该系统只要在能够接入网络的地方就能使用,可以部署在各种不同的环境中监控各种不同的对象,通用性很强。

2 基于Web的嵌入式远程监控系统的实现

2.1 远程监控系统监控端设计实现

远程监控系统监控端的载体是PC机,则监控端的设计主要是软件设计。该软件分为两个功能模块:①步进电机运行任务设置模块;②步进电机运行状态监控模块。软件的流程图如图2所示。

监控端软件采用Visual Studio 2005集成开发环境设计,使用C#语言编写。通过监控端软件,用户可以设置步进电机的运行任务并发送到现场端执行,也可以实时检测现场端的运行状态。同时,该程序可以自动保存运行记录,方便日后查阅与绘图分析。

2.2远程监控系统监控端与现场主控端的通信设计实现

2.2.1 Internet通信的设计实现

远程监控系统监控端与现场端的通信,由该系统监控端与现场主控端中的Internet通信模块互相配合完成。

该系统的Internet通信模块采用基于UDP协议的Windows Sockets规范编写而成,一次通信过程的具体实现流程如表1所示[7,8]。

要实现上述通信,理论上需要知道双方的IP地址,实际上只需要知道现场主控端的IP地址即可。因为首次Internet通信是由监控端将控制程序发送到现场主控端,监控端将数据发送到已知的现场主控端的IP后,现场主控端程序可以自动捕获监控端的IP,以备回传数据时使用。

2.2.2 Internet通信中可能的问题及其解决方案

由于UDP协议是一种半双工的通信协议,在系统工作中,其监控端与现场主控端需要不断地切换收/发状态。该系统采用如下方法解决这一问题:

(1) 在监控端设置电机控制指令的时候,监控端默认处于发送状态,而现场主控端默认处于接收监听状态;

(2) 当控制指令配置完毕,进入正常运行过程时,监控端默认处于接收监听状态,而现场主控端默认处于发送状态;

(3) 在不发生异常状态时,现场主控端实时发送当前的运行数据到监控端,现场主控端只发送,监控端只接收,均不需要切换收发状态;

(4) 在运行产生异常的时候,现场主控端在把异常信息发送给监控端后自身转入接收监听状态,等待接收监控端的处理指令。而监控端接收到异常信息并生成解决方案后,通信口切换到发送状态,发送故障解决指令到现场主控端,之后自身再次转入接收监听状态。现场主控端接到控制信号后,转回发送状态并通过UART总线发送控制信号到现场执行端。整个通信过程结束后,监控端与现场主控端又各自回到了正常运行过程中的默认状态。

2.3 远程监控系统现场主控端与执行端设计实现

现场主控端与监控端采用基于UDP协议的Internet通信方式,其硬件部分采用台湾DAVICOM公司的DM9000A网卡实现,该网卡与嵌入式控制器通过16位总线连接[9];其软件通过Windows Sockets规范编写而成,实现方法已经在2.2节中论述。

现场主控端与现场执行端是由UART总线构成的一个主从结构的现场控制系统,其中UART总线的主机是嵌入式处理器,而从机是片上系统处理器。现场主控端与现场执行端的硬件设计框图如图3所示[10]。

根据上述硬件设计以及配套软件开发,笔者研制了该系统的现场端,完成了整个远程监控系统的设计制造工作。

3 系统整体运行实例

下面本研究通过实例介绍远程监控系统的整体运行过程:

(1) 系统设置与启动。首先在监控端计算机的监控主界面上设置好步进电机运行任务表(如图4所示),点击“开始运行”,则控制信号通过Internet发送到现场主控端。

(2) 现场主控端接收到监控端控制信号后,能够捕获监控端的IP并显示在界面上(如图5所示),同时开始接收监控端控制指令,然后通过UART串口通信送至现场执行端,步进电机就会按照任务表运行。

(3) 电机运行过程中,运行数据通过UART通信由现场执行端送至现场主控端,又通过Internet发送到监控端,然后主界面上就可以显示到电机的实时运行的状态。

(4) 如果电机在运行过程中受到干扰发生故障,现场端会发送故障信息到监控端,监控端生成解决方案并逐级发送到现场执行端,同时电机的异常数据也会被记录在历史数据中。

(5) 整个任务列表运行结束后,运行数据会保存在文件中,可以在“历史数据显示”中查看或在“历史数据绘图”中绘图。

4 结束语

本研究设计制作了一个完整的基于Web的远程监控系统,实现了对现场设备随时随地的远程监控。对于需要现场无人值守或现场条件不适宜人工作业的控制系统,具有良好的实用价值。

步进电机被广泛应用于工业生产的各个方面,因此该系统可以移植到多种工业现场应用,具有较强的移植和扩展性。

作为实验性开发,本研究搭建了一个完整的基于Web的嵌入式系统网络化监控平台,但是,该系统只设计制作了一个被控对象,但是已经考虑到扩展问题,因此采用了一主机多从机的通信方式。下一步本研究可以将被控对象增加至多个,实现基于Web的远程多路监控系统。该系统的被控对象是相对简单的步进电机,下一步可以设计控制更加复杂的对象,配合有效的控制算法,让这个平台的能力得以更好地发挥。

参考文献

[1]张小飞.嵌入式Web服务器在工业现场中的应用[J].中国高新技术企业,2010(25):86-87.

[2]汤碧玉,曾楠,郑灵翔,等.嵌入式系统中基于Web的远程监控设计与实现[J].厦门大学学报:自然科学版,20044,3(5):632-635.

[3]杜鹃.基于嵌入式Web服务器的远程监控系统的研究[D].西安:西安电子科技大学技术物理学院,2008.

[4]RASKOVIC D,REVURI V,GIESSEL D,et al.EmbeddedWeb Server for Wireless Sensor Networks,System Theory(SSSD)[C]//41st Southeastern Symposium on Tullahoma,TN,USA:[s.n.],2009:19-23.

[5]FERNANDEZ R O,PERES R.Remote Monitoring and Con-trol of Electronic Nutrunners with Embedded Internet[C]//IEEE 2002 28th Annual Conference of Industrial ElectronicsSociety,2002:2371-2375.

[6]叶欣,李世伦.基于Web的单晶生长炉远程监控系统[J].机电工程,2010,27(3):49-52.

[7]叶宏材,陈峙桐.Windows CE.NET嵌入式工业用控制器及自动控制系统设计[M].北京:清华大学出版社,2005.

[8]LWA K L K,LEUNG R.A Design and implementation ofactive network socket programming[J].Microprocessorsand Microsystems,2003,27(5):277-284.

[9]贾东耀,彭树林.网络控制器DM9000A在嵌入式系统中的应用[J].电子产品世界,2008(8):94-96.

基于web的嵌入式远程监控系统 篇3

关键词: Web;系统;安全

中图分类号:TP277 文献标识码:A 文章编号:1674-7712 (2012) 12-0093-01

传统远程监控系统是基于传统模拟监控系统和数字硬盘录像监控系统的第三代监控系统,它部署简单方便,有很强的适应性,目前仍在广泛使用。但这种系统在安全性上存在很多问题。为了解决这些问题,基于Web的远程监控系统随之产生,这种B/S架构的监控系统简化了使用维护,避免了客户的安装,但可能由于操作的复杂性、高强度性和数据保密性等,需要有很强的安全稳定性,采用合适的安全策略将是整个远程监控系统的强有力保障,也是最终目标。下面主要就攻击者对监控系统的各个阶段的攻击方式进行分析,找出合适的防范对策,实现监控系统的安全稳定。

一、踩点入侵与安全对策

所谓“踩点”就是指攻击者对系统发动攻击前,先对整个系统进行一个大体上的了解,尽可能多的收集与系统相关的有用信息,为进行攻击做准备[1]。大多的攻击行为都是从攻击者踩点开始。利用踩点可以较容易的得到系统域名信息、联系方式、管理者情况等有用信息,还可以探测到服务器的物理地址,网络的拓扑结构,网络的路由信息等设备信息。网络中的踩点方式主要有使用网络测试命令、使用域名系统跟踪命令、使用搜索工具和图形界面踩点。根据踩点入侵方式,监控系统可以对系统中的工作站进行如下安全设置,尤其是服务器和网络核心设备设置:

(一)禁止系统对相关命令的响应。通过安全设置,禁止某些测试命令在请求时做出响应,使踩点者无法通过命令获取有效信息。如对Ping命令进行安全设置,禁止系统对Ping命令的请求做出响应,使系统管理者维护系统更方便。

(二)增强域名系统的安全设置。通过系统网络入口处的防火墙设置,将网络环境配置分成内外网络环境,使内外网的域名解析分离。内部网络的域名系统对内提供解析服务,外部网络的域名系统只提供公共网络访问的主机解析服务,设置后可以根据端口号进行解析服务。

二、扫描入侵与安全对策

攻击者通过先前踩点得到监控系统的有用信息之后,将使用网络中已经存在的工具,有针对的扫描整个监控系统,是否攻击监控系统取决于扫描结果的分析。如果扫描后发现系统存在漏洞,那么系统便成为攻击者的对象。扫描入侵往往也是有针对性的,作为基于Web的远程监控系统的监控网络,最常见的是针对该网络的某种服务和应用的扫描,比如针对Windows操作系统的漏洞扫描、针对SQL server数据库漏洞扫描、针对Web服务器的漏洞扫描、针对路由器扫描、针对防火墙扫描。基于Web的远程监控系统的监控网络,通过分析所面临的扫描入侵方式,有针对性的制定如下的安全对策:

(一)常规扫描入侵的安全对策。现在网络中有很多有针对性的扫描监测工具,可以及时发现扫描入侵行为,如防火墙自身也是一种扫描监测工具,可以利用监控网络的防火墙设备过滤一些非法信息。

(二)制定针对性的日志审计。针对各种扫描方式,比较容易发现扫描入侵的一个办法就是查看各种日志审计。比如针对Web服务器的扫描入侵,常见的蠕虫病毒就是利用Web服务器漏洞,对系统的Web服务器造成严重的破坏。系统管理人员想到查看日志记录可能是系统遭到攻击后的第一选择,特别是Web服务器的日志记录。

(三)扫描方式对策配置要点。要增强对监控网络的安全性,对系统内的服务器端和客户端尽量要遵循一些配置要点:

1.Windows 系列的系统,避免通过NetBIOS泄露系统信息。

2.设置SQL Server的“sa”口令,缺省配置(空口令)避免使用。

3.设置MySQL的“root”口令,缺省配置(空口令)避免使用。

4.禁止远程访问路由器设备的,除非设置较强的访问口令。

5.及时升级系统和安装系统补丁。

三、嗅探入侵与安全对策

基于Web的远程监控系统的监控网络,最常见的嗅探方式应该是Sniffer。系统的构建基于信息交换设备的共享网络,嗅探程序将网卡默认的接收数据帧模式篡改为混合模式,关闭原来网卡所配置的过滤设置,就可方便的从交换机Switch组建的网络中嗅探到传输的数据帧。监控系统应从以下几个方面制定相应的安全对策:

(一)系统定期检查是否被窃听。经监控网络和其他校园网络在使用过程中归结,要尽量避免窃听,首先可以通过检查本机开始,Windows系统下通过一些特定的程序可以检测是否被窃听。然后,借助网络命令检测,如很多嗅探工具遇到ping等命令检测时,一般会返回应答信息。这种借助网络检测的方法,实质就是通过命令或工具向网络中发送特殊的伪装数据包,引诱嗅探工具上钩,使其做出响应。如此反复发送数据包,多次采样,合理分析结果,就可准确检测到嗅探工具的隐藏处。

(二)设置数据加密通道。监控网络的数据传输使用明文传送,嗅探工具截获信息便相对容易,假如系统传输数据时对数据加密,即使数据被嗅探工具截获也不会得到真正的数据内容,一定程度上减少了被嗅探工具窃听的几率[2]。因此,为增强系统安全性,在系统网络设置数据加密通道便成为一个很好的选择。数据加密通道建立后,数据好像在密封好的传输中传输,使系统的关键信息得到了加密保护。

四、主动攻击与安全对策

通过前面踩点阶段、扫描阶段收集到的信息,甚至在嗅探阶段也取得的信息,经过攻击者认真分析和准备,攻击者就会开始对攻击目标实施轮番攻击,用出各种攻击方法侵入系统。经对监控系统网络分析总结可能存在的主动攻击与对策如下:

(一)拒绝服务式攻击与安全对策。拒绝服务式攻击,是最传统最成熟的攻击方式,伴随着网络的产生和发展,也是目前网络所面临的主要攻击方式。只要系统接入网络,任何系统都会存在系统或者服务上的漏洞,网络协议也会给攻击留下机会,根本无法从技术角度做到绝对安全,自然就会存在拒绝服务式主动攻击。

(二)口令猜测与安全对策。系统口令一般掌握在管理人员手中,具有较高权限,一旦被攻击者所掌握,将会对系统造成难以挽回的损失。为了防止攻击者利用工具破解口令,应加强安全防范措施,做好对策。为了系统可以应对口令猜测攻击,首先,系统管理员通过分析常用的破解工具,做些有针对性的改进;其次,结合本系统特点,注意合理加强口令策略。

(三)IP欺骗与安全对策。系统通信,当存在IP地址的认证授权访问和对数据包只判断接收端IP地址,不管发送端IP时,就会给IP欺骗攻击创造机会,伪装IP数据包对系统进行攻击。主要有两点对策:不使用过于简单的IP地址的认证授权访问和禁止监控系统外来数据包使用本地IP地址。

参考文献:

王强.远程监控系统的应用与研究[D].[D].南京:河海大学,2003

基于web的嵌入式远程监控系统 篇4

摘 要:将网络技术和嵌入式技术相结合的远程视频监控系统是视频采集技术的发展趋势,文中提出了一种基于对等网络模型的嵌入式远程视频监控系统的设计方案。该方案将嵌入式系统和Web开发技术相结合,再利用USB摄像头作为视频监控系统的终端进行图像采集,并使用网络TCP协议将其远程发送给服务器终端。相较于传统的Client/Server网络模型,本系统实现采用对等网络模型,即确定发送命令的控制程序既可以是客户端,又可以是服务端。文中选择嵌入式开发平台ARM系列A8处理器进行研究和设计,并采用PC机下的Linux系统作为主机开发环境。

关键词:嵌入式;视频监控;网络远程控制;对等网络

中图分类号:TP39 文献标识码:A 文章编号:2095-1302(2016)05-00-03

0 引 言

网络远程控制(Network Remote Control,NRC)是利用计算机网络对远程计算机进行操作的一种控制方式。计算机技术和网络技术目前都在高速发展,现在监控系统已经发展到网络视频监控系统[1]。网络视频监控具有数字视频监控和网络传输技术的优点,其具有不受地理位置约束、扩展方便简单、信息处理较容易等特点,可以使远程的管理和维护变成现实,只要是网络覆盖的地方,就能实现网络监控[2]。嵌入式系统向网络发展已成必然趋势,目前嵌入式系统对网络协议如TCP/IP协议和HTTP协议的支持也越来越广泛。系统硬件设备选择与配置

系统硬件设备选择凌阳嵌入式A8教学实验系统进行设计与实现。该实验箱基于ARM CortexTM-A8内核的处理器S5PV210,该芯片又名“蜂鸟”(Hummingbird),是三星公司推出的一款适用于智能手机和平板电脑等多媒体设备的应用处理器[3]。本系统使用了人机交互模块的USB接口、多媒体模块摄像头接口及通信模块以太网接口。

1.1 USB摄像头

摄像头属于视频类设备。在目前的Linux核心中,视频部分的标准是Video for Linux(简称V4L)。这个标准其实定义了一套接口,内核、驱动、应用程序以这个接口为标准进行交流。目前的V4L涵盖了视、音频流捕捉及处理等内容,USB摄像头也属于它支持的范畴。

本系统所采用的嵌入式Linux操作系统如果需要使用USB摄像头则必须在内核配置时添加Video4Linux驱动和对USB摄像头驱动模块的支持。本系统的设计与实现采用静态加载以上驱动。首先进入Linux源代码所在的目录,在终端输入make menuconfig命令,在基于Ncurses内核配置图形界面进行内核选项的配置。选中多媒体设备选项“Multimedia device->”,进入多媒体设备配置界面,选中“Video For Linux”,加载Video4Linux模块,就可以使内核实现对Video4Linux驱动的支持,为视频采集设备提供编程接口。在内核配置主界面,选中USB支持选项“USB support―>”,选中“USB Multimedia device”选项下的“USB OV511 Camera support”,使内核中加入OV511接口芯片的USB数字摄像头的驱动支持。OV511 USB 摄像头驱动配置界面如图1所示。

图1 OV511 USB 摄像头驱动配置界面

1.2 开启帧缓冲设备

帧缓冲(Frame Buffer,FB)是Linux为显示设备提供的一个接口,是把显存抽象后的一种设备,它允许上层应用程序在图形模式下直接对显示缓冲区进行读写操作。由于FB设备驱动为受限驱动,因此必须进行设备开启。本系统开发环境采用发行版Linux操作系统Ubuntu10.10,Ubuntu下启用FB设备的一般步骤如下所示:

安装v86d和hwinfo两个包查看显卡是否支持,并设置本机支持模式。

修改启动文件/etc/default/grub,如图2所示。

图2 修改启动文件图

修改modules文件/etc/initramfs-tools/modules,如图3所示。

图3 修改modules文件

更新以上两个文件并重启系统,即可查看到FB设备,具体如图4所示。

图4 查看FB设备系统软件设计

本系统软件由摄像头驱动模块、图像采集模块、网络传输模块和网络服务器模块组成[4]。摄像头驱动模块使得摄像头为应用程序编写提供系统编程接口。功能主要包括摄像头设备信息的获取与设置、设备的打开和关闭、信号通道选择、窗口初始化等。图像采集模块的作用是使用编程接口获取摄像头采集来的图像信息并进行暂时存储。服务器通过网络传输模块与远程监控PC机端进行信息交流。

2.1 V4L图像信息采集流程

V4L图像信息采集流程分为如下几步:

(1)打开摄像头设备

int vd->fd = open(“/dev/video0”,O_RDWR);

(2)读video_capability 中的信息,成功后可读取vd->capability各分量ioctl(vd->fd,VIDIOCGCAP,&(vd->capability));

(3)读video_picture中的信息,成功后可读取图像的属性ioctl(vd->fd,VIDIOCGPICT,&(vd->picture));

(4)初始化channel

int i;

for(i = 0; i capability.channels; i++){

基于web的嵌入式远程监控系统 篇5

监控系统,arm-μ

随着后PC时代的到来,各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机。嵌入式开发已成为当前IT行业的热点。同时,越来越多的用户希望能对嵌入式环境下的数据进行更有效的管理,构建嵌入式数据库便是一个有效的方法,使用户能在嵌入式设备中方便地存储、检索或修改数据,实现大部分传统数据库的功能。嵌人式系统和数据库技术的紧密结合已经成为嵌入式开发的一个重要方向。1嵌入式数据库SQLite与传统C/s结构的各种

随着后PC时代的到来,各种各样的新型嵌入式系统设备在应用数量上已经远远超过通用计算机。嵌入式开发已成为当前IT行业的热点。同时,越来越多的用户希望能对嵌入式环境下的数据进行更有效的管理,构建嵌入式数据库便是一个有效的方法,使用户能在嵌入式设备中方便地存储、检索或修改数据,实现大部分传统数据库的功能。嵌人式系统和数据库技术的紧密结合已经成为嵌入式开发的一个重要方向。

1嵌入式数据库SQLite

与传统C/s结构的各种大型关系数据库如Oracle,SQL Server,MySQL等相比,在嵌入式系统中由于软硬件资源有限,不可能安装庞大的数据库服务器,而且在很多时候,用户只需要使用这些数据库产品的一些基本特性而已。嵌入式系统的开发环境决定了其数据库的特点:无需独立运行的数据库引擎,而是由程序直接调用相应的API实现对数据的存取操作。嵌入式数据库与其他数据库产品的区别是,前者是程序驱动式,而后者是引擎响应式。

SQLite是D.Richard Hipp在2000年开发的一个小型嵌入式数据库。他是完全独立的,不具有外部依赖性,可以较为方便地应用于嵌入式系统中。其源代码完全开放,可以免费用于任何用途,包括商业目的。SQLite虽然是个极端轻量级的关系数据库,却保留了数据库的大部分特征,他提供了对SQL92标准的大多数支持:支持多表和索引、事务、视图、触发和一系列的用户接口及驱动。其主要特征如下:

(1)支持原子的、一致的、独立的和持久的(ACID)事务特性,即使系统崩溃和掉电。

(2)零配置(Zero-configuration),无需安装和管理。(3)一个完整的数据库存储在单一磁盘文件中。(4)数据库文件可以在不同字节顺序的机器间自由共享。(5)支持数据库大小至2 TB(2^41 B)。

(6)字符串和二进制大对象(BLOBs)的大小仅被有效内存限制。(7)源码体积小,编译后低于250kB。(8)大部分的操作比关系型数据库引擎要快。(9)简单易用的API。

SQLite由于小、快、简单、可靠,而且作者完全放弃版权,从他一发布出来,便深受欢迎。对于嵌人式环境,管理、执行、维护的简单化比企业数据库引擎提供的许多复杂应用更重要,因此SQLite数据库是一个很好的选择。2 SQLite内部结构及开发技术 2.1 SQLite内部结构

基于Web的实时答疑系统 篇6

针对基于Web方式的实时答疑系统的功能及实现方法进行了讨论,并给出了实际的`解决方法.

作 者:刘超群 赵然 罗晓东  作者单位:刘超群(湖南大学,计算机与通信学院,湖南,长沙,410082)

赵然(山东理工大学,科研处,山东,淄博,255049)

基于web的嵌入式远程监控系统 篇7

1 智能家居系统的发展现状及趋势

智能家居,英文为Smart Home,是以住宅为平台,兼备建筑、网络通信、信息家电、设备自动化,集系统、结构、服务、管理为一体的高效、舒适、安全、便利、环保的居住环境。是利用计算机技术、数字技术、电子技术、网络通信技术和综合布线技术,将与家庭生活密切相关的防盗报警系统、家电控制系统、网络信息服务系统等有机的结合在一起,通过中心管理平台,让家居生活更加安全、舒适和高效。

智能家居系统相对于一般应用于安防的监控系统要更加的考虑成本、功耗和稳定性问题,因此智能家居与我们常常所说的安防系统有相似之处,但是又具有自身的特点。从智能家居概念在我国推广的将近10年时间里,虽然有很多公司推出了自己的智能家居系统,但现在智能家居系统仍然没有得到一个很好的普及。由于一个建筑的生命周期相对较长,所以很难像手机、PC产品频繁更新换代,因此使用非标的产品企业的经营风险就可能转嫁到用户头上,为以后的维护和升级换代造成一定困扰。并且智能家居是一个多行业交叉覆盖的系统工程,各设备厂商按照不同的接口标准与协议生产设备,其结果是不同设备之间的连通变得十分困难。因此,建立共同遵循的标准与协议是发展智能家居必须首先解决的问题。目前,智能家居领域的国际标准尚未成熟,各大厂商和相关组织机构正在着手建立和制定智能家居系统内部设备之间的网络接口标准和数据传输协议。

现今智能家庭网络向三大技术趋势发展:1)网络化发展;2)无线技术;3)基于嵌入式系统的远程控制。而推进这个发展趋势的正是网络技术、无线通信技术以及嵌入式系统的广泛应用。网络化的嵌入式无线智能家居控制系统是未来智能家居的展方向,它能够提供标准化接口和无线网络互连功能,而且可以通过嵌入式通信协议使得系统能够脱离传统PC,从而智能家居行业也将跨入后“PC”时代,这样的智能家居才能有更大发展。

未来的智能家居系统必然是将家中的数字设备通过无线技术连接起来,构建独立的家庭局域网,并通过Internet或GPRS连接到外网,进而实现通过计算机、手机或PDA来远程监测和控制家庭中的各种设备,真正实现家庭设备的信息化、网络化和智能化。

2 基于Web的嵌入式远程控制系统

基于Web的嵌入式智能家居系统由嵌入式Web服务器、传感器、以太网控制器、通行网络、电器控制设备等构成,其中嵌入式Web服务器是整个智能家居系统的核心,完成整个系统资源的集中管理和控制。嵌入式Web服务器主要承担两方面的任务:一方面负责对现场的数据的接收、处理和存储,并对数据处理结果进行判断,发出相应的控制信号;另一方面负责数据发送,把监控站点传送来的数据通过以太网发送到远程监控客户端;远程监控客户端用户通过IE浏览器进行现场的实时控制。

2.1 系统硬件设计

系统硬件部分主要包括S3C2440A处理器、存储器和外围电路。S3C2440A芯片采用ARM公司的ARM920T的32位CPU核,并集成了ARM结构的MMU单元,各有16KB的指令缓存和数据缓存,最大寻址空间为1G字节。S3C2440A芯片包含了丰富的接口电路,如图1所示。

S3C2440A处理器提供了丰富的片内资源,支持Linux操作系统,内置USB控制器,可以将摄像头采集到的图像通过USB接口送到S3C2440A进行处理。网络芯片支持100MB/S以太网接口,是实现远程控制设计得基础。

2.2 系统软件设计

2.2.1 构建基于S3C2440A的嵌入式Linux系统

在S3C2440A上搭建嵌入式Linux软件平台,需要三个步骤:1)建立交叉编译环境,是为了支持是嵌入式应用软件开发而搭建的编译、链接和调试嵌入式应用软件的环境,采用宿主机/目标机模式。2)引导加载程序Bootloader的移植,Bootloader不但依赖于CPU的体系结构,而且依赖于嵌入式系统板级设备的配置。将Bootloader加载到flash中,在系统启动的时候引导操作系统,并支持串口和以太网接口。

3)Linux内核的编辑和配置。嵌入式系统是“硬件可裁剪”的,根据硬件电路的不同,对已有的内核代码进行修改移植。

2.2.2 基于WEB的远程控制智能家居系统的实现

1)Linux驱动程序

利用Linux提供的机制“模块”将驱动程序加入内核,每个模块由目标代码组成(没有连接成一个完整可执行程序),使用insmod工具将模块动态加载到正在运行内核中,rmmod程序移除模块。如图2所示。

2)网络通信程序

在智能家居系统中,用户拥有的网络设备和S3C2440A开发板是Socket通信的两端,Linux网络编程是通过Socket接口进行的,只要对方的Socket和自己的Socket有通信联接,双方就可以发送和接受数据。网络编程一般采用客户/服务器(Client/Server)模式。服务器端任务在指定的端口等待来自客户端的连接请求,一旦连接成功,即可按约定的数据交换方法和格式进行数据传输。客户端则在需要的时刻向服务端发送连接请求。在C/S编程模式下,客户端程序是发出用户请求,服务器端侦听某个端口,等待来自客户端的请求消息。在程序结构上,服务端程序使用循环模式和并发模式。

3)嵌入式Web服务器的建立

在Linux系统下,嵌入式Web Server BOA+CGI程序设计技术,是实现嵌入式Web系统的一种非常理想的方案。

Boa是一款单任务的HTTP服务器,与其他传统的Web服务器不同的是当有连接请求到来时.它并不为每个连接单独创建进程,也不通过复制自身进程来处理多链接,而是通过建立HTTP请求列表来处理多路HTTP连接请求,同时它只为CGI程序创建新的进程,这样就在最大程度上节省了系统资源,这对嵌入式系统来说至关重要.同时它还具有自动生成目录、自动解压文件等功能,因此,Boa具有很高的HTTP请求处理速度和效率,在嵌入式系统中具有很高的应用价值。

Boa需要在/etc目录下建立一个boa目录,里面放入Boa的主要配置文件boa.conf。首先对Group的修改,修改Group nogroup为Group 0。另外在/etc/passwd中有nobody用户,所以User nobody不用修改。(注意如果没有nobody用户,也需要将User设成0)。然后对Script Alias修改,指示CGI脚本的存放位置。

修改Script Alias/cgi-bin//usr/lib/cgi-bin/为

Script Alias/cgi-bin//var/www/cgi-bin/Script Alias/index.html

/var/www/index.html指示网页存放的位置。

最后对Server Name进行设置。

修改Server Name http://www.your.org.here/为Server Name http://www.your.org.here/注意:该项默认为未打开,执行Boa会异常退出,提示“gethostbyname::No such file or directory”,所以必须打开。其它默认设置即可。

成功配置以后,创建日志文件所在目录/var/log/boa,创建HTML文档的主目录/var/www,将静态网页存入该目录下(可以将主机usr/share/doc/HTML/目录下的index.html文件和img目录复制到/var/www目录下),创建CGI脚本所在目录/var/www/cgi-bin,将cg的脚本存放在该目录下。另外还要将mime.types文件复制/etc目录下,可从linux主机的/etc目录下直接复制。

通用网关接口CGI(Common Gateway Interface)在WWW环境下,将客户端信息传递到Web服务器,再由Web服务器去启动所指定的程序来完成特定的工作。CGI可以提供比如一个计算器、顾客表格的提交以及统计、搜索引擎、Web数据库等等功能。同时把信息记录在服务器的硬盘上。编写CGI程序对index.html提交数据的处理,通过登录后进入远程控制界面,以实现基于Web的远程控制智能家居系统的目的。

3 结论

采用基于Web嵌入式远程控制系统的方法实现智能家居可以大大的节省系统的软硬件资源,只需浏览器,无需开发应用软件,降低系统成本。监控终端平台与服务器平台无关,真正实现了跨平台。易于扩展新的功能,系统升级仅需在Web服务器一端添加相应模块,与远程监控终端无关,降低系统升级维护费用。并且可提供分布式并行处理,基于Web的控制系统可构成一个多CPU协调工作的分布式系统,可并行处理多个控制指令。

摘要:基于嵌入式Web远程控制系统在智能家居方面的应用是未来发展的必然趋势。在S3C2440A的硬件基础上,在Linux系统平台上对嵌入式Web服务器进行设计。

关键词:嵌入式Web服务器,智能家居系统,Linux操作系统,远程控制

参考文献

[1]黄智伟.ARM9嵌入式系统设计基础教程[M].北京:北京航空航天大学出版社,2008.

[2]何永琪.嵌入式Linux系统实用开发[M].北京:电子工业出版社,2010.

[3]张绮文.ARM嵌入式应用开发完全自学手册[M].北京:电子工业出版社,2009.

[4]华清远见嵌入式培训中心.嵌入式Linux系统开发[M].北京:人民邮电出版社,2009.

电梯嵌入式远程监控系统 篇8

关键词 电梯 监控 嵌入式 Linux

中图分类号:TP271 文献标识码:A

0引言

近年来,以嵌入式处理器为核心的智能电梯控制系统的飞速发展和普及, 对电梯控制系统的主控制器在功能、实时性、可靠性和软件编程的灵活性提出了更多、更高的要求。因此本文主要讲述如何利用嵌入式技术构建一个智能电梯的控制系统,该系统主要功能是远程控制电梯和电梯视频监控。

1系统的原理结构

本设计采用三星的S3C6410芯片作为电梯嵌入式视频监控系统的核心,通过USB摄像头采集视频图像,实时了解电梯的运行情况,模拟电梯和微处理器可以实现通信,可以实时控制电梯的运行,采集到的视频信号和电梯的底层数据可以通过Internet传输到远端的监控PC上,远端的PC也可以对电梯实现远程操控等。系统总体结构图如图1所示。

2硬件平台设计

图2 电梯服务器硬件平台框图本设计是以采用 S3C6410为一款带MMU的ARM微处理器,可在上面运行标准的Linux操作系统,以减少软件开发时间。S3C6410集成了256M DDR RAM,SLC NAND Flash(1GB)或MLC NAND Flash(2GB)存储器,使其有足够的空间存储程序和数据。DM9000网卡和RJ45接口为接入Internet做好硬件准备,USB接口主要用于USB摄像头。嵌入式电梯服务器硬件设计框图如图2所示。

3软件的实现

在软件设计上采用linux操作系统作为软件开发平台,linux操作系统中最关键的部分是实时多任务内核,它主要实现任务管理、定时器管理、存储器管理、任务间通信与同步、中断管理等功能。电梯嵌入式智能控制器中使用linux操作系统可以将应用程序分解成多任务,简化了应用系统软件的设计,使得电梯嵌入式智能控制器的实时性得到保证,而且良好的多任务设计,有助于提高系统的稳定性与可靠性。以下主要介绍本控制器的主要模块和核心部分。

3.1 模拟电梯模块

模拟电梯模块主要是根据拟定的电梯数据结构,用小键盘模拟电梯的内部操作,采用同方向优先的电梯算法使电梯正常运行,运行的过程就是电梯数据的变化,然后将实时变化的电梯数据存入电梯数据缓冲区,等待监控中心的连接请求,该缓冲区是一个拟定的电梯数据结构体。

3.1.1 电梯数据结构体

typedef struct elevator

{

int m_flag; //电梯运行的标志:1—运行 2—停止

int up_down; //电梯运行方向:上—1 下—0

int cur_floor; //电梯当前所在的楼层

int des_floor[MAX]; // 电梯目标层数组

/*des_floor[0]记录目标层的个数,des_floor[1-9]:值为代表有人要去该层即相应楼层为目标层,为0则表示没有人去该层*/

}elevator;

该结构体实时记录电梯当前的状态和相关信息,它是电梯运行控制的数据核心。监控中心就是通过获取该结构体信息来达到远程监控电梯的。

3.2 键盘模拟电梯操作的处理过程

利用ARM6410开发板上的小键盘来模拟电梯及操作过程流程说明:首先打开键盘设备/dev/mcu/kbd,如果返回键盘设备句柄就可以进行初始化电梯数据,然后进入循环检测状态,检测是否有数字键按下。有键按下则判断该键是否符合已定输入标准,判断标准为:必须输入1-9的数字键,而且输入的数字不可以是当前所在的楼层,同时还是非目标层,然后将输入的数据更新到电梯数据结构体中,即增加了一个目标楼层,若当前电梯没有运行而此时需要运行,则创建一个线程来运行电梯。

3.3 电梯的运行控制

电梯的运行过程是线程实现的,这是本模块的核心。

流程说明:电梯在运行过程中始终处于运行状态,运行结束后处于停止状态,上述线程也就结束,所以在线程一开始判断电梯是否已经处于运行状态,若是,说明某个线程正在进行电梯的运行过程,则不能再有另一个运行线程,于是结束。否则,根据目标楼层数不断循环来到达每一个目标层,当目标楼层数为0时,电梯停止,线程结束。

运行过程中,根据同方向优先算法,先达到运行方向上的目标楼层,当运行方向上没有目标层或已经达到顶端或低端时,才改变电梯运行方向。若運行方向上有目标层时,则一直运行直到达到某个目标楼层,这是通过判断达到的每一层是否是目标层来确定的。只有当达到某个目标层或电梯改变运行方向时,才重新根据目标楼层数来判断是否还有目标层。

流程中的“到达标志”用于标识是否到达一个目标层,当确定某个方向上还有目标层时,在到达一个目标层前(即使有键按下,目标层只可能增多,不会减少),它一直为0,此时不用执行多余的判断是否有目标层的操作,直到到达一个目标层时,将该标志置为1,表示到达了一个楼层,这时才重新判断是否还有目标层。

4 结束语

本文是在ARM微处理器上设计电梯嵌入式智能控制器,采用模块化和嵌入式编程的思想设计,主要包括系统的总体设计、嵌入式硬件搭建、虚拟机工作环境的搭建,嵌入式操作系统移植、根文件系统的构建、应用软件的编写和移植。采用成熟的ARM技术,具有高性能、高集成度、低功耗、低成本、低开发难度等优点,以及采用linux操作系统是开发源码的操作系统,软件资源丰富,同时具有内核功能强大,高校,稳定,支持ARM等优点。因此大大地提高了系统的可靠性和稳定性,将其应用在电梯的控制领域具有很好的发展前景。

参考文献

[1] 邢航,陈安.嵌入式系统在智能电梯中的应用.工业控制计算机,2006:19-5.

[2] 刘利.基于嵌入式系统的电梯核心控制器的设计与实现.天津大学,硕士学位论文,2007.

[3] 张晓林.嵌入式系统技术.北京:高等教育出版社,2008-10.

[4] 华清远见嵌入式培训中心.嵌入式Linux应用程序开发标准教程.北京:人民邮电出版社,2009.

[5] 嵌科技.Mini6410 Qt4和Qtopia编程开发指南-20110112.pdf. 广州:广州天嵌计算机科技有限公司,2011.

[6] 谭浩强. C语言程序设计(第三版).北京:清华大学出版社,2005.

上一篇:闺蜜结婚祝福语短信下一篇:企业文化测试