嵌入式智能小车测控系统的设计与实现

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

万方数据
中华测控网
chinamca.corn
·358·
计算机测帚与控制
第18卷
无线串口通讯模块nRF401,作为智能小车与上位机的通 讯接口。nRF401采用FSK调制解调技术,具有通讯距离远、 低功耗,接口灵活特点H]。通过无线串口,上位机给智能小车 发送命令,同时接受智能小车反馈的参数信息。
控制器以三星公司32位处理器芯片——S3C2440A (ARM9内核)为控制器,¥3C2440A主频达533 MHz,并提 供丰富的输入输出端口、时钟源、PWM、外部中断接口。舵 机和直流电机为位置和速度控制的执行机构。 2智能小车控制系统硬件设计
图2控制器及外围部件框图
2.2导航单元 选择十二对红外收发对管RPR一220作为路径探测传感器,
十二对红外传感器“一”字排开作为智能小车的导航单元,安 装在车体的前端。为了提高抗干扰能力和节能,控制器通过十 二路通道定时发送高频通断信号驱动RPR一220传感器的发射 管。RPR-220接收管接收到的是模拟信号,控制器有两种方 式接收信息,一种是将模拟信号先经过放大电路,然后送给比 较器变成数字量信号再送给控制器;另一种是将模拟信号直接 传送给控制器的AD接口,这样做可简化外围电路,但AD转 化需要花费CPU时间,降低了智能小车对路径信息采集的实 时性,本文选择了前者。 2.3执行单元 2.3.1直流电机驱动和速度检测
ARM要求必须将中断向量表存放在规定的地址内,当有 中断发生时,CPU通过中断向量表中存放的跳转指令,转到 对应的中断服务程序。ARM要求异常中断向量表必须放在从 0地址开始的连续8×4字节空间,对应ARM的8种中断异常 情况。外部中断向量表放在从0x20到OxeO的连续地址空间。 本设计将中断向量表对应的中断处理程序入口地址统一存放在 SDRAM中从0x33FFFF00开始的一段连续的地址空间中。 3.2 I-C/OS-II的移植
[至委亘困篓墨兰蔓茎釜兰!茎篁!釜兰
:塑!
一I
II——●—_——●———●■———●—●———■————■■———●——●-—-——●_—————●—__————_—_●—●●■————————●■—●————■●■———●—●■——■—■—————●■——●———_
文章编号:1671—4598(2010)02—0357—03
霞舞始劲
匝圄, i固
图3应用程序软件流程图
处理器初始化时,通过配置¥3C2440A的PLL寄存器使 处理器工作在400M的系统频率下。“C/OS-II初始化时,0S— Init()初始化全局变量和数据结构,并创建具有最低优先级 和永远处于就绪状态的空闲任务OSTaskldle。调用0sTa— skCreate()函数创建优先级最高的MainTask任务,应用程 序划分为6个任务块来实现,这6个任务由主任务MainTask 创建,优先级依次降低,各个任务的详细功能描述如下。
中图分类号:TP242.6
文献标识码:A
嵌入式智能小车测控系统的设计与实现
董宗祥,石红瑞,杨 杰
(东华大学信息科学与技术学院,上海201620)
摘 耍:智能小车作为智能车辆的仿真车,是研究智能车辆的基础;介绍了智能小车测控系统的结构和软硬件实现;系统以ARM9 为控制器,采用肛C/OS-II操作系统,用红外传感器识别路径,采用模糊自适应PID控制策略得到控制量,并最终通过舵机和直流电机对 小车的位置和速度进行控制,测试结果表明,在该控制系统下,智能小车具有良好的位置跟踪和快速切换速度性能,该系统可以作为对 智能车辆进一步研究的平台。
本文设计的智能小车基于ARM9控制器和pc/os-II操作 系统。首先概述智能小车的系统结构,然后介绍控制器、导 航、无线串口通讯、执行等单元的硬件设计,接着分析“C/ OS-II操作系统的移植、路径提取方法和控制策略,最后在赛 道参数典型值为25 mm的标准道路上对智能小车的性能指标 做了测试,并对测试结果进行分析。
本文研究的用于位置控制,舵机选择的是FUTABA公司 的¥3010型扭力型伺服机,它直接由控制器输出的PWM信号 控制。舵机的转角和PWM的占空比存在一定的线性关系,控 制器只需改变PWM的占空比即可灵活地控制智能小车行进的 方向。舵机的响应速度为0.16sec/60(6.0V),本设计通过延 长力臂的方式增强对小车位置控制的实时性。
图1 (a)系统结构层次图
图1 (b)智能小车实物图 探测模块是智能小车的位置传感部分,起着导航的作用。 本文选用红外对射传感器作为探测装置。根据反射原理,智能 小车通过判断红外接收管的通断情况识别白色路面上的黑线, 并引导智能小车沿着黑色路径平稳地前进。 电源模块可以输出7.2V、6.0V、3.3V、5.0V电压,分 别为直流电机、舵机、控制器和外围电路提供能源。
系统启动后首先对处理器和外围电路进行初始化,然后初 始化“C/OS-II,创建任务,启动系统调度任务等工作。应用
中华测控网
chinamca.com
万方数据
第2期
董宗祥.等:嵌入式智能小车测控系统的设计与实现
·359·
程序主要由以下几部分组成:通讯模块,实时路径探测模块, 实时速度获取模块,位置和速度闭环控制模块,LCD显示模 块,电源监控模块。应用程序软件流程图如图3所示。
}tC/OS-II是一个可移植、固化、裁剪的占先式实时多任 务内核,它采用标准的ANSIC语言编写,使之可供不同架构 的微处理器使用[6]。ARM处理器完全满足t-C/OS-II移植到该 处理器上要求。
下面将移植过程与工作内容描述如下: ①OS—CPU.H中用#defines定义的与处理器相关的常 量,宏和类型定义。在此文件中设置OS—cRITICAL— METHOD的值为3,设置0S—STK—GR()wTH的值为1, 用typedef命令定义10种数据类型,定义堆栈的宽度为32位。 ②OS—CPU—C.C中编写6个函数,其中5个函数为钩 子函数只要声明没必要包含代码。另一个函数是oSTaskSt— klnit(),这个函数实现为任务初始化堆栈,被OSTaskCreate ()和OSTaskCreateExt()这两个函数调用,这里初始化了 处理器在任务切换时存入堆栈中的15个寄存器为LR、R0~
Key words:smart cari ARM9;ttC/OS-II;fuzzy auto-adjusted PID.
O 引言
近年来,随着智能交通、人工智能以及控制技术的发展, 智能车辆的研究在智能交通领域已成为热门课题L1]。但是,现 今对智能车辆的结构、运动特性、智能控制策略的研究并不完 善,因此有必要对智能车辆的仿真版本一智能小车做更深入的 研究。智能小车是一个集环境感知、动态决策与规划、行为控 制与执行等多种功能于一体的综合系统,涉及到传感器技术、 微处理器控制、信号处理、电机驱动、人工智能、驱动电源的 设计等诸多领域[2]。为了更逼真的模拟智能车辆,智能小车的 设计必须具备人工智能、信息交换、自我稳定等性能[3]。
文本选用的用于速度控制的直流电机型号为RS-380S,使 用H桥驱动芯片Mc33886驱动直流电机,采用两路PWM控制 驱动芯片为直流电机提供电流。选两路PWM可以方便地控制 电机的正反转,以达到反转刹车的作用。智能小车前行的过程 中受到电池电压降低、电磁场、轮胎磨擦、转向轮转向阻力等
不定闪素的干扰,开环控制无法满足性能要求,凶此闭环控制 是必须的。实施闭环控制须对速度进行实时探测,这里使用的 速度传感器型号为ISC3004旋转编码器,精确度达到360p/fi“。 2.3.2舵机控制
1智能小车系统结构
图1(a)为基于ARM9和gC/OS-II的智能小车控制系统 结构层次图,控制系统主要包括4个模块:探测模块,电源模 块,通信模块,控制和执行模块。图1(b)为智能小车实 物图。
收稿日期:2009—08—15f修回日期:2009—09—20. 作者简介:董宗祥(1981一),男,黑龙江人,硕士研究生,主要从事检 测与控制、嵌入式系统的研究。 石红瑞(1968一),女,博士,副教授,硕士生导师,主要从事过程控 制,仪器仪表方向的研究。
structure of the smart car was introduced and the hardware and the software were designed.The smart ear control system was designed on the ARM9 core controller and operated in gC/OS-II operation system。with the ultrasonic sensor as the navigation.Fuzzy auto-adjusted PID was used as control strategy and the position and the speed are controlled by steer motor and DC motor respectively.The test results indicate that,the smart car had a position track and fast speed switch performance under the control system.This system can be used as the platform for further study of intelligent auto.
3智能小车控制系统的软件设计
控制系统的软件设计分为3个层次:物理层、操作系统层 和任务层。物理层包括存储器分配、启动代码编写等底层软件 设计;操作系统层包括/,C/OS-II移植和任务的分配。任务层 主要包括路径提取和控制策略等应用程序的设计。 3.1物理层软件设计
本文设计的启动代码放在s3c2440init.S文件里,启动代 码实现定义人口地址,初始化堆栈和外部数据空间,设置中断 异常向量表,Nor Flash和Nand Flash启动选择,搬运程序wk.baidu.com SDRAM中,搬运完成后跳转到main函数执行。
R12、CPSR。
③在0s—CPU一八S文件里用汇编语言编写5个函数: OSCtxSw()——任务级的任务切换函数,OSIntCtxSw ()——中断级的任务切换函数,OSStartHighRdy()——优先 级最高的就绪任务函数,OS—CPU—IRQ—ISR()——lRQ中 断服务函数。0sTicklSR()——时钟节拍中断服务函数。 3.3应用程序的设计
智能小车的硬件是整个控制系统能否顺利运行的基础。硬 件以ARM9核控制芯片为控制器,用红外传感器识别路径, 使用舵机和直流电机分别进行位置控制和速度控制。硬件包 括:控制器及外围电路单元,导航单元,执行单元。 2.1控制器与外围电路单元
S3C2440A是整个控制系统的核心部件,它完成从导航单 元获取路径信息,采集瞬时速度,进行数据处理,控制算法运 算,输出控制量和上位机通讯等功能。为了使得控制器发挥更 稳定的处理性能,还需设计电源模块、复位电路、内存扩展、 LCD显示和JTAG调试等外围辅助电路,控制器与外围部件 框图如图2所示。
关麓词:智能小车,ARM9,“C/0§II;模糊自适应PID
Design and Implementation of Embedded Smart Car Measurement and Control System
Dong Zongxiang,Shi Hongrui,Yang Jie (College of Information Science&Technology,Donghua University,Shanghai 201620,China) Abstract:As an emulator of the intelligent auto,the smart car is the basic object for the research of intelligent auto.In this paper。the
相关文档
最新文档