收藏 分销(赏)

基于DSP的全向运动控制系统软件设计毕业设计.doc

上传人:快乐****生活 文档编号:5175736 上传时间:2024-10-28 格式:DOC 页数:48 大小:2.84MB
下载 相关 举报
基于DSP的全向运动控制系统软件设计毕业设计.doc_第1页
第1页 / 共48页
基于DSP的全向运动控制系统软件设计毕业设计.doc_第2页
第2页 / 共48页
基于DSP的全向运动控制系统软件设计毕业设计.doc_第3页
第3页 / 共48页
基于DSP的全向运动控制系统软件设计毕业设计.doc_第4页
第4页 / 共48页
基于DSP的全向运动控制系统软件设计毕业设计.doc_第5页
第5页 / 共48页
点击查看更多>>
资源描述

1、基于DSP的全向运动控制系统软件设计南 阳 理 工 学 院本科生毕业设计(论文)学院(系): 电子与电气工程系 专 业: 自 动 化 学 生: 指导教师 : 完成日期 2011 年 5 月 南阳理工学院本科生毕业设计(论文)基于DSP的全向运动控制系统软件设计Software Design of Omni-directional Motion Control System Based on DSP总 计 : 42 页表 格 : 5 个插 图 : 31 幅南 阳 理 工 学 院 本 科 毕 业 设 计(论文)基于DSP的全向运动控制系统软件设计Software Design of Omni-di

2、rectional Motion Control System Based on DSP学 院(系): 电子与电气工程系 专 业: 自动化 学 生 姓 名: 学 号: 指 导 教 师(职称): 评 阅 教 师: 完 成 日 期: 南阳理工学院Nanyang Institute of Technology基于DSP的全向运动控制系统软件设计 基于DSP的全向运动控制系统软件设计自动化专业 摘 要 本文基于DSP C2000系列TMS320LF2407A核心控制芯片,以CCStudio V3.3软件为开发平台,在了解RoboCup中型组足球机器人和其他全向机器人的基础上,主要完成了全向运动控制系统

3、的软件设计。通过对全向运动控制系统的研究,建立了三轴全向运动学数学模型,并对整体平移运动、原地旋转运动、边平移边旋转三种运动方式进行分析和数学建模;利用上位机,经无线模块发送运动方式和各种运行参数,控制运动系统实现各种运动模式;经全向运动控制系统软件的编写和与相关硬件联机调试,系统实现了预订的全向运动形式。通过试验验证和结果分析,各种运动状态的准确性已达到性能的基本要求。关键词 DSP;全向运动控制; 数学建模 ;MATLAB仿真 ;串行通信;软件设计Software Design of Omni-directional Motion Control System Based on DSP A

4、utomation Specialty LI HaiqingAbstract: This article is based on The TMS320LF2407A in the series of DSP C2000 as the control core chip and the software of CCStudio V3.3 as the development platform. It is basis on the understanding of medium-sized group about soccer robot in Robocup and other omnidir

5、ectional robot, mainly accomplish the software design of a Omni-directional Motion Control System. Through the research to the motion control system, motion control system was established to all three axis kinematics mathematic model, build the mathematical modeling and analysis three kind of moveme

6、nt ,which include the whole translation movement, spin around movement and edge translation and rotating.Using the PC, The wireless module to send the movement and a variety of operating parameters, control motion system to achieve a variety of motion modes; By the whole motion control system softwa

7、re to write and online calibration with relevant hardware, the system realized the omnidirectional movement we expected. Through the results analysis and experimental verification, the accuracy have already meet requirements of various sports state.Key Words: DSP; omnidirectional motion control; mat

8、hematical modeling; MATLAB simulation; serial communication;software design目 录1 引言11.1 全向运动控制系统发展现状11.2 本课题的研究意义及前景21.3 论文组织结构32 全向运动控制系统分析32.1 全向运动控制系统运动学模型建立32.2不同运动方式的运动特性52.2.1 平移运动52.2.2 原地旋转运动72.3.3边平移边旋转运动83 基于DSP的硬件系统简介83.1 控制芯片选择83.2 硬件系统结构图93.3 硬件系统基本模块104 系统运动控制的MATLAB仿真134.1 电机PID控制134.2

