<menuitem id="3samg"></menuitem>

    1. 加入收藏 在線留言 聯系我們
      關注微信
      手機掃一掃 立刻聯系商家
      全國服務熱線17838383235

      西門子6DD1683-0BC5代理商

      更新時間
      2024-11-24 08:50:00
      價格
      請來電詢價
      西門子
      SP8.5
      電源設備
      5V/52A,15V,115/AC
      德國
      230V-Eing. 風扇
      聯系電話
      17838383235
      聯系手機
      17838383235
      聯系人
      徐嘉泉
      立即詢價

      詳細介紹

      【案例分享】西門子S7-1200的位移與循環指令~



      可以在基本指令目錄下的移位和循環移位子文件夾中調用以下指令:

      - SHR(邏輯右移指令)
      - SHL(邏輯左移指令)
      - ROR(循環右移指令)
      - ROL(循環左移指令)

      這些指令用于執行位移操作,并在PLC編程中具有重要作用。您可以根據需要在程序中調用這些指令來實現位移操作。

      圖片

       


      SHR指令


      可以使用“右移”指令將輸入IN中的數值按照位數向右移動,并在輸出OUT中得到結果。參數N用于指定要移動的位數。當N為0時,輸入IN的值會直接復制到輸出中。如果N的值超過了可用位數,輸入IN的值會向右移動直到可用位數。

      對于無符號數據類型(如UInt,Word),移動時會在左側空出的位用0填充;而對于有符號數據類型(如Int),則會用符號位的狀態來填充空出的位??梢栽谥噶羁虻臄祿愋拖吕藛沃羞x擇合適的數據類型。下面圖示展示了如何將整數類型的操作數內容向右移動4位。

      圖片

       


      示例


      以下示例說明了該指令的工作原理:

      圖片

      如果操作數“TagIn”的信號狀態為“1”,則執行右移指令。操作數“TagIn_Value”的內容將向右移動3位,結果發送到輸出“TagOut_Value”中。如果指令執行成功,將使能輸出ENO的信號狀態為“1”,同時將輸出“TagOut”置位。



      SHL指令


      可以利用“左移”指令對輸入操作數IN的數值進行左移操作,并通過輸出OUT查看結果。參數N用于指定要左移的位數。當N為0時,將直接將輸入操作數IN的值復制到輸出OUT的操作數中。

      若N的值超過可用的位數,則操作數IN的值將向左移動直到可用的位數。在移位時,會用0填充操作數右側空出的位。您可以在指令框下拉列表中選擇適當的數據類型。下圖描述了如何將WORD數據類型的操作數內容向左移動6位。

      圖片

       


      示例


      以下示例說明了該指令的工作原理:

      圖片

      圖片

      如果“TagIn”信號狀態為“1”,則執行左移指令,將“TagIn_Value”的內容向左移動4位,并將結果發送到“TagOut_Value”。成功執行后,將使“ENO”的信號狀態為“1”,并觸發輸出“TagOut”置位。



      ROR指令


      能夠利用“循環右移”指令對輸入IN的操作數內容進行按位循環右移,并且結果存儲在輸出OUT中。該指令需要一個參數N,用于確定要循環移位的位數。

      如果N為0,輸入IN的值會直接復制到輸出OUT。如果N的值超出操作數的位數,則操作數IN的值依然會按照可用位數進行循環移位。在移位過程中,移出的位會用來填充循環移位而產生的空位。

      您可以在指令框的數據類型下拉菜單中選擇合適的數據類型。圖示說明了如何將DWORD數據類型的操作數內容向右循環移動3位:

      圖片



      示例


      以下示例說明了該指令的工作原理:

      圖片

      圖片

      如果“TagIn”信號狀態為“1”,則執行循環右移指令,將“TagIn_Value”的內容向右循環移動5位,并將結果發送到“TagOut_Value”。如果指令執行成功,將使“ENO”的信號狀態為“1”,并觸發輸出“TagOut”置位。



      ROL指令


      可以使用“循環左移”指令對輸入IN的操作數內容進行按位循環左移,結果存儲在輸出OUT中。該指令需要一個參數N,用于確定要循環移位的位數。如果N為0,輸入IN的值會直接復制到輸出OUT。

      如果N的值超出操作數的位數,則操作數IN的值依然會按照可用位數進行循環移位。在移位過程中,移出的位會用來填充循環移位而產生的空位。

      您可以在指令框的數據類型下拉菜單中選擇合適的數據類型。圖示說明了如何將DWORD數據類型的操作數內容向左循環移動3位:

      圖片



      示例


      以下示例說明了該指令的工作原理:

      圖片

      圖片

      如果“TagIn”信號狀態為“1”,則執行循環左移指令,將“TagIn_Value”的內容向左循環移動5位,并將結果發送到“TagOut_Value”。如果指令執行成功,將使“ENO”的狀態為“1”,并觸發輸出“TagOut”置位。


      相關產品

      聯系方式

      • 電  話:17838383235
      • 經理:徐嘉泉
      • 手  機:17838383235
      • 微  信:17838383235