工控网首页
>

应用设计

>

基于DSP+FPGA的开放式伺服运动控制器的研究

基于DSP+FPGA的开放式伺服运动控制器的研究

2006/5/8 9:45:00
[摘 要] 运动控制系统在制造业中应用越来越广泛,而先进的运动控制器的设计和制造已成为当今衡量一个国家工业发达水平的一个重要标志。提出一种基于DSP+FPGA的开放式运动控制器的设计方法。详细介绍了系统的组成和硬件设计,并给出整个系统的软件处理方法和软件框架结构。 运动控制器是数控机床机器人等一类机电一体化设备中常用的基础部件。随着集成电路技术、微电子技术、计算机技术和网络技术的不断发展,运动控制器已经从以单片机或微处理器作为核心的运动控制器和以专用芯片(ASIC)作为核心处理器的运动控制器,发展到了基于PC机平台的以数字信号处理器(DSP)和现场可编程门阵列(FPGA)作为核心处理器的协处理架构的开放式运动控制器。这种将PC机的信息处理能力和开放式的特点与运动控制器很强的运动轨迹控制能力有机地结合在一起,具有信息处理能力强、开放程度高、运动轨迹控制准确、通用性好的特点。这种模式在一个统一的人机对话平台上,利用同一个硬件电路通过DSP算法和FPGA配置进行适当的调整来实现不同的硬件功能模块,可以方便地和多种类型的驱动器进行连接。 1 运动控制系统原理 从结构上来看,整个运动控制系统包括人机接口、控制指令识别电路、信号转换和控制信号发生电路、驱动电路。就控制方式来说,包括脉冲控制和模拟控制方式,一般情况下速度控制方式和转矩控制方式属模拟控制,位置控制为脉冲控制,在实际应用中位置控制方式最为普遍。系统具体结构如图1,虚线框内是运动控制器结构原理。
运动控制系统中,常常要用到联机通信,就是在一个PC机平台上同时控制多台电机运动。工业现场多采用现场总线的联机方式,其特点就是双向、多节点、总线式全数字通讯,在满足工作条件的情况下简化了现场布线。 运动控制器通过对上位控制指令进行识别并处理,向外发送伺服放大器能够识别的信号进而驱动电机运行。现在驱动器的功能做得越来越强大,各大驱动器厂商的产品都在向统一的控制标准靠近,控制器只需对其发送标准控制指令,其他操作即可交给驱动器来完成,这在很大程度上增强了运动控制器与多种驱动器的兼容性,同时也简化了运动控制器的设计。 2 硬件设计 该开放式运动控制器以PC机作为信息处理人机对话平台,完成坐标变换、轨迹规划、粗插补运算等控制指令的设置和发送,同时可以实时显示当前伺服系统的运动状态;以DSP芯片作为运动控制器的核心处理器,完成数据处理和控制算法、进行保护中断的处理;FPGA芯片作为协处理器完成编码信号的采集与鉴相处理,对脉冲和模拟量进行配置和输出,把DSP处理过的控制数据经过内部转换送到外部设备,并管理DSP和各种外部设备的接口配置,特别是在多轴控制中FPGA内部能做到真正的并行处理。这种预处理或后处理操作可以使DSP专注于复杂算法的实现,系统运行在准并行状态,加快了处理速度;在进行脉冲或模拟量输出时对信号的每一位都用门电路进行驱动,以高速匹配其他芯片外围设备。 针对不同的驱动器和控制模式,系统可以在PC机界面上选择模拟控制或脉冲控制,进而选择位置、速度或转矩方式来输出控制命令,同时根据情况决定是否进行多机通信。系统中的大量复杂算法主要在运动控制器中进行,PC机和控制器之间实时传输的数据量不大,利用电脑串口已能满足系统数据传输的要求。控制器硬件设计时,DSP芯片选美国刊公司的产品TMS320LF2407A,FPGA芯片为美国Xilinx公司的产品XC2S150,所选DSP芯片和FPGA芯片可直接相连。模拟信号控制时,数模转换芯片为Burr-Browrn公司的12位精度的电压输出芯片DAC7625,经外部放大器转换成驱动器可以正确识别的电平信号。脉冲输出具有串行差动输出或集电极输出两种形式,串行差动输出时用AM26LS31驱动。
图2输出到驱动器的信号即是命令和控制信号,反馈信号一般是对应电机的状态信号。系统支持现场总线联机通信。 3 软件处理 系统开机,首先由PC机对控制状态和各种方式进行设置,根据这些控制方式以及各种设置对电机的运转进行坐标变换、轨迹规划和粗插补运算,然后把这些数据和控制方式经过编码方式由串口发送到运动控制器;运动控制器接收到这些数据后,对各个数据进行存储并判断,进而发出相应的控制指令到驱动器来驱动电机运行。在控制器内部设置有联机通信以及控制与反馈数据交换的存储空间。 上位机选Visual Basic的Mscomm控件进行串行通信。然后把控制方式、命令代码和参数大小等都进行编码发送到控制器的命令寄存器,准备后续的控制工作。格式如下:包头(FF)+包长(n)+(命令代码1+命令数据)+(命令代码2+命令数据)+…+(命令代码n+命令数据)+包尾(C3),包长格式(En),命令代码(Dx),命令数据(O×O×O×O×),经过这样明确的编码以后,PC机和控制器之间对代码和数据的解释就可避免歧义。对控制器来说,就是实时与PC机和驱动器进行通信,对相应的数据状态和命令代码进行正确的解释判断并迅速做出反应。命令代码的解释和状态判断,以及控制器的对外通道的配置由FPFA完成,而复杂的控制算法由DSP完成。 控制指令包括:启动和停止,速度、位置、转矩控制模式选择,梯形或曲线控制,初始位置、转矩、速度、加速度,最终的位置、转矩、速度、加速度和持续时间等,都由特定的编码和数值格式来表示。控制器能每隔一段时间检测当前状态,如果和控制指令预期的结果差别太大,将在数据调整后再次发送控制指令。
而电机的转动方向可以由不同的编码相位或电平信号来控制。控制器还能根据驱动器反馈回来的信号判断出当前电机的速度、方向、位置等状态,并将这些信息送到PC机进行实时显示。 在电机的变速运动过程中,突然的加速和减速会对电机产生很大的冲击,因此在速度变化时应设置一定的加速和减速时间。这种具有一定的加速和减速时间的控制方法就是所说的梯形控制和曲线控制。梯形易于控制,但仍会产生一定的冲击,合理的曲线控制可以有效减小这种冲击,使电机速度平滑变化,但控制比较复杂。 这里的曲控制算法由DSP计算完成,脉冲和模拟量输出由FPGA进行配置和输出。 根据以上设计思想,我们给出系统所用的程序框架图如图3。
本系统通过PC机友好方便的界面控制,采用DSP+FPGA架构,有效地发挥了DSP高速复杂的控制算法运算功能,和FPGA的灵活多变的编程和输出控制功能。根据国际开放的通信协议和控制算法.利用FPGA对输出端口的重新配置能迅速匹配不同驱动器的接口控制要求,甚至在硬件电路基本不变的情况下完善系统软件,即可在很大范围内适应多种运动系统的控制,大大增强了系统的开放性和灵活性。 4 结束语 基于DSP+FPGA的设计是当前数字电路研究开发的一种重要实现形式。高速DSP使得现代控制理论得以在运动控制器出实现,FPGA内部功能可以通过软件来改变,与全定制ASIC电路相比有着开发周期短,成本低等优点。由于采用FPGA技术来进行硬件设计,此运动控制器系统设计具有很大的灵活性,从真正意义上实现了软硬件的协同设计,方便运动控制器供应商根据客户的特殊工艺要求和技术要求进行个性化的定制,形成独特的产品,可大大缩短系统开发周期,有效降低成本和硬件开发风险,具有很好的应用前景。
投诉建议

提交

查看更多评论
其他资讯

查看更多

智光节能内蒙古阿拉善左旗瀛海建材余热发电机组首次启动成功

智光电气台州电厂给水泵系统节能改造项目成功投运

智光节能荣登2014年度全国节能服务公司百强榜第五位

索引程序编程凸轮表

奥越信300系列PLC手册