9、 转速检测144.3 MATLAB仿真155 系统软件设计165.1 软件开发平台及仿真器165.2 运动控制软件设计185.2.1 主程序185.2.2 三种基本运动状态子程序195.2.3 电机控制子程序205.2.4 无线发送子程序205.3 上位机软件及通讯协议216 实验验证及结果分析226.1试验场地236.2 各项性能测试246.2.1 速度PID测试246.2.2 平移运动测试246.2.3 原地旋转测试256.2.4 平移+旋转运动测试266.3 影响因素分析26结束语28参考文献29附录30致谢42III基于DSP的全向运动控制系统软件设计1 引言随着机器人技术的日新月异,

10、机器人应用领域也已从工业走向普通生活。机器人技术已经在人们的生活中越来越发挥着重要的作用。作为机器人中的全向运动机器人,有着其特殊的运动形式,即可以不改变姿势向任何方向运动,找到最佳位置。同时也可以边往某个方向运动,边调整自身的姿势达到最佳运动效果,可以在平面内完美的往任何方向做三自由度运动。全向运动机器人其高灵活度,势必会在机器人领域发挥不可代替的作用。在全向运动机器人中现阶段比较常见的是三轮结构和四轮结构(如图1所示)。通过控制各个轮子间相互协调运动达到全方位的运动效果,包括全方位平移、全方位边平移边旋转和原地旋转运动形式。图1 三轮和四轮的结构模型1.1 全向运动控制系统发展现状在机器人

11、高速发展的今天,机器人的使用越来越广泛,如用于军事、勘探、工业和家居等等。中国要想变成世界强国,也必须重视起机器人技术。同时机器人技术不能只靠少量研究人员,必须从学生时代培养机器人技术。只有这样中国的机器人事业才会涌现大批的人才,能够加速机器人技术的发展。同时机器人技术本身是对电子技术的一个集合运用,从学生时代从事机器人技术的学习研究的过程,不但对机器人技术加速发展,还带动中国其它电子技术的发展,带动科技强国,科技富国。全向运动机器人是移动机器人中的一部分,其高灵活性和准确性越来越突出其优越性。现在在全向运动机器人方面使用较多的是RoboCup中型组足球机器人(如图2)。1997年成立于日本,

12、足球机器人作为人工智能的一个重要组成部分,已是当前机器人研究领域最为活跃的领域之一1。RoboCup以机器人足球作为中心研究课题,通过举办机器人足球比赛,旨在促进人工智能、机器人技术及其相关学科的发展。RoboCup的最终目标是在2050年成立一支完全自主的拟人机器人足球队,能够与人类进行一场真正意义上的足球赛。RoboCup的最终目标是:到21世纪中叶,一支完全自治的人形机器人足球队应该能在遵循国际足联正式规则的比赛中,战胜最近的人类世界杯冠军队。要想实现足球机器人灵活自如的“踢足球”,传统的三轮和四轮结构移动不够灵活已经被淘汰,现在使用的是三轮和四轮结构配备全向轮的全向运动机器人。可以不做

13、任何准备的情况下朝球移动,并且可以边移动边调整踢球姿态已达到最近效果。对然全向运动机器人有了很多,但是很多都在实验室,还不能在实际的环境使用,全向运动机器人还需要很长的时间发展。图2 RoboCup中型组机器人1.2 本课题的研究意义及前景随着机器人技术的发展,机器人从工业走进生活中。国外很多国家已经研制出很多全方位机器人,应用领域不断扩大,如导游机器人、导购机器人、电动轮椅、平稳的测量装置、医院巡视病房机器人和仓库作业机器人等。这些机器人很大程度上代替了人大劳动,提高了人的生活质量。如图3是三种全向机器人。全向运动机器人在社会服务、教育、娱乐、军事和环境探测领域都将发挥着不可代替的作用。其未

