基于Matlab的DSP控制系统

更新时间:2024-01-06 09:06:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

本 科 毕 业 设 计

( 2008 届)

题 目 学 院 专 业 班 级 学 号 学生姓名 指导教师 完成日期

基于Matlab的DSP控制系统

仿真研究

信息科学与工程学院

通信工程

2008年5月

信息科学与工程学院毕业(设计)论文 .i.

A Dissertation Submitted to Ningbo University For the degree of Bachelor of Engineering

Matlab Based Simulation on Control System used DSP

Written by Wuxi Ma

Directed by Dr. Ge Yinghui

Ningbo University, Ningbo, China

May,2008

信息科学与工程学院毕业(设计)论文 .i.

基于Matlab的DSP控制系统仿真研究

【摘要】

传统的DSP设计开发流程分为开发设计和产品实现两个环节。这样的开发流程比较复杂,本文应用Matlab对DSP控制系统开发进行了研究。基于Matlab/Simulink 的DSP系统级设计方法,完成了从概念设计、软件仿真、 代码生成及编译链接。在软件算法仿真测试后直接生成面向数字信号处理(DSP)芯片的代码,有利提高开发效率。

首先,本文系统地研究了Matlab/Simulink的DSP系统级设计方法。其次,研究了Matlab与CCS系统对于DSP的各自特点及相互连接应用方法。最后,针对基于C2812永磁同步电机FOC控制系统和基于C6416边缘检测系统进行了应用设计研究。应用系统设计结果证明了该方法的有效性和实用性。

【关键词】

Matlab;Simulink;DSP;仿真研究;集成开发

信息科学与工程学院毕业(设计)论文 .i.

Matlab Based Simulation on Control System used DSP

【Abstract】

Traditional DSP design has two parts: developing design and product achievement . In this paper, Matlab control of the DSP system development were studied. Based on Matlab / Simulink DSP system-level design methods, completed the conceptual design, software simulation, code generation and build links. The software algorithms generate directly simulation tests for digital signal processing (DSP) chip code, conducive to enhancing development effectiveness.

The first systematic study of the Matlab / Simulink the DSP system-level design methods, followed by CCS on the Matlab and the DSP system for their own characteristics and mutual connection, finally, for Permanent Magnet Synchronous Motor Field-Oriented Control based on the C2812 and C6416 systems edge detection system for the application of design Research。

【Keyword】

Matlab; Simulink; DSP; Simulation of research; Integrated Development

信息科学与工程学院毕业(设计)论文 .ii.

目 录

第一章 绪论......................................................... 1

1.1选题背景和意义 ........................................... 1

1.1.1选题背景 ........................................... 1 1.1.2 课题意义........................................... 3 1.2 国内外技术和市场发展趋势................................. 3

1.2.1 DSP................................................ 3 1.2.2 工程系统仿真....................................... 3 1.3本文的主要研究内容及目标 ................................. 6

1.3.1 总体目标........................................... 6 1.3.2 主要内容........................................... 6

第二章 基于Matlab的DSP系统开发工具................................ 7

2.1 DSP的介绍 ............................................... 7 2.2 DSP的开发 ............................................... 7 2.3系统开发原理及开发工具介绍 ............................... 8

2.3.1原理 ............................................... 8 2.3.2 开发工具.......................................... 10

2.3.2.1 Developer’s Kit for TI DSP 三种接口........ 10 2.3.2.2 Target for CCS IDE/C2000/C5000/C6000 EVM.... 11 2.3.2.3 Target for CCS IDE/C2000/C5000/C6000 EVM Link

for CCS IDE................................................. 11

2.3.2.4 Link for RTDX............................... 11

2.4 Matlab中相应DSP工具箱的介绍 ........................... 12

第三章 基于Matlab的TMS320C6416边缘检测系统设计................... 25

3.1 TMS320C6416 EVM介绍 .................................... 25 3.2 Matlab/Simulink中的C6416 EVM介绍 ...................... 25 3.3 基于C6416的应用系统设计................................ 26

3.3.1 Sobel介绍 ........................................ 26

信息科学与工程学院毕业(设计)论文 .iii.

3.3.2 Sobel图像边缘算法 ................................ 26 3.3.3 图像边缘检测建模.................................. 27 3.4 结果与分析.............................................. 35

第四章 基于Matlab的TMS320C2812 永磁同步电机控制系统设计 .......... 38

4.1 TMS320C2812 EVM介绍 .................................... 38 4.2 Matlab/Simulink中的C2812 EVM介绍 ...................... 38 4.3基于C2812的应用系统设计 ................................ 39

4.3.1 永磁同步电动机磁场定向控制原理.................... 39 4.3.2 基于DSP的永磁同步电动机FOC控制系统计............ 41 4.3.3基于Matlab的永磁同步电动机FOC系统建模 ........... 42 4.4 结果与分析.............................................. 47

4.4.1本例分析 .......................................... 47

第五章 基于Matlab和DSP的滤波器设计及调试......................... 49

5.1基于FDATOOL的汉明低通窗口滤波器设计 .................... 49 5.2 基于DSP 的CCS下的调试和运行 ........................... 50 5.3 基于MATLAB下的调试..................................... 51

