① 西門子PLC SCL編程指令講解
在SCL程序編寫中,在邏輯控制或者數據處理分析中,有一類指令我們用得最多,就是程序控制指令,常見的入IF ,Case ,For 和While 等。下面我仔細的講解,有疑問可以留言提出:
圖1 程序控制指令
IF .. THEN 指令
IF 指令含有含有三個分支,分別是Then ,Else 和ElsIF。
圖2 IF 語句
圖3 浮點數比較條件
IF語句應該是SCL裡面最常用的語句了,常用於條件判斷。判斷類型可以是BOOL類型,可以是浮點類型等等,基本上所有類型都可以判斷,只要比較的兩個變數類型是一樣。
在圖2中,AByte 是Byte 類型,因為1在0..255之間,所以1會自動轉化為Byte類型。如果比較的是Abyte類型是256,會是什麼樣子呢?讀者可以自己寫的程序,試驗一下,看看結果,會加深你對數據類型的理解。
上面程序中,首先比如AByte是否和1相等,如果相等則Outvalue的值為1,然後和2比較,如果和2相等,那麼OuValue值為2,如果都滿足條件OuValue 的輸出值則為5。
上述的IF條件語句,也可以用CASE語句來進行表示。CASE的比較類型沒有IF 范圍廣,只有整形才能做為比較條件。
CASE指令
圖4 IF語句的CASE表達方式
從CASE語句表述中,我們發現語句相對於IF表達式來說,更加清晰簡單明了,所以如果需要用到整形條件作為判斷,盡量用CASE來實現,會提高效率。
FOR 指令
FOR指令常用來對數組類型數據進行批量處理,在上一期講解中已經舉過一個例子,下面舉個稍微復雜點的例子。
圖5 FOR循環語句
在FOR程序,我們對數組的每一個索引值進行賦值,同時判斷索引值的奇偶性來進行賦值操作。
圖6 FOR循環語句2
在上面的程序裡面,我們發現有一個關鍵字Continue .當FOR循環執行到該語句的時候,Continue下面的程序都不會執行。所以,當iCout小於15的時候,AArray[iCount]:=iCount賦值語句不會執行。
還有一個地方有點區別,就是FOR 語句後面,多了一個關鍵字 BY 。BY的含義是For 執行的間隔按照BY的設定來執行。如果後面設定為1,則0..99全部執行;如果設定為2,則執行順序為0,2,4,6,8的順序來執行。
上述的FOR循環語句,我們同樣可以採用WHILE循環來實現。
WHILE 指令
圖7 WHILE指令
WHILE循環的表達方式和FOR循環基本類型,但是我們注意一點,這裡面對循環變數,手動進行進行遞進。如果沒有這一句,iCount的值一直為0,循環條件iCount<100將一直為True,WHILE循環會一直執行。所以切記一定執行該語句。
我們還注意到一個關鍵字EXIT,當執行到該指令的時候,WHILE循環會停止執行,FOR指令也是一樣。所以上面的程序,運行下來的情況是,數組的賦值只執行到AArray[81]結束。
GOTO指令
goto指令主要用來執行跳轉過程,可以帶來程序操作的便利性,一般不推薦使用。若操作不當,則會打亂整個程序的邏輯性。
在圖7 中,如果iCount 大於90,那麼,程序就會跳出WHILE 循環執行指定標簽lable13地方程序#iCount=0,繼續從頭開始執行WHILE循環。當然這個操作是毫無意義的,這里只是舉個例子而已。
② 西門子PLC S7-200模擬量輸入怎麼編程
模擬量值和A/D轉換值的轉換
假設模擬量的標准電信號是A0—Am(如:4—20mA),A/D轉換後數值為D0
—Dm(如:*00—32000),設模擬量的標准電信號是A,A/D轉換後的相應數值
為D,由於是線性關系,函數關系A=f(D)可以表示為數學方程:
A=(D-D0)×(Am-A0)/(Dm-D0)+A0。
根據該方程式,可以方便地根據D值計算出A值。將該方程式逆變換,得出
函數關系D=f(A)可以表示為數學方程:
D=(A-A0)×(Dm-D0)/(Am-A0)+D0。
具體舉一個實例,以S7-200和4—20mA為例,經A/D轉換後,我們得到的數值是*00—32000,即A0=4,Am=20,D0=*00,Dm=32000,代入公式,得
出:A=(D-*00)×(20-4)/(32000-*00)+4。
假設該模擬量與AIW0對應,則當AIW0的值為12800時,相應的模擬電信號
是*00×16/25600+4=8mA。
③ 西門子plcs7-200 模擬軟體怎麼用
具體使用方法如下:
1、用S7-200編程軟體編寫好程序,點擊「文件-導出」,然後導出到你需要存放的位置(如電腦桌面),導出來的文件為.awl文件。
④ 求西門子plc200恆壓供水編程實例(梯形圖)急急急......望高手指點!
恆壓供水PLC控制,東莞恆壓供水廠家,東莞恆壓供水
本機供五台電機,四大一小,其中五號為小泵,只進行變頻,不進行工頻,但是在手動時可手動工頻,四個大泵要進行工頻/變頻轉換。本機,手動和自動控制,相互獨立,相互不幹擾,東莞自動化公司-精一控自動化公司
本機自動工作流程
正常工作流程
五檔:
開機上電後,如果壓力低於允許范圍(+/- 0.04MPa),開啟5#泵變頻運行,此時只有5#泵變頻運行
一檔:
5#泵變頻運行時,如果壓力低於壓力下限(壓力設定值-0.04MPa),且變頻泵頻率達到50HZ,10S後,復位5#號變頻,開啟1#變頻,此時只有1#泵變頻運行
二檔
1#泵變頻運行時,如果壓力低於壓力下限且變頻泵頻率達到50HZ後超過10S,復位1#變頻,當復位一號變頻0.5S後,開啟1#工頻及開啟二號變頻(這樣做的目的是錯開同一台泵變頻到工頻的轉換),此時有一號泵工頻,二號泵變變頻運行。
三檔
當1#工頻,2#泵變頻運行,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S,復位2#變頻,當復位2#變頻0.5S後,開啟2#工頻及開啟3#變頻,此時1,2#泵工頻,三號泵變頻運行
四檔
當1#,2#工頻,3#變頻運行時,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S,復位3#變頻0.5S後,開啟四號變頻,此時有1#,2#,3#工頻,四號變頻運行。
當產生故障時
五檔
5#運行時,5#產生故障,此時壓力低於下限,變頻泵頻率達到50HZ後,超過10S
(1)1#泵沒有故障轉到一號泵變頻運行;
(2)當5# -1#泵都有故障,2#泵沒有故障時,轉到2#變頻運行
(3)當5#-1#-2#泵都有故障,3#泵沒有故障時,轉到3#泵變頻運行
(4)當5#-1#-2#-3#泵都有故障時,4#泵沒有故障時,轉到4#變頻運行
一檔
當1#泵變頻運行時,壓力低於壓力下限且變頻頻率為滿頻50HZ時,超過10S,此時如果2#泵沒有故障,復位1#變頻,當復位一號變頻0.5S,開啟2#變頻,1#工頻此時只由1#工頻,2#變頻運行
如果2#泵有故障,3#泵沒有故障,復位1#泵變頻0.5S後,開啟3#泵變頻及1#泵泵工頻,此時1#泵工頻,3#泵變頻工作
如果2-3#泵都有故障,4#泵沒有故障時,復位1#泵變頻0.5S後,開起4#泵變頻及1#泵工頻此時1#泵工頻,4#泵變頻運行
如果2-3-4#泵都有故障,保持1#泵變頻不變此時只有1#泵變頻運行
二檔
當2#泵變頻運行,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S
(1)3#泵沒有故障時,復位2#變頻,當復位2#變頻0.5S後,開啟2#工頻及開啟3#變頻,此時可能
a: 1,2#泵工頻,三號泵變頻運行
b: 2#泵工頻,三號泵變頻運行
(2)3#泵有故障,4#泵沒有故障時,復位2#變頻,當復位二號變頻 0.5S後,開啟2#工頻及開啟4#變頻,此時可能運行情況
a : : 1,2#泵工頻,4號泵變頻運行
b : 1#工頻,4號泵變頻運行
c : 4號泵變頻運行
(3)當2-34都有故障時,保持2#泵變頻不變,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S
1#工頻沒有起動時起動1#工頻,壓力還不夠且2#
工頻沒有運行時,延時啟動2#工頻;
三檔
當3#變頻運行時,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S,此時
(1)4#泵沒有故障時,復位3#變頻0.5S後,開啟四號變頻
(2) 4#泵有故障時,3#變頻運行不變,壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S
A:如果1#沒有故障,1#工頻沒啟動開啟1#工頻,1#工頻運行後,如果壓力低於壓力下限且變頻泵頻達到50HZ後,超過10S,2#工頻沒啟動開啟2#工頻
四檔
當四號泵變頻運行時,突然4#泵產生故障,此時如果1或2或3#泵有一台泵工頻運行時,
A:1#泵沒有故障時,復位1#泵工頻0.5S後,切換到1#泵變頻運行,如果此時壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S,此時又進行下一輪循環(這時可能產生的問題是:如果壓力始終達不到,會1#變頻,復位2#變頻開啟1#工頻,復位2#變頻,開起3#變頻這樣一個水泵很快進行輪循的過程,但輪循一次後會停下來
B:1#有故障時,2#沒有故障時,復位2#泵工頻0.5S後,切換到2#泵變頻運行,如果此時壓力低於壓力下限,且變頻泵頻率達到50HZ後,超過10S,此時又進行下一輪循環
C :如果1,2#都有故障,3#沒有故障時,復位3#泵泵工頻,切換到3#泵變頻如果4#變頻運行時壓力低於壓力下限且變頻泵頻率達到50HZ後,超過10S,1#工頻沒有起動時起動1#工頻,壓力還不夠時2,及3沒有工頻啟動時,延時依次開啟;當僅且只有1台泵變頻運時,突然那一台泵產生故障,機器恢復到剛開始工作循環狀態
機器復位過程
四檔
當壓力超過壓力下限,且變頻器輸出頻率為0時延時5S後先復位1#工頻,在2-3 #工頻延時停掉
三檔
當壓力超過壓力下限,且變頻器輸出頻率為0時延時5S後先復位1#工頻,在2-#工頻延時停掉
二檔
當壓力超過壓力下限,且變頻器輸出頻率為0時延時5S後先復位1#工頻
★當僅且在1-2-3#泵中只有1台泵是變頻運時,壓力超過壓力下限,且變頻器輸出頻率為0時延時5S,開啟5#泵
★8小時輪換工作
一檔
1#泵變頻運行超過8小時,復位1#變頻,開啟2#變頻
二檔
2#泵變頻運行超過8小時,且3#泵沒有運行時,復位
2#變頻,開啟3#變頻
三檔
3#泵變頻運行超過8小時,且4#泵沒有運行時,復位
3#變頻,開啟4#變頻
變頻器頻率(上升/下降)過程PLC程序
東莞精一控自動化公司恆壓供水控制東莞自動化公司