采用DSP和CAN的电机同步控制系统与通信

发布者:JoyfulLife最新更新时间:2016-06-07 来源: elecfans关键字:DSP  CAN  电机同步控制 手机看文章 扫描二维码
随时随地手机看文章
0 引言

传统的多电机控制系统适用于要求不高、相对简单、电机分布比较集中的场合。而对于运动控制中实时性、可靠性、可扩展性、传输距离、传输速度等要求较高的场合,需要采用高传输速度、远传输距离、可靠性较高的通信方式和处理速度快、功能强大、能够实现复杂控制策略的处理器。
  控制器局域网CAN(Controller Area Network)是一种有效支持分布式控制和实时控制的串行通信网络。它属于现场总线范畴,与现有的其它总线相比,它是一种分散式、数字化、双向、多站点的通信系统,具有速率高、可靠性好、智能化高、连接方便等诸多优点,在分布式测试和工业控制等相关领域的应用越来越广泛[1]。
数字信号处理器(Digital Signal Processor,DSP)是一种高速专用微处理器,TMS320F2407A运算功能强大,能实现高速输入和高速率传输数据,且带CAN总线接口。它专门处理以运算为主且不允许延迟的实时信号,可高效进行快速傅里叶变换运算。数字信号处理器的精度高,可靠性好,其先进的品质与性能可为电机控制提供高效可靠的平台[2]。
鉴于CAN总线的通信优势和DSP的强大处理能力,利用二者完全可以设计完成要求较高的多电机控制网络系统。这种功能强大、智能化和网络化程度较高的网络系统满足了工艺复杂、要求较高的多电机控制,它正在兴起并成为多电机控制网络系统的发展趋势[3]。
1 系统结构及其实现
基于CAN总线网络的新型多电机同步控制系统,采用总线式多主多从网络拓扑结构。当系统中不仅有工程师层还包括管理层即多个主节点时,主主通信将实现不同功能主节点的交流(如图1)。整个控制系统由三部分组成:CAN总线、上级PC机、DSP控制系统。系统采用PC 机作为监控主机,实现对各节点的监控和管理;CAN 总线接口卡完成CAN协议的物理层和数据链路层功能,实现PC 机与CAN 总线之间的通信;各从节点通过DSP完成数据的收发和对交流电机的控制[4]。



主节点采用PC微机(或其他兼容机),通过PCI总线双路智能CAN网卡(通信适配器)与CAN总线相连,进行信息交换。CAN网卡电路共分为三大部分:由DS89C420微处理机、74LS373锁存器、32KB的RAM 62256、32KB的EPROM 27256组成的主机部分;双口RAMIDT7005S35PF及其控制电路;由SJA1000、光电隔离电路、82C250组成的CAN控制器和CAN总线接口电路。
从节点由两部分构成:电机控制板和功率驱动板。从节点的基本框图如图2所示。电机控制板以TMS320LF2407A为核心,外围采用各功能模块。其中,PWM模块用于驱动功率器件,A/D模块用来把系统所需要的电流模拟量变换成数字量,实现电流环反馈控制。磁场平衡式霍尔电流传感器(LEM模块)把互感器、磁放大器、霍尔元件和电子线路集成在一起,具有测量、反馈、保护三种功能,LEM模块的输出输入到DSP的三路A/D转换口,转换成数字信号后,再进行相应的处理。光电码盘把检测信息反馈到DSP的正交编码脉冲电路(QEP),实现速度环反馈控制。当LF2407A的QEP被使能(禁止捕获功能),定时器2对引脚CAP1/QEP1和CAP2/QEP2、定时器4对引脚CAP4/QEP3和CAP5/QEP4上的脉冲数目和频率分别计数,可得到电机的角位移和转速。功率驱动板由整流滤波、IGBT驱动、以及IGBT桥和反馈电路组成[5]。 
 


