可编程控制器S7-200系列PLC是西门子公司生产的小型整体式PLC,在工业自动化装备中广泛应用,YL-335B自动化生产线的各工作单元控制器均为S7-200 PLC,下面以输送单元搬运机械手运动控制为例,分析介绍S7-200PLC的脉冲输出功能及定位控制编程方法。
S7-200系列PLC有两个内置PTO发生器,用以建立高速脉冲串PTO输出。一个发生器指定输出点Q0.0,另一个发生器指定输出点Q0.1,用于伺服电动机的速度和位置控制。当组态一个输出为PTO操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制,内置PTO功能提供了脉冲串输出,脉冲周期和数量可由PLC程序控制,为了简化程序的编写,STEP7--Micro/WIN软件提供了位控向导功能,借助位控向导可以在很短时间内完成PTO的组态,并生成位控指令,在PLC程序中用以控制电机运行速度和位置。
1.位控向导的使用
下面以输送单元搬运机械手在工作站点之间运动为例,介绍使用位控向导编程的方法和步骤,搬运机械手在各工作站运行距离与运动包络如表5-2所示。
表5-2 搬运机械手运动包络
(1)PLC选项组态内置PTO:
在STEP7--Micro/WIN软件命令菜单中选择工具→位置控制向导,在向导的第1个界面选择配置S7-200 PLC内置PTO/PWM操作,在第2个界面中选择“QO.0”脉冲输出,接下来的第3个界面如图5-3所示,选择“线性脉冲输出(PTO)”,使用高速计数器HSC0(模式12),对PTO生成的脉冲自动进行计数。单击“下一步”进入下一步内置PTO组态操作。
图5-3 组态内置PTO操作选择界面
(2)接下来的两个界面设定电机速度参数,包括最高电机速度MAX_SPEED,电机启动/停止速度SS_SPEED,以及加速时间ACCEL_TIME和减速时间DECEL_TIME。例如,输入最高电机速度“90000”,把电机启动/停止速度设定为“600”,加速时间ACCEL_TIME和减速时间DECEL_TIME分别为1000(ms)和200(ms),完成后单击“下一步”,开始配置运动包络。
(3)图5-4是配置运动包络的界面,在界面中要求设定操作模式、一个步的目标速度、结束位置等,并定义包络的符号名,一般从第0个包络第0步开始定义。
图5-4 配置运动包络界面
在操作模式选项中选择相对位置控制,填写包络“0”中目标速度为“60000”,结束位置为“85600”,点击“绘制包络”如图5-4所示。包络的符号名按默认定义(Profile0_0),第0个包络从供料站→加工站的设置就完成了,如图5-5所示。
图5-5 设置第0个包络
表5-2中的最后一个运动包络是低速回零,单速连续运行模式,选择这种操作模式后,在所出现的界面中写入目标速度“20000”。界面中的包络停止操作选项,是当停止信号输入时,再向运动方向运动所设定的脉冲数后停止,在本例中未使用,如图5-6所示。
图5-6 设置第4个包络
(4)运动包络编写完成后单击“确认”,向导会为运动包络自动指定V存储区地址一般情况下,默认系统自动建议地址即可,也可自行键入一个合适的地址,如图5-7所示。(www.xing528.com)
图5-7 运动包络指定V存储区地址
(5)单击“下一步”出现生成项目组件提示,如图5-8所示,单击“完成”。
图5-8 生成项目组件提示窗口
2.使用位控向导生成的项目组件
运动包络组态完成后,向导会为所选的配置生成四个项目组件(子程序),分别是:PTOx_CTRL子程序(控制)、PTOx_RUN子程序(运行包络),PTOx_LDPOS(装载位置)和PTOx_MAN子程序(手动模式),由向导产生的子程序在STEP7--Micro/WIN软件中可以直接调用,如图5-9所示。
图5-9 四个项目组件
(1)PTOx_CTRL子程序(控制):启用和初始化PTO输出,在用户程序中只使用一次,并且在每次扫描时得到执行,始终使用SM0.0作为使能端EN的输入,如图5-10所示。
图5-10 运行PTOx_CTRL子程序
(2)PTOx_RUN子程序(运行包络):PLC将执行存储于包络表的指定包络运动的操作,运行子程序的梯形图如图5-11所示。
图5-11 运行PTOx_RUN子程序
(3)PTOx_LDPOS指令(装载位置):重新装载PTO脉冲计数器的当前值为一个新的位置值,通过该指令可以实现运动命令的清零操作,图5-12所示为通过使用PTO0_LDPOS指令,实现返回原点清零操作的梯形图。
图5-12 用PTO0_LDPOS指令实现返回原点清零操作
(4)PTOx_MAN子程序(手动模式):能够实现手动模式下的PTO输出功能,并能实现伺服电机按照不同的速度启动、停止和运行,当PTOx_MAN子程序正在运行时,除PTOXCTRL主控程序外,其他PTO子程序将不能执行,运行子程序梯形图如图5-13所示。
图5-13 运行PTOx_MAN子程序
由上述四个子程序的梯形图可以看出,为了调用这些子程序,编程时应预置一个数据存储区,用于存储子程序执行时的各项参数,存储区所存储的信息,则根据程序的需要进行调用。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。