基于DSP2407的自动避障小车系统设计

上海电力学院DSP原理与应用课程设计论文

设计名称基于DSP2407的自动避障小车系统设计

院(系)

专业

班级

学生姓名

学号

指导老师

目录

摘要 (3)

小车避障系统设计的意义 (3)

设计功能概述 (4)

硬件选择 (4)

电机驱动模块 (6)

传感器系统 (7)

壁障模块 (8)

电源电路的选型 (9)

整体构思 (9)

避障电路 (10)

电机驱动电路 (11)

避障小车设计 (12)

1、自动避障小车总体设计 (12)

2、自动避障小车的硬件设计 (12)

3、自动避障小车的软件设计 (16)

4、结论 (18)

参考文献 (19)

基于DSP2407的自动避障小车系统设计

摘要

随着电子技术的发展、数字信号处理器(DSP)的广泛应用和传感技术的突破性发展,基于DSP实现的控制技术已被许多系统所采用。由于DSP器件具有较高的集成度,具有比单片机更快的CPU,更大容量的存储器,内置有波特率发生器和fifo缓冲器,提供高速同步串口和标准异步串口,最为突出的是,DSP器件精简的指令系统(大多数指令能在一个指令周期内完成)、独立的程序和数据空间等使其具有高速的数据运算能力,使设计出结构简单性能优越的矢量控制调速系统成为可能,因此DSP越来越多地被应用于电机控制中。

小车避障系统设计的意义

自第一台工业机器人诞生以来,机器人的发展已经遍及机械、电子、冶金、交通、宇航、国防等领域。近年来机器人的智能水平不断提高,并且迅速地改变着人们的生活方式。人们在不断探讨、改造、认识自然的过程中,制造能替代人劳动的机器一直是人类的梦想。

随着科学技术的发展,机器人的感觉传感器种类越来越多,其中视觉传感器成为自动行走和驾驶的重要部件。视觉的典型应用领域为自主式智能导航系统,对于视觉的各种技术而言图像处理技术已相当发达,而基于图像的理解技术还很落后,机器视觉需要通过大量的运算也只能识别一些结构化环境简单的目标。视觉传感器的核心器件是摄像管或CCD,目前的CCD已能做到自动聚焦。但CCD传感器的价格、体积和使用方式上并不占优势,因此在不要求清晰图像只需要粗略感觉的系统中考虑使用接近觉传感器是一种实用有效的方法。

机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。避障控制系统是基于自动导引小车(AVG—auto-guide vehicle)系统,基于它的智能小车实现自动识别路线,判断并自动避开障碍,选择正确的行进路线。使用传感器感知路线和障碍并作出判断和相应的执行动作。

随着生产自动化的发展需要,机器人已经越来越广泛地应用到生产自动化上,随着科学技术的发展,机器人的传感器种类也越来越多,其中红外传感器已经成为自动行走和驾驶的重要部件。避障小车是一种移动机器人,它通过传感器

系统感知外界环境,在复杂环境中自主移动并完成避障,一般采用超声波、红外、激光、CCD等传感器设计。由于红外传感器探测视角小。方向性强,测量精度高,价格便宜,而且可在夜间工作,因此红外传感器作为视觉应用于移动机器人避障。本次设计是以TI公司生产的TMS320LF2407型DSP为核心,采集环境信息并控制智能小车,3个红外发收传感器检测智能小车前方的障碍物,并且根据障碍物位置进行自动避障。

红外的典型应用领域为自主式智能导航系统,机器人要实现自动避障功能就必须要感知障碍物,感知障碍物相当给机器人一个视觉功能。智能避障是基于红外传感系统,采用红外传感器实现前方障碍物检测,并判断障碍物远近。

设计功能概述

功能概述

智能小车采用前轮驱动,前轮左右两边各用一个电机驱动,分别控制两个轮子的转动从而达到转向的目的,后轮是万向轮,起支撑的作用。将三个红外线光电传感器分别装在车体的左中右,当车的左边的传感器检测到障碍物时,主控芯片控制右轮电机停止左轮转动,车向右方转向,当车的右边传感器检测到障碍物时,主控芯片控制左轮电机停止转动,车向左方转向,当前面有障碍物时规定车右转。于此同时测定速度并显示,在避障小车前进的同时从LCD点阵液晶显示器上显示小车当时速度。在小车左转或右转时在显示器上显示出左或右。

硬件选择

TMS320LF2407芯片简介

TMS320LF240x系列简介

TMS320LF240x系列是TMS320C2000家族中最新、功能强大的DSP芯片,其中LF2407是最具有革命性的产品,是当今世界上集成度较高、性能较强的运动控制芯片,特别适合于三相异步电动机的高性能控制。它与现存240x DSP控制器芯片代码兼容的同时,240x芯片具有处理性能更好(30mips)、外设集成度更高、程序存储器更大、A/D转换速度更快等优点,是电机数字化控制的升级产品。TMS320LF2407(简称2407)是TI公司专门为工业控制领域量身定做的一款高性能、低功耗、高性价比的16位定点DSP芯片。2407继承了TMS320F240x系列芯片在数字电机控制(DMC)方面的优势,同时还提供相当丰富的外设资源,是一款

相当不错的芯片,为工业系统的控制器设计提供了一个很好的解决方案。2407芯片是一款16位定点DSP芯片。它是TI的TMS320LF240x系列芯片的超集,时钟达到30MHz(TMS320LF2407A为40 MHz),片内资源包括:2.5K RAM、32K Flash、BOOT ROM、16路10位A/D转换器、2个事件管理器(包括16个16位PWM模块、4个16位通用定时器、6个捕获单元等)、外部存储器接口、看门狗模块、SCl/SPI 接口、CAN控制器、PLL电路、40个通用I/0口、5个外部中断口,符合1EEEll49.1规范的JTAG接口(便于仿真调试和最终程序下载)。

TMS320LF240x系列主要特点

(1)两个事件管理器模块eva和evb,为开发者提供完整的、高效的马达控

制方案,提供所有的pwm和io,可以控制所有类型的电机。

(2) 采用高性能静态cmos技术,使得供电电压降为3.3v,减少了控制器的

损耗;30mips的执行速度使得指令周期缩短到33ns,从而提高了控制器的实时控制能力。

(3) 片内有高达32k×16位的flash程序存储器;高达2.5k字×16位的数

据/程序ram;544字节双端口ram(daram);2k字的单口ram(saram)。

(4) 可扩展的外部存储器总共具有192k×16位的空间,分别为64k字程序

存储器空间、64k字的数据存储空间和64k字的i/o空间。

(5) 10位ADC转换器,其特性为:最小转换时间为500ns、8个或16个多

路复用的输入通道,采集时间和转换时间分开,提高了采样率和输入阻抗,并且支持自动顺序采样,不需CPU干预。

(6) CAN总线控制器可以为控制器、传感器、激励源以及其它节点提供良好

的通讯,特别适用于工业现场和汽车等强噪声和恶劣的环境中。

(7) 5个外部中断(两个驱动保护、复位和两个可屏蔽中断)。

本次课程设计采用TI公司的DSP芯片:TMS320LF2407。TMS320LF2407芯片图如下:

图1 TMS320LF2407

智能小车

智能小车可通过简单的I/0控制实现小车的前进、后退、左转和右转等功能。智能小车分为车体和控制板两部分,控制板将来自DSP芯片I/O口引脚的控制信号转换为电机的驱动信号以驱动电机使车轮运转,小车的驱动和转向由左右两轮驱动实现,左右轮的驱动电路是全桥驱动电路,双电机四轮驱动。小车的工作电压为直流4-6V,车速是0.6m/s.

电机驱动模块

方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整。此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。

方案二:采用电阻网络或数字电位器调节电动机的分压,从而达到分压的目的。但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅会降低效率,而且实

现很困难。

方案三:使用功率三极管作为功率放大器的输出控制直流电机。线性型驱动的电路结构和原理简单,成本低,加速能力强,采用由达林顿管组成的H型PWM 电路。用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。这种电路由于工作在管子的饱和截止模式下,效率非常高;H型保证了简单的实现转速和方向的控制;电子管的开关速度很快,稳定性也极强,是一种广泛采用的PWM调速技术。

这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。

传感器系统

方案一:反射式红外发射—接收装置,只有物体反射红外光时才有信号输入,其信号强度与小车距障碍物的距离成正比。因此可利用信号强度作为避障依据。

红外探测器的选型与工作方式:

1、红外探测器的选型

红外探测器以其发射功率大、抗干扰能力强而在工业生产中有着广泛的应用,红外探测器按其工作模式可大致分为主动式与被动式,主动式红外探测器自带红外光源,通过对光源的遮挡、反射、折射等光学手段可以完成对被探测物体位置的判别。被动式红外探测器本身没有光源,通过接受被探测物体的特征光谱辐射来测量被探测物的位置、温度或进行红外成像。直流直接驱动方式装置简单但检测距离和抗干扰能力都比较差;交流调制方式由于可以采用交流耦合方式解决了放大器的直流漂移问题从而可以大大提高检测的距离,同时由于环境光产生的干扰多数情况是信号的直流或低频分量可以由滤波器加以隔绝,因此交流调试方式抗干扰能力也比较强,缺点是系统相对复杂。在本课程设计中要利用红外探测器检测障碍物的距离,显然选用主动式红外传感器比较合适,系统的造价可以降低可靠性可以提高。

