產(chǎn)品簡(jiǎn)介
西門(mén)子S7-1200PLC系統(tǒng)有五種不同模塊,分別為 CPU 1211C、CPU 1212C 、 CPU 1214C、CPU1215C和CPU1217C。其中的每一種模塊都可以進(jìn)行擴(kuò)展,以*您的系統(tǒng)需要??稍谌魏?CPU 的前方加入一個(gè)信號(hào)板,輕松擴(kuò)展數(shù)字或模擬量 I/O,同時(shí)不影響控制器的實(shí)際大小。
詳細(xì)介紹
吉林西門(mén)子S7-1200PLC模塊一級(jí)代理
采用以太網(wǎng)編程訪問(wèn)plc,其實(shí)又可以分為兩種:
一種是socket接口,需要在plc里面編程進(jìn)行收/發(fā),大概是fc5/fc6吧,印象不深了,當(dāng)然plc里面要定義一個(gè)connection,填好地址、端口號(hào)之類(lèi)的信息,這個(gè)對(duì)于熟悉西門(mén)子工業(yè)通訊的人是很easy的事情。Pc側(cè)采用socket接口編程,較簡(jiǎn)單的就是vb里面的wisock控件,當(dāng)然這掩蓋了很多細(xì)節(jié)。Socket編程本來(lái)就是一門(mén)藝術(shù),講究說(shuō)學(xué)逗唱:)
這個(gè)方法的優(yōu)點(diǎn)應(yīng)該是pc側(cè)編程稍微簡(jiǎn)單點(diǎn)(相對(duì)于后一種),而且可以不局限于windows平臺(tái),因?yàn)閟ocket接口被諸如unix支持的更好。
第二種是采用西門(mén)子的sapi接口函數(shù),這樣plc里面不需要過(guò)多的編程了,當(dāng)然pc側(cè)的編程難度就比較高了,ms只能用c來(lái)寫(xiě),所以我望而卻步鳥(niǎo)。看過(guò)相關(guān)帖子和論文,有高人在項(xiàng)目里面就這么干的,而且數(shù)據(jù)量很大,看來(lái)高人很多很多啊,向他們致敬!關(guān)于sapi的資料其實(shí)都在simaticnet軟件光盤(pán)里面,有興趣的可以去找來(lái)看看。
西門(mén)子S7-300/400的PLC用戶(hù)程序結(jié)構(gòu)與S7-200有明顯的不同,可以使用線性化結(jié)構(gòu)以及功能調(diào)用式結(jié)構(gòu)與結(jié)構(gòu)化編程。
采用調(diào)用式結(jié)構(gòu)與結(jié)構(gòu)化編程時(shí),程序以組織塊(OB)、程序塊(FC)、功能塊(FB)、系統(tǒng)程序塊( SFC)、系統(tǒng)功能塊(SFB)、數(shù)據(jù)塊(DB)等形式出現(xiàn),其中,組織塊(OB)、程序塊(FC)、功能塊(FB)統(tǒng)稱(chēng)為“邏輯塊(Logic Block)”;系統(tǒng)程序塊(SFC)、系統(tǒng)功能塊(SFB)統(tǒng)稱(chēng)為“系統(tǒng)塊”。
(1)組織塊(OB)
組織塊(Organization Blocks,簡(jiǎn)稱(chēng)OB)提供了PLC內(nèi)部CPU操作系統(tǒng)與用戶(hù)程序間的接口,它是由CPU操作系統(tǒng)直接進(jìn)行調(diào)用的邏輯塊,用來(lái)管理PLC程序中各組成部分的調(diào)用和執(zhí)行中斷。OB決定了PLC用戶(hù)程序的結(jié)構(gòu)與塊的調(diào)用順序,起到了“管理”用戶(hù)程序的作用。
S7-300/400不同的CPU類(lèi)型,可以選擇、支持不同的OB塊,但OB1是所有PLC用戶(hù)程序的循環(huán)控制塊,它是運(yùn)行PLC用戶(hù)程序的前提條件,因此,任何PLC程序、任何CPU都不可以缺少OB1。
OB塊的調(diào)用條件被稱(chēng)為“觸發(fā)事件”,根據(jù)“觸發(fā)事件”的不同,OB塊可以分為若干級(jí)別,各個(gè)級(jí)別有不同的優(yōu)先級(jí),高優(yōu)先級(jí)的OB可以中斷低優(yōu)先級(jí)OB的執(zhí)行。如果需要,S7系列PLC除OB1外,還可以使用多個(gè)OB塊。
(2)程序塊(FC)
程序塊(Function,簡(jiǎn)稱(chēng)FC)是由用戶(hù)編寫(xiě)的、不需要專(zhuān)門(mén)數(shù)據(jù)塊的常用邏輯塊。
FC塊在程序中一般不可以重復(fù)調(diào)用,在大多數(shù)場(chǎng)合,F(xiàn)C塊應(yīng)直接使用PLC的“地址”或“符號(hào)地址”進(jìn)行編程,但根據(jù)需要,可以定義部分程序變量。
與S7-200 -樣,F(xiàn)C塊的“臨時(shí)變量”同樣存儲(chǔ)在局部變量數(shù)據(jù)堆棧(L)中,這一區(qū)域?yàn)槿砍绦驂K所公用,只可以用于FC塊內(nèi)部使用的中間運(yùn)算結(jié)果寄存(這些中間運(yùn)算結(jié)果不可以用于FC塊外部);程序塊執(zhí)行完成后,局部變量數(shù)據(jù)堆棧內(nèi)的數(shù)據(jù)將被其他塊所需要的內(nèi)容所替代。如果需要保存可以用于其他邏輯塊的狀態(tài),應(yīng)使用PLC的內(nèi)部標(biāo)志寄存器M或使用“數(shù)據(jù)塊DB”。
在程序塊FC中,有部分為PLC生產(chǎn)廠家所提供的、集成在S7 CPU操作系統(tǒng)中的邏輯塊,稱(chēng)為系統(tǒng)程序塊(System Function,簡(jiǎn)稱(chēng)SFC)。系統(tǒng)程序塊SFC屬于PLC內(nèi)部操作系統(tǒng)的一部分,用戶(hù)不需要編寫(xiě),也不可以對(duì)其進(jìn)行編輯,但可以根據(jù)需要直接調(diào)用。
(3)功能塊(FB)
功能塊(Function Blocks,簡(jiǎn)稱(chēng)FB塊)是由用戶(hù)編寫(xiě)的、需要數(shù)據(jù)塊(Instance Data Blocks,稱(chēng)為“即時(shí)數(shù)據(jù)塊”或“背景數(shù)據(jù)塊”,簡(jiǎn)稱(chēng)DI)支持的常用邏輯塊。
FB塊與FC塊的作用基本相同,但FB中除可以使用“地址”或“符號(hào)地址”進(jìn)行編程外,在結(jié)構(gòu)化編程時(shí)必須使用“程序變量”進(jìn)行編程,因此,F(xiàn)B必須配套的、獨(dú)立的數(shù)據(jù)存儲(chǔ)區(qū)域——“即時(shí)數(shù)據(jù)塊DI”。DI -方面可以為調(diào)用FB提供執(zhí)行程序所需要的“程序變量”賦值與其他數(shù)據(jù),另一方面,功能塊FB也能通過(guò)DI給調(diào)用它的邏輯塊返回所需要的數(shù)據(jù)。
與功能調(diào)用塊FC -樣,功能塊FB中也有部分為PLC生產(chǎn)廠家所提供的、集成在S7 CPU操作系統(tǒng)中的功能塊,稱(chēng)為系統(tǒng)功能塊(System Function Blocks,簡(jiǎn)稱(chēng)SFB)。系統(tǒng)功能塊SFB同樣屬于PLC內(nèi)部操作系統(tǒng)的一部分,用戶(hù)不需要編寫(xiě),也不可以對(duì)其進(jìn)行編輯,但可以根據(jù)需要直接調(diào)用。
(4)數(shù)據(jù)塊(DB)
數(shù)據(jù)塊(Data Blocks,簡(jiǎn)稱(chēng)DB)是用來(lái)存放執(zhí)行用戶(hù)程序時(shí)所需的數(shù)據(jù)與存儲(chǔ)程序執(zhí)行結(jié)果的數(shù)據(jù)存儲(chǔ)區(qū),其作用與標(biāo)志寄存器類(lèi)似,但數(shù)量更多。數(shù)據(jù)塊DB按不同的用途可以分為即時(shí)數(shù)據(jù)塊(Instance DataBlocks,又稱(chēng)背景數(shù)據(jù)塊,簡(jiǎn)稱(chēng)DI)和通用數(shù)據(jù)塊(Data Blocks,又稱(chēng)共享數(shù)據(jù)塊,簡(jiǎn)稱(chēng)DB)兩類(lèi)。
即時(shí)數(shù)據(jù)塊( DI)用于傳遞功能塊的參數(shù),只能被的功能塊FB訪問(wèn)。調(diào)用功能塊FB時(shí),必須同時(shí)用于該功能塊的即時(shí)數(shù)據(jù)塊DI,即時(shí)數(shù)據(jù)塊內(nèi)的數(shù)據(jù)可以自動(dòng)生成,它們可以是FB變量聲明表中的數(shù)據(jù)(不含臨時(shí)變量)。
通用數(shù)據(jù)塊(DB)用于存儲(chǔ)PLC的全局?jǐn)?shù)據(jù),所有的FB、FC或OB都可以對(duì)通用數(shù)據(jù)塊進(jìn)行讀寫(xiě)操作,因此,又被稱(chēng)為共享數(shù)據(jù)塊。通用數(shù)據(jù)塊內(nèi)的數(shù)據(jù)不會(huì)因用戶(hù)程序的結(jié)束而刪除。
西門(mén)子安全故障型CPU317F程序和硬件組態(tài)下載到什么地方?每次都是直接下到MMC卡里嗎?答:1、程序都是下載到MMC中的。
2、在“安全程序”(SafetyProgram)對(duì)話(huà)框中將整個(gè)安全程序下載到F-CPU的步驟:
1)選擇正確的F-CPU或?yàn)槠涞腟7程序。
2)在SIMATIC管理器中,選擇選項(xiàng)(Options)>編輯安全程序(EditSafetyProgram)菜單命令。將顯示“安全程序”(SafetyProgram)對(duì)話(huà)框。
3)激活“下載”(Download)按鈕。標(biāo)識(shí)所有屬于安全程序的具有F屬性的F塊,并將其下載到F-CPU。系統(tǒng)將顯示一個(gè)提示,為您提供除下載除安全程序外,用于下載標(biāo)準(zhǔn)用戶(hù)程序的選項(xiàng)(如果已經(jīng)啟用此提示)。如果安全程序已被修改或不*,則系統(tǒng)將通知您選擇生成(編譯)*的安全程序。
4)確認(rèn)指示F-CPU將停止的提示。
“變量”與“參數(shù)”是西門(mén)子PLC中常用的名詞,在不同的使用場(chǎng)合有不同的含義。為了防止概念的混淆,根據(jù)不同的用途,將S7中的變量分為“程序變量”與“診斷變量”兩大類(lèi):將參數(shù)分為“程序參數(shù)”與“配置參數(shù)(組態(tài)參數(shù))”兩大類(lèi)。
“診斷變量”用于PLC調(diào)試階段,“變量表調(diào)試”所指的就是“診斷變量”。診斷變量包括的范圍很廣,凡是PLC中可以賦值或進(jìn)行顯示的信號(hào)與數(shù)據(jù)統(tǒng)稱(chēng)為診斷變量(Variable),它包括輸入、輸出、內(nèi)部標(biāo)志寄存器、定時(shí)器、計(jì)數(shù)器、數(shù)據(jù)塊中的內(nèi)容等。
“程序變量”與“程序參數(shù)”是在PLC程序設(shè)計(jì)階段需要使用的“變量”與“參數(shù)”。因此,除非特別說(shuō)明,本章所述的“變量”均是指“程序變量”,“參數(shù)”均是指“程序參數(shù)”;而在調(diào)試部分、硬件組態(tài)(配置)部分所述的“變量”均是指“診斷變量”,“參數(shù)”均是指“配置參數(shù)”。
西門(mén)子S7系列PLC可以使用的”程序變量”包括程序參數(shù)、局部變量(又稱(chēng)臨時(shí)變量Temporary)、靜態(tài)變量(Static)3種基本類(lèi)型,并且有規(guī)定的使用范圍。
一、程序文件操作
1、新建
建立一個(gè)程序文件,可用“文件”菜單中的“新建”命令,也可用工具條中的按鈕來(lái)完成。如圖所示為一個(gè)新建程序文件的指令樹(shù),系統(tǒng)默認(rèn)初始設(shè)置如下:
新建的程序文件以“項(xiàng)目1(CPU221)”命名,括號(hào)內(nèi)為系統(tǒng)默認(rèn)PLC的型號(hào)。項(xiàng)目包括7個(gè)相關(guān)的塊。其中程序塊中有1個(gè)主程序,1個(gè)子程序SBR-0和1個(gè)中斷程序INT-0。
用戶(hù)可以根據(jù)實(shí)際編程需要做以下工作:
◆確定主機(jī)型號(hào)
首先要根據(jù)實(shí)際應(yīng)用情況選擇PLC型號(hào)。右擊“項(xiàng)目1(CPU221)”圖標(biāo),在彈出的按鈕中單擊“類(lèi)型”,或用“PLC”菜單中的“類(lèi)型”命令。然后在彈出的對(duì)話(huà)框中選擇所用的PLC型號(hào)。
吉林西門(mén)子S7-1200PLC模塊一級(jí)代理