《嵌入式系统设计》设计性实验报告题目基于web的远程控制设计系别年级专业班级学号学生姓名指导教师实验时间物理与电子工程学院设计实验报告1目录前言....................................................................................................2引言....................................................................................................2课题要求..................................................................................................31、课题目的:...............................................32、运行环境:...............................................3正文......................................................................................................3一、课题分析:..............................................3二、实验原理:..............................................3三、系统设计:..............................................41、配置BOA服务器:.......................................42、CGI原理及程序设计与编写................................53、网页文件index.html设计.................................64、LED灯的驱动............................................6四、实验现象................................................6五、实验注意点及问题........................................61、实验注意点:............................................62、问题:..................................................6总结体会..................................................................................................7附件1:CGI程序....................................................................................8附件2:网页(html文件)程序........................................................10设计性实验报告成绩:指导教师签名:.......11物理与电子工程学院设计实验报告2前言随着计算机技术和网络通信技术的飞速发展,人们日常生活和工业生产等方面对基于以太网进行远程通信和控制的要求日益强烈。现代实验设备由于其高度的精密和复杂性以及大量的信息获取和处理要求,基本上涵盖网络化生产与商业的技术问题,使得它成为一个非常好的前期模型。基于Web的远程控制对远程终端要求低,再加上互联网技术的普及,基于Web的远程控制这种方式将会广泛应用到工业设备远程监控,自动化农业,网络化信息家电,智能楼宇,远程安防监控系统等。目前市场上虽已有成熟的Web服务器可供远程控制系统选择,但多是基于通用计算机或专用服务器,体积及成本不适合小型控制系统,尤其是在一些环境恶劣,不易值守或无法安装计算机控制系统的场所。如今嵌入式技术发展迅速,嵌入式处理器的性能不断提高,基于嵌入式的控制系统得到广泛应用。这个实验研究了基于Web的远程控制实验系统的硬件和软件设计方法,重点讨论了远程数据通信实现等关键技术,并用计算机网络对Led灯的控制。引言近年来,随着互联网在全球的飞速发展,网络技术广泛应用于各种企业和工业系统,越来越多的信息化产品需要能够接入互联网通过Web页面进行远程访问和控制。这种程序结构也就是大家非常熟悉的B/S结构,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,能够生成动态页面,在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,非常方便实用。基于Web的远程控制设计,我们首先需要在嵌入式设备上成功移植支持脚本或CGI功能的Web服务器,然后才能进行应用程序的开发。嵌入式Web服务器移植,我们常用的是Boa服务器的移植。物理与电子工程学院设计实验报告3课题要求1、课题目的:在2440开发板上移植一个boa程序,使开发板可以作为一个WEB服务器使用。在PC计算机上使用浏览器测试嵌入式WEB服务器的功能。建立嵌入式系统的WEB服务功能(Boa服务器的建立参考实验“嵌入式WEB服务器实验”说明),利用WEB页远程控制嵌入式系统中的硬件状态,如控制Led等的点亮、熄灭等动作。2、运行环境:硬件:up-Star认证考试实践板、PC机Pentium500以上,硬盘10G以上。软件:PC机操作系统REDHATLINUX9.0+MINICOM+ARM-LINUX开发环境正文一、课题分析:这个实验基于Web的远程控制系统是以嵌入式Web服务器为中心,通过Internet网远程访问嵌入式Web服务器,嵌入式Web服务器通过现场总线控制各个LED灯,以达到远程监控的目的,实现PC机的浏览器可通过Internet网访问嵌入式Web服务器。通过对嵌入式系统的结构形式主要有通用平台、系统架构、硬件架构、软件架构以及硬件、软件的设计方案介绍,系统的将现场数据采集设备、本地Web服务器和远端监控主机三部分构成的基于Web的远程控制系统做了较为全面的介绍和设计。二、实验原理:基于web的远程控制系统开发步骤如下:1、建立可用的软件开发环境;2、移植Boa服务器;3、开发所需的驱动程序;4、编写html页面;5、编写CGI程序,实现远程控制;6、登陆服务器,测试系统功能。物理与电子工程学院设计实验报告4三、系统设计:1、配置BOA服务器:(1)依照实验要求编译BOA服务器,并生成可执行文件BOA,并且在开发板的/var的文件下建立实验所需的文件夹及文件。拷贝Boa源码目录下已有的一个示例boa.conf,并在其基础上进行修改:Port80#Listen192.68.0.5UserrootGroup0#ServerAdminroot@localhostErrorLog/var/web_boa/log/error_logAccessLog/var/web_boa/log/access_log#UseLocaltime#VerboseCGILogsServerName:/usr/bin:/usr/local/binAlias/doc/usr/docScriptAlias/cgi-bin//var/web_boa/(2)利用挂载功能将BOA执行文件复制到开发板/var的文件夹下;物理与电子工程学院设计实验报告5(3)利用挂载功能将boa.conf文件复制到开发板/var的文件夹下。在/var下建立web_boa目录等,根据boa.conf文件中的内容相应创建需要的目录。另外,在虚拟机的/etc目录下拷贝mime.types文件到开发板。将生成的执行文件boa、pass.cgi及index.html文件传到开发板指定目录(boa.conf文件中指定)。(4)运行boa文件①up-tech:~#cd/var②up-tech:/var#./boa③打开浏览器输入开发板的IP地址运行程序2、CGI原理及程序设计与编写(1)CGI程序编写(详细程序见附件1)for(i=0;i(int)strlen(input);i++){if(input[i]=='V'){j=input[i+1];}}if(j=='1'){ioctl(fd,1,0);ioctl(fd,0,1);ioctl(fd,0,2);}if(j=='2'){ioctl(fd,0,0);ioctl(fd,1,1);ioctl(fd,0,2);}if(j=='3'){ioctl(fd,0,0);ioctl(fd,0,1);ioctl(fd,1,2);}close(fd);printf(YourPOSTMessageis%sbrbr\n,input);return0;(2)CGI文件的生成①在虚拟机的终端环境中打开文件所在的文件夹物理与电子工程学院设计实验报告6②输入arm-linux-gcc-opass.cgipass.c3、网页文件index.html设计(1)网页(html文件)设计(见附件2)(2)利用挂载功能将文件复制到开发板的/var/web_boa/的文件夹下(3)运行结果4、LED灯的驱动驱动的编译:makemodules;将驱动程序下载到开发板上;加载驱动程序命令:insmod驱动名;手动创建设备节点:mknod/dev/ledc2310。四、实验现象连好实验设备后,执行boa,在远程联网计算机上通过浏览器输入开发板IP,就可以远程控制实验板上led灯的亮灭。按0即第一个灯亮,按1即第二个灯亮,按2即第三个灯亮。五、实验注意点及问题1、实验注意点:(1)容量较大的文件上传到开发板要用ftp。如果需要用挂载则要将nolock改为nolockrsize=1024,wsize=1024这样才能顺利的上传。(2)生成文件夹mkdir***,生成文件touch***。(3)文件的移动:mv文件的复制:cp(4)CGI文件的生成:arm-linux-gcc-opazss.cgipass.c2、问题:(1)挂载挂不上:可能是没连接开发板,也可能是本地网络连接禁用错误的原因。物理与电子工程学院设计实验报告7(2)压缩包的解压缩:解压缩时我们不能像平常一样直接右击解压缩到当前文件,而是应该将压缩包拷到自己文件下,用[root@localhostwebserver]#tar–zxvfboa-0.94.13.tar.gz。(3)Boa执行后打不开网页或者打开网页错误:可能是网页出现了错误,也许是cgi自身出了问题,或是配置文件的路径发生了错误,这些问题可以通过检查路径和文件解决。(4)无法控制Led灯:最可能的原因是未添加Led灯的驱动,异是Led灯的驱动程序出现错误。(5)开发板ping出错:1.自动桥接2.换个IP地址再激活。(6)源文件的拷贝:实验过程中,一些源文件在虚拟机上修改以后,应该重新将其加载到开发板上,并将原来的文件覆盖掉。总结体会此次实验课题是基于web的远程控制设计。通过本次实