咸陽西門子PLC代理商
- 公司名稱 西門子CPU模塊
- 品牌 Siemens/西門子
- 型號
- 產(chǎn)地
- 廠商性質(zhì) 經(jīng)銷商
- 更新時間 2023/7/28 17:10:02
- 訪問次數(shù) 364
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
產(chǎn)地類別 | 進口 |
---|
咸陽西門子PLC代理商
數(shù)據(jù)塊定義在S7 CPU存儲器中,用戶可在存儲器中建立一個或多個數(shù)據(jù)塊。每個數(shù)據(jù)塊可大可小,但CPU對數(shù)據(jù)塊數(shù)量及數(shù)據(jù)總量有限制,如對于CPU314,用作數(shù)據(jù)塊的存儲器多為8 KB(8192 B),用戶定義的數(shù)據(jù)總量不能超出這個限制。對數(shù)據(jù)塊必須遵循先定義后使用的原則,否則,將造成系統(tǒng)錯誤。
1. 定義數(shù)據(jù)塊
在編程階段和運行程序中都能定義數(shù)據(jù)塊。大多數(shù)數(shù)據(jù)塊是在編程階段用STEP 7開發(fā)軟件包定義的,定義內(nèi)容包括數(shù)據(jù)塊號及塊中的變量(包括變量符號名、數(shù)據(jù)類型以及初始值等),定義完成后,數(shù)據(jù)塊中變量的順序及類型決定了數(shù)據(jù)塊的數(shù)據(jù)結(jié)構(gòu),變量的數(shù)量決定了數(shù)據(jù)塊的大小。數(shù)據(jù)塊在使用前,必須作為用戶程序的一部分下載到CPU中。
如果確實需要,還可以在程序運行中動態(tài)定義一個數(shù)據(jù)塊。動態(tài)定義時,數(shù)據(jù)塊號是自動產(chǎn)生的,數(shù)據(jù)塊在存儲器中的位置是動態(tài)分配的。由于要定義的數(shù)據(jù)塊有可能大于CPU存儲器(用于數(shù)據(jù)塊的部分)的剩余空間,因此動態(tài)定義過程有可能失敗
概述
S7-200系列PLC適用于各行各業(yè),各種場合中的檢測、監(jiān)測及控制的自動化。S7-200系列的強大功能使其無論在獨立運行中,或相連成網(wǎng)絡(luò)皆能實現(xiàn)復(fù)雜控制功能。因此S7-200系列具有*的性能/價格比。
拿三菱比較有優(yōu)勢的小型機FX系列和西門子S7-200系列比
1、 三菱的編程軟件從早期的FXGPWIN到近期的GX8.0(我所知道的),和所有的日系品牌一樣,該軟件的編程思路是自上而下的單一縱向結(jié)構(gòu),而西門 子的MicroWIN則是縱向和橫向兼?zhèn)涞慕Y(jié)構(gòu),而且子程序支持局部變量,相同的功能只需要編一次程序即可,大大減少了開發(fā)難度和時間
2、S7-200一直以來支持強大的浮點運算,編程軟件直接支持小數(shù)點輸入輸出,而三菱直至近年推出的FX3U系列才有此種功能,以前的FX2N系列的浮點功能都是假的
3、S7-200的模擬量輸入輸出程序非常簡單方便,AD、DA值可以不需編程直接存取的,三菱的FX2N及其以前的系列都需要非常繁瑣的FROM TO指令。FX3U如今倒支持此功能了,但足足晚了五年甚至更多
4、CPU226和CPU224XP,標(biāo)準(zhǔn)配置2個485口即PPI口,通訊速度187.5K,三菱FX3U之前的所有系列都是一個可憐的422口,而且速度是9.6K。如果需要連個智能儀表什么的則必須另購FX2N0-485BD等特殊模塊
5、CPU226的程序容量20K,數(shù)據(jù)容量14K,F(xiàn)X2N總共才8K.后來的3U倒是有所改進 但三菱的FX2N系列有兩個優(yōu)勢,一是高速計數(shù)器指令比S7-200方便 二是422口比西門子的PPI口皮實(因為200系列的PPI口是非光電隔離的,非規(guī)范操作和仿制的編程電纜可能會導(dǎo)致串口損壞) 西門子近推出的S7-1200系列直接支持以太網(wǎng)接口,而且由于集成了計數(shù)和測量、閉環(huán)控制和運動控制的工藝,因此FX3U再次被西門子遠(yuǎn)遠(yuǎn)超越 以上的比較僅僅是小型機 至于西門子的300和400系列以及更大型的TDC系列,這里就無需多言了,一句話,誰用誰知道
西門子的PCS7軟件是博大精深的,所有的日系品牌都只能望其項背 學(xué)PLC,三菱是很容易上手的,因為直來直去思路簡單 但從學(xué)習(xí)的角度講,肯定是西門子更好 還是那句話,用了PCS7,才知道日系的軟件是垃圾】
還有西門子PLC的通口有兩個,三菱的有一個,兩個通口可以一個連接下載數(shù)據(jù)線一個連接觸摸屏進行調(diào)試程序,否則你就要拔下觸摸屏數(shù)據(jù)線再連接觸摸屏數(shù)據(jù)線來回調(diào)整程序非常麻煩
西門子plc s7-200調(diào)試的步驟是什么? 西門子plc檢查接線
用萬用表諸根檢查面板上按鈕、指示燈、轉(zhuǎn)換開關(guān)到端子排的接線;端子排到plc輸入輸出端子的接線;電源到plc、觸摸屏的接線。plc之間、plc和觸摸屏之間的通訊線纜制作和插接。
確保做到以下幾點:
1. 所有接線牢固、無松動,無短路:所有電源正(l)接點不得與電源負(fù)(n)相導(dǎo)通,無斷路:所有同一回路中不經(jīng)過觸點和用電器的的線接點應(yīng)導(dǎo)通,線號正確,標(biāo)識便于理解。
2. 電源正負(fù)(l和n)接線正確、無顛倒,所有電源電壓應(yīng)符合用電器電壓允許范圍。
3. 傳感器、用電器回路接線正確:保證回路由電源正(l)到觸點或io接口再到用電器或傳感器(包括端子排預(yù)留接口)再回到電源負(fù)(n)。
4. 各類傳感器或用電器接線方式正確:兩線制、四線制電流信號傳感器、熱電阻傳感器,繼電器線圈和觸點等接線符合接線標(biāo)準(zhǔn)和電氣原理。
發(fā)現(xiàn)接線有不當(dāng)或錯誤之處,立即糾正。
西門子plc系統(tǒng)上電
依次進行一下檢查,如發(fā)現(xiàn)問題,馬上查找原因解決。
1. 測量電源輸入電壓在允許范圍內(nèi)后,系統(tǒng)上電。
2. 測量開關(guān)電源輸出電壓是否正常。
3. 觀察plc電源指示燈是否正常,觸摸屏是否正常開機并顯示。
4. 按下按鈕、轉(zhuǎn)動轉(zhuǎn)換開關(guān)、短接相應(yīng)觸點或端子排開關(guān)量輸入預(yù)留接口,觀察plc模塊的di對應(yīng)指示燈是否點亮,亮度是否正常,有無閃爍。
5. 短接plc模塊do輸出接口和電源漏極或源極模擬do輸出,觀察對應(yīng)繼電器是否吸合,吸合是否可靠。
6. 將端子排模擬量輸入接口接入信號源(四線制電流)或測試用傳感器(兩線制電流、熱電阻等),用萬用表測量信號是否正常,是否符合信號范圍,線性變化是否正常。
西門子仿真測試程序和組態(tài)畫面
將編寫好的plc控制程序和觸摸屏及上位機組態(tài)畫面用仿真軟件和編寫的模擬運行程序進行仿真測試。確保做到:
1. plc程序io變量與實際plc模塊地址對應(yīng)正確。
2. plc程序各子程序功能可行且可靠,模擬能考慮到的各種現(xiàn)場情況并測試它們對程序運行產(chǎn)生的影響,修改完善子程序功能。模擬并排查程序運行一段時間可能產(chǎn)生的問題(如數(shù)據(jù)溢出,尋址錯誤,死循環(huán)等)。盡量使子程序代碼健壯,重用性強,同時優(yōu)化程序執(zhí)行時間。
3. 按照現(xiàn)場可能遇到的各種情況模擬測試整個控制程序的運行,包括手動單獨控制、手動一鍵控制、自動控制等,確保程序運行可靠、穩(wěn)定。
4. 觸摸屏和上位機組態(tài)畫面建立的外部變量地址與plc程序中的相應(yīng)變量對應(yīng)正確,將組態(tài)項目集成到plc項目中,這樣plc的變量可以導(dǎo)入到組態(tài)項目中,避免重復(fù)工作,減少錯誤(不適用于小型觸摸屏)。
5. 結(jié)合plc程序和仿真軟件模擬測試組態(tài)畫面中的動畫效果和數(shù)值、文字顯示以及各種按鈕、控件的功能。測試報表、趨勢、報警信息等功能是否正常。
西門子下載程序和組態(tài)畫面并調(diào)試通訊
1. 檢查上位機與plc的通訊設(shè)置是否正確,向plc下載程序。檢查plc之間的通訊設(shè)置和plc模塊的地址撥碼開關(guān)設(shè)置和dp插頭上拉電阻設(shè)置,觀察plc通訊指示燈是否正常。通過上位機監(jiān)控測試plc之間通訊是否成功。
2.訪問數(shù)據(jù)塊
在用戶程序中可能定義了許多數(shù)據(jù)塊,而每個數(shù)據(jù)塊中又有許多不同類型的數(shù)據(jù),因此,訪問時需要明確數(shù)據(jù)塊號和數(shù)據(jù)塊中的數(shù)據(jù)類型與位置。根據(jù)明確數(shù)據(jù)塊號的不同方法,可以用多種方法訪問數(shù)據(jù)塊中的數(shù)據(jù)。
直接在訪問指令中寫明數(shù)據(jù)塊號,如:
L DB5.DBW10
T DB10.DBW20
L Motor_1.Speed 符號地址
另一種方法是“先打開后訪問”。在訪問某數(shù)據(jù)塊中的數(shù)據(jù)前,先“打開”這個數(shù)據(jù)塊,也就是將數(shù)據(jù)塊號(數(shù)據(jù)塊的起始地址)裝入數(shù)據(jù)塊寄存器。這樣,存放在數(shù)據(jù)塊中的數(shù)據(jù)就可利用數(shù)據(jù)塊起始地址加偏移量的方法來訪問。如:
OPN DB5
L DBW10
OPN DB10
T DBW20
在打開一個數(shù)據(jù)塊時,先打開的數(shù)據(jù)塊會自動關(guān)閉(沒有專門的數(shù)據(jù)塊關(guān)閉指令)。由于有兩個數(shù)據(jù)塊寄存器(DB和DI寄存器),因此,多可同時打開兩個數(shù)據(jù)塊。一個作為背景數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲在DI寄存器中;另一個作為共享數(shù)據(jù)塊,數(shù)據(jù)塊的起始地址存儲在DB寄存器中。打開背景數(shù)據(jù)塊,在調(diào)用FB時可以自動實現(xiàn)。由于調(diào)用FB時使用DI寄存器,因此,一般不在FB程序中用OPN DI n指令打開數(shù)據(jù)塊。
3. 背景數(shù)據(jù)塊和共享數(shù)據(jù)塊
背景數(shù)據(jù)塊和共享數(shù)據(jù)塊有不同的用途。任何FB、FC或OB均可讀寫存放在共享數(shù)據(jù)塊中的數(shù)據(jù)。背景數(shù)據(jù)塊是FB運行時的工作存儲區(qū),它存放FB的部分運行變量。調(diào)用FB時,必須一個相關(guān)的背景數(shù)據(jù)塊。作為規(guī)則,只有FB塊才能訪問存放在背景數(shù)據(jù)塊中的數(shù)據(jù)。
一般情況下,每個FB都有一個對應(yīng)的背景數(shù)據(jù)塊,一個FB也可以使用不同的背景數(shù)據(jù)塊。如果幾個FB需要的背景數(shù)據(jù)*相同,為節(jié)省存儲器,則可以定義成一個背景數(shù)據(jù)塊,供它們分別使用。通過多重背景數(shù)據(jù),也可將幾個FB需要的不同的背景數(shù)據(jù)定義在一個背景數(shù)據(jù)塊中,以優(yōu)化數(shù)據(jù)管理。各數(shù)據(jù)塊在CPU的存儲器中是沒有區(qū)別的,只是由于打開方式不同,才在打開時有背景數(shù)據(jù)塊和共享數(shù)據(jù)塊之分。原則上,任何一個數(shù)據(jù)塊都可以當(dāng)作共享數(shù)據(jù)塊或背景數(shù)據(jù)塊使用,實際上,一個數(shù)據(jù)塊由FB當(dāng)作背景數(shù)據(jù)塊使用時,必須與FB的要求格式相符。
數(shù)據(jù)結(jié)構(gòu)
STEP 7數(shù)據(jù)塊中的數(shù)據(jù)結(jié)構(gòu)形式比較豐富,數(shù)據(jù)塊中的數(shù)據(jù)既可以是基本數(shù)據(jù)類型,又可以是復(fù)式數(shù)據(jù)類型。所謂復(fù)式數(shù)據(jù)類型,是指位數(shù)超過32位的數(shù)據(jù)或由其它數(shù)據(jù)類型構(gòu)成的數(shù)據(jù)組?;緮?shù)據(jù)類型在第4章中已有過介紹,本節(jié)專門說明復(fù)式數(shù)據(jù)類型。STEP 7允許4種復(fù)式數(shù)據(jù)類型,如表5.5所示。
名 稱 類 型 說 明
日期-時間 DATE_AND_TIME 長度為8 B(64位)。按BCD碼格式順序存儲以下信息:年(字節(jié)0)、月(字節(jié)1)、日(字節(jié)2)、小時(字節(jié)3)、分(字節(jié)4)、秒(字節(jié)5)、毫秒(字節(jié)6和7的高半字節(jié))、星期(字節(jié)7的低半字節(jié))
字符串 STRING 字符串是一組ASCII碼,一個串內(nèi)可定義多254個字符,占用256 B內(nèi)存。串中每個字符占用1 B,內(nèi)存中頭兩個字節(jié)存儲串的長度信息。*個字節(jié)存放此串的定義長度(默認(rèn)值為254個字符),第二個字節(jié)存放字符串實際長度。例如,String[7]定義長度為7的字符串,占用內(nèi)存9 B(2+7)。若不定義長度,則默認(rèn)為254個字符
數(shù)組 ARRAY 由一種數(shù)據(jù)類型組成的數(shù)據(jù)集合,數(shù)據(jù)類型可以是基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型。通過下標(biāo)訪問數(shù)組中的數(shù)據(jù)??啥x到6維數(shù)組
構(gòu)造 STRUCT 由多種數(shù)據(jù)類型組成的數(shù)據(jù)集合
另一種復(fù)式數(shù)據(jù)類型稱為“用戶數(shù)據(jù)類型(UDT)”,它是利用STEP 7“程序編輯器”產(chǎn)生的,可命名構(gòu)造。將大量數(shù)據(jù)組織到UDT中,在生成數(shù)據(jù)塊或在變量聲明表中聲明變量時將變得更加方便。用戶還可為UDT聲明符號名。
日期-時間數(shù)據(jù)類型的名稱、位數(shù)及格式是由操作系統(tǒng)定義的,用戶不可改變,并且該類型在S7-300中必須用標(biāo)準(zhǔn)功能塊SFC才能訪問。其它復(fù)式數(shù)據(jù)類型則由用戶在邏輯塊變量聲明表或數(shù)據(jù)塊中定義。
1. 數(shù)組
一個數(shù)組將同種數(shù)據(jù)類型組合成整體,但不能建立數(shù)組的數(shù)組。圖5.4表示一個二維 整數(shù)數(shù)組。數(shù)組的符號名是“Op_temps”,用符號名加下標(biāo)可訪問數(shù)組中的數(shù)據(jù)。以圖5.4為例,*個整數(shù)是Op_temps[1,1],第三個為Op_temps[l,3],第四個為Op_temps[2,1],第六個為Op_temps[2,3]。
1) 建立數(shù)組
在數(shù)據(jù)塊或變量聲明表中可定義數(shù)組。在聲明數(shù)組時,首先給數(shù)組命名,接著使用關(guān)鍵字(ARRAY),然后在方括號中給出數(shù)組的大小及維數(shù)??梢远x多達6維的數(shù)組,并用下標(biāo)來標(biāo)識數(shù)組的大小。在方括號中放下標(biāo),各維之間用逗號隔開,每一維的首尾之間用雙點隔開。一個下標(biāo)可以為任何一個整數(shù)值(范圍:-32 768~+32 767),并包括負(fù)數(shù)。如用ARRAY[1‥3, 1‥2, 1‥3, -2‥3, 30‥32, 1‥4]來定義變量Op_temps為6維數(shù)組。該數(shù)組的*個整數(shù)為Op_temps[1, 1, 1, -2, 30, 1];后一個為Op_temps[3, 2, 3, 3, 32, 4]。圖5.5顯示了建立名字為Heat_2×3的二維數(shù)組(與圖5.4中的數(shù)組相似)。
2) 賦初始值
在建立數(shù)組時,STEP 7允許以兩種方法給數(shù)組的元素賦初始值。對圖5.5中的數(shù)組,可以為6個元素賦初始值:17,23,-45,556,3342,0;若初始值中有順序相同的元素,寫法可以簡化,如要數(shù)組的頭兩個元素設(shè)特定數(shù)值,其余4個為10,則可簡寫為17,23,4(10),其中4為重復(fù)系數(shù),10為要重復(fù)的數(shù)值。
3) 訪問數(shù)組
利用數(shù)組中元素的下標(biāo)可以訪問數(shù)組數(shù)據(jù),這時數(shù)據(jù)塊、數(shù)組符號名及下標(biāo)一起 使用。如圖5.5中聲明的數(shù)組在DB20(符號名:MOTOR)的*個字節(jié)處開始,用以下地址訪問數(shù)組中的第二個元素:
MOTOR. Heat_2×3[1,2]
4) 利用數(shù)組傳遞參數(shù)
將數(shù)組作為參數(shù)傳遞時,要求形式參數(shù)和實際參數(shù)必須有同樣的數(shù)據(jù)組織結(jié)構(gòu)、相同 的數(shù)據(jù)類型,并按相同的順序排列。
2. 構(gòu)造
構(gòu)造將不同數(shù)據(jù)類型組合成一個整體,見圖5.6。構(gòu)造的元素可以是任何基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型,有數(shù)組或構(gòu)造元素的構(gòu)造能嵌套8層。因此,STEP 7允許用戶將過程中的各種關(guān)聯(lián)數(shù)據(jù)統(tǒng)一組織在一個構(gòu)造中,也為統(tǒng)一處理不同類型數(shù)據(jù)或參數(shù)提供了可能性
1) 建立構(gòu)造
構(gòu)造(STRUCT)只能在數(shù)據(jù)塊或變量聲明表中定義。圖5.7所示為由整數(shù)(存放數(shù)量)、字節(jié)(存放原始數(shù)據(jù))、字符(存放控制碼)、浮點數(shù)(存放溫度)、布爾數(shù)(完成標(biāo)志信號)組成的構(gòu)造。該構(gòu)造的名稱為Stack_1。
2) 賦初始值
按每個元素的類型和名稱給構(gòu)造的每個元素賦初始值。并將其寫入圖5.8中Initial Value(初始值欄)的相應(yīng)行中。例如,可以分配如下初始值:
Amount=0
Original_data=B#l6#0
Control_code=“Z”
Temperature=98.6
End:=FALSE
3) 訪問構(gòu)造
(1) 用符號地址訪問:如MOTO.Stack_1.Temperature,其中,MOTO為構(gòu)造所在數(shù)據(jù)塊DB20的符號名。
(2) 用物理地址訪問:如Stack_l從DB20的字節(jié)0開始存放,Amount的物理地址是DB20.DBW0,Temperature的地址為DB20.DBD4。
4) 利用構(gòu)造傳遞參數(shù)
構(gòu)造可以作為參數(shù)來傳遞。將構(gòu)造作為參數(shù)傳遞時,要求形式參數(shù)和實際參數(shù)必須有同樣的數(shù)據(jù)組織結(jié)構(gòu)、相同的數(shù)據(jù)類型,并按相同的順序排列。
3. 用戶數(shù)據(jù)類型
STEP 7允許將基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型組合成用戶自己定義的數(shù)據(jù)類型,這種類型稱為用戶數(shù)據(jù)類型或UDT。用戶數(shù)據(jù)類型必須首先單獨建立,并存放在稱為UDT的特殊數(shù)據(jù)塊中,見圖5.8。
圖5.8是用“程序編輯器”建立的一個UDT,其數(shù)據(jù)組織結(jié)構(gòu)與圖5.7相同,該用戶數(shù)據(jù)類型被定義為UDT200,并單獨存儲在被稱為UDT200的特殊塊中。也可以為UDT200建立符號名(如process_data),但是,命名只能在符號表中進行。圖5.9給出了一個使用UDT定義數(shù)據(jù)塊(如DBl0)的例子,數(shù)據(jù)塊DBl0中定義兩個變量,一個為整型,另一個為用戶數(shù)據(jù)類型(UDT200)。從圖中可以看出,數(shù)據(jù)塊中UDT的用法與基本數(shù)據(jù)類型的用法類似。
用符號地址或物理地址兩種方式可以訪問UDT中的變量。例如,在DB10中定義了圖5.9格式的數(shù)據(jù),DB10的符號名為Process,訪問Amount變量可分別寫為DB10.DBW 2或Process.Stack_2.Amount。
建立用戶數(shù)據(jù)類型的目的是為了將UDT作為一種數(shù)據(jù)類型使用,以方便定義多個結(jié)構(gòu)相同的構(gòu)造變量。圖5.9建立的Stack_2與圖5.7建立的Stack_1相比,不僅大小結(jié)構(gòu)*相同,而且對Stack_1和Stack_2中元素的訪問方法也*相同。在建立DB10時,由于使用了UDT而使得數(shù)據(jù)塊建立過程方便快捷。在多處使用同樣的UDT時,這一優(yōu)點將更加突出。
程序結(jié)構(gòu)設(shè)計
STEP 7不僅從不同層次充分支持合理的程序結(jié)構(gòu)設(shè)計,而且也簡化了結(jié)構(gòu)設(shè)計的復(fù)雜程度。
一個復(fù)雜的自動化過程可以被分解并定義為一個或多個項目(PROJECT);而對于每個項目,又可以進一步分解并定義給一個或多個CPU,每個CPU都有一個控制程序(CPU_PROGRAM)。圖5.10顯示了一個樣本過程,它分成4個不同的項目:項目1和項目2只有一個CPU,而項目3和項目4有多個CPU。這樣,一個很復(fù)雜的控制任務(wù)的結(jié)構(gòu)設(shè)計,就被簡化為各個CPU程序的結(jié)構(gòu)設(shè)計。項目間或項目中的各CPU程序之間,能以某種方式聯(lián)網(wǎng),實現(xiàn)信息共享。如在S7協(xié)議支持下,用MPI網(wǎng)以全局?jǐn)?shù)據(jù)通信的方式可方便地建立起聯(lián)系,實現(xiàn)一個項目中各CPU共享信息
典型的情況是一個過程控制任務(wù)只有一個項目,該項目下也僅有一個CPU程序,每一個CPU程序又可依據(jù)時間特性或事件觸發(fā)特性的差異分類編入不同的組織塊(OB)中。例如,需要以固定時間間隔循環(huán)執(zhí)行的那部分程序編入組織塊OB35中,為PLC正常運行而需進行初始化的程序編入組織塊OBl00中。又如,由硬件觸發(fā)的中斷服務(wù)程序編入組織塊OB40中,對程序執(zhí)行中產(chǎn)生的同步錯誤的響應(yīng)處理程序編入組織塊OB121或OB122中。
咸陽西門子PLC代理商