第六章 全文总结.................................................... 54 致 谢.......................................................... 56 参考文献........................................................... 57

信息科学与工程学院毕业(设计)论文 第1页

第一章 绪论

1.1选题背景和意义

Matlab是一个强大的分析、计算和可视化工具,特别适用于数字信号处理算法的分析和模拟,使用非常方便。但由于Matlab程序的执行速度相对于实时信号处理来说,仍显得太慢,而Matlab所依赖的平台是计算机等设备,这类设备的体积、功耗不适合于实时信号处理,设备的结构也无法满足实时信号处理所要求的高速数据输入/输出,因此Matlab在数字信号处理技术中,适合于对算法的模拟及对实测数据的事后处理。不过目前有一种能够结合两者优点的开发工具,就是Matlab的Simulink环境下提供了一个DSP开发平台进行模拟验证,当模拟结果满意时,可以在目标DSP上直接产生代码,而产生的代码可以兼容。 1.1.1选题背景

当二十一世纪的第一个年代已过去一半多的时候,也许这正是我们回顾数字信息产业演变的大好时机。曾经有过多少对新世纪热情的憧憬,正在逐渐变成对新趋势理性的展望,而这一切都源于一个共同而永恒的动力,就是“数字化创新”。若追溯到上世纪中叶,可以看到晶体管的诞生所具有的划时代意义,而其中起决定性作用的创新在于硅晶体管的推出,德州仪器(TI)有幸凭此而进入电子领域,一举树立起电子创新先锋的形象。五十年代末期,TI通过开启集成电路之门的创举而逐步展现出充沛的创新精神。在半导体硅片中的植入分立的门电路并不断增加数量和规模,数字化的进程由此而全面展开,数字技术潮流由此而涌动,而TI创新的冲动始终如此旺盛。

七十年代“数字创新”的重要标志就是可编程微控制器(MCU)的出现,又是TI引领了这个 “控制创新”的到来,并直接导致了微处理器(CPU)的推进而引发的“计算创新”,从而引领了个人电脑时代的到来,铺平了通向数字信息时代的道路。八十年代初,数字化的需求剧增,数字信号处理器(DSP)应运而生, TI以率先以商业化的DSP取得先机,并以次为契机,开始了其主导业界四分之一世纪的“数字化创新”历程。在图一所示DSP的发展和演变历程中

信息科学与工程学院毕业(设计)论文 第2页

可以看到,伴随着DSP发展其应用领域的不断扩大,才有众多数字化的电子信息产品的兴起和丰富。

图1.1,DSP的发展和演变历程

DSP的发展规律是其时钟及运算速度和性能不断地大幅度增加,而其功耗和芯片尺寸在不断地减少,其芯片的价格也是逐年降低。早期DSP主要应用于高精尖领域,如军事和工业设备。以后DSP开始应用于专业数字通信和计算机周边设备,而在数据调制解调器和数字移动手机中的成功应用又推动了数字网络化的发展。在世纪更迭的阶段中,DSP应用已经成为宽带接入、数字音频和数字视频、新一代无线通信等创新应用的核心平台。

而工程系统的仿真,起源于自动控制技术领域。从最初的简单电子、机械系统,逐步发展到今天涵盖机、电、液、热、气、电、磁等各个专业领域,并且在控制器和执行机构两个方向上飞速发展。

控制器的仿真软件,在研究控制策略、控制算法、控制系统的品质方面提供了强大的支持。随着执行机构技术的发展,机、电、液、热、气、磁等驱动技术的进步,以高可靠性、高精度、高反应速度和稳定性为代表的先进特征,将工程系统的执行品质提升到了前所未有的水平。相对控制器本身的发展,凭借新的加工制造技术的支持,执行机构技术的发展更加富于创新和挑战,而对于设计、制造和维护高性能执行机构,以及构建一个包括控制器和执行机构的完整的自动化系统也提出了更高的要求。

信息科学与工程学院毕业(设计)论文 第3页

AMESIM软件正是能够提供平台级仿真技术的工具。从根据用户需求,提供液压、机械、气动等设计分析到复杂系统的全系统分析,到引领协同仿真技术的发展方向,AMESIM的发展轨迹和方向代表了工程系统仿真技术的发展历程和趋势。

1.1.2 课题意义

随着DSP处理性能的飞速提高,以及用户要求产品的研制周期越来越短,DSP的设计内容越来越侧重于软件方面。一方面强大的通用化硬件平台为实现实时信号处理的软件化提供了性能保障,使许多DSP设计人员摆脱了硬件、配置的困扰,同时也帮助许多纯算法研究人员能轻松进入DSP设计领域。另一方面,DSP的开发设计环境更加完善,即使要高度程序代码,也可以脱离DSP硬件电路板。

1.2 国内外技术和市场发展趋势 1.2.1 DSP

2003年TI推出1GHz主频,采用90钠米工艺技术的DSP,在业界率先突破8000MIPS的运算性能,同时DSP平台也向着通用性和针对性相结合的方向发展,推出了通用媒体处理器以至高集成度的单片系统(SOC),DSP应用进入了一个空前繁荣的时代,为新世纪的全面数字化应用提供更加广泛创新的天地。 1.2.2 工程系统仿真

