基于PCI-1750数据采集卡的 伺服电机控制系统设计*
2018-03-07杨召彬王政皓赵庆志王宜龙
乔 磊,杨召彬,王政皓,赵庆志,王宜龙
( 1.山东理工大学 机械工程学院,山东 淄博 255000;2.济南交通技师学院,济南 250200)
0 引言
传统的经济型数控机床[1]多采用步进电机来构成开环的伺服控制系统。在长时间的生产加工中,数控加床往往会出现丢步、发热严重、振动以及噪音大等问题[2],这些问题增大了机床的系统误差,严重影响了机床的加工精度[3],降低了机床的使用寿命。在高速、高精度的现代化加工[4]中,交流伺服电机凭借其优势,克服了步进电机的不足,得到了广泛的的应用[5]。虽然伺服电机的控制方案有很多,比如单片机系统、专业运动控制PLC、PC机和I/O卡,PC机和运动控制卡等[6],但是在现有的控制方案研究中对于如何具体的实现交流伺服电机的控制和信号的实时采集讲解较为模糊。
针对上述情况,本文从理实一体化[7]的角度出发,以PCI-1750数据采集卡为例,对交流伺服电机控制进行应用性研究,研制了一台基于PCI-1750数据采集卡的交流伺服电机实验台,并开发了与之配套的交流伺服电机控制系统。对数据采集卡如何进行交流伺服电机控制和各种信号的实时采集进行了详细说明,解决了应用性研究中如何具体实现伺服电机的控制和信号的实时采集讲解较为模糊的问题。
1 总体规划
基于PC开放式数控系统[8]能够充分的利用计算机的资源,可以运用各种可视化语言编译程序[8],充分保证系统性能,通用性强,数控系统更加灵活。
数据采集卡功能强大,可靠性高,实时性好,具有多路隔离数字量输入输出通道,可以通过隔离数字量输出通道发送数字量信号给交流伺服电机驱动器,伺服电机驱动器再将数字量转变为伺服电机需要的模拟量,从而实现数据采集卡对交流伺服电机的控制。
基于PC的开放式数控系统类型有PC嵌入型CNC、NC嵌入型PC和全软件型NC[9]。本控制系统采用NC嵌入型PC的方法,以PC机+PCI-1750数据采集卡为基础,在VC++6.0的软件环境下开发该交流伺服电机的运动控制系统,并研制交流伺服电机数控实验台用以验证控制系统的稳定性。具体的设计方案,如图1所示。
图1 交流伺服电机实验台设计方案
根据实验台的设计要求并结合实验室内现有的条件,选用北京凯恩帝的80ST-M02430A交流伺服电机和SD300-30交流永磁同步伺服驱动器。
2 基于PCI-1750的输入输出接口电路设计
2.1 PCI1750数据采集卡的原理简介
PCI-1750数据采集卡是一款PCI总线的半长卡[10]。PCI-1750带有两组ULN2803达林顿晶体管矩阵,每组ULN2803带有8路NPN达林顿晶管,连接阵列适合逻辑电平数字电路和高电压的场所。由于ULN2803的存在,PCI-1750数据采集卡能够提供16路隔离数字量输入通道、16路隔离输出通道及一个带输入信号的隔离计数器/定时器[10],具体的针脚定义如图2所示。
PCI-1750支持干接点,且带有2500VDC隔离保护,在需要高电压保护的工业场所内应用较为广泛[10]。PCI-1750板卡的每个隔离数字量输入输出通道都能够与计算机I/O端口的一个位互为对应,编程简单方便。
图2 PCI-1750针脚定义
2.2 伺服电机与PCI-1750板卡输出信号的接口电路
伺服电机需要通过相应的驱动器处理PCI-1750数据采集卡传来的数字量信号,伺服电机驱动器将这些数字量信号处理后发给伺服电机,从而实现PCI-1750数据采集卡对伺服电机的控制,因此,伺服电机与PCI -1750板卡的接口电路主要指板卡与伺服电机的驱动器相连的接口电路。具体的接线,如图3所示。
图3 输出信号接线图
根据设计要求,该伺服电机控制系统需要实现对位置指令PULS、位置指令SIGN、伺服使能SVON、报警清除ACLR、位置偏置清零CLE和指令脉冲禁止INH等信号的控制。根据SD300驱动器说明书提供的接线图可知,PCI板卡将控制位置指令PULS和位置指令SIGN的数字量信号直接发给驱动器(PCI板卡发出的是低电平,输入进驱动器时,与位置指令的负接口相连)。伺服电机控制系统通过控制相应回路的通断实现对伺服使能、报警清除、位置偏置清零、指令脉冲禁等信号的控制,在这个回路中,存在24V直流电源,因此考虑引入24V直流继电器,通过PCI板卡控制直流继电器的常开触点的通断来控制各信号。同时PCI-1750板卡在控制电机通电和断电时,也考虑采用24V直流继电器,通过PCI-1750板卡控制直流继电器常开或者常闭触点的通断,实现弱电对强电的控制,达到控制电机通断电目的。
2.3 伺服电机与PCI-1750板卡输入信号的接口电路
机床在运行的过程中,各种限位开关信号的实时采集和反馈是数控系统的重要任务,是不可或缺的重要功能模块[11]。PCI板卡通过隔离数字量输入通道可以检测各种数字量输入信号,并且可以通过相应的程序将信号反馈到PC机上,实现人机交互。
开关量数字信号读入计算机的方法主要有直接短接法、分压法以及光电隔离法等[12]。PCI-1750板卡提供了16路隔离量输入通道 ,支持干接法和湿接法。湿接法是在IDI接口和IGND接口之间施加5~48V电压,但如果接线不当容易烧坏板卡;干接法是将板卡的IDI接口直接与IGND接口连接,接线简单,不会因为失误而烧坏板卡。综合考虑,本实验台采用干接法。
根据设计要求,伺服电机输入到PCI-1750板卡的开关量数字信号主要有伺服使能、报警清除、CCW驱动使能和CW驱动使能。伺服使能和报警清除信号直接通过驱动器提供的专门接口进行检测,而对CCW驱动使能和CW驱动使能的检测,该实验台设计时引入了行程开关。在行程开关动作时,隔离数字量输入IDI接口和IGND 之间的通断,会引起IDI接口的高低电平变化,PC机通过伺服电机控制系统的信息采集模块读取相应IDI引脚的电位信息,并且显示在用户界面,操作者可以实时掌握各个信号的情况,发现信号异常后可以及时进行相应的调整。
3 基于多线程技术的伺服电机控制系统设计
该伺服电机控制系统实现了开放式、模块化和集成化[13],具体的模块结构如图4所示。
图4 伺服电机控制系统软件模块图
本伺服电机控制系统以VC++6.0作为开发平台,具体的开发步骤如下:
(1)安装PCI-1750驱动程序,并确保安装完全;
(2)创建一个MFC工程,并将Include中头文件Driver. h和静态库文件Adsapi32添加到工程到中;
(3)编写程序
交流伺服电机控制系统的程序主要分为四部分:参数设置部分、电机控制部分、信息采集部分和反馈显示部分。下面对本控制系统中的一些关键部分进行原理说明。
对PCI-1750板卡的函数进行处理。由于研华提供的PCI-1750数据采集卡所用的函数并没有封装好,调用比较麻烦,而在进行控制系统开发时,需要多次使用这些函数,这样在系统编程时容易造成混乱,因此本交流伺服电机控制系统开发时,选择将PCI-1750数据采集卡的函数定义成一个类,这样在需要使用数据采集卡的函数时,可以直接调用,比较方便,同时精简了程序。
多线程技术的应用。在电机的运行过程中,程序还要实时监控伺服使能、CCW驱动使能和CW驱动使能等信号,如果在主线程中运行电机正反转程序,会占用系统资源,可能会出现类似于“死机”的情况。因此,在编程的时候引入了多线程技术[14],多线程可以实现多任务的并行处理,允许一个复杂的程序同时执行多个任务,各线程相互独立,当采用多线程的技术时,CPU为这些独立的线程分配一些CPU时间,系统以轮转的方式向线程提供时间片,提高了CPU 的使用效率,避免了单独一个主线程时某项任务长时间占用CPU时间,处理运算时会出现类似于死机的情况。在信号的检测时,因为要同时检测多个信号,因此,本系统为每个信号输入都开辟了一个单独的线程,避免多个信号检测时相互产生影响。
输出信号的处理。在板卡输出编程时,引入了一个unsigned char型变量pBuffer,一个unsigned char型变量有8个位,可以直接输入或者输出到一组ULN2803的8组输入IDI接口或者输出IDO接口,同时,value和10101010B进行与运算,容易实现一个脉冲内的高低电平变化,比ptDioWriteBit函数直接写到位编程更加方便,可以一次处理多个接口的信号,综合处理各数字量输出和数字量输入信号的能力加强。
4 交流伺服电机数控实验台的测试
根据设计要求,完成了基于PCI-1750数据采集卡的交流伺服电机数控实验台的制作,具体的实验台的实物图如图5所示。
交流伺服电机控制系统控制PCI-1750数据采集卡通过SD300驱动器向伺服电机发出数字量脉冲信号,实现交流伺服电机数控实验台的控制。在控制系统通过PCI-1750数据采集卡控制交流伺服电机进行实验的同时,同样控制步进电机与其形成对比实验,经过长时间的运行测试,交流伺服电机运转比较平稳,噪音较低,能够平稳的进行快速启动和暂停,并且低速时也不会出现类似于步进电机的振动现象;加速性能较好,经过测量,步进电机从静止加速到工作转速需要200~400ms,而交流伺服电机加速仅需要3~10ms左右,适合各种场所应用尤其数控机床进给驱动。
通过长时间的实验测试,交流伺服电机数控实验台的运行正常,交流伺服电机控制系统稳定性良好,交流伺服电机运行和各种信号的采集正常,达到了预期的目标,证明本文在前面提出的控制方案完全正确。
图5 交流伺服电机实验台
5 结束语
本文以PCI-1750数据采集卡为基础,制作了了交流伺服电机数控实验台,设计了基于多线程技术的伺服电机控制系统,实现了控制系统的模块化和集成化。通过对交流伺服电机进行应用性研究,对如何进行交流伺服电机的控制和信号的实时采集做出了详细的说明,为以后伺服电机的应用性研究拓宽了道路,为传统的经济型数控机床改造提供了技术参考。
[1] 孙杰,金珊.经济型五轴数控加工硬件系统的设计与应用 [J].组合机床与自动化加工技术,2011(6): 65-68.
[2] 陈艳红,邓娜. 步进电机细分驱动在机床数控改造中的应用[J]. 制造业自动化, 2010, 32(14):76-77.
[3] 李小彭, 刘春时, 马晓波,等. 数控机床加工精度提高技术的进展及其存在的问题[J]. 组合机床与自动化加工技术, 2010(11):1-4.
[4] 赵国勇, 徐志祥, 赵福令. 高速高精度数控加工中NURBS曲线插补的研究[J]. 中国机械工程, 2006, 17(3):291-294.
[5] 孙佐. 基于8XC196单片机的EPA和PTS实现伺服电控制[J]. 组合机床与自动化加工技术, 2005(5):67-69.
[6] 姜荣. 一种基于运动控制卡的伺服电机控制系统[J]. 机电产品开发与创新, 2006, 19(3):113-114.
[7] 李清德, 王岳圆. 浅谈理实一体化教学模式在单片机课程中的应用[J]. 职教论坛, 2011(32):32-33.
[8] 张海浪, 舒志兵, 郑之开. 基于开放式数控系统的辅助控制系统设计[J]. 组合机床与自动化加工技术, 2017(1):82-84.
[9] 尹家凡, 王孙安. 基于PC的开放式数控系统的研究[J]. 机床与液压, 2003(2):88-90.
[10] 姜培昌, 卢军霞, 赵庆志. 基于PCI-1750数据采集卡的步进电机控制系统设计[J]. 山东理工大学学报(自然科学版), 2010, 24(1):93-95.
[11] 高跃武, 赵庆志, 韩绍民,等. 行程开关和接近开关在数控系统中的匹配设计[J]. 机床与液压, 2015, 43(4):141-143.
[12] 赵庆志,姜卫东,李磊. 机电设备组装测试与故障维修[M].北京:机械工业出版社,2015.
[13] 张海云, 赵玉刚, 侯仰海,等. 微型教学型三坐标数控铣床的研制[J]. 机床与液压, 2009, 37(11):52-53.
[14] 杨珂, 宋国堃, 赵世平. 基于多线程技术的测控系统软件设计[J]. 电子设计工程, 2016, 24(16):89-91.