是時候拋棄S7 200 ,學習S7 1200啦

最近發現,很多工控新手還在學習S7 200,讓我很是驚訝,花那麼多精力去學習一個已經落伍的東西,實在不值得。1200是200的升級換代產品,面向全球銷售。兩者的區別就像是一輛汽車和自行車的區別,前者可以讓你快速到達目的地。200的上市時間為1990左右 ,1200上市時間為2009年前後,上市時間相差20年左右,這20年科技進步巨大,所以新手現在還學200,真是太OUT了,老手快點過渡到1200吧,看看1200帶給你的驚喜。本文作為1200學習的啟蒙篇,帶你瀏覽1200的精彩世界。

外觀篇:

是時候拋棄S7 200 ,學習S7 1200啦

圖1 S7 1200

是時候拋棄S7 200 ,學習S7 1200啦

圖2 S7 200


兩個PLC的外觀沒有多大差別,粗看大概是1200要比200胖一圈,其實兩者最大區別是通信接口,1200自帶以太網接口,200自帶485接口。1200因為自帶以太網接口,功能強大很多,通過把PLC接入路由器,外網便可以訪問1200啦。

1200PLC左右兩側都可以帶擴展模塊,左側一般為通訊模塊,如點到點模塊、profibus DP模塊、交換機模塊、AS-I模塊等等。右側一般為IO擴展模塊,如常見的DI、DQ、AI和AQ,還有如稱重模塊等等。如果需要一些簡單擴展或者需要節省空間,可以通過插入信號板來實現。下圖為擴展模塊分類:

是時候拋棄S7 200 ,學習S7 1200啦

圖3 擴展列表

軟件操作篇:

很多人不敢使用1200 PLC,就是看到TIA PORTAL(博途)太大,覺得很佔用內存空間和硬盤,其實安裝一個X64系統,配置8G內存便可以。編程軟件的改變,其實帶來的是使用體驗的迅猛提升,使用過後你便不會再懷念200的編程軟件和STEP7 V5.XX了。

TIA PORTAL 一個顯著改變的地方便是組態化編程,通過點擊對應模塊,可以實現很多配置,比200方便很多。

是時候拋棄S7 200 ,學習S7 1200啦

圖4 AI模塊組態

上圖組態的是一個模擬量輸入模塊,我們通過點擊左側目錄樹,可以對每一個通道進行配置,包括測量類型、測量範圍、濾波週期和溢出診斷等等。我們還可以對模擬量模塊的起始址進行分配,不需要像200PLC那樣進行計算,TIA會自動計算模塊的起始地址。

從上圖中,我們還能看到1200的可添加模塊數量。CPU左側可以添加3個擴展模塊,右側可以添加8個擴展模塊。與200的可擴展性比較,有兩方面的優勢,一個是擴展模塊數量的增加,另外一個是模塊種類的多樣性。

是時候拋棄S7 200 ,學習S7 1200啦

圖5 CPU組態配置

點擊CPU本體,在常規目錄樹裡面,我們可以看到PLC本體IO的組態和系統配置,詳細內容讀者可以自行點擊,這裡不進行詳細敘述。

TIA 組態軟件,還有一個強大的地方就是和HMI及WINCC 的對接。TIA軟件由STEP7 和WINCC兩部分組成,STEP7 主要用於編寫PLC程序,WINCC基本版可以編寫觸摸屏程序,專業版可以編寫基於PC的組態程序,所以功能非常強大,200在這個方面無法和1200比擬。下面我舉一個1200和HMI通信的簡單例子:

是時候拋棄S7 200 ,學習S7 1200啦

圖6 PLC和HMI聯網

連接PLC和HMI之間的網絡端口,配置便完成,然後我們就可以在HMI的編程環境裡面,任意訪問1200 PLC的變量。通過點擊網絡端口,可以設置各自的IP,必須確保在同一網段裡面。

是時候拋棄S7 200 ,學習S7 1200啦

圖7 建立1200 DB塊變量表

首先我們需要在PLC程序裡面添加一個DB塊變量,從圖中我們可以看到1200變量的強大配置屬性,上圖勾選框有特殊的作用,用於設置訪問的安全性,可讀性,保持性等等。

是時候拋棄S7 200 ,學習S7 1200啦

圖8 HMI變量配置

是時候拋棄S7 200 ,學習S7 1200啦

圖9 HMI變量選擇

我們通過點擊紅色矩形框,來選擇剛剛在PLC程序裡面添加的DB變量,很容易與觸摸屏文本框關聯,基於PC的WINCC組態也是使用此方法。

關於TIA PORTAL 組態暫時講到這裡,因為內容太多,比如還有運動控制組態,PID組態等等,所以這裡不一一敘述了,後面我會帶著講。

編程語言

1200支持的編程語言有LAD(梯形圖),FBD(功能塊圖),SCL(結構化控制語言),但不支持STL(語句表)。有人說1200不如200啊,怎麼不支持STL呢,其實錯了,1200新增加的SCL,大大提高了編程語言的靈活性,使編程語言更接近於自然語言,配合1200豐富的變量類型,可以提高編程效率。STL類似於彙編,看起來枯燥單調,SCL接近於PASCAL或者BASIC,更容易學習,可閱讀性更好。下面介紹LAD和SCL的區別:

是時候拋棄S7 200 ,學習S7 1200啦

圖10 LAD與SCL比較

從兩者語言的比較中,我們可以快速發現,SCL具有簡潔和接近自然語言的優點,SCL佔用的代碼空間更小,讓我們更喜歡它。SCL最適合用於處理數據轉換及複雜函數的編寫,SCL也適合用於處理邏輯控制處理,一般採用狀態機形式。1200所有的功能函數,基本上都支持SCL和LAD兩種語言,比如我們常見的MODBUS,其實採用SCL編寫更為方便。

請不要害怕SCL,小學水平便可以學習,所以你還有害怕的理由嗎?後面我會做一期SCL語言的講解專題。

單獨從梯形圖的功能來說,1200也比200更為強大,舉一個簡單的SUB(減法)指令。在200PLC中,每一種類型變量都有一個單獨的SUB指令塊,比如整數,浮點數,便需要兩個指令塊,而在1200裡面,只需要一個指令塊便兼容所有類型。

是時候拋棄S7 200 ,學習S7 1200啦

圖11 SUB指令

是時候拋棄S7 200 ,學習S7 1200啦

圖12 SUB支持的類型

在SUB指令的左側的IN1參數,輸入你要進行運算的變量,比如是Real類型,SUB指令自動切換為Real類型。如果是Int類型,SUB指令自動切換為Int類型。是不是要比200方便很多呢?

變量類型

1200與200相比支持的類型豐富太多,從圖中我們可見一斑:


是時候拋棄S7 200 ,學習S7 1200啦


圖13 PLC變量類型

很多人看了這個變量類型表會很害怕,其實這只是一部分還沒有寫全。不用害怕,很多類型是Struct(結構體)的變形體,就是在這個結構上面衍生出來的。Struct是一種可以存儲多種變量類型的一種複合變量類型,比如某個變量為Struct類型,可以存儲整型,浮點型。常用變量類型還有數組類型,200無此類型。數組是對同類型變量的組合,通過Index(索引),獲取某一位置的值。比如在1200裡面可以聲明一個數組變量,其類型為結構,用於記錄每個時間點的電壓值,在1200裡面可以像如下聲明,看一下是不是更接近於自然語言呢?

是時候拋棄S7 200 ,學習S7 1200啦

圖14 結構數組類型

運動控制

200的運動控制為很多人所詬病,實在垃圾。S7 1200 自然強大了很多很多,自帶有功能強大的運動組態,支持脈衝控制和PN網絡控制。脈衝控制最大速度支持1M,PN網絡控制支持V90網絡伺服。1200同時還支持閉環控制,支持類型如下:

驅動器連接

軸的閉環/開環控制

編碼器連接

PTO

速度控制、開環

-

模擬量輸出

位置控制、閉環

• 高速計數器 (HSC) 上的編碼器

• 工藝模塊 (TM) 上的編碼器

• PROFIdrive 編碼器(位於PROFINET)

PROFIdrive

位置控制、閉環

• 驅動器上的編碼器

• 高速計數器 (HSC) 上的編碼器

• 工藝模塊 (TM) 上的編碼器

• PROFIdrive 編碼器(位於 PROFINET)

是時候拋棄S7 200 ,學習S7 1200啦

圖15 運動控制組態

在配置視圖中可以組態運動單位,硬限位,回原點方式,脈衝輸出點,信號類型等等。1200運動控制同時支持運行中更改電機速度和位移,非常靈活,同時支持指令表,比200裡面的包絡更為方便。

PID組態

由於CPU內存和DB塊數量的限制,官方建議PID組態應用不要超過16路迴路,同時支持圖形化組態。可同時進行迴路控制,用戶可手動調試參數,也可使用自整定功能,提供了兩種自整定方式由PID控制器自動調試參數。另外STEP7 還提供了調試面板,用戶可以直觀的瞭解控制器及被控對象的狀態。

是時候拋棄S7 200 ,學習S7 1200啦

圖16 PID組態

通信功能

1200由於自帶以太網接口,所以自然支持TCP方面的通信。同時可以通過擴展模塊,支持DP或者485等通信。後期會講解一些常用通信協議,如MODBUS,TCP ,S7 等等。

是時候拋棄S7 200 ,學習S7 1200啦

圖17 1200支持的通信種類

結束語

1200的介紹暫時到這裡,因為1200涉及知識點太多,後期我會分門別類的講解,如果大家有啥想要知道的,可以在文章後面留言,我會根據大家的要求來講解。

如果你還在用200,或者還在用一些日系的小PLC,可以考慮更換1200PLC。1200的性價比很高,最便宜的才600多人民幣,又帶有這麼強大的軟件支持,你為什麼還要猶豫呢?不要懷疑我在為西門子做廣告,只是喜歡1200。



分享到:


相關文章: