詳細介紹
西門子長春市代理商
《銷售態(tài)度》:質(zhì)量保證,、誠信服務(wù)、及時到位,!
《銷售宗旨》:為客戶創(chuàng)造價值是我們永遠追求的目標,!
《服務(wù)說明》:現(xiàn)貨配送至全國各地含稅(13%)含運費!
《產(chǎn)品質(zhì)量》:原裝產(chǎn)品,,*!
《產(chǎn)品優(yōu)勢》:專業(yè)銷售 薄利多銷 信譽好,,口碑好,,價格低,,貨期短,大量現(xiàn)貨,服務(wù)周到,!
問題:
如何用ET200S (IM151-CPU)運行遠程服務(wù),?
解答:
你希望建立到ET200S (IM151-CPU)的遠程鏈接,。
用ET200S (IM151-CPU)運行遠程服務(wù),下列組件可用:
- 把SIMATIC 遠程服務(wù)作為用于STEP 7的選項包
- TS適配器
遠程服務(wù)允許下列運行模式:
- 遠程服務(wù)
- PLC - PG/PC遠程鏈接
- PLC - PLC遠程鏈接
1. 遠程服務(wù)
在此運行模式中,,建立起從PG/PC到ET200S CPU的一個連接。ET200S是服務(wù)器,。這樣也允許了無限制使用ET200S上的被動接口。
這里,本地PG/PC自身通過調(diào)制解調(diào)器建立起一個到遠程TS適配器的連接,,然后將一個S7連接到遠程CPU。通過建立起的這些連接,,可以在遠程CPU上運行STEP 7服務(wù)程序,,如下載/上載,,狀態(tài)/控制,在線診斷等,。
圖1:遠程服務(wù)
2. PLC - PG/PC 遠程鏈接
由于下列原因,,在帶被動DP接口的ET200S CPU中不能進行這種類型的鏈接:
在該運行作模式中,,S7連接通過功能塊“PG_DIAL”建立從PLC到本地TS適配器的連接。功能塊“PG_DIAL”隨TeleService軟件提供并集成到已安裝的STEP 7軟件包中,。“PG_DIAL”功能塊內(nèi)部調(diào)用S7基本通訊塊:X_SEND和X_GET。然后,,TS適配器自己通過已連接好的調(diào)制解調(diào)器自己建立到遠程PG/PC的遠程連接,。在此連接中,,應(yīng)用程序(用PRODAVE MPI創(chuàng)建)扮演相應(yīng)通訊伙伴的角色。在這種情況下,,CPU必須承擔(dān)建立連接的任務(wù),。只有CPU的接口為 主動的接口并具有MPI屬性(通過 X 塊支持S7基本通訊)才有可能,。
圖2:PLC-PG 遠程鏈接
3. PLC - PLC 遠程鏈接
該連接用于通過WAN的CPU-CPU通訊。至少一方必須主動建立連接(啟動程序),,為此,,這一方的通訊接口必須為主動接口,,而且S7基本通訊塊可用(X_PUT,X_SEND,,X_GET,,X_ABORT)。另一方具有服務(wù)器功能即可,,而且 被動接口亦可行。
將S7連接到本地TS適配器通過本地CPU中的功能塊“PLC_DIAL”建立,。功能塊“PLC_DIAL”隨TeleService軟件提供并集成到已安裝的 STEP 7軟架包中,。“PLC_DIAL”功能塊提供到本地TS適配器的選擇信息,,之后TS適配器通過已連接的調(diào)制解調(diào)器建立到遠程TS適配器的遠程連接。數(shù)據(jù)傳送期間,,遠程TS適配器如“透明路由器”一樣動作,。它建立遠程CPU的S7連接,,并且用遠程CPU的操作固件執(zhí)行X_GET和X_PUT任務(wù)而無需在遠程CPU上使用具有此功能的用戶程序。
ET200S CPU有一個被動接口,,因而如服務(wù)器那樣支持PLC-PLC遠程連接,,盡管只適用于引發(fā)設(shè)備(本地CPU)中的系統(tǒng)功能X_PUT和/或X_GET,。之后,可以比較ET200S的PROFIBUS接口和MPI接口(PB地址 = MPI地址),。必須將ET200S連接到如同TS適配器一樣的相同PROFIBUS段,。在參數(shù)化TS適配器時,,必須設(shè)置對應(yīng)于ET200 CPU的PROFIBUS設(shè)置文件。
圖3:PLC-PLC 遠程鏈接
題1:S7-200 CPU內(nèi)部存儲區(qū)類型,?
回答:S7-200 CPU內(nèi)部存儲區(qū)分為易失性的RAM存儲區(qū)和保持的EEPROM兩種,,其中RAM包含CPU工作存儲區(qū)和數(shù)據(jù)區(qū)域中的V數(shù)據(jù)存儲區(qū)、M數(shù)據(jù)存儲區(qū),、T(定時器)區(qū)和C(計數(shù)器)區(qū),EEPROM包含程序存儲區(qū),、V數(shù)據(jù)存儲區(qū)的全部和M數(shù)據(jù)存儲區(qū)的前14個字節(jié),。
也就是說V區(qū)和MB0-MB13這些區(qū)域都有對應(yīng)的EEPROM保持區(qū)域。
EEPROM的寫操作次數(shù)是有限制的(少10萬次,,典型值為100萬次),,所以請注意只在必要時才進行保存操作。否則,,EEPROM可能會失效,從而引起CPU故障,。
EEPROM的寫入次數(shù)如果超過限制之后,該CPU即不能使用了,,需要整體更換CPU,不能夠只更換CPU內(nèi)EEPROM,,西門子不提供這項服務(wù),。
問題2:S7-200 CPU的存儲卡的作用,?
回答:S7-200還提供三種類型的存儲卡用于存儲程序,數(shù)據(jù)塊,,系統(tǒng)塊,,數(shù)據(jù)記錄(歸檔),、配方數(shù)據(jù),以及一些其他文件等,,這些存儲卡不能用于實時存儲數(shù)據(jù),,只能通過PLC—存儲卡編程的方法將程序塊/數(shù)據(jù)塊/系統(tǒng)塊的初始設(shè)置存于存儲卡內(nèi),。
存儲卡分為兩種,根據(jù)大小共有三個型號,。
32K存儲卡:僅用于儲存和傳遞程序,、數(shù)據(jù)塊和強制值,。32K存儲卡只可以用于向新版(23版)CPU傳遞程序,新版CPU不能向32K存儲卡中寫入任何數(shù)據(jù),。而且32K存儲卡不支持存儲程序以外的其他功能。訂貨號:6ES7 291-8GE20-0XA0,。
64K/256K存儲卡:可用于新版CPU(23版)保存程序,、數(shù)據(jù)塊和強制值,、配方,、數(shù)據(jù)記錄和其他文件(如項目文件、圖片等),。64K/256K新存儲卡只能用于新版CPU(23版),。64K存儲卡訂貨號: 6ES7 291-8GF23-0XA0,;256K存儲卡訂貨號:6ES7 291-8GH23-0XA0。
為了把存儲卡中的程序送到CPU中,,必須先插入存儲卡,然后給CPU上電,,程序和數(shù)據(jù)將自動復(fù)制到RAM及EEPROM中,。
存儲卡的使用完整限制條件,請參考《S7-200系統(tǒng)手冊》附錄A 技術(shù)規(guī)范—可選卡件一節(jié),。
S7-200的外部存儲卡有哪些功能?
459464
問題3:S7-200 CPU內(nèi)的程序是否具有掉電保持特性,?
回答:S7-200 CPU內(nèi)的程序塊下載時,會同時下載到EEPROM中,,也就是說程序下載后,,將保持。同樣,,系統(tǒng)塊和數(shù)據(jù)塊下載時,也會同時下載到EEPROM中,。
問題4:S7-200 CPU內(nèi)部的數(shù)據(jù)的掉電保持特性,?
回答:S7-200系統(tǒng)手冊第四章——“PLC基本概念”一章中“理解S7--200如何保存和存儲數(shù)據(jù)”一節(jié)詳細介紹了S7-200 CPU內(nèi)數(shù)據(jù)的掉電保持特性,,建議用戶仔細閱讀。
S7-200 CPU內(nèi)的數(shù)據(jù)分為RAM區(qū)和EEPROM區(qū),。
其中,,RAM區(qū)數(shù)據(jù)需要CPU內(nèi)置的超級電容或者外插電池卡才能實現(xiàn)掉電保持特性。
對于CPU221和CPU222的內(nèi)置超級電容,,能提供典型值約50小時的數(shù)據(jù)保持,。
對于CPU224,CPU224XP,,CPU224XPsi和CPU226的內(nèi)置超級電容,,能提供典型值約100小時的數(shù)據(jù)保持,。
超級電容需要在CPU上電時充電。為達到上述指標的數(shù)據(jù)保持時間,,需要連續(xù)充電至少24小時。
當(dāng)該時間不夠時,,可以購買電池卡,以獲得更長時間的數(shù)據(jù)保持時間,。
EEPROM區(qū)能實現(xiàn)數(shù)據(jù)保持,不依靠超級電容或者電池就可以保持數(shù)據(jù),。
問題5:S7-200 CPU內(nèi)部數(shù)據(jù)的工作順序,?
回答:S7-200 CPU一上電后,CPU先去檢查RAM區(qū)域中的數(shù)據(jù),,如果在超級電容或者電池有電的情況下,數(shù)據(jù)并未丟失,,則使用該RAM區(qū)的數(shù)據(jù),;如果超級電容或者電池沒電了,,導(dǎo)致數(shù)據(jù)丟失,則CPU去讀EEPROM中相應(yīng)的區(qū)域(包含數(shù)據(jù)塊中的數(shù)據(jù)定義內(nèi)容),,如果在EEPROM中存有保持的數(shù)據(jù),,則CPU將EEPROM中的數(shù)據(jù)寫回到RAM區(qū)中,,再進行下面的工作。
如果EEPROM中也沒有對應(yīng)存儲區(qū)的數(shù)據(jù)了,,則該存儲區(qū)的數(shù)據(jù)將變成0,。
問題6:S7-200 CPU電池卡的使用注意事項,?
回答:新版S7-200 CPU電池卡有兩種型號,。
對于CPU221和CPU222,由于其中沒有實時時鐘,,則對應(yīng)的為時鐘電池卡,訂貨號為:6ES7297--1AA23--0XA0,。
對于CPU224,,CPU224XP,,CPU224XPsi和CPU226,電池卡僅提供電池功能,,訂貨號為:6ES7 291--8BA20--0XA0,,該款電池卡型號又叫做BC293,。
電池卡的壽命典型值約為200天,當(dāng)插上電池卡后,,如果CPU處于工作狀態(tài)或者超級電容有電的情況下,,并不消耗電池卡的電量,。當(dāng)電池卡的電量消耗完畢之后,該電池卡就報廢了,。
S7-200電池卡不能充電,,使用完畢就不能再用了,,只能購買新的電池卡了。
S7-200沒有檢測電池卡內(nèi)剩余電量的狀態(tài)位和這種功能,。
新版S7-200 CPU電池卡不能用于老CPU,,即訂貨號為6ES7xxx-xxx21-0XB0和6ES7xxx-xxx22-0XB0以及更老版本的CPU,。
西門子長春市代理商
圖1
以上為兩種電池卡以及所在插槽位置。
電池卡的使用完整限制條件,,請參考《S7-200系統(tǒng)手冊》附錄A 技術(shù)規(guī)范—可選卡件一節(jié),。
問題7:S7-200 CPU內(nèi)EEPROM的使用方法,?
回答:EEPROM的寫入分為如下幾種情況:
1、MB0—MB13的設(shè)置,,只需要在系統(tǒng)塊—斷電數(shù)據(jù)保持中設(shè)置即可,。
默認情況下,系統(tǒng)塊設(shè)置如下圖藍框中所示,,即MB14—MB31,,這些區(qū)域沒有對應(yīng)的EEPROM區(qū)域,,無須考慮EEPROM寫入次數(shù)限制。
圖2
MB0—MB13如果在系統(tǒng)塊中設(shè)置成掉電保持區(qū)域,,如圖2紅框中所示,,并將系統(tǒng)塊下載到CPU之后,則這14個字節(jié)的數(shù)據(jù)在掉電的瞬間會將數(shù)值寫入EEPROM中,,如果掉電時間超過超級電容和電池的保持時間之后,再上電時,,CPU會將EEPROM中存儲的數(shù)據(jù)數(shù)值寫回到RAM中對應(yīng)的存儲區(qū),實現(xiàn)保持數(shù)據(jù)的目的,。
注意:實現(xiàn)該功能一定要將修改過的系統(tǒng)塊下載到CPU中。
2,、數(shù)據(jù)塊中定義的數(shù)據(jù),,如圖3所示,,當(dāng)下載數(shù)據(jù)塊的時候,同時會將定義的數(shù)據(jù)下載到EEPROM中,,這樣,,當(dāng)?shù)綦姇r間超過超級電容和電池的保持時間之后,再上電時,,CPU會將EEPROM中存儲的數(shù)據(jù)塊中定義的數(shù)據(jù)數(shù)值寫回到RAM中對應(yīng)的存儲區(qū),實現(xiàn)保持數(shù)據(jù)的目的,。也就是恢復(fù)成數(shù)據(jù)的初始設(shè)置值,。
注意:實現(xiàn)該功能一定要將定義好數(shù)據(jù)的數(shù)據(jù)塊下載到CPU中,。
圖3
3、使用SMB31和SMW32控制字來實現(xiàn)將V區(qū)的數(shù)據(jù)存到EEPROM中
特殊存儲器字節(jié)31 (SMB31)命令S7-200將V存儲區(qū)中的某個值復(fù)制到存儲器的V存儲區(qū),,置位SM31.7提供了初始化存儲操作的命令,。特殊存儲器字32 (SMW32)中存儲所要復(fù)制數(shù)據(jù)的地址,。如圖4為S7-200系統(tǒng)手冊內(nèi)關(guān)于SMB31和SMW32的使用說明。
圖4
采用下列步驟來保存或者寫入V存儲區(qū)中的一個特定數(shù)值:
1. 將要保存的V存儲器的地址裝載到SMW32中,。
2. 將數(shù)據(jù)長度裝載入SM31.0和SM31.1,。具體含義如圖4所示,。
3. 將SM31.7置為1。
圖5
注意:如果在數(shù)據(jù)塊中定義了某地址的數(shù)據(jù),,而又使用這種辦法存儲同樣地址的數(shù)據(jù),,則當(dāng)CPU內(nèi)超級電容或電池沒電時,,CPU再上電時將采用SMB31和SMW32存儲的數(shù)據(jù)。
問題8:EEPROM寫入次數(shù)的統(tǒng)計,?
回答:每次下載程序塊/數(shù)據(jù)塊/系統(tǒng)塊或者執(zhí)行一次SMB31.7置位的操作都算作對EEPROM的一次寫操作,,所以請注意在程序中一定不要每周期都調(diào)用SMB31/SMW32用于將數(shù)據(jù)寫入EEPROM內(nèi),,否則CPU將很快報廢。
問題9:不使用數(shù)據(jù)塊的方法,,如何在程序中實現(xiàn)不止一個V區(qū)數(shù)據(jù)的存儲,?
回答:由于SMB31/SMW32一次多只能送入一個V區(qū)雙字給EEPROM區(qū)域,,因而當(dāng)有超過一個雙字的數(shù)據(jù)需要送入EEPROM中時,需要程序配合實現(xiàn),。具體操作方法可參照如下的例子,,即使用SMB31/SMW32送完一個數(shù)據(jù)(字節(jié)/字/雙字)之后,通過一個標志位(如M0.0)來觸發(fā)下一個SMB31/SMW32操作,,之后需要將上一個標志位清零,以用于下一次的存儲數(shù)據(jù)的操作。
由于SM31.7在每次操作結(jié)束之后都自動復(fù)位,,因而不能使用它作為第二次觸發(fā)操作的條件。
以上程序僅供參考,。
或者可以參考如下FAQ,,多次調(diào)用指令庫用以存儲多個V區(qū)變量到EEPROM存儲區(qū)中:
如何在 CPU 內(nèi)部 EEPROM 存儲空間中保存變量區(qū)域,?
17471561
問題10:定時器和計數(shù)器以及MB14-MB31的掉電保持性能?
回答:計數(shù)器和TONR型的定時器(T0-T31,,T64-T95)能夠?qū)崿F(xiàn)掉電保持,。這些區(qū)域只能由超級電容和電池來進行數(shù)據(jù)的掉電保持,他們并沒有對應(yīng)的EEPROM保持存儲區(qū),。當(dāng)超過超級電容和電池供電的時間之后,這些計數(shù)器和TONR定時器的數(shù)據(jù)全部清零,。
TON和TOF型的定時器(T32-T63,,T96-T255)沒有掉電保持數(shù)據(jù)的功能,。請不要在系統(tǒng)塊中設(shè)置這些區(qū)域為掉電保持,如圖6所示為錯誤做法:
圖6
按上述做法設(shè)置之后,,下載系統(tǒng)塊時會導(dǎo)致如下錯誤發(fā)生:
圖7
所以請不要將T32-T63,,T96-T255的定時器設(shè)為掉電保持區(qū)域,。
問題11:CPU內(nèi)具備斷電保持性的數(shù)據(jù)區(qū)為何會丟失,?
以下情況會導(dǎo)致CPU內(nèi)數(shù)據(jù)清零:
1. 沒有插入電池卡的CPU斷電時間過長,內(nèi)部超級電容放電完畢,,TONR區(qū)/C區(qū)/MB14-MB31區(qū)數(shù)據(jù)丟失,,V區(qū)和MB0-MB13區(qū)的對應(yīng)EEPROM內(nèi)沒有數(shù)據(jù)導(dǎo)致數(shù)據(jù)丟失,,
2. 電池卡使用時間過長,使之沒電了,, TONR區(qū)/C區(qū)/MB14-MB31區(qū)數(shù)據(jù)丟失,,V區(qū)和MB0-MB13區(qū)的對應(yīng)EEPROM內(nèi)沒有數(shù)據(jù)導(dǎo)致數(shù)據(jù)丟失,
3. 插在CPU上的存儲卡內(nèi)程序/數(shù)據(jù)與CPU內(nèi)部RAM中運行的程序/數(shù)據(jù)不符,,一上電時會導(dǎo)致原有數(shù)據(jù)/程序的丟失。
4. CPU損壞,。
問題:如何計算當(dāng)前程序所需的Local Data大小并合理設(shè)置S7 400 CPU屬性中的Memory選項卡中的Local Data,,S7 400 CPU中的Local data設(shè)置不當(dāng)會導(dǎo)致什么問題,?
回答:Local data顧名思義為本地數(shù)據(jù),在西門子控制器中有一部分內(nèi)存空間被設(shè)置為L區(qū)間,,它被用于控制器在運行程序時存儲臨時數(shù)據(jù),。由于編寫FB/FC程序的需要和OB中調(diào)用功能塊結(jié)構(gòu)的不同,,不同的OB由于調(diào)用不同的FB/FC,因此所需的Local data的大小各不相同(被調(diào)用的FB/FC將占用當(dāng)前調(diào)用他的OB塊的Local Data資源),。在控制器硬件組態(tài)中的CPU屬性設(shè)置中,,Memory選項卡用于設(shè)置Local data的分配,。如果相應(yīng)OB塊實際運行所需的Local data大于硬件組態(tài)中所設(shè)置的Local Data大小,那么相應(yīng)的程序?qū)o法運行,,CPU將報告INTF錯誤,,甚至更為嚴重的情況下CPU可能會停止運行。但如果盲目將Local Data的分配設(shè)置過大,,將會浪費一部分寶貴的CPU內(nèi)存空間。
S7 300CPU中的Local data不可修改,,每個優(yōu)先級固定設(shè)置為256 bytes,S7 400的Local data則可以人為修改,。由此可以看出正確設(shè)置S7400 CPU的Local Data的大小非常重要,。在控制器硬件組態(tài)中CPU屬性? Memory選項卡的Local Data區(qū)域用于設(shè)置基于優(yōu)先級的Local Data(如下圖所示):
Pic1: Local Data的分配
在PCS7組態(tài)的項目中,,在編譯CFC程序后,系統(tǒng)將會自動計算各OB塊所需的Local Data大小,,可以通過交叉索引(Chart reference data ? Local data,,如下圖所示)查詢到。
Pic2: Chart reference data ? Local data
而普通的由用戶采用Step7編程方式編寫的程序,,程序功能塊及OB塊各自的調(diào)用結(jié)構(gòu)由用戶自行控制,需要在編寫完整個程序之后自行計算,。
在手動計算Local Data時,,需要獲取如下信息:
1. 各OB塊,、FB塊、FC塊各自獨立運行時所需的Local Data大小
可以通過如下方式查詢到:在Block文件夾中選擇相應(yīng)功能塊,,右鍵 屬性? General - Part2中即可查看到,,如下圖所示:
Pic3: 功能塊所需的Local Data
注:嵌套調(diào)用時,,上一級功能塊將不會計算其嵌套調(diào)用的FB/FC所需的Local data大小,;在上圖中將不會累加嵌套功能塊所需的Local data大?。?/p>
2. 整個程序的調(diào)用結(jié)構(gòu)(Call structure)
由于功能塊不會計算其嵌套調(diào)用的功能塊所需到Local data大小,,因此為了后計算整個OB所需到Local Data,必須了解整個程序的調(diào)用結(jié)構(gòu),。打開任何一個功能塊,點擊左側(cè)的Call Structure即可查詢到,,如下圖所示,;
Pic4: 程序調(diào)用結(jié)構(gòu)
3. 當(dāng)前程序下所使用的所有OB的優(yōu)先級
由于CPU屬性設(shè)置中的Local Data分配基于優(yōu)先級進行設(shè)置,,因此需要查看所有當(dāng)前程序使用的OB塊的中斷優(yōu)先級,打開硬件組態(tài)中CPU屬性查看,,如下圖所示;
Pic5: 查看OB的優(yōu)先級
獲得所有上述信息后,,即可計算當(dāng)前程序所需的Local data大小,。假設(shè)當(dāng)前項目下使用的功能塊及OB塊上述相關(guān)信息如下表所示:
OB/FB/FC | Priority 優(yōu)先級 | 所需Local Data(Bytes) |
FB1 | X | 100 |
FC1 | X | 400 |
OB1 | 1 | 26 |
OB35 | 12 | 26 |
OB121 | X | 20 |
OB122 | X | 20 |
OB的調(diào)用關(guān)系如上圖Pic4所示,。根據(jù)調(diào)用結(jié)構(gòu)計算,單獨運行各OB塊時所需的Local data如下:
OB1: OB1 + Max(Sum(FB1,FC1), FC1) =26+Max(Sum(100,400), 400)=526
OB35: OB35 + Sum(FB1,FC1) =26+Sum(100,400)=526
OB121: OB121=20
OB122: OB122=20
終CPU屬性中Local data的設(shè)置如下:
優(yōu)先級 1 所需Local Data大小至少為526 + 20 + 20 = 566 bytes,;
優(yōu)先級12所需的Local Data大小至少為526 + 20 + 20 = 566 bytes,;
注:為什么上述優(yōu)先級1和12中需要加入 兩個20呢,,因為程序運行的任何位置都有可能會執(zhí)行OB121、OB122,,所以需要加上OB121和OB122所需的本地數(shù)據(jù),。PCS7中(Pic2所示)進行各優(yōu)先級所需Local data大小計算時已經(jīng)自動加入了這部分的大小。
具體的計算法則可以歸納為一下幾點: