基于ZYNQSoC的多轴运动控制系统方案_第1页
基于ZYNQSoC的多轴运动控制系统方案_第2页
基于ZYNQSoC的多轴运动控制系统方案_第3页
基于ZYNQSoC的多轴运动控制系统方案_第4页
基于ZYNQSoC的多轴运动控制系统方案_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、OpenHW12项目申请基于 ZYNQ SoC的多轴运动控制系统安富利特别题目基于 Zynq 平台的伺服控制或运动控制系统项目成员 :华中科技大学二一二年十一月目录1 项目概述 11.1 工业应用 11.2 系统方案 32 工作原理介绍 63 项目系统框架图 83.1 ZYNQ硬件系统框架图 . 83.2 软件系统框架图 . 93.3 多轴控制器实现 . 104 项目设计预计效果 115 附录一:项目技术基础 . 135.1 软硬件协同设计架构 . . 135.2 软件设计 145.3 总结 166 附录二: ZYNQ基础 161 项目概述1.1 工业应用运动控制系统广泛应用于工业自动化领域,

2、 包括机器人手臂、 装 配生产线、起重设备、数控加工机床等等。并且随着高性能永磁材料 的发展、电力电子技术的发展以及大规模集成电路和计算机技术的发 展使得永磁同步电机( PMS,M Permanent Magnet Synchronous Motor ) 控制系统的设计开发难度降低、成本降低,同时 PMSM在运动控制系 统中作为执行器件的应用也越来越广泛。 大量运动控制器的设计与实 现都是基于通用嵌入式处理器。 在此基础上, 很多学者和研究人员对 运动控制系统进行了大量的研究。多轴控制的发展是为了满足工业机器人、工业传动等应用需求。 其主要包括两大方面, 多轴串联控制和多轴同步控制。 当系统负

3、载较 大、传动精度要求很高、运行环境比较复杂的情况下,经常使用多轴 串联的方式来解决,如图 1.1 所示。1)双电机齿条传动2) NASA 70-m天线设备图 1.1 多轴串联控制系统应用多轴串联控制器可以实现包括多轴力矩动态分配、传动补偿校 正、多轴位置 / 速度同步等功能。其主要应用场合包括立式车床回转 台、复合车床对向主轴、龙门起重设备。当前,主要驱动设备厂商都推出有支持多轴串联功能的产品。 例 如 Rockwell 1336 IMPACT AC Drive ,其采用主从控制方案实现多轴 串联功能。SIEMEN S INUMERIK8 40D则采用交叉耦合控制(CCC,c ross co

4、uple control )方案。 FANU、C ABB、Mitsubishi electric都有类似功能的驱动产品。国外也有众多学者进行了大量的研究。在20 世纪 70 年代,主从控制方案由于系统结构简单、调试方便被广泛用于 这类应用中。然而,主从控制方案未能充分发挥各单轴驱动的性能, 系统带宽与响应速度十分有限。 受限于当时单轴驱动与主从控制器的 性能,当系统运行在环境复杂,转速、转矩响应要求较高的场合,主 从控制方案难以满足应用需求。 如何充分利用单轴运行状态, 建立多 轴间状态关系?如何设计控制器, 对整个系统进行控制补偿, 实现多 轴之间的协调同步。针对上述问题, Y. Koren

5、 于 1980 年提出了交叉 耦合控制方案, 并逐步应用于多轴串联控制系统中。 随着电机驱动技 术和嵌入式技术的不断发展,交叉耦合控制方案得到了不断的完善。 多位学者针对不同应用对交叉耦合控制方案进行了深入的分析, 并设 计控制算法对各个轴的位置、速度、转矩信号进行补偿和协调。所设 计的交叉耦合控制器已在不同的数字处理器平台中得到实现, 取得了 良好的控制效果。随着数控技术等的发展, 高精度的多轴同步控制系统的发展也越 来越快,需求也在逐渐增大。例如在多轴加工机床、多轴雕刻机、贴 片机手臂等系统上的应用。 在这些工业应用中, 对多台电机运动控制 协调的精度需求也不断增加。上述的应用和研究方案,

6、大多采用多个驱动单元分布式安装控 制,通过工业以太网或者现场总线通信。 串联协同和同步控制的计算 处理主要在上位机中完成。这种方案灵活可靠,应用广泛,特别适合 于大型分布式系统,如自动化生产线、重型机床。然而,当以下情况发生时,上述方案的局限性就会突显出来。( 1)设备集成度较高,对驱动电路的体积有一定限制;( 2) 系统需采用不同通信接口的驱动设备, 难以购买成套设备; (3)当设备数量和设备间通信的信息量增加时,将对系统通信 模块的设计带来巨大挑战。(4)上位机负担了大量的计算、通信和实时人机交互任务。上 位机的成本会随着系统的复杂程度不断提高。本方案针对上述问题,依托 ZYNQ SoC丰

