回覆列表
  • 1 # 多啦A夢藍胖胖

    一、 例項

    某控制程式中要進行以下算式的運算: 38X/255+2

    式中“ X ”代表輸入埠 K2X0 送入的二進位制數,運算結果需送輸出口 K2Y0 ;X020 為起停開關。

    二、 怎樣用四則運算指令來實現上述功能?

    三、 PLC 硬體的實現

    1 、 I/O 的分配

    輸入 功能說明 輸出 功能說明

    K2X0 X0 二進位制數輸入 K2Y0 Y0 二進位制數輸出

    X1 Y1

    X2 Y2

    X3 Y3

    X4 Y4

    X5 Y5

    X6 Y6

    X7 Y7

      X20 啟動      

    2 、 I/O 的外部接線

    四、 PLC 軟體的實現

    用功能指令實現以下算式的運算: 38X/255+2 的梯形圖如圖所示。

    五、知識的拓展

    指令名稱 助記符 指令程式碼位數 運算元範圍 程式步

    D ( . )

    加 1 INCINC (P) FNC24 ◥(16/32) KnY 、 KnM 、 KnST 、 C 、 D 、 V 、 Z INC 、 INCP…3 步DINC 、 DINCP…5 步

    減 1 DECDEC (P) FNC25 ◥(16/32) KnY 、 KnM 、 KnST 、 C 、 D 、 V 、 Z DEC 、 DECP…3 步DDEC 、 DDECP…5 步

    詳情https://www.siemensplc.com/wenda/20347.html

  • 2 # 氣球一元一個

    梯形圖,調函式

    加:add,dadd,daddr

    減:sub,dsub,dsubr

    乘:mul,dmul,dmulr

    除:div,ddiv,ddivr

    ST:

    +,-,*,/。

  • 3 # 工控人

    plc中四則運算怎麼現實,這個應該不是很難根據程式設計手冊中的基本指令即可完成。這裡面需要注意幾個問題,對於使用三菱plc的程式設計者來說,有整型的還有浮點型的四則運算,指令是不一樣的。

    整數的四則運算加減乘除分16位和32位的資料,在程式編制時一定要注意資料暫存器不能覆蓋就是不能用重複的D進行,同時在進行32位的運算時會自動佔取高位資料,在字軟元件的指定中,是指定低16位一側的軟元件,其後連續編號的軟元件則成為高位側,為了編號不重複,建議指定軟元件為偶數編號。另外對於源運算元和目標運算元中指定為同一字軟元件的,如使用連續執行型的指令(ADD、DADD),則每個運算週期加法運算的結果都會變化,如下圖的監控程式:

    我們在進行加法運算時,X0閉合進行加1,如果我們要求閉合一次加1,就要採用脈衝執行型指令,或者X0上升沿進行加法,如果使用了連續執行指令那麼在plc的每個週期都會加1結果就不正確了。這裡我們需要注意下

    另外,我們還可以監控特殊暫存器開觀察標誌位的動作及數值的正負的關係,如下面的表格和示意圖,

    對於浮點數四則運算,沒有16位的指令,指定了常數的會自動轉換為浮點,浮點數用E開頭表示,如下圖的程式演示:

    在plc的資料中預設的都是整型,如果要引數浮點數的四則運算,首先使用FLT指令把資料轉換成浮點數,對於常數可以直接輸入,最後根據需要再轉換成整數。

  • 4 # 控制研究控

    四則運算是任何PLC中都存在的最基礎的程式設計指令,但是通常將指令塊分為整數指令和浮點數指令,比如像西門子200系列PLC中和300/400系列使用STEP7軟體時候,都是有整數的加減乘除指令以及實數的加減乘除指令,且整數還分為16位整數和32位的常整數,如下圖:

    再來看一下,西門子STEP7軟體中加減乘除指令的程式設計監控圖:

    這個圖片上,add是加法,sub是減法,mul是乘法,div是除法。

    程式段1的是16位整數的加減乘除指令,可以看到我給值的地址都是MW,即字長的變數。最後333÷2=MW22=166。

    程式段2是浮點數的加減乘除指令,也就是實數的加減乘除指令,在STEP7軟體中只有32位的浮點數,而在博途軟體中資料格式就多出來很多,大家注意就是!這32位的浮點數和32位的雙整數都要使用MD這樣的變數。

    ADD_DI,SUB_DI這些就是32位長整數指令,這些也要用MD這種的32位長度變數。如程式段2中最後的DIV_R指令處333÷2=MD84=166.5,所以實數就顯示了小數點,而整數指令則是進行了取整的!

    加減乘除指令很簡單,還需要提一點的是,我這裡是為了答題方便,就使用的是MW2,MD40這樣的變數,在實際程式設計中還是多使用DB區域比較好,比如DB1.DBW2,DB20.DBD40這樣。

  • 中秋節和大豐收的關聯?
  • 形容五官的詞有哪些?