![]() |
上海凱臺自動化控制設備有限公司
主營產品: 西門子 |

![]() |
上海凱臺自動化控制設備有限公司
主營產品: 西門子 |
參考價 | 面議 |
西門子-Siemens
公司可提供西門子編程調試,安裝設計
公司承接西門子工控設備PLC編程調試安裝,線路改造,
西門子可編程控制器,模塊,CPU,DP等一系列。
:李涵 :
業務: 電子郵件:
西門子可編程控制器CPU315-2DP
西門子可編程控制器CPU315-2DP
西門子可編程控制器CPU315-2DP
用戶可以給變量實際值,初始值可以與實際值不同。
問題2:數據塊的實際值有什么作用?
回答:數據塊中的每個變量都有自己的實際值,如果用戶不自行,系統將使用初始值作為變量的實際值;如果用戶自行變量的實際值,則變量的初始值與實際值可能不相同。
如果用戶在data view 視圖下,在菜單命令中執行Edit →initialize data block,數據塊中所有變量的實際值都將被初始值覆蓋(用戶執行此操作需要格外謹慎,需要確認不再需要數據塊中的實際值)。
問題3:數據塊如何實現斷電保持特性?
回答:為了斷電保存數據,S7-300CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),如果數據塊為斷電保持,則此數據塊需要占用具備斷電保持特性的Work memory部分。當CPU 經歷POWER ON→POWER OFF→ POWER ON或者RESTART過程后,數據塊中的數據不會丟失。
注意:
當用戶在S7-300CPU 項目中插入新的數據塊時,系統默認其屬性為斷電保持。
數據塊斷電保持是work memory 的特性,與Load memory(MMC) 無關。
問題4:具備斷電保持特性的數據塊何時會丟失當前值?
回答:如下操作會導致數據塊丟失當前值
? Memory RESET 操作(手動開關操作及STEP7 中菜單操作)
? CPU在沒有MMC卡的情況下上電(實際是因為此情況導致了CPU執行Memory RESET操作)
? 插入損壞MMC卡/錯誤MMC卡的情況下上電(實際是因為此情況導致了CPU執行Memory RESET操作)
? CPU損壞
? 下載數據塊,且離線數據塊中的actual value 與當前數據塊中的數值不同
注意:Memory RESET操作將刪除標志位、S7 定時器和 S7 計數器地址區的值,而不管這些區域是否已定義為保持或非保持屬性。對于停止/啟動(STOP/RUN)操作模式或斷電/上電(POWER OFF/ON ),如果標志位、S7 定時器和 S7 計數器地址區已定義為保持,則保持它們的數值;否則,這些區域的數值將丟失且被初始化為“0"。
問題5:如何使MMC卡中的數據塊與Work memory中的數據塊保持*?
回答:當用戶*次將數據塊下載到CPU 后,如果用戶程序及用戶監控/修改操作對數據塊未進行過任何修改,則MMC卡中的數據塊與Work memory中的數據塊內容是*的(這種情況在實際應用中很少出現)。
一般情況下,用戶程序及用戶的監控/修改操作都會影響數據塊的當前值,此數值位于Work memory中,這樣MMC卡中的數據塊有可能與Work memory中的數據塊內容不*。對于不同的數據塊屬性,此情況會有所不同,可分為3種:
1. 勾選了Un-linked 選項的數據塊
此數據塊只存儲于MMC卡,不存在與Work memory數據*問題
2. 勾選了Non-Retain選項的數據塊
由于此類數據塊斷電不保持,所以在每次斷電后,Work memory中數據塊當前值丟失;CPU再上電后,MMC卡中數據塊被復制到Work memory中,兩者將保持數據*。
3. 未勾選Non-Retain選項的數據塊
由于此類數據塊斷電保持,所以在每次斷電后,Work memory中數據塊當前值保持;CPU再上電后,MMC卡中數據塊有可能與Work memory中數據不*。
解決辦法:
1. 需要Work memory中數據塊作為保留值:請參考問題11的操作
2. 需要MMC卡中數據塊作為保留值:執行RESET 操作
問題6:數據塊的“Non-Retain"“Un-linked"屬性對于數據塊的內存占用有何影響?
回答: S7-300 CPU從版本V2.0.12開始,開始支持具備“Non-Retain"屬性的數據塊。S7-300 CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),有關 CPU 中可供保持數據塊使用的主存儲器空間信息,可參看手冊“S7-300 CPU 31xC and CPU 31x, Technical Data"的第六章和第七章,條目 ID: 12996906。
數據塊的屬性對于數據塊的內存占用影響情況請參考下表:
內存區域 | Load memory | Work memory | Work memory (Retentive ) | |
數據塊屬性 | ||||
Non-Retain不勾選(系統默認) | 是 | 否 | 是 | |
Non-Retain勾選 | 是 | 是 | 否 | |
Un-linked | 是 | 否 | 否 |
以CPU 315(6ES7-315-2EH13-0AB0, Firmware V2.6.7)為例,其Work memory 共256KB,其中可以斷電保持的Work memory共128KB, 而Load memory 取決于所使用MMC的容量。用戶可以下載的具備斷電保持屬性的數據塊總量為128KB;如果用戶還需要使用更多的數據塊,可以新建數據塊,并在其屬性中勾選Non-Retain選項,則另外還可以下載128KB數據(如果考慮到用戶程序還需要占用此部分的Work memory,所以實際使用中達不到此數值);如果用戶還需要使用更多的數據塊,可以新建數據塊,并在其屬性中勾選Un-linked 選項,則此數據塊只存儲于MMC中,用戶可以使用SFC83/84 對其進行讀寫。
問題7:用戶下載數據塊時,其過程是什么樣的?
回答:以下列出了用戶下載數據塊時,3種常見過程
1. 數據塊屬性中勾選了Un-linked 選項
2. 數據塊屬性中未勾選Un-linked 選項,未勾選Non-Retain選項
![]() | Download | ![]() |
3. 數據塊屬性中未勾選Un-linked 選項,勾選Non-Retain選項
![]() | Download | ![]() |
問題8:用戶使用STEP7監視/修改(monitor/modify)的數據塊中的數值,位于什么存儲區?
回答:用戶使用STEP7監視(monitor)功能時,讀到的數值來自于CPU的Work memory。用戶使用STEP7修改(modify)功能時,修改的是位于CPU的Work memory中的數據塊的數值。
注意:使用monitor/modify 無法修改MMC卡中的initial value及Actual value
注意:使用monitor/modify 無法監控Un-linked類型數據塊
問題9:用戶使用STEP7中Upload Station to PG操作時,數據塊來自于什么存儲區?
回答:當用戶使用STEP7中Upload Station to PG操作時,數據塊的Initial value來自于load memory中的Initial value;數據塊的actual value來自于work memory中的actual value;
問題10:如何讀出MMC中數據塊的Actual value?
回答:有時候用戶需要將實時運行數據按照特定規律歸檔,即使CPU損壞或者CPU復位操作也不會造成這些數據丟失,這些數據可以定期(或根據用戶程序編制需求)通過SFC84存儲到MMC 卡上(不*使用Copy RAM to ROM功能,此操作需要CPU停機)。當用戶需要將這些數據時,就需要將這些數據塊的Actual value讀出。用戶無法通過使用STEP7中Upload Station to PG操作實現此功能