7、富灵活的资源配置,将 单电机驱动控制算法、 多轴控制算法、 实时人机交互集成于 ZYNQS oC 中。系统集成化程度得到全面的提升,配置更加灵活,可以实现不同 设备间的互联。系统设备数量成倍降低,并且可以实现分布式管理。 上位机不用负担计算任务,硬件成本进一步降低。1.2 系统方案传统数字处理器实现多轴串联控制器的方案存在诸多限制。 交叉 耦合控制器设计难度大, 实现困难。为了实现各个电机驱动间的连接, 使得系统可以运用于不同的场合,系统需要匹配不同的电机驱动接 口。为了实现转矩的动态分配和传动补偿, 需要实时观测各个电机的 工作情况。 由于多轴同步控制器参数整定比较复杂, 需要控制器拥有 较

8、强的处理计算能力, 甚至可以支持在线动态参数整定。 上述这些功 能的实现,需要复杂的硬件设计、强大的实时计算能力、昂贵的系统 配置和较高的系统功耗。针对上述需求,如何通过改进系统结构,采 用高效的开发方法和工具实现多轴串联控制系统, 具有重要的应用价 值和学术研究价值。本设计通过齿轮传动, 将多台 PMSM电机装配在一起, 为系统提 供更大的力矩输出和更高的带宽。我们通过设计多轴串联控制系统, 将不同的电机驱动连接起来, 控制各个驱动器保持实时协调同步。 并 且,该系统还将包括多轴串联控制器辅助调试和可视化人机交互接口 等一系列功能。我们将双轴 PMSM电机共同连接在一个较大的齿轮盘上,并在齿

9、 轮中央同轴安装一台 PMSM电机。实现大齿轮盘与中间同轴电机的旋 转同步。系统实现 3D效果图如下图 1.3 所示。本设计拟将多轴控制系统从底层驱动至上位机人机交互等一整 套完整的功能,通过分层实现的方法逐一实现 PMSM驱动、驱动级协 同、基于操作系统的人机交互等层次设计。 在进一步提高系统效率和 通用性、降低硬件成本的基础上,保证系统的完整性,为用户调试和 使用提供方便。图 1.3 系统整体测试台效果图ZED开发系统采用 Xilinx Zynq-7000 系列处理器。 Zynq-7000 系 列处理器基于 Xilinx 可扩展处理平台。单片处理器拥有双核 ARM Cortex- A9 处

10、理系统和 28nm Xilinx 7 系列可编程逻辑单元。其可 编程逻辑单元通过动态可重配置可以实现不同电机驱动接口的连接。 高速片总线实现信息在 Zynq-7000 处理单元间的无缝传递。 丰富的外 部设备接口保证 Zynq-7000 处理器对系统状态的实时观测。 Zynq-7000 处理器强大的处理能力、丰富的计算手段可以实现多轴串 联控制器参数的在线整定。在此基础上,双核 ARMC ortex-A9 处理系 统可以实现系统任务实时管理与人机交互。 相比数字信号处理器 (DSP, digital signal processor)和工控机( IPC, industry personalco

11、mputer),基于可编程逻辑单元的控制器可以发挥其并行处理的优 势,在更短的时间实现复杂的控制算法。 这样,基于 Xilinx Zynq-7000 系列处理器的 ZED开发系统可以实现一整套多轴同步控制系统。 从底 层的多轴串联控制算法, 到系统上层的人机交互与基于模型的计算机辅助调试功能,都可以在一块芯片中完成。因此,整个系统的低功耗和电路的可复用性也可以实现。同时,上述方案与 ASIC( application-specific integrated circuit)相比,该方案通用性优势明显,且系统成本大幅度降低。所以,采用 ZED开发系统设计多轴同步控制系统, 不仅对多轴控 制系统的

12、发展、推广有重要的工程应用价值。同时,将有助于多轴控 制系统的理论分析与工程设计相结合, 具有学术研究价值。 与此同时, 本项目将采用嵌入式软 / 硬件协同设计的方式进行开发,借助 ZED开 发系统的技术支撑, 力求在开发效率、 开发成本和系统性能等方面得 到全面的优化。2 工作原理介绍图 2.1 系统工作原理图借助于 ZED开发板强大的性能和完善的设计软件,可以实现快 速、高效的系统开发。系统工作原理如图 2.1 所示。前期系统模型和 分析利用 Matlab 完成。通过 Matlab 与 Xilinx 产品的相互支持,设 计者可以快速确定控制器方案和具体实施细节,包括多轴串联控制 器、多轴同

