1、嵌入式无线监控移动机器人系统的设计摘 要:无线监控移动机器人可应用于室内外各种工作环境,可工作于人类不便进入或对人体有害的工作环境中替代人工,实施高频率、高精度的监控工作,并可通过加载各种传感器进行相关信号的采集及其他功能的扩展,目前无线监控移动机器人在变电站、热电厂、大型仓库、特殊环境(如放射性环境)中均已投入使用。 关键词:无线网络;S3C6410;WEB 服务器 1 硬件总体设计 该系统的主控平台为 S3C6410 开发板,通过在该平台上构建视频服务器和 WEB 服务器实现系统主体设计,摄像头采集的数据通过无线网络传输给客户端监控界面,客户端的控制按钮发送控制信息给服务器,服务器通过程序
2、解析后控制底层电机驱动器,驱动机器人平台运动。 (1)嵌入式核心控制模块 本系统的控制模块为飞凌公司生产的 OK6410-A 开发板。其主控芯片S3C6410 是三星公司推出的一款高性价比的 RSIC 处理器,它基于内核ARM1176JZF-S,可广泛应用于移动电话和通用处理等领域。 (2)电机驱动模块 电机驱动模块采用 SG5 公司生产的 L298N,内部包含 4 通道逻辑驱动电路,是一种二相和四相电机的专用驱动器,可驱动 46V、2A 以下的电机。 (3)WIFI 网卡 WIFI 网卡采用与 OK6410-A 开发板相配套的网卡,型号为 FIT-WIFI-SDIO,该网卡可直接插到 OK6
3、410-A 开发板无线网卡接口中使用。 (4)摄像头模块 摄像头模块采用与 OK6410-A 开发板相配套的摄像头,型号为 FIT-CAM-OV9650,该摄像头可直接插到 OK6410-A 开发板的 USB 摄像头接口中使用。 2 软件总体设计 软件系统主要由 Linux 操作系统下的视频服务器 MJPG-Streamer、BOA 服务器、小车控制应用程序和小车驱动组成。MJPG-Streamer 和 BOA 服务器我们只需要移植便可,我们需要做的就是做一个HTML 格式的 WEB 界面、一个控制小车应用程序、小车驱动和一个启动这些程序的 Shell 脚本。系统软件架构图如图 2 所示: (
4、1)MJPG-Streamer 服务器的移植 MJPGstreamer 是主要运行在 Linux 系统上的一款运用多线程技术的轻量级视频服务器软件。它是一款采用 C 语言进行开发的开源软件。 (2)BOA 服务器的移植 通过 MJPG-Streamer 服务器的移植就可以在 WEB 浏览器上浏览到实时视频了,但是浏览器端无法和服务器就行通信,而 BOA 服务器支持CGI,CGI 脚本可以实现服务器和应用程序的通信,也就是说浏览器端的信息可以通过 CGI 传送给应用程序,于是我们就可以通过浏览器端用户的操作来决定小车的动作。 BOA 服务器移植:下载 BOA 服务器源码,解压并进入到源码根目录,
5、生成 Makefile 文件,修改 Makefile 文件,指定编译时所需要的交叉编译器,执行 make 命令生成 boa 可自行文件,将 boa 以及 boa.conf 移动到目标平台,即可完成 BOA 服务器移植。 CGI 程序设计。CGI 实质是运行在 WEB 服务器上面为客户端 HTML页面提供接口的一个脚本程序。它可以通过标准输入(STDIN)来从 WEB服务器获得数据,经处理之后可以通过标准输出(STDOUT)来将数据返回给 WEB 服务器,从而实现对客户端数据的接收处理。 (3)命名管道简介 命名管道是一种实现无关进程间通信的通信机制(IPC) ,其本质上为一个文件,因此通讯更加稳定。命名管道遵循与先进先出原则,本设计中利用命名管道的特性,可以实现 CGI 程序与命令服务程序之间的数据交换。 (4)控制命令设计 小车驱动程序:小车采用 L298N 芯片驱动,这是一款功率放大芯片,专门用来驱动小车用的,可驱动 2 个电机。 小车控制进程程序:小车控制进程程序只需要创建一个命令管道,然后从命令管道读取到 CGI 写进去的命令然后调用小车驱动执行相关的操作控制小车即可。 参考文献: 1李晶.基于无线网络的移动机器人远程控制系统的研究D.北京邮电大学,2009.