1) 能否将DB20中的数据通过PLC整体上载上来?
2) 通常情况下只能在NC/PLC监控中输入DB20的具体地址看看机床内的值?离线了如何查看。
问题补充:
谢谢隐身人详细的回答,我的意思是有没有可能直接整体获得一个文件里面包含所有DB20各地址的值,然后我再离线看程序的时候就知道哪个功能激活了,哪个功能没有激活?
最佳答案
生产商,经常会遇到同一个类型的机床所配的附件不同的情况,如,我们常用的数控龙门,有的需要配铣头,有的需要配置排削器。可能这台有工作台,那台有平旋盘等等,但从机床PLC程序的调试和管理上来说,一个类型的机床最好使用同一个PLC程序,我们也是这样做的,所有的设备PLC尽量统一,这便机床调试和服务人员的工作。调试时,调试人员只需要设置某些机床数据,就可以激活或关闭某个机床功能。
PLC机床数据就正好适应这种模块化PLC程序的应用。所谓PLC机床数据,实际上是在通用数据中设定的,但它会在下次NC上电后,被传送到 PLC的数据块DB20中,这样PLC就可以使用了。比如根据某些设定位决定某些PLC程序是否执行。
实现以上功能,首先我们要根据需要设定14504,14056,14058等数据;
MD 14504 是整型数据的数量,注意是数量,不是具体参数;MD 14506 是,十六进制数据的数量 MD 14508 浮点数数据的数量;
NCK RESET使上面所设数据生效,修改了MD14504/MD14506/MD14508之后,在复位之前将自动删除PLC内存中的DB20。
根据需要在14510,14512,14514数据中添入要传送到PLC的数据.
假如MD14510 USER_DATA_INT [0]-[4] 分别设置1-5;MD 14512 USER_DATA_HEX [0]-[4] 分别设11H-55H;
MD 14514 USER_DATA_FLOAT [0]-[4] = 1.111-5.555;
然后NCK RESET使上面所设数据生效;用变量监控可以看到,
14510对应DB20.DBW 0,2,4,6,8各位,其值为举例中的1-5;
14512对应DB20.DBB 10 HEX B#16#11-DB20.DBB 14 HEX B#16#55;
14514对应DB20.DBD 16 FLOATING_POINT 1.111-5.555;
有一点需要明白,MD14510的数据占用1个字;MD14512的数据占用1个字节,而MD14514的数据占用一个双字。
为了调试方便,还可以为这些PLC机床数据添加名称,可以这样做:
在user\language或add_on\language或oem\language目录下(如果没有此目录,可以创建),创建一名为NCTEA_**.TXT的文本文件,其中**是语言代码。
在创建文件,输入想要输入机床数据的名称;比如:DATA NC等等;
修改后,需要PCU重新上电,找到MD14512,这时编辑的数据名称并没有变化。这是因为我们添加的名称是在机床数据以plain text方式显示时才能显示的。设置MD9900 MD_TEXT_SWITCH = 1;然后再切换到通用数据,这时原来的显示才会改变成输入的显示。
了解数据适应PLC的应用,我们就可以根据要求通过修改参数来改变PLC的功能和状态而不用去特修改逻辑关系
提问者对于答案的评价:
谢谢
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc294436.html