西門子s7-plcsim提供了方便、強大的仿真模擬功能。與真實的plc相比,它的靈活性高,提供了許多plc硬件無法實現(xiàn)的功能,使用也更加方便。但是仿真軟件畢竟不能完全取代真實的硬件,不可能實現(xiàn)完全仿真。用戶利用s7-plcsim進行仿真時,還應該了解它與真實plc的差別。
1.s7-plcsim上有如下功能在真實plc上無法實現(xiàn)
1)仿真的cpu中正在運行時可以用“stop”選項中斷程序,恢復“運行”時是從程序中斷處開始繼續(xù)處理程序。
2)與真實的cpu一樣,仿真軟件可以改變cpu的操作模式(run、run-p和stop)。但與實際cpu不同的是仿真的cpu切換到stop模式并不會改變輸出的狀態(tài)。
3)仿真軟件中在目標視圖中變量的每個改變,其存儲區(qū)對應相關地址的內容會被同時更新。cpu并不是等到循環(huán)周期結束或開始時才更新改變的數(shù)據(jù)。
4)使用關于程序處理的選項可以指定cpu如何執(zhí)行程序:
●選擇“by cycles”程序執(zhí)行一個周期后等待命令再執(zhí)行下一個循環(huán)周期。
●選擇“automatic”程序的處理同實際自控系統(tǒng)一樣,一旦一個循環(huán)周期結束馬上執(zhí)
行下一個周期。
5)仿真定時器可以使用自動或手動方式處理,自動方式按照程序執(zhí)行結果,手動方式可以給定特殊值或復位定時器。復位定時器可以復位單獨的定時器或一次復位所有定時器。
6)可以手動觸發(fā)診斷中斷ob。ob40到ob47(過程中斷)、ob70(i/o冗余錯誤)、ob72(cpu冗余錯誤)、ob73(通信冗余錯誤)、ob80(時間錯誤)、ob82(診斷警告)、ob83(插拔模塊警告)、ob85(程序執(zhí)行錯誤)和ob86(機架故障)。
7)過程映像區(qū)和i/o區(qū)。如果改變一個輸入映像區(qū)的值,s7-plcsim立即將此值復制到輸入外設區(qū)。這就意味著從輸入外設區(qū)寫到輸入過程映像區(qū)所需要的值在下一個循環(huán)周期開始時不會丟失。同樣如果改變了輸出映像區(qū)的一個值,此值立即被復制到輸出外設區(qū)。
2.s7-plcsim與“實際”的自動化系統(tǒng)還有以下不同
1)診斷緩沖區(qū)。s7-plcsim不能支持所有寫入診斷緩沖區(qū)的錯誤消息。例如,關于cpu中的電池電量不足的消息或者eeprom錯誤是不能仿真的。但大部分i/o和程序錯誤都是可以仿真的。
2)在改變操作模式時(比如從run切換到stop)輸入/輸出沒有“安全”狀態(tài)。
3)不支持功能模塊(fm)。
4) s7-plcsim與s7-400 plc cpu一樣支持4個累加器。在某些情況下s7-plcsim上運行的程序與真實的只有兩個累加器s7-300 plc cpu上運行結果不同。
5)輸入/輸出的不同。大多數(shù)s7-300 plc產品系列的cpu可以自動配置輸入/輸出設備。如果將模塊連接到控制器,cpu即自動地識別此模塊。對于仿真的自動化系統(tǒng),這種自動地識別是不能模擬的。如果把一個自動組態(tài)好i/o的s7-300 plc cpu程序裝載到s7-plcsim中,系統(tǒng)數(shù)據(jù)中將不包含任何i/o組態(tài)。因此,如果使用s7-plcsim來仿真s7-300 plc的程序,為了使cpu能識別所使用的模塊,必須首先裝載硬件組態(tài)。在s7-plcsim中s7-300 plc cpu不能自動識別i/o,例如cpu 315-2dp,cpu 316-2dp或cpu 318-2dp等,為了能將硬件組態(tài)裝載到s7-plcsim,需要創(chuàng)建一個項目。復制相應的硬件組態(tài)到這個項目并裝載到s7-plcsim。然后從任意step 7項目裝載程序塊,i/o處理都不會有錯誤。
此外,s7-plcsim v5.4 sp3以前的版本不能對通信進行仿真。