题 目: 无线控制及自动行驶智能小车设计实现
关键词: 智能小车、s3c2440开发板、 SUMSUNG-K9F2G08UXA(256*8bit NAND FLASH)、4.3寸LCD、直流电机、超声波模块、WIFI模块、COMS摄像头模块(0V9650)、linux2.6操作系统内核、JFFS2文件系统、android-手机APP控制
目录
摘要 2
1. 引言 2
2. 系统方案 3
3. 系统硬件设计 5
4. 系统软件设计 11
5. 系统创新 11
6. 评测与结论 11
摘要
1、利用安卓手机APP实现WIFI小车的前进、后退、转向等功能,并具有一定越野能力。
2、同时能够通过COMS摄像头传送25f/s实时图像到手机端用于图像采集。摄像头可由机控制拍摄角度。
3、通过手机APP开启小车自动驾驶模式,小车利用超声波模块实现自动避障、自动驾驶功能。
引言
随着嵌入式设备的兴起,智能硬件的应用领域愈发广泛,它不仅改善了人们的生活品质,同时改变了人们传统的探索发现未知的方式。由于无线控制技术和自动无人行驶技术在智能硬件上的实现,它们担负起了人类探索未知环境的重任。由于看好智能硬件在这方面的应用前景,我们选择设计这辆无线控制及自动行驶智能小车,希望可以在复杂环境的勘测、智能信息采集等领域得到应用,同时有助于我们深入学习与理解嵌入式开发与智能硬件的设计原理。
系统方案
智能小车系统上分为软件层、硬件层和操作系统层三个部分,其中硬件和软件部分将在硬件设计和软件设计(3、4节)中再详细介绍,此处(系统方案)将以操作系统层为重点介绍整个小车的系统架构。
智能小车在S3C2440A平台上搭载了Linux2.6操作系统,简化了应用程序的开发。小车上电/复位后,S3C2440A的启动代码的头4KB将从nand-flash加载到steppingstone(为三星nand-flash内部的SRAM buffer)中开始执行,并将余下的启动代码加载到SDRAM中继续执行。小车使用的启动代码即为Uboot,其将引导linux系统内核加载到内存,并将根文件系统挂载到硬盘设备(即nand-flash)上。
操作系统完成加载操作后,将启动shell脚本进行硬件功能模块的初始化(insert相关驱动.ko模块),并启动小车控制程序以及用于图像采集的视频解码程序。小车控制主程序将利用系统调用进入内核态通过硬件驱动完成对相关硬件的控制。使用android手机APP利用socket完成与小车间的进程通信,最终实现智能小车的无线控制。
智能小车系统方案框图如下: