首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OSCAT百叶窗和自动校准

问OSCAT百叶窗和自动校准
EN

Stack Overflow用户
提问于 2021-03-26 15:54:33
回答 1查看 59关注 0票数 0

我正在使用OSCAT库来控制百叶窗。我的可编程控制器是来自Wago的PFC200,我使用的是e!Cockpit。一切正常,但我想摆脱电源故障后,在BLIND_CONTROL_S功能块内置自动校准。

正如在最后一句中所写的,“如果UP和DN都为假,则可以防止自动校准”。它实际上停止了百叶窗的校准(基本上是上下移动),但之后我无法再控制百叶窗-上下按钮不起作用。

​

​

我尝试了几乎所有的方法,但都没有成功。使用这样的方法,按钮可以很好地工作:

代码语言:javascript
复制
BlindControl(
    UP := BlindSecurity.QU,
    DN := BlindSecurity.QD,
    S_IN := BlindSecurity.STATUS,
    PI := BlindSecurity.PO
);

但在这种情况下,有一个我不喜欢的自动校准。所有的百叶窗都是先上后下。我将在一周内搬进一个新家,我将在一开始就修改我的程序,我不希望百叶窗随着每次下载而移动。

在这种方法中,校准被关闭(如文档最后一句所建议的):

代码语言:javascript
复制
BlindControl(
    UP := FALSE,
    DN := FALSE,
    S_IN := BlindSecurity.STATUS,
    PI := BlindSecurity.PO
);

BlindControl.UP := BlindSecurity.QU;
BlindControl.DN := BlindSecurity.QD;

但之后按钮就不再起作用了。

更新:整个问题可能是由于BLIND_INPUT导致的,因为当可编程控制器启动时,QU和QA自动设置为TRUE:

​

​

我也找不到办法让它们变成假的。即使我将强制为假,那么在下一个PLC周期中,它们将再次变为真。直到百叶窗在配置的时间内上/下。

EN

回答 1

Stack Overflow用户

发布于 2021-03-28 19:45:51

代码语言:javascript
复制
PROGRAM PLC_PRG
    VAR
        xInit: BOOL := FALSE; (* Initialize PLC *)
    END_VAR

    BlindControl(
        UP := BlindSecurity.QU AND xInit,
        DN := BlindSecurity.QD AND xInit,
        S_IN := BlindSecurity.STATUS,
        PI := BlindSecurity.PO
    );

    xInit := TRUE;
END_PROGRAM
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66812930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档