工程系统仿真作为虚拟设计技术的一部分,与控制仿真、视景仿真、结构和流体计算仿真、多物理场以及虚拟布置和装配维修等技术一起,在贯穿产品的设计、制造和运行维护改进乃至退役的全寿命周期技术活动中,发挥着重要的作用,同时也在满足越来越高和越来越复杂的要求。因此,工程系统仿真技术也就迅速地发展到了协同仿真阶段。其主要特征表现为:

1、控制器和被控对象的联合仿真:Matlab+AMESIM,可以覆盖整个自动控制系统的全部要求。

信息科学与工程学院毕业(设计)论文 第4页

2、被控对象的多学科、跨专业的联合仿真:AMESIM+机构动力学+CFD+THERMAL+电磁分析

3、实时仿真技术

实时仿真技术是由仿真软件与仿真机等半实物仿真系统联合实现的,通过物理系统的实时模型来测试成型或者硬件控制器。

4、 集成进设计平台

现代研发制造单位,尤其是设计研发和制造一体化的大型单位,引进PDM/PLM系统已经成为信息化建设的潮流。在复杂的数据管理流程中,系统仿真作为CAE工作的一部分,被要求嵌入流程,与上下游工具配合。

5、超越仿真技术本身

工程师不必是精通数值算法和仿真技术的专家,而只需要关注自己的专业对象,其他大量的模型建立、算法选择和数据前后处理等工作都交给软件自动完成。

这一技术特点极大地提高了仿真的效率,降低了系统仿真技术的应用门槛,避免了因为不了解算法造成的仿真失败。

6、构建虚拟产品

在通过建立虚拟产品进行开发和优化过程中,关注以各种特征值为代表的系统性能,实现多方案的快速比较。 系统仿真技术的发展趋势如下: 1、屏弃单专业的仿真

单一专业仿真将退出系统设计的领域,专注于单一专业技术的深入发展。作为总体优化的系统级设计分析工具,必要条件之一是跨专业多学科协同仿真。

2、跟随计算技术的发展

随着计算技术在软硬件方面的发展,大型工程软件系统开始有减少模型的简化、减少模型解藕的趋势,力争从模型和算法上保证仿真的准确性。更强更优化的算法,配合专业的库,将提供大型工程对象的系统整体仿真的可能性。

在高性能计算方面,将支持包括并行处理、网格计算技术和高速计算系统等技术。

信息科学与工程学院毕业(设计)论文

3、 平台化

第5页

要求仿真工具能够提供建模、运算、数据处理(包括二次开发后的集成和封装)、数据传递等全部仿真工作流程要求的功能,并且通过数据流集成在更大的PDM/PLM平台上。同时,在时间尺度上支持全开发流程的仿真要求,在空间尺度上支持不同开发团队甚至是交叉型组织架构间的协同工作以及数据的管理。

4、 整合和细分市场

整合化:将出现主流的标准工具。其特征是功能涵盖了现代工业领域的主要系统仿真需求,并与其他主流软件工具通过接口或后台关系数据库级别的数据交互,有协同工作的能力;软件自身的技术进展迅速,具有强大的发展后劲。

专业化:随着市场需求的细分,走专业化道路,将出现极专业的工具。这些工具将在某些具体的专业领域提供深入研究的特殊支持,如开发特殊的库或模型,专注于具有鲜明行业特征的技术,满足特殊的行业标准。

将出现整合型工具和专业化工具互补的局面。 5、 智能化

将引进更加友好的操作界面,智能化的求解器及模型管理。不断改进GUI,让软件使用者直接体验到数值计算专家开发的后台工具提供的强大功能,同时减少软件学习和使用的困难。提供易学易用的强大工具。

6、 丰富的二次开发选项

提供源代码级的二次开发支持,开放的架构满足不同用户的专业开发要求。

在强大的工具平台上,根据自身的需要,进行二次开发。这已经是目前许多研发单位开发专有技术的标准方式。今后的系统仿真工具必须支持用户在进行二次开发的时候,从源代码级别开始的创新和工程化定制,并能够通过封装集成到原有平台中去。这种技术将成为用户在实现知识和技术组织内共享和传承的同时,保护自身知识产权的必然选择。

信息科学与工程学院毕业(设计)论文

1.3本文的主要研究内容及目标 1.3.1 总体目标

第6页

本项目的设计目标是完成设计目标是针对基于DSP的应用系统,研究了Matlab下的系统开发方法。即在Matlab环境下,应用Matlab中的DSP工具箱,针对具体的应用系统要求,建立系统模型并仿真,同时可以在Matlab窗口中完成对CCS的操作,对DSP目标程序中的函数的操作可读写DSP中某一段存储器或寄存器,利用RTDX进行实时数据交换等,所有这一切操作只利用命令和对象来实现。大大简化了DSP控制系统开发,降低了对开发人员硬件技能的要求。

1.3.2 主要内容

主要内容与基本要求:

1、熟悉并掌握Matlab仿真的软件平台, 熟悉Matlab Link for CCS Development Tools及Simulink中的DSP模块,如PWM、DAC等,并对相应的调用CCS窗口指令进行熟悉。

2、掌握DSP中的系统控制及中断、存储器及扩展接口、串行通信接口、SCI的寄存器、事件管理器等,并理解其用法。

3、建立基于DSP2812的永磁同步电机控制系统及基于C6416的边缘检测系统的Matlab的模型,并对其模型进行调试,直到结果显示无误。

4、在Matlab仿真研究所设计的模型无误后,可以调用CCS窗口,并生成其程序控制代码。

5、滤波系统的设计开发及调试,完成DSP simulator下的运行,并对比MATLAB环境下和DSP上运行结果。

信息科学与工程学院毕业(设计)论文 第二章 基于Matlab的DSP系统开发工具

2.1 DSP的介绍

第7页

DSP芯片,也称数字信号处理器,是一种具有特殊结构的微处理器。DSP芯片的内部采用程序和数据分开的哈佛结构,具有专门的硬件乘法器,广泛采用流水线操作,提供特殊的DSP 指令,可以用来快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片一般具有如下的一些主要特点:

1、在一个指令周期内可完成一次乘法和一次加法。 2、程序和数据空间分开,可以同时访问指令和数据。

3、片内具有快速RAM,通常可通过独立的数据总线在两块中同时访问。 4、具有低开销或无开销循环及跳转的硬件支持。 5、快速的中断处理和硬件I/O支持。

6、具有在单周期内操作的多个硬件地址产生器。 7、可以并行执行多个操作。

8、支持流水线操作,使取指、译码和执行等操作可以重叠执行。 与通用微处理器相比,DSP芯片的其他通用功能相对较弱些。 2.2 DSP的开发

目前,对于DSP工程师来说,除了必须了解和熟悉DSP本身的结构(包括软件指令系统和硬件结构)和技术指标外,还必须熟悉和掌握其开发工具和环境。

TI DSP的开发工具和环境主要包括以下三个部分:

1、代码生成工具(编译器、连接器、优化C编译器、转换工具等) 2、系统集成及调试环境与工具 3、实时操作系统

信息科学与工程学院毕业(设计)论文

Library of Object Files Linker Runtime Support Library Computer Archiver COFF Object Macro Library Assembler Archiver C Source Files C Source Files 第8页

C Compiler Assembler Source EVM With Debugger XDS Emulator With Debugger Simulator Hex Conversion Executable COFF File Utility Absolute Lister TMS320 DSP EPROM Programm

图2.1 TI TMS320系列DSP软件开发过程

2.3系统开发原理及开发工具介绍 2.3.1原理

系统级设计的核心是将算法设计和系统设计仿真在统一的开发环境中进行,从而有效地将开发流程的两个部分结合在一起。

进行系统级设计需要一个统一的开发环境,且在该开发环境中可以对系统

信息科学与工程学院毕业(设计)论文 第9页

机构、算法进行描述,还能够对系统不同的层次,不同组件和不同数据类型进行建模;同时要有良好的移植性能。Simulink提供了这样一个很好的开发环境,他是基于图块的系统级仿真环境。分级系统的描述方式,提供了真正的自顶向下的设计方法,并且通过图块的方式实现移植。

由美国TI与Math公司联合开发的面向TI TMS320C6000 DSP开发平台的嵌入式对象,使Matlab\\ Simulink与TI高速DSP工具结合成为一体。这套软件使设计者能够利用Matlab平台在C6416或C6711评估板上,经概念设计到代码及自动高速模型生成,对所设计的数字信号处理系统进行开发、验证。开发过程利用Matlab实时工作平台(Real-Time Workshop)以自动生成一个C语言的CCS工程。CCS平台的所有特性,包括编辑工具、编译链接、调试工具、代码压缩以及工程管理等等,都可以调用,帮助设计者随意地使用MATLB、

Simulink、Real-Time Workshop以及硬件,利用CCS工程自动地编译、链接,将生成的可执行文件下载到C67XX芯片。一般设计流程如图2所示。

图2.2 基于Simulink与C6000

Developer’s Kit for Ti DSP是MathWorks公司和Texas Instruments(TI)公司合作开发的一个基于Simulink和Real-Time Workshop的开发工具箱,有了这个开发工具箱,用户可以在Simulink的环境中搭建数字信号处理的算法,然后通过Real-Time Workshop生成面向TMS320C6416 Evaluation Module(C6416EVM)或者Texas Instruments Code Composer Studio Integrated Development Enviroment(CCS IDE)的ANSI C 代码。

Developer’s Kit for Ti DSP可以利用TI的编译工具将生成的代码编译成面向C6416EVM的机器码,并可将该机器码直接下载到C6416EVM上执行。为了支持面向C6416EVM的代码生成,Developer’s Kit for Ti DSP提供了一个基于Real-Time Workshop的目标Target for C6416 EVM。使用这个目标,用户可以

信息科学与工程学院毕业(设计)论文 第15页

在指定采样时间间隔触发,也就是同步模式。这个模式的特定设置的有关信息可以参考Configuring Acquisition Window Width for ADC Blocks。

在同步模式下,事件管理(EV)与ADC触发器有相同的单元且相联系。例如,ADC与脉宽调制电路(PWM)波形产生通过EV单元的ADC StartEvent信号设置。ADC StartEvent设置信息可以参考C24x PWM模块。

注:如果ADC在级连模式下,ADC不能与PWM同步。(如下) 输出

C24x ADC输出是16组向量值,输出值范围是0到1023,因为C24x ADC是10bit整流器。

