江西西門子S7-1200系列PLC代理商價格
西門子S7-1200系列PLC的自由通信協(xié)議(用戶定義協(xié)議)
自由通信口方式( Freeport Mode)是S7-200 PLC的一個很有特色的功能。S7-200 PLC的自由通信,即用戶自定義通信協(xié)議(例如ASCⅡ協(xié)議),數(shù)據(jù)傳輸速率高為38.4kbit/s。
用戶定義協(xié)議的應(yīng)用,可以使可通信的范圍大大增大,使控制系統(tǒng)配置更加靈活、方便。應(yīng)用此種方式,使S7-200 CPU可以與任何通信協(xié)議公開,并使串口的外設(shè)智能設(shè)備和控制器進(jìn)行通信。例如:打印機(jī)、條形碼閱讀器、調(diào)制一解調(diào)器、變頻器和上位PC機(jī)等。當(dāng)然,這種協(xié)議也可以用于兩個CPU之間簡單的數(shù)據(jù)交換。當(dāng)外設(shè)具有RS-485接口時,可以通過雙絞線進(jìn)行連接,具有RS-232接口的外設(shè)也可以通過PC/PPI電纜連接起來進(jìn)行自由通信。
與外設(shè)連接后,用戶程序可以通過使用接收中斷、發(fā)送中斷、發(fā)送指令( XMT)和接收指令( RCV)對通信口操作。在自由通信口模式下,通信協(xié)議*由用戶程序控制。S7 -200 PLC中的SMB30(口0)或SMB130(口1)允許自由口模式。
注意:只有在CPU處于RUN模式時才能允許自由口模式。當(dāng)CPU處于STOP模式時,自由通信口停止,通信口轉(zhuǎn)換成正常的PPI協(xié)操作。
PROFIBUS網(wǎng)絡(luò)使用RS-485標(biāo)準(zhǔn)雙絞線。它允許在一個網(wǎng)絡(luò)段上多連接32臺設(shè)備。協(xié)議定義了兩類網(wǎng)絡(luò)設(shè)備:主站和從站。主站可以對網(wǎng)絡(luò)上另一個設(shè)備進(jìn)行初始化申請,從站只響應(yīng)來自主站的申請,它不初始化本身的申請。
PROFIBLTS-DP協(xié)議用于分布式I/O設(shè)備間的高速通信,網(wǎng)絡(luò)通常有一個主站和幾個I/O從站組成。主站初始化網(wǎng)絡(luò),并核對網(wǎng)絡(luò)上的從站設(shè)備和配置是否匹配。主站連續(xù)地把輸出數(shù)據(jù)寫到從站,并從它們那里讀取輸入數(shù)據(jù)。當(dāng)DP主站成功地組態(tài)一個從站時,它就擁有該從站。如果網(wǎng)絡(luò)中有第二個主站,它只能很有限地訪問個主站的從站。
S7-200 CPU可以通過EM277 PROFIBUS-DP擴(kuò)展模塊的方法支持DP網(wǎng)絡(luò)協(xié)議。
注意:該協(xié)議支持一個網(wǎng)絡(luò)上的127個地址(0-126),網(wǎng)絡(luò)上多有32個主站。為了通信,網(wǎng)絡(luò)上的所有設(shè)備必須具有不同的地址。
SIMATIC S7系列PLC的網(wǎng)絡(luò)層次結(jié)構(gòu)由4級組成,如圖6-3所示。由下到上依次是:過程測量與控制級、過程監(jiān)控級、丁廠與過程管理級和公司管理級。
這個4級結(jié)構(gòu)構(gòu)成了SIMATIC網(wǎng)絡(luò)金字塔,它由3級總線復(fù)合而成。
底一級采用AS-i級總線:負(fù)責(zé)與現(xiàn)場傳感器和執(zhí)行器的通信,也可以是遠(yuǎn)程I/O總線,負(fù)責(zé)PLC與分布式I/O模塊之間的通信。
中間一級采用PROFIBUS級總線:它采用令牌方式與主從輪詢相結(jié)合的存取控制方式,可實現(xiàn)現(xiàn)場、控制和監(jiān)控3級的通信。中間級也可采用主從輪詢存取方式的主從式多點(diǎn)鏈路。
高一級采用工業(yè)以太網(wǎng)( Ethernet):使用通用協(xié)議,負(fù)責(zé)傳送生產(chǎn)管理信息。
S7系列PLC中的S7-200 CPU支持多種通信協(xié)議。根據(jù)所使用的S7-200 CPU,網(wǎng)絡(luò)可以支持一個或多個協(xié)議,包括通用協(xié)議和公司協(xié)議。協(xié)議包括:點(diǎn)到點(diǎn)( Point-toPoint)接口協(xié)議(PPI)、多點(diǎn)(Multi-Point)接口協(xié)議(MPI)、自由通信接口協(xié)議、PROFIBUSDP協(xié)議和USS協(xié)議。
這兩種協(xié)議都是通過令牌環(huán)網(wǎng)實現(xiàn),令牌環(huán)網(wǎng)遵守歐洲標(biāo)準(zhǔn)EN50170中的過程現(xiàn)場總線標(biāo)準(zhǔn),是異步、基于字符的協(xié)議,帶有起始位、8位數(shù)據(jù)、偶校驗和一個停止位。通信幀由特殊的起始和結(jié)束字符、源地址和目的地址、幀長度和數(shù)據(jù)完整性檢查等部分組成。只要數(shù)據(jù)傳輸速率相同,兩個協(xié)議可以在一個網(wǎng)絡(luò)中同時運(yùn)行,而不相互影響。
PPI通信協(xié)議是西門子專門為S7 -200系列PLC開發(fā)的一個通信協(xié)議??梢酝ㄟ^兩芯屏蔽雙絞線進(jìn)行聯(lián)網(wǎng)。數(shù)據(jù)傳輸速率為9.6kbit/s、19.2kbit/s和187.5 kbit/s。S7 -200的編程口即為網(wǎng)絡(luò)通信接口。
PPI是一個主/從協(xié)議。在這個協(xié)議中,主站(其他CPU、西門子編程器或TD200)給從站發(fā)送申請,從站響應(yīng)。從站不初始化信息,只是當(dāng)主站發(fā)出申請或查詢時,從站才響應(yīng)。網(wǎng)絡(luò)上的所有S7-200 CPU都作為從站,如圖6-4所示。
S7 -200可以通過內(nèi)置接口連接到MPI網(wǎng)上。內(nèi)置接口可以是CPU的通信口,也可以是EM227擴(kuò)展通信模塊。應(yīng)用MPI組成的網(wǎng)絡(luò)通信的波特率為19.2 kbit/s或187.5kbit/s。S7-200可以通過MPI網(wǎng)與S7-300/400 CPU進(jìn)行通信。S7-200 CPU在MPI網(wǎng)中作為從站,S7-200之間不能通信。
注意:MPI協(xié)議可以是主/主協(xié)議或主/從協(xié)議,協(xié)議如何操作有賴于設(shè)備類型。如果設(shè)備是S7-300 CPU,那就建立主/主連接,因為所有的S7-300 CPU都是網(wǎng)站主站。如果設(shè)備是S7-200 CPU,那么就建立主/從連接,因為S7-200 CPU都是從站。
MPI總是在兩個已經(jīng)建立連接的設(shè)備之間相互通信,這種連接可能是兩個設(shè)備之間的非固定連接,另一個主站不能干涉兩個設(shè)備之間已經(jīng)建立的連接,如為了應(yīng)用,可以建立一個短時間暫時連接,也可以建立一個無限保持的連接或斷開。
子程序在結(jié)構(gòu)化程序設(shè)計中是一種方便有效的工具。與子程序相關(guān)的操作有:建立子程序、子程序的調(diào)用和返回等。
1.建立子程序
可用編程軟件Edit菜單的Insert選項,選擇Subroutine,以建立或插入一個新的子程序,同時在指令樹窗口可以看到新建的子程序圖標(biāo),默認(rèn)的程序名是SBR_N,編號N從0開始按遞增順序生成,可以在圖標(biāo)上直接更改子程序的程序名。在指令樹窗口雙擊子程序的圖標(biāo)就可對它進(jìn)行編輯。
2.子程序調(diào)用
主程序可以用子程序調(diào)用指令來調(diào)用一個子程序。子程序執(zhí)行結(jié)束必須返回主程序。
(1)子程序調(diào)用和返回指令
1)子程序調(diào)用指令( CALL):使能輸入有效時,將程序控制權(quán)交給子程序SBR_N。調(diào)用子程序時可以帶參數(shù)也可以不帶參數(shù)。在LAD中用功能框的形式編程,如圖5-47a所示,功能框名為子程序名SBR_N。
指令格式:CALL SBR_ N
例:CALL SBR_0
影響允許輸出ENO正常工作的出錯條件為SM4.3(運(yùn)行時間),0008(子程序嵌套超界)。
2)子程序條件返回指令(CRET):使能輸入有效時,結(jié)束子程序的執(zhí)行,返回主程序中此子程序調(diào)用指令的下一條指令。LAD中以線圈的形式編程,如圖5-47b所示,指令不帶參數(shù)。
在STL中指令格式:CRET (條件返回)
例:LD I0.1
CRET (條件返回)

圖5-47 子程序調(diào)用和返回指令
a)子程序調(diào)用b)子程序條件返回
(2)注意事項
1)在主程序中可以嵌套調(diào)用子程序(在子程序中還可調(diào)用子程序),多嵌套8層。在中斷服務(wù)程序中,不能嵌套調(diào)用子程序。
2)當(dāng)有一個子程序被調(diào)用時,系統(tǒng)會保存當(dāng)前的邏輯堆棧,置棧頂值為1,堆棧的其他值為0,把控制交給被調(diào)用的子程序。當(dāng)子程序完成之后,恢復(fù)邏輯堆棧,把控制權(quán)交還給調(diào)用程序。
3)因為累加器可在主程序和子程序之間傳遞,所以在子程序調(diào)用時,累加器的值既不保存也不恢復(fù)。
3.帶參數(shù)調(diào)用子程序
子程序的調(diào)用過程如果存在數(shù)據(jù)的傳遞,則調(diào)用指令中應(yīng)包含相應(yīng)的參數(shù)。
(1)子程序參數(shù)子程序多可以傳遞16個參數(shù)。參數(shù)在子程序的局部變量表中加以定義。參數(shù)包含下列信息:變量名、變量類型和數(shù)據(jù)類型。
1)變量類型。變量類型是按變量對應(yīng)數(shù)據(jù)的傳遞方向來劃分的,可以是傳人子程序(IN)類型、傳人和傳出子程序(IN/OUT)類型、傳出子程序(OUT)類型、暫時(TEMP)類型4種類型。4種變量類型的參數(shù)在變量表中的位置必須按以下先后順序。
IN類型:傳人子程序參數(shù)。所接的參數(shù)可以是:直接尋址數(shù)據(jù)(如VB100)、間接尋址數(shù)據(jù)(如* AC1)、立即數(shù)(如16 #2344)、數(shù)據(jù)的地址值(如&VB106)。
IN/OUT類型:傳人/傳出子程序參數(shù)。調(diào)用時將參數(shù)位置的值傳到子程序,返回時從子程序得到的結(jié)果被返回到同一地址。參數(shù)可采用直接和間接尋址,但立即數(shù)和地址編號不能作為參數(shù)。
OUT類型:傳出子程序參數(shù)。將從子程序返回的結(jié)果送到的參數(shù)位置。輸出參數(shù)可以采用直接和間接尋址,但不能是立即數(shù)或地址編號。
TEMP類型:暫時變量類型。在子程序內(nèi)部暫時存儲,不能用來與主程序傳遞參數(shù)的數(shù)據(jù)。
2)數(shù)據(jù)類型。局部變量表中還要對數(shù)據(jù)類型進(jìn)行聲明。數(shù)據(jù)類型可以是:“能流”、布爾型、字節(jié)型、字型雙字型、整數(shù)型、雙整型和實型。
“能流”:僅允許對位輸入操作,是位邏輯運(yùn)算的結(jié)果。在局部變量表中布爾能流輸入處于所有類型的前面。
布爾型:布爾類型用于單獨(dú)的位輸入和輸出。
字節(jié)、字和雙字型:這3種類型分別聲明一個1B、2B和4B的無符號輸入或輸出參數(shù)。
整數(shù)、雙整數(shù)型:這2種類型分別聲明一個2B或4B的有符號輸入或輸出參數(shù)。
實型:該類型聲明一個IEEE標(biāo)準(zhǔn)的32位浮點(diǎn)參數(shù)。
(2)參數(shù)子程序調(diào)用的規(guī)則 常數(shù)參數(shù)必須聲明數(shù)據(jù)類型。例如,把值為223344的元符號雙字作為參數(shù)傳遞時,必須用DW#223344來指明。如果缺少常數(shù)參數(shù)的這一描述,常數(shù)可能會被當(dāng)作別的類型使用。
輸入或輸出參數(shù)沒有自動數(shù)據(jù)類型轉(zhuǎn)換功能。例如,局部變量表中聲明一個參數(shù)為實型,而在調(diào)用時使用一個雙字,則子程序中的值就是雙字。
參數(shù)在調(diào)用時必須按照一定的順序排列,先是輸人參數(shù),然后是輸入/輸出參數(shù),后是輸出參數(shù)。
(3)變量表使用 在局部變量表中要加入一個參數(shù),右擊要加入的變量類型區(qū)可得到一個選擇菜單,選擇“插入”,然后選擇“下一行”即可。局部變量表使用局部變量存儲器。當(dāng)在局部變量表中要加入一個參數(shù)時,系統(tǒng)自動給各參數(shù)分配局部變量存儲空間。
使能流輸出ENO為0的出錯條件:SM4.3(運(yùn)行時間),0008(子程序嵌套超界)。
STL程序中,參數(shù)子程序調(diào)用指令格式:CALL N,Var1,Var2,...,Varm(其中N為子程序號,Var1~Varm為參數(shù))
例:CALL SBR0, I0.2,VB20, VD30
4.子程序和子程序返回指令程序舉例
含調(diào)用指令的主程序如圖5-48所示。

圖5-48 主程序段
江西西門子S7-1200系列PLC代理商價格