主动式红外传感器又可分为分立元件型、透射遮挡型和反射型(如图2示),分立元件型发光管与接收管相互独立,用户在使用时可以根据需要灵活的设定发光管与接受管的位置,并可利用棱镜、透镜等完成特殊的目的,缺点是装置麻烦。透射遮挡型和反射型通过塑料模具将发光管与接收管封装在一起,非常方便用户使用,在本题中对障碍物的检测我使用反射型。

2、主动式红外探测器的工作方式选取

主动式红外探测器常用的驱动方式可分为直流直接驱动方式和交流调制方式,直流直接驱动方式装置简单但检测距离和抗干扰能力都比较差;交流调制方式由于可以采用交流耦合方式解决了放大器的直流漂移问题从而可以大大提高检测的距离,同时由于环境光产生的干扰多数情况是信号的直流或低频分量可以由滤波器加以隔绝,因此交流调试方式抗干扰能力也比较强,缺点是系统相对复杂。

方案二:采用反射式超声波换能器,只有物体反射超声波时才有信号输入,测量发射接收信号间的时间差T2-T1,利用其可以得到障碍物的距离,将该信息送给单片机,单片机发出控制信号改变小车的转向,使小车不与障碍物发生接触。该方法适合较远距离障碍物检测。

反射式超声波换能器成本高,电路设计复杂,因为不要求检测的很远,于是选自了反射式光电传感器,在课题中对前方障碍物的检测因为要求检测距离较远,受到环境光的干扰比较大,因此我们选用抗干扰能力较强的交流调制工作方式;而对小车侧面障碍物的检测由于要求检测距离较近,外界干扰相对较弱,为简化设计我们选用直流直接驱动方式。

壁障模块

在壁障模块中,可以选择超声波壁障。其优点是反应速度灵敏,距离远,受外界干扰小。但是,如果利用超声波传感器进行壁障的话,由于空间小声波在小空间不同方向里会进行多次反射,左右前后的传感器之间相互干扰,使控制中心不能明确判断出那个方位遇到了障碍物,从而动作紊乱,不能实现要求。使用红外接收头和发射管配合,利用38k 频率解决灵敏度问题。38K 调制和发射电路。使用一个定时器的快速PWM 模式产生38K 调制信号,通过剩余的四个施密特触发器(有2个已经用在光电编码部分)缓冲,推动8050三极管和红外发光管来发射已经调制的红外线。其中2个1N4148接IO 脚,控制左右红外发光管轮流发射。后面串接的可见光LED 是为了方便用户调试而设臵的,让用户知道当前是否在发射红外线。通过调节PWM 的占空比,调节红外发光管的亮度,

从而实现调节感知红外发光管 红外接收管

分立元件型

透射遮挡型

反射型

图2红外探测器的形式

障碍物距离的功能。利用红外传感器,其优点是对近距离的障碍物反应速度灵敏,不同方位的传感器之间信号不会相互干扰,造成误动作。缺点是距离近,易受到自然光的干扰。经过两种传感器性能对比与题目要求的综合考虑分析,最终选择红外传感器作为小车的眼睛,进行壁障。

电源电路的选型

方案一:所有器件采用单一电源(6节AA 电池)。这样供电比较简单;但是由于电动机启动瞬间电流很大,而且PWM 驱动的电动机电流波动较大,会造成电压不稳、有毛刺等干扰,严重时可能造成单片机系统掉电,缺点十分明显。

图3 稳压电路

方案二:双电源供电。将电动机驱动电源与单片机及其周边电路电源完全隔离,利用光电耦合器传输信号。这样做法虽然不如单电源方便灵活,但可将电动机驱动所造成的干扰完全消除,进一步提高系统稳定性。

整体构思

经过方案论证的过程之后,我选定了仅采用LF2407作为核心部件的方案,其系统总方框图如图4所示。

具体的功能设置已通过该图做了直观的说明。通过主控芯片控制各传感器输入的信号,控制方式由软件来实现,其中包括六个红外传感器用来检测障碍物,四个传感器用来检测侧面障碍,2个检测前方障碍。还有一个霍尔传感器用来检测路程相关的信号;除了处理这些信号单片机还通过I/O 口控制直流电机和LED 的显示。在功能和作用上,我分成了四大部分:主控、驱动、避障和显示部分。

1

2

J4

Vin 3A D J 1+Vout 2LM338U14104

C14

IN4001

D1

25V/470uF C22

RES4R60104

C15VCC GND

RES4R1025V/470uF C1

图2-1 系统总原理框图 避障电路

(1)障碍物探测方案的选择

方案一:脉冲调制的反射式红外线发射接受器。由于采用该有交流分量的调制信号,则可大幅度减少外界干扰;另外红外线接受管的最大工作电流取决于平均电流。如果采用占空比小的调制信号,再品均电流不变的情况下,顺势电流很大(50—100mA ),则大大提高了信噪比。并且其反应灵敏,外围电路也很简单。它的优点是消除了外界光线的干扰提高了灵敏度。

方案二:采用超声波传感器,如果传感器接收到反射的超声波,则通知单片机前方有障碍物,如则通知单片机可以向前行驶。市场上很多红外光电探头也都是基于这个原理。这样不但能准确完成测量,而且能避免电路的复杂性。

由以上两种方案比较可知。方案二要比方案一优势大,市场上很多红外观点探头也都基于这个原理。其电路简单,工作可靠,性能比较稳定。从而避免了电路的复杂性。

避障电路采用漫反射式光电开关进行避障。光电开关是集发射头和接收头于一体的检测开关,其工作原理是根据发射头发出的光束,被障碍物反射,接收头据此做出判断是否有障碍物。当有光线反射回来时,输出低电平;当没有光线反射回来时,输出高电平。单片机根据接收头电平的高低做出相应控制,避免小车LED 显示模块(时间、里程) TMS320LF2407 侧体左侧红外传感器 车体右侧红外传感器 车体左前红外传感器 车体右前红外传感器 控制直流电机驱动器 路程传感器

碰到障碍物,由于接收管输出TTL电平,有利于单片机对信号的处理。光电开关工作原理:光电开关是通过把光强度的变化转换成电信号的变化来实现控制的。光电开关在一般情况下,有三部分构成,它们分为:发送器、接收器和检测电路。

避障电路如下:

电机驱动电路

市场上用很多种类的小电压直流电动机,很方便的选择到。主要有普通电动机、和步进电动机。

方案一:采用步进电机,步进电动机的一个显著的特点就是具有快速启动和停止能力,能够达到我们所要求的标准。如果负荷不超过步进电机所能提供的动态转矩值,就能够立即是步进电机启动或反转。其转换灵敏度比较高。正转、反转控制灵活。但是步进电机的价格比较昂贵,对于我们的现状相差太远。

方案二:采用普通的直流电机。直流电机具有优良的调速特性,调速平滑、方便。调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无极快速启动、制动和反转。能满足各种不容的特殊运行要求。

由于普通直流电机价格适宜,更易于购买,并且电路相对简单,因此采用直流电机作为动力源本设计采用差分放大驱动使电机正反转从而做到前进,左转右转。采用四个大功率晶体管组成H桥式电路,四个大功率晶体管分为两组,交替导通和截止,用单片机控制使之工作在开关状态,进而控制电机的运行。该控制电路由于四个大功率晶体管只工作在饱和与截止状态下,效率非常高,并且大功率晶体管开关的速度很快,稳定性也极强,是一种广泛采用的电路。

避障小车设计

1、自动避障小车总体设计

该系统主要由DSP控制、电机驱动、电源、测速以及视觉等模块组成,其结构如图1所示。

小车为3轮结构,前面2个轮分别由2个电机独立驱动控制,后面1个万向轮作为支撑轮。小车安装有3个红外传感器,分别位于车头的左、中、右部位,用于采集环境信息。速度控制采用定频调宽的PWM调速,并应用速度反馈和闭环PID控制,从而实现小车精确的速度和位置控制。

2、自动避障小车的硬件设计

该系统以DSP TMS320LF2407为核心,该DSP片内资源丰富,具有电机控制的独特资源,12路脉宽调制(PWM)输出。视觉模块采用E3FDS3-0P1型红外传感器,有效探测距离为30 cm,探测角度30°。将3个红外传感器分别接至I/OPE 接口的I/OPE4、I/OPE5和I/OPE6。由于光电开关正常状态时信号高电平为5 V,而DSP标准高电平为3.3 V,所以应在光电开关与DSP之间串联分压电阻。电源采用12 V蓄电池供电。DSP是以+3.3 V电压供电,因此必须将+12 V标准电压转换成+3.3 V。该系统采用LM7805与MAX604作为电源转换器。12 V电源

首先经LM7805调压到5 V,先将5 V电压送入红外传感器,再送入MAX604降压为3.3 V,如图2所示。

