开篇:润墨网以专业的文秘视角,为您筛选了一篇基于DSP交流伺服系统与CAN总线的通信设计范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!
摘 要:介绍了CAN总线和TMS320LF2407A内嵌CAN控制器的特点,利用PCA82C250芯片作为物理接口实现了交流伺服系统与CAN总线的连接,并与带CAN卡的上位机进行通信,给出了系统的硬件接口电路,对伺服控制器内的系统软件和CAN通信软件进行了分析和设计。利用实验室开发出的交流伺服控制器与PC机通过CAN总线实现了数据的实时通信,实验结果表明,利用DSP自带的CAN控制器可以方便地将单台伺服控制器构成为控制器局域网的一个智能节点。
关键词:CAN总线;DSP;交流伺服系统;通信
中图分类号:TP274 文献标识码:B
文章编号:1004-373X(2009)01-145-03
Communication Design of CAN Bus and AC Servo System Based on DSP
LI Zicheng1,CHENG Shanmei2
(1.School of Electrical & Information Engineering,Wuhan Institute of Technology,Wuhan,430205,China;
2.Huazhong University of Science & Technology,Wuhan,430074,China)
Abstract:The characteristics of CAN bus and CAN controller of TMS320LF2407A are proposed in this paper.AC servo- system is connected with CAN bus by PCA82C250 and communicated with host computer by CAN card.The hardware interface circuit is presented,and the designs of system software and CAN communication software are analyzed respectively.Experimental results show that single servo controller can be connected with CAN bus as an intelligent node in a control network.
Keywords:CAN bus;DSP;AC servo system;communication
CAN是一种串行总线系统,特别适合用于网络化的“智能”I/O设备中[1]。CAN总线最初是由保时捷公司开发的,主要在汽车上使用,由于其具有多主控协议、实时能力、纠错功能和强抑噪功能[2-4]。目前,为适应网络化的要求,交流伺服系统一般采用RS 485总线扩展通信接口[5]。但RS 485采用主从式的通信方式,实时性差,一旦主机通信出现故障,影响到整个系统的正常运行,特别是对于实时性和安全性要求都很高的交流伺服系统来说[6],这是不允许的。现通过对DSP芯片TMS320LF2407内嵌的CAN控制器分析,设计了基于dsp的下位机控制器与CAN总线的硬件接口和软件解决方案,实现了交流伺服控制器通过CAN接口卡与上位机的实时通信。
1 DSP的CAN控制器
TI公司的低功耗、高速DSP芯片TMS320LF2407A具有高速运算能力和高效控制能力。其内嵌的CAN控制器是一个完全的CAN控制器[7-9],完全支持CAN 2.0B协议,它主要有以下特点:有6个邮箱,其数据长度为0~8 B,其中接收邮箱有局域接收邮箱屏蔽寄存器,在发送出错或仲裁时丢失数据的情况下,有自动重发功能、可编程的位定时器和总线错误诊断功能[10]。
CAN控制器的内部结构图如图1所示。
工作过程如下:CAN控制器在接收信息时,先将要接收信息标识符与相应接收邮箱的标识符进行比较,只有标识符相同的信息才能被接收;接收信息时,将数据存入邮箱,标识符存入相应的寄存器;接收完成后,中断标志位被置位。CAN控制器在发送信息时,先将要发送的数据写入邮箱,再设置发送请求位,发送完成后发送应答信号和中断标志位被置位,如果发送失败,发送邮箱将再次发送。
2 系统结构
使用CAN总线的交流伺服系统结构原理图,如 图2所示。
图2 系统结构图
上位机采用带有can适配卡的通用计算机,上位机的主要功能是:通过CAN总线接口与DSP进行通信,接收DSP传来的数据进行处理并向节点发送控制指令。节点负责数据采集、控制、执行。上位机和节点之间通过CAN网络实现数据交换[11]。
CAN卡采用的是研华的双端口隔离CAN总线通信卡PCL-841。由于带有内置的CAN控制器,841能够提供总线仲裁及查错功能,可以在检查到错误时自动重发数据,极大地降低了数据丢失的几率,有效地保证了系统的可靠性,工作的波特率可达1 Mb/s。
核心控制器采用TI公司的DSP芯片TMS320LF2407A。2407A是电机专用控制芯片,将DSP的高速运算能力和面向电机的高效控制能力集于一体,其高速性使复杂的控制策略得以实现。DSP是整个系统的控制核心,由其来实现矢量控制、SVPWM、数字PI等控制策略,完成速度、电流调节及PWM调制。DSP与CAN物理总线之间采用PCA82C250作为接口,它可提供对总线的差动发送和对CAN控制器的差动接收能力,具有较强的抗干扰能力,通过对其引脚8(Rs)的不同连接可以实现3种不同的工作方式:高速、斜率控制和待机方式。接口电路如图3所示。该系统将该引脚通过30 kΩ电阻接地,实现斜率控制方式,以降低射频干扰。因为DSP是3.3 V供电,而82C250用5 V供电,所以需要电平转换电路,必要时也使用隔离电路。
图3 TMS320LF2407A与CAN驱动接口电路
电流检测采用两个30 mΩ的采样电阻检测电机两相电流,另一相可由三相定子电流的对称性计算得到。先通过HCPL788J将小电流信号变换为电压信号,再经LM
向,由脉冲数和脉冲频率可确定角位置和转速,由U,V,W信号可确定转子初始位置。
3 软件设计
3.1 系统软件
系统软件完成整个系统大部分的功能:转速调节、电流调节、矢量变换、磁场定向控制、电流计算、角度及转速计算、键盘和显示、以及通过CAN与上位机通信。
系统软件包括两大部分:主程序和中断服务子程序。主程序完成DSP系统初始化、运行初始化、键盘/LCD控制、运行过程的控制以及故障检测及处理等,其中运行初始化包括定时器和比较单元参数的初始化、转子初始位置确定。在中断子程序中,实现转速环和电流环的控制,完成电机的矢量控制策略,实现转速控制:转速环周期为1 ms,完成转速和位置角度的计算,计算得到的实际转速与给定转速的误差通过转速调节器得到电流Q轴分量的给定值,作为电流环的输入;电流环由PWM定时中断实现,完成相电流的采样、坐标变换等计算,将实际值与给定值比较的误差通过电流调节器,再进行SVPWM脉宽调制,即可得到需要的PWM波形。
3.2 CAN通信软件设计
CAN总线的软件设计包括3个主要部分:CAN芯片的初始化、信息的发送、信息的接收。
CAN芯片的初始化包括位定时器的设置及对邮箱进行初始化。设置位定时器就是对寄存器BCR1,BCR2进行设置,确定CAN控制器的通信波特率、同步跳转宽度、采样次数和重同步方式。初始化邮箱主要是设置邮箱的标识符、发送的是数据帧还是远程帧、对发送数据区赋初值。
信息的发送采用查询的方式,接收可采用中断方式,也可采用查询方式。流程如图4和图5所示。
调试时,可先编写自测试程序(MCR的ATM位 置1),然后分别调试发送和接收模块,最后进行收发联调,这样可以加快调试进程。需要注意的是,在自测试模式时,不需要与CAN总线相连,接收信箱接收CAN自身的发送信箱发送的信息帧,产生应答信号,但是不能接收标识符。接收信息时,注意接收屏蔽使能位AME的设置:AME=0时,禁止相应的标识符屏蔽,接收信箱的标识符必须与被接收的信息标识符相符才能接收;AME=1时,使能相应的标识符屏蔽,设置局部接收屏蔽寄存器(LAM)。
图4 发送流程图
图5 采用中断方式接收流程图
4 结 语
这里主要是在实验室环境下,对CAN总线在变频器系统中的应用做了研究,将TMS320LF2407A用于变频调速系统,充分利用DSP强大的运算功能和丰富的接口电路,同时,将CAN总线引入到现场数据的传输中,从而提高了网络的可靠性和容错能力。实验结果表明,该系统正确、可靠、扩展性好。CAN总线抗干扰性强,控制效果较好。CAN总线上如果有多个以2407A为控制核心的变频调速系统,以不同的标识符来区别各个节点,多节点DSP的硬件接口设计与单节点的设计完全一样。
参考文献
[1]邬宽明.CAN总线原理和应用系统设计[M].北京:北京航空航天大学出版社,2001.
[2]李美玲,萧宝瑾.基于CAN总线数控系统远程输入输出模块的设计与实现[J].现代电子技术,2008,31(9):114-115.
[3]曹万科,张天侠,张霏霏,等.汽车CAN总线可视化实时性分析研究及仿真[J].系统仿真学报,2008,20(9):2 345-2 347.
[4]蔡俊宇,徐国政,关永刚,等.基于CAN总线和ARM的变电站在线监测装置的研制[J].高压电器,2006,42(6): 417-420.
[5]高德欣,张文武,杨清.双速电机高精度测速与参数测试SCADA系统开发[J].电气应用,2007,26(2):105-108.
[6]秦忆,李叶松.现代交流伺服系统[M].武汉:华中理工大学出版社,1995.
[7]曹晨,黄声华.CAN总线在多相永磁无刷直流电机控制中的应用[J].微电机,2005,38(2):63-65.
[8]李永东.交流电机数字控制系统[M].北京:机械工业出版社,2002.
[9]刘和平.TMS320LF240xDSP结构、原理及应用[M].北京:北京航空航天大学出版社,2002.
[10]郑尚透,赵国军,杨如峰,等.基于CAN总线的电梯群控系统的设计[J].计算机与数字工程,2006,34(10):117-119.
[11]唐太岗,曾超.基于ARM9的1553B与CAN总线转换卡的设计与实现[J].现代电子技术,2008,31(9):45-47.
作者简介李自成 男,1977年出生,湖北广水人,讲师,硕士。研究方向为运动控制、计算机集成控制。
程善美 男,1966年出生,湖北潜江人,教授,博士。研究方向为电力电子及电力传动、智能控制技术。