西門子NCU數(shù)控主板6FC5247-0AA06-0AA0
問題1:數(shù)據(jù)塊的初始值有什么作用?
回答:數(shù)據(jù)塊的初始值僅對于一個數(shù)據(jù)塊的"離線"組態(tài)有意義。如果用戶離線創(chuàng)建了一個新的數(shù)據(jù)塊或者在離線組態(tài)的過程中在數(shù)據(jù)塊里創(chuàng)建了一個新的變量,如果用戶不做任何修改,新建的變量會使用系統(tǒng)默認值作為初始值,如果用戶為此變量了其它數(shù)值作為初始值,數(shù)據(jù)塊將會多占用相應(yīng)變量長度的Load memory。在此后的操作中(數(shù)據(jù)塊的上傳及下載),只要數(shù)據(jù)塊的結(jié)構(gòu),變量的數(shù)據(jù)類型沒有發(fā)生改變,變量的初始值都沒有實際作用,只起到變量類型定義的作用。
如果用戶不給此新建的變量實際值,初始值會被用作變量的實際值。
![](https://support.industry.siemens.com/cs/images/81213606/images_01-1.png)
用戶可以給變量實際值,初始值可以與實際值不同。
![](https://support.industry.siemens.com/cs/images/81213606/images_01-2.png)
問題2:數(shù)據(jù)塊的實際值有什么作用?
回答:數(shù)據(jù)塊中的每個變量都有自己的實際值,如果用戶不自行,系統(tǒng)將使用初始值作為變量的實際值;如果用戶自行變量的實際值,則變量的初始值與實際值可能不相同。
![](https://support.industry.siemens.com/cs/images/81213606/images_02-1.png)
如果用戶在data view 視圖下,在菜單命令中執(zhí)行Edit →initialize data block,數(shù)據(jù)塊中所有變量的實際值都將被初始值覆蓋(用戶執(zhí)行此操作需要格外謹慎,需要確認不再需要數(shù)據(jù)塊中的實際值)。
![](https://support.industry.siemens.com/cs/images/81213606/images_02-2.png)
問題3:數(shù)據(jù)塊如何實現(xiàn)斷電保持特性?
回答:為了斷電保存數(shù)據(jù),S7-300CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),如果數(shù)據(jù)塊為斷電保持,則此數(shù)據(jù)塊需要占用具備斷電保持特性的Work memory部分。當CPU 經(jīng)歷POWER ON→POWER OFF→ POWER ON或者RESTART過程后,數(shù)據(jù)塊中的數(shù)據(jù)不會丟失。
注意:
當用戶在S7-300CPU 項目中插入新的數(shù)據(jù)塊時,系統(tǒng)默認其屬性為斷電保持。
數(shù)據(jù)塊斷電保持是work memory 的特性,與Load memory(MMC) 無關(guān)。
問題4:具備斷電保持特性的數(shù)據(jù)塊何時會丟失當前值?
回答:如下操作會導(dǎo)致數(shù)據(jù)塊丟失當前值
? Memory RESET 操作(手動開關(guān)操作及STEP7 中菜單操作)
? CPU在沒有MMC卡的情況下上電(實際是因為此情況導(dǎo)致了CPU執(zhí)行Memory RESET操作)
? 插入損壞MMC卡/錯誤MMC卡的情況下上電(實際是因為此情況導(dǎo)致了CPU執(zhí)行Memory RESET操作)
? CPU損壞
? 下載數(shù)據(jù)塊,且離線數(shù)據(jù)塊中的actual value 與當前數(shù)據(jù)塊中的數(shù)值不同
注意:Memory RESET操作將刪除標志位、S7 定時器和 S7 計數(shù)器地址區(qū)的值,而不管這些區(qū)域是否已定義為保持或非保持屬性。對于停止/啟動(STOP/RUN)操作模式或斷電/上電(POWER OFF/ON ),如果標志位、S7 定時器和 S7 計數(shù)器地址區(qū)已定義為保持,則保持它們的數(shù)值;否則,這些區(qū)域的數(shù)值將丟失且被初始化為“0"。
問題5:如何使MMC卡中的數(shù)據(jù)塊與Work memory中的數(shù)據(jù)塊保持*?
回答:當用戶*次將數(shù)據(jù)塊下載到CPU 后,如果用戶程序及用戶監(jiān)控/修改操作對數(shù)據(jù)塊未進行過任何修改,則MMC卡中的數(shù)據(jù)塊與Work memory中的數(shù)據(jù)塊內(nèi)容是*的(這種情況在實際應(yīng)用中很少出現(xiàn))。
一般情況下,用戶程序及用戶的監(jiān)控/修改操作都會影響數(shù)據(jù)塊的當前值,此數(shù)值位于Work memory中,這樣MMC卡中的數(shù)據(jù)塊有可能與Work memory中的數(shù)據(jù)塊內(nèi)容不*。對于不同的數(shù)據(jù)塊屬性,此情況會有所不同,可分為3種:
1. 勾選了Un-linked 選項的數(shù)據(jù)塊
此數(shù)據(jù)塊只存儲于MMC卡,不存在與Work memory數(shù)據(jù)*問題
2. 勾選了Non-Retain選項的數(shù)據(jù)塊
由于此類數(shù)據(jù)塊斷電不保持,所以在每次斷電后,Work memory中數(shù)據(jù)塊當前值丟失;CPU再上電后,MMC卡中數(shù)據(jù)塊被復(fù)制到Work memory中,兩者將保持數(shù)據(jù)*。
3. 未勾選Non-Retain選項的數(shù)據(jù)塊
由于此類數(shù)據(jù)塊斷電保持,所以在每次斷電后,Work memory中數(shù)據(jù)塊當前值保持;CPU再上電后,MMC卡中數(shù)據(jù)塊有可能與Work memory中數(shù)據(jù)不*。
解決辦法:
1. 需要Work memory中數(shù)據(jù)塊作為保留值:請參考問題11的操作
2. 需要MMC卡中數(shù)據(jù)塊作為保留值:執(zhí)行RESET 操作
1) 即將推出
2) 部分電機zui高轉(zhuǎn)速達到 4000 轉(zhuǎn)/分,具體參考產(chǎn)品樣本 NC81
安全轉(zhuǎn)矩停止功能(STO)
基于驅(qū)動器的安全轉(zhuǎn)矩停止(STO)功能能夠防止機床的意外移動并*符合歐洲安全標準規(guī)定(符合 SIL2,EN618005-2 標準)。
西門子NCU數(shù)控主板6FC5247-0AA06-0AA0
問題6:數(shù)據(jù)塊的“Non-Retain"“Un-linked"屬性對于數(shù)據(jù)塊的內(nèi)存占用有何影響?
回答: S7-300 CPU從版本V2.0.12開始,開始支持具備“Non-Retain"屬性的數(shù)據(jù)塊。S7-300 CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),有關(guān) CPU 中可供保持數(shù)據(jù)塊使用的主存儲器空間信息,可參看手冊“S7-300 CPU 31xC and CPU 31x, Technical Data"的第六章和第七章,條目 ID: 12996906。
數(shù)據(jù)塊的屬性對于數(shù)據(jù)塊的內(nèi)存占用影響情況請參考下表:
| 內(nèi)存區(qū)域 | Load memory | Work memory | Work memory (Retentive ) |
數(shù)據(jù)塊屬性 |
|
Non-Retain不勾選(系統(tǒng)默認) | 是 | 否 | 是 |
Non-Retain勾選 | 是 | 是 | 否 |
Un-linked | 是 | 否 | 否 |
以CPU 315(6ES7-315-2EH13-0AB0, Firmware V2.6.7)為例,其Work memory 共256KB,其中可以斷電保持的Work memory共128KB, 而Load memory 取決于所使用MMC的容量。用戶可以下載的具備斷電保持屬性的數(shù)據(jù)塊總量為128KB;如果用戶還需要使用更多的數(shù)據(jù)塊,可以新建數(shù)據(jù)塊,并在其屬性中勾選Non-Retain選項,則另外還可以下載128KB數(shù)據(jù)(如果考慮到用戶程序還需要占用此部分的Work memory,所以實際使用中達不到此數(shù)值);如果用戶還需要使用更多的數(shù)據(jù)塊,可以新建數(shù)據(jù)塊,并在其屬性中勾選Un-linked 選項,則此數(shù)據(jù)塊只存儲于MMC中,用戶可以使用SFC83/84 對其進行讀寫。
問題7:用戶下載數(shù)據(jù)塊時,其過程是什么樣的?
回答:以下列出了用戶下載數(shù)據(jù)塊時,3種常見過程
1. 數(shù)據(jù)塊屬性中勾選了Un-linked 選項
![](https://support.industry.siemens.com/cs/images/81213606/images_07-1.png)
2. 數(shù)據(jù)塊屬性中未勾選Un-linked 選項,未勾選Non-Retain選項
3. 數(shù)據(jù)塊屬性中未勾選Un-linked 選項,勾選Non-Retain選項
問題8:用戶使用STEP7監(jiān)視/修改(monitor/modify)的數(shù)據(jù)塊中的數(shù)值,位于什么存儲區(qū)?
回答:用戶使用STEP7監(jiān)視(monitor)功能時,讀到的數(shù)值來自于CPU的Work memory。用戶使用STEP7修改(modify)功能時,修改的是位于CPU的Work memory中的數(shù)據(jù)塊的數(shù)值。
注意:使用monitor/modify 無法修改MMC卡中的initial value及Actual value
注意:使用monitor/modify 無法監(jiān)控Un-linked類型數(shù)據(jù)塊
![](https://support.industry.siemens.com/cs/images/81213606/images_08.png)
問題9:用戶使用STEP7中Upload Station to PG操作時,數(shù)據(jù)塊來自于什么存儲區(qū)?
回答:當用戶使用STEP7中Upload Station to PG操作時,數(shù)據(jù)塊的Initial value來自于load memory中的Initial value;數(shù)據(jù)塊的actual value來自于work memory中的actual value;
![](https://support.industry.siemens.com/cs/images/81213606/images_09.png)
問題10:如何讀出MMC中數(shù)據(jù)塊的Actual value?
回答:有時候用戶需要將實時運行數(shù)據(jù)按照特定規(guī)律歸檔,即使CPU損壞或者CPU復(fù)位操作也不會造成這些數(shù)據(jù)丟失,這些數(shù)據(jù)可以定期(或根據(jù)用戶程序編制需求)通過SFC84存儲到MMC 卡上(不推薦使用Copy RAM to ROM功能,此操作需要CPU停機)。當用戶需要將這些數(shù)據(jù)時,就需要將這些數(shù)據(jù)塊的Actual value讀出。用戶無法通過使用STEP7中Upload Station to PG操作實現(xiàn)此功能。為了實現(xiàn)此功能,用戶可以通過兩種方法實現(xiàn):
1. 使用西門子讀卡器,通過菜單命令File → memory card →open 打開MMC文件夾,將其中的數(shù)據(jù)塊復(fù)制到另一個S7 Block 文件夾中,則此文件夾中的數(shù)據(jù)塊中的Actual value是來自于MMC中數(shù)據(jù)塊的Actual value。
2. 使用SFC83,通過程序?qū)MC中數(shù)據(jù)塊的Actual value寫至某個數(shù)據(jù)塊中,上載此數(shù)據(jù)塊,則此數(shù)據(jù)塊中的Actual value與MMC中數(shù)據(jù)塊的Actual value相同(注意:僅僅是數(shù)值相同)
問題11:如何將CPU數(shù)據(jù)塊中當前值作為參數(shù)保存到項目中?
回答:建議用戶為參數(shù)數(shù)據(jù)塊新建一個S7 program文件夾,以方便日后的調(diào)試工作。
![](https://support.industry.siemens.com/cs/images/81213606/images_11.png)
方法1步驟:
1. 打開原來項目中的數(shù)據(jù)塊,在菜單中選擇File → Open online,則打開了在線數(shù)據(jù)塊,
2. 在菜單中選擇File → Store Read-Only,在提示界面下,選擇新建的S7 Promgram/Blocks文件夾。則此數(shù)據(jù)塊被以只讀的方式存儲,用戶可以監(jiān)視此數(shù)據(jù)塊,但無法在計算機上修改其Actual value。其屬性為Block read-only。
3. 將此數(shù)據(jù)塊下載到CPU中(完成對MMC卡的覆蓋)。
![](https://support.industry.siemens.com/cs/images/81213606/images_11-2.png)
缺點:備份數(shù)據(jù)塊在STEP7 編輯環(huán)境下為只讀屬性,數(shù)據(jù)塊與普通數(shù)據(jù)塊操作不同,日后更改困難
優(yōu)點:備份數(shù)據(jù)塊在STEP7 編輯環(huán)境下為只讀屬性,不會被錯誤更改
方法2步驟:
1. 將在線的CPU中的數(shù)據(jù)塊復(fù)制到新建的S7 program/Blocks文件夾中,
2. 將此數(shù)據(jù)塊下載到CPU中(完成對MMC卡的覆蓋)。
缺點:備份數(shù)據(jù)塊沒有變量名及注釋,不便于識別
優(yōu)點:備份數(shù)據(jù)塊與普通數(shù)據(jù)塊操作相同
方法3步驟:
1. 將在線的CPU中的數(shù)據(jù)塊復(fù)制到新建的S7 program/Blocks文件夾中,
2. 在菜單中選擇PLC → Copy RAM to ROM(完成對MMC卡的覆蓋)。
缺點:會導(dǎo)致CPU停機(Copy RAM to ROM操作),備份數(shù)據(jù)塊沒有變量名及注釋,不便于識別,操作會影響所有的數(shù)據(jù)塊,所有數(shù)據(jù)塊load memory中的actual value都將被work memory 中的actual value覆蓋。
問題12:如何使CPU數(shù)據(jù)塊中當前值不被程序更改?
回答:用戶可以將數(shù)據(jù)塊的DB is write-protected in the PLC屬性勾選并下載。
![](https://support.industry.siemens.com/cs/images/81213606/images_12.png)
問題13:STEP 7功能“Copy RAM to ROM"有何作用?
回答:Copy RAM to ROM會把work memory 中的數(shù)據(jù)塊數(shù)值寫至MMC卡中數(shù)據(jù)快的 actual value 中。
問題14:使用SFC 82有何注意事項?
回答:SFC 82只能生成 Non-Retain,UN-Linked ,read-only 類型的數(shù)據(jù)塊
SFC 82可能需要多個掃描周期才可完成,觸發(fā)調(diào)用SFC82后,需要把觸發(fā)條件復(fù)位
SFC 82對MMC卡有寫操作,MMC 僅允許進行 100,000 次寫訪問,超過此次數(shù),MMC卡將損壞
問題15:使用SFC 83有何注意事項?
回答:SFC 83可能需要多個掃描周期才可完成,觸發(fā)調(diào)用SFC83后,需要把觸發(fā)條件復(fù)位
SFC 83多用于讀取UN-Linked類型的數(shù)據(jù)塊
問題16:使用SFC 84有何注意事項?
回答:SFC 84可能需要多個掃描周期才可完成,觸發(fā)調(diào)用SFC84后,需要把觸發(fā)條件復(fù)位
SFC 84對MMC卡有寫操作,MMC 僅允許進行 100,000 次寫訪問,超過此次數(shù),MMC卡將損壞
SFC 84多用于寫UN-Linked類型的數(shù)據(jù)塊,對于斷電保持的數(shù)據(jù)塊也可以進行寫操作,但只有在CPU復(fù)位的情況下才可查看到SFC84后一次寫操作的數(shù)值。
參考例子:
例子1:如果生成變量,并使用默認值,其源代碼將不包含初始值
![](https://support.industry.siemens.com/cs/images/81213606/images_16-1.png)
源代碼:
DATA_BLOCK DB 6
TITLE =
VERSION : 0.1
STRUCT
test1 : INT ; //初始值為默認值時,都為此類格式
test2 : INT := 1234;
test3 : INT := 1234;
END_STRUCT ;
BEGIN
test1 := 0;
test2 := 1234;
test3 := 1234;
END_DATA_BLOCK