模式

C24x ADC模块支持ADC级连排序和双排序。在双排序模式下,A单元或是B单元都可以在ADC模式下应用,也可以同时应用两个模式。在级连模式,A单元与B单元都是有一个单独的ADC模式控制。

对话框

ADC控制对话框(图2.7)

图2.7 C24X ADC参数窗口

特定DSP单元应用:

A——使能ADC中A单元通道(ADCINA0到ADCINA7)。 B——使能ADC中B单元通道(ADCINB0到ADCINB7)。

信息科学与工程学院毕业(设计)论文 第16页

A和B——同时使能ADC中A和B单元通道(ADCINA0到ADCINA7和ADCINB0到ADCINB7)。

转换

单排序转换:

软件触发——来自软件信号 EVA——来自事件管理器A信号 EVB——来自事件管理B信号 外部引脚——来自外部硬件信号 抽样时间

在几秒时间内,一串样本被转换到相应的ADC通道。这个速率可以从寄存器中读出。可以参考Scheduling and Timing了解更多的信息。

在不同组的ADC设置不同的抽样时间,你必须增加独立的C24x ADC模式到你的模形中,然后设置每个模块想要的抽样时间。

数据类型

输出类型有效的有auto,double,single, int8,uint8,int16,uint16,int32,或uint32。

输入通道对话框

图2.8 C24X ADC参数窗口

转换数量

信息科学与工程学院毕业(设计)论文

若干个模数转换是逐个抽样。 转换

第17页

特定的通道与转换数字有关。在simulataneous模式下,两个ADC通道与彼此转换相关。在过采样模式下,一个给定的ADC通道可以多次采样。特定的一个通道可以进行多次采样。

多输出口

如果多于一个ADC通道被用于转换,你可以用独立的一个口来显示输出。如果没有超过一个通道且没有用于多个输出口,这个数据就是一维微量。

注:离散滤波器在Simulink 只接受单声道输入。连接c24x的ADC模块到模块,你必须输出单一通道,或连接只有一个ADC的输出端口到一个离散滤波器。

脉冲宽度调制(PWMs) 如图

图2.9

LF2407 DSPs包括一套脉冲宽度调制来用于产生各种信号。这个模式提供了一套A或是B管理事件模式,这个模式能产生你需要的波形。这12个PWMs分成6组可以用于设置,每个管理事件中有三对。

注:所有输入到C24x PWM必须是有效值。 对话框 时间窗口

信息科学与工程学院毕业(设计)论文 第18页

图2.10 C24X PWM 参数窗口

模式

具体规定哪些对象的PWM成对使用:

A——使能在A模式下的PWMs(PWM1/PWM2, PWM3/PWM4, 和PWM5/PWM6)。 B——使能在B模式下的PWMs(PWM7/PWM8, PWM9/PWM10, 和PWM11/PWM12)。

注:pwms模块利用事件管理器中定时器1 , pwms模块利用事件管理器b中 定时器3 。你应该确保TimerClock在LF2407 eZdsp设定目标参数不能与用于计PWMs的定时器冲突。

波形周期源

波形周期值是可以获取的。可以选择具体的途经在对话框中Waveform period输入值或选择Input port,这是来自输入端口值。

波开周期

PWMs波形周期可以设定在一个时钟周期或是在几秒内来做为波形周期的特

信息科学与工程学院毕业(设计)论文

定单位。

第19页

注意:这里的时钟周期是指LF2407芯片的外设时钟。这个时钟为40兆赫的默认,因为计时器分频器是设定为1。

波形类型

波形的类型是是有两对PWM产生的。该lf2407 pwms能产生两种类型的波形:非对称与对称式。以下的例子说明了两者的区别类型的波形。

图2.11 非对称式波形与对称式波形

波形周期单位

波形最小单位是来计波形周期。选择时钟周期,其中提到周边时钟就lf2407芯片( 40兆赫) ,或几秒钟。注意,改变这些单位改变了波形时期的价值和占空比值和占空比单位挑选。设定时钟周期,也就是指LF2407的外设时钟(40M),或者几秒。注意,改变这些单位就改变了波形周期值和占空比值和占空比单位选项。

输出窗口

信息科学与工程学院毕业(设计)论文 第20页

图2.12 C24X PWM参数窗口

使能PWM#/PWM# 设定PWMs 激活项。 占空比产生

可以通过两对特定的PWMs来获得占空比。选择特定的途径,进入占空比选项,再输入具体值或是选择输入口用的值,或是设定几秒。

占空比

在占空比单位用PWM波形脉冲持续时间表示。 占空比单位

单位为占空比。正确的选择是时钟周期,并计算百分比。注意,改变这些单位就改变占空比值,波形周期值和波形周期单位的设定。

逻辑窗口

信息科学与工程学院毕业(设计)论文 第21页

图2.13 C24X PWM参数窗口

逻辑控制源

从源头即控制逻辑,得到了所有pwms 。选择具体途径在对话框中输入PWM #值控制逻辑区域或选择输入端口,用输入端口值。

PWM#控制逻辑

控制逻辑触发的PWM。强迫高是由脉冲值高引起的,活动性高会引起脉冲值从低到高变化。活动性低的会引起脉冲值从高到低变化。低强迫会触发低信号。

