微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > DSP交流伺服系统与CAN总线的通信设计

DSP交流伺服系统与CAN总线的通信设计

时间:12-20 来源:互联网 点击:

1 DSP的CAN控制器

  TI公司的低功耗、高速DSP芯片TMS320LF2407A具有高速运算能力和高效控制能力。其内嵌的CAN控制器是一个完全的CAN控制器,完全支持CAN2.0B协议,它主要有以下特点:有6个邮箱,其数据长度为0~8 B,其中接收邮箱有局域接收邮箱屏蔽寄存器,在发送出错或仲裁时丢失数据的情况下,有自动重发功能、可编程的位定时器和总线错误诊断功能。

  CAN控制器的内部结构图如图1所示。 


图1 CAN控制器的内部结构图

  工作过程如下:CAN控制器在接收信息时,先将要接收信息标识符与相应接收邮箱的标识符进行比较,只有标识符相同的信息才能被接收;接收信息时,将数据存入邮箱,标识符存入相应的寄存器;接收完成后,中断标志位被置位。CAN控制器在发送信息时,先将要发送的数据写入邮箱,再设置发送请求位,发送完成后发送应答信号和中断标志位被置位,如果发送失败,发送邮箱将再次发送。

2 系统结构

  使用CAN总线的交流伺服系统结构原理图,如图2所示。 

 
图2 CAN总线的交流伺服系统结构原理图

  上位机采用带有CAN适配卡的通用计算机,上位机的主要功能是:通过CAN总线接口与DSP进行通信,接收DSP传来的数据进行处理并向节点发送控制指令。节点负责数据采集、控制、执行。上位机和节点之间通过CAN网络实现数据交换。

  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 接口电路

  电流检测采用两个30 mΩ的采样电阻检测电机两相电流,另一
相可由三相定子电流的对称性计算得到。先通过HCPL788J将小电流信号变换为电压信号,再经LM324进行放大滤波,变换为O~3.3V的单极性电压信号送到2407A的10位A/D单元进行转换。速度检测采用增量式光电码盘,分辨率为2 500 p/r,提供A,A,B,B,Z,Z,U,U,V,V,W,W信号,其中A,B正交,Z为标志脉冲信号,U,V,W互差120°电角度。由A,B两个脉冲序列哪个先到达可确定电机的旋转方向,由脉冲数和脉冲频率可确定角位置和转速,由U,V,W信号可确定转子初始位置。

3 软件设计

  3.1 系统软件

  系统软件完成整个系统大部分的功能:转速调节、电流调节、矢量变换、磁场定向控制、电流计算、角度及转速计算、键盘和显示、以及通过CAN与上位机通信。

  系统软件包括两大部分:主程序和中断服务子程序。主程序完成DSP系统初始化、运行初始化、键盘/LCD控制、运行过程的控制以及故障检测及处理等,其中运行初始化包括定时器和比较单元参数的初始化、转子初始位置确定。在中断子程序中,实现转速环和电流环的控制,完成电机的矢量控制策略,实现转速控制:转速环周期为1 ms,完成转速和位置角度的计算,计算得到的实际转速与给定转速的误差通过转速调节器得到电流Q轴分量的给定值,作为电流环的输入;电流环由PWM定时中断实现,完成相电流的采样、坐标变换等计算,将实际值与给定值比较的误差通过电流调节器,再进行SVPWM脉宽调制,即可得到需要的PWM波形。

  3.2 CAN通信软件设计

  CAN总线的软件设计包括3个主要部分:CAN芯片的初始化、信息的发送、信息的接收。CAN芯片的初始化包括位定时器的设置及对邮箱进行初始化。设置位定时器就是对寄存器BCRl,BCR2进行设置,确定CAN控制器的通信波特率、同步跳转宽度、采样次数和重同步方式。初始化邮箱主要是设置邮箱的标识符、发送的是数据帧还是远程帧、对发送数据区赋初值。

  信息的发送采用查询的方式,接收可采用中断方式,也可采用查询方式。流程如图4和图5所示。  


图5 接收可采用中断方式流程

调试时,可先编写自测试程序(MCR的ATM位置1),然后分别调试发

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top