技术论坛

 为输出设置一个最小的时间

返回主题列表
作者 主题
谷歌涂鸦
侠圣

经验值: 4167
发帖数: 80
精华帖: 9
楼主    2019-03-18 14:19:38
主题:为输出设置一个最小的时间 精编帖 

前几天琢磨一个电磁制动器的控制,控制中要求制动器起动后最短的工作时间是2秒,比如:输入5秒,输出5秒;输入8秒,输出8秒;输入1秒,输出2秒。

画了个时序图:

这个功能的描述是:为输出设置一个最小的时间。

LOGO!中没这种功能块,自己琢磨了一个,不知道对不对,是否还有更简单的方案呢?




凌云光
侠客

经验值: 827
发帖数: 70
精华帖: 0
1楼    2019-03-18 15:07:51
精编帖  主题:回复:为输出设置一个最小的时间

输入启动一个计时器

输入与计时时间和2s比较的结果并联挂输出

输出停止时关闭计时器

高山孤影
至圣

经验值: 34741
发帖数: 3236
精华帖: 96
2楼    2019-03-18 21:29:29
精编帖  主题:回复:为输出设置一个最小的时间

可以,这个思路没问题,看了一下程序,也没啥问题,2s之内,用脉宽继电器2s计时到复位,2s之后,用自身的2s计时器复位。

如果非要说还有优化的地方的话,可以把RS触发器+脉宽继电器的组合改成一个关断延时计时器,因为这个计时器是自带复位端的,可以省掉一个功能块。

logo!的编程很自由,很多功能都可以通过不同的功能块组合出来,灵活好用。

http://blog.163.com/xiuzhang_2000/
慧星
至圣

经验值: 18045
发帖数: 5621
精华帖: 36
3楼    2019-03-19 07:37:47
精编帖  主题:回复:为输出设置一个最小的时间

 LOGO!有很多实用功能块,但也满足不了用户的各种需求。

自己自由组合生成UDF,不就变成独立的功能块了吗?

sgpg
高山孤影
至圣

经验值: 34741
发帖数: 3236
精华帖: 96
4楼    2019-03-19 13:10:46
精编帖  主题:回复:为输出设置一个最小的时间

您可以实际试一下,我最近忙,手头也没有电脑,没条件测试。从原理上说,延时关断代替rs和脉宽继电器的组合是没啥问题的。

http://blog.163.com/xiuzhang_2000/
Zaxife
至圣

经验值: 12573
发帖数: 2503
精华帖: 31
5楼    2019-03-19 21:14:44
精华帖  精编帖  主题:回复:为输出设置一个最小的时间

这个逻辑很简单啊。

最短输出2秒,那么就直接用RS触发器触发输出,然后输出持续2秒后允许输入=0时复位RS就可以了。



高山孤影
至圣

经验值: 34741
发帖数: 3236
精华帖: 96
6楼    2019-03-19 22:12:50
精编帖  主题:回复:为输出设置一个最小的时间

不错,不错,z侠这个更简洁,赞!思路不同,做出的程序也是不同的。

http://blog.163.com/xiuzhang_2000/
慧星
至圣

经验值: 18045
发帖数: 5621
精华帖: 36
7楼    2019-03-20 08:53:53
精编帖  主题:回复:为输出设置一个最小的时间

 值得收藏。

sgpg
不断攀登
至圣

经验值: 12543
发帖数: 1843
精华帖: 0
8楼    2019-03-22 08:08:50
主题:回复:为输出设置一个最小的时间


z侠这个简单。

邮箱 yongquancun@126.com
Zaxife
至圣

经验值: 12573
发帖数: 2503
精华帖: 31
9楼    2019-03-22 11:29:39
精编帖  主题:回复:为输出设置一个最小的时间

试了一下,还有更简单的。

而且很多种定时器都可以实现这个功能,下面是8个不同定时器实现这一功能的做法。


电路图1.zip


谷歌涂鸦
侠圣

经验值: 4167
发帖数: 80
精华帖: 9
10楼    2019-03-22 17:23:00
精华帖  精编帖  主题:回复:为输出设置一个最小的时间

Z侠做事真专注啊,我对一些功能块却很不熟悉,惭愧。

画了个时序图,z侠5楼的程序对应时序图中的Q,两秒延时中对输入是不响应的;而这8个程序里,Q1、Q2、Q8延时中对输入是响应的;而Q3延时中在第二个脉冲到来时直接关断;Q7不能工作,短于两秒的输入不能置位,长于两秒的输入不能复位,Q5、Q6、Q8是没问题的。

非常感谢z侠的指导。



Zaxife
至圣

经验值: 12573
发帖数: 2503
精华帖: 31
13楼    2019-03-24 09:03:07
精编帖  主题:回复:为输出设置一个最小的时间

抱歉,上面的程序确实是有问题(好像当时乱想什么忘记了)。

重新弄一下就可以了。

Q1需要加一个 与 模块对输入进行限制,只要有输出就限制输入的有效性;

Q8、Q2、Q3都用Q输入锁住I输入的有效性;

Q7的延时输出到 与 模块的电平0/1没取反所以现在取反后就可以了。

Q4~6没问题。


其实,来来去去就是3种模式。第一、二种采用输出反馈计时锁定、第三种定时器自锁主动计时。

第一种(Q1/2/3/8)是用输入I的上升沿使能定时器计时2秒钟固定最小输出时间,然后超过2秒的就由输入I啥时候关就关掉。

第二种(Q5/6/7)是用RS触发器而不用上升沿。输入I触发RS后,Q输出开始计时,计时满2秒最小输出时间后由I是否为0来复位RS触发器。

第三种(Q4)是用M暂存锁定输入I保持有效最短2秒时间才复位RS。


电路图1.zip


甫哥
奇侠

经验值: 9746
发帖数: 1450
精华帖: 72
15楼    2019-05-24 17:08:25
精编帖  主题:回复:为输出设置一个最小的时间

13楼的方案已经很全里面了。

刚才上传了一个附件,里面有几个方案,上传后发现多数与13楼一样,只好撤了。

条条大路通北京,只有更好的,没有最好的!


书山有路勤为径,学海无涯苦作舟;三人行,必有我师;森林之外的树木也能成才
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。