hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
楼主  发表于: 2016-11-28 11:39
基恩士PLC用ML16V总线控制45个轴,每三个轴一组为一工位,每个工位走500个点位(相当于配方)。
触摸屏上可输入和查询每工位三轴坐标,触摸屏程序在PLC里已经写好。
现在自动程序同时运行15个工位,变址寄存器(Z1-Z10)不够用,请问有什么方法可以同时运行,变址寄存器只有10个。求解决思路,谢谢!
控制轴中有转矩控制,只能用ML16V和一个PLC。这是基本条件。
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
1楼  发表于: 2016-11-28 15:27
HMI坐标存储和自动运行不在同一时序,可以重复用变址寄存器,这点没问题。
现在如果15个工位同时运行,在同一时序变址寄存器同时使用,变址的数量是一个问题。
就算可以用变址存储指令:
变址寄存器进栈保护ZPUSH
变址寄存器出栈恢复ZPOP
也要在不同时序变址存储才能使用。
西门子S7 1200 1500变址存储没有这个问题。
如果不用变址寄存器Z,用select case选择语句去写10工位以后的工位,坐标点位太多case条件太多。
点参数不太好用,不想用点参数一个一个运行。
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
2楼  发表于: 2016-11-29 13:43
是用EM存储数据刷新点参数1和2里的坐标和速度缓冲区;
点参数1做单轴绝对定位,手动时示教试运行用;
点参数2做三轴直线插补,自动时运行;
转矩控制是用运动流程控制,先位置模式后转矩模式。
如果要圆弧插补就在点参数3里。
每个ML16V只用了3个点参数,自动里坐标的传送要用到变址。
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
3楼  发表于: 2016-11-30 09:32
引用
引用第7楼yanzhi2008于2016-11-29 23:02发表的  :
用触摸屏里面的变址,一般你是用不完的

谢谢你的思路,但触摸屏变址寄存器实时性达不到吧!最好是PLC里能决的办法。
在PLC里用宏去做,如果有两个以上工位同时完成,进入下一点运行请求还要做优先级判断。这个就有先后的问题
先进先出指令能解决这个问题,谢谢了!
还有什么好的思路吗?
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
4楼  发表于: 2016-12-01 09:06
引用
引用第9楼uthman于2016-11-30 11:57发表的  :


工位完成后你是用中断去处理?用中断可以在中断里进行字移位(占用双倍地址)触摸屏D0-D499,bmov d0 d6000 k500,定位完成移位执行 DSFR D6000 k500。
不是中断的话变址可以重复使用。(相当于变址退避功能)
ld sm400
.......

谢谢你的思路,不想用中断,没有这么高的优先级,程序结构会变的复杂。
我想了下,运行坐标提取不用变址退避也可以。
程序从上往下扫描,用同一个变址寄存器坐标提取,多工位坐标不会有干涉的问题。
谢谢你的方法。
[ 此帖被hezhen880924在2016-12-01 09:53重新编辑 ]
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
5楼  发表于: 2016-12-01 09:55
引用
引用第10楼jiangzhiyong于2016-11-30 19:31发表的  :
横河PLC的变址寄存器是256个,数据寄存器64K 。绝对够用,稳定性和扫描及处理速度完全可以达到你的要求。

横河PLC没用过呀!好用吗?
hezhen880924
级别: 略有小成
精华主题: 0
发帖数量: 101 个
工控威望: 226 点
下载积分: 713 分
在线时间: 304(小时)
注册时间: 2013-01-08
最后登录: 2024-02-02
查看hezhen880924的 主题 / 回贴
6楼  发表于: 2016-12-02 08:42
引用
引用第13楼fubin739于2016-12-01 20:32发表的  :
早期的PLC内存小,变址寄存器很少,都是一起用,只是分析程序的时候,要仔细些。

谢谢你的回答,通过讨论我对变址寄存器的用法有了很深的理解,多工位的难点问题已经解决,思路清晰。
现在的中大型PLC已经很强大了,特别是网络和总线的应用,对于中型系统的构建很方便,图纸很简洁,电工不用太累。
中大型PLC指令的扫描时间越来越短,CPU越来越强大,对数据的处理游刃有余。
逻辑动作用T形图,简洁!
数据处理用C语言,方便!
立体模型坐标用工控机VC作上位机程序,工控机把处理数据走网络传给PLC做运动控制和逻辑控制,工控机和人机界面与人交互,非常直观易于理解。