基于LabVIEW 的电机数据采集系统设计
2021-12-13王智琦林立
王智琦 林立
(1、邵阳学院电气工程学院,湖南邵阳 422000 2、多电源地区电网运行与控制湖南省重点实验室,湖南邵阳 422000)
考虑到在进行电机控制策略设计与调试时,通常使用示波器对电机电压或电流等单个数据进行观测,无法较为直观的反应出电机电压、电流、转速等信号的联动性,因此本文使用LabVIEW 设计电机数据采集系统,利用串口将多个数据发送至采集系统并进行解调与显示。可实现电机运行中电流、电压、转速等多个数据的实时观测。
1 串口与主循环设置
电机数据采集系统对三相电流、转速、励磁电流、转矩电流、励磁电压和转矩电压8 个float 类型32 位信号进行采集,串口传递数据遵循RS-232 协议标准,将8 个信号拆解成4*8 位无符号整型,通过串口进行数据发送,且每次首尾增加常数帧进行校验,即每次主循环应有34 帧数据从串口缓存区调出进行显示,如图1 所示,在主循环中添加属性节点,设置成Instr类,引出串口数据个数接口,当串口缓存数据大于68 时即串口缓存数据满足两次调用时进行下一步,否则等待。
图1 系统主循环设置
2 数据解调、恢复与显示设计
串口缓存区数据帧数大于68 时,将其中34 帧数据取出并解调,具体解调流程图如图2 所示,程序设计如图3 所示,需要校验首尾常数帧是否正确,如不正确则中间的32 位数据帧将不送往显示,只有首尾常数帧满足要求,才将中间32 个数据帧送往显示。
图2 数据解调流程图
图3 数据解调设计
数据满足首尾常数条件后,进行数据恢复与显示设计,如图4 所示,将数据连接至For 循环的输入隧道时,自动索引隧道每次读取数组的一个元素,以4 个数据帧为一组,按顺序将无符号字节数据进行移位操作,移位完成后将数据进行强制类型转换成单精度类型。
图4 数据恢复设计
32 个数据帧每4 帧数据恢复成1 个单精度数据,共恢复为8 组数据,每组数据存放在长度为3000 的数组中,如图5 所示将数组2 送往示波器进行图形显示,且每次循环执行程序时,利用数组替换子集模块插入新元素,利用先入先出原则替换之前的数据,从而达到实施更新数据的目的。
图5 数据显示设计
3 数据采集实验
选择串口设置好对应波特率后,运行电机数据采集系统,同时运行异步电机矢量控制程序,将电机转速、电流、电压等数据通过串口发送至电机数据采集系统,不同单精度数据送往不同示波器进行显示,其采集信息如图6-7 所示,8 组数据共放入6 个示波器内进行图形显示,其中三相电流的3 组数据放入同一个示波器;图6 显示电机转速维持在100rpm 之间波动,相电流幅值为0.02A 且三相不平衡,励磁电流围绕在0.02A 附近周期性波动,图7 显示转矩电流在0A 附近波动,励磁电压与转矩电压分别在10V 与6V 之间。
图6 异步电机运行状态数据图显
图7 异步电机运行状态数据图显
4 结论
本文利用LabVIEW 设计了电机数据采集系统,并利用异步电机矢量控制程序实时发送电机相关数据信息至数据采集系统,实现了多数据观测,且能较为直观的反应数据变化的联动性,降低了学生学习异步电机矢量控制理论的难度。