14、来的应用前景将十分广阔2。图3 三种全向机器人1.3 论文组织结构 本设计内容安排分为6章,其各章节的内如安排如下:第1章:引言。介绍此课题的现状和未来发展前景。第2章:全向运动控制系统分析。建立全向运动数学模型,对模型进行力的分解合成,计算各种运动状态下各电机运动公式。分别分析了全向运动三种基本运动形式:平移运动、原地旋转运动、平移+旋转运动。第3章:DSP及相关控制系统。选择TMS320LF2407A为核心控制芯片,选择电机、驱动模块、显示模块、无线通讯模块、电源模块等等,组建硬件系统第4章:系统运动控制部分的设计和MATLAB仿真。根据系统运动形式计算好各个电机矢量速度,如何能让电机稳准

15、快的执行设定的矢量速度是运送形式是否实现的关键。本设计采用传统的PID增量式控制方式及MALTAB仿真来实现。第5章:系统软件设计。根据建立数学模型及外设资源设计系统结构和系统流程图,通过CCS3.3编写系统程序,利用上位机和无线传输模块对机器人运动形式进行控制,其中也包括建立简单的无线通讯协议。第6章:试验验证及结果分析。通过前几章设计出了全向机器人,本章主要是通过试验验证各种运动形式是否达到要求,并对结果进行分析。2 全向运动控制系统分析2.1 全向运动控制系统运动学模型建立在引言中介绍了全向运动控制的几种结构,本设计选用三轮结构构建全向运动系统34。其结构图和实物付如图4所示 。 (a)

16、 结构图 (b) 实物图 图4 全向结构图和实物图其中三个驱动轮的旋转轴互相成120 夹角,且驱动轮中心到整体系统中心的距离L1=L2=L3。为实现全向运动控制,首先对系统进行运动方式建模5,建立运动学模型。对全向机器人的运动学模型(图5所示)进行分析并对控制算法进行研究。要由图5中(a)图所示,小车运行在二维平面内,世界坐标系X-Y和机器人坐标系。为X与的夹角,为驱动轮与的夹角,驱动轮之间的夹角为120o角。(i=1,2,3)为机器人中心到驱动轮中心的距离,由于本设计使用的瑞典轮在旋转的时候对地面的接触位置一直在变化,会造成驱动轮与机器人中心的距离也一直在变化,但变化值比较小。为方便建立运动

17、学模型及计算取L=L1=L2=L3。(i=1,2,3)为驱动轮提供沿驱动方向的速度,规定方向逆时针为正。由图5中(b)所示,V为机器人系统整体速度,世界坐标X-Y坐标系中X轴与整体速度V的逆时针夹角为,在世界坐标系中将整体速度V分解成沿X轴和Y轴的速度分别为和。 (a) 运动学建模 (b) 系统整体速度矢量分解图5 运动学模型根据运动学模型分析出各个驱动轮的速度为下式(1): (1)式(1)中:由机械结构可知=30 o,取逆时针为正,为角速度且逆时针为正。将这些已知的值代入式(1)中得到式(2)。 (2)由式(2)写出矩阵形式,即式(3)。 (3)所以在任意时刻,小车的运动形态就是 。在实际中

18、,路径规划、位姿控制,通过矢量分解、坐标变化,即可转换为对机器人每个轴驱动电机的运动控制。为使模型成立,机器人应该符合以下几点要求:(1) 驱动轮与地面有足够的摩擦力,不存在打滑现象。(2) 小车的构造及安装位置应尽量精确。(3) 各个驱动轮速度应在电机提供的最高速之内-Vmax Vmax。(4) 忽略驱动轮转动过程中L的变化,取L=L1=L2=L3。(5) 车的重量均匀分布三个驱动轮上。2.2不同运动方式的运动特性 全向运动的运动形式大体可分为平移运动、原地旋转运动、边平移边旋转运动三种运动形式。三种运动形式有着不同的运动特性,以下将分三小节对三种运动形式进行单独分析。2.2.1 平移运动平

