基于arm9的救灾机器人设计(毕业论文)(编辑修改稿)内容摘要:

绍这种应用的开发和移植工作。 用户首先需要在嵌入式设备上成功移植支持脚本或 CGI 功能的 Web 服务器,然后才能进 行应用程序的开发。 应用 :。 Boa 是一个非常小巧的 Web 服务器,可执行代码只有约 60KB。 它是一个单任务 Web 服务器,只能依次完成用户的请求,而不会 fork 出新的进程来处理并发连接请求。 但 Boa 支持 CGI,能够为 CGI 程序 fork 出一个进程来执行。 Boa 的设计目标是速度和安全,在其站点公布的性能测试中, Boa 的性能要好于 Apache服务器。 BOA 服务器上建立的 无线视频监控 系统网站是整个 无线视频监控 系统的中枢,是提供 传感器信息的采集,实时 视频信息的采集, PC 机客户端网页访问 等信息的更新处理实际上都是在服务器上完成。 具体地,主要包括登录、 机器人信息检测与控制 等功能页面。 无线数据传输部分 无线数据传输硬件部分 本项目无线传输使用的是 TPLINK WN321G+无线网卡作为机器人的传输终端, WR340 无线路由器作为中继器,实现机器人与控制端之间的数据通信。 无线网卡如图 所示,无线路由器如图 所示。 图 图 8 8 无 线数据传输软件部分 主要是无线网卡的驱动程序, 是 linux系统下的开源网线网卡驱动,期中就支持项目所使用的 TPLINK WN321G+无线网卡。 WEB 控制台部分 WEB 控制台运用 HTML 和 JSP 编写的集视频查看、机器人控制、传感器信息查看功能于一体的 WEB 控制页面。 可以方便的通过IE浏览器打开此页面从而实现对机器人的控制与信息查看。 WEB 控制台如图 所示。 图 传感器部分 数字温湿度传感器 DHT11 实物如图 图 咸阳师范学院 20xx 届本科毕业毕业论文 9 DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器。 它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性与卓越的长期稳定性。 传感器包括一个电阻式感湿元件和一个 NTC测温元件,并与一个高性能 8位单片机相连接。 因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。 每个 DHT11 传感器都在极为精确的湿度校验 室中进行校准。 校准系数以程序的形式储存在 OTP 内存中,传感器内 部在检测信号的处理过程中要调用这些校准系数。 单线制串行接口,使系统集成变得简易快捷。 超小的体积、极低的功耗,信号传输距离可达 20 米以上,使其成为各类应用甚至最为苛刻的应用场合的最佳选则。 产品为 4 针单排引脚封装。 连接方便,特殊封装形式可根据用户需求而提供。 MQ2 气体传感器 实物如图 图 MQ2 气体传感器特点: 广泛的探测范围 , 高灵敏度 , 快速响应恢复 , 优异的 稳定性 , 寿命长 ,简 单的驱动电路。 可用于家庭和工厂的气体泄漏监测装置, 适宜于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾等的探测。 BISS0001 红外模块 实物如图 图 热释电红外开关是 BISS0001 配以热释电红外传感器和少量外接元器件构成的被动式红外开关。 它能自动快速开启各类白炽灯、荧光灯、蜂鸣器、自动门、电风扇、烘干机和自动洗衣机等装置,是一种高技术产品。 特别适用于企业,宾馆、商场、库房及家庭的过道、走廊等敏感区域,或用 于安全区域的自动灯光、照明和报警系统。 全自动感应:当有人进入其感应范围则输入高电平 ,人离开感应范围则自动延时关闭高电平 , 输出低电平。 3 功能与指标 10 10 系统功能 通过嵌入式无线摄像头实现视频采集,以及实现在网络中任意一台接入互联网的电脑都可以实现对他的访问和查看视频、对小车和机械臂实现控制,并可以在实现温度采集,气体分析,生命探测等。 该项目可以帮助用户应用于紧急营救场景分析,代替工作人员进入高危无人区,查看工作现场突发紧急情况,并为后台人员提供现场实时信息。 项目可以推广到核电厂的高放射性的车间,冶炼厂 的高温车间以及化工行业的有毒有害的自动工作车间,代替人查看现场情况。 可以推广应用到救灾,消防,侦察,排爆,智能家居等领域。 系统指标 =2 小时; :室内 =100 米,室外 =200 米; :涉核涉化,高温有毒,震后救灾等危险环境; 4 实现原理 本 系统总共包括 7个模块,本章将对各个模块的实现原理进行说明。 视频采集模块 利用 LINUX 下 GSPCAV 驱动程序实现对基于中芯微公司 zc301 芯片的摄像头驱动,实现视频采集功能。 系统 使用的是基于中星微 ZC301 解码芯片 的摄像头,由于博创 S3C2410 开发板自带的 linux 内核中集成了 gspcav1 万能摄像头驱动,所以我们只需要将 gspcav1 添加进内核,重新编译内核就可实现对摄像头的驱动。 进入虚拟机,进入内核所在文件夹: cd /upStar2410/exp/kernel/ 配置内核: make menuconfig 进入配置界面: 咸阳师范学院 20xx 届本科毕业毕业论文 11 b) 编译内核 : ( 1) Multimedia devices Video For Linux ( 2) USB support Support for Hostside USB USB Host Controller Drivers OHCI HCD support 12 12 USB Multimedia devices USB SPCA5XX Sunplus/Vimicro/Sonix jpeg Cameras 保存内核配置退出, 把新生成的 uImage 烧进开发板,重启,插上中星微芯片的摄像头,命令行出现 usb 11: new full speed USB device using s3c2410ohci and address2 usb 11: configuration 1 chosen from 1 choice drivers/usb/media/gspcav120xx1224/: USB GSPCA camera 咸阳师范学院 20xx 届本科毕业毕业论文 13 found.(ZC3XX) 说明移植的驱动已经能识别设备,设备名所在路径 /dev/video0。 服务器模块 嵌入式 Web 服务器移植 由于 嵌入式设备资源一般都比较有限,并且也不需要能同时处理很多用户的请求,因此不会使用 Linux 下最常用的如 Apache 等服务器,而需要使用一些专门为嵌入式设备设计的 Web 服务器,这些 Web 服务器在存贮空间和运行时所占有的内存空间上都会非常适合于嵌入式应用场合。 典 型 的 嵌 入 式 Web 服 务 器 有 Boa ( )和 td ( Apache 等高性能的 Web服务器主要的区别在于它们一般是单进程服务器,只有在完成一个 用户请求后才能响应另一个用户的请求,而无法并发响应,但这在嵌入式设备的应用场合里已经足够了。 我们绍比较常用的 Boa 服务器的移植。 第一步 完成 Boa 程序的移植。 从 下载 Boa 源码,当前最新版本为,将其解压并进入源码目录的 src 子目录 tar xzf cd 生成 Makefile 文件 ./configure 修改 Makefile 文件,找到 CC=gcc,将其改成 CC = armlinuxgcc,再找到 CPP = gcc – E,将其改成 CPP = armlinuxgcc – E,并保存退出。 然后运行 make 进行编译,得到的可执行程序为 boa,将调试信息剥去,得到的最后程序只有约 60KB 大小。 make armlinuxstrip boa 第二步 完成 Boa 的配置,使其能够支持 CGI 程序的执行。 先仔细阅读下面,主要是为了先准备好需要的东西,即先把药配置的文件修改好,最后在把他们送到需要送到的目录中去。 以下只是一个文件的配置 内容: 1. Boa 需要在 /etc 目录下建立一个 boa 目录,里面放入 Boa 的主要配置文件。 在 Boa 源码目录下已有一个示例 ,可以在其基础上进行修改,下面解释一下该文件的含义: ( 1) 监听的端口号,缺省都是 80,一般无需修改 Port 80 ( 2) bind 调用的 IP 地址,一般注释掉,表明绑定到 INADDR_ANY,通配于服务器的所有 IP地址 Listen ( 3) 作为哪个用户运行,即它拥有该用户的权限,一般都是 nobody,需要/etc/passwd 中有 nobody 用户 User nobody ( 4) 作为哪个用户组运行,即它拥有该用户组的权限,一般都是 nogroup,需 14 14 要在 /etc/group 文 件中有 nogroup 组 Group nogroup Group 0 改成 0时有效的 ( 5) 当服务器发生问题时发送报警的 地址,目前未用,注释掉 ServerAdmin root@localhost ( 6) 错误日志文件。 如果没有以 /开始,则表示从服务器的根路径开始。 如果不需要错误日志,则用 /dev/null。 在下面设置时,注意一定要建立 /var/log/boa目录 ErrorLog /var/log/boa/error_log ( 7) 访问日志文件。 如果没有以 /开始,则表示从服务器的根路径开始。 如果不需要错误日志,则用 /dev/null 或直接注释掉。 在下面设置时,注意一定要建立 /var/log/boa 目录 AccessLog /var/log/boa/access_log ( 8) 是否使用本地时间。 如果没有注释掉,则使用本地时间。 注释掉则使用UTC 时间 UseLocaltime ( 9) 是 否记录 CGI 运行信息,如果没有注释掉,则记录,注释掉则不记录 VerboseCGILogs ( 10) 服务器名字 ServerName ( 11) 是否启动虚拟主机功能,即设备可以有多个网络接口,每个接口都可以拥有一个虚拟的 Web 服 务器。 一般注释掉,即不需要启动 VirtualHost ( 12) 非常重要, HTML 文档的主目录。 如果没有以 /开始,则表示从服务器的根路径开始。 DocumentRoot /var/ ( 13) 如果收到一个用户请求的话,在用户主目录后再增 加的目录名 UserDir public_html ( 16) HTML 目录索引的文件名,也是没有用户只指明访问目录时返回的文件名 DirectoryIndex 【这里的 文件就是你等下在 /var/放的要运行的文件】【在实践过程中,这个文件的后缀名必须为 html , htm 不行】 ( 15) 当 HTML 目录没有索引文件时,用户只指明访问目录时, boa 会调用该程序生成索引文件然后 返回给用户,因为该过程比较慢最好不执行,可以注释掉或者给每个 HTML 目录加上 DirectoryIndex 指明的文件 DirectoryMaker /usr/lib/boa/boa_indexer ( 16) 如果 DirectoryIndex 不存在,并且 DirectoryMaker 被注释,那么就用Boa 自带的索引 生成程序来生成目录的索引文件并输出到下面目录,该目录必须是 Boa 能读写 DirectoryCache /var/spool/boa/dircache ( 17) 一个连接所允许的 HTTP 持续作用请求最大数目,注释或设为 0 都将关闭HTTP 持续作用 咸阳师范学院 20xx 届本科毕业毕业论文 15 KeepAliveMax 1000 ( 18) HTTP 持续作用中服务器在两次请求之间等待的时间数,以秒为单位,超时将关闭连接 KeepAliveTimeout 10 ( 19) 指明 文件位置。 如果没有以 /开始,则表示从服务器的根路径开始。 可以注释掉 避免使用 文件,此时需要用 AddType 在本文件里指明 MimeTypes /etc/ ( 20) 文件扩展名没有或未知的话,使用的缺省 MIME 类型 DefaultType text/plain ( 21) 提供 CGI 程序的 PATH 环境 变量值 CGIPath /bin:/usr/b。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。