13、步控制器、状态观测器等。控制信号通过标准接口传递给 各个电机驱动, 控制各轴的运动。 各轴的实时状态也通过接口反馈到 上位机,并可以传递给 Matlab 进行数据分析和参数调试。针对多轴串联控制器, 本设计采用交叉耦合结构, 在线监测各轴 工作状态, 以此自适应调整各个单轴控制器和多轴控制器。 多轴串联 控制器对各个单轴驱动器进行实时补偿。 并实现同步控制器协同中央 电机和两个大齿轮驱动电机的协同旋转。详细系统框图如图 2.2 所示。图 2.2 多轴控制系统框图3 项目系统框架图3.1 ZYNQ硬件系统框架图图 3.1 系统顶层设计系统设计结构图如图 3.1 所示。主要包括高密度数据处理、控

14、制算法以及基于操作系统的人机交互和任务管理系统等。 多个电机驱 动使用 ZYNQ的 PL 逻辑部分完全实现。ZYNQ系统框架如图 3.2 所示。 ARMC ortex-A9 处理核心主要负责 人机交互、系统通信、任务管理和部分实时控制任务。其分别安装通 用操作系统( GPOS, general purpose operating system )和实时操 作系统( RTOS, real-time operating system )。通用操作系统主要 用于管理人机交互任务和系统通信, 可实现本系统与上位机设备的连 接。实时操作系统主要管理系统的控制任务,合理分配系统资源。并通过与 Zynq 可

15、编程逻辑的数据交换,实现系统高速并行处理。除此 之外,本设计针对系统硬件进行了存储扩展, 以提高系统的存储控制 和运行速度。并在此基础上, ZYNQ可编程逻辑单元负责大量的控制 算法和信号处理计算,包括系统辨识、多轴控制算法等。利用可重配 置标准接口,系统可以实现控制不同类型的电机驱动。图 3.2 硬件系统框架图3.2 软件系统框架图本项目将采用软 / 硬件协同设计的方式进行开发。项目针对系统 需求进行软 / 硬件协同划分。在硬件开发的同时进行软件设计与实现, 并及时进行协同和调整。详细软件系统框架如图 3.3 所示。Cortex-A9 CPU1 搭载 Linux 操作系统,主要负责信息交互与

16、高 性能处理设备扩展。 Cortex-A9 CPU2 搭载 TOPPERS/AS实P 时操作系 统,负责传感器信息采集、通用外设调度以及与 ZYNQ SoC可编程逻 辑单元的信息交互。图 3.3 软件系统框架3.3 多轴控制器实现控制器实现对多个电机闭环控制系统的协同,使用模糊控制器 等实现多电机同步算法。模糊控制是利用模糊数学的基本思想和理论的控制方法,由于 在多轴控制之中,虽然能对各个电机建立模型,但对于多个电机之 间存在耦合关系之后,模型的建立相当困难,并且控制器要求的输 入变量较多,所以使用模糊数学处理该控制器较为方便。但是在模糊控制器的实现中,对于规则整定参数调节等方便存 在一定的难

17、度,所以对于规则表的自整定也是研究的热门话题。我 们决定使用者粒子群优化算法 ( Particle Swarmo ptimization ,PSO)实现参数、规则表的整定。实现框图如图 3.4 所示图 3.4 控制器结构图对于 PSO算法,我们考察了之前论文的实现情况,使用 Xilinx Pro 系列 FPGA XC2VP3即0 可实现 5 并行的的 PSO。而 ZYNQ逻辑 资源量远大于该 FPGA的资源量。 所以实现这些算法, 同时实现模糊 控制器以及多个电机的电流、速度闭环控制器是绰绰有余的。当然我们实现 GA/PSO算法也可以考虑使用 ARM-A9核实现,这 要考虑具体算法的时间复杂度

18、以及编程复杂度, 同时考虑计算量等, 最终使用最少的资源拿出最好的解决方案。4 项目设计预计效果本项目利用基于 Xilinx Zynq-7000 系列处理器的 ZED开发系统,实现多轴串联控制系统以及多电机高性能同步控制系统。 实际实验平 台依照图 1.3 设计实现。实验平台中绿色齿轮由左右两台电机带动, 黄色齿轮由中间电机带动。预计设计效果为:( 1)在 ZYNQ的 PL部分实现实验平台上所有三台 PMSM电机的电 流环控制模块。( 2)实现多轴控制算法及电机对象状态观测,可驱动至少2 台电机运行于串联连接状态。 控制系统可有效发挥各单轴驱动性能, 保 证系统响应迅速,抗扰动能力强。具体到该