19、移是基本的也是比较常用的运动形式。由于是平移不考虑旋转运动,我们将模型进行简化,其简化后运动学模型图如图6所示。 (a) 平移模型 (b) 系统整体平移模型图6 简化后运动运动学模型单独考虑平移运动故将式(3)进行简化为式(4): (4)假设小车整体平移矢量速度为V,与X轴成角。所以我们可以分解为和,其分解公式为式(5)。 (5)由式(4)和式(5)我们可以得到三个驱动轮的速度,见式(6)。 (6)驱动轮速度、的速度范围都是。的值则由电机性能决定。通过式(6)我们可以反向推导出平移速度V的速度范围。如图7,其中圆是以驱动轮最大速度大小为半径的圆,红色速度V与X轴的角度为,随着由0360变化V的

20、轨迹为红色正六边形。其中最大速度为。图7 平移最大速度模型2.2.2 原地旋转运动全向机器人不但要平移,而且很多时候都需要转向,转向运动分为原地旋转运动和边平移边旋转运动。原地旋转是旋转的最基本运动形式,边平移边旋转运动将在下节中阐述,本节主要分析原地旋转运动形式。原地旋转运动时V=0,即和都为0,所以由式(2)可的下式(7)。 (7)其中为角速度,逆时针为正。所以可以得知三个驱动电机的矢量速度是相同的。为了表述直观,建立原地旋转运动模型,其模型图如图8所示。图8 原地旋转运动模型2.3.3边平移边旋转运动 边平移边旋转运动方式是全向运动中较为复杂的运动方式,即不做任何准备动作的前提下往任何方

21、向运动并且可以边运动边调整自身姿态。 这种运动形式是平移与旋转的合成。在前文2.1中已经推导出公式(1)。此处不再过多叙述。3 基于DSP的硬件系统简介3.1 控制芯片选择作为运动控制系统的核心控制芯片,根据以往在实验室的经验,其核心控制芯片当属DSP C2000系类。C2000系类对于运动控制有着诸多的优点,本设计采用C2000系类TMS320LF2407A的控制板。TMS320LF2407A主要特点如下: 高性能、高速度:集成了高性能的DSP内核和微处理器的片内外设;每秒4000万条指令(40MIPS)的处理速度。 高可靠性、可编程性:TMS320LF2407A的16位定点DSP内核为模拟

22、系统的设计者提供了一个不牺牲系统精度和性能的数字解决方案。 两个事件管理器模块EVA和EVB,可以提供完整的、高效的电机控制方案,提供所有的PWM(8个16位脉冲调制通道)和IO,可以控制所有类型的电机。 采用高性能静态CMOS技术,使得供电电压降为3.3V,减少了控制器的损耗。 片内有高达32K16位的Flash程序存储器:高达2.5K字16位的数据/程序RAM;544字节的双端口RAM(DARAM);2K字的单口RAM(SARAM)。 可扩展的外部存储器总共具有192K16位的空间,分别为64K字的程序存储器空间、64K字的数据存储空间和64K字的I/O空间。 10位ADC转换器,其特性为

23、:最小转换时间为500ns、8个或16个多路复用的输入通道,采集时间和转换时间分开,提高了采样率和输入阻抗,并且支持自动顺序采样,不需CPU干预。 CAN总线控制器,可以为控制器、传感器、激励源以及其它节点提供良好的通讯,特别适用于工业现场和汽车等强噪声和恶劣的环境中。 5个外部中断(两个驱动保护、复位和两个可屏蔽中断) 67 。为了满足机器人大量扩展传感器的需要和减少处理器外围数字逻辑器件的使用数量,该运动控制卡采用Altera公司的复杂可编程逻辑器件(CPLD)来扩展DSP的I/O端口和实现外围数字逻辑电路设计8。3.2 硬件系统结构图 通过第2章关于运动学模型的建立,为使得系统能够按照建

