1、STEP 7 Micro/WIN32編程軟件的主界面
STEP 7 Micro/WIN32是S7-200的專用編程軟件,它工作在windows平臺(tái)下,其主要界面如下圖所示。

2、項(xiàng)目(Project)
主界面的標(biāo)題是STEP 7 Micro/WIN32-Project1。
項(xiàng)目包含的基本組件為:
①程序塊(Program Block)
程序塊由可執(zhí)行的代碼和注釋組成,可執(zhí)行的帶壓由主程序(OB1)、子程序(可選)、中斷服務(wù)程序(可選)組成。代碼被編譯并下裝到PLC,而長須注釋則被忽略。
②符號(hào)表(Symbol Table)
為便于記憶和理解,編程人員可通過符號(hào)表編寫工程地址。程序編譯后下裝到PLC時(shí)所有的符號(hào)地址被轉(zhuǎn)換成絕對地址。
③狀態(tài)表(Status Chart)
在程序執(zhí)行時(shí),可通過狀態(tài)表監(jiān)控指定的內(nèi)部變量的狀態(tài)。狀態(tài)表并不下裝到PLC中,它只是用于監(jiān)控用戶程序運(yùn)行情況的工具。
④數(shù)據(jù)塊(Data Block)
數(shù)據(jù)塊由數(shù)據(jù)(存儲(chǔ)器的初始値和常數(shù)值)和注釋組成,只有數(shù)據(jù)被編譯并下裝到PLC中。
⑤系統(tǒng)塊(System Block)
系統(tǒng)塊用于設(shè)置系統(tǒng)的組態(tài)參數(shù),常用的系統(tǒng)組態(tài)包括設(shè)置數(shù)字量輸入濾波、模擬量輸入濾波,設(shè)置脈沖捕捉,配置數(shù)字量輸出表,定義存儲(chǔ)器保持范圍,設(shè)置CPU密碼,設(shè)置通信參數(shù),設(shè)置模擬電位器,設(shè)置高速計(jì)數(shù)器,設(shè)置高速脈沖輸出等。
系統(tǒng)塊的信息需要下裝到PLC中,如無特殊要求,可采用系統(tǒng)默認(rèn)的參數(shù)值,如果不需要設(shè)置CPU密碼,可選擇“全部特權(quán)(1級(jí))”。
⑥交叉引用表(Cross Refefence)
交叉引用表用于索引用戶程序中所用的各個(gè)操作數(shù)的位置和指令的助記符。還可以使用交叉引用表查看存儲(chǔ)器的哪些區(qū)域已經(jīng)被使用,是作為位使用還是作為字節(jié)使用。在運(yùn)行模式下編輯程序時(shí),可以查看當(dāng)前正在使用的跳變信號(hào)的地址。交叉引用表不下裝到PLC中,但只有在編譯程序成功后,才能使用交叉引用表。在交叉引用表中雙擊某個(gè)操作數(shù),可以顯示包含該操作數(shù)的那一部分程序。
⑦通信(Communications)
當(dāng)計(jì)算機(jī)與PLC建立在線連接后,就可以對PLC進(jìn)行通信參數(shù)設(shè)置。上裝或下裝用戶程序時(shí),都是通過通信方式完成的。
3、使用PC/PPI電纜建立通信連接及設(shè)置通信參數(shù)
①PC/PPI電纜的安裝與設(shè)置
用計(jì)算機(jī)作為編程器時(shí),計(jì)算機(jī)與PLC之間的連接一般是通過PC/PPI電纜進(jìn)行通信的。PC/PPI電纜帶有RS232/RS485轉(zhuǎn)換器,將標(biāo)有“PC”的RS-232端連接到計(jì)算機(jī)的RS232通信接口,將標(biāo)有“PPI”的RS485端連接到PLC的通信接口。
在用PC/PPI電纜上的DIP開關(guān)設(shè)置波特率時(shí)應(yīng)與編程軟件中設(shè)置的波特率相同,默認(rèn)值為9600bps,DIP開關(guān)的第4位用于選擇10位或11位通信模式,第5位用于選擇將RS232口設(shè)置為數(shù)據(jù)終端設(shè)備(DTE)模式或數(shù)據(jù)通信設(shè)備(DCE)模式。
在編程軟件STEP 7 Micro/EIN32中設(shè)置通信參數(shù)時(shí),可用鼠標(biāo)單擊“通信”圖標(biāo),或從菜單欄中選擇“檢視(Vicw)”,在彈出的下拉菜單中選擇“通信(Communicatios)”,出現(xiàn)“通信連接(Communications Link)”對話框,在對話框中雙擊PC/PPI電纜圖標(biāo),再單擊對話框中“屬性(Properties)”按鈕。出現(xiàn)“PC/PPI電纜屬性”對話框后,即可進(jìn)行通信參數(shù)設(shè)置。
②建立計(jì)算機(jī)與PLC的在線連接
如果在“通信連接”對話框中,顯示為尚未建立通信連接,雙擊對話框中的“刷新”圖標(biāo),編程軟件將檢查所有可能與計(jì)算機(jī)連接的S7-200 CPU站,并在對話框中顯示已建立起連接的每個(gè)站的CPU圖標(biāo)、CPU型號(hào)和站地址。
③設(shè)置和修改通信參數(shù)
在“通信連接”對話框中。雙擊PC/PPI電纜圖標(biāo),在對話框中單擊“屬性(PROPERTIES)”按鈕,出現(xiàn)“PC/PPI電纜屬性”對話后,即可進(jìn)行通信參數(shù)設(shè)置。
STEP 7 Micro/WIN32的默認(rèn)設(shè)置為多主站PPI協(xié)議,此協(xié)議允許STEP 7 Micro/WIN32與其他主站(TD200等)在網(wǎng)絡(luò)中同為主站。在屬性對話框中選中多主站網(wǎng)絡(luò)(Multiple Master Network),即可啟動(dòng)做主站PPI協(xié)議。未選擇時(shí)單主站協(xié)議。
設(shè)置PPI參數(shù)的步驟如下:
a、在“PC/PPI電纜屬性”對話框中,單擊PPI按鈕,在站參數(shù)區(qū)(Station Parameter)的地址(Address)框中,設(shè)置站地址。運(yùn)行編程軟件STEP 7 Micro/WIN32的計(jì)算機(jī)的默認(rèn)地址為0,網(wǎng)絡(luò)中第一臺(tái)PLC的默認(rèn)地址為2。
b、在超時(shí)(Time-out)框中設(shè)置通信設(shè)備建立聯(lián)系的最長時(shí)間,默認(rèn)值為1s。
c、如果使用多主站PPI協(xié)議,選中“多主網(wǎng)絡(luò)(Multiple Master Network)”。使用調(diào)制解調(diào)器或Windows NT4.0時(shí),不支持主站網(wǎng)絡(luò)。
d、設(shè)置網(wǎng)路通信的波特率。
e、根據(jù)網(wǎng)絡(luò)中的設(shè)備數(shù)據(jù)選擇最高站地址,這是STEP 7 Micro/WIN32停止尋找網(wǎng)絡(luò)中其他主站的地址。
f、單擊“本機(jī)連接(Local Connection)”按鈕,選擇連接PC/PPI電纜的計(jì)算機(jī)的通信口,以及是否使用調(diào)制解調(diào)器。
g、單擊“確定(OK)”按鈕,完成通信參數(shù)設(shè)定。
④讀取PLC的信息
如果想知道PLC的型號(hào)與版本、工作方式、掃描速度、I/O模式設(shè)置以及CPU和I/O模板的錯(cuò)誤,可選擇菜單欄中的“PLC”,在下拉菜單欄中選擇“信息”后,將是示出PLC的RUN/STOP狀態(tài),以ms為單位的掃描速度、CPU的版本錯(cuò)誤的情況及各個(gè)模板的信息。
4、程序的編寫與下裝操作
(1)程序編寫的操作步驟
①創(chuàng)建項(xiàng)目:在為控制系統(tǒng)編寫應(yīng)用程序前,首先應(yīng)當(dāng)創(chuàng)建一個(gè)項(xiàng)目(Project)。可用菜單命令“文件→新建”或按工具條中“新建項(xiàng)目”按鈕,創(chuàng)建一個(gè)新的項(xiàng)目。使用菜單命令“文件→另存為”,可修改項(xiàng)目的名稱和項(xiàng)目文件所在的目錄。
②打開一個(gè)已有的項(xiàng)目:使用菜單命令“文件→打開”,可打開一個(gè)已有的項(xiàng)目。如果最近在某個(gè)項(xiàng)目上工作過,它將在文件菜單的下部列出,可直接選擇。項(xiàng)目存放*.mwp的文件中。
③設(shè)置與讀取PLC的型號(hào):在給PLC編程前,中防止創(chuàng)建程序時(shí)發(fā)生編程錯(cuò)誤,應(yīng)正確地設(shè)置PLC的型號(hào)。使用菜單命令“PLC→類型”,在出現(xiàn)的對話框中,選擇PLC的型號(hào)。在建立了通信連接后,單擊對話框中的“讀PLC”按鈕,可讀取PLC的型號(hào)與硬件版本。
④選擇編程語言和指令集:使用菜單命令“工具(Tools)→選項(xiàng)(Options)”,就彈出選項(xiàng)對話框,單擊“通用(General)”按鈕,可選擇SIMATIC指令集或IEC 1131-3指令集。還可以選擇程序編輯器(LAD、FBD及STL)的類型。
⑤確定程序結(jié)構(gòu):數(shù)字量控制程序一般只有主程序,系統(tǒng)較大,功能復(fù)雜的程序,還可能有子程序、中斷程序和數(shù)據(jù)塊。
◆主程序(在S7-200中為OB1)在每個(gè)掃描周期被順序執(zhí)行一次。
◆子程序的指令存放在獨(dú)立的程序塊中,僅在被別的程序調(diào)用時(shí)才執(zhí)行。
◆中斷程序也被存放在獨(dú)立的程序塊中,用于處理預(yù)先規(guī)定的中斷事件。中斷程序不由主程序調(diào)用,在中斷事件發(fā)生時(shí)由操作系統(tǒng)調(diào)用。
⑥編寫符號(hào)表:為便于記憶和理解,可采用符號(hào)地址編程,通過編寫符號(hào)表,可以用符號(hào)地址代替編程元件的地址。
⑦編寫數(shù)據(jù)塊:數(shù)據(jù)塊用于對變量寄存器V進(jìn)行初始數(shù)據(jù)賦值,數(shù)字量控制程序一般不需要數(shù)據(jù)塊。
⑧編寫用戶程序:用選擇的程序編輯器(編程語言)編寫用戶程序。
使用梯形圖語言編程時(shí),單擊工具欄中的觸點(diǎn)圖標(biāo),可在矩形光標(biāo)的位置上放置一個(gè)觸點(diǎn),在與新觸點(diǎn)同時(shí)出現(xiàn)的窗口中,可選擇觸點(diǎn)的類型。單擊觸點(diǎn)上面或下面的紅色問號(hào),可設(shè)置該觸點(diǎn)的地址或其他參數(shù)。用相同的方法可在梯形圖中放置線圈和功能框。單擊工具條中帶箭頭的線段,可在矩形光標(biāo)處連接觸點(diǎn)間的連線。雙擊梯形圖總的網(wǎng)絡(luò)編號(hào),在彈出的窗口中可輸入網(wǎng)絡(luò)的標(biāo)題和網(wǎng)絡(luò)的注釋。
⑨編譯程序:用戶程序編寫完成后,要進(jìn)行程序編譯。使用菜單命令“PLC→編譯(Compile)”或“PLC→全部編譯(Compile All)”,或按工具條中的編譯按鈕、全部編譯按鈕,進(jìn)行程序編譯。編譯后在屏幕下部的輸出窗口顯示語法錯(cuò)誤的數(shù)量、各條語法錯(cuò)誤的原因和產(chǎn)生錯(cuò)誤的位置。必須改正程序中所有的錯(cuò)誤,且編譯成功后,才能下裝到PLC中。
⑩程序的下裝、上裝及清除:當(dāng)計(jì)算機(jī)與PLC建立起通信連接,且用戶程序編譯成功后,可以進(jìn)行程序的下裝操作。
下裝操作需在PLC的運(yùn)行模式選擇開關(guān)處于STOP的位置時(shí)才能進(jìn)行,如果運(yùn)行模式選擇開關(guān)不在STOP位置,可將CPU上的運(yùn)行模式選擇開關(guān)撥到STOP位置。或者單擊工具條中的“停止”按鈕,或者選擇菜單命令“PLC→停止(STOP)”,也可以使PLC進(jìn)入到STOP工作模式。
單擊工具欄中的“下裝”按鈕,或者選擇菜單命令“文件→下裝(Download)”,將會(huì)出現(xiàn)下裝對話框。在對話框中可以分別選擇是否下裝程序塊、數(shù)據(jù)塊和系統(tǒng)塊。單擊“確定”按鈕后開始將計(jì)算機(jī)中的信息下裝到PLC中。下裝成功后,確認(rèn)板顯示“下裝成功”。
如果在編程軟件中設(shè)置的PLC型號(hào)與實(shí)際型號(hào)不符,將出現(xiàn)警告信息,應(yīng)在修改PLC的型號(hào)后再進(jìn)行下裝操作。也可以將PLC中的程序塊、數(shù)據(jù)塊、系統(tǒng)塊上裝到運(yùn)行編程軟件的計(jì)算機(jī)中。上裝前應(yīng)在STEP 7 Micro/WIN32中建立或打開一個(gè)項(xiàng)目,最好新建一個(gè)空的項(xiàng)目,用于保存從PLC中上裝的塊。單擊工具欄的“上裝”按鈕,或者選擇菜單命令“文件→上裝”,在上裝對話框中選擇需要上裝的塊后,單擊“確定”按鈕。
(2)程序編寫及下裝舉例
下圖是一個(gè)簡單的數(shù)字量控制系統(tǒng)-鼠籠型電動(dòng)機(jī)串電阻進(jìn)行降壓啟動(dòng)的控制系統(tǒng)的應(yīng)用實(shí)例。
按下啟動(dòng)按鈕SB1后,電動(dòng)機(jī)的定子接觸器KM1串聯(lián)啟動(dòng)電阻進(jìn)行降壓啟動(dòng),設(shè)啟動(dòng)時(shí)間為5s,啟動(dòng)結(jié)束后,短接接觸器KM2將啟動(dòng)電阻短接,電動(dòng)機(jī)全壓運(yùn)行。按下停止按鈕SB2后,電動(dòng)機(jī)停車。該系統(tǒng)具有熱繼電器FR做過載保護(hù),過載后FR的動(dòng)斷觸點(diǎn)斷開,也會(huì)使電動(dòng)機(jī)停止運(yùn)行。
首先在斷電的狀態(tài)下,用PC/PPI電纜連接好計(jì)算機(jī)與PLC,然后為計(jì)算機(jī)與PLC通電,打開編程軟件STEP 7 Micro/WIN32,創(chuàng)建一個(gè)項(xiàng)目。用菜單命令“PLC→類型”設(shè)置的PLC的型號(hào),如CPU222。用菜單命令“工具→選項(xiàng)”,在彈出的對話框中單擊“通用(Genenal)”按鈕選擇SIMATIC編程模式和梯形圖編輯器。由于這是一個(gè)很簡單的數(shù)字量控制程序,可以沒有子程序、中斷程序和數(shù)據(jù)塊,不使用局部變量表L,全部程序都在主程序中。一般地?cái)?shù)字量控制程序通常都采用這種程序結(jié)構(gòu)。圖2位此實(shí)例的PLC梯形圖。
由于控制系統(tǒng)對CPU和輸入/輸出特性沒有特殊的要求,可以全部采用系統(tǒng)塊的默認(rèn)值。為了使程序有良好的可讀性,且便于搞調(diào)試,可以使用符號(hào)表編程,尤其是當(dāng)系統(tǒng)的控制規(guī)模較大時(shí),一般都要采用符號(hào)編程。
下裝成功后,可進(jìn)行模擬調(diào)試。
①將I0.2端子與DC24V的L+端連接,模擬熱繼電器的動(dòng)斷觸點(diǎn)在正常運(yùn)行時(shí)的狀態(tài)。
②將I0.0端子與DC24V的L+端連接一下并隨即斷開,模擬按下啟動(dòng)按鈕又松開,觀察Q0.0的LED燈是否為ON。
③5s后,觀察Q0.1的LED燈是否為ON。
④將I0.1端子與DC24V的L+端連接一下并隨即斷開,模擬按下停止按鈕又松開,觀察Q0.0、Q0.1的LED燈是否為OFF。
⑤再次將I0.0端子與DC24V的L+端連接,模擬系統(tǒng)再次啟動(dòng),觀察啟動(dòng)過程是否正常。
⑥斷開I0.2端子與DC24V的L+端的連接,模擬熱繼電器過載動(dòng)作,動(dòng)斷觸點(diǎn)斷開,觀察Q0.0、Q0.1的LDE燈是否為OFF。
(3)數(shù)據(jù)塊的使用
①在數(shù)據(jù)塊中對地址和數(shù)據(jù)賦值
數(shù)據(jù)塊用于對變量寄存器V賦初值,可用字節(jié)、字或者雙字賦值。數(shù)據(jù)塊中的典型行包括起始地址以及一個(gè)以上的數(shù)據(jù)值。數(shù)據(jù)塊中的第一行必須包含明確的地址,以后的行可不包括明確的地址。如果在單地址后面鍵入多個(gè)數(shù)據(jù),或者鍵入只包含數(shù)據(jù)值的行時(shí),由程序編輯器根據(jù)前面的地址和數(shù)據(jù)長度(字節(jié)、字、雙字),自動(dòng)進(jìn)行地址賦值。數(shù)據(jù)塊編輯器接收大小寫字母,并允許用逗號(hào)、制表符或空格作為地址和數(shù)據(jù)的分隔符號(hào),例如,一個(gè)從VB3到VB13數(shù)據(jù)塊中的數(shù)據(jù)如下:
VB3 -25 ∥從VB3開始的字節(jié)數(shù)據(jù)(只占用VB3一個(gè)字節(jié))
VD4 100.5 ∥從VD4開始的雙字實(shí)數(shù)數(shù)值(占用VB4~VB7的4個(gè)字節(jié))
VW8 3,4,56 ∥從VW8開始的3個(gè)字?jǐn)?shù)值(占用VB8~VB13的6個(gè)字節(jié))
②輸入錯(cuò)誤的顯示與處理
如果數(shù)據(jù)塊位于激活窗口,可以用菜單命令“PLC→編譯”進(jìn)行編譯,如果數(shù)據(jù)塊不在當(dāng)前激活窗口,可以用菜單命令“PLC→全部編譯”進(jìn)行編譯。
在對數(shù)據(jù)塊進(jìn)行編譯時(shí),如果編譯器發(fā)現(xiàn)錯(cuò)誤,將在輸出窗口顯示錯(cuò)誤。雙擊錯(cuò)誤信息,則在數(shù)據(jù)塊窗口顯示有錯(cuò)誤的行。
如果在對數(shù)據(jù)塊賦值過程中,某行出現(xiàn)輸入錯(cuò)誤,當(dāng)在行尾鍵入回車鍵后,將在錯(cuò)誤行的左邊出現(xiàn)一個(gè)叉號(hào),顯示輸入錯(cuò)誤。改正后還要重新進(jìn)行編譯,直到改正所有的錯(cuò)誤。
5、用編程軟件監(jiān)視與調(diào)試程序
(1)用狀態(tài)表監(jiān)視與調(diào)試程序
◆打開和編輯狀態(tài)表
在程序運(yùn)行時(shí),可以用狀態(tài)表來讀、寫、強(qiáng)制和監(jiān)視PLC的內(nèi)部編程元件。單擊指令樹中的狀態(tài)表圖標(biāo),或者用菜單命令“檢視(View)→狀態(tài)表(Status Chart)”均可打開已有的狀態(tài)表,并可以進(jìn)行編輯。如果一個(gè)項(xiàng)目中有多個(gè)狀態(tài)表,可以用狀態(tài)表底部的標(biāo)簽按鈕進(jìn)行切換。
在啟動(dòng)狀態(tài)表前,可在狀態(tài)表中輸入監(jiān)視的編程元件的地址和數(shù)據(jù)類型,定時(shí)器和計(jì)數(shù)器可按位或者按字進(jìn)行監(jiān)視。如果按位監(jiān)視,顯示的是它們輸出位的1/0狀態(tài);如果按字監(jiān)視,則顯示的是它們的當(dāng)前值。
用菜單命令“編輯插入”,或者用鼠標(biāo)右鍵單擊狀態(tài)表中的單元,可以在狀態(tài)表當(dāng)前光標(biāo)位置的上部插入新的行。也可以將光標(biāo)置于最后一行中的任意單元后,單擊向下的箭頭鍵,將新的行插在狀態(tài)表的底部。在附表中選擇編輯元件,并將其復(fù)制到狀態(tài)表中,可以加快創(chuàng)建狀態(tài)表的速度。
◆創(chuàng)建新的狀態(tài)表
可以將要監(jiān)視的編程元件進(jìn)行分組監(jiān)視,分別創(chuàng)建幾個(gè)狀態(tài)表,用鼠標(biāo)右鍵單擊指令樹中的狀態(tài)表圖標(biāo),就彈出一個(gè)窗口,在窗口中選擇“插入狀態(tài)表”選項(xiàng)可創(chuàng)建新的狀態(tài)表。
◆啟動(dòng)和關(guān)閉狀態(tài)表
當(dāng)計(jì)算機(jī)與PLC的的通信連接成功后,用菜單命令“調(diào)試(Debug)→狀態(tài)表(Status Chart)”打開狀態(tài)表,或者用鼠標(biāo)單擊調(diào)試工具條上的“狀態(tài)表”圖標(biāo)“ ”來啟動(dòng)狀態(tài)表。再操作一次就可以關(guān)閉狀態(tài)表。
啟動(dòng)狀態(tài)表以后,編程軟件從PLC中收集狀態(tài)信息,并對表中的數(shù)據(jù)更新,還可以根據(jù)需要強(qiáng)制修改狀態(tài)表的數(shù)據(jù)。
◆單次讀取狀態(tài)信息
狀態(tài)表被關(guān)閉時(shí),用菜單命令“調(diào)試(Debug)→單次讀取(Single Read)”,可以從PLC中讀取當(dāng)前的數(shù)據(jù),并在狀態(tài)表中顯示當(dāng)前數(shù)值,在執(zhí)行用戶程序時(shí)對狀態(tài)表中的數(shù)值不進(jìn)行更新。
(2)用狀態(tài)表強(qiáng)制改變數(shù)值
當(dāng)PLC工作在RUN模式下,可對程序中的某些變量進(jìn)行強(qiáng)制性的賦值操作。S7-200CPU允許強(qiáng)制性地給所有的I/O點(diǎn)賦值,此外還可以改變最多16個(gè)內(nèi)部寄存器(如V、M)的數(shù)據(jù),或者模擬量I/O(AI或AQ)的數(shù)據(jù)。對V或M可按字節(jié)、字、雙字來改變。對模擬量只能從偶數(shù)字節(jié)開始,以字為單位來改變模擬量。強(qiáng)制的數(shù)據(jù)可以永久性地存儲(chǔ)在CPU的EEPROM中。
在讀取輸入(輸入采樣)階段,強(qiáng)制值被當(dāng)做輸入讀入;在程序執(zhí)行階段,強(qiáng)制數(shù)據(jù)用于由立即讀和立即寫指令指定的I/O點(diǎn);在通信處理階段,強(qiáng)制值用于通信的讀/寫請求。在修改輸出(輸出刷新)階段,強(qiáng)制數(shù)據(jù)被當(dāng)做輸出寫入輸出電路。當(dāng)進(jìn)入STOP狀態(tài)時(shí),輸出將為強(qiáng)制值,而不是系統(tǒng)中設(shè)置的值。
通過強(qiáng)制V、M、T或C,強(qiáng)制功能可用來模擬立即條件;通過強(qiáng)制I/O點(diǎn),強(qiáng)制功能可用來模擬物理?xiàng)l件。值得注意的是,強(qiáng)制操作可能導(dǎo)致系統(tǒng)出現(xiàn)無法預(yù)料的情況,甚至引起人員傷亡或設(shè)備損壞。
顯示狀態(tài)表后,可以用“調(diào)試(Debug)”菜單命令中的選項(xiàng)或者用鼠標(biāo)單擊調(diào)試工具條中的相關(guān)按鈕來執(zhí)行相應(yīng)的操作,如:強(qiáng)制、取消強(qiáng)制、取消全部強(qiáng)制、讀取全部強(qiáng)制、單次讀取和全部寫入等。用鼠標(biāo)右鍵單擊操作數(shù),從彈出的窗口中可選擇對該操作數(shù)強(qiáng)制或取消強(qiáng)制。
◆全部寫入
當(dāng)完成了對狀態(tài)表中的變量改動(dòng)后,可用全部寫入功能將所有的改動(dòng)傳送到PLC中。物理輸入點(diǎn)不能用此功能改動(dòng)。
◆強(qiáng)制操作
在狀態(tài)表的地址列中選中一個(gè)操作數(shù),在“新數(shù)值列”寫入希望的數(shù)據(jù),然后按工具條中的強(qiáng)制按鈕。一旦使用了強(qiáng)制功能,每次掃描都會(huì)將修改的數(shù)值用于該操作數(shù),直到取消對它的強(qiáng)制。在被強(qiáng)制的數(shù)值旁,將顯示鎖定圖標(biāo)。
◆對單個(gè)操作數(shù)取消強(qiáng)制操作
選擇一個(gè)被強(qiáng)制的操作數(shù),然后取消強(qiáng)制操作,鎖定圖標(biāo)將會(huì)消失。
◆讀取全部強(qiáng)制
執(zhí)行讀取全部強(qiáng)制功能時(shí),狀態(tài)表中被強(qiáng)制地址的當(dāng)前值位置將在曾經(jīng)被顯示強(qiáng)制(Explicitly)、隱式強(qiáng)制(Implicitly)或部分強(qiáng)制的地址處顯示一個(gè)圖標(biāo)。
鎖定圖標(biāo)表示該地址被顯示強(qiáng)制,對它取消強(qiáng)制之前,不能改變此地址的值。
灰色的鈕定圖標(biāo)表示該地址被隱式強(qiáng)制。例如,如果VW0被顯式強(qiáng)制,則VB0和VB1被隱式強(qiáng)制,因?yàn)樗鼈儼赩W0中。被隱式強(qiáng)制的數(shù)值本身不能取消強(qiáng)制。在改變VB0的強(qiáng)制之前,必須取消對VW0的強(qiáng)制。
半塊鎖定圖標(biāo)表示該地址的一部分被強(qiáng)制。例如,如果VW0被顯示強(qiáng)制,因?yàn)閂W0的第二字節(jié)是VW1的第一個(gè)字節(jié),所以VW1的一部分也被強(qiáng)制。不能對部分強(qiáng)制的數(shù)值本身取消強(qiáng)制。在改變該地址的數(shù)值之前,必須取消使它被部分強(qiáng)制的地址的強(qiáng)制。
(3)梯形圖程序的狀態(tài)監(jiān)視
PLC處于RUN方式并建立起通信連接后,選擇菜單命令“調(diào)試(Debug)→程序狀態(tài)(Program Status)”,或者單擊工具條中的程序狀態(tài)按鈕“ ”,在梯形圖中可顯示出各個(gè)編程元件的狀態(tài)。如果位操作數(shù)為1(ON),觸點(diǎn)、線圈將出現(xiàn)彩色塊,并允許以最快的通信速度顯示、更新觸點(diǎn)和線圈的狀態(tài)。可用菜單命令“工具(Tools)→選項(xiàng)(Options)”打開窗口,然后在窗口中選擇“LAD編輯”標(biāo)簽,進(jìn)行設(shè)置功能框的大小和顯示方式。
被強(qiáng)制的數(shù)值用與狀態(tài)表中相同的符號(hào)來表示,如:鎖定圖標(biāo)表示該數(shù)值已被顯式強(qiáng)制,灰色的鎖定圖標(biāo)表示該數(shù)值已被隱式強(qiáng)制,半塊鎖定圖標(biāo)表示該數(shù)值被部分強(qiáng)制。可以在程序狀態(tài)中啟動(dòng)強(qiáng)制與取消強(qiáng)制操作,但不能使用狀態(tài)表中提供的其他功能。
(4)語句表程序的狀態(tài)監(jiān)視
PLC在RUN方式下建立起通信連接后,選擇菜單命令“凋試(Debug)→程序狀態(tài)(Program Status)”或單擊工具條中的程序狀態(tài)按鈕“ ”,可以在語句表中啟動(dòng)程序狀態(tài)控制。程序編輯器窗口被分成左側(cè)的程序區(qū)和右側(cè)的狀態(tài)區(qū)。間接尋址的操作數(shù)將同時(shí)顯示括號(hào)中指針的地址和指針?biāo)傅拇鎯?chǔ)單元中的數(shù)值。可以根據(jù)要監(jiān)視的數(shù)據(jù)類型對狀態(tài)區(qū)進(jìn)行設(shè)置。用菜單命令“工具(Tools)→選項(xiàng)(Options)”打開窗口,然后在窗口中選擇“STL狀態(tài)”標(biāo)簽,可有選擇地在語句表程序狀態(tài)中監(jiān)控下列三類數(shù)值:
◆每條指令最多監(jiān)控3個(gè)操作數(shù)Op1、Op2和Op3。
◆最多監(jiān)控邏輯堆棧中4個(gè)當(dāng)前的數(shù)值。
● 最多監(jiān)控11個(gè)指令狀態(tài)位。
從CPU獲取的信息限于200個(gè)字節(jié)或屏幕上的25行STL狀態(tài)行。如果超過了這個(gè)限制,將會(huì)在狀態(tài)窗口中顯示“—”,狀態(tài)信息從位于編輯窗口頂端的第一句STL語句開始顯示。當(dāng)向下滾動(dòng)到編輯窗口時(shí),將從CPU獲取新的信息。
語句表程序狀態(tài)監(jiān)視可以連續(xù)不停地更新屏幕上的數(shù)值,但不能強(qiáng)制數(shù)值。要在語句表程序中強(qiáng)制數(shù)值,需使用狀態(tài)表。如果需要暫停更新,可按“觸發(fā)暫停”按鈕“ ”,當(dāng)前的數(shù)值保留在屏幕上,直到再次按該按鈕。
狀態(tài)數(shù)值的顏色表示指令的執(zhí)行情況,黑色表示該指令被正確執(zhí)行;紅色表示指令執(zhí)行時(shí)有錯(cuò)誤;灰色表示指令沒有被執(zhí)行(其原因是棧頂?shù)闹禐?,或該指令在一個(gè)沒有被激活的SCR塊中);空白表示該指令沒有被執(zhí)行。
(5)在RUN方式下進(jìn)行程序編輯
建立好計(jì)算機(jī)與PLC之間的通信聯(lián)系后,選擇菜單命令“調(diào)試(Debug)→在運(yùn)行狀態(tài)編輯程序(Program Edit in RUN)”,CPU224和CPU226可在RUN方式下進(jìn)行編輯。編輯前需退出程序狀態(tài)監(jiān)視,修改程序后,需要將其下裝到PLC。下裝之前一定要仔細(xì)考慮可能對設(shè)備或操作人員造成的各種安全后果。
如果在RUN方式編輯狀態(tài)下,取消了一個(gè)輸出控制邏輯,則該輸出在下一次CPU上電或轉(zhuǎn)換互STOP方式之前將保持上一狀態(tài)。
如果在RUN方式編輯狀態(tài)下取消一個(gè)正在運(yùn)行的HSC(高速計(jì)數(shù)器)或PTO/PWN功能,則這些功能在下一次CPU上電或轉(zhuǎn)換至STOP方式前將保持運(yùn)行狀態(tài)。
如果在RUN方式編輯狀態(tài)下,取消了ATCH(中斷連接)指令,但是沒有刪除中斷程序,則在下一次CPU上電或轉(zhuǎn)換STOP方式之前將繼續(xù)執(zhí)行中斷。
如果在RUN狀態(tài)取消DTCH(中斷分離)指令,則在下一次CPU上電或轉(zhuǎn)換到STOP方式之前,中斷不會(huì)關(guān)閉。
如果在RUN方式編輯狀態(tài)下,增加ATCH指令,并且以第一次掃描標(biāo)志為條件,則在下一次CPU上電或轉(zhuǎn)換到STOP方式之前,中斷事件不會(huì)激活。
如果在RUN方式編輯狀態(tài)下,刪除了ENI指令,則在下一次CPU上電或轉(zhuǎn)換到STOP方式之前,中斷將繼續(xù)執(zhí)行。
如果在RUN方式編輯狀態(tài)下,修改接收指令(RCV)的地址表,并且在新老程序切換時(shí)接收指令處于激活狀態(tài),則接收的數(shù)據(jù)寫入老的地址表。NETW與NETR指令同樣如此。
由于在RUN方式狀態(tài)編輯不會(huì)影響第一次掃描標(biāo)志SM0.1,因此在下一次CPU上電或轉(zhuǎn)換到STOP方式之前,不會(huì)執(zhí)行受控于第一次掃描標(biāo)志的邏輯條件。
在RUN方式編輯狀態(tài)下,可修改包含正跳變或負(fù)跳變(EU或ED)指令的網(wǎng)絡(luò),STEP 7 Micro/WIN32暫時(shí)為程序中各EU/ED指令分配一個(gè)號(hào)碼。激活RUN方式編輯功能時(shí),交叉引用窗口使用標(biāo)簽列出當(dāng)前指定的所有EU/ED指令。編輯程序時(shí)不要使用重復(fù)的EU/ED指令。
在RUN方式下裝程序時(shí),只能下裝程序塊,PLC需要一定的時(shí)間對修改的程序進(jìn)行背景編譯。選擇菜單命令“調(diào)試(Debug)→在運(yùn)行狀態(tài)下編輯程序(Program Edit in RUN)”,可以退出RUN方式編輯。
6、調(diào)試程序的其他方法
①單次掃描
從STOP方式進(jìn)入RUN方式,首次掃描位(SM0.1)在第一次掃描時(shí)為1狀態(tài)。由于執(zhí)行速度太快,在程序運(yùn)行狀態(tài)很難觀察到首次掃描后的狀態(tài)。
選擇菜單命令“調(diào)試(Debug)→單次掃描(First Scan),PLC從STOP方式進(jìn)入,執(zhí)行一次掃描后,回到STOP方式,可以觀察到首次掃描后的狀態(tài)。
②多次掃描
可以指定執(zhí)行有限次的程序掃描次數(shù)(1~65 535次)。通過選擇掃描次數(shù),當(dāng)過程變量變化時(shí),可以監(jiān)視用戶程序的執(zhí)行。當(dāng)PLC處于STOP方式時(shí),用菜單命令“調(diào)試(Debug)→多次掃描(Multiple Scans)”來設(shè)置掃描執(zhí)行的次數(shù)。
③觸發(fā)暫停功能的使用
用觸發(fā)暫停功能可以在執(zhí)行某一子程序或中斷程序時(shí),保持程序狀態(tài)信息以供檢查,并顯示出要監(jiān)控的那部分程序,啟動(dòng)“程序狀態(tài)”功能,如果顯示的是灰色(未激活)的狀態(tài)信息,可以用觸發(fā)暫停功能捕捉下一次該段程序被執(zhí)行后的狀態(tài)信息。
單擊觸發(fā)暫停圖標(biāo)或用鼠標(biāo)右鍵單擊處于程序狀態(tài)的程序區(qū),在彈出的菜單中選擇“觸發(fā)暫停”。獲得新的信息后,它將保持在屏幕上,直到觸發(fā)暫停功能被關(guān)閉。再次選擇觸發(fā)暫停功能可取消該功能。