您现在所在的是:

台达论坛

回帖:29个,阅读:8822 [上一页] [1] [2] [3] [下一页]
6195
zhengchang
文章数:1819
年度积分:81
历史总积分:6195
品牌积分(台达):6
注册时间:2011/5/6
发站内信
发表于:2019/1/22 17:32:54
#10楼
不加成本的改东西,貌似很考验人,看好你哟表情
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
品牌积分(台达):89
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2019/1/22 17:45:49
#11楼
写操作优先!比如每次都操作完成之后先判断是否有写操作,如果有写操作则优先执行写操作,写操作执行完成后再继续执行读操作!你这个程序不是最优设计!就目前看到你贴出来的而言,等于是三台变频器的读电流、写频率、写启动\停止循环执行!并不能保证写操作优先执行!你先想想!实在不行我给你一个参考程序!
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
品牌积分(台达):89
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2019/1/22 17:49:13
#12楼
你目前只是三台变频器!如果从站个数更多的话!你这种逻辑方式造成的延迟就会更长!
4548
ddt250
文章数:892
年度积分:533
历史总积分:4548
品牌积分(台达):50
注册时间:2016/12/26
发站内信
发表于:2019/1/23 10:00:12
#13楼
附件 1.jpg

附件 2.jpg

附件 3.jpg

附件 4.jpg

目前把程序改成了这样,但是我不知道应该怎么去读电流了……
启动、停止、写入频率这几个动作都是由人执行的,前后动作之间的时间间隔足够PLC运行成千上万次了,应该是没有问题的。
但是如果开始执行读电流的操作的话,我不知道怎么才能提高写入动作的优先级(或者降低读的优先级)。
有大佬说用中断,我又研究了一下台达的中断指令。外部中断,只能通过外部的输入点控制;时间中断,只能设定循环中断的时间(或者我不会用?);高速计数中断,没搞明白,高速计数的输入也是用的IO点吧;通讯RS中断,我用中断的目的就是为了控制通讯,再去写个通讯指令来控制通讯指令……好像也不好……
我的想象中,这个流程应该是:停机时不通讯;停止、启动、写入频率、读电流,各动作优先级递减;开机以后读电流;读电流期间,随时优先执行写操作……而且现在这个程序只是一部分,还不能干扰PLC控制设备中其他的功能部件……
好烧脑,掉头发中表情
[此贴子已经被作者于2019/1/23 10:03:50编辑过]
27950
guanyumou 版主
文章数:10552
年度积分:1133
历史总积分:27950
品牌积分(台达):89
注册时间:2008/7/13
发站内信
2018论坛优秀版主
2018春节活动(三)
2017论坛优秀版主
2017国庆活动(二)
2017春节活动(三)
发表于:2019/1/23 14:44:01
#14楼
以下是引用ddt2502019/1/23 10:00:12的发言:
附件 1.jpg

附件 2.jpg

附件 3.jpg

附件 4.jpg

目前把程序改成了这样,但是我不知道应该怎么去读电流了……
启动、停止、写入频率这几个动作都是由人执行的,前后动作之间的时间间隔足够PLC运行成千上万次了,应该是没有问题的。
但是如果开始执行读电流的操作的话,我不知道怎么才能提高写入动作的优先级(或者降低读的优先级)。
有大佬说用中断,我又研究了一下台达的中断指令。外部中断,只能通过外部的输入点控制;时间中断,只能设定循环中断的时间(或者我不会用?);高速计数中断,没搞明白,高速计数的输入也是用的IO点吧;通讯RS中断,我用中断的目的就是为了控制通讯,再去写个通讯指令来控制通讯指令……好像也不好……
我的想象中,这个流程应该是:停机时不通讯;停止、启动、写入频率、读电流,各动作优先级递减;开机以后读电流;读电流期间,随时优先执行写操作……而且现在这个程序只是一部分,还不能干扰PLC控制设备中其他的功能部件……
好烧脑,掉头发中表情
[此贴子已经被作者于2019/1/23 10:03:50编辑过]
你的思路已然有了!画个流程图吧!程序就出来了!
20507
fireray
文章数:3648
年度积分:1200
历史总积分:20507
品牌积分(台达):11
注册时间:2009/7/29
发站内信
发表于:2019/1/23 19:41:35
#15楼
可以跟触摸屏联系起来,启动停止在一个画面,读取电流转速在一个画面,写入频率等参数在一个,在plc里设个开关,只有进入该画面才通讯本画面的内容。这样就可以减少通讯时间。
此帖发自手机工控论坛
12456
蛇会大学
文章数:4613
年度积分:782
历史总积分:12456
品牌积分(台达):28
注册时间:2015/12/14
发站内信
2018论坛分享达人
发表于:2019/1/23 22:51:47
#16楼
把所有写指令改成有需要才写,一旦有写指令则停止读取,优先执行写入
4548
ddt250
文章数:892
年度积分:533
历史总积分:4548
品牌积分(台达):50
注册时间:2016/12/26
发站内信
发表于:2019/1/24 8:33:41
#17楼
回复 #15楼 fireray
目前最受启发的解决办法。
但是,做不到啊表情
曾经用过启停按钮和电流显示在一个页面,频率设定用弹窗的模式,客户嫌弹窗麻烦……更不要说换页了
4548
ddt250
文章数:892
年度积分:533
历史总积分:4548
品牌积分(台达):50
注册时间:2016/12/26
发站内信
发表于:2019/1/24 8:43:07
#18楼
回复 #16楼 蛇会大学
关键就是我不知道怎么才能中断正在进行的通讯,转去执行写指令……
现有的程序长度,PLC扫描周期只有1.6ms,通讯发出、等待、接受回传这些时间加起来得有个3~5ms吧(猜的,我没测过)。也就是说,通讯数据“在电缆上跑”的时间里,PLC能扫描两次了。用上升沿或者下降沿触发的任何指令只能保持一个周期。置位和复位指令我找不到合适的监测点。用计时器的话,又回到原来的老路上了。
5239
SZHFEI512
文章数:352
年度积分:257
历史总积分:5239
品牌积分(台达):4
注册时间:2007/10/28
发站内信
发表于:2019/1/24 10:25:05
#19楼
以下是引用ddt2502019/1/23 10:00:12的发言:
附件 1.jpg

附件 2.jpg

附件 3.jpg

附件 4.jpg

目前把程序改成了这样,但是我不知道应该怎么去读电流了……
启动、停止、写入频率这几个动作都是由人执行的,前后动作之间的时间间隔足够PLC运行成千上万次了,应该是没有问题的。
但是如果开始执行读电流的操作的话,我不知道怎么才能提高写入动作的优先级(或者降低读的优先级)。
有大佬说用中断,我又研究了一下台达的中断指令。外部中断,只能通过外部的输入点控制;时间中断,只能设定循环中断的时间(或者我不会用?);高速计数中断,没搞明白,高速计数的输入也是用的IO点吧;通讯RS中断,我用中断的目的就是为了控制通讯,再去写个通讯指令来控制通讯指令……好像也不好……
我的想象中,这个流程应该是:停机时不通讯;停止、启动、写入频率、读电流,各动作优先级递减;开机以后读电流;读电流期间,随时优先执行写操作……而且现在这个程序只是一部分,还不能干扰PLC控制设备中其他的功能部件……
好烧脑,掉头发中表情
[此贴子已经被作者于2019/1/23 10:03:50编辑过]
输入频率不等时输出M断开读取,延时写入频率,写入后频率相等,M自然断开了

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

93.6006