0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于TMS320LF2407A和CY09449芯片实现运动控制卡的设计

电子设计 来源:集成电路应用 作者:夏勇,韩春林,何 2020-06-11 08:01 次阅读

引言

当今,开放式数控系统正在工业领域得到广泛应用。其中,工控机通过PCI总线连接专用运动控制卡的数控系统最为流行。在运动控制卡中,由于DSP采用多总线哈佛结构使得处理指令和数据可以同时进行,因此相比传统控制中的单片机具有更多的优势。同时,运动控制卡与PC机通过PCI局部总线通信,能够达到很高的数据传输速率,从而还保证了数控系统的实时性。

系统概述

系统的功能框图如图1所示。该系统的核心是TI公司的16位定点DSP芯片TMS320LF2407A。DSP芯片负责接收PCI局部总线的命令和参数,然后经过特定的运动控制算法,如系统位置、速度调节、插补算法等,从而完成对步进电机的精确运动控制。同时DSP芯片还负责将反馈信息传输给PCI局部总线,并且控制系统外围I/O模块。DSP芯片与计算机的通信通过PCI桥接芯片CY09449实现。

基于TMS320LF2407A和CY09449芯片实现运动控制卡的设计

DSP模块

DSP芯片TMS320LF2407A采用高性能静态CMOS工艺,供电电压仅3.3V;指令周期缩短到33ns。

作为系统的核心,TMS320LF 2407A主要完成复杂的运动控制算法,比如升降频控制、插入补偿等。本设计主要是完成双轴步进电机控制,故插入补偿采用经典的DDA算法。由于本设计对步进电机采用无反馈控制,这样对步进电机的升降频控制就显得格外重要,这也成了整个系统设计的一个难点。根据步进电机变速过程动力学特性,以指数曲线前段规律作为前后沿的近似梯形波,进而确定升降频特性,这样既能保证步进电机运行过程不会失步,又充分发挥了步进电机的固有性能,使升频过程达到时间最短的要求。下面讨论一下升降频控制的算法实现。

升降频控制

为实现所确定的运行频率—时间函数,通常是将其离散化,即将其转换为脉冲时间间隔对脉冲个数的函数。另一种方法是按升降频过程所走过的脉冲步数通过定步中断来变频。但是离散化方法既会引起频率突跳和失步,又要进行复杂的迭代运算,而定步法同样需要进行迭代。这两种方法在DSP上都不易实现且灵活性较差。为此本文研究了一种称为定时的方法。

设最高运行频率为fh(电机恒速段的速度),升频段总时间为ts。则根据步进电动机指数型升频过程的频率—时间关系:

f(t)=fM-(fM-fb)*exp(-t/T) (1)

式中fb为步进电动机起动频率;fM为极限运行频率;T为驱动系统时间常数

则有fh=f(ts)=fM-(fM-fb)*exp(-ts/T)

从而得到

ts=T*ln((fM-fb)/(fM-fh)) (2)

将ts等分为N段,得到各段时间为:ta=ts/N

则在第i个等分段ta内脉冲切换频率和要送出的脉冲数分别为:

f[i]=f(i*ta)=fM-(fM-fb)*exp(-i*ta/T)(3)

X[i]=ta*f[i] (4)

故升频段的总步数为:

P=X[0]+X[1]+…+X[N-1] (5)

将脉冲间隔1/f[i]转换为DSP内部16位定时器的时间常数K[i]。转换关系式为

K[i]=f_DSP/f[i], i=0,1,2…, N-1 (6)

由于降频段特性变化规律与升频段相反,可知降频序列是升频序列的逆序列。

电机在恒速步进阶段,以fh的换相频率步进。因此对应的定时器时间常数为:

K[N]=f_DSP/fh (7)

恒速段总步数为:

X_h=X_total-2*P (8)

式中X_total为步进电机运动的总步数。

电机运行前,由主程序计算出升频段和恒速段定时器时间常数序列K[i](i=0, …,N-1),存放于DSP的SARAM中,形成一个K-P升速表格。当电机运行时,在线查表,并取出K[i]用于设置DSP的PWM中周期寄存器的值,从而不断改变PWM波形的周期,实现对电机的速度调节。根据升速、降速或高频恒速,决定升速表地址指针增1、减1或不变。通过这种定时的方法,一方面提高了系统的灵活性,可根据输入的最高频率、起动频率等参数改变升降速表,另一方面升降速表的求取不占用运行时间,从而提高了运行效率。

系统的部分软件流程

图2为升降频控制子程序流程图,其中:p_SARAM为指向电机升降速时间常数表的指针,采用DSP的内部SARAM来存放该表;X_up、X_con、X_down分别代表电机在升速段、恒速段、降速段要走的总步数;up_flag、con_flag、down_flag分别代表当前电机的运动状态(升速、恒速、降速)。

DSP与PC机的通信

DSP与PC机的通信通过CY09449连接,CY09449内部带有128KB双向静态SRAM,为了在工作中,使PC机和DSP对SRAM的访问不会发生冲突,本设计中把SRAM均分为两个单元A和B, PC机和DSP对这两部分的操作采用乒乓操作模式。由于DSP具有外部数据存储器扩展能力,所以该SRAM完全可以作为DSP的外扩数据存储器,这样在设计中便采用DSP的外部数据存储器有效信号/DS来作为CY09449的片选信号/SELECT。

DSP的编码接口

本设计也考虑到如果需要对电机进行高级精确控制时,就需要对电机进行闭环控制。一般情况下,会运用光电编码器作为系统的闭环反馈元件。由于本设计是针对双轴步进电机的运动,而单轴的光电编码器就输出两相相差为90°的脉冲信号A、B,以及归零信号Z(都是差分形式),这样一共就有6路反馈信号。但是DSP只有两个正交编码单元,所以设计中把DSP的引脚PWM9和PWM10设为通用输入脚。这样,反馈信号经过高速光耦隔离后,就送入到DSP的正交编码接口QEP1/QEP2、QEP3/QEP4,以及PWM9/PWM10,然后由DSP对该反馈信号进行计算处理,从而得出电机的实际运动信息。

步进电机接口

本设计中通过DSP的PWM单元来对步进电机进行控制。由于电机是功率器件,所以由DSP输出的PWM波形不能直接输入到驱动器中,而是必须采用光耦进行隔离,这样才能避免电机的大电压信号把DSP烧坏。此外由于DSP输出的PWM信号很弱,如果直接加在电机驱动器上,驱动器将检测不到该信号,所以在DSP的PWM信号输出级需加长线驱动。本设计中采用了5V的差分长线驱动器AM26LS31。

PCI模块

本系统选择PCI局部总线作为DSP与上位机的通信方式,主要是因为PCI总线速率最高可达528Mbps,实时性强。PCI总线的开发一般可以有两种方案实现:一种是用FPGA实现;另一种则是使用专用的PCI接口芯片。为节省时间本系统选择专用芯片CY09449进行开发。该芯片采用3.3 V 单电源供电,兼容3V和5V 的PCI信号环境。CY09449的电源可由PCI槽引出,PCI槽可以提供3.3V、5V、12V电压,在PCI槽有两个引脚需特别注意:PRSNT1和PRSNT2,这两个引脚接地和悬空的4种组合直接决定PCI卡的功率。CY 09449在使用时,某些引脚要加阻值为1k?~1Ok?的下拉或上拉电阻。根据本系统地具体情况在该设计中,SCL、SDA、ALE、/BE[2]、RDY_IN引脚加上拉电阻, TEST_MODE引脚加下拉电阻。

结语

基于PCI总线,配以数据处理能力强大的DSP设计的步进电机运动控制卡,在开放式数控系统中能够发挥出理想的运动控制性能。随着数控系统的普及和产品档次的提高,这种运动控制卡将会有广泛的应用前景。

责任编辑:gt


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • dsp
    dsp
    +关注

    关注

    552

    文章

    7962

    浏览量

    348252
  • 芯片
    +关注

    关注

    453

    文章

    50387

    浏览量

    421783
  • 工控机
    +关注

    关注

    10

    文章

    1682

    浏览量

    50440
收藏 人收藏

    评论

    相关推荐

    TMS320LF2407TMS320LF2407a 有什么区别啊。。。

    TMS320LF2407TMS320LF2407a 有什么区别啊。。。
    发表于 02-27 14:05

    基于TMS320LF2407A的调音器设计

    基于TMS320LF2407A的调音器设计 摘要:设计了一种基于数字信号处理芯片TMS320LF2407的调音器系统,以咪头拾取吉他弦音,将声音信号转换为电信号,再用模数转换器转换为数字信号,通过
    发表于 12-18 11:43

    如何使用TMS320LF2407A的bootrom

    小弟新手,请问各位大侠,如何使用TMS320LF2407A的bootrom,如何满足bootrom需求的数据格式?恳请大侠们指教
    发表于 07-13 15:33

    基于TMS320LF2407ACY09449芯片设计的运动控制卡

    基于TMS320LF2407ACY09449芯片实现运动控制卡的设计
    发表于 12-21 07:53

    基于TMS320LF2407A的全数字单相变频器的设计及实现方法

    本文介绍了基于DSP TMS320LF2407A并使用SPWM控制技术的全数字单相变频器的设计及实现方法,最后给出了实验波形。
    发表于 04-02 06:37

    TMS320LF2407A为数字控制系统的设计提供了参考

    TMS320LF2407A的体系结构是由什么组成的?TMS320LF2407A有哪些功能特性?TMS320LF2407A控制领域中的应用有哪些?T
    发表于 04-14 06:18

    TMS320LF2407A 矢量控制变频器的开发经验

    TMS320LF2407A 矢量控制变频器的开发经验
    发表于 05-18 13:19 14次下载

    基于TMS320LF2407A直流电机闭环调速控制系统的设计

      针对某型直流电机调速系统的要求,采用TMS320LF2407A和AT89C51设计一种双核直流电机闭环调速控制系统。TMS320LF2407A采集和调节电机转速信号,AT89C51输入给定转速并显示电机转速。
    发表于 02-11 12:15 65次下载

    TMS320LF2407A基于CAN总线技术的数字交流伺服系

    TMS320LF2407A基于CAN总线技术的数字交流伺服系统     通过TMS320LF2407A作为控制核心,通过CAN总线通讯实现数字交流伺服系
    发表于 10-12 11:18 1386次阅读
    <b class='flag-5'>TMS320LF2407A</b>基于CAN总线技术的数字交流伺服系

    基于DSP芯片TMS320LF2407A的全数字单相变频器的

      本文介绍了基于DSP芯片TMS320LF2407A并使用SPWM控制技术的全数字单相变频器的设计及实现方法,最后给出了实验波形。
    发表于 11-27 10:58 2271次阅读
    基于DSP<b class='flag-5'>芯片</b><b class='flag-5'>TMS320LF2407A</b>的全数字单相变频器的

    基于TMS320LF2407A的SVPWM变频调速系统的应用

    基于TMS320LF2407A的SVPWM变频调速系统的应用。
    发表于 04-18 10:46 34次下载

    基于TMS320LF2407A的SVPWM变频系统的设计

    基于TMS320LF2407A的SVPWM变频系统的设计
    发表于 04-19 13:57 19次下载

    TMS320LF2407A汇编指令

    TMS320LF2407A汇编指令(word版1.0)
    发表于 05-06 16:54 33次下载

    基于TMS320LF2407A的SVPWM变频系统的研究及实现

    基于TMS320LF2407A的SVPWM变频系统的研究及实现
    发表于 05-06 16:54 14次下载

    控制TMS320LF2407A系列数据手册

    控制TMS320LF2407A系列数据手册
    发表于 07-20 09:19 13次下载