0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >工业控制 > 基于DSP控制器TMS320F2810+MAX471+74LS245实现直流电机测试系统中的设计方案

基于DSP控制器TMS320F2810+MAX471+74LS245实现直流电机测试系统中的设计方案

2020-12-15
类别:工业控制
eye 271
文章创建人 拍明芯城

原标题:基于DSP控制器TMS320F2810实现直流电机测试系统中的设计方案

  作者:赵政春,陆绮荣,叶汉民

  随着电子工业的迅速发展,对小型直流电机的需求量越来越大。这一类直流电机在出厂前往往需要对其电流和转速进行测试。具体的方式是给电机提供多种占空比的PWM控制信号,在不同的占空比下分别测试电机的电流和转速。传统的测试方法需采用多台通用仪器:用信号发生器提供电机所需的PWM信号,通过电阻采样电机的电流,并送电压表头显示,使用光电感应的方法测转速,通过示波器观察波形。目前在我国采用的大多是传统的测试方法,传统方法要求在车间的每个生产线上设置多个检测点,每个测试点只能测量一种占空比下PWM信号控制的电机电流和转速。因此,在每个测试点都要配备测试员和一套完整的测试仪,使得成本很高。而且在测试过程中,要完成一个电机的测试必须经过多个测试点,每个点测试时都要测试员插拔电机的接线,使得测试效率很低。因此,传统的测试方法严重制约了直流电机生产企业的效率。针对这种状况,设计了一种基于DSP控制器TMS320F2810的新型直流电机自动测试系统。该系统给电机提供各种占空比的PWM控制信号,通过DSP采样电机的电流信号和输出脉冲信号,计算出电机的电流和转速,并送到显示屏上显示,同时还通过CAN总线把数据送到上位机保存和分析,并能通过上位机给各个控制接点发送指令和数据。此系统可同时测试多个电机,在一个测试点上一次接线就能完成所有占空比下的电流和转速的测试,大大提高了测试效率。

  1.系统网络结构和TMS320F2810简介

  系统结网络构如图1所示。该系统主要由上位计算机及监控软件、基于PCI总线的CAN智能网络通信适配器及与其相配套的设备驱动程序(WDM)、现场控制节点单元和基于CAN现场总线其他功能模块组成。

  

1.jpg


  图1系统网络结构图

  TMS320F2810是TI公司的高集成高性能DSP,采用高性能静态CMOS技术,工作频率150MHz,低功耗和3.3V闪存编程电压,支持边界JTAG扫描,高性能32位CPU能进行16x16和32x32MAC运算,16x16双MAC。片内存储器有多达128Kx16闪存,128Kx16ROM,1Kx16OTPROM,L0和L1为2个4Kx16区块,每个为单存取RAM(SARAM),H0为8x16SARAM区块,M0和M1为1Kx162个区块,每个是SARAM,引导ROM为4Kx16外接接口能连接高达1M总存储器和可编等待状态,有看门狗计时器模块,三个外接中断和三个32位CPU计时器,最高采样率为12.5MSPS,自动排序器可以提供高达16路的通道自动切换,也可以分成两个独立的8通道自动切换。F2810最多可提供16路PWM波形输出,支持SCI、SPI、MCBSP、eCAN等多种通信方式。多达56个单独编程的复接GPIO输出引脚,有先进的仿真和调试特性,工作温度从-40℃到85℃和从-40℃到125℃,F2810可用于要求严格的控制系统中[1][4]。

  2.系统控制节点硬件组成

  

image.png


  图2测试节点硬件结构图

  2.1电机电流和输出脉冲信号的采集调理电路

  由于所检测的电机的电流会因型号不同而差别很大,范围在几十毫安到二、三安培。本系统中,采用了美国MAXIM公司的双向精密电流传感放大器MAX471[2]。MAX471内置35mΩ的精密传感电阻,可测量的电流范围是±3A,在工作温度范围内,其精度为2%,其响应时间、速度和漂移等指标均很理想,可以适应3A以内的各种规格直流电机的电流测量。电流信号通过RS+和RS-输入到MAX471的采样电阻RSENSE上,MAX471通过一个2kΩ的输出电阻将电流转换成0~3V的电压信号,直接送到DSP的A/D转换器中。输出脉冲信号是从电机的I/O端直接输出的一串方波信号,其频率和电机的转速成正比,用于检测电机的转速。输出脉冲信号是电压信号,经电阻分压转换到0~3V内,然后经过一个电压跟随器传送到F2810的A/D输入端。

  2.2PWM输出信号驱动电路

  F2810片内的事件管理器模块可以提供多达16路的PWM输出信号,最小的死区时间宽度是一个CPU时钟周期,最小的PWM脉冲宽度和脉宽的增减量为一个CPU时钟周期,可以很方便地用来控制直流电机[5]。由于电机要求的PWM控制信号的幅值是5~10V,因此从DSP输出的PWM信号还需经过一个高速开关管反向器升压后送至电机的PWM控制端。

  2.3复位电路

  系统的复位电路采用IMP708芯片,该芯片有上电复位、看门狗和电源监控功能。在系统的程序由于外部干扰导致“跑飞”时,IMP708的看门狗在一可选择的时间间隔内产生复位信号热启动系统。IMP708具有电源监控功能,通过IMP708和DS1556的双重监控能够保证使系统可靠运行。

  2.4键盘和液晶显示电路(LCD)

  键盘采用标准的PS/2口的小数字键盘,用来输入设置参数。键盘和DSP之间采用复杂可编程逻辑器件(CPLD)作译码电路,将键盘的扫描码映射到DSP的I/O扩展地址0x8001。当有键按下时,CPLD发送一个中断信号到DSP,然后DSP从I/O扩展地址0x8001读取扫描码。液晶显示模块(LCD)和DSP之间通过CPLD译码,将命令控制I/O映射到地址0x8001,将数据控制I/O地址映射到0x8003和0x8004[6]。因为LCD是5V器件,所以其8位数据线不能和3.3V的DSP直接相连,需要在数据线上加电平隔离和转换芯片74LS245。

  3.CAN通信协议设计

  CAN遵从OSI层模型,按照OSI标准模型,CAN结构划分为两层:数据链路层和物理层,它们由CAN控制器的硬件实现电平变换和帧的封装。CAN网络中包括4种不同类型的帧。其中,数据帧将数据由发送器传至接收器;远程帧由节点发送以请求具有相同ID标志符的数据帧;出错帧可由任何节点发送,以控制总线错误;而超载帧用于提供先前和后续数据帧或远程帧之间的附加延时。另外,数据帧和远程帧以帧空间同先前帧隔开。在实际应用中,还需要建立自己的上层协议。在本系统设计中,采用简单实用的“命令项加数据项”结构[3],其完整数据帧结构如图3示。考虑到工在业控制中,功能一般不多,因此命令项的长度设定为1B(可描述128种命令)。而在本控制系统中,命令所需参数一般不会大于7B,故数据项长度直接设为7B。

  

image.png


  图3数据帧结构

  4.软件设计

  系统的CAN应用节点部分采用的是BasicCAN程序,它包含初始化子程序、发送子程序、接收子程序三个部分。DSP软件编写采用的是TI公司的DSP集成开发环境CCS2000,它支持汇编语言和C语言编程。为了保证程序运行效率,核心算法FFT程序和中断向量表程序采用汇编语言编写,而其它程序都采用C语言编写,使本系统软件具有模块化、结构化、可移植性好和调试方便的特点。系统的软件执行过程是:首先是系统初始化工作,即设置寄存器、配置GPIO、定时器、A/D转换器和外部中断、启动A/D转换。然后检测GPIO有没有启动信号,检测到启动信号后,从另一个GPIO发出控制信号给直流电机加电。从A/D转换器里读取电流信号数据,再通过求平均值得到电机的电流值;对输出脉冲信号的数据进行FFT变换,求出基波的频率,再根据电机的具体型号乘以一个系数得到电机的转速。最后把测试电流和转速送给LCD显示,启动CAN总线传输,把测试结果传输到上位PC机,以对数据进行保存和分析。软件流程如图4所示。

  

image.png


  图4软件流程图

  5.结束语

  本系统采用了以CAN总线构建了自动化小型直流电机测试系统,设计中以DSP芯片F2810为核心的自动测试单元能利用DSP的多路模拟量输入通道和多路PWM输出通道以及高速计算能力,同时实现对多个电机的准确、高效率的测试。该系统在测试速度、性价比和可维护性等方面均有明显的优势。


责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