<button id="ogbmf"></button>
    <rp id="ogbmf"></rp>
    <th id="ogbmf"></th><th id="ogbmf"></th>
    安徽快3安徽快3官网安徽快3网址安徽快3注册安徽快3app安徽快3平台安徽快3邀请码安徽快3网登录安徽快3开户安徽快3手机版安徽快3app下载安徽快3ios安徽快3可靠吗

    反恐精英禿鷲 / S1200 / 詳解 | 西門子1200延時中斷功能OB塊的使用

    分享

       

    詳解 | 西門子1200延時中斷功能OB塊的使用

    2020-08-14  反恐精英...

    1. 延時中斷OB塊的功能

    簡單來說延時中斷OB塊就是,延時中斷 OB塊 在經過一段指定的時間延時后,才執行相應的 OB 塊中的程序。

    S7-1200 最多支持 4 個延時中斷 OB塊 ,通過調用“SRT_DINT”指令啟動延時中斷 OB塊 。在使用“SRT_DINT”指令編程時,需要提供 OB 號、延時時間,當到達設定的延時時間,操作系統將啟動相應的延時中斷 OB塊 ;尚未啟動的延時中斷 OB塊 也可以通過“CAN_DINT”指令取消執行,同時還可以使用“QRY_DINT”指令查詢延時中斷的狀態。延時中斷 OB 的編號必須為20~23,或大于、等于123,比如OB20。

    2.調用延時中斷OB塊的指令

    指令名稱

    功能說明

    SRT_DINT

    當指令的使能輸入 EN 上生成下降沿時,開始延時時間,超出參數 DTIME 中指定的延時時間之后,執行相應的延時OB 。

    CAN_DINT

    使用該指令取消已啟動的延時中斷(由 OB_NR 參數指定

    OB 編號)。

    QRY_DINT

    使用該指令查詢延時中斷的狀態。

    3.延時中斷 OB 塊的執行過程

    (1)調用“SRT_DINT”指令啟動延時中斷;

    (2)當到達設定的延時時間,操作系統將啟動相應的延時中斷 OB塊;

    (3)圖例中,延時中斷 OB20 中斷程序循環 OB1 優先執行;

    (4)當啟動延時中斷后,在延時時間到達之前,調用“CAN_DINT”指令可取消已啟動的延時中斷。

    4. 延時中斷OB塊使用示例

    例如:當I0.1由1變成0,延時6秒后啟動延時中斷OB20,并輸出Q0.0置位。

    (1)按如下步驟創建延時中斷 OB20 。如圖1 

    圖1

    (2)打開 OB20 ,在 OB20 中編程,當延時中斷執行時,置位 Q0.0。如圖2 

    圖2 

      (3)在 OB1 中編程調用“SRT_DINT”指令啟動延時中斷;調用“CAN_DINT”指令取消延時中斷;調用“QRY_DINT”指令查詢中斷狀態。在“指令->擴展指令->中斷->延時中斷”中可以找相關指令,如圖3 

    圖3 

    (4)調用延時中斷指令。如圖4

    “SRT_DINT”指令參數說明:

    EN

    :=%I0.0

    //當 EN 端出現下降沿時,延時計時開始

    OB_NR

    :=20

    //延時時間后要執行的 OB 的編號

    DTIME

    :=T#5S

    //延時時間(1 至 60000 ms)

    SIGN

    :=W#16#0001

    //注:調用時必須為此參數賦值。但是,該值沒有任何意義

    RET_VAL

    :=%MW0

    //狀態返回值(詳細信息請查看在線幫助)

    “CAN_DINT”指令參數說明:

    EN

    :=%I0.1

    //當 EN 端出現上升沿時,取消延時中斷

    OB_NR

    :=20

    //需要取消的 OB 的編號

    RET_VAL

    :=%MW2

    //狀態返回值(詳細信息請查看在線幫助)

    “QRY_DINT”指令參數說明:

    OB_NR

    :=20

    //需要查詢狀態的 OB 編號

    RET_VAL

    :=%MW4

    //狀態返回值(詳細信息請查看S7-1200系統手冊的指令參數幫助)

    STATUS

    :=%MW6

    //延時中斷的狀態(詳細信息請查看在線幫助)

     圖4

    (5) 測試結果:

    當 I0.1由1變0時,延時6s后延時中斷執行,可看到 CPU 的輸出 Q0.0 指示燈亮;

    當 I0.1由1變0時,在延時的6s到達之前,如果 I0.2由0變1則取消延時中斷,OB20 將不會執行。 

      本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發布,不代表本站觀點。如發現有害或侵權內容,請點擊這里 或 撥打24小時舉報電話:4000070609 與我們聯系。

      0條評論

      發表

      請遵守用戶 評論公約

      類似文章 更多
      喜歡該文的人也喜歡 更多

      ×
      ×

      .00

      微信或支付寶掃碼支付:

      開通即同意《個圖VIP服務協議》

      全部>>
      安徽快3{{转码主词}官网{{转码主词}网址