死区窗口

信息科学与工程学院毕业(设计)论文 第22页

图2.14 C24X PWM参数窗口

设置死区的PWM#/PWM#

使死区面积无信号重叠,在一开始的,特别是一双脉宽调制信号。以下数字显示死区。

图2.15 死区

信息科学与工程学院毕业(设计)论文

死区分频器

第23页

多少个时钟周期,而当乘以该死时期,最终决定死区的大小。可选值是1 ,2 ,4 ,8 ,16和32。

死区周期的产生

从源头即获得死区时期。选择具体途径在对框中输入死区值,或选择输入端口使用一个值,这值来自外部时钟周期。

死区周期

死区周期当乘以该死分频器,来确定死区的大小。可选值是从1至15个时钟周期。

ADC控制窗

图2.16 C24X PWM参数窗口

ADC触发事件

在同一个EV模式下,对照PWM与ADC控制是否同步。在与ADC有关,请选择没有同步或是只有一个中断来产生源触发(SOC)信号的。

悬挂——ADC与PWM不是同步的。EV不能产生SOC信号和ADC有软件触发。(也就是说模数转换是在ADC模式在软件内执行的)。

信息科学与工程学院毕业(设计)论文 第24页

溢出中断——当通用计数器计到十六进制的FFFF,EV产生一个SOC信号。 周期中断——当能用计数器值达到周期寄存器值时,EV会产生一个SOC信号。这个值是由存在波形周期值寄存决定的。

注:如果你选择周期中断,那选定的抽样时间要低于一定值(波形周期CPU时钟速度),计到零阶保持器。如,如果你输入6400做为波形周期,这个ADC寄存器的周期是64000/40 MHz = 0.0016。如果你在C240X对话框输入是抽样时间,那么就少于这个结果,它会引起零阶保持器。

比较中断——当能用计数器值达到比较寄存器值时,EV会产生一个SOC信号。这个值是由存在占空比寄

信息科学与工程学院毕业(设计)论文

第三章 基于Matlab的TMS320C6416边缘检测系统设计

第25页

3.1 TMS320C6416 EVM介绍

TS320C6416GLZ是TI公司推出的TMS320C64x系列中的重要一员,是目前定点DSP领域里性能最高的一款芯片,它采用改进的哈佛结构,片内共有8条总线(1条程序存储器总线、3条数据存储器总线和4条地址总线)、高度并行的算术逻辑单元、专用硬件逻辑、片内存储器和片内外设电路等硬件,其时钟频率可达600MHz,最高处理能力为4 800MIPS。该芯片采用先进的甚长指令结构(VL1w),内核有6个ALu,每个时钟周期可以执行8条指令,并且所有指令都可以条件执行。该芯片具有Viterbi译码协处理器(VCP)和Turbo译码协处理器(TCP),采用两级缓存结构,一级缓存(L1)由128kbit的程序缓存和128kbit的数据缓存组成,二级缓存(L2)为8Mbit;片内有两个扩展存储器接El(EMIF),可以与异步(SRAM、EPROM)或同步存储器(SDRAM、SBSRAM、ZBTSRAM、FIFO)无缝连接,最大寻址范围为128M;具有扩展的直接存储器访问控制器(EDMA),可以提供64条独立的DMA通道;主机接El(HPI)总线宽度可由用户配置,有3个多通道串口(MCBSPs),每个MCBSPs最多可支持256个通道,能直接与T1或E1、MVIPSCSA接口。

3.2 Matlab/Simulink中的C6416 EVM介绍

安装了Developer’s Kit for TI DSP模块之后,在Simulink Library Brower中会出现一个支持C6416 EVM的模块库.

在搭建面向C6416EVM的工程文件的Simulink模型时,可选用该模块库中的模块。下面分别介绍这几个模块:

Edge Detection 模块

用Sobel、Prewitt、Roberts、或是Canny方法找到图像目标的边缘。 From RTDX 模块

在目标代码中添加一个RTDX输入通道.在Simulink模型中加入此模块,会在编译链接生成的目标代码中插入创建RTDX输入通道的指令。利用此通道可以从主机向目标DSP发送数据.在Simulink仿真阶段,此模块不执行任何操作。

信息科学与工程学院毕业(设计)论文 第26页

利用readmsg和writemsg函数向目标DSP发送或从目标DSP抽出数据。

To RTDX模块

在目标代码中添加一个RTDX输出通道。在Simulink模型中加入此模块,会在编译链接生成的目标代码中插入创建RTDX输出通道的命令。利用此通道可以从目标DSP向主机发送数据。在Simulink仿真阶段,此模块不执行任何操作。

TSK模块

DSP/BIOS是一种实时操作系统,它为目标程序提供实时服务,包括实时任务调度、中断、I/O服务和其它实时操作。可以对DSP程序的运行跟踪、监控、探查,以排除与时间细节有关的问题。

3.3 基于C6416的应用系统设计 3.3.1 Sobel介绍

经典的Sobel图像边缘检测算法,是在图像空间利用两个方向模板与图像进行邻域卷积来完成的,这两个方向模板一个是检测垂直边缘,一个是检测水平边缘。算法的基本原理:由于图像边缘附近的亮度变化较大,所以可以把那些在邻 域内,灰度变化超过某个适当阈值TH的像素点当作边缘点。Sobel算法的优点是计算简单,速度快。 3.3.2 Sobel图像边缘算法