24、立的数学模型进行运动,除了3.1节的DSP主控制芯片外还需要其它的硬件的支持,本课题设计的硬件系统结构图如图9所示。其主要的工作方式为: PC上位机选择相应的运动方式,经过RS232协议连接无线模块,由无线模块发送数据。DSP下位机的无线模块接收上位机发送的数据,经RS232通信协议发送给DSP。DSP接收到数据进行相应的处理,分析出要进行的运动形式及各种参数,同时利用I2C协议采集指南针的数据,将这些信息通过第2章的全向运动学模型分析的各种公式转换成各个电机的速度值。为使得电机能够稳、准、快的执行,本设计采用经典PID控制,以增量式编码器采集的值为反馈。在进行的过程中液晶模块实时显示运动方式

25、和参数及指南针的值,同时将编码器的值通过无线模块传送给PC上位机。DSP下位机将按照程序设定执行上位机设定的运动方式,只有上位机重新发送新的运动方式才会改变。图9 硬件系统结构图根据系统要求分配系统配置(见表1):表1 DSP2407A系统资源分配功能模块名称实现功能通讯模块SCI(PA0、PA1)通过无线模块与电脑上位机通讯(2个I/O)电机调速电机转向PWM :PE2、PE4、PE6 3个PWM控制控制调速,(3个I/O)正反转:PC0-1、PF2-3、PF4-5每个电机两个正反转控制信号控制正反转(6个I/O)编码值读取CAP:PF0、PF1、PA3利用CAP脉冲捕捉功能获取编码器脉冲,

26、得到速度(3个I/O)液晶显示PF7、PA4-7液晶使能控制IO口(5个I/O)PB0-7液晶数据8位数据口(8个I/O)指南针模块IIC:PE1、PE3软件模拟IIC与指南针通信,PE1是SCL , PE3是SDA(2个I/O)3.3 硬件系统基本模块根据图9硬件系统结构图所示,本节将分析几个重要的模块。分为电源模块、无线通信模块、指南针模块、液晶显示模块,DSP下位机模块、电机及驱动模块和全向轮。其中DSP下位机3.1节已经介绍,在此不再叙述。 电源模块在控制系统中,主要用到系统板电源模块、DSP、外围器件和12V电机供电。TMS320LF2407A不采用5V供电而是采用低电压3.3V供电

27、方式。电池选用15V的锂电池,需要将15V转换为12V、5V、3.3V的电压。电机需要大电流在此选用两块2576开关电源进行处理。一块转换为12V单独供电机,另一块转换5V供外围5V器件和DSP开发板。在开发板上选用LM1117作为系统板电源模块的主芯片,把输入的+5V变为+3.3V。 无线通信模块DSP2407A处理器内嵌的异步串行接口SCI是一个标准的通用异步接收/发送通讯接口,接收和发送都是双缓冲的,有自己的是能和中断位,支持半双工和全双工工作。通讯接口有SCITXD和SCIRXD的TTL电平信号。本设计是使用AS-WLCOM无线模块。本设计用的是RS-232电平接口,通讯波特率设置96

28、00bps,无奇偶校验位,8位数据位和一个停止位。AS-WLCOM的链接方法如图10所示。图10无线发送接收模块连接图 指南针模块采用CY26平面数字指南针模块图具有磁偏角补偿功能,通过硬磁补偿和设置地磁夹角能够表示成全向机器人的夹角。指南针模块使用232(9600bps)协议及IIC协议。本设计中采用IIC通信协议。测量范围:0 360 、分辨率:0.1 、测量精度 :1 、重复精度 :1 、响应频率:30 HZ。DSP 2407A中SCI已经使用了无线模块,所以在本很设计中使用IIC通讯协议进行通信。IIC通信模块地址及数据含义见表2。表2 内部数据模块内部地址地址的数据含义0x00未用到

