構建虛擬工控環境系列 - 西門子虛擬PLC


一、 概述

跟隨着工控安全一路走來,工控安全市場今年明顯有相當大的改善,無論從政策還是客戶需求,都在逐步擴大中。但是,搞工控安全研究的人員卻寥寥無幾。一方面工控安全是個跨學課的技術,需要了解多方面的知識,有比較高的技術上的門檻;另一方面,沒有可以研究和學習的便利的環境。一般,搞這方面研究的公司或者個人,都會先購買一些硬件設備,搭建一個模擬環境,再做相應的安全研究,成本實在是太高。為了解決這個問題,我們做了一系列的相關的技術研究,通過構建一套虛擬的工業控制環境,從而降低了解和學習工控安全的門檻,推動相關人才的培養。

本篇主要介紹西門子虛擬PLC,使用的操作系統為Windows7 x86 Ultimate,虛擬化軟件為 VMware Workstation 12 Pro,(SIEMENS)WinAC RTX 2010。

二、 控制器虛擬化技術介紹

可編程控制器,即PLC。PLC的實現分為硬PLC和軟PLC。 所謂硬PLC從嚴格意義上來說是由硬件或者一塊專用的ASIC芯片來實現PLC指令的執行.而軟PLC是用一些通用的CPU或者MCU來實現PLC指令的解釋或者編譯持行。

軟件PLC(SoftPLC,也稱為軟邏輯SoftLogic)是一種基於基於PC機開發結構的控制系統,它具有硬PLC在功能、可靠性、速度、故障查找等方面的特點,利用軟件技術可以將標准的工業PC轉換成全功能的PLC過程控制器。軟件PLC綜合了計算機和PLC的開關量控制、模擬量控制、數學運算、數值處理、網絡通信、PID調節等功能,通過一個多任務控制內核,提供強大的指令集、快速而准確的掃描周期、可靠的操作和可連接各種I/O系統的及網絡的開放式結構。所以,軟件PLC 提供了與硬PLC同樣的功能,同時又提供了PC環境的各種優點。

虛擬機技術是虛擬化技術的一種,所謂虛擬化技術就是將事物從一種形式轉變成另一種形式,最常用的虛擬化技術有操作系統中內存的虛擬化,實際運行時用戶需要的內存空間可能遠遠大於物理機器的內存大小,利用內存的虛擬化技術,用戶可以將一部分硬盤虛擬化為內存,而這對用戶是透明的。又如,可以利用虛擬專用網技術(VPN)在公共網絡中虛擬化一條安全,穩定的“隧道”,用戶感覺像是使用私有網絡一樣。

如果將軟PLC安裝在虛擬機下,在軟PLC出現故障時,用備份的虛擬機代替當前的虛擬機,即可快速恢復系統運行;此外,開發人員不必在現場,即可開發調試項目,在調試完成后,將包含軟PLC的虛擬機直接放在現場的工控計算機上就直接可以完全運行。但是軟PLC目前只能在物理PC上安裝運行,在虛擬機下可以安裝,但不能運行,這是由於軟PLC需要直接驅動硬件,而虛擬機中的硬件都是虛擬造成的。

三、西門子虛擬化WinAC產品分類

SIMATIC WinAC是西門子公司開發的基於PC控制的核心組件,它的出現擴展了SIMATIC S7的控制范圍。WinAC是一個名副其實的控制中心,它將PLC控制、數據處理、通訊、可視化及工藝集成於一台PC機上。 SIMATIC WinAC產品包括軟件型和插槽型兩大類,包括如下5種產品:

  • 1、WinAC Basis (WinAC 基本型) WinAC Basis 是低成本解決方案,用於對控制無精確時間要求,有大量、快速的數據處理與控制任務(控制任務指PLC的控制功能)相結合或其它PC任務的控制場合。

  • 2、WinAC PN 第一個支持PROFInet通訊標准的SIMATIC CPU,性能與WinAC Basis相似。WinAC PN支持基於組件的自動化(CBA)和PROFInet通訊標准。基於組件的自動化和PROFInet提供了一個開放的標准,用於在復雜任務中機械和系統單元之間的數據交換。數據交換通過SIMATIC iMap工具來進行配置。WinAC PN適應於以下任務: 整個復雜系統的機械和車間區域之間的協調和連接 來自系統單元或機械可被集成到一個全范圍的復雜系統控制WinAC Basis 4.1有一個選件WinAC PN,帶有WinAC PN選件的WinAC Basis 4.1支持PROFInet和CBA。

  • 3、WinAC RTX(WinAC 實時型) WinAC RTX 提供了Windows 2000/XP的實時子系統,具有“硬實時”和“抗死機”特性。適應於具有高速和精確時間要求的控制任務的場合,如運動控制、閉環控制等。

  • 4、WinAC MP WinAC MP基於WinCE操作系統和SIMATIC MP370(一種多功能面板)硬件平台。MP370為無硬盤、無風扇設計,WinCE具有實時特性,可實現嚴格的確定性動作。WinAC MP用在惡劣工業環境和有大量數據要處理的場合。

  • 5、WinAC Slot 412/416 以板卡的形式插入在PC中,在板卡上已經集成了用於控制任務的CPU、存儲器等元件。它可獨立於PC進行控制操作。板卡上集成一個MPI/DP接口和一個DP口。WinAC Slot適用於對安全性和穩定性要求較高的場合。WinAC Slot 412/416在性能上與S7-412/416相近。

四、虛擬控制器WinAC RTX搭建

1、打開虛擬機系統的安裝目錄,找到后綴名是“.vmx”的文件,然后用記事本打開。

Alt text

2、添加虛擬網卡設備,添加如下配置。如果配置文件中已存在,則不添加“ethernet0.virtualDev = "e1000e"”,直接將等號后面的值改為"e1000e"。

ethernet0.virtualDev = "e1000e"
bios440.filename="FUJITSU211_314.ROM"

Alt text

3、在西門子技術支持的官網(https://support.industry.siemens.com)下載文件“FUJITSU211_314.ROM”,並將在虛擬機安裝目錄下。此文件是將虛擬機硬件映像成FUJITSU PRIMERGR服務器。如下圖所示。

Alt text

4、打開運行虛擬機,配置當前主機的IP地址。

Alt text

5、使用虛擬光驅安裝WinAC RTX 2010。

Alt text

6、安裝完后啟動station Configurator。

Alt text

7、打開的窗口中添加WinLC RTX,添加通訊網卡“IE 通用”

Alt text

8、此時會發現桌面上多出一個圖標,此圖標就是虛擬PLC的圖標,雙擊打開即可。至此,就完成了在虛擬機中安裝PLC。

Alt text

五、虛擬控制器組態

1、打開step7軟件,創建工程,並進行組態配置,配置方法如下圖所示。

Alt text

2、編寫一個小的測試程序。

Alt text

3、編譯並下載組態程序。

Alt text

4、監控運行,如果一切正常,即顯示為“RUN”狀態。

Alt text

5、可以使用step7軟件控制虛擬PLC的啟停。

Alt text

至此,就完成了虛擬PLC的搭建。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM