基于LabVIEW和DSP串口的多通道电机参数采集系统

时间:2011-09-22

  摘 要: 永磁同步电机广泛地应用在各种场合, 为了实现对电机良好的控制, 实时监测电机运行中的各参数是很有必要的。介绍一种以TI 公司的TMS320F2812 系列DSP 作为控制器, LabVIEW 串口通信为基础, 将各路传感器采集的数据实时向上位机发送的方法, 实现一种方便适用、成本低廉、以一个串口实现对电机各参数多通道数据进行采集的系统。实验结果表明, 该方法可以满足实际使用的要求, 实现了对永磁同步电机参数的实时监测, 方便对电机进行更好的控制。

  0  引言

  近年来, 永磁同步电机由于具有定位高、系统响应快且无超调、调速范围宽等显着特征, 已经成为伺服驱动系统中理想的驱动电机。再加上用于电机控制的DSP 芯片的发展, 使得电机能更广泛的应用于电力电子技术应用、电机伺服控制系统等领域。然而永磁同步电机的结构复杂, 控制过程中需要监控的参数比较多, 要想对电机进行良好的控制, 实时采集电机各参数是非常有必要的。

  在工业控制中, 串口是常用的计算机与外部串行设备之间数据传输的通道。而虚拟技术的发展, 使得L abVIEW 越来越广泛用在测试领域。LabVIEW 和串口通信的结合, 可以使一些测试测量更为简单。另外软件中自带的大量的数据分析处理工具包, 可以很方便的完成许多非常复杂的数据处理工作。

  1  系统总体结构

  本系统中, 结合了串口通信和L abVIEW 上位机软件各自的优势, DSP[3] 控制A/ D 转换器采集各传感器的数据, 使模拟量转换为数据量后, 将各路采集的数据以一定的数据格式存储到一个数据帧中, DSP 定时将此数据帧通过串口发送至PC, 采用LabV IEW 软件对串口收到的数据进行采集、显示、处理和存储。这样就在不增加硬件成本的基础上实现了电机控制中各参数简单的实时监测, 比传统的控制器中的数据需先经D/ A 转换器后变为模拟量, 再经示波器观测的方法简单方便很多。

  永磁同步电机控制平台的总体结构如图1 所示。主要包括TMS320F2812 DSP 永磁同步电机控制平台、串口转换电路、LabV IEW 软件开发平台等。在永磁同步电机控制平台中, 电机各参数可通过各路传感器协助监测, 传感器采集的信号经过调理电路后进入A D 转换器, 由DSP计算处理后, 通过串行总线发送至PC, LabVIEW 软件将数据进行采集处理显示。

图1 平台的总体结构图

图1 平台的总体结构图

  2  数据采集硬件部分

  对于永磁同步电机的监控, 主要需要采集的几个参数是电机转速、驱动器每个桥臂的电压电流、各相电压之间的相位、控制电压的频率以及驱动模块的温度。由于进行数据采集的DSP 和上位机系统都是弱电系统, 而电机和其驱动器都属于强电系统, 因此进行数据采集时应对两者之间进行电信号的隔离, 这样可以对弱电系统进行保护, 同时也可以降低强电系统对数据采集系统的干扰, 本系统中采用将数据采集部分整体与强电部分直接连接, 然后, 数据采集部分的控制器与上位机之间的通信采用隔离模块连接的方法, 这种方式比采用隔离放大器的成本低, 同时也可以起到保护上位机的作用。

图2  数据采集系统结构

图2  数据采集系统结构

  数据采集部分的主要结构如图2 所示。由于电机的驱动器为三相结构, 因此每相的数据都要采集, 这就需要三组电压和电流传感器。由于需要采集的电压和电流属于强电信号, 因此采用非接触式的电压和电流互感器进行采集, 而永磁同步电机的工作频率跨度很大, 因为为了适应这种宽范围的测量, 应选用霍尔型互感器。另外, 为了防止驱动器的IGBT 模块因为过热烧毁, 必须在每路的IGBT 上安装温度传感器, 当温度超, 及时关断IGBT。

  考虑到温度测量的线性度和范围, 这里采用Pt100 铂电阻进行温度采集。对于电机转速的测量, 采用光电编码器。

  3  系统软件设计

  系统软件设计包括DSP软件程序和上位机LabVIEW软件。

  3. 1  DSP 软件程序

  定点DSP 运算的数据都是定点数, 为了更好地支持小数的运算, 可以采用Q 格式或S 格式表示小数。

  TMS320F2812 可采用Q 格式, Q = 1~ 30, 可以很方便地用32 位定点数表示不同范围的浮点数。

  在实际的串口通信过程中, 考虑到PC 的串行缓冲区多只能接受8 位2 进制数据。则在DSP 中, 需要将待发送的32 位定点数拆分成4 个8 位数, 然后依次发送。实际的应用过程中, 传送的数据是以多个字节组成的。要传输的数据有多种, 这就需要每个数据都有对应的变量标识和实际的数据值。这时, DSP 就需要对每种数据进行打包, 将变量标识和数据组成1 个完整的数据帧, 再通过串口发送这个完整的数据帧。上位机串行缓冲区接收到数据后, LabV IEW 软件通过处理, 将数据帧中数据按一定顺序重组, 得出传感器所在的通道数和此通道采集的数据,再将数据除以定标值, 可以很方便地得到每路传感器采集的浮点数值。本系统中, 每个通道传感器采集的数据所组成的数据帧如图3 所示。

图3 某一通道传感器采集的数据所组成的数据帧

图3 某一通道传感器采集的数据所组成的数据帧

  在图3 的数据帧中, 每个数据帧由7 个字节数组成, 第1 位表示DSP 串口发送每个通道采集的数据是以16 进制字符节0xAA 作为起始标识。第2 位此传感器所在的通道数。

  第3 位表示采集数据的符号位, 0 表示正数, 1 表示负数。第4~ 7 位表示采集到的数据以32 位定点数表示。如图4 所示。为2 个通道采集的数据组成的数据帧, 实际中将10 个通道采集的数据信息以图3 的格式连接组成一个更大的数据帧, 然后由DSP 串口将此数据帧发送给上位机。

图4 2 个通道采集的数据组成的数据帧

图4 2 个通道采集的数据组成的数据帧

  因为采集各传感器的数据是对电机运行过程中的控制情况起到监测作用, 所以对数据采集的速度要求不是非常高。本系统中,DSP 定时( 10 ms) 时间由串口向上位机发送10 通道采集数据的数据帧。

  3. 2  上位机软件部分

  3. 2. 1  LabV IEW 中串口功能模块简介

  上位机LabVIEW 软件的功能模板仪器I/ O 中包含了串行通信常用的功能模块。包括VISA配置串口、VISA 写入、VISA 读取、VISA 设置I/ O 缓冲区大小VISA关闭等8 个函数。其中VISA( vir tual instrument sof twarearchitect ure) 是应用于仪器编程的标准I/ O 应用程序接口, 具有良好的兼容性、独立性和扩展性。本系统主要使用到VISA 配置函数( VISA Conf igure Ser ial Por t) 、VISA读取函数( VISA Read) 和VISA 关闭( VISA Close) 函数。

  其中VISA 配置函数主要用于配置串口的初始化, 本系统中使用的串口通信程序的波特率为19 200, 数据位为8 位,停止位为1 位。

  3. 2. 2  LabV IEW 串口软件流程及被动接收方式

  本文中的LabV IEW 软件程序主要用到VISA 配置函数、VISA 读取函数、VISA 关闭串口节点, 及循环、条件等程序结构。其中L abVIEW 串口接收数据程序流程图如图5 所示。

图5  LabVIEW 串口接收程序流程