29、0x01角度值高8位0x02角度值低8位0x03磁偏角高8位0x04磁偏角低8位0x05未用到0x06未用到0x07校准等级值 实际当前角度值为上表“角度值高8 位”与“角度值低8位”合成的16位数据,数据范围0-3599(因为分辨率为0.1)实际当前磁偏角值为“磁偏角高 8 位”与“磁偏角低 8 位”合成的 16位数据,数据范围0-3599(因为分辨率为0.1)通过IIC控制指南针命令,磁偏角的值,范围0-3599(因为分辨率为0.1) ,是由2个8位的数据组成,当修改模块磁偏角时,分为高8位值,低8位值,写入模块。其命令见表3。表3 模块命令表命令值作用0x00+0x31角度测量0x00+

30、0xC0校准0x00+0XC1停止校准0x00+(0xA0+0xAA+0XA5+0XC5)恢复出厂设置0x00+(0xA0+0xAA+0XA5+IIC_ADDR)IIC 地址修改0x03+磁偏高8位值磁偏角修改0x03+磁偏高8位值磁偏角修改 液晶显示模块使用1.7英寸TFT全彩屏,显示运动过程中各种状态和参数如图11,通过显示模块能够很好的显示运动状态,同时系统出现问题也能通过显示反应出来。 图11 液晶显示 电机及驱动模块电机使用Faulhaber带双路编码器减速电机2230 12V220,减速后速:220RPM(转每分钟),每圈脉冲:512CPR(脉冲每圈),对于编码器将在下章介绍。对于

31、电机驱动本设计选用L298N,它是一款具有15管脚Multiwatt封装的大功率集成驱动芯片。它是一个能够承受高电压,大电流的双H桥驱动。L298N可驱动2个电机,OUT1,OUT2和OUT3,OUT4之间可分别接电机。L298N功能模块如表4所示。表4 L298N功能模块ENAIN1IN2运转状态0XX停止110正转101反转111刹停100停止L298N驱动电路如图12所示。单个电机的控制方法如下:通过IO口控制IN1和IN2,使能ENA为PWM,则通过控制IN1和IN2来实现正反转,通过ENA的PWM占空比调节速度快慢。图12 L298N电机驱动电路原理图 全向轮作为全向运动的驱动部分,

32、驱动轮与普通驱动轮有着重要的区别。在驱动轮的边缘处有侧滑的小轮,他们能够使得轮子向前后提供驱动力,同时能够使的侧面与地面很小的摩擦力,实现侧面移动。4 系统运动控制的MATLAB仿真本设计的全向运动控制系统使用三轴全向控制,即控制3个电机相互协调运动来实现全向轮动。电机的控制对整个系统是至关重要的。本章主要分析系统的PID控制和MATLAB仿真。4.1 电机PID控制电机是运动系统的执行机构,不管DSP计算的多么正确,但是电机执行达不到要求,同样系统是无法实现全向运动的。为使得电机能够稳、准、快的执行,而PID是根据偏差的比例、积分、微分的线性组合进行反馈控制,是迄今为止工业中应用最为广泛的一

33、种控制方法。所以本设计采用PID分别对三个电机进行闭环控制。数字PID可分为位置式PID和增量式PID控制。由于位置式PID是全量输出,所以每次输出均与过去的状态有关,计算时要对e(k)进行累加,DSP运算量大。而增量式PID控制的优点是只输出增量,计算误差动作时造成的影响小,同时对控制算法不需要累加,增量只跟最近几次的偏差采样值有关,易获得较好的控制效果9。本设计采用增量式PID,其闭环系统见图13所示。图13 电机闭环控制系统已知模拟PID控制算法的传递函数为式(8): (8)数字式PID前一刻输出的值为式(9): (9)前一时刻减去后一时刻的值为式(10):(10)数字PID最终输出量为

34、式(11): (11)4.2 转速检测 本设计选用增量式PID即4.1节中所阐述的PID。对于PID控制反馈必不可少,在本设计使用的是Faulhaber带双路编码器减速电机,即增量式光电编码器来做为反馈环节,其工作原理如图14。光源经过码盘和检测光栅照射的信号通过光电检测器件检测,检测出的正弦值经转换电路转换成矩形波,最后出来A相B相Z相。A相B相相差90度,通过软件能够很好的得到此时电机的速度和方向。对AB相的采集是电机闭环控制的反馈量,关乎电机PID控制是否能达到稳准快的要求。本设计使用输入捕捉CAP功能对脉冲进行采集,将采集量进行相应处理即得到PID控制的反馈。14 增量式编码器输出信号

35、波形4.3 MATLAB仿真在三轴控制系统中,PID是应用最广泛的控制算法。针对电机模型,这里设定电机的模型为,针对此电机模型进行MATLAB仿真,观察PID控制算法的控制效果1011。控制结果比较曲线如图15所示。绿色曲线为期望值,蓝色曲线为PID控制跟踪曲线,红色曲线为误差曲线,实际速度可以通过编码器反馈。可以看出PID控制方式的响应速度、跟踪精度可以达到系统要求。针对三轴运动控制系统设计以下速度合成实验,假设机器人坐标系和场地坐标系具有同样的方位,要求机器人(作为整体)沿45()的方向从静止开始,匀加速运动2秒,达到1.45m/s,然后匀速运动2秒,再在1秒之内以匀减速将速度减为0,从启

36、动到停止共运行5s。运行结果如图16所示,绿色曲线为期望曲线,蓝色虚线为PID控制跟踪曲线,从图中可以看出,PID控制可以达到系统的控制要求。图15 基于单轴驱动电机实验 图16 三轴运动控制系统的速度合成实验接着将此运动通过运运学分解,将速度分解至三个轮子上,并分别对每个轮子的驱动轴单独控制,三个轮子相应跟踪曲线如图17所示。绿色曲线为期望曲线,蓝色曲线为PID控制跟踪曲线,从曲线中可以看出,PID控制可以满足系统的控制要求。 (a) 号电机(b) 号电机 (c) 号电机图17 三个电机相应跟踪曲线从上面的速度以及位移跟踪曲线的仿真结果可以看出,PID控制能够达到三轴运动控制系统的要求。5

37、系统软件设计根据前几章模型建立分析和硬件系统构建,本章主要介绍全向运动控制系统程序编写。前两节介绍了下位机全向运动系统使用的程序编写平台软件和整个系统流程图及各部分子程序的流程图。最后一节介绍上位机部分,编写上位机软件部分和上位机下位机使用的通讯协议。5.1 软件开发平台及仿真器本设计的核心控制芯片为TMS320LF2407A,其软件开发平台使用官方工具CCS v3.3,仿真器选用XDS510-USB2.0。安装CCS V3.3后生成两个部分,即CCStudio V3.3 和Setup CCStudio v3.3 。其中利用Setup CCStudio v3.3对开发工具参考硬件进行相应配置,

38、利用CCStudio V3.3建立工程编写软件,其开发周期示意图为图18所示12。图19即为CCStudio V3.3开发环境。图18 CCS开发周期示意图图19 CCStudio V3.3开发环境仿真器XDS510-USB2.0的作用:通过CCS3.3编译的程序下载DSP上两种方式,一个是烧写FLASH,一个是仿真。烧写FLASH即将编译好的程序烧写进DSP内部FLASH中,此种方法能够是DSP独立运行软件,具有掉电保持功能。仿真是将程序下载到外部数据存储器RAM中,其特点是下载速度快,但掉电数据丢失,适合在开发软件频繁修改阶段使用。而烧写FLASH则比较复杂烧写时间比较长,不利于开发软件阶

39、段使用13。通过仿真或者烧写FLASH都可以在线监控DSP各个寄存器和变量的值,有利于排除各种错误。5.2 运动控制软件设计由于本课题是基于DSP全向运动控制系统软件设计,侧重控制全向运动,故本设计将检测部分做了精简,只需要采集指南针和编码脉冲。其全向运动方式经过上位机无线传输指令,然后DSP接收指令进行处理最后控制电机协调运动,根据指南针和编码器进行闭环控制,以达到最佳效果。5.2.1 主程序图20 主程序流程图根据前几章的设计和分析,设计出软件系统流程图,如上图20所示。系统上电后开始,系统初始化后开始检测是否有接收数据,接收到之后判断运动方式,如是停止信号则电机停止运动。如接收到的信号是