2 软件设计
2.1 CAN 总线网络通信协议设计
CAN 总线采用一种串行数据通信协议,它能有效地支持具有较高安全等级的分布实时控制。根据CAN总线技术规范CAN2.0A、CAN2.0B,本文设计了用户通信协议,各个节点都按此协议传送信息。用户通信协议的帧结构共10个字节(2个字节标识符、8个字节数据和变量),其定义如图3所示。
PRI:1为低优先级,0为高优先级,而剩余的优先级由源地址决定,低地址优先级高。
帧类型:100为单帧广播;000为单帧点对点。
命令或物理变量名:cmd0、cmd1的功能定义有很多,表1仅给出了几种典型的定义。节点根据接收到的数据中两个字节的内容来确定被传送的内容。
物理变量序号:0~255。
Data3~Data0:定义为一个物理变量数据,4字节长整数,原码表示。数据类型为整型、布尔型或浮点型。

 

 

2.3软件实现
本系统程序主要分为三部分:PC机人机交互程序、DS89C420作为CAN与PC机之间通信中介的程序、DSP作为CAN网络节点和电机控制功能的程序。PC机人机交互软件它以可视化界面显示CAN网络上各节点ID、控制命令、发送优先级等。DS89C420的作用是将从CAN网络上采集的数据传送到PC机,并把PC机传过来得数据发送到CAN网络上,它实现的功能类似于协议转换。DSP完成的功能包括:根据PC机发送过来的指令控制电机正转、反转和停止,以及将电机的相电流、运行速度等信息分别通过LF2407A的片上A/D转换器、正交脉冲编码电路等得到;对电机的控制通过LF2407A的事件管理器模块EVA、EVB输出具有适当占空比的PWM脉冲给大功率IGBT管来实现。
2.3.1主主通信
本设计为基于CAN总线的多主多从通信网络系统,主节点可以是工程师站,也可以是副工程师站或其它操作站,由于控制的需要,主节点之间需要传送一些数据。主—主通信的软件设计关键是掌握好CAN控制器的初始化设置例如ID的设置,数据的发送和接收。由于网卡具有接口函数库及网卡的驱动程序,可以方便地进行主—主通信。通信软件已测试成功,通信界面采用VC编写,如图4所示。


