工控小生
级别: 家园常客
精华主题: 0
发帖数量: 450 个
工控威望: 623 点
下载积分: 5828 分
在线时间: 796(小时)
注册时间: 2008-05-19
最后登录: 2024-11-21
查看工控小生的 主题 / 回贴
楼主  发表于: 2015-11-22 20:43
PLC输出24个点对应驱动驱动24个电磁阀,X0为计数光电,检测电机转过的圈数,电机每转一圈输出电磁阀逻辑排列变化一次,由于不同的产品要求的动作都不一样,需要让PLC首先记忆住产品的工艺流程可以储存起来,然后再可以直接调用需要的产品工艺按照流程执行。

例如,第一种产品工艺顺序5步:
第1圈 输出Y0 Y2 Y5,Y9,Y18,Y21
第2圈输出Y2 Y4Y6
第3圈全部关闭
第4圈输出Y20,Y24
第5圈输出Y15,Y17,Y22.
第6圈返回开始接着循环。

第二种产品工艺顺序40步

第1圈 输出Y3 Y4 Y5,Y7,Y18,Y21
第2圈输出Y2 Y4Y6Y8Y9Y23
第3圈Y5Y6Y7
第4圈输出Y20,Y24
第5圈输出Y15,Y17,Y22.
第6圈.。。。。。。。
第40圈。。。。。。
第41圈返回开始接着循环


程序运行期间要随时可以暂停,暂停或中途断电要停留在当前步,由于产品的工艺有很多种,,这就要求每添加加一个新工艺 PLC要先把逻辑动作记忆起来,以便于日后直接在触摸屏上选择调用和修改,现在问题来了,由于程序步数的不确定和逻辑动作的多样性,PLC程序要怎么编写最方便,开始考虑用PLC的步进指令结合触摸屏的配方功能来做,但觉得还是行不通,各位有没有更好的方法。
小侯
小侯
级别: 工控侠客
精华主题: 0
发帖数量: 482 个
工控威望: 2612 点
下载积分: 8093 分
在线时间: 507(小时)
注册时间: 2008-10-17
最后登录: 2024-11-15
查看小侯的 主题 / 回贴
1楼  发表于: 2015-11-23 10:03
要先確定好步驟最多是多少步驟
假設是45步
若是跳步序倒是可以用DECO D0 M0 K6
只要改變D0那M0~M63就可以照數字ON
D0=0 M0 on
D0=1 M1 on
以此類推

利用間接定址的方式編寫步驟
每隔100暫存器為1組
第一組步驟存在D100起
第二組步驟存在D200起

Z1=01第一組第一步
Z1=02第一組第二步
Z1=101第二組第一步

若搭配人機將資料存在暫存器中使用D值儲存
例如
LD M100;讀出
DMOVP D100Z1 K6M120
然後用人機把K6M120(M120~M143)狀態編輯好
LD M101;寫入
DMOVP K6M120 D100Z1
然後總步數存放在D100

開始運轉時
比對步驟數是否達到總步數
沒有的話將現在步數寫入D0
然後 DMOV D100Z2 K4Y0
持續迴圈

記得將記錄配方跟步序使用的暫存器設為鎖存
利用run時1掃描的特殊暫存器將停電前的步序回存
fx的話是m8002

接下來就是你自己發揮了
[ 此帖被小侯在2015-11-23 11:59重新编辑 ]
本帖最近评分记录:
  • 下载积分:+1(flyfeky) 感谢分享! 真的不错.