版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
西門子PLC教程從入門到精通精簡第1頁/共285頁第4章S7-300編程語言學(xué)習(xí)§4.1STEP7編程語言§4.2數(shù)據(jù)類型§4.3S7-300指令基礎(chǔ)§4.4位邏輯指令§4.5定時(shí)器與計(jì)數(shù)器指令§4.6數(shù)字指令§4.7控制指令第2頁/共285頁§4.1STEP7編程語言STEP7是S7-300/400系列PLC應(yīng)用設(shè)計(jì)軟件包,所支持的PLC編程語言非常豐富。該軟件的標(biāo)準(zhǔn)版支持STL(語句表)、LAD(梯形圖)及FBD(功能塊圖)3種基本編程語言,并且在STEP7中可以相互轉(zhuǎn)換。專業(yè)版附加對GRAPH(順序功能圖)、SCL(結(jié)構(gòu)化控制語言)、HiGraph(圖形編程語言)、CFC(連續(xù)功能圖)等編程語言的支持。不同的編程語言可供不同知識背景的人員采用。第3頁/共285頁STL(語句表)STL(語句表)是一種類似于計(jì)算機(jī)匯編語言的一種文本編程語言,由多條語句組成一個(gè)程序段。語句表可供習(xí)慣匯編語言的用戶使用,在運(yùn)行時(shí)間和要求的存儲空間方面最優(yōu)。在設(shè)計(jì)通信、數(shù)學(xué)運(yùn)算等高級應(yīng)用程序時(shí)建議使用語句表。第4頁/共285頁LAD(梯形圖)LAD(梯形圖)是一種圖形語言,比較形象直觀,容易掌握,用得最多,堪稱用戶第一編程語言。梯形圖與繼電器控制電路圖的表達(dá)方式極為相似,適合于熟悉繼電器控制電路的用戶使用,特別適用于數(shù)字量邏輯控制。第5頁/共285頁FBD(功能塊圖)FBD(功能塊圖)使用類似于布爾代數(shù)的圖形邏輯符號來表示控制邏輯,一些復(fù)雜的功能用指令框表示。FBD比較適合于有數(shù)字電路基礎(chǔ)的編程人員使用。第6頁/共285頁GRAPH(順序控制)GRAPH類似于解決問題的流程圖,適用于順序控制的編程。利用S7-GRAPH編程語言,可以清楚快速地組織和編寫S7PLC系統(tǒng)的順序控制程序。它根據(jù)功能將控制任務(wù)分解為若干步,其順序用圖形方式顯示出來并且可形成圖形和文本方式的文件。第7頁/共285頁HiGraph(圖形編程語言)S7-Higraph允許用狀態(tài)圖描述生產(chǎn)過程,將自動(dòng)控制下的機(jī)器或系統(tǒng)分成若干個(gè)功能單元,并為每個(gè)單元生成狀態(tài)圖,然后利用信息通訊將功能單元組合在一起形成完整的系統(tǒng)。第8頁/共285頁SCL(結(jié)構(gòu)化控制語言)S7-SCL(StructuredControlLanguage:結(jié)構(gòu)控制語言)是一種類似于PASCAL的高級文本編輯語言,用于S7-300/400和C7的編程,可以簡化數(shù)學(xué)計(jì)算、數(shù)據(jù)管理和組織工作。S7-SCL具有PLC公開的基本標(biāo)準(zhǔn)認(rèn)證,符合IEC1131-3(結(jié)構(gòu)化文本)標(biāo)準(zhǔn)。第9頁/共285頁§4.2數(shù)據(jù)類型
數(shù)據(jù)類型決定數(shù)據(jù)的屬性,在STEP7中,數(shù)據(jù)類型分為三大類:§4.2.1基本數(shù)據(jù)類型§4.2.2復(fù)雜數(shù)據(jù)類型§4.2.3參數(shù)類型第10頁/共285頁§4.2.1基本數(shù)據(jù)類型第11頁/共285頁§4.2.2復(fù)雜數(shù)據(jù)類型數(shù)組(ARRAY)結(jié)構(gòu)(STRUCT)字符串(STRING)日期和時(shí)間(DATE_AND_TIME)用戶定義的數(shù)據(jù)類型(UDT)功能塊類型(FB、SFB)第12頁/共285頁1.數(shù)組(ARRAY)
數(shù)組是由一組同一類型的數(shù)據(jù)組合在一起而形成的復(fù)雜數(shù)據(jù)類型。數(shù)組的維數(shù)最大可以到6維;數(shù)組中的元素可以是基本數(shù)據(jù)類型或者復(fù)雜數(shù)據(jù)類型中的任一數(shù)據(jù)類型(Array類型除外,即數(shù)組類型不可以嵌套);數(shù)組中每一維的下標(biāo)取值范圍是-32768~32767,要求下標(biāo)的下限必須小于下標(biāo)的上限。第13頁/共285頁2.結(jié)構(gòu)(STRUCT)
結(jié)構(gòu)是由一組不同類型(結(jié)構(gòu)的元素可以是基本的或復(fù)雜的數(shù)據(jù)類型)的數(shù)據(jù)組合在一起而形成的復(fù)雜數(shù)據(jù)類型。結(jié)構(gòu)通常用來定義一組相關(guān)的數(shù)據(jù),例如電機(jī)的一組數(shù)據(jù)可以按如下方式定義:第14頁/共285頁3.字符串(STRING)字符串是最多有254個(gè)字符(CHAR)的一維數(shù)組,最大長度為256個(gè)字節(jié)(其中前兩個(gè)字節(jié)用來存儲字符串的長度信息)。字符串常量用單引號括起來,例如:第15頁/共285頁4.日期和時(shí)間(DATE_AND_TIME)用于存儲年、月、日、時(shí)、分、秒、毫秒和星期,占用8個(gè)字節(jié),用BCD格式保存。星期天的代碼為1,1~6的代碼為2~7。例如:第16頁/共285頁5.用戶定義的數(shù)據(jù)類型(UDT)
用戶定義數(shù)據(jù)類型表示自定義的結(jié)構(gòu),存放在UDT塊中(UDT1~UDT65535),在另一個(gè)數(shù)據(jù)類型中作為一個(gè)數(shù)據(jù)類型“模板”。當(dāng)輸入數(shù)據(jù)塊時(shí),如果需要輸入幾個(gè)相同的結(jié)構(gòu),利用UDT可以節(jié)省輸入時(shí)間。6.功能塊類型(FB、SFB)這種數(shù)據(jù)類型僅可以在FB的靜態(tài)變量區(qū)定義,用于實(shí)現(xiàn)多背景DB。第17頁/共285頁§4.2.3參數(shù)數(shù)據(jù)類型
參數(shù)類型是一種用于邏輯塊(FB、FC)之間傳遞參數(shù)的數(shù)據(jù)類型,主要有以下幾種:
(1)TIMER(定時(shí)器)和COUNTER(計(jì)數(shù)器)。
(2)BLOCK(塊):指定一個(gè)塊用作輸入和輸出,實(shí)參應(yīng)為同類型的塊。
(3)POINTER(指針):6字節(jié)指針類型,用來傳遞DB的塊號和數(shù)據(jù)地址。
(3)ANY:10字節(jié)指針類型,用來傳遞DB塊號、數(shù)據(jù)地址、數(shù)據(jù)數(shù)量以及數(shù)據(jù)類型。第18頁/共285頁§4.3S7-300指令基礎(chǔ)
指令是程序的最小獨(dú)立單位,用戶程序是由若干條順序排列的指令構(gòu)成。指令一般由操作碼和操作數(shù)組成,其中的操作碼代表指令所要完成的具體操作(功能),操作數(shù)則是該指令操作或運(yùn)算的對象?!?.3.1PLC用戶存儲區(qū)的分類及功能§4.3.2指令操作數(shù)§4.3.3尋址方式
§4.3.4狀態(tài)字第19頁/共285頁§4.3.1PLC用戶存儲區(qū)的分類及功能(1/2)
第20頁/共285頁§4.3.1PLC用戶存儲區(qū)的分類及功能(2/2)
第21頁/共285頁§4.3.2指令操作數(shù)
指令操作數(shù)(又稱編程元件)一般在用戶存儲區(qū)中,操作數(shù)由操作標(biāo)識符和參數(shù)組成。操作標(biāo)識符由主標(biāo)識符和輔助標(biāo)識符組成,主標(biāo)識符用來指定操作數(shù)所使用的存儲區(qū)類型,輔助標(biāo)識符則用來指定操作數(shù)的單位(如:位、字節(jié)、字、雙字等)。
主標(biāo)識符有:I(輸入過程映像寄存器、Q(輸出過程映像寄存器)、M(位存儲器)、PI(外部輸入寄存器)、PQ(外部輸出寄存器)、T(定時(shí)器)、C(計(jì)數(shù)器)、DB(數(shù)據(jù)塊寄存器)和L(本地?cái)?shù)據(jù)寄存器);
輔助標(biāo)識符有:X(位)、B(字節(jié))、W(字或2B)、D(2DW或4B)。第22頁/共285頁§4.3.3尋址方式
所謂尋址方式就是指令執(zhí)行時(shí)獲取操作數(shù)的方式,可以直接或間接方式給出操作數(shù)。S7-300有4種尋址方式:立即尋址存儲器直接尋址存儲器間接尋址寄存器間接尋址第23頁/共285頁1.立即尋址
立即尋址是對常數(shù)或常量的尋址方式,其特點(diǎn)是操作數(shù)直接表示在指令中,或以惟一形式隱含在指令中。下面各條指令操作數(shù)均采用了立即尋址方式,其中“//”后面的內(nèi)容為指令的注釋部分,對指令沒有任何影響。第24頁/共285頁2.存儲器直接尋址
存儲器直接尋址,簡稱直接尋址。該尋址方式在指令中直接給出操作數(shù)的存儲單元地址。存儲單元地址可用符號地址(如SB1、KM等)或絕對地址(如I0.0、Q4.1等)。下面各條指令操作數(shù)均采用了直接尋址方式。第25頁/共285頁3.存儲器間接尋址(1/3)
存儲器間接尋址,簡稱間接尋址。該尋址方式在指令中以存儲器的形式給出操作數(shù)所在存儲器單元的地址,也就是說該存儲器的內(nèi)容是操作數(shù)所在存儲器單元的地址。該存儲器一般稱為地址指針,在指令中需寫在方括號“[]”內(nèi)。地址指針可以是字或雙字,對于地址范圍小于65535的存儲器可以用字指針;對于其他存儲器則要使用雙字指針。第26頁/共285頁4.存儲器間接尋址(2/3)【例4-3-1】
存儲器間接尋址的單字格式的指針尋址。第27頁/共285頁4.存儲器間接尋址(3/3)
存儲器間接尋址的雙字指針的格式如圖所示?!纠?-3-2】
存儲器間接尋址的雙字格式的指針尋址。第28頁/共285頁5.寄存器間接尋址(1/4)
寄存器間接尋址,簡稱寄存器尋址。該尋址方式在指令中通過地址寄存器和偏移量間接獲取操作數(shù),其中的地址寄存器及偏移量必須寫在方括號“[]”內(nèi)。在S7-300中有兩個(gè)地址寄存器AR1和AR2,用地址寄存器的內(nèi)容加上偏移量形成地址指針,并指向操作數(shù)所在的存儲器單元。地址寄存器的地址指針有兩種格式,其長度均為雙字,指針格式如圖所示。第29頁/共285頁5.寄存器間接尋址(2/4)
第一種地址指針格式適用于在確定的存儲區(qū)內(nèi)尋址,即區(qū)內(nèi)寄存器間接尋址。
【例4-3-3】區(qū)內(nèi)寄存器間接尋址。第30頁/共285頁5.寄存器間接尋址(3/4)
第二種地址指針格式適用于區(qū)域間寄存器間接尋址。
【例4-3-4】區(qū)域間寄存器間接尋址。第31頁/共285頁5.寄存器間接尋址(4/4)
第一種地址指針格式包括被尋址數(shù)據(jù)所在存儲單元地址的字節(jié)編號和位編號,至于對哪個(gè)存儲區(qū)尋址,則必須在指令中明確給出。這種格式適用于在確定的存儲區(qū)內(nèi)尋址,即區(qū)內(nèi)寄存器間接尋址。第二種地址指針格式包含了數(shù)據(jù)所在存儲區(qū)的說明位(存儲區(qū)域標(biāo)識位),可通過改變標(biāo)識位實(shí)現(xiàn)跨區(qū)域?qū)ぶ罚瑓^(qū)域標(biāo)識由位26~24確定。這種指針格式適用于區(qū)域間寄存器間接尋址。第32頁/共285頁§4.4位邏輯指令
位邏輯指令處理的對象為二進(jìn)制位信號。位邏輯指令掃描信號狀態(tài)“1”和“0”位,并根據(jù)布爾邏輯對它們進(jìn)行組合,所產(chǎn)生的結(jié)果(“1”或“0”)稱為邏輯運(yùn)算結(jié)果,存儲在狀態(tài)字的“RLO”中?!?.4.1觸點(diǎn)與線圈§4.4.2基本邏輯指令§4.4.3置位和復(fù)位指令§4.4.4RS和SR觸發(fā)器§4.4.5跳變沿檢測指令第33頁/共285頁§4.4.1觸點(diǎn)與線圈
在LAD(梯形圖)程序中,通常使用類似繼電器控制電路中的觸點(diǎn)符號及線圈符號來表示PLC的位元件,被掃描的操作數(shù)(用絕對地址或符號地址表示)則標(biāo)注在觸點(diǎn)符號的上方,如圖所示。第34頁/共285頁1.常開觸點(diǎn)
對于常開觸點(diǎn)(動(dòng)合觸點(diǎn)),則對“1”掃描相應(yīng)操作數(shù)。在PLC中規(guī)定:若操作數(shù)是“1”則常開觸點(diǎn)“動(dòng)作”,即認(rèn)為是“閉合”的;若操作數(shù)是“0”,則常開觸點(diǎn)“復(fù)位”,即觸點(diǎn)仍處于打開的狀態(tài)。常開觸點(diǎn)所使用的操作數(shù)是:I、Q、M、L、D、T、C。第35頁/共285頁2.常閉觸點(diǎn)
常閉觸點(diǎn)(動(dòng)斷觸點(diǎn))則對“0”掃描相應(yīng)操作數(shù)。在PLC中規(guī)定:若操作數(shù)是“1”則常閉觸點(diǎn)“動(dòng)作”,即觸點(diǎn)“斷開”;若操作數(shù)是“0”,則常閉觸點(diǎn)“復(fù)位”,即觸點(diǎn)仍保持閉合。常閉觸點(diǎn)所使用的操作數(shù)是:I、Q、M、L、D、T、C。第36頁/共285頁3.輸出線圈(賦值指令)
輸出線圈與繼電器控制電路中的線圈一樣,如果有電流(信號流)流過線圈(RLO=“1”),則被驅(qū)動(dòng)的操作數(shù)置“1”;如果沒有電流流過線圈(RLO=“0”),則被驅(qū)動(dòng)的操作數(shù)復(fù)位(置“0”)。輸出線圈只能出現(xiàn)在梯形圖邏輯串的最右邊。輸出線圈等同于STL程序中的賦值指令(用等于號“=”表示),所使用的操作數(shù)可以是:Q、M、L、D。第37頁/共285頁4.中間輸出
在梯形圖設(shè)計(jì)時(shí),如果一個(gè)邏輯串很長不便于編輯時(shí),可以將邏輯串分成幾個(gè)段,前一段的邏輯運(yùn)算結(jié)果(RLO)可作為中間輸出,存儲在位存儲器(I、Q、M、L或D)中,該存儲位可以當(dāng)作一個(gè)觸點(diǎn)出現(xiàn)在其他邏輯串中。中間輸出只能放在梯形圖邏輯串的中間,而不能出現(xiàn)在最左端或最右端。與下面程序等效第38頁/共285頁§4.4.2基本邏輯指令
基本邏輯指令包括:“與”指令“與非”指令“或”指令“或非”指令“異或”指令“異或非”指令邏輯塊的操作信號流取反指令第39頁/共285頁1.邏輯“與”指令
邏輯“與”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯“與”運(yùn)算。第40頁/共285頁2.邏輯“與非”指令
邏輯“與非”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯“與非”運(yùn)算。第41頁/共285頁3.邏輯“或”指令
邏輯“或”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯“或”運(yùn)算。第42頁/共285頁4.邏輯“或非”指令
邏輯“或非”指令使用的操作數(shù)可以是:I、Q、M、L、D、T、C。有2種指令形式(STL和FBD),用LAD也可以實(shí)現(xiàn)邏輯“或非”運(yùn)算。第43頁/共285頁5.邏輯“異或”指令
第44頁/共285頁6.邏輯“異或非”指令
第45頁/共285頁7.邏輯塊的操作
第46頁/共285頁8.信號流取反指令
信號流取反指令的作用就是對邏輯串的RLO值進(jìn)行取反。指令格式及示例見表4-13。當(dāng)輸入位I0.0和I0.1同時(shí)動(dòng)作時(shí),Q4.0信號狀態(tài)為“0”;否則,Q4.0信號狀態(tài)為“1”。第47頁/共285頁§4.4.3置位和復(fù)位指令
置位(S)和復(fù)位(R)指令根據(jù)RLO的值來決定操作數(shù)的信號狀態(tài)是否改變,對于置位指令,一旦RLO為“1”,則操作數(shù)的狀態(tài)置“1”,即使RLO又變?yōu)椤?”,輸出仍保持為“1”;若RLO為“0”,則操作數(shù)的信號狀態(tài)保持不變。對于復(fù)位操作,一旦RLO為“1”,則操作數(shù)的狀態(tài)置“0”,即使RLO又變?yōu)椤?”,輸出仍保持為“0”;若RLO為“0”,則操作數(shù)的信號狀態(tài)保持不變。這一特性又被稱為靜態(tài)的置位和復(fù)位,相應(yīng)地,賦值指令被稱為動(dòng)態(tài)賦值。第48頁/共285頁第49頁/共285頁§4.4.4RS和SR觸發(fā)器RS觸發(fā)器為“置位優(yōu)先”型觸發(fā)器(當(dāng)R和S驅(qū)動(dòng)信號同時(shí)為“1”時(shí),觸發(fā)器最終為置位狀態(tài));SR觸發(fā)器為“復(fù)位優(yōu)先”型觸發(fā)器(當(dāng)R和S驅(qū)動(dòng)信號同時(shí)為“1”時(shí),觸發(fā)器最終為復(fù)位狀態(tài))。
RS觸發(fā)器和SR觸發(fā)器的“位地址”、置位(S)、復(fù)(S)及輸出(Q)所使用的操作數(shù)可以是:I、Q、M、L、D。第50頁/共285頁1.RS觸發(fā)器第51頁/共285頁2.SR觸發(fā)器第52頁/共285頁3.RS觸發(fā)器和SR觸發(fā)器的工作時(shí)序示例梯形圖程序工作時(shí)序
第53頁/共285頁§4.4.5跳變沿檢測指令STEP7中有2類跳變沿檢測指令,一種是對RLO的跳變沿檢測的指令,另一種是對觸點(diǎn)的跳變沿直接檢測的梯形圖方塊指令。RLO上升沿檢測指令RLO下降沿檢測指令觸點(diǎn)信號上升沿檢測指令觸點(diǎn)信號下降沿檢測指令【例4-4-2】
邊沿檢測指令的應(yīng)用第54頁/共285頁1.RLO上升沿檢測指令第55頁/共285頁2.RLO下降沿檢測指令第56頁/共285頁3.RLO邊沿檢測指令的工作時(shí)序工作時(shí)序
示例程序
第57頁/共285頁4.觸點(diǎn)信號上升沿檢測指令第58頁/共285頁5.觸點(diǎn)信號下降沿檢測指令第59頁/共285頁6.觸點(diǎn)信號邊沿檢測指令的工作時(shí)序工作時(shí)序
示例程序
第60頁/共285頁§4.5定時(shí)器與計(jì)數(shù)器指令§4.5.1定時(shí)器指令§4.5.2計(jì)數(shù)器指令§4.5.3CPU時(shí)鐘存儲器
第61頁/共285頁§4.5.1定時(shí)器指令S_PULSE(脈沖S5定時(shí)器)S_PEXT(擴(kuò)展脈沖S5定時(shí)器)S_ODT(接通延時(shí)S5定時(shí)器)S_ODTS(保持型接通延時(shí)S5定時(shí)器)S_OFFDT(斷電延時(shí)S5定時(shí)器)第62頁/共285頁1.S_PULSE(脈沖S5定時(shí)器)(1/3)
脈沖定時(shí)器的梯形圖及功能塊圖指令第63頁/共285頁1.S_PULSE(脈沖S5定時(shí)器)(2/3)
脈沖定時(shí)器的線圈指令第64頁/共285頁1.S_PULSE(脈沖S5定時(shí)器)(3/3)
工作時(shí)序示例程序第65頁/共285頁
【例4-5-1】
脈沖定時(shí)器應(yīng)用:優(yōu)先搶答器設(shè)計(jì)。第66頁/共285頁
【例4-5-1】
設(shè)計(jì)說明:參賽者要搶答主持人所提問題時(shí),需搶先按下桌上的按鈕;指示燈亮后需待主持人按下“復(fù)位”鍵R后才熄燈;對初中班學(xué)生照顧,只要按下SB11和SB12中任一個(gè)按鈕燈HL1都亮;對高三班學(xué)生限制,只有SB31和SB32都按下時(shí)燈HL3才亮;若在主持人按下“開始”按鈕S后10s內(nèi)有搶答按鈕壓下,則電磁鐵YC得電,使彩球搖動(dòng),以示競賽者得到一次幸運(yùn)的機(jī)會;如果定時(shí)到仍未有搶答,則禁止繼續(xù)搶答。第67頁/共285頁端子接線圖
【例4-5-1】第68頁/共285頁I/O地址分配表【例4-5-1】第69頁/共285頁控制程序:建立允許搶答和禁止搶答標(biāo)志【例4-5-1】第70頁/共285頁設(shè)置搶答定時(shí)器
【例4-5-1】初中組搶答控制
第71頁/共285頁【例4-5-1】高一組搶答控制
高三組搶答控制
第72頁/共285頁2.S_PEXT(擴(kuò)展脈沖S5定時(shí)器)(1/3)
擴(kuò)據(jù)脈沖S5定時(shí)器LAD及FBD指令第73頁/共285頁2.S_PEXT(擴(kuò)展脈沖S5定時(shí)器)(2/3)
擴(kuò)據(jù)脈沖S5定時(shí)器線圈指令第74頁/共285頁2.S_PEXT(擴(kuò)展脈沖S5定時(shí)器)(3/3)
示例程序工作波形第75頁/共285頁
【例4-5-2】
擴(kuò)展脈沖定時(shí)器應(yīng)用——電動(dòng)機(jī)延時(shí)自動(dòng)關(guān)閉控制??刂埔螅喊磩?dòng)起動(dòng)按鈕S1(I0.0),電動(dòng)機(jī)M(Q4.0)立即起動(dòng),延時(shí)5分鐘以后自動(dòng)關(guān)閉。起動(dòng)后按動(dòng)停止按鈕S2(I0.1),電動(dòng)機(jī)立即停機(jī)。第76頁/共285頁【例4-5-2】控制程序(LAD)
控制程序(STL)
第77頁/共285頁3.S_ODT(接通延時(shí)S5定時(shí)器)(1/3)
接通延時(shí)S5定時(shí)器LAD及FBD指令第78頁/共285頁3.S_ODT(接通延時(shí)S5定時(shí)器)(2/3)
接通延時(shí)S5定時(shí)器線圈指令第79頁/共285頁3.S_ODT(接通延時(shí)S5定時(shí)器)(3/3)
示例程序工作波形第80頁/共285頁
【例4-5-3】
接通延時(shí)定時(shí)器和脈沖定時(shí)器應(yīng)用——用定時(shí)器構(gòu)成一脈沖發(fā)生器,當(dāng)滿足一定條件時(shí),能夠輸出一定頻率和一定占空比的脈沖信號。
工藝要求:當(dāng)按鈕S1(I0.0)按下時(shí),輸出指示燈H1(Q4.0)以滅2s,亮1s規(guī)律交替進(jìn)行。第81頁/共285頁【例4-5-3】控制程序(使用接通延時(shí)定時(shí)器)
控制程序(使用脈沖定時(shí)器)
第82頁/共285頁4.S_ODTS(保持型接通延時(shí)S5定時(shí)器)(1/3)
保持型接通延時(shí)S5定時(shí)器LAD及FBD指令第83頁/共285頁4.S_ODTS(保持型接通延時(shí)S5定時(shí)器)(2/3)
保持型接通延時(shí)S5定時(shí)器線圈指令第84頁/共285頁4.S_ODTS(保持型接通延時(shí)S5定時(shí)器)(3/3)
示例程序工作波形第85頁/共285頁5.S_OFFDT(斷電延時(shí)S5定時(shí)器)(1/3)
斷電延時(shí)S5定時(shí)器LAD及FBD指令第86頁/共285頁5.S_OFFDT(斷電延時(shí)S5定時(shí)器)(2/3)
斷電延時(shí)S5定時(shí)器線圈指令第87頁/共285頁5.S_OFFDT(斷電延時(shí)S5定時(shí)器)(3/3)
示例程序工作波形第88頁/共285頁§4.5.2計(jì)數(shù)器指令S7-300的計(jì)數(shù)器都是16位的,因此每個(gè)計(jì)數(shù)器占用該區(qū)域2個(gè)字節(jié)空間,用來存儲計(jì)數(shù)值。不同的CPU模板,用于計(jì)數(shù)器的存儲區(qū)域也不同,最多允許使用64~512個(gè)計(jì)數(shù)器。計(jì)數(shù)器的地址編號:C0~C511。S_CUD(加/減計(jì)數(shù)器)S_CU(加計(jì)數(shù)器)S_CD(減計(jì)數(shù)器)計(jì)數(shù)器線圈指令第89頁/共285頁1.S_CUD(加/減計(jì)數(shù)器)塊圖指令第90頁/共285頁2.S_CU(加計(jì)數(shù)器)塊圖指令第91頁/共285頁3.S_CD(減計(jì)數(shù)器)塊圖指令第92頁/共285頁4.計(jì)數(shù)器的線圈指令
除了前面介紹的塊圖形式的計(jì)數(shù)器指令以外,S7-300系統(tǒng)還為用戶準(zhǔn)備了LAD環(huán)境下的線圈形式的計(jì)數(shù)器。這些指令有計(jì)數(shù)器初值預(yù)置指令SC、加計(jì)數(shù)器指令CU和減計(jì)數(shù)器指令CD。第93頁/共285頁加計(jì)數(shù)器線圈指令應(yīng)用示例
初值預(yù)置SC指令若與CU指令配合可實(shí)現(xiàn)S_CU指令的功能。第94頁/共285頁減計(jì)數(shù)器線圈指令應(yīng)用示例SC指令若與CD指令配合可實(shí)現(xiàn)S_CD指令的功能。第95頁/共285頁加/減計(jì)數(shù)器線圈指令應(yīng)用示例SC指令若與CU和CD配合可實(shí)現(xiàn)S_CUD的功能。第96頁/共285頁§4.5.3訪問CPU的時(shí)鐘存儲器
要使用該功能,在硬件配置時(shí)需要設(shè)置CPU的屬性,其中有一個(gè)選項(xiàng)為ClockMemory,選中選擇框就可激活該功能。第97頁/共285頁設(shè)置CPU的時(shí)鐘存儲器
在MemoryByte區(qū)域輸入想為該項(xiàng)功能設(shè)置的MB的地址,如需要使用MB10,則直接輸入10。ClockMemory的功能是對所定義的MB的各個(gè)位周期性地改變其二進(jìn)制的值(占空比為1:1)。ClockMemory的各位的周期及頻率見表。第98頁/共285頁
【例4-5-5】
時(shí)鐘存儲器與計(jì)數(shù)器的應(yīng)用。當(dāng)定時(shí)器不夠用時(shí),可以將計(jì)數(shù)器擴(kuò)展為定時(shí)器。圖中分別給出了用減計(jì)數(shù)器擴(kuò)展定時(shí)器的控制程序,程序中使用了CPU的時(shí)鐘存儲器,設(shè)置MB10為時(shí)鐘存儲器,由表4-39可知M10.0的變化周期為0.1s。第99頁/共285頁§4.6數(shù)字指令§4.6.1裝入與傳送指令§4.6.2轉(zhuǎn)換指令§4.6.3比較指令§4.6.4算數(shù)運(yùn)算指令§4.6.5字邏輯運(yùn)算指令§4.6.6移位指令§4.6.7數(shù)字指令綜合應(yīng)用
第100頁/共285頁§4.6.1裝入和傳送指令
裝入指令(L)和傳送指令(T),可以對輸入或輸出模塊與存儲區(qū)之間的信息交換進(jìn)行編程。對累加器1的裝入指令對累加器1的傳送指令狀態(tài)字與累加器1之間的裝入和傳送指令與地址寄存器有關(guān)的裝入和傳送指令LC(定時(shí)器/計(jì)數(shù)器裝載指令)MOVE指令第101頁/共285頁1.對累加器1的裝入指令第102頁/共285頁2.對累加器1的傳送指令T指令可以將累加器1的內(nèi)容復(fù)制到被尋址的操作數(shù),所復(fù)制的字節(jié)數(shù)取決于目標(biāo)地址的類型(字節(jié)、字或雙字),指令格式如下:T 操作數(shù)其中的操作數(shù)可以為直接I/O區(qū)(存儲類型為PQ)、數(shù)據(jù)存儲區(qū)或過程映像輸出表的相應(yīng)地址(存儲類型為Q)。第103頁/共285頁3.狀態(tài)字與累加器1之間的裝入和傳送指令LSTW(將狀態(tài)字裝入累加器1)將狀態(tài)字裝入累加器1中,指令的執(zhí)行與狀態(tài)位無關(guān),而且對狀態(tài)字沒有任何影響。指令格式如下:L STWTSTW(將累加器1的內(nèi)容傳送到狀態(tài)字)使用TSTW指令可以將累加器1的位0~8傳送到狀態(tài)字的相應(yīng)位,指令的執(zhí)行與狀態(tài)位無關(guān),指令格式如下:T STW第104頁/共285頁4.與地址寄存器有關(guān)的裝入和傳送指令(1/4)
LAR1(將操作數(shù)的內(nèi)容裝入地址寄存器AR1)第105頁/共285頁4.與地址寄存器有關(guān)的裝入和傳送指令(2/4)
LAR2(將操作數(shù)的內(nèi)容裝入地址寄存器2)使用LAR2指令可以將操作數(shù)的內(nèi)容(32位指針)裝入地址寄存器AR2,指令格式同LAR1,其中的操作數(shù)可以是累加器1、指針型常數(shù)(P#)、存儲雙字(MD)、本地?cái)?shù)據(jù)雙字(LD)、數(shù)據(jù)雙字(DBD)或背景數(shù)據(jù)雙字(DID),但不能用AR1。第106頁/共285頁4.與地址寄存器有關(guān)的裝入和傳送指令(3/4)
TAR1(將地址寄存器1的內(nèi)容傳送到操作數(shù))第107頁/共285頁4.與地址寄存器有關(guān)的裝入和傳送指令(4/4)
TAR2(將地址寄存器2的內(nèi)容傳送到操作數(shù))使用TAR2指令可以將地址寄存器AR1的內(nèi)容(32位指針)傳送給被尋址的操作數(shù),指令格式同TAR1。其中的操作數(shù)可以是累加器1、存儲雙字(MD)、本地?cái)?shù)據(jù)雙字(LD)、數(shù)據(jù)雙字(DBD)、背景數(shù)據(jù)雙字(DID),但不能用AR1。CAR(交換地址寄存器1和地址寄存器2的內(nèi)容)使用CAR指令可以交換地址寄存器AR1和地址寄存器AR2的內(nèi)容,指令不需要指定操作數(shù)。指令的執(zhí)行與狀態(tài)位無關(guān),而且對狀態(tài)字沒有任何影響。第108頁/共285頁5.LC(定時(shí)器/計(jì)數(shù)器裝載指令
使用LC指令可以在累加器1的內(nèi)容保存到累加器2中之后,將指定定時(shí)器字中當(dāng)前時(shí)間值和時(shí)基以BCD碼(0~999)格式裝入到累加器1中,或?qū)⒅付ㄓ?jì)數(shù)器的當(dāng)前計(jì)數(shù)值以BCD碼(0~999)格式裝入到累加器1中。指令格式如下:LC <定時(shí)器/計(jì)數(shù)器>第109頁/共285頁6.MOVE指令MOVE指令為功能框形式的傳送指令,能夠復(fù)制字節(jié)、字或雙字?jǐn)?shù)據(jù)對象。應(yīng)用中IN和OUT端操作數(shù)可以是常數(shù)、I、Q、M、D、L等類型,但必須在寬度上匹配。第110頁/共285頁§4.6.2轉(zhuǎn)換指令
轉(zhuǎn)換指令是將累加器1中的數(shù)據(jù)進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換,轉(zhuǎn)換結(jié)果仍放在累加器1中。在STEP7中,可以實(shí)現(xiàn)BCD碼與整數(shù)、整數(shù)與長整數(shù)、長整數(shù)與實(shí)數(shù)、整數(shù)的反碼、整數(shù)的補(bǔ)碼、實(shí)數(shù)求反等數(shù)據(jù)轉(zhuǎn)換操作。BCD碼和整數(shù)到其他類型轉(zhuǎn)換指令整數(shù)和實(shí)數(shù)的碼型變換指令實(shí)數(shù)取整指令累加器1調(diào)整指令第111頁/共285頁1.BCD碼和整數(shù)到其他類型轉(zhuǎn)換指令(1/3)
STL形式的指令(1)第112頁/共285頁1.BCD碼和整數(shù)到其他類型轉(zhuǎn)換指令(2/3)STL形式的指令(2)第113頁/共285頁1.BCD碼和整數(shù)到其他類型轉(zhuǎn)換指令(3/3)LAD和FBD形式的指令第114頁/共285頁2.整數(shù)和實(shí)數(shù)的碼型變換指令(1/2)
STL形式的指令第115頁/共285頁2.整數(shù)和實(shí)數(shù)的碼型變換指令(2/2)
LAD和FBD形式的指令第116頁/共285頁3.實(shí)數(shù)取整指令(1/2)
STL形式的指令第117頁/共285頁3.實(shí)數(shù)取整指令(2/2)
LAD和FBD形式的指令第118頁/共285頁4.累加器1調(diào)整指令第119頁/共285頁§4.6.3比較指令
比較指令可完成整數(shù)、長整數(shù)或32位浮點(diǎn)數(shù)(實(shí)數(shù))的相等、不等、大于、小于、大于或等于、小于或等于等比較。整數(shù)比較指令長整數(shù)比較指令實(shí)數(shù)比較指令第120頁/共285頁1.整數(shù)比較指令第121頁/共285頁1.整數(shù)比較指令(示例)第122頁/共285頁2.長整數(shù)比較指令第123頁/共285頁2.長整數(shù)比較指令(示例)第124頁/共285頁3.實(shí)數(shù)比較指令第125頁/共285頁3.實(shí)數(shù)比較指令(示例)
第126頁/共285頁§4.6.4算數(shù)運(yùn)算指令
算術(shù)運(yùn)算指令可完成整數(shù)、長整數(shù)及實(shí)數(shù)的加、減、乘、除、求余、求絕對值等基本算數(shù)運(yùn)算;以及32位浮點(diǎn)數(shù)的平方、平方根、自然對數(shù)、基于e的指數(shù)運(yùn)算及三角函數(shù)等擴(kuò)展算數(shù)運(yùn)算?;舅阈g(shù)運(yùn)算指令擴(kuò)展算術(shù)運(yùn)算指令第127頁/共285頁1.基本算數(shù)運(yùn)算指令(整數(shù)運(yùn)算)
第128頁/共285頁1.基本算數(shù)運(yùn)算指令(長整數(shù)運(yùn)算)
第129頁/共285頁1.基本算數(shù)運(yùn)算指令(實(shí)數(shù)運(yùn)算)
第130頁/共285頁【例4-6-1】16位整數(shù)的算術(shù)運(yùn)算指令應(yīng)用。第131頁/共285頁【例4-6-1】16位整數(shù)的算術(shù)運(yùn)算指令應(yīng)用?!纠?-6-2】求輸入雙字ID10的內(nèi)容與常數(shù)32相除的余數(shù),結(jié)果保存到MD20中。第132頁/共285頁2.擴(kuò)展算數(shù)運(yùn)算指令第133頁/共285頁§4.6.5字邏輯運(yùn)算指令
字邏輯運(yùn)算指令可對兩個(gè)16位(WORD)或32位(DWORD)的二進(jìn)制數(shù)據(jù),逐位進(jìn)行邏輯與、邏輯或、邏輯異或運(yùn)算。對于STL形式的字邏輯運(yùn)算指令,可對累加器1和累加器2中的字或雙字?jǐn)?shù)據(jù)進(jìn)行邏輯運(yùn)算,結(jié)果保存在累加器1中,若結(jié)果不為0,則對狀態(tài)標(biāo)志位CC1置“1”,否則對CC1置“0”。對于LAD和FBD形式的字邏輯運(yùn)算指令,由參數(shù)IN1和IN2提供參與運(yùn)算的兩個(gè)數(shù)據(jù),運(yùn)算結(jié)果保存在由OUT指定的存儲區(qū)中。第134頁/共285頁字邏輯運(yùn)算指令格式第135頁/共285頁§4.6.6移位指令
移位指令有2種類型:基本移位指令可對無符號整數(shù)、有符號長整數(shù)、字或雙字?jǐn)?shù)據(jù)進(jìn)行移位操作;循環(huán)移位指令可對雙字?jǐn)?shù)據(jù)進(jìn)行循環(huán)移位和累加器1帶CC1的循環(huán)移位操作。有符號右移指令字移位指令雙字移位指令雙字循環(huán)移位指令帶累加器循環(huán)移位指令第136頁/共285頁1.有符號右移指令格式第137頁/共285頁2.字移位指令格式第138頁/共285頁3.雙字移位指令格式第139頁/共285頁4.雙字循環(huán)移位指令格式第140頁/共285頁5.帶累加器循環(huán)移位指令格式第141頁/共285頁§4.7控制指令
控制指令可控制程序的執(zhí)行順序,使得CPU能根據(jù)不同的情況執(zhí)行不同的程序??刂浦噶钣?類:§4.7.1邏輯控制指令§4.7.2程序控制指令§4.7.3主控繼電器指令第142頁/共285頁§4.7.1邏輯控制指令
邏輯控制指令是指邏輯塊內(nèi)的跳轉(zhuǎn)和循環(huán)指令,這些指令可以中斷原有的線性程序掃描,并跳轉(zhuǎn)到目標(biāo)地址處重新執(zhí)行線性程序掃描。目標(biāo)地址由跳轉(zhuǎn)指令后面的標(biāo)號指定,該地址標(biāo)號指出程序要跳往何處,可向前跳轉(zhuǎn),也可以向后跳轉(zhuǎn),最大跳轉(zhuǎn)距離為-32768或32767字。無條件跳轉(zhuǎn)指令多分支跳轉(zhuǎn)指令條件跳轉(zhuǎn)指令循環(huán)指令第143頁/共285頁1.無條件跳轉(zhuǎn)指令
無條件跳轉(zhuǎn)指令JU執(zhí)行時(shí),將直接中斷當(dāng)前的線性程序掃描,并跳轉(zhuǎn)到由指令后面的標(biāo)號所指定的目標(biāo)地址處重新執(zhí)行線性程序掃描。第144頁/共285頁【例4-7-1】
無條件跳轉(zhuǎn)指令的使用。當(dāng)程序執(zhí)行到無條件跳轉(zhuǎn)指令時(shí),將直接跳轉(zhuǎn)到L1處執(zhí)行。第145頁/共285頁2.多分支跳轉(zhuǎn)指令
多分支跳轉(zhuǎn)指令JL的指令格式如下:JL<標(biāo)號>
如果累加器1低字中低字節(jié)的內(nèi)容小于JL指令和由JL指令所指定的標(biāo)號之間的JU指令的數(shù)量,JL指令就會跳轉(zhuǎn)到其中一條JU處執(zhí)行,并由JU指令進(jìn)一步跳轉(zhuǎn)到目標(biāo)地址;如果累加器1低字中低字節(jié)的內(nèi)容為0,則直接執(zhí)行JL指令下面的第一條JU指令;如果累加器1低字中低字節(jié)的內(nèi)容為1,則直接執(zhí)行JL指令下面的第二條JU指令;如果跳轉(zhuǎn)的目的地的數(shù)量太大,則JL指令跳轉(zhuǎn)到目的地列表中最后一個(gè)JU指令之后的第一個(gè)指令。第146頁/共285頁【例4-7-2】
多分支跳轉(zhuǎn)指令的使用。第147頁/共285頁3.條件跳轉(zhuǎn)指令第148頁/共285頁【例4-7-3】
條件跳轉(zhuǎn)指令的使用。
程序示例如圖4-44所示。當(dāng)I0.0與I0.1同時(shí)為“1”時(shí),則跳轉(zhuǎn)到L2處執(zhí)行;否則,到L1處執(zhí)行(順序執(zhí)行)。第149頁/共285頁4.循環(huán)指令
循環(huán)指令的格式如下:LOOP<標(biāo)號>
使用循環(huán)指令(LOOP)可以多次重復(fù)執(zhí)行特定的程序段,由累加器1確定重復(fù)執(zhí)行的次數(shù),即以累加器1的低字為循環(huán)計(jì)數(shù)器。LOOP指令執(zhí)行時(shí),將累加器1低字中的值減1,如果不為0,則繼續(xù)循環(huán)過程,否則執(zhí)行LOOP指令后面的指令。循環(huán)體是指循環(huán)標(biāo)號和LOOP指令間的程序段。第150頁/共285頁【例4-7-4】
循環(huán)指令的使用。利用循環(huán)指令可以完成有規(guī)律的重復(fù)計(jì)算過程,下面是求階乘“8!”的示例程序:第151頁/共285頁§4.7.2程序控制指令
程序控制指令是指功能塊(FB、FC、SFB、SFC)調(diào)用指令和邏輯塊(OB,F(xiàn)B,F(xiàn)C)結(jié)束指令。調(diào)用塊或結(jié)束塊可以是有條件的或是無條件的。基本控制指令子程序調(diào)用指令
CALL指令可以調(diào)用用戶編寫的功能塊或操作系統(tǒng)提供的功能塊,CALL指令的操作數(shù)是功能塊類型及其編號,當(dāng)調(diào)用的功能塊是FB塊時(shí)還要提供相應(yīng)的背景數(shù)據(jù)塊DB。使用CALL指令可以為被調(diào)用功能塊中的形參賦以實(shí)際參數(shù),調(diào)用時(shí)應(yīng)保證實(shí)參與形參的數(shù)據(jù)類型一致。第152頁/共285頁1.基本控制指令第153頁/共285頁2.子程序調(diào)用指令第154頁/共285頁§4.7.3主控繼電器指令
主控繼電器(MCR)是一種繼電器梯形圖邏輯的主開關(guān),用于控制電流(能流)的通斷。第155頁/共285頁第156頁/共285頁第5章S7程序結(jié)構(gòu)與程序設(shè)計(jì)§5.1S7CPU中的程序§5.2
數(shù)據(jù)塊中的數(shù)據(jù)存儲§5.3
邏輯塊(FC和FB)的結(jié)構(gòu)及編程§5.4
編輯并調(diào)用無參功能(FC)——分部程序設(shè)計(jì)§5.5
編輯并調(diào)用有參功能(FC)——結(jié)構(gòu)化程序設(shè)計(jì)§5.6
編輯并調(diào)用無靜態(tài)參數(shù)的功能塊(FB)§5.7
編輯并調(diào)用有靜態(tài)參數(shù)的功能塊(FB)§5.8
使用多重背景——結(jié)構(gòu)化程序設(shè)計(jì)第157頁/共285頁§5.1S7CPU中的程序§5.1.1用戶程序中的塊結(jié)構(gòu)§5.1.2用戶程序結(jié)構(gòu)§5.1.3I/O過程映像§5.1.4程序循環(huán)執(zhí)行第158頁/共285頁§5.1.1用戶程序中的塊結(jié)構(gòu)第159頁/共285頁§5.1.2用戶程序結(jié)構(gòu)線性程序(線性編程)分部式程序(分部編程、分塊編程)結(jié)構(gòu)化程序(結(jié)構(gòu)化編程或模塊化編程)第160頁/共285頁1.線性程序(線性編程)
所謂線性程序結(jié)構(gòu),就是將整個(gè)用戶程序連續(xù)放置在一個(gè)循環(huán)程序塊(OB1)中,塊中的程序按順序執(zhí)行,CPU通過反復(fù)執(zhí)行OB1來實(shí)現(xiàn)自動(dòng)化控制任務(wù)。這種結(jié)構(gòu)和PLC所代替的硬接線繼電器控制類似,CPU逐條地處理指令。事實(shí)上所有的程序都可以用線性結(jié)構(gòu)實(shí)現(xiàn),不過,線性結(jié)構(gòu)一般適用于相對簡單的程序編寫。第161頁/共285頁2.分部式程序(分部編程、分塊編程)
所謂分部程序,就是將整個(gè)程序按任務(wù)分成若干個(gè)部分,并分別放置在不同的功能(FC)、功能塊(FB)及組織塊中,在一個(gè)塊中可以進(jìn)一步分解成段。在組織塊OB1中包含按順序調(diào)用其他塊的指令,并控制程序執(zhí)行。在分部程序中,既無數(shù)據(jù)交換,也不存在重復(fù)利用的程序代碼。功能(FC)和功能塊(FB)不傳遞也不接收參數(shù),分部程序結(jié)構(gòu)的編程效率比線性程序有所提高,程序測試也較方便,對程序員的要求也不太高。對不太復(fù)雜的控制程序可考慮采用這種程序結(jié)構(gòu)。第162頁/共285頁3.結(jié)構(gòu)化程序(結(jié)構(gòu)化編程或模塊化編程)
所謂結(jié)構(gòu)化程序,就是處理復(fù)雜自動(dòng)化控制任務(wù)的過程中,為了使任務(wù)更易于控制,常把過程要求類似或相關(guān)的功能進(jìn)行分類,分割為可用于幾個(gè)任務(wù)的通用解決方案的小任務(wù),這些小任務(wù)以相應(yīng)的程序段表示,稱為塊(FC或FB)。OB1通過調(diào)用這些程序塊來完成整個(gè)自動(dòng)化控制任務(wù)。結(jié)構(gòu)化程序的特點(diǎn)是每個(gè)塊(FC或FB)在OB1中可能會被多次調(diào)用,以完成具有相同過程工藝要求的不同控制對象。這種結(jié)構(gòu)可簡化程序設(shè)計(jì)過程、減小代碼長度、提高編程效率,比較適合于較復(fù)雜自動(dòng)化控制任務(wù)的設(shè)計(jì)。第163頁/共285頁§5.1.3I/O過程映像第164頁/共285頁§5.1.4程序循環(huán)執(zhí)行第165頁/共285頁§5.2數(shù)據(jù)塊中的數(shù)據(jù)存儲§5.2.1數(shù)據(jù)存儲區(qū)§5.2.2數(shù)據(jù)塊§5.2.3數(shù)據(jù)塊的數(shù)據(jù)結(jié)構(gòu)§5.2.4建立數(shù)據(jù)塊§5.2.5訪問數(shù)據(jù)塊第166頁/共285頁§5.2.1數(shù)據(jù)存儲區(qū)
數(shù)據(jù)以用戶程序變量的形式存儲,且具有唯一性。數(shù)據(jù)可以存儲在輸入過程映像存儲器(PII)、輸出過程映像存儲器(PIQ)、位存儲器(M)、局部數(shù)據(jù)堆棧(L堆棧)及數(shù)據(jù)塊(DB)中??梢圆捎没緮?shù)據(jù)類型、復(fù)雜數(shù)據(jù)類型或參數(shù)類型。根據(jù)訪問方式的不同,這些數(shù)據(jù)可以在全局符號表或共享數(shù)據(jù)塊中聲明,稱為全局變量;也可以在OB、FC和FB的變量聲明表中聲明,稱為局部變量。當(dāng)塊被執(zhí)行時(shí),變量將固定地存儲在過程映像區(qū)(PII或PIQ)、位存儲器區(qū)(M)、數(shù)據(jù)塊(DB)或局部堆棧(L)中。第167頁/共285頁§5.2.2數(shù)據(jù)塊
數(shù)據(jù)塊定義在S7CPU的存儲器中,用戶可在存儲器中建立一個(gè)或多個(gè)數(shù)據(jù)塊。每個(gè)數(shù)據(jù)塊可大可小,但CPU對數(shù)據(jù)塊數(shù)量及數(shù)據(jù)總量有限制。數(shù)據(jù)塊(DB)可用來存儲用戶程序中邏輯塊的變量數(shù)據(jù)(如:數(shù)值)。與臨時(shí)數(shù)據(jù)不同,當(dāng)邏輯塊執(zhí)行結(jié)束或數(shù)據(jù)塊關(guān)閉時(shí),數(shù)據(jù)塊中的數(shù)據(jù)保持不變。用戶程序可以位、字節(jié)、字或雙字操作訪問數(shù)據(jù)塊中的數(shù)據(jù),可以使用符號或絕對地址。第168頁/共285頁1.數(shù)據(jù)塊的分類
共享數(shù)據(jù)塊又稱全局?jǐn)?shù)據(jù)塊。用于存儲全局?jǐn)?shù)據(jù),所有邏輯塊(OB、FC、FB)都可以訪問共享數(shù)據(jù)塊存儲的信。
背景數(shù)據(jù)塊用作“私有存儲器區(qū)”,即用作功能塊(FB)的“存儲器”。FB的參數(shù)和靜態(tài)變量安排在它的背景數(shù)據(jù)塊中。背景數(shù)據(jù)塊不是由用戶編輯的,而是由編輯器生成的。
用戶定義數(shù)據(jù)塊(DBofType)是以UDT為模板所生成的數(shù)據(jù)塊。創(chuàng)建用戶定義數(shù)據(jù)塊(DBofType)之前,必須先創(chuàng)建一個(gè)用戶定義數(shù)據(jù)類型,如UDT1,并在LAD/STL/FBDS7程序編輯器內(nèi)定義。第169頁/共285頁2.數(shù)據(jù)塊寄存器CPU有兩個(gè)數(shù)據(jù)塊寄存器:DB和DI寄存器。這樣,可以同時(shí)打開兩個(gè)數(shù)據(jù)塊。
第170頁/共285頁§5.2.3數(shù)據(jù)塊的數(shù)據(jù)結(jié)構(gòu)
在STEP7中數(shù)據(jù)塊的數(shù)據(jù)類型可以采用基本數(shù)據(jù)類型、復(fù)雜數(shù)據(jù)類型或用戶定義數(shù)據(jù)類型(UDT)?;緮?shù)據(jù)類型復(fù)雜數(shù)據(jù)類型用戶定義數(shù)據(jù)類型第171頁/共285頁基本數(shù)據(jù)類型根據(jù)IEC1131-3定義,長度不超過32位,可利用STEP7基本指令處理,能完全裝入S7處理器的累加器中?;緮?shù)據(jù)類型包括:位數(shù)據(jù)類型:BOOL、BYTE、WORD、DWORD、CHAR數(shù)字?jǐn)?shù)據(jù)類型:INT、DINT、REAL定時(shí)器類型:S5TIME、TIME、DATE、TIME_OF_DAY第172頁/共285頁復(fù)雜數(shù)據(jù)類型復(fù)雜數(shù)據(jù)類型只能結(jié)合共享數(shù)據(jù)塊的變量聲明使用。復(fù)雜數(shù)據(jù)類型可大于32位,用裝入指令不能把復(fù)雜數(shù)據(jù)類型完全裝入累加器,一般利用庫中的標(biāo)準(zhǔn)塊(“IEC”S7程序)處理復(fù)雜數(shù)據(jù)類型。復(fù)雜數(shù)據(jù)類型包括:時(shí)間(DATE_AND_TIME)類型矩陣(ARRAY)類型結(jié)構(gòu)(STRUCT)類型字符串(STRING)類型第173頁/共285頁用戶定義數(shù)據(jù)類型(UDT)
STEP7允許利用數(shù)據(jù)塊編輯器,將基本數(shù)據(jù)類型和復(fù)雜數(shù)據(jù)類型組合成長度大于32位用戶定義數(shù)據(jù)類型(UDT:User-DefineddataType)。用戶定義數(shù)據(jù)類型不能存儲在PLC中,只能存放在硬盤上的UDT塊中。可以用用戶定義數(shù)據(jù)類型作“模板”建立數(shù)據(jù)塊,以節(jié)省錄入時(shí)間。可用于建立結(jié)構(gòu)化數(shù)據(jù)塊、建立包含幾個(gè)相同單元的矩陣、在帶有給定結(jié)構(gòu)的FC和FB中建立局部變量。第174頁/共285頁【5-2-1】
創(chuàng)建用戶定義數(shù)據(jù)類型:UDT1。
創(chuàng)建一個(gè)名稱為UDT1的用戶定義數(shù)據(jù)類型,數(shù)據(jù)結(jié)構(gòu)如下,則可按以下幾個(gè)步驟完成。第175頁/共285頁【5-2-1】創(chuàng)建用戶定義數(shù)據(jù)類型第176頁/共285頁【5-2-1】編輯UDT1第177頁/共285頁§5.2.4建立數(shù)據(jù)塊
在STEP7中,為了避免出現(xiàn)系統(tǒng)錯(cuò)誤,在使用數(shù)據(jù)塊之前,必須先建立數(shù)據(jù)塊,并在塊中定義變量(包括變量符號名、數(shù)據(jù)類型以及初始值等)。數(shù)據(jù)塊中變量的順序及類型決定了數(shù)據(jù)塊的數(shù)據(jù)結(jié)構(gòu),變量的數(shù)量決定了數(shù)據(jù)塊的大小。數(shù)據(jù)塊建立后,還必須同程序塊一起下載到CPU中,才能被程序塊訪問。建立數(shù)據(jù)塊定義變量并下載數(shù)據(jù)塊第178頁/共285頁方法1:用SIMATICManager創(chuàng)建數(shù)據(jù)塊。
第179頁/共285頁方法2:用LAD/STL/FBDS7程序編輯器創(chuàng)建數(shù)據(jù)塊。
第180頁/共285頁新DB類型選擇窗口第181頁/共285頁編輯數(shù)據(jù)塊(變量定義)
變量定義完成后,應(yīng)單擊保存按鈕保存并編譯(測試)。如果沒有錯(cuò)誤則需要單擊下載按鈕,像邏輯塊一樣,將數(shù)據(jù)塊下載到CPU。第182頁/共285頁§5.2.5訪問數(shù)據(jù)塊
在用戶程序中可能存在多個(gè)數(shù)據(jù)塊,而每個(gè)數(shù)據(jù)塊的數(shù)據(jù)結(jié)構(gòu)并不完全相同,因此在訪問數(shù)據(jù)塊時(shí),必須指明數(shù)據(jù)塊的編號、數(shù)據(jù)類型與位置。如果訪問不存在的數(shù)據(jù)單元或數(shù)據(jù)塊,而且沒有編寫錯(cuò)誤處理OB塊,CPU將進(jìn)入STOP模式。尋址數(shù)據(jù)塊訪問數(shù)據(jù)塊直接訪問數(shù)據(jù)塊第183頁/共285頁尋址數(shù)據(jù)塊第184頁/共285頁訪問數(shù)據(jù)塊
在STEP7中可以采用傳統(tǒng)訪問方式,即先打開后訪問;也可以采用完全表示的直接訪問方式?!纠?-2-2】
打開并訪問共享數(shù)據(jù)塊。第185頁/共285頁訪問數(shù)據(jù)塊
用指令“OPNDB...”打開共享數(shù)據(jù)塊(自動(dòng)關(guān)閉之前打開的共享數(shù)據(jù)塊),如果DB已經(jīng)打開,則可用裝入(L)或傳送(T)指令訪問數(shù)據(jù)塊?!纠?-2-3】
打開并訪問背景數(shù)據(jù)塊。第186頁/共285頁直接訪問數(shù)據(jù)塊所謂直接訪問數(shù)據(jù)塊,就是在指令中同時(shí)給出數(shù)據(jù)塊的編號和數(shù)據(jù)在數(shù)據(jù)塊中的地址。可以用絕對地址,也可以用符號地址直接訪問數(shù)據(jù)塊。用絕對地址直接訪問數(shù)據(jù)塊,如:
用符號地址直接訪問數(shù)據(jù)塊,如:第187頁/共285頁
功能(FC)、功能塊(FB)和組織塊(OB)統(tǒng)稱為邏輯塊(或程序塊)。功能塊(FB)有一個(gè)數(shù)據(jù)結(jié)構(gòu)與該功能塊的參數(shù)完全相同的數(shù)據(jù)塊,稱為背景數(shù)據(jù)塊,背景數(shù)據(jù)塊依附于功能塊,它隨著功能塊的調(diào)用而打開,隨著功能塊的結(jié)束而關(guān)閉。存放在背景數(shù)據(jù)塊中的數(shù)據(jù)在功能塊結(jié)束時(shí)繼續(xù)保持。而功能(FC)則不需要背景數(shù)據(jù)塊,功能調(diào)用結(jié)束后數(shù)據(jù)不能保持。組織塊(OB)是由操作系統(tǒng)直接調(diào)用的邏輯塊?!?.3.1邏輯塊(FC和FB)的結(jié)構(gòu)§5.3.1邏輯塊(FC和FB)的編程§5.3邏輯塊(FC和FB)的結(jié)構(gòu)及編程第188頁/共285頁
邏輯塊(OB、FB、FC)由變量聲明表、代碼段及其屬性等幾部分組成。局部變量聲明表(局部數(shù)據(jù))邏輯塊局部變量的數(shù)據(jù)類型邏輯塊的調(diào)用過程及內(nèi)存分配§5.3.1邏輯塊(FC和FB)的結(jié)構(gòu)第189頁/共285頁
每個(gè)邏輯塊前部都有一個(gè)變量聲明表,稱為局部變量聲明表。1.局部變量聲明表
局部數(shù)據(jù)分為參數(shù)和局部變量兩大類,局部變量又包括靜態(tài)變量和臨時(shí)變量(暫態(tài)變量)兩種。第190頁/共285頁
對于功能塊(FB),操作系統(tǒng)為參數(shù)及靜態(tài)變量分配的存儲空間是背景數(shù)據(jù)塊。這樣參數(shù)變量在背景數(shù)據(jù)塊中留有運(yùn)行結(jié)果備份。在調(diào)用FB時(shí),若沒有提供實(shí)參,則功能塊使用背景數(shù)據(jù)塊中的數(shù)值。操作系統(tǒng)在L堆棧中給FB的臨時(shí)變量分配存儲空間。對于功能(FC),操作系統(tǒng)在L堆棧中給FC的臨時(shí)變量分配存儲空間。由于沒有背景數(shù)據(jù)塊,因而FC不能使用靜態(tài)變量。輸入、輸出、I/O參數(shù)以指向?qū)崊⒌闹羔樞问酱鎯υ诓僮飨到y(tǒng)為參數(shù)傳遞而保留的額外空間中。對于組織塊(OB)來說,其調(diào)用是由操作系統(tǒng)管理的,用戶不能參與。因此,OB只有定義在L堆棧中的臨時(shí)變量。第191頁/共285頁
局部變量可以是基本數(shù)據(jù)類型或復(fù)式數(shù)據(jù)類型,也可以是專門用于參數(shù)傳遞的所謂的“參數(shù)類型”。參數(shù)類型包括定時(shí)器、計(jì)數(shù)器、塊的地址或指針等。2.邏輯塊局部變量的數(shù)據(jù)類型第192頁/共285頁CPU提供塊堆棧(B堆棧)來存儲與處理被中斷塊的有關(guān)信息。3.邏輯塊的調(diào)用過程及內(nèi)存分配第193頁/共285頁
局部數(shù)據(jù)堆棧簡稱L堆棧,是CPU中單獨(dú)的存儲器區(qū),可用來存儲邏輯塊的局部變量(包括OB的起始信息)、調(diào)用功能(FC)時(shí)要傳遞的實(shí)際參數(shù)、梯形圖程序中的中間邏輯結(jié)果等??梢园次弧⒆止?jié)、字和雙字來存取。
塊堆棧簡稱B堆棧,是CPU系統(tǒng)內(nèi)存中的一部分,用來存儲被中斷的塊的類型、編號、優(yōu)先級和返回地址;中斷時(shí)打開的共享數(shù)據(jù)塊和背景數(shù)據(jù)塊的編號;臨時(shí)變量的指針(被中斷塊的L堆棧地址)。
中斷堆棧簡稱I堆棧,用來存儲當(dāng)前累加器和地址寄存器的內(nèi)容、數(shù)據(jù)塊寄存器DB和DI的內(nèi)容、局域數(shù)據(jù)的指針、狀態(tài)字、MCR(主控繼電器)寄存器和B堆棧的指針。用戶程序使用的堆棧第194頁/共285頁
當(dāng)調(diào)用功能塊(FB)時(shí),會有以下事件發(fā)生:①調(diào)用塊的地址和返回位置存儲在塊堆棧中,調(diào)用塊的臨時(shí)變量壓入L堆棧;②數(shù)據(jù)塊DB寄存器內(nèi)容與DI寄存器內(nèi)容交換;③新的數(shù)據(jù)塊地址裝入DI寄存器;④被調(diào)用塊的實(shí)參裝入DB和L堆棧上部;⑤當(dāng)功能塊FB結(jié)束時(shí),先前塊的現(xiàn)場信息從塊堆棧中彈出,臨時(shí)變量彈出L堆棧;⑥D(zhuǎn)B和DI寄存器內(nèi)容交換。當(dāng)調(diào)用功能塊(FB)時(shí),STEP7并不一定要求給FB形參賦予實(shí)參,除非參數(shù)是復(fù)式數(shù)據(jù)類型的I/O形參或參數(shù)類型形參。如果沒有給FB的形參賦予實(shí)參,則功能塊(FB)就調(diào)用背景數(shù)據(jù)塊內(nèi)的數(shù)值,該數(shù)值是在功能塊(FB)的變量聲明表或背景數(shù)據(jù)塊內(nèi)為形參所設(shè)置初始數(shù)值。調(diào)用功能塊(FB)時(shí)的堆棧操作第195頁/共285頁
當(dāng)調(diào)用功能(FC)時(shí)會有以下事件發(fā)生:功能(FC)實(shí)參的指針存到調(diào)用塊的L堆棧;調(diào)用塊的地址和返回位置存儲在塊堆棧,調(diào)用塊的局部數(shù)據(jù)壓入L堆棧;功能(FC)存儲臨時(shí)變量的L堆棧區(qū)被推入L堆棧上部;當(dāng)被調(diào)用功能(FC)結(jié)束時(shí),先前塊的信息存儲在塊堆棧中,臨時(shí)變量彈出L堆棧。因?yàn)楣δ埽‵C)不用背景數(shù)據(jù)塊,不能分配初始數(shù)值給功能(FC)的局部數(shù)據(jù),所以必須給功能(FC)提供實(shí)參。調(diào)用功能(FC)時(shí)的堆棧操作
第196頁/共285頁
以功能(FC)調(diào)用為例,L堆棧操作示意如圖所示。調(diào)用功能(FC)時(shí)的堆棧操作
第197頁/共285頁
對邏輯塊編程時(shí)必須編輯下列三個(gè)部分:
變量聲明:分別定義形參、靜態(tài)變量和臨時(shí)變量(FC塊中不包括靜態(tài)變量);確定各變量的聲明類型(Decl.)、變量名(Name)和數(shù)據(jù)類型(DataType),還要為變量設(shè)置初始值(InitialValue)。如果需要還可為變量注釋(Comment)。在增量編程模式下,STEP7將自動(dòng)產(chǎn)生局部變量地址(Address)。代碼段:對將要由PLC進(jìn)行處理的塊代碼進(jìn)行編程。
塊屬性:塊屬性包含了其它附加的信息,例如由系統(tǒng)輸入的時(shí)間標(biāo)志或路徑。此外,也可輸入相關(guān)詳細(xì)資料?!?.3.2邏輯塊(FC和FB)的編程第198頁/共285頁1.臨時(shí)變量的定義和使用第199頁/共285頁2.查看局部數(shù)據(jù)堆棧的占用第200頁/共285頁3.查看塊所需字節(jié)數(shù)第201頁/共285頁4.定義形式參數(shù)第202頁/共285頁
編寫邏輯塊(FC和FB)程序時(shí),可以用以下兩種方式使用局部變量:①使用變量名,此時(shí)變量名前加前綴“#”,以區(qū)別于在符號表中定義的符號地址。增量方式下,前綴會自動(dòng)產(chǎn)生。②直接使用局部變量的地址,這種方式只對背景數(shù)據(jù)塊和L堆棧有效。在調(diào)用FB塊時(shí),要說明其背景數(shù)據(jù)塊。背景數(shù)據(jù)塊應(yīng)在調(diào)用前生成,其順序格式與變量聲明表必須保持一致。5.編寫控制程序第203頁/共285頁
所謂無參功能(FC),是指在編輯功能(FC)時(shí),在局部變量聲明表不進(jìn)行形式參數(shù)的定義,在功能(FC)中直接使用絕對地址完成控制程序的編程。這種方式一般應(yīng)用于分部式結(jié)構(gòu)的程序編寫,每個(gè)功能(FC)實(shí)現(xiàn)整個(gè)控制任務(wù)的一部分,不重復(fù)調(diào)用。§5.4.1編輯無參功能(FC)§5.4.2在OB1中調(diào)用無參功能(FC)§5.4編輯并調(diào)用無參功能(FC)——分部程序設(shè)計(jì)第204頁/共285頁【例5-4-1】
攪拌控制系統(tǒng)程序設(shè)計(jì)——使用開關(guān)量。第205頁/共285頁控制說明如圖所示為一攪拌控制系統(tǒng),由3個(gè)開關(guān)量液位傳感器,分別檢測液位的高、中和低。現(xiàn)要求對A、B兩種液體原料按等比例混合,請編寫控制程序。要求:按起動(dòng)按鈕后系統(tǒng)自動(dòng)運(yùn)行,首先打開進(jìn)料泵1,開始加入液料A→中液位傳感器動(dòng)作后,則關(guān)閉進(jìn)料泵1,打開進(jìn)料泵2,開始加入液料B→高液位傳感器動(dòng)作后,關(guān)閉進(jìn)料泵2,起動(dòng)攪拌器→攪拌10s后,關(guān)閉攪拌器,開啟放料泵→當(dāng)?shù)鸵何粋鞲衅鲃?dòng)作后,延時(shí)5s后關(guān)閉放料泵。按停止按鈕,系統(tǒng)應(yīng)立即停止運(yùn)行。第206頁/共285頁1.創(chuàng)建S7項(xiàng)目按照第3章所介紹的方法,創(chuàng)建S7項(xiàng)目,并命名為“無參FC”,項(xiàng)目包含組織塊OB1和OB100。2.硬件配置在“無參FC”項(xiàng)目內(nèi)打開“SIMATIC300Station”文件夾,打開硬件配置窗口,并完成硬件配置。§5.4.1編輯無參功能(FC)第207頁/共285頁3.編輯符號表第208頁/共285頁4.規(guī)劃程序結(jié)構(gòu)第209頁/共285頁5.編輯功能(FC)
在“無參FC”項(xiàng)目內(nèi)選擇“Blocks”文件夾,然后反復(fù)執(zhí)行菜單命令【Insert】→【S7Block】→【Function】,分別創(chuàng)建4個(gè)功能(FC):FC1、FC2、FC3和FC4。由于在符號表內(nèi)已經(jīng)為FC1~FC4定義了符號名,因此在創(chuàng)建FC的屬性對話框內(nèi)系統(tǒng)會自動(dòng)添加符號名。FC1控制程序FC2控制程序FC3控制程序FC4控制程序OB100控制程序第210頁/共285頁FC1的控制程序FC2的控制程序第211頁/共285頁FC3的控制程序第212頁/共285頁FC4的控制程序第213頁/共285頁OB100的控制程序第214頁/共285頁§5.4.2在OB1中調(diào)用無參功能(FC)第215頁/共285頁OB1的控制程序第216頁/共285頁
所謂有參功能(FC),是指編輯功能(FC)時(shí),在局部變量聲明表內(nèi)定義了形式參數(shù),在功能(FC)中使用了虛擬的符號地址完成控制程序的編程,以便在其他塊中能重復(fù)調(diào)用有參功能(FC)。這種方式一般應(yīng)用于結(jié)構(gòu)化程序編寫?!?.5.1編輯有參功能(FC)§5.5.2在OB1中調(diào)用有參功能(FC)§5.5編輯并調(diào)用有參功能(FC)——結(jié)構(gòu)化程序設(shè)計(jì)第217頁/共285頁【例5-5-1】
多級分頻器控制程序設(shè)計(jì)。本例擬在功能FC1中編寫二分頻器控制程序,然后在OB1中通過調(diào)用FC1實(shí)現(xiàn)多級分頻器的功能。多級分頻器的時(shí)序關(guān)系如圖所示。其中I0.0為多級分頻器的脈沖輸入端;Q4.0~Q4.3分別為2、4、8、16分頻的脈沖輸出端;Q4.4~Q4.7分別為2、4、8、16分頻指示燈驅(qū)動(dòng)輸出端。第218頁/共285頁§5.5.1編輯有參功能(FC)創(chuàng)建多級分頻器的S7項(xiàng)目硬件配置編寫符號表規(guī)劃程序結(jié)構(gòu)創(chuàng)建有參功能FC1第219頁/共285頁1.創(chuàng)建多級分頻器的S7項(xiàng)目使用菜單【File】→【“NewProject”Wizard】創(chuàng)建多級分頻器的S7項(xiàng)目,并命名為“有參FC”。2.硬件配置打開“SIMATIC300Station”文件夾,雙擊硬件配置圖標(biāo)打開硬件配置窗口,并按圖所示完成硬件配置。第220頁/共285頁3.編寫符號表第221頁/共285頁4.規(guī)劃程序結(jié)構(gòu)第222頁/共285頁5.創(chuàng)建有參FC1
選擇“有參FC”項(xiàng)目的“Blocks”文件夾,然后執(zhí)行菜單命令【Insert】→【S7Block】→【Function】,在塊文件夾內(nèi)創(chuàng)建一個(gè)功能,并命名為“FC1”。編輯FC1的變量聲明表在FC1的變量聲明表內(nèi),聲明4個(gè)參數(shù),見下表。第223頁/共285頁編輯FC1的控制程序
二分頻器的時(shí)序如圖所示。分析二分頻器的時(shí)序圖可以看到,輸入信號每出現(xiàn)一個(gè)上升沿,輸出便改變一次狀態(tài),據(jù)此可采用上跳沿檢測指令實(shí)現(xiàn)。
如果輸入信號S_IN出現(xiàn)上升沿,則對S_OUT取反,然后將S_OUT的信號狀態(tài)送LED顯示;否則,程序直接跳轉(zhuǎn)到LP1,將S_OUT的信號狀態(tài)送LED顯示。第224頁/共285頁FC1的控制程序第225頁/共285頁§5.5.2在OB1中調(diào)用有參功能(FC)使用絕對地址使用符號地址第226頁/共285頁
功能塊(FB)在程序的體系結(jié)構(gòu)中位于組織塊之下。它包含程序的一部分,這部分程序在OB1中可以多次調(diào)用。功能塊的所有形參和靜態(tài)數(shù)據(jù)都存儲在一個(gè)單獨(dú)的、被指定給該功能塊的數(shù)據(jù)塊(DB)中,該數(shù)據(jù)塊被稱為背景數(shù)據(jù)塊。當(dāng)調(diào)用FB時(shí),該背景數(shù)據(jù)塊會自動(dòng)打開,實(shí)際參數(shù)的值被存儲在背景數(shù)據(jù)塊中;當(dāng)塊退出時(shí),背景數(shù)據(jù)塊中的數(shù)據(jù)仍然保持?!?.6.1編輯無靜態(tài)參數(shù)的功能塊(FB)§5.6.2在OB1中調(diào)用無靜態(tài)參數(shù)的功能塊(FB)
§5.6編輯無靜參的功能塊(FB)第227頁/共285頁【例5-6-1】
水箱水位控制系統(tǒng)程序設(shè)計(jì)。第228頁/共285頁【例5-6-1】
系統(tǒng)有3個(gè)貯水箱,每個(gè)水箱有2個(gè)液位傳感器,UH1,UH2,UH3為高液位傳感器,“1”有效;UL1,UL2,UL3為低液位傳感器,“0”有效。Y1、Y3、Y5分別為3個(gè)貯
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 新員工培訓(xùn)獎(jiǎng)懲管理辦法
- 綜合專項(xiàng)應(yīng)急演練培訓(xùn)
- 預(yù)防普通感冒的措施
- 自制英語課件教學(xué)課件
- 神秘的宇宙培訓(xùn)宣傳
- 第四章 曲線運(yùn)動(dòng)-教材實(shí)驗(yàn)5 探究平拋運(yùn)動(dòng)的特點(diǎn) 2025年高考物理基礎(chǔ)專項(xiàng)復(fù)習(xí)
- 防臺防汛安全教育培訓(xùn)
- 繁育員的年終總結(jié)
- 深度學(xué)習(xí)及自動(dòng)駕駛應(yīng)用 課件 第1、2章 汽車自動(dòng)駕駛技術(shù)概述、深度學(xué)習(xí)基礎(chǔ)
- 花樣跳繩說課稿小學(xué)
- 2024年江西省公務(wù)員錄用考試《行測》題(網(wǎng)友回憶版)(題目及答案解析)
- VDA6.3基礎(chǔ)培訓(xùn)考核測試卷附答案
- 第01講 正數(shù)和負(fù)數(shù)、有理數(shù)-人教版新七年級《數(shù)學(xué)》暑假自學(xué)提升講義(解析版)
- 信息系統(tǒng)部署與運(yùn)維-題庫帶答案
- 婚姻心理學(xué)解讀包含內(nèi)容
- DZ/T 0462.3-2023 礦產(chǎn)資源“三率”指標(biāo)要求 第3部分:鐵、錳、鉻、釩、鈦(正式版)
- 備戰(zhàn)2024年高考英語考試易錯(cuò)點(diǎn)12 名詞性從句(4大陷阱)(解析版)
- 公務(wù)員歷史常識100題及一套完整答案
- 信息技術(shù)與高中英語教學(xué)融合的途徑
- 花籃拉桿式懸挑腳手架.計(jì)算書及相關(guān)圖紙
- 職業(yè)道德與法律說課稿市公開課一等獎(jiǎng)省賽課微課金獎(jiǎng)?wù)n件
評論
0/150
提交評論