2.3.2主从通信
下面的程序是DSP平台和上位机的通信,主节点CAN网卡中的CAN模块初始化和发送子程序。调试过程中需要注意:通信节点的波特率要求一致;主从通信时要求CANMCR = 0x0480,使通信处于正常发送状态;CANH与CANL之间连接终端负载电阻抗干扰。
void CANInit()
{  asm(" SETC INTM ");    /* 禁止中断 */  
IMR = IMR | 0x011;     //使能CAN中断
CANIMR = 0;    //屏蔽所有中断
CANIFR = 0xFFFF;   //清除已挂号中断
CANMCR = 0x0480;   //CAN处于正常工作状态
CANMCR = CANMCR | 0x1000;   //设置CCR,改变配置请求; 
While ( (CANGSR & 0x0010) == 0 ){}   //设置CCE,更改配置启用;
  CANBCR2 = 0x027;     //设置波特率50Kbps
CANBCR1 = 0x005E;
CANMCR = CANMCR & 0xEFFF;  //清除CCR位;
While ( (CANGSR & 0x0010) == 1 ){}    //清除CCE,禁止对配置寄存器进行操作;
CANMailBoxInit();   //初始化邮箱
asm(" CLRC INTM "); /* 开中断 */      
CANTCR =0x0080;   //发送5号邮箱内容;    
While ( (CANTCR & 0x8000) == 0 ){}  //发送成功   }   
3 同步措施及实现
在对多电机的同步控制中,解决电机的实时性问题十分重要。CAN总线具有点对点、一点对多点及全局广播传送数据的功能。虽然CAN总线的信息存取利用了广播式的存取工作方式,信息可以在任何时候由任何节点发送到空闲的总线上,然后根据信息标文符决定是否读取信息包中的数据以判断是否使用这一信息,但是由于各电机的实际情况不同,即使命令同时传送到节点,实际命令的实施时间也不能得到保证。笔者认为仅依靠CAN总线的广播数据功能实现同步控制会产生误差,可以通过软件编程实现误差较小的同步控制。采用两次命令的方式,首先由主站给需要同步的从站用广播的方式发送准备命令和同步速度,主站确认收到准备好命令之后发送第二次具体的命令即启动同步命令。这样可以使误差相对减少。
4 结束语
本文研究了基于CAN总线的多电机同步控制网络的组成和通信实现,设计有效的将DSP的高速处理能力和CAN(Controller Area Network)总线的高性能、高可靠性结合起来,具有很高的使用价值和广阔的应用前景。以上代码全部调试通过,实验证明适用于多台电机串行通信的实际应用以及可以根据实际的系统进行扩展和移植。 

关键字:DSP  CAN  电机同步控制 引用地址:采用DSP和CAN的电机同步控制系统与通信

上一篇:SN65HVD230型CAN总线收发器的原理及应用
下一篇:基于TMS320LF2407的CAN总线数控系统底层测控模块

推荐阅读最新更新时间:2024-05-03 00:26

CAN总线通信控制协议的仿真及性能分析
  控制器局域网(CAN)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。它是由德国博世公司在20世纪80年代专门为汽车行业开发的一种串行通信总线。由于其通信速率高、工作可靠、调试方便、使用灵活和性价比高等优点,己经在汽车业、航空业、工业控制、安全防护等领域中得到了广泛应用,被公认为几种最有前途的总线之一,其协议也发展为重要的国际标准。   随着CAN总线在各个行业和领域的广泛应用,其通信性能也越来越受到人们的关注。目前,已有很多学者对CAN总线通信性能进行分析研究。文中在分析CAN总线通信控制协议的基础上,在MATLAB/Sinulink软件Stateflow仿真环境下,利用有限状态机理论对CAN总线通信系统
[嵌入式]
单片式DSP智能电机控制解决方案
目前,工业用电的三分之二为电机所消耗,而在居民用电中这一比例亦高达四分之一,有鉴于此,电机的效率问题继续受到更大的关注。标准的电机应用完全能以更高的能量效率运行,就电能到机械能的转换而言,大多数电机的效率较低。这意味着它们浪费了大量的能量,以发热的形式散失掉,而未能变换为有用的机械能。 此外,既然一个未受控制的电机必须克服瞬态机械负载的影响,设计者除了加大电机尺寸外很难作出其它的选择,而一个尺寸过大的AC感应电机(最常用的电机类型),其效率必然更低,因为电机是在小于其设计负载的条件下工作。 提高电机的效率 这些问题可以通过智能控制来克服,智能控制可以从两个方面大大提高电机的效率。首先,智能控制采用了先进的算法来提高电机的运行性能。
[嵌入式]
使用DSP加速PCI接口产品的开发
    摘要: 一种基于PLX公司的PCI接口芯片的辅助开发工具,可极大地方便PCI产品的硬件调试,以及驱动程序和应用软件的开发。给出了一个以PCI9052为接口芯片的图形控制器的开发实例,以及在Windows操作系统下如何调用SDK中的API函数。     关键词: PCI桥 PCI9052芯片 SDK VC++6.0 1 PCI总线和PCI桥接芯片 PCI总线就一种目前较为流行的、先进的高速同步总线。它的历史较短,正式的2.2版本于1999年2月发布。其优点在于能够满足设备之间实现快速访问,因为PCI总线的全部读写传送都可以用突发方式进行,且总线速度可达33/66MHz,数据宽度为32/64bit。此外
[应用]
stm32与伺服驱动器进行can通信
实验室师兄之前用stm32之间进行can通信,其中一个作为主机,另外作为从机,从机负责电机运转,并取出电机的速度,然后通过can通信发送给主机,然后主机通过串口与上位机进行通信。这一部分操作可以参照以下链接:https://www.ncnynl.com/archives/201703/1414.html 现在我们选择用伺服驱动器与一个stm32进行can通信,从而实现对电机的控制,目前我们实现的是对电机的速度输入,启动电机,(并进行速度反馈,进行OLED输出,从而进行电机的PID调节)。 首先我们选择了以下图示伺服驱动器,驱动器这块选择淘宝搜索可进行can通信的编码器应该可以找到类似产品 然后按照手册,我们将电机的编码器信
[单片机]
stm32与伺服驱动器进行<font color='red'>can</font>通信
基于CAN总线的并联液压混合动力车控制系统
目前,我国城市公共交通主要依赖公交车,站间距离一般在500~1000米。公交车在每站间有数次刹车和启动,在交通流量的高峰期,刹车和启动更加频繁,带来能源浪费、尾气污染加剧、部件寿命缩短等一系列问题。 本课题研究的控制系统,可使并联液压混合动力车充分利用制动能量,在频繁刹车和启动的路况,可以明显提高车辆启动、加速和减速特性,改善车辆排放,降低油耗,延长发动机及刹车装置的寿命。而且与混合动力电动车相比,该系统在成本,技术成熟度,可靠性,维护性等方面均占有相当的优势。 并联式液压混合动力车的动力传动系中有两种或两种以上的动力源可同时或单独提供动力,有两个或两个以上相应的执行元件可同时驱动负载,该动力传动系主要由发动机、变速箱
[单片机]
基于<font color='red'>CAN</font>总线的并联液压混合动力车<font color='red'>控制</font>系统
基于VC++雷达信号系统软件测试平台的设计
    随着电子计算机技术及电子设备的飞速发展,人们对数据的处理容量、处理速度以及工作平台的实时监控等性能的要求越来越高,从而使得高速、便捷、智能化的高性能数字处理设备成为当今电子设备的发展趋势。       由于一些气象雷达站一般地处环境与气候恶劣的偏远地区。雷达站内雷达信号处理系统的检测与维修存在一定的难度。当系统出现故障要进行检修时,由于地理环境的限制,检修在时间上会有一定的拖延,人们希望对于非硬件电路损坏的故障,能够通过软件平台进行监控,并通过软件来及时对系统进行维护与系统恢复。该软件设计的目的就是为了避开雷达系统存在着一定的机械性和不方便性的缺点来完善该雷达信号处理系统。该软件利用VC++的友好界面来实现PC机、DSP、
[嵌入式]
通用变频器中基于DSP的数字控制器实现
摘 要:介绍了一种以TMS320F240数字信号处理器为核心的异步电机调速系统的数字控制器的硬件和软件设计。介绍了该控制器的结构功能模块和对称空间电压矢量产生的软件流程,并对其中一些基本单元电路和技术进行了分析和讨论,最终给出了该控制器给电机空载实验时所生成的SVPWM波形。 关键词:变频;空间电压矢量;数字信号处理器 0 引言 变频调速系统的关键,就是要没计一个合理的变频器,而它的核心就是变频调速系统的数字控制器。变频器的数字控制器包括信号的检测、滤波、整形,核心算法的实时完成以及驱动信号的产生,系统的监控、保护等功能。 变频器数字控制系统的硬件部分,包括微处 理器、接口电路及外围设备,其中微处理器是系统的控制核心,它通
[应用]
基于DSP的多路音/视频采集处理系统设计
   摘要: 采用TI公司的TMS320DM642型数字媒体数字信号处理器(DSP)设计多路音/视频采集处理系统,实现实时处理4路模拟视频和音频输入、1路模拟/数字视频和l路模拟音频信号输出的功能,该系统可适应PAL/NTSC标准复合视频CVBS或分量视频Y/C格式的模拟信号和标准麦克风或立体声音频模拟输入,具有PAL/NTSC标准S端子或数字RCB模拟/数字信号输出和标准立体声音频模拟输出。并给出软/硬件设计原理和电路。    l 引言   当前,在数字图像处理中,由于数据量大、算法难度高,因此实时性成为技术难点之一。如果采用专用电路实现,虽然实时性得到保证,但系统的灵活度大大降低。因此,寻求一种高速通用数字信号处理系统成为
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved