近年来,随着电机控制技术的不断创新发展,多电机组成的系统应用场景也是越来越多。尤其是在工业生产上,单一电机组成的生产系统已经明显不能满足市场的要求[1]。但在工业现场对多个电机进行实时控制时,数据量吞吐量很大,需要较高的数据传输速率。而PCI总线的高速性和大带宽可以满足多电机控制在通信上的要求[2]。因此,本文利用PCI总线的高速并行传输特点,设计了基于PCI总线的多电机控制系统。1系统总体结构框架图1为本文所设计的基于PCI总线的多电机控制系统整体结构。系统整体组成包括HostPC、TargetPC、安装在TargetPC上进行数据交互和运动控制的PCI总线板卡、电机驱动板以及作为被控对象的两个永磁同步电机。图1控制系统架构图本文采用“HostPC+TargetPC”的模式构建双机操作系统,在HostPC中安装MATLAB软件,在其中编写三环控制算法等多电机控制算法,同时在MATLAB中还需要编写驱动,主要包含数字量输出输入驱动以及模拟量输出输入驱动,这些驱动可以将编写好的模型的输入输出关联到硬件通道中,实现模型与实际被控对象间的交互。HostPC与TargetPC之间采用TCP/IP的方式进行相互间的数据传输,主要就是HostPC生成的可执行文件通过以太网传输至TargetPC中,并在其实时环境下运行。TargetPC将运行的结果等通过以太网传输至HostPC中,由其进行监控显示[3]。在TargetPC上安装自制的运动控制卡,该卡主要实现与TargetPC之间的PCI通信、与电机驱动板之间的控制信号传输等。电机驱动板主要实现对电机的驱动,将各相电压、相电流传输至运动控制卡。2PCI通信接口设计本文设计的重点与难点就是运动控制卡与TargetPC之间的PCI通信设计。运动控制卡通过PCI接口与TargetPC的CPU通信,同时需要在运动控制卡上进行数据输入输出的PCI总线传输逻辑设计。2.1PCI总线通信协议PCI总线是一种复用型总线,分为主从两端,数据的传输需要控制信号来起作用,而控制信号需要主从两端通过握手的方式来确定信号的有效性,即若一端发出总线请求信号,而另一端没有应答,那么此时总线是没有办法使用的。PCI总线通信协议的规范1和规范2中规定数据的位宽可以为32bit和64bit,又因为PCI总线的时钟频率为33MHz,所以在这两种位宽情况下传输速率分别为1056Mbps和2112Mbps,即132MB/s和264MB/s[4]。基于PCI总线的多电机控制系统Multi-MotorControlSystemBasedonPCIBus邢磊袁畅包光旋黄家才(南京工程学院工业中心、创新创业学院,江苏南京211167)摘要:针对工业现场多...