19、平台上就是实现左右两台电机通过多轴串联控制器实 现消除齿轮间隙(消隙) 、增加带宽等高性能驱动。(3)实现控制器参数在线学习、自调整。能够精确控制多个运 动轴之间的协同运动。具体到该平台上就是在绿色大齿轮和黄色齿轮的转动上做协同 控制,保证两个齿轮上固定的细连接杆不断。( 4)系统搭载 Linux 多核操作系统和 TOPPERS/FM多P核实时操 作系统。系统功能覆盖底层信息传递至上位机图形显示。 用户上位机 操作实验平台运转,并且可利用上位机调试和监测整个系统。(5)系统支持可重配置通用接口,可连接不同电机驱动。系统 通用性强,可应用与不同场合。(6)项目采用软 / 硬件协同设计方式进行开发

20、。 系统开发效率高, 并且易于根据用户需求开发定制型服务和扩展功能5 附录一:项目技术基础参与比赛项目:第三届 OpenHW开源硬件与嵌入式大赛,项目名 称为“基于软硬件协同处理 的小型轮式机器人平台 ”,项目连 接: ./project/index_view_1945.html 。5.1 软硬件协同设计架构该项目中使用 Xilinx 公司 Spartan 6 系列 FPGA芯片 XC6SLX16 和 ARM7处理器 NXP LPC2478基本结构,设计了一种层次化的处理平 台、三种协同处理架构以及通用协同处理片结构, 并在轮式机器人应 用中进行具体设计,完成了数字图像处理

21、、双闭环运动控制、点阵液 晶显示、智能手机平台控制。结果显示,软硬件协同处理架构大大提 升了系统性能, 设计开发方法更加快了开发进程。 该平台在工业控制 领域具有一定广泛意义和推广价值, 该架构下的轮式机器人适合研究 自动驾驶、自动泊车、图像处理、智能控制算法等机器人应用。随着 基于 FPGA的 SOPC技术的发展,使用 SOPC技术来实现可重配置的机 器人控制器也成为了机器人平台研究的热点。 然而基于开发控制系统 的商业性、系统可升级性、 算法复杂度以及工具链、生态链成熟度的 角度考虑,使用基于 ARM的 CPU作为主控制器更易于实现该平台。 同 时,非常有商业前景的实时嵌入式操作系统 TO

22、PPER在S ARM7上的移 植可以丰富系统的应用及加强实时性。项目系统结构图如下图 5.1 所示。系统实现了 FPGA与 ARM系统的片外 EMC总线图 5. 1 系统结构图5.2 软件设计ARM7主控制器方面移植 TOPPERS/AS实P 时操作系统,并且实现 了 USB主从协议栈,以太网协议栈,文件系统等组件, ARM通过 EMC 总线访问 FPGA的资源,这样只要定义好访问规则以及含义就像访问 一个普通的外设一样方便。我们已经在 FPGA部实现了电机的双闭环 控制,摄像头采集的图像信息的预处理, 以及小型黑白字符点阵液晶 的控制。举例而言,对于电机的控制, ARM只需要对电机给定速度就

23、可以, 如果需要获取速度也可以直接读取对应的地址的容就可以。同时由于 ARM控制器部实现了实时操作系统, 在 ARM端可以实现 一个 FPGA不好实现的控制算法并且保证算法的实时性,同时已经实 现了通过 ARM的以太网接口连接到小型 USB供电的路由器上, 建立一 个小型的无线局域网, 并且已经在 android 上实现了一个应用, 可以通过 wifi 连接到这个无线网络,来和 ARM进行网络通信,由于我们 自己定义好了一套基于 TCP和 UDP的 传输协议,其中 TCP主要负责 可靠的数据传输, 用于发送控制命令, UDP主要用于传输大量的数据, 这里我们将摄像头采集到的实时图像返回到 an

24、droid 客户端,并且可 以实时显示。 通过定义好的通信协议我们可以通过 android 客户端做 更多更高级的算法处理,将处理结果通过网络传输回去。为了验证系统的实时控制能力, 我们还实现了小型移动机器人的 循线控制,通过摄像头采集赛道上的数据, FPGA进行图像预处理, FPGA通过外部中断的方式通知 ARM控制器图像预处理完毕, ARM就从 定义好的存储位置获取处理后的图像, 将其进行简单的运算, 获取路 径信息,给出合适的速度和角度,然后通过对 FPGA定义好的运动控制寄存器设定每个电机的速度, 这样形成一个周期性的控制, 就可以 实现循线的目标。小型移动机器人整体的结构图如下图 5.2 所示图 5. 2 实现及处理结果5.3 总结我们之前的项目开发基础

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论