基于DSP和CAN的电机同步控制系统与通信

发布者:rnm888最新更新时间:2009-11-17 来源: 微计算机信息关键字: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)总线的高性能、高可靠性结合起来,具有很高的使用价值和广阔的应用前景。以上代码全部调试通过,实验证明适用于多台电机串行通信的实际应用以及可以根据实际的系统进行扩展和移植。
本文作者创新点:电机同步控制措施的提出。

关键字:CAN总线  数字信号处理器  同步控制 引用地址:基于DSP和CAN的电机同步控制系统与通信

上一篇:基于SoPC的自感知运动图像采集系统设计
下一篇:赛灵思隆重推出EasyPath-6 FPGA

推荐阅读最新更新时间:2024-05-02 20:55

基于CAN总线的并联液压混合动力车控制系统
    目前,我国城市公共交通主要依赖公交车,站间距离一般在500~1000米。公交车在每站间有数次刹车和启动,在交通流量的高峰期,刹车和启动更加频繁,带来能源浪费、尾气污染加剧、部件寿命缩短等一系列问题。     本课题研究的控制系统,可使并联液压混合动力车充分利用制动能量,在频繁刹车和启动的路况,可以明显提高车辆启动、加速和减速特性,改善车辆排放,降低油耗,延长发动机及刹车装置的寿命。而且与混合动力电动车相比,该系统在成本,技术成熟度,可靠性,维护性等方面均占有相当的优势。     并联式液压混合动力车的动力传动系中有两种或两种以上的动力源可同时或单独提供动力,有两个或两个以上相应的执行元件可同时驱动负载,该动力传动系主要由
[嵌入式]
基于DSP的数码相机中的MPEG-4压缩方案
  虽然数码相机(DSC)投入市场仅几年时间,但已经使消费类电子成像业发生了翻天覆地的变化。目前,全球售出的相机中大约有三分之一是数码相机,而且其份额还在稳步上升。随着多兆象素DSC生成分辨率越来越高的图像而开始挑战传统的胶卷像机,消费类DSC也正提供智能化操作模式,帮助用户在各种条件下都能拍摄出更好的照片。视频模式也已经成为消费类DSC的标准功能,使用户能够快速拍摄多个照片,以便选择更好的快照,同时也使他们能够保存重大事件的简短剪辑。此外,DSC也开始与手机集成在一起,实现静止图片与剪辑随时随地的快速传输。   随着瞬息万变的DSC市场不断分化,开发商必须不断充分利用技术创新的优势来细分其产品。当今其中一项创新就是在基于高性能
[手机便携]
基于<font color='red'>DSP</font>的数码相机中的MPEG-4压缩方案
支持CAN总线的电动车辅助逆变电源的设计
  电动车由于储能设备容量有限,在运行过程中对电能流向管理十分严格。精确的电能管理可以延长车辆运行里程,减少电池充电频率,从而节约运行成本。车载能量管理系统需要随时监控电池电压、电机输出功率以及其它设备的用电情况。同时,电动车电子控制系统的动态信息必须具有实时性,各子系统需要将车辆的公共数据实时共享,如电机转速、车轮转换、油门踏板位置等。但不同控制单元的控制周期不同,数据转换速度、各控制命令优先级也不同,因此需要一种具有优先权竞争模式的数据交换网络,并且本身具有极高的通信速率。此外,作为一种载人交通工具,电动汽车必须具有极高的运行稳定性,整车通讯系统必须具有很强的容错能力和快速处理能力。    德国Bosch公司为了解决现代车辆中
[电源管理]
支持<font color='red'>CAN总线</font>的电动车辅助逆变电源的设计
CAN 总线计时权衡因素:信号速率与线缆长度的关系
有一个关于得克萨斯州民间英雄 Pecos Bill 的故事:那时,有人打赌他不能从从得克萨斯州的加尔维斯敦游过墨西哥湾到达弗罗里达州的基韦斯特。他训练了一个月,当这一天到来时他便一头扎进了墨西哥湾。Bill 不分昼夜地游了一个星期,期间战鲨鱼斗飓风。最终,他离自己的目标越来越近。然而,当他在海浪中看到远处的基韦斯特时,他意识到他已经太累,无法再继续向前游了,因此他转身游回了得克萨斯! 致力于 CAN 通信的设计人员就像 Pecos Bill 一样面对他们所遇到的种种挑战,往返信号传输成为一个重要的考虑因素。 当一个以上节点要在共用总线上发送信号时,控制器局域网 (CAN) 协议的一个关键特性就是如何处理总线争用问题。CA
[嵌入式]
基于DSP控制的燃料电池客车用DC/DC变换器研究
  能源短缺及环境污染的问题成为当今世界迫切需要解决的综合问题,而传统的汽车工业便是能源与环境最大杀手之一,发展清洁、高效的汽车新动力能源已成为十分紧迫的任务。燃料电池(Fuel Cel1)就是这样一种绿色能源技术。为了改善燃料电池较“软”的输出特性,通过DC/DC 变换器将燃料电池的电压变换后给主驱动电机及其控制系统,满足它们输入特性的要求,这样就使得燃料电池输出特性变“硬”,并且匹配了变换器的输出阻抗,所以具有良好控制特性,并且实现数字化控制、通讯和保护的可靠稳定的DC/DC 变换器的研制就成为迫切的需求。     近年来DSP技术的日臻完善,标志着数字化技术的兴起,使得控制领域又面临着一次重大的技术变革
[电源管理]
基于<font color='red'>DSP</font><font color='red'>控制</font>的燃料电池客车用DC/DC变换器研究
基于CAN总线的电动汽车数字控制系统研究
    电动汽车是集计算机技术、通信技术、电子技术、新材料技术等一体化的高科技产品,其结构复杂,有多种相互作用却又相对独立的部件,且车载环境较恶劣,有很强的干扰,用模拟量的控制可靠性不高。先进高效的控制体系结构,可以使电动汽车各系统之间的数据交换满足简单迅速、可靠性高、抗干扰能力强、实时性好、系统错误检测和隔离能力强等要求。本文采用了先进的计算机技术和CAN总线技术,集智能控制、信号采集、数据处理和通信于一体,控制实时性好,可实现整车控制智能化和多传感器信息的有效融合。 1 CAN总线的简介     CAN(ControllerAreaNewtork)即控制器局域网,是一种先进的串行通信协议,属于现场总线范围。CAN总线是最初由
[嵌入式]
语音识别及其定点DSP实现
      语音识别研究的根本目的是研究出一种具有听觉功能的机器,能直接接受人的口呼命令,理解人的意图并做出相应的反映。语音识别系统的研究涉及微机技术、人工智能、数字信号处理、模式识别、声学、语言学和认知科学等许多学科领域,是一个多学科综合性研究领域。近年来,高性能数字信号处理芯片DSP(Digital Signal Process)技术的迅速发展,为语音识别的实时实现提供了可能,其中,AD公司的数字信号处理芯片以其良好的性价比和代码的可移植性被广泛地应用于各个领域。因此,我们采用AD公司的定点DSP处理芯片ADSP2181实现了语音信号的识别。    1 语音识别的基本过程   根据实际中的应用不同,语音识别系统可以分
[嵌入式]
基于DSP的多超声测距数据采集处理系统
摘要:介绍了自行设计的移动机器人CASIA-I中超声测距系统的软、硬件,以及超声测距数据与上位机通信的设计和实现过程。该系统以DSP-TMS320LF2407A作为核心处理器,以CAN总线为基础,实现了上述功能。经实验验证,测距范围为0.45m~3.5m,系统测距精度在0.7%以内,可以满足移动机器人室内导航的要求。 关键词:移动机器人 DSP 超声测距 CAN总线通讯 移动机器人要实现在未知和不确定环境下运行,必须具备自动导航和避障功能。在移动机器人的导航系统中,传感器起着举足轻重的作用。视觉、激光、红外、超声传感器等都在实际系统中得到了广泛的应用。其中,超声波传感器以其信息处理简单、速度快和价格低,被广泛用作移动机器人的测
[应用]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

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

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