由于图像在边缘附近会出现灰度上的突变,所以,Sobel

边缘检测方法就是

以原始图像灰度为基础,通过考察图像每个像素在某个领域内灰度的变化,利用边缘邻近的一阶导数最大值来检测边缘口]。其梯度幅度的数学描述为

e?|dx|?|dy|式中:

(3-1)

dx?[f(x?1,y?1)?2f(x,y?1)?f(x?1,y?1)]?[f(x?1,y?1)?2f(x,y?1)?f(x?1,y?1)] (3-2)

dy?[f(x?1,y?1)?2f(x?1,y)?f(x?1,y?1)]?[f(x?1,y?1)?2f(x?1,y)?f(x?1,y?1)] 信息科学与工程学院毕业(设计)论文

(3-3)

用方向模板(卷积核)表示为

?10?1???1?2?1??,d??000?dx??20?2??y?????10?1???121?? (3-4)

第27页

适当选取门限TH1,做如下判断:若 e> TH1 ,则该点为边缘点, 为边缘图像。因此,Sobel算子的优点是方法简单,计算量小,处理速度快。 3.3.3 图像边缘检测建模

C6414中有Edge Detection 模块,而该模块可以用Sobel、Prewitt、Roberts、或是Canny方法找到图像目标的边缘。

图3.1 边缘检测

Edge Detection模块下参数设置:

信息科学与工程学院毕业(设计)论文 第28页

图3.2 Edge Detection模块

Gain1设置:

信息科学与工程学院毕业(设计)论文 第29页

信息科学与工程学院毕业(设计)论文 第30页

图3.3 Gain1

Gain3设置:

信息科学与工程学院毕业(设计)论文 第31页

图3.4 Gain3

Convert设置:

信息科学与工程学院毕业(设计)论文 第32页

图3.5 Convert设置:

用Edge Detection 模块建立下面模型窗口

图3.6 Edge Detection Algorithm

信息科学与工程学院毕业(设计)论文

具体参数设置:

第33页

信息科学与工程学院毕业(设计)论文 第34页

图3.7 Edge Detection Algorithm各参数设置

最后建立如下图形:

信息科学与工程学院毕业(设计)论文 第35页

图3.8 边缘检测模型图

3.4 结果与分析

此算法使用仿真和视频图像处理blocksets区块,使用Sobel方法在视频流中找到目标的边缘。

Matlab环境下仿真完成后,链接到DSP CCS仿真环境,其中CCS仿真代码产生窗口,所生成的文件能够通过编译链接,并且没有任何错误和警告。如图3.9:

信息科学与工程学院毕业(设计)论文 第36页

图3.9完成代码生成的显示窗口

仿真产生的各级目录:Include包括的头文件、Libraries和Source文件以及CMD的文件如图3.10

信息科学与工程学院毕业(设计)论文 第37页

图3.10 仿真设计生成的函数文件

信息科学与工程学院毕业(设计)论文 第38页

第四章 基于Matlab的TMS320C2812 永磁同步电机控制系统设计

4.1 TMS320C2812 EVM介绍

TMS320C2000系列DSP集微控制器和高性能DSP的特点于一身,具有强大的控制和信号处理能力,能够实现复杂的控制算法。TMS320C2000系列DSP片上整合了Flash存储器、快速的A/D转换器、增强的CAN模块、事件管理器、正交编码电路接口、多通道缓冲串口等外设。 4.2 Matlab/Simulink中的C2812 EVM介绍

安装了Developer’s Kit for TI DSP模块之后,在Simulink Library Brower中会出现一个支持C812 EVM的模块库.

在搭建面向C2812EVM的工程文件的Simulink模型时,可选用该模块库中的模块。下面分别介绍这几个模块:

C2812 EVM 硬件中断模块 这个模块由硬件来产生中断。 C2812 EVM DAC模块

将C6416 EVM DAC模块放在SimulinDk模块中后,模拟多路利用开关、采样、保持(S/H)电路、变换内核、电压参考。

C2812 EVM PWM模块

Simulink模型中的C2812 EVM PWM模块,通过改变PWM的波形宽度间接控制电机的转速。

C2812 EVM QEP模块

Simulink模块中的 C2812 EVM QE模块,用来捕捉电机的转速,并反馈转速。

C2812 EVM DMC模块

Simulink模块中的 C2812 EVM DMC模块,用来构成Clark转换、Park转换、Clark反变换用到的坐标变换。

C2812 EVM IQ模块

Simulink模块中的 C2812 EVM IQ模块,是用来进行数据转换,最终能使

信息科学与工程学院毕业(设计)论文

DSP能够顺利进行数据处理。

Rate Transition模块

第39页

Simulink模块中的 Signal Attributes模块,该模块是速率转换器,是用来匹配不同速率的模块。

ADD、1/Z、Out!等模块

Simulink模块中的Commonly Used Blocks模块中,这些模块是用于信号的处理及信号坐标的变换,以达到对电机的处理,并合理把把信号反馈回来等作用。

Subsystem模块