图5  LabVIEW 串口接收程序流程

  本系统中L abVIEW 串口采用被动接收方式接收数据, 为保证接收数据的正确性采用数据帧的方式进行通信。LabV IEW 软件通过串口配置节点设置串口通讯的波特率、数据位数、校验方式、停止位等参数。参数设置好后, 利用读串口节点读取串口缓冲区的数据, 程序中设置每次从串口读取1 个字节的数据, 当程序判断该字节是有效数据的开始时, 就将开始数据及后面的共70 个( 总共采集10 个通道的数据, 每个通采集的数据由图1 所示的数据帧表示) 字节数据有效的读取、存取、计算处理, 整个程序结束时, 利用关闭串口节点函数将占用的串口资源释放掉。L abVIEW 程序框图如图6 所示。

图6  LabVIEW 串口接收及数据处理程序

图6  LabVIEW 串口接收及数据处理程序

  3. 2. 3  数据处理

  当LabV IEW 串口接收到DSP 串口发送来的字节数据时, 开始判断这个字节数据是不是0xAA , 如果此字节数据是0xAA , 并且下个采集到的字节数据是0x01( 表示第1通道) , 则表示串口正在发送的数据是第1 通道的数据帧,则从0xAA 开始的70 个字节的数据都为各通道采集的数据。可利用LabVIEW 的移位寄存器将这70 个数据读取,并存放到LabVIEW 一维数组中, 下一步通过对数组相应位数的读取,可以读取每一通道的符号位,和4 个字节组成的32 位定点数, 再用条件结构判断符号位, 如果为0 则表示采集到的数据为正, 为1 表示采集的数据为负, 然后再将32 位定点数转换为符点数, 可以得到每通道传感器采集的值, 通过LabV IEW 的波形图节点可显示出波形。

  4  测试及结果

  为了验证本系统串口发送的数据、接收数据及波形显示数据的正确性, 测试系统固定每个通道DSP 串口发送的数据, 如果在这种情况下, 发送的数据和LabV IEW 软件图形节点实时显示的数据一样, 则本系统实现了实时正确显示采集数据的功能。使用上述系统进行实现, 取1~ 4通道为例, 第1~ 4 通道, DSP 发送的数据组成的数据帧为: 0xAA, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0xAA,0x02, 0x01, 0x00, 0x00, 0x00, 0x02, 0xA A, 0x03, 0x00,0x00, 0x00, 0x00, 0x03, 0xAA, 0x04, 0x01, 0x00, 0x00,0x00, 0x04; 图7 为这四通道DSP 发送的数据的波形

图7 1~ 4 通道DSP 发送的数据的波形

图7 1~ 4 通道DSP 发送的数据的波形

  经分析验证, 生成的4 路波形, 真实地反应了DSP 发送的4 路变量。其中, 数据定标部分, 如果DSP 对数据进行了定标处理, 则在LabVIEW 中需要对数据进行相应的反处理。可见, 本系统具有以下特点: 能够动态的显示实时采集数据波形; 能够正确的显示采集的数据; 可以对当前采集数据进行实时读取。

  5  结  论

  本文中的实验平台采用DSP 的串口作为数据发送端,L abVIEW 作为数据接收端, 实现了对多通道传感器的实时数据采集, 且LabVIEW 可作为多通道示波器, 正确地显示出各通道采集数据的实时波形。本系统具有成本低, 操作简单, 界面友好, 功能丰富, 可移植性强, 可扩展性强等特点。

  在实现以上功能的基础上, 以后可以对该平台进一步扩展, 如成本的降低, 硬件系统性能的提高, 更高速的通信方式, 用户界面的完善, 远程控制等方面, 使平台更加实用方便。

参考文献:

[1]. TMS320F2812  datasheet https://www.dzsc.com/datasheet/TMS320F2812+_1116432.html.
[2]. Pt100  datasheet https://www.dzsc.com/datasheet/Pt100+_1196170.html.
[3]. PC  datasheet https://www.dzsc.com/datasheet/PC+_2043275.html.

上一篇:一种IGBT驱动电路的设计
下一篇:智能防盗防火及照明控制系统

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料