問題1:數(shù)據(jù)塊的初始值有什么作用?
回答:數(shù)據(jù)塊的初始值僅對(duì)于一個(gè)數(shù)據(jù)塊的"離線"組態(tài)有意義。如果用戶離線創(chuàng)建了一個(gè)新的數(shù)據(jù)塊或者在離線組態(tài)的過程中在數(shù)據(jù)塊里創(chuàng)建了一個(gè)新的變量,如果用戶不做任何修改,新建的變量會(huì)使用系統(tǒng)默認(rèn)值作為初始值,如果用戶為此變量*了其它數(shù)值作為初始值,數(shù)據(jù)塊將會(huì)多占用相應(yīng)變量長(zhǎng)度的Load memory。在此后的操作中(數(shù)據(jù)塊的上傳及下載),只要數(shù)據(jù)塊的結(jié)構(gòu),變量的數(shù)據(jù)類型沒有發(fā)生改變,變量的初始值都沒有實(shí)際作用,只起到變量類型定義的作用。
如果用戶不給此新建的變量*實(shí)際值,初始值會(huì)被用作變量的實(shí)際值。
用戶可以給變量*實(shí)際值,初始值可以與實(shí)際值不同。
問題2:數(shù)據(jù)塊的實(shí)際值有什么作用?
回答:數(shù)據(jù)塊中的每個(gè)變量都有自己的實(shí)際值,如果用戶不自行*,系統(tǒng)將使用初始值作為變量的實(shí)際值;如果用戶自行*變量的實(shí)際值,則變量的初始值與實(shí)際值可能不相同。
如果用戶在data view 視圖下,在菜單命令中執(zhí)行Edit →initialize data block,數(shù)據(jù)塊中所有變量的實(shí)際值都將被初始值覆蓋(用戶執(zhí)行此操作需要格外謹(jǐn)慎,需要確認(rèn)不再需要數(shù)據(jù)塊中的實(shí)際值)。
問題3:數(shù)據(jù)塊如何實(shí)現(xiàn)斷電保持特性?
回答:為了斷電保存數(shù)據(jù),S7-300CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),如果數(shù)據(jù)塊為斷電保持,則此數(shù)據(jù)塊需要占用具備斷電保持特性的Work memory部分。當(dāng)CPU 經(jīng)歷POWER ON→POWER OFF→ POWER ON或者RESTART過程后,數(shù)據(jù)塊中的數(shù)據(jù)不會(huì)丟失。
注意:
當(dāng)用戶在S7-300CPU 項(xiàng)目中插入新的數(shù)據(jù)塊時(shí),系統(tǒng)默認(rèn)其屬性為斷電保持。
數(shù)據(jù)塊斷電保持是work memory 的特性,與Load memory(MMC) 無關(guān)。
問題4:具備斷電保持特性的數(shù)據(jù)塊何時(shí)會(huì)丟失當(dāng)前值?
回答:如下操作會(huì)導(dǎo)致數(shù)據(jù)塊丟失當(dāng)前值
? Memory RESET 操作(手動(dòng)開關(guān)操作及STEP7 中菜單操作)
? CPU在沒有MMC卡的情況下上電(實(shí)際是因?yàn)榇饲闆r導(dǎo)致了CPU執(zhí)行Memory RESET操作)
? 插入損壞MMC卡/錯(cuò)誤MMC卡的情況下上電(實(shí)際是因?yàn)榇饲闆r導(dǎo)致了CPU執(zhí)行Memory RESET操作)
? CPU損壞
? 下載數(shù)據(jù)塊,且離線數(shù)據(jù)塊中的actual value 與當(dāng)前數(shù)據(jù)塊中的數(shù)值不同
注意:Memory RESET操作將刪除標(biāo)志位、S7 定時(shí)器和 S7 計(jì)數(shù)器地址區(qū)的值,而不管這些區(qū)域是否已定義為保持或非保持屬性。對(duì)于停止/啟動(dòng)(STOP/RUN)操作模式或斷電/上電(POWER OFF/ON ),如果標(biāo)志位、S7 定時(shí)器和 S7 計(jì)數(shù)器地址區(qū)已定義為保持,則保持它們的數(shù)值;否則,這些區(qū)域的數(shù)值將丟失且被初始化為“0”。
問題5:如何使MMC卡中的數(shù)據(jù)塊與Work memory中的數(shù)據(jù)塊保持一致?
回答:當(dāng)用戶**次將數(shù)據(jù)塊下載到CPU 后,如果用戶程序及用戶監(jiān)控/修改操作對(duì)數(shù)據(jù)塊未進(jìn)行過任何修改,則MMC卡中的數(shù)據(jù)塊與Work memory中的數(shù)據(jù)塊內(nèi)容是一致的(這種情況在實(shí)際應(yīng)用中很少出現(xiàn))。
一般情況下,用戶程序及用戶的監(jiān)控/修改操作都會(huì)影響數(shù)據(jù)塊的當(dāng)前值,此數(shù)值位于Work memory中,這樣MMC卡中的數(shù)據(jù)塊有可能與Work memory中的數(shù)據(jù)塊內(nèi)容不一致。對(duì)于不同的數(shù)據(jù)塊屬性,此情況會(huì)有所不同,可分為3種:
1. 勾選了Un-linked 選項(xiàng)的數(shù)據(jù)塊
此數(shù)據(jù)塊只存儲(chǔ)于MMC卡,不存在與Work memory數(shù)據(jù)一致問題
2. 勾選了Non-Retain選項(xiàng)的數(shù)據(jù)塊
由于此類數(shù)據(jù)塊斷電不保持,所以在每次斷電后,Work memory中數(shù)據(jù)塊當(dāng)前值丟失;CPU再上電后,MMC卡中數(shù)據(jù)塊被復(fù)制到Work memory中,兩者將保持?jǐn)?shù)據(jù)一致。
3. 未勾選Non-Retain選項(xiàng)的數(shù)據(jù)塊
由于此類數(shù)據(jù)塊斷電保持,所以在每次斷電后,Work memory中數(shù)據(jù)塊當(dāng)前值保持;CPU再上電后,MMC卡中數(shù)據(jù)塊有可能與Work memory中數(shù)據(jù)不一致。
解決辦法:
1. 需要Work memory中數(shù)據(jù)塊作為保留值:請(qǐng)參考問題11的操作
2. 需要MMC卡中數(shù)據(jù)塊作為保留值:執(zhí)行RESET 操作
問題6:數(shù)據(jù)塊的“Non-Retain”“Un-linked”屬性對(duì)于數(shù)據(jù)塊的內(nèi)存占用有何影響?
回答: S7-300 CPU從版本V2.0.12開始,開始支持具備“Non-Retain”屬性的數(shù)據(jù)塊。S7-300 CPU中的Work memory劃分為兩部分,其中一部分類型為RAM(斷電丟失),一部分為NVRAM(斷電保持),有關(guān) CPU 中可供保持?jǐn)?shù)據(jù)塊使用的主存儲(chǔ)器空間信息,可參看手冊(cè)“S7-300 CPU 31xC and CPU 31x, Technical Data”的*六章和*七章,條目 ID: 12996906。
數(shù)據(jù)塊的屬性對(duì)于數(shù)據(jù)塊的內(nèi)存占用影響情況請(qǐng)參考下表:
內(nèi)存區(qū)域 | Load memory | Work memory |
Work memory (Retentive ) |
|
數(shù)據(jù)塊屬性 | ||||
Non-Retain不勾選(系統(tǒng)默認(rèn)) | 是 | 否 | 是 | |
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選項(xiàng),則另外還可以下載128KB數(shù)據(jù)(如果考慮到用戶程序還需要占用此部分的Work memory,所以實(shí)際使用中達(dá)不到此數(shù)值);如果用戶還需要使用更多的數(shù)據(jù)塊,可以新建數(shù)據(jù)塊,并在其屬性中勾選Un-linked 選項(xiàng),則此數(shù)據(jù)塊只存儲(chǔ)于MMC中,用戶可以使用SFC83/84 對(duì)其進(jìn)行讀寫。
問題7:用戶下載數(shù)據(jù)塊時(shí),其過程是什么樣的?
回答:以下列出了用戶下載數(shù)據(jù)塊時(shí),3種常見過程
1. 數(shù)據(jù)塊屬性中勾選了Un-linked 選項(xiàng)
2. 數(shù)據(jù)塊屬性中未勾選Un-linked 選項(xiàng),未勾選Non-Retain選項(xiàng)
Download |
|
|
3. 數(shù)據(jù)塊屬性中未勾選Un-linked 選項(xiàng),勾選Non-Retain選項(xiàng)
Download |
|
|
問題8:用戶使用STEP7監(jiān)視/修改(monitor/modify)的數(shù)據(jù)塊中的數(shù)值,位于什么存儲(chǔ)區(qū)?
回答:用戶使用STEP7監(jiān)視(monitor)功能時(shí),讀到的數(shù)值來自于CPU的Work memory。用戶使用STEP7修改(modify)功能時(shí),修改的是位于CPU的Work memory中的數(shù)據(jù)塊的數(shù)值。
注意:使用monitor/modify 無法修改MMC卡中的initial value及Actual value
注意:使用monitor/modify 無法監(jiān)控Un-linked類型數(shù)據(jù)塊
問題9:用戶使用STEP7中Upload Station to PG操作時(shí),數(shù)據(jù)塊來自于什么存儲(chǔ)區(qū)?
回答:當(dāng)用戶使用STEP7中Upload Station to PG操作時(shí),數(shù)據(jù)塊的Initial value來自于load memory中的Initial value;數(shù)據(jù)塊的actual value來自于work memory中的actual value;
問題10:如何讀出MMC中數(shù)據(jù)塊的Actual value?
回答:有時(shí)候用戶需要將實(shí)時(shí)運(yùn)行數(shù)據(jù)按照特定規(guī)律歸檔,即使CPU損壞或者CPU復(fù)位操作也不會(huì)造成這些數(shù)據(jù)丟失,這些數(shù)據(jù)可以定期(或根據(jù)用戶程序編制需求)通過SFC84存儲(chǔ)到MMC 卡上(不推薦使用Copy RAM to ROM功能,此操作需要CPU停機(jī))。當(dāng)用戶需要將這些數(shù)據(jù)時(shí),就需要將這些數(shù)據(jù)塊的Actual value讀出。用戶無法通過使用STEP7中Upload Station to PG操作實(shí)現(xiàn)此功能。為了實(shí)現(xiàn)此功能,用戶可以通過兩種方法實(shí)現(xiàn):
1. 使用西門子**讀卡器,通過菜單命令File → memory card →open 打開MMC文件夾,將其中的數(shù)據(jù)塊復(fù)制到另一個(gè)S7 Block 文件夾中,則此文件夾中的數(shù)據(jù)塊中的Actual value是來自于MMC中數(shù)據(jù)塊的Actual value。
2. 使用SFC83,通過程序?qū)MC中數(shù)據(jù)塊的Actual value寫至某個(gè)數(shù)據(jù)塊中,上載此數(shù)據(jù)塊,則此數(shù)據(jù)塊中的Actual value與MMC中數(shù)據(jù)塊的Actual value相同(注意:僅僅是數(shù)值相同)
問題11:如何將CPU數(shù)據(jù)塊中當(dāng)前值作為參數(shù)保存到項(xiàng)目中?
回答:建議用戶為參數(shù)數(shù)據(jù)塊新建一個(gè)S7 program文件夾,以方便日后的調(diào)試工作。
方法1步驟:
1. 打開原來項(xiàng)目中的數(shù)據(jù)塊,在菜單中選擇File → Open online,則打開了在線數(shù)據(jù)塊,
2. 在菜單中選擇File → Store Read-Only,在提示界面下,選擇新建的S7 Promgram/Blocks文件夾。則此數(shù)據(jù)塊被以只讀的方式存儲(chǔ),用戶可以監(jiān)視此數(shù)據(jù)塊,但無法在計(jì)算機(jī)上修改其Actual value。其屬性為Block read-only。
3. 將此數(shù)據(jù)塊下載到CPU中(完成對(duì)MMC卡的覆蓋)。
缺點(diǎn):備份數(shù)據(jù)塊在STEP7 編輯環(huán)境下為只讀屬性,數(shù)據(jù)塊與普通數(shù)據(jù)塊操作不同,日后更改困難
優(yōu)點(diǎn):備份數(shù)據(jù)塊在STEP7 編輯環(huán)境下為只讀屬性,不會(huì)被錯(cuò)誤更改
方法2步驟:
1. 將在線的CPU中的數(shù)據(jù)塊復(fù)制到新建的S7 program/Blocks文件夾中,
2. 將此數(shù)據(jù)塊下載到CPU中(完成對(duì)MMC卡的覆蓋)。
缺點(diǎn):備份數(shù)據(jù)塊沒有變量名及注釋,不便于識(shí)別
優(yōu)點(diǎn):備份數(shù)據(jù)塊與普通數(shù)據(jù)塊操作相同
方法3步驟:
1. 將在線的CPU中的數(shù)據(jù)塊復(fù)制到新建的S7 program/Blocks文件夾中,
2. 在菜單中選擇PLC → Copy RAM to ROM(完成對(duì)MMC卡的覆蓋)。
缺點(diǎn):會(huì)導(dǎo)致CPU停機(jī)(Copy RAM to ROM操作),備份數(shù)據(jù)塊沒有變量名及注釋,不便于識(shí)別,操作會(huì)影響所有的數(shù)據(jù)塊,所有數(shù)據(jù)塊load memory中的actual value都將被work memory 中的actual value覆蓋。
問題12:如何使CPU數(shù)據(jù)塊中當(dāng)前值不被程序更改?
回答:用戶可以將數(shù)據(jù)塊的DB is write-protected in the PLC屬性勾選并下載。
問題13:STEP 7功能“Copy RAM to ROM”有何作用?
回答:Copy RAM to ROM會(huì)把work memory 中的數(shù)據(jù)塊數(shù)值寫至MMC卡中數(shù)據(jù)快的 actual value 中。
問題14:使用SFC 82有何注意事項(xiàng)?
回答:SFC 82只能生成 Non-Retain,UN-Linked ,read-only 類型的數(shù)據(jù)塊
SFC 82可能需要多個(gè)掃描周期才可完成,觸發(fā)調(diào)用SFC82后,需要把觸發(fā)條件復(fù)位
SFC 82對(duì)MMC卡有寫操作,MMC 僅允許進(jìn)行 100,000 次寫訪問,**過此次數(shù),MMC卡將損壞
問題15:使用SFC 83有何注意事項(xiàng)?
回答:SFC 83可能需要多個(gè)掃描周期才可完成,觸發(fā)調(diào)用SFC83后,需要把觸發(fā)條件復(fù)位
SFC 83多用于讀取UN-Linked類型的數(shù)據(jù)塊
問題16:使用SFC 84有何注意事項(xiàng)?
回答:SFC 84可能需要多個(gè)掃描周期才可完成,觸發(fā)調(diào)用SFC84后,需要把觸發(fā)條件復(fù)位
SFC 84對(duì)MMC卡有寫操作,MMC 僅允許進(jìn)行 100,000 次寫訪問,**過此次數(shù),MMC卡將損壞
SFC 84多用于寫UN-Linked類型的數(shù)據(jù)塊,對(duì)于斷電保持的數(shù)據(jù)塊也可以進(jìn)行寫操作,但只有在CPU復(fù)位的情況下才可查看到SFC84最后一次寫操作的數(shù)值。
參考例子:
例子1:如果生成變量,并使用默認(rèn)值,其源代碼將不包含初始值
源代碼:
DATA_BLOCK DB 6
TITLE =
VERSION : 0.1
STRUCT
test1 : INT ; //初始值為默認(rèn)值時(shí),都為此類格式
test2 : INT := 1234;
test3 : INT := 1234;
END_STRUCT ;
BEGIN
test1 := 0;
test2 := 1234;
test3 := 1234;
END_DATA_BLOCK
例子2:work memory中數(shù)據(jù)保持區(qū)接近被占用**的情況,此時(shí)無法下載斷電保持?jǐn)?shù)據(jù)塊,但可以下載“Non-Retain”、“Un-linked”數(shù)據(jù)塊及程序。
詞條
詞條說明
西門子S7-300CPU數(shù)據(jù)塊存儲(chǔ)常見問題
問題1:數(shù)據(jù)塊的初始值有什么作用? 回答:數(shù)據(jù)塊的初始值僅對(duì)于一個(gè)數(shù)據(jù)塊的"離線"組態(tài)有意義。如果用戶離線創(chuàng)建了一個(gè)新的數(shù)據(jù)塊或者在離線組態(tài)的過程中在數(shù)據(jù)塊里創(chuàng)建了一個(gè)新的變量,如果用戶不做任何修改,新建的變量會(huì)使用系統(tǒng)默認(rèn)值作為初始值,如果用戶為此變量*了其它數(shù)值作為初始值,數(shù)據(jù)塊將會(huì)多占用相應(yīng)變量長(zhǎng)度的Load memory。在此后的操作中(數(shù)據(jù)塊的上傳及下載),只要數(shù)據(jù)塊的結(jié)構(gòu),變量的數(shù)
?PLC是通過控制發(fā)送的脈沖來控制伺服電機(jī)的,用物理方式發(fā)送脈沖,也就是使用PLC的晶體管輸出是較常用的方式,一般是低端PLC采用這種方式。 在回答這個(gè)問題之前,首先要清楚伺服電機(jī)的用途,相對(duì)于普通的電機(jī)來說,伺服電機(jī)主要用于精確定位,因此大家通常所說的控制伺服,其實(shí)就是對(duì)伺服電機(jī)的位置控制。其實(shí),伺服電機(jī)還用另外兩種工作模式,那就是速度控制和轉(zhuǎn)矩控制,不過應(yīng)用比較少而已。 速度控制一
公司名: 上海西皇電氣設(shè)備有限公司
聯(lián)系人: 張慧杰
電 話: 15921997852
手 機(jī): 15921997852
微 信: 15921997852
地 址: 上海青浦上海市金山區(qū)楓蘭路
郵 編:
網(wǎng) 址: ximenzi188.b2b168.com
公司名: 上海西皇電氣設(shè)備有限公司
聯(lián)系人: 張慧杰
手 機(jī): 15921997852
電 話: 15921997852
地 址: 上海青浦上海市金山區(qū)楓蘭路
郵 編:
網(wǎng) 址: ximenzi188.b2b168.com
MES系統(tǒng)流水線 在批量生產(chǎn)中不可或缺
¥1450.00
期待您的垂詢與合作 吉安流水線 吉安自動(dòng)化流水線
¥1590.00