是用存放子模块,为了达到整体模块起来清晰,可以上该模块上写上注解,以便于对该模块分析,要是有错,可以双击进入子模块,对其进行修改。 4.3基于C2812的应用系统设计

4.3.1 永磁同步电动机磁场定向控制原理 4.3.1.1永磁同步电动机

近年来,随着微电子和计算机技术的进步,尤其是具有高速计算能力的数字信号处理器的出现,以及高耐热性、高磁性能钕铁硼永磁体的成功应用,使得设计结构简单的永磁同步电动机矢量控制变频调速系统称为可能。永磁同步电动机具有结构简单、运行可靠、体积小、质量轻、损耗小、效率和功率因数高等显著优点。

4.3.1.2 磁场定向控制原理

永磁同步电动机的模型是一个多变量、非线性、强耦合系统。为了实现动态过程的矢量控制,首先要实现解耦。转子磁场定向控制是一种常用的解耦控制方法。

转子磁场定向控制实际上是将Odq同步旋转坐标系放在转子上,随转子同步旋转。其d轴(直轴)与转子的磁场方向重台(定向),q轴(交轴)逆时针超前d轴90°电角度,如图4.1所示。

信息科学与工程学院毕业(设计)论文 第40页

图4.1 转子

图4.1(图中转子的磁极对数为1)表示转子磁场定向后,定子三相不动坐标系A、B、C与转子同步旋转坐标系Odq的位置关系。定子电流矢量is在Odq坐标系上的投影id、iq可以通过对iA、iB、iC的Clarke变换(3/2变换)和Park变换(交/直变换)求得,因此id、iq是直流量。

三相永磁同步伺服电动机的转矩方程为:

Tm?p(?diq??qid)

?p[?fiq?(Ld?Lq)idiq] (4-1)

式中,ψd、ψq——定子磁链在d、q轴的分量;

ψf——转子磁钢在定子上的耦合磁链,它只在d轴上存在; p——转子的磁极对数;

Ld、Lq——永磁同步电动机d、q轴的主电感。

式(4-1)说明转矩由两项组成,括号中的第一项是由三相旋转磁场和永磁磁场相互作用所产生的电磁转矩;第二项是由凸极效应引起的磁阻转矩。 对于嵌入式转子,Ld

由式(4-2)可以明显看出,当三相合成的电流矢量is与d轴的夹角β

信息科学与工程学院毕业(设计)论文 第41页

等于90°时可以获得最大转矩,也就是说is与q轴重合时转矩最大。这时,id=iscosβ=0;iq=issinβ=is。式(2)可以改写为:

Tm?p?fiq?p?fis (4-3)

由于是永磁转子,ψf是一个不变的值,所以式(4-3)说明只要保持is与d轴垂直,就以像直流电动机控制那样,通过调整直流量iq来控制转矩,从而实现三相永磁同步伺服电动机的控制参数的解耦。 4.3.2 基于DSP的永磁同步电动机FOC控制系统计

采用磁场定向控制方法的永磁同步电动机的电磁转矩严格与定子电流幅值成正比,为了得到合适的电磁转矩,需要精确控制定子电流幅值的大小。永磁同步电动机调速控制系统原理如图4.2所示

图4.2 FOC控制系统框图

永磁同步电动机磁场定向控制的速度控制过程可简单描述如下:首先,根据检测到的电动机转速和输入的参考转速及转速与转矩的关系,通过速度PI控制器计算得到定子电流参考输入iSqref。定子相电流ia和ib通过相电流检测电路被提取出来,然后用Clarke变换将它们转换到定子两相坐标系中,使用Park变换再将它们转换到d-q旋转坐标系中。d-q坐标系中的电流信号再与它们的参考输入iSqref和iSdref相比较,其中iSdref=O,通过PI控制器获得理想的控制量。控制信号再进行Park逆变换,送到PWM逆变器,从而得到控制定子三相对称绕组的实际电流。外环速度环产生了定子电流的参考值,内环电

信息科学与工程学院毕业(设计)论文

流环得到实际控制信号,从而构成一个完整的速度FOC双闭环系统。 4.3.3基于Matlab的永磁同步电动机FOC系统建模

第42页

建立一个模型,可以根据需要改变模型的参数来符合特定的电动机。将电动机的电压与功率特性与控制器匹配。

电动机由常用电压电源变级器驱动。DSP控制器为六个电源转换设备使用向量PWM技术产生六个脉冲宽度调制(PWM)信号。电动机(ia和ib)的两个输入电流能通过变级器测定,然后通过两个模数转换器(ADC)传到DSP中。

具体步骤可以参照3.3节而具体的原理图,如图4.3:

图4.3 永磁同步电动机系统

在FOC Algorithm中有子模块(如下图4.4):

信息科学与工程学院毕业(设计)论文

第43页

图4.4 FOC Algorithm

在Scaling Generating(图4.5)和Space Vector(图4.6)下有子模块:

图4.5 Scaling Generating

信息科学与工程学院毕业(设计)论文 第44页

图4.6 Space Vector

在图4.5中的Subsystem(图4.7)有子模块:

图4.7 Scaling Generating中的Subsystem

在图4.5中的multiply by -1(图4.8)有子模块:

本文来源:https://www.bwwdw.com/article/0cgx.html

Top