张远辉,张 鼎,许 昌,谢 波
(中国计量学院机电工程学院,浙江杭州 310018)
基于Proteus的XY数控工作台仿真模型设计
张远辉,张 鼎,许 昌,谢 波
(中国计量学院机电工程学院,浙江杭州 310018)
设计了一款基于Proteus的XY数控工作台仿真模型,该模型具有两轴步进电机的控制信号输入、丝杠两端限位信号输出、工作台运动轨迹实时绘制等功能。搭建了以51单片机为控制核心,具有液晶屏显示接口、手动开关控制功能的XY数控工作台示例电路。将该模型应用于机电一体化课程教学中,可以节省机械和电路硬件成本,锻炼学生机电一体化系统设计和调试能力,对促进学生综合实践能力的提升具有重要意义。
数控工作台;Proteus;机电一体化;仿真模型
机电一体化系统设计及课程设计是机械电子专业学生的必修实践类课程。该课程要求学生独立设计一套完整的机电一体化系统,对系统中的几个关键部件(如机械、传感、电路、单片机、控制器等)进行综合分析、建模和设计,并完成课程设计报告。XY数控工作台是许多机电一体化设备的基本部件,把它作为课程设计的任务案例具有典型意义[1]。
中国计量学院机电工程学院实验室虽然拥有一台XY数控工作台实物,但无法满足机械电子专业4个班约160名学生的实验需求。由于无法进行实验验证,在学生的设计报告中存在许多电路原理图、程序逻辑的错误。在已有的软硬件条件下,如何为学生提供一个可行的实验验证平台,帮助他们尽可能地减少错误,从而提升学生的实践能力和教学效果,是机电一体化相关课程教学中亟待解决的问题。
Proteus是一款由英国Lab Center Electronics公司开发的,汇集电路原理图绘制、电路仿真和印刷电路板制作于一身的电路设计软件。和其他电路设计软件相比,Proteus的VSM(virtual system modeling)虚拟仿真建模功能尤为突出。它不仅可以仿真传统的模拟电路、数字电路,还可以仿真数字信号处理器,例如51单片机、PIC单片机和ARM处理器等。Proteus电路仿真软件已经在国内机电控制类教学实践中有了一定的应用,例如单片机教学与实验[2-3]、电子信息类毕业设计[4]。Proteus提供的丰富的仿真模型亦可用于机电一体化教学和实践中,比如直流电机、交流电机、霍尔传感器、按钮、LED和LCD等。学生可以设计相应的电路,然后结合Keil软件编写51单片机程序,并对电路进行仿真和调试[5]。
Proteus软件本身自带了众多模块,可用于常见电路的仿真,但是缺少对XY数控工作台这种特殊的机电系统模块的仿真模型支持。虽然Proteus提供的步进电机和直流交流电机仿真模型[6-7]可进行电机控制电路的仿真,但是XY数控工作台是由2个相互垂直的丝杠和2台电机组合而成,纯粹的电机仿真并不能反映工作台整体空间坐标的变化。此外,工作台导轨两端安装有限位传感器,Proteus提供的电机模型并不能仿真限位传感器电路。
当Proteus自带的模块不能满足要求时,用户可以借助Proteus的扩展接口,自行设计和制作仿真模型,目前已有关于点阵LED仿真模型[8]、点阵LCD仿真模型[9]和CPU仿真模型[10]等相关的研究和报道。
综上,设计一款基于Proteus的XY数控工作台仿真模型是可行的。设计的仿真模型可以填补Proteus软件针对机电一体化仿真元件的空白,给学生提供一个完整的机电系统仿真平台。
XY数控工作台仿真模型的界面如图1所示,主要功能包括仿真模型的图形绘制、管脚功能设计和内部逻辑实现。
图1 XY数控工作台仿真模型界面设计
2.1 仿真模型的图形绘制
Proteus VSM的图形绘制接口函数大致可以分为3类:基于图形符号的方法[11]、基于矢量绘图方法[9]和基于Windows GDI函数的方法[12]。本文采用基于Windows GDI函数的方法进行模型界面的绘制。Proteus提供了函数ICOMPONENT::begincache(),该函数的返回值是一个指向图形设备环境的句柄,图像设备环境实际上充当了Windows操作系统下绘图板的角色。借助丰富的Windows API函数,用户可以在这个绘图板上不同位置绘制导轨、丝杠、电机和工作台等图形。工作台随着时间的推移不断重绘和移动,便形成了一个连续仿真动画过程。
2.2 管脚功能设计
设计的仿真模型共有9个管脚(5个输入管脚,4个输出管脚),具体功能如表1所示。管脚1—4是数字信号输入,主要用来控制两个步进电机的运动,每个电机的控制信号来自一个脉冲输入管脚和一个方向控制管脚。管脚5—8是导轨两侧的限位传感器信号输出。管脚9用于工作台的轨迹记录和显示,当该管脚为低电平时,可以实时记录并绘制工作台(以工作台的左上角为参考点)的运动轨迹。
表1 XY数控工作台仿真模型的管脚功能
2.3 仿真模型内部逻辑实现
采用Visual C++编写DLL文件,实现仿真模型的内部逻辑。
(1)步进电机的控制。工作台模型包含2个状态变量,分别保存X轴(水平方向)和Y轴(竖直方向)丝杠上的螺母位置,每个螺母的运动范围是(0~500 mm),每输入一个脉冲(下降沿有效),步进电机运动1 mm,即系统的脉冲当量为1mm。
(2)限位传感器的实现。每个丝杠的左右端部分别安装有限位传感器,当螺母运动到限位传感器的位置时,对应的限位传感器输出信号由高电平变成低电平,同时工作台丧失沿着限位方向的运动能力,只能沿限位方向的反方向运动。
(3)运动轨迹绘制和记录。由于数控工作台的运动常常是模拟零件的切削加工过程,因此需要在仿真过程中将工作台的运动轨迹实时显示出来,根据轨迹曲线,能够直观地判断运动控制插补算法和脉冲进给算法的正确性。
设计好的XY数控工作台仿真模型包含3个文件——XYNCTABLE.LIB、XYNCTABLE.IDX和XYNCTABLE.DLL。学生在自己的电脑上装好Proteus软件后,需要将上述LIB文件和IDX文件复制到Proteus安装文件夹下的LIBRARY目录中,将DLL文件复制到Proteus安装文件夹下的MODELS目录中。之后,学生就可以创建自己的电路图,并从XYNCTABLE库中选择XY数控工作台模块,放入电路图中进行仿真实验。
3.1 应用电路图示例
图2是一个XY数控工作台在51单片机控制下进行运动仿真的示例电路图。图中除了XY数控工作台模块外,其他模块均为Proteus软件自带模块,如字符LCD模块、51单片机模块、一组用于工作台控制的开关等。图2左上部的半圆曲线显示的是工作台在程序控制下的移动轨迹。
图2 基于51单片机的XY数控工作台仿真电路图
单片机的输入通道包括XY工作台的限位传感器信号和开关信号;输出通道包括XY工作台的电机控制信号和LCD显示控制信号。LCD显示的数据是当前单片机发送的工作台定位位置信息,也可以显示相关的限位或报警信息。开关MANUAL可进行手动控制模式和自动控制模式的切换。在手动控制模式下,UP、DOWN、LEFT、RIGHT等4个开关可对平台进行上、下、左、右的手动控制。在自动控制模式下,51单片机程序将发送设定的运动指令和脉冲。紧急停止开关STOP是在系统出现故障情况下,强制工作台停止运动,起保护作用。
学生可在该示例电路图的基础上,配合其他Proteus模块,设计出更为完善和复杂的机电控制系统。
3.2 自制模型对机电一体化课程教学的帮助
利用包含XY数控工作台的电路控制系统,学生无需借助硬件仿真器和实物机械电路装置,仅在电脑上进行软件仿真,便可完成电路和程序的设计与调试。Keil软件和Proteus软件还可进行联调,例如在Keil的源代码中单步运行程序,在Proteus中查看电路状态。这种做法节省了硬件成本,提高了学习效率,同时为课程设计带来诸多便利。以往的课程设计报告中,学生因为缺乏对所设计系统的实验调试验证过程,导致电路和代码中存在很多错误;而有了该模型后,学生可以在自己电脑上直接仿真验证电路和程序的正确性,因此不少错误可以避免。此外,指导教师可以在布置课程设计任务时,要求学生分别设计不同的工作台运动轨迹,可以防止学生编写单片机程序的雷同。
将基于Proteus的XY数控工作台仿真模型应用于机电一体化系统设计及课程设计的教学中,丰富了教学资源和教学手段,给学生提供了一个完整的机电一体化系统的仿真平台,锻炼了学生的实践能力,收到了良好的教学效果。该仿真模型可进一步改进,例如让其输出工作台位置和速度的反馈信号,在此反馈信号的基础上进行全闭环控制系统的设计和仿真。
(References)
[1]尹志强.机电一体化系统设计课程设计指导书[M].北京:机械工业出版社,2013:185-192.
[2]曾成,伍萍辉,刘艳萍.基于虚拟硬件环境的单片机原理与应用实验开发[J].实验技术与管理,2011,28(2):91-93.
[3]赵月静,陈继荣,张永弟.单片机原理及应用课程创新实践教学改革[J].实验技术与管理,2013,30(1):176-179.
[4]王凡.Proteus在电子信息类毕业设计中的应用与研究[J].实验技术与管理,2014,31(4):112-114.
[5]许志刚.基于Proteus技术的仿真学习工作站建设思路[J].实验技术与管理,2013,30(4):62-64.
[6]Lu H,Duan C.Application of Proteus in the Teaching of Computer Control Technology[C]//3rd International Conference on Science and Social Research.Tianjin:Atlantis Press,2014:357-359.
[7]Mukherjee A,Ray S,Das A.Development of Microcontroller Based Speed Control Scheme of BLDC Motor Using Proteus VSM Software[J].International Journal of Electronics and Electrical Engineering,2014,2(1):1-7.
[8]周灵彬,任开杰.创建Proteus双基色LED点阵模块仿真模型[C]//中国自动化学会.第13届中国系统仿真技术及其应用学术年会论文集.Scientific Research Publishing,2011:100-104.
[9]淮文军,任社宜,薛艳霞.基于DLL的Proteus VSM仿真模型设计与实现[J].苏州市职业大学学报,2009,20(5):22-25.
[10]杨鸿,周晓方,杨庆庆.基于Proteus的处理器C++建模与仿真[J].计算机工程,2011,37(5):279-281.
[11]周灵彬,张靖武.创建Proteus动态器件仿真模型的技术[J].现代电子技术,2009(12):152-155.
[12]Petzold C.Windows程序设计[M].方敏,张胜,梁路平,等译.5版.北京:清华大学出版社,2010:65-75.
Design of XY NC table simulation model based on Proteus
Zhang Yuanhui,Zhang Ding,Xu Chang,Xie Bo
(College of Mechanical and Electrical Engineering,China Jiliang University,Hangzhou 310018,China)
An XY NC table simulation model is designed based on Proteus.The model has many features including control signal inputs for two axes’step motors,limit signal outputs when reaching screw’s ends,simultaneous drawing the table’s motion trajectory,etc.A sample circuit is demonstrated combining an MSC51-based controller,LCD display device and several switches.The model is applied for teaching of Mechatronics courses.It reduces the education funds in both mechanical and electrical hardware.Students are trained in system design and debugging practice,the model has great significance to promote the students’comprehensive practical ability.
NC table;Proteus;mechatronics;simulation model
TG659;TP391.9
A
1002-4956(2015)3-0133-04
2014-07-15
国家自然科学基金资助项目(61302191);浙江省教育厅科研项目(Y201224542);中国计量学院机电工程学院教改项目
张远辉(1982—),男,浙江绍兴,博士,讲师,主要从事机电一体化系统设计、机器人智能控制、计算机视觉和图像处理等教学和研究工作.
E-mail:zhangyh23@gmail.com