40、平移运动则进入平移运动相应子程序,计算电机速度值并赋值给PWM寄存器,电机驱动控制驱动轮转速。同时电机PID会根据设定值和误差进行调节,使得系统运行更加稳定。通过软件的反复运动则完成了整个系统的运动过程。5.2.2 三种基本运动状态子程序 当接收到的数据判断出要运行那种运动方式后,将进入相应子程序中。 子系统流程图如下图21所示。图21 运动方式子程序流程图本课题设计的软件有三种运动方式,即有三种运动状态控制子程序。由于三种运动状态子程序其流程大致相同,不同之处在于对接收到的数据的处理和相应的计算以及相关显示部分。故将三个子程序软件系统流程图用一个表示。其中“屏幕显示相应运动界面”显示的是运动

41、状态的界面。只有三种运动状态发生改变时此界面才变化,这是为了节省系统执行时间,因彩屏执行完此界面操作需要占用部分时间。显示的其他参数则实时变化。这样能够通过TFT液晶显示出运行方式和参数,有利于调试程序和查找错误。5.2.3 电机控制子程序电机控制主要是将其他子程序计算好的速度值进行PID控制,这样能够使得三个电机安装设定的速度运行。电机的稳、准、快的运行将会使运动方式更接近理论目标。故将电机控制部分单独设为子程序进行叙述。其子程序系统流程图见下图22所示。图22 电机控制子程序流程图PID执行周期为3ms,利用定时器计时,当时间到之后PID标志位置1,进入PID子程序后清楚此标志位。5.2.

42、4 无线发送子程序无线发送子程序流程图如图23所示。图23 无线发送子程序为使得上位机更好的监控系统,同时有利于PID调试,故将得到的编码值经无线传输模块发送给上位机软件,并在相应位置显示出来。发送的数据不是一个数据,而DSP每次只能发送8位数据,故需要发送多次并检测是否发送完毕。如没有发送完毕则继续发送,如果发送完毕则返回主程序。5.3 上位机软件及通讯协议上位机软件是利用VC6.0的MSOCOMM控件编写。上位机软件界面如图24所示。图24 上位机界面MSComm控件是Microsoft Communications Control 的简称,是Microsoft公司提供的简化Windows

43、下串口编程的ActiveX控件,它为应用程序提供了通过串口接口收发数据的简便方法14。同时方便不同电脑的串口情况需求,设计上位机软件时设置了4个COM口(1-4)。为了更好的观测和研究几种运动状态,故上位机软件设计成各个运动状态分开的界面。最后加上一个“演示”模块,即设定几个特殊方向角利用图片直观表示出来,能够实现平移和边平移边旋转的运动,能够对整个设计系统有个更直观的操作。选择COM并打开,选中要运行的运动类型并在相关位置写上各种参数。点击开始,则上位机软件将写入的参数进行相关处理并按照一定的协议组织要发送的数据,通过RS232经无线模块发送出去。本设计系统通讯协议为简单通讯协议15。协议格式见表5所示。表5 简单通信协议命令分类协议格式备注速度分解*xaaaybbbzccc*“*”为开始和结束标志,“aaa”、“bbb”、“ccc”为电机速度,“xyz”为电机正反转标志1为正转,2为反转速度平移*#aaaxbbb0y00*“*”为开始结束标志,“#”代表速度合成平移标志,“aaa”整体速度,“x”为顺时针或逆时针平移(1为顺时针2为逆时针),“y”为机器人方向是否跟随移动方向(1为摆向移动的方向,0为头不随移动而改变)原地旋转*xaaabbb0000*“*”为开始结束标志,“”标志原地旋转标志,“x”为顺时针或逆时针旋转(1为顺时针2为逆时针),“aaa”旋转

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 毕业论文/毕业设计

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服