请高手指点:LG PLC 中断方式的选择有高招吗? 点击:2438 | 回复:12



倚天屠龙

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 137回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2003年6月16日
发表于:2006-12-04 22:26:00
楼主
    LG_k120s编程手册上仅限定中断为时间中断和外部中断两种方式。时间中断以10ms为单位,数值可按实际情况设定;外部中断在标准型PLC中可用P0-P7点。两种方式我都用过,没出过问题。
    但是我想请教大家的是这样一种情况:Eview触摸屏通过LG_PLC(232接口)和5台带通讯功能的工控仪表通讯(485接口),PLC采用无协议模式发送和接收工控仪表的设定值和当前值,触摸屏可显示和写入5台工控仪表的设定值和当前值。当我在触摸屏上修改某台表的设定值时,PLC扫描到设定值与临时保存值的不同,将此台表的标志位置1(M变量),5台表的标志位“或”成1个写设定值标志位, 按此标志位进行工控仪表的写优先通讯。正常情况下PLC按100ms时间间隔对5台表发送读字节,接收它们的设定值和当前值。但是我在仅对[color=#FF0000][b][u]单台工控仪表[/u][/b][/color]写入字节通讯的时候,偶尔发现触摸屏上另一个地址的仪表(这台表可是没串入485通讯的啊)设定值和当前值居然接收到了这台表的[color=#008000]旧[/color]参数值,当然这台表的正确设定值也[color=#FF0000]新[/color]写入了(地址绝对不同,两台表的数据变量也绝对没错)。
    我想实现的是,如何在监测到触摸屏修改了某台表的设定值时,采用中断的方式对当前地址的工控仪表进行通讯?如果不用中断的方式任凭程序循环扫描,读工控仪表的地址变量自增会影响多台表的写通讯。另:无协议通讯指令DRSD和DRCV的通讯完成标志字节的解释在K120S说明书上写得不清楚,哪一位能给个详细的说明?
    我知道本论坛LG高手多多,各地LG办事处的技术高手有事没事都到这儿来逛逛,哪位高手接触过类似的工程项目,能不能给点意见先?兄弟在此多谢了!!!
    我的Email: kueni_2000@yahoo.com.cn
    QQ: 512675887



都市稻草人

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 51回
  • 年度积分:0
  • 历史总积分:293
  • 注册:2004年4月09日
发表于:2006-12-05 09:56:00
1楼
有点乱啊,有点乱...先解答后面的问题:显示通讯状态的地址中,低8位只取第0位和第1位,置位后分别表示通讯正确或错误。高8位表示的为传送的数据长度,因为无协议通讯的可传送数据为256字节,即2的8次方。所以,此8位二进制数表示为实际传送数据的长度。第一个问题嘛,再议,再议...

都市稻草人

  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 51回
  • 年度积分:0
  • 历史总积分:293
  • 注册:2004年4月09日
发表于:2006-12-05 10:28:00
2楼
120S系列的中断方式就那三种,应该是实现不了,要不然你用子程序调用试一试吧。

倚天屠龙

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 137回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2003年6月16日
发表于:2006-12-05 15:38:00
3楼
谢谢“玩转地球”兄的赐教!我对照您的说法再仔细研究研究。

这次工控仪表的通讯其实我有点不好意思提,思路和方法可以看这个连接:
http://www.yudian.com/products/pro_lw2005_4.php

人家为这篇文章还给了500块。设计的思路和方法都没有错,当时的测试不是那么详细,程序也没用在工程上。后来正儿八经做了14台的通讯,才发现结果没有那样好,所以才羞于见人了。

除了文章里的几个程序段外,我另外对接收字节的校验、报警字节的处理都使用了子程序的调用的方法。

写字节指令:DSND 00001 00008 D3200 M160
读字节指令DRCV 00001 h000A D3000 M150
有改善的是在发送写指令之前Fmov 0000 d3000 5
这条指令是提前清除接收缓冲字节的内容。我所说的[误传送]基本没有了,个别时候会出现错误,只是说得过去而已。

我朋友用西门子S7-314做过很多这样的通讯,表的数量都20多台,不过程序是用SCL编的,我看跟天书一样,跟LG的简单易用形成强烈对比,一点可比性、一点参考价值都没有,真是郁闷!!






流浪的砖头

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 56回
  • 年度积分:0
  • 历史总积分:309
  • 注册:2004年7月19日
发表于:2006-12-12 11:34:00
4楼
看了楼上写的语句  发现你用的是无协议通讯  

可否使用自定义协议  就是写好通讯帧  地址采用变量或者间接寻址的方法输入以实现通讯过程? 我做过与三菱11台变频器通讯的 效果还不错   你的这个做法很有意思   有机会去拜访下 

倚天屠龙

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 137回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2003年6月16日
发表于:2006-12-12 22:28:00
5楼
To 流浪的砖头:
   英雄所见略同,两种通讯我都做过,都好用。不过SNDCOM指令需要帧设定,没有使用DSND方便,我就选用了无协议模式,以至遇到了这个问题。
   也许我该用sndcom指令吧,因为自定义协议的写发送会自动接收回传字节,不需要专门编写接收指令,也许会完全解决这个问题。
   这个帖子我会续下去的,不做莫名其妙的太监帖,起码让大家知道一个结果。

倚天屠龙

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 137回
  • 年度积分:0
  • 历史总积分:70
  • 注册:2003年6月16日
发表于:2006-12-21 22:11:00
6楼
    我来结帖吧。毕竟解铃还须系铃人。
1、 发送写指令之前一定要Fmov 0000 d3000 5,即清除读参数的缓冲区。
2、  发送条件根据返回字节的校验情况设定,接收成功再次开通发送,对接收失败计数,失败6次可报警并重新计数,成功则复位计数器。
3、  用户自定义通讯的SNDCOM和无协议模式通讯效果是一样的。
    SNDCOM是自动接收字节;
    读缓冲区指令DRCV 00001 h000A D3000 M150的开通条件设为F10,发送完毕后一直接收字节,这样可加快多台表的通讯速度。

金创药

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 65回
  • 年度积分:0
  • 历史总积分:311
  • 注册:2006年9月02日
发表于:2006-12-27 13:15:00
7楼
新手进来看看了啊
我是超级新手啊?
请多帮助啊
 kuangwenbin@56.com

郭戈

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 2回
  • 年度积分:0
  • 历史总积分:8
  • 注册:2007年5月15日
发表于:2007-05-15 17:58:00
8楼
大侠!~
您能把您做的有关RS485SNDCOM通讯的例子发给小弟吗!~我是个新手,找个例子学习一下!~
多谢了!~
我的邮箱是:yuchgg@163.com

lusheng

  • 精华:0帖
  • 求助:0帖
  • 帖子:0帖 | 66回
  • 年度积分:0
  • 历史总积分:378
  • 注册:2007年3月05日
发表于:2007-05-15 19:16:00
9楼
各位前辈:我是新手,能发一个LG MK120与LG IG5的通讯控制调速的程序吗?急需,谢谢了!我是个新手,找个例子学习一下!~
QQ:110301475
邮箱:fu7811839@163.com

七天

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 10回
  • 年度积分:0
  • 历史总积分:24
  • 注册:2006年7月28日
发表于:2007-09-29 18:39:00
10楼
另:无协议通讯指令DRSD和DRCV的通讯完成标志字节的解释在K120S说明书上写得不清楚,哪一位能给个详细的说明?

[color=#FF0000][b]有通讯完成标志位吗?[/b][/color]
[color=#0000FF]有的话,请问高手发送完成以及接收完成的标志分别是什么呢?[/color]

王小车

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 8回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2008年3月06日
发表于:2008-03-06 16:40:00
11楼
各位前辈:我是新手,请问无协议通讯指令DRCV“接收帧的格式”是什么意思?怎么定?

王小车

  • 精华:0帖
  • 求助:0帖
  • 帖子:1帖 | 8回
  • 年度积分:0
  • 历史总积分:11
  • 注册:2008年3月06日
发表于:2008-03-07 14:33:00
12楼
各位前辈:我是新手,请多指导,请问无协议通讯指令DRCV“接收帧的格式”是什么意思?怎么定?

热门招聘
相关主题

官方公众号

智造工程师