采用L298驱动电机,0UTl,0UT2分别与小车的一个电机的正负极相连;OUT3,OUT4分别与小车的另一个电机的正负极相连;L298的INl和IN2引脚分别与DSP 的IOPE0(方向4)、IOPE1(方向3)引脚连接,用于接收主控器件输出的转向电机的动作指令,并通过0UTl和OUT2控制左电机的正转与反转,L298的IN3、IN4引脚分别与DSP的IOPE2(方向2)、IOPE3(方向1)引脚连接,用于接收主控器件输出的驱动电机的动作指令,并通过0UT3,OUT4控制前方右电机的正转与反转,而ENA和ENB引脚分别连接到DSP的IOPE0(PWM3)、IOPEl(PWM4)引脚,用于控制电机的速度,

其电路原理图如图3所示。

L298分别控制并调整前面2个电机的旋转方向,控制小车的前进、后退、向左、向右、停止。由于小车采用三轮结构,前面2个轮既是动力轮又是方向轮,当INl、IN2、ENA分别为l、0、1,同时IN3、IN4、ENB分别为0、l、l时,小车前进;当INl、IN2、ENA分别为1、O、l,同时IN3、IN4、ENB分别为l、0、l时,小车右转;当INl、IN2、ENA分别为0、1,1,同时IN3、IN4、ENB分别为1、0、1时,小车左转。

采用测速电机测量电机转速,以此判断速度。电机转速转换为电脉冲信号,其输出经过HD74HCl4P(HD74HCl4P内部有若干反相器电路,可完成寄存器复位),送至DSP的PA3(CAPl)和PA4(CAP2)引脚,根据软件设置使计数器对脉冲信号上升沿进行递增计数。如图4所示。

3、自动避障小车的软件设计

DSP每隔一段时间对I/OPE4,I/OPE5,I/OPE6这3个端口进行查询,没有障碍物时这3个端口为高电平。即111,左边有障碍物时为011,右边有障碍物时为110。前方有障碍物时则为010。小车根据红外传感器接收的信号判断前方障碍物的分布并做出相应的动作,如表1所示。

小车在普通情况下(无障碍物)处于前进状态,当T3定时器发生周期中断时,进入程序开始检测光电开关的信号线端口,如果有障碍物则从避障程序中选择一个执行(左转、右转、后转),进行避障动作,如果没有障碍物则小车继续前进并且等待定时器的下一次中断,其程序流程如图5所示。

调节PID参数不仅可实现系统稳定。还能兼顾系统的带载能力和抗扰能力。首先应找出小车的理想速度,这是PID调节的前提,也是加入测速的原因。由于

测速电机测得的是小车右轮实际速度。先给小车右轮电机一个初始速度,让小车以给定的初始速度运转起来。然后利用PID算法调速:在给定速度不变的情况下,每扫描一次程序。小车的实际反馈速度便与理想速度相比较,利用PID算法便可更新给定值。这样,不断更新给定值,直到实际速度与理想速度保持一致或者到下一次赋值则停止更新(ek=O)。程序流程如图6所示,图6中,设右轮给定速度v对应的理想速度为V,仅限右轮电机,b’为给定速度b对应的实际速度。

主程序框图如下:

图 主程序框图

4、结论

本方案对避障小车的设计进行分析后,提出了在DSPTMS320LF2407技术平台上实现小车自动检测前方障碍物,并给出躲避动作方法。避障车最终实现了从无障碍地区启动前进,利用车体前端传感器感应前进路线上的障碍物后,并且根据障碍物的位置选择下一步行进方向,避开障碍物。由于红外传感器探测信息有限(只能探测障碍物的有无,无法得到距离信息),不能够判断障碍物的距离、大小及形状等。如果使用摄像头作为视觉探测系统,则可使避障小车性能更好,应用范围更广泛。

这次设计我学到了直流电机、红外线传感器、霍尔传感器的使用,更重要的是学会了独立解决问题,养成独立思考的好习惯。我认为,在这次的课程设计中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。更重开 始 初始化MCU 初始化7289 启动小车前行 是否有障? 左侧 左前或前 右前 右侧 右避子程序 左避子程序 避左前障碍程序 避右前障碍程序 距离显示 返回

N Y

要的是,在课程设计上,我们学会了很多实用的方法。而这是日后最实用的,真的是受益匪浅。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。这对于我们的将来也有很大的帮助。以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。

参考文献

[1] 谢自美·电子线路设计.试验.测试 [M] ·华中科技大学出版社,2004

[2] 宗光华·机器人的创意设计与实践 [M] ·北京航空航天大学出版社,

2004

[3] 肖景和·红外线热释电与超声波遥控电路[M] ·人民邮电出版社,2003

相关文档
最新文档