




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第1章可編程控制器的基礎知識 1.11.21.3 1.4概述 基本結構和作用 工作原理 軟件基礎 1.5可編程控制器的發展 1.1 可編程控制器的概述 1.1.1 可編程控制器的產生 1.1.2 可編程控制器的特點 1.1.3 可編程控制器的分類 1.1.1可編程控制器的產生 可編程控制器的產生和發展與繼電器有很大的關系。繼電器是一種用弱電信號控制強電信號的電磁開關,在復雜的繼電器控制系統中,其故障的查找和排除非常困難,會占用大量時間,從而嚴重地影響生產。如果工藝要求發生變化,就得重新設計線路連線安裝,因此不利于產品的更新換代。 20世紀60年代末期,美國汽車制造工業競爭十分激烈,為了適應市場
2、從少品種大批量向多品種大批量生產的轉變,盡可能減少轉變過程中控制系統的設計制造時間,減少經濟成本,1968年,美國通用汽車公司(General Motors,GM)對外公開招標,尋求用新的電氣控制裝置取代繼電器控制系統,以便適應迅速改變生產程序的要求,該公司對新的控制系統提出了10項指標。 (1)編程簡單,可以在現場修改和調試程序;(2)維修方便,采用插入式模塊結構;(3)可靠性高于繼電器控制系統;(4)體積小于繼電器控制柜;(5)能與管理中心計算機系統進行通信;(6)成本可與繼電器控制系統相競爭;(7)輸入量是115V交流電壓;(8)輸出量是115V交流電壓,輸出電流在2A以上,能直接驅動電
3、磁閥;(9)系統擴展時,原系統只需做很小的改動;(10)用戶程序存儲器容量至少4KB。 1969年美國數字設備公司(DEC)根據上述要求,研制出世界上第一臺可編程控制器并在GM公司汽車生產線上首次應用成功,實現了生產的自動化控制。 可編程控制器是一種專門為在工業環境下應用而設計的數字運算操作的電子裝置。它采用可以編制程序的存儲器,用來在其內部存儲執行邏輯運算、順序運算、計時、計數和算術運算等操作的指令,并能通過數字式或模擬式的輸入和輸出,控制各種類型的機械或生產過程。 1.可靠性高,抗干擾能力強2.編程簡單,操作方便3.系統的設計、安裝、調試工作量小,維護方便4.體積小,能耗低,易實現機電一體
4、化1.1.2 可編程控制器的特點 1.按結構形式分類整體式PLC模塊式PLC疊裝式PLC 1.1.3 可編程控制器的分類 2.按功能分類 具有邏輯運算、定時、計數、移位以及自診斷、監控等基本功能的低檔PLC 除具有低檔PLC的功能外,還具有較強的模擬量輸入輸出、算術運算、數據傳送和比較、數制轉換、遠程I/O、子程序、通信聯網等功能的中檔PLC 除具有中檔機的功能外,還增加了帶符號算術運算、矩陣運算、位邏輯運算、平方根運算及其它特殊功能函數的運算、制表及表格傳送功能等的高檔PLC3.按I/O點數分類小型PLCI/O點數 2048點;多CPU,16位、32位處理器,用戶存儲器容量816K PLC控
5、制系統示意圖 1.2 可編程控制器的基本結構和作用 S7-300 PLC的硬件結構 1.2.1 S7-300系列PLC系統供電 PS307電源模塊 PS 307電源模塊(2A)具有以下顯著特性:(1)輸出電流2A。(2)輸出電壓24VDC,防短路和開路保護。(3)連接單相交流系統 (輸入電壓120/230V AC,50/60Hz)。(4)可靠的隔離特性,符合EN 60950標準。 (5)可用作負載電源 。1.2.2 CPU模塊 CPU是PLC系統的運算控制核心。它根據系統程序的要求完成以下任務:接收并存儲用戶程序和數據,接收現場輸入設備的狀態和數據,診斷PLC內部電路工作狀態和編程過程中的語法
6、錯誤,完成用戶程序規定的運算任務,更新有關標志位的狀態和輸出狀態寄存器的內容,實現輸出控制或數據通信等功能。 四種工作狀態:(1)RUN-P:可編程運行方式。CPU掃描用戶程序,既可以用編程裝置從CPU中讀出,也可以由編程裝置裝入CPU中。用編程裝置可監控程序的運行。在此位置鑰匙不能拔出。(2)RUN:運行方式。CPU掃描用戶程序,可以用編程裝置讀出并監控PLC CPU中的程序,但不能改變裝載存儲器中的程序。在此位置可以拔出鑰匙,以防止程序在正常運行時被改變操作方式。(3)STOP:停止方式。CPU不掃描用戶程序,可以通過編程裝置從CPU中讀出,也可以下載程序到CPU。在此位置可以拔出鑰匙。(
7、4)MRES: MERES位置不能保持,在這個位置松手時開關將自動返回STOP位置。將模式選擇開關從STOP狀態扳到MRES位置,可以復位存儲器,使CPU回到初始狀態。工作存儲器、裝載存儲器中的用戶程序和地址區被清除,全部存儲器位、定時器、計數器和數據塊均被刪除,即復位為零,包括有保持功能的數據。系統參數、CPU和模塊的參數被恢復為默認設置,MPI的參數被保留。如果有存儲器卡,CPU在復位后將它里面的用戶程序和系統參數復制到工作存儲器區 1.2.3 存儲器區域 1.裝載存儲器 裝載存儲器位于SIMATIC微型存儲卡(MMC)中。裝載存儲器的容量與MMC的容量一致。用于保存程序指令塊和數據塊以及
8、系統數據,也可以將項目的整個組態數據保存在MMC中。2.工作存儲器(RAM) RAM集成在CPU中,不能被擴展。它可用于運行程序指令,并處理用戶程序數據。程序只能在RAM和系統存儲器中運行。3.系統存儲區 RAM系統存儲區集成在CPU中,不能被擴展。它包括: (1)標志位、定時器和計數器的地址區 (2)I/O的過程映像 (3)局域數據 1.2.4 SM模塊 信號模塊(SM)也叫輸入/輸出模塊,是CPU 模塊與現場輸入輸出元件和設備連接的橋梁,用戶可根據現場輸入/輸出設備選擇各種用途的I/O模塊。 信號模塊面板上的LED用來顯示各數字量輸入/輸出點的信號狀態,模塊安裝在DIN標準導軌上,通過總線
9、連接器與相鄰的模塊連接。1.數字量模塊(1)數字量輸入模塊SM321(2)數字量輸出模塊SM322(3)數字量I/O模塊SM3232.模擬量模塊(1)模擬量輸入模塊SM331(2)模擬量輸出模塊SM332 (3)模擬量I/O模塊SM3343.特殊模塊1.2.5 FM模塊 功能模塊主要用于對實時性和存儲容量要求高的控制任務,例如計數器模塊、快速/慢速進給驅動位置控制模塊、電子凸輪控制其模塊、步進電動機定位模塊、伺服電動機定位模塊、定位和連蘇路徑控制模塊、閉環控制模塊、工業標示系統的接口模塊、稱重模塊、位置輸入模塊、超聲波位置解碼器等。 1.2.6 CP模塊 S7-300系列PLC有多種用途的通信
10、處理器模塊,如CP340、CP342-5 DP、CP343-FMS等,其中既有為裝置進行點對點通信設計的模塊,也有為PLC上網到西門子的低速現場總線網SINEC L2和高速SINEC H1網設計的網絡接口模塊 CP342-5 DP是為把S7-300系列PLC連接到西門子SINEC L2網絡上而設計的成本優化的通信模塊。它是一個智能化的通信模塊,能大大減輕CPU的負擔,也支持很多其它通信電路。 1.2.7 通訊接口 CPU模塊上有三種通訊接口:(1)MPI接口:多點接口MPI(Multipoint Interface)是用于連接CPU和PG/OP的接口,或用于MPI子網中的通訊接口。 (2)PR
11、OFIBUS-DP接口:PROFIBUS-DP接口主要用于連接分布式I/O。 (3)PtP接口:可在CPU上使用PtP(點到點)接口,來連接外部設備至串口,例如條形碼閱讀器、打印機等。 1.3 可編程控制器的工作原理 可編程序控制的編程元件用“軟繼電器”命名,認為它們像繼電器一樣有線圈和觸點,且線圈得電,觸點動作(當然線圈和觸點只是假設的)。所謂線圈得電,不過是“軟繼電器”對應的存儲單元置“1”,線圈失電,即存儲單元置“0”。項目物理繼電器PLC繼電器線圈常開觸點常閉觸點 可編程控制器的CPU則采用順序邏輯掃描用戶程序的運行方式。 PLC啟動后,先進行初始化,包括對工作內存的初始化、復位所有的
12、定時器、將輸入/輸出繼電器清零,檢查I/O單元連接是否完好,如有異常則發出報警信號。初始化之后,PLC就進入周期性掃描過程。掃描過程可分為4個階段。1.3.1 工作方式 1.公共處理掃描階段 公共處理包括PLC自檢、執行來自外設的命令、對看門狗清零等。2.輸入采樣掃描階段 這個階段,PLC按順序逐個采集所有輸入端子上的信息,不論輸入端子上是否接線,CPU順序讀取全部輸入端,將所有采集到的輸入信號寫到輸入映像寄存器中。在當前的掃描周期內,用戶程序依據的輸入信號的狀態均從輸入映像寄存器中去讀取,而不管此時外部輸入信號的狀態是否變化。即使此時外部信號的狀態發生了變化,也只能在下一個掃描周期的輸入采樣
13、掃描階段去讀取。對于這種采樣輸入信號的處理,雖然嚴格上說每個信號被采集的時間有先后順序,但由于PLC的掃描周期很短,這個差異對于一般工程應用可以忽略,認為這些采集到得輸入信號是同時的。3.執行用戶程序掃描階段 在執行用戶程序階段,CPU對用戶程序按順序進行掃描。如果程序用梯形圖表示,則是按照先上后下,從左至右的順序進行掃描。每次掃到一條指令,所需要的輸入信號的狀態均從輸入映像寄存器中去讀取,而不是直接使用現場的立即輸入信號。對其他信息,則是從PLC的元件映像寄存器中讀取。在執行用戶程序中,每一次運算的中間結果都立即寫入元件映像寄存器中,這樣該元件的狀態馬上就可以被后面將要掃描到的指令所利用。對
14、輸出繼電器的掃描結果,也不是馬上去驅動外部負載,而是將其結果寫入元件映像寄存器中的輸出映像寄存器中,在輸出刷新階段集中進行處理。 在這個階段,除了輸入映像寄存器外,各個元件映像寄存器的內容是隨著程序的執行而不斷的變化。4.輸出刷新掃描階段 當CPU對全部用戶程序掃描結束后,將元件映像寄存器中各輸出繼電器的狀態同時送到輸出鎖存器中,再由輸出鎖存器經輸出端子去驅動各輸出繼電器所帶的負載。 在輸出刷新階段結束后,CPU進入下一個掃描周期。1.3.2 PLC的編程語言 PLC為用戶提供了完整的編程語言,以適應用戶編制程序的需要。PLC提供的編程語言通常有以下幾種:梯形圖(LAD)、指令語句表(STL)
15、、邏輯功能圖(FBD)等。 1. 梯形圖(LAD) 梯形圖(LAD)編程語言是從繼電器控制系統原理圖的基礎上演變而來的,又稱為繼電器語言。PLC的梯形圖與繼電器控制系統的梯形圖的基本思想是一致的,只是在使用符號和表達方式上有一定區別。梯形圖語言比較形象、直觀,是最基本、最普遍的編程語言,但這種編程方式只能用圖形編程器直接編程。 2. 指令語句表(STL) 指令語句表(STL)編程語言就是用助記符來表達PLC的各種功能,類似于計算機中的助記符語言,它是可編程序控制器最基礎的編程語言。通常每條指令由操作碼(指令)、地址和操作數(數據或器件編號)三部分組成。由于指令語句表比較抽象,一般與梯形圖語言配
16、合使用,互為補充。目前,大多數PLC都有指令語句編程功能。 3. 邏輯功能圖(FBD) 這是一種由邏輯功能符號組成的功能塊來表達命令的圖形語言,這種編程語言基本上沿用了半導體邏輯電路的邏輯方塊圖。對每一種功能都使用一個運算方塊,其運算功能由方塊內的符號確定。常用“與”、“或”、“非”等邏輯功能來表達控制邏輯。與功能方塊有關的輸入畫在方塊的左邊,輸出畫在方塊的右邊。采用這種編程語言,不僅能簡單明確地表現邏輯功能,還能通過對各種功能塊的組合,實現加法、乘法、比較等高級功能,所以它也是一種功能比較強的圖形編程語言。1.4.1 系統監控程序 可編程控制器的系統監控程序,也稱之為可編程控制器的操作系統或
17、系統軟件。它由PLC得制造廠家編制,用于控制可編程控制器本身的運行,一般來說,系統監控程序對用戶是不透明的。 1.4 可編程控制器的軟件基礎 1.系統管理程序 系統管理程序是監控程序中最重要的部分,它主要完成以下任務: (1)負責系統運行時間的分配管理。即管理可編程控制器輸入、輸出 、運 算、自檢等的時間順序。 (2)負責存儲空間的管理,即生成用戶環境。由它規定各種參數、程序的存放地址,將用戶使用的數據參數存儲地址轉化為實際的數據格式,以及物理存放地址。通過這部分程序,用戶看到的就不是實際及其存儲地址,而是按照用戶數據結構排列的程序存儲空間。 (3)負責系統自檢,包括系統出錯檢驗、用戶程序語法
18、檢驗等。2.用戶指令解釋程序 任何一臺計算機,最終只能執行機器語言。而機器語言編程復雜、難于掌握,所以,可編程控制器采用梯形圖語言等高級語言編程,再通過用戶指令解釋程序將高級語言逐條編譯為機器可以執行的機器語言。3.標準程序模塊 標準程序模塊由許多獨立的程序塊組成,各程序塊能完成不同的功能,如輸入、輸出、運算等。可編程控制器的各種具體工作都是由這部分程序完成的,這部分程序的多少,就決定了可編程控制器性能的強弱。 1.4.2 用戶程序 可編程控制器的用戶程序就是用戶根據自己的控制要求按一定的編程語言編寫的程序。由于可編程控制器的應用場合是工業現場,它的用戶主要是電氣技術人員,所以其編程語言要滿足
19、易于編寫和調試的要求,并要考慮電器技術人員的接受水平和應用習慣。因此可編程控制器通常使用梯形圖語言,又稱繼電器語言或電工語言。 一個完整的用戶控制程序應當包含一個主程序、若干子程序和若干中斷程序三大部分。1.5 可編程控制器的發展 1.5.1 可編程控制器的主要系列 目前PLC產品可按地域分成三大流派:美國產品、歐洲產品和日本產品。美國和歐洲的PLC技術是在相互隔離情況下獨立研究開發的,因此他們的產品有明顯的差異性。而日本的PLC技術是由美國引進的,對美國的PLC產品有一定的繼承性,但又有所不同,美國和歐洲以大中型PLC而聞名,而日本則以小型PLC著稱。 1.5.2 可編程控制器的發展趨勢 1
20、.開放與基于工業PC控制 2.進一步加強網絡通信功能3.更強大的軟件工具4.向高速度、大容量、低成本、多功能方向發展1.5.3 我國可編程控制器的發展 PLC自20世紀70年代后期進入中國以來,應用增長十分迅速. 目前國產PLC廠商眾多,主要集中于臺灣、北京、浙江、江蘇和深圳,臺灣的品牌有永宏、臺達、盟立、士林、豐煒、智國、臺安 第2章 西門子S7-300 PLC的結構及硬件特性 S7-300 PLC的整體結構任務一 S7-300 PLC的CPU模塊 任務二I/ O模塊地址分配任務四S7-300 PLC的其他模塊任務五任務三S7-300 PLC的信號模塊任務描述: 通過本任務能夠掌握S7系列P
21、LC應用場合和S7-300系統組成。1S7系列PLC應用任務分析:圖2-1 S7系列PLC應用2S7-300系統組成3典型系統結構PS電源模塊CPUIM接口模塊SM:DISM:DOSM:AISM:AOFM:-計數-定位-閉環控制CP:-點-到-點-PROFIBUS-工業以太網任務三 S7-300 PLC的CPU模塊任務描述: 掌握S7-300 CPU模塊的分類及 CPU面板操作注意事項。任務分析: 分析S7-300 CPU模塊的分類、異同點及應用場合;CPU面板上模式選擇開關的含義。S7-300 CPU模塊的分類 主要類型有緊湊型CPU(6種)、標準型CPU(5種)、革新型CPU(5種)、戶外
22、型CPU(3種)、故障安全型CPU(3種)、特種型CPU(2種),如圖2-5所示。階段一 CPU分類圖2-5 S7-300 CPU模塊的分類 階段二 S7-300 CPU面板操作 1模式選擇開關,如圖2-6(a)所示。2狀態及故障顯示,如圖2-6(b)所示。任務三 S7-300 PLC的信號模塊 任務描述:掌握S7-300 PLC的信號模塊的分類。任務分析: 數字量模塊分為數字量輸入模塊(DI)、數字量輸出模塊(DO)和數字量輸入/輸出模塊(DI/DO),掌握上述模塊的內部電路及外部端子接線圖。1SM321數字量輸入模塊(DI)(1)直流32點數字量輸入模塊的內部電路及外部端子接線圖,如圖2-
23、7所示。階段一 數字量輸入模塊 (2)交流32點數字量輸入模塊的內部電路及外部端子接線圖,如圖2-8所示。2SM322數字量輸出模塊(DO)(1)32點數字量晶體管輸出模塊的內部電路及外部端子接線圖,如圖2-9所示。(2)32點數字量晶閘管輸出模塊的內部電路及外部端子接線圖,如圖2-10所示。(3)16點數字量繼電器輸出模塊的內部電路及外部端子接線圖,如圖2-11所示。(1)SM323 DI 16/DO 1624 VDC/0.5A內部電路及外部端子接線圖,如圖2-12所示。 3、數字量輸入/輸出模塊(DI/DO)(2)SM327 DI 8/DX 8內部電路及外部端子接線圖,如圖2-13所示。任
24、務四 I/ O模塊地址分配任務描述: 掌握CPU的存儲區域分類、數據在存儲器中存取的方式、系統存儲區的地址區的范圍。任務分析:存儲區分類(見表2-1) CPU的存儲區分類,注意理解位、字節、字和雙字的概念及相互間的關系。S7系列PLC中CPU的存儲區包括三個基本區域,即裝載存儲器,工作存儲器RAM和系統存儲器RAM。2數據在存儲器中存取的方式(1)位、字節、字和雙字(2)字節、字和雙字的取值范圍(見表2-2)3.系統存儲區的地址區(見表2-3)4CPU中的寄存器 (1)累加器(ACCU(2)地址寄存器(5)狀態字寄存器(4)診斷緩沖區(3)數據塊寄存器 任務五 S7-300 PLC的其他模塊任
25、務描述: S7-300 PLC除了存在CPU模塊、信號模塊、I/ O模塊外,還存在其他輔助模塊。任務分析: 本任務主要介紹電源模塊 (PS)、接口模塊(IM)、通信處理器模塊(CP)、特殊功能模塊(FM)、模擬量信號模塊的特點及分類。365 - 0BA01- 0AA0X 23 4PS3075A DC 5VVOLTAGESELECTORONOFF50mm307 - 1BA00- 0AA0PS3075AX 23 4 DC 5VVOLTAGESELECTORONOFF80mm307 - 1BA00- 0AA0PS3075AX 23 4 DC 5VVOLTAGESELECTORONOFF80mm200
26、mm307 - 1BA00- 0AA0PS3075AX 23 4 DC 5VVOLTAGESELECTORONOFF圖2-16電源模塊1電源模塊 (PS)2接口模塊(IM)365 - 0BA01- 0AA0IM 365RECEIVEX 23 4365 - 0BA01- 0AA0IM 365RECEIVEX 23 4360 - 3CA01- 0AA0IM 360X 23 4 SFDC 5V360 - 3CA01- 0AA0IM 360X 23 4 SFDC 5V(a)雙機架接口模塊IM365 (b)多機架接口模塊圖2-17 接口模塊3通信處理器模塊(CP),如圖2-18所示。PSCPUCP341
27、CP 343-2CP 342-5CP 343-5CP 343-1工業以太網PROFIBUS FMSPROFIBUS DPAS接口點對點連接圖2-18通信處理器模塊4特殊功能模塊(FM) 分為SM331模擬量輸入模塊(AI)、SM332模擬量輸出模塊(AO)、SM334模擬量輸入。5模擬量信號模塊(1)模擬量輸入模塊(AI),如圖2-20所示。(1)模擬量輸入模塊(AI),如圖2-20所示。圖2-20 AI 813位模擬量輸入模塊(2)模擬量輸出模塊(AO),如圖2-21所示。(3)模擬量輸入/輸出模塊(AI/AO),如圖2-22所示。(4)電壓輸出型模塊的連接1)電壓輸出型隔離模塊的4線制連接
28、,如圖2-23所示。圖2-23 電壓輸出型隔離模塊的4線制連接2) 電壓輸出型非隔離模塊的2線制連接,如圖2-24所示。圖2-24電壓輸出型非隔離模塊的2線制連接 (5)電流輸出型模塊的連接 1)電流輸出型隔離模塊的2線制連接,如圖2-25所示。 2)電流輸出型非隔離模塊的2線制連接,如圖2-26。第3章 西門子S7-300系列PLC基本指令系統 S7-300系列plc的指令及其結構 3.1位邏輯指令 3.2定時器與計數器指令 3.3數據處理功能指令 3.4數據運算指令 3.4控制指令 3.43.1 指令及其結構3.1.1 指令的組成 1. 語句指令 一條指令由一個操作碼和一個操作數組成,操作
29、數由標識符和參數組成。操作碼定義要執行的功能;操作數為執行該操作所需要的信息,例如: A I 1.0 是一條位邏輯操作指令,其中:“A”是操作碼,它表示執行“與”操作;“I 1.0”是操作數,對輸入繼電器I 1.0進行的操作。 有些語句指令不帶操作數。它們操作的對象是惟一的。例如:NOT (是對邏輯操作結果(RLO)取反。) 2. 梯形邏輯指令 梯形邏輯指令用圖形元素表示PLC要完成操作。在梯形邏輯指令中,其操作碼是用圖素表示的,該圖素形象表明CPU做什么,其操作數的表示方法與語句指令相同。如: Q 4.0 ( )該指令中:( )可認為是操作碼,表示一個二進制賦值操作。Q 4.0是操作數,表示
30、賦值的對象。 梯形邏輯指令也可不帶操作數。如: |NOT| 是對邏輯操作結果取反的操作。3.1.2 操作數 1. 標識符及表示參數 一般情況下,指令的操作數在PLC的存儲器中,此時操作數由操作數標識符和參數組成。 操作數標識符由主標識符和輔助標識符組成。主標識符表示操作數所在的存儲區,輔助標識符進一步說明操作數的位數長度。若沒有輔助標識符指操作數的位數是一位。 主標識符有:I(輸入過程映像存儲區),Q(輸出過程映象存儲區),M(位存儲區),PI(外部輸入),PQ(外部輸入),T(定時器),C(計數器),DB(數據塊),L(本地數據)。 輔助標識符有:X(位),B(字節),W(字2字節),D(雙
31、字4字節)。 PLC物理存儲器是以字節為單位的,所以存儲單元規定為字節單元。位地址參數用一個點與字節地址分開。如:M 10.1 當操作數長度是字或雙字時,標識符后給出的標識參數是字或雙字內的最低字節單元號。圖4.1給出了字節、字、雙字的相互關系及表示方法。當使用寬度為字或雙字的地址時,應保證沒有生成任何重疊的字節分配,以免造成數據讀寫錯誤。圖3.1 以字節單元為基準標記存儲器存儲單元位存儲區M表3.1 存儲區及其功能 表3.1 存儲區及其功能 2. 操作數的表示法 在STEP7中,操作數有兩種表示方法:一是物理地址(絕對地址)表示法;二是符號地址表示法。 用物理地址表示操作數時,要明確指出操作
32、數的所在存儲區,該操作數的位數具體位置。例如:Q 4.0。 STEP7 允許用符號地址表示操作數,如Q 4.0可用符號名MOTOR_ON替代表示,符號名必須先定義后使用,而且符號名必須是惟一的,不能重名。 定義符號時,需要指明操作數所在的存儲區,操作數的位數、具體位置及數據類型。3.1.3 尋址方式 操作數是指令的操作或運算對象。所謂尋址方式是指令得到操作數的方式,可以直接給出或間接給出。 STEP7指令操作對象的有:常數;S7狀態字中的狀態位;S7的各種寄存器、數據塊;功能塊FB,FC和系統功能塊SFB,SFC;S7的各存儲區中的單元。 S7有四種尋址方式:立即尋址、存儲器直接尋址、存儲器間
33、接尋址和寄存器間接尋址。 1. 立即尋址 這是對常數或常量的尋址方式。操作數本身直接包含在指令中。下面是立即尋址的例子:SET /把RLO置1OW W#16#A320 /將常量W#16#A320與累加器1“或”運算L 27 /把整數27裝入累加器1L ABCD /把ASCII碼字符ABCD裝入累加器1L C#0100 /把BCD碼常數0100裝入累加器1 2. 直接尋址 包括對寄存器和存儲器的直接尋址。在直接尋址的指令中,直接給出操作數的存儲單元地址。例如:A I 0.0 /對輸入位I 0.0進行“與”邏輯操作S L 20.0 /把本地數據位L 20.0置1= M 115.4 /使存儲區位M
34、115.4的內容等于RLO的內容L IB 10 /把輸入字節IB 10的內容裝入累加器1T DBD 12 /把累加器1中的內容傳送給數據雙字DBD 12中 3. 存儲器間接尋址 在存儲器間接尋址的指令中,給出一個存儲器(必須是表3.1中的存儲器),該存儲器的內容是操作數所在存儲單元的地址,該地址又被稱為地址指針。存儲器間接尋址方式的優點是,當程序執行時,能改變操作數的存儲器地址,這對程序中的循環尤為重要。例如: A IMD 2 /對由MD 2指出的輸入位進行“與”邏輯操作。如:MD 2的值為 /2#0000 0000 0000 0000 0000 0000 0101 0110 則是對I 10.
35、6進行“與”操作。 圖3.2 存儲器間接尋址的指針格式位3至18(范圍0至65535) : 被尋址字節的字節編號位0至2(范圍0至7) : 被尋址位的位編號 4. 寄存器間接尋址 在S7中有兩個地址寄存器,它們是AR1和AR2。通過地址寄存器,可以對各存儲區的存儲器內容實現寄存器間接尋址。地址寄存器的內容加上偏移量形成地址指針,該指針指向數值所在的存儲單元。 地址寄存器存儲的地址指針有兩種格式: 區內寄存器間接尋址區域間寄存器間接尋址。其長度均為雙字。圖3.3給出了這兩種格式的細節及其差別,區域標識位的組合狀態見表3.2。圖3.3 寄存器間接尋址的指針格式31 24 23 16 15 8 7
36、0位31=0表明是區域內寄存器間接尋址;=1表明是區域間寄存器間接尋址。位24、25和26(r r r):區域標識(見表3.2)位3至18(bbbb bbbb bbbb bbbb):被尋址位的字節編號(范圍0至65535)位0至2():被尋址的位編號(范圍0至7)表3.2 地址指針區域標識位含義3.1.4 狀態字 狀態字用于表示CPU執行指令時所具有的狀態。一些指令是否執行或以何方式執行可能取決于狀態字中的某些位;執行指令時也可能改變狀態字中的某些位;你也能在位邏輯指令或字邏輯指令中訪問并檢測它們。圖4.4顯示了狀態字的結構。圖3.4 狀態字的結構15 9 8 7 6 5 4 3 2 1 0(
37、1)首次檢測位(FC) 狀態字的位0稱為首次檢測位。若FC位的狀態為0,則表明一個梯形邏輯網絡的開始,或指令為邏輯串第一條指令。 (2)邏輯操作結果(RLO) 邏輯操作結果RLO(Result of Logic Operation)。該位存儲位邏輯指令或算術比較指令的結果。 (3)狀態位(STA) 狀態位不能用指令檢測,它只是在程序測試中被CPU解釋并使用。(4)或位(OR) 狀態字的位3稱為或位(OR)。在先邏輯“與”后邏輯“或”的邏輯串中,OR位暫存邏輯“與”的操作結果,以便進行后面的邏輯“或”運算。其它指令將OR位清0。(5)溢出位(OV) 溢出位被置1,表明一個算術運算或浮點數比較指令
38、執行時出現錯誤 ( 錯誤:溢出、非法操作、不規范格式 ) 。(6)溢出狀態保持位(OS) OV被置1時OS也被置1;OV被清0時OS仍保持。只有下面的指令才能復位OS位:JOS(OS=1時跳轉);塊調用和塊結束指令。 (7)條件碼1(CC1)和條件碼0(CC0) 狀態字的位7和位6稱為條件碼1和條件碼0。這兩位結合起來用于表示在累加器1中產生的算術運算或邏輯運算結果與0的大小關系;比較指令的執行結果或移位指令的移出位狀態。詳見表3.3和表3.4。表3.3 算術運算后的CC1和CC0表3.4 比較、移位和循環移位、字邏輯指令后的CC1和CC0 (8)二進制結果位(BR) 它將字處理程序與位處理聯
39、系起來,用于表示字操作結果是否正確(異常)。將BR位加入程序后,無論字操作結果如何,都不會造成二進制邏輯鏈中斷。在LAD的方塊指令中,BR位與ENO有對應關系,用于表明方塊指令是否被正確執行:如果執行出現了錯誤,BR位為0,ENO也為0;如果功能被正確執行,BR位為1,ENO也為1。 在用戶編寫的FB和FC程序中,必須對BR位進行管理,當功能塊正確運行后使BR位為1,否則使其為0。使用STL指令SAVE或LAD指令(SAVE),可將RLO存入BR中,從而達到管理BR位的目的。當FB或FC執行無錯誤時,使RLO為1并存入BR,否則,在BR中存入0。3.2 位邏輯指令 位邏輯指令主要包括:位邏輯運
40、算指令、位操作指令和位測試指令,邏輯操作結果(RLO)用以賦值、置位、復位布爾操作數,也控制定時器和計數器的運行。3.2.1 位邏輯運算指令 位邏輯運算指令是“與”(AND)、“或”(OR)、“異或”(XOR)指令及其組合。它對“0”或“1”這些布爾操作數掃描,經邏輯運算后將邏輯操作結果送入狀態字的RLO位。 1. “與”和“與非”(A,AN)指令 邏輯“與”在梯形圖里是用串聯的觸點回路表示的,如果串聯回路里的所有觸點皆閉合,該回路就通“電”了。在圖3.5的回路所示: 圖3.5 “與”邏輯梯形圖 上述梯形邏輯圖,可用語句表指令完全表示,對應的語句表為:A I0.0 A Q 4.1AN M10.
41、1 Q4.0 ( )I0.0 Q4.1 M10.1 Q4.0 2. “或”和“或非”(O,ON)指令 邏輯“或”在梯形圖里是用并聯的觸點回路表示的,被掃描的操作數標在觸點上方。在圖3.6中,只要有一個觸點閉合,輸出4.1的信號狀態就為“l”。 I1.1 M2.0 Q4.0 圖3.6 “或”邏輯梯形圖及語句表O I1.1 ON M2.0 O Q4.0 Q4.1 ( )Q4.1 3. “異或”和“異或非”(X,XN)指令 圖3.7是“異或”邏輯梯形圖,下面是與梯形圖對應的語句表。在的語句表中,使用了“異或”和“異或非”指令,分別用助記符“X”和“XN”來標識。它類似“或”和“或非”指令,用于掃描并
42、聯回路能否“通電”。 X I 0.0 X I 0.1 Q 4.0圖3.7 “異或”邏輯梯形圖 3.2.2 位操作指令 1. 輸出指令 邏輯串輸出指令又稱為賦值操作指令,該操作把狀態字中RLO的值賦給指定的操作數(位地址)。表3.5列出了操作數的數據類型和所在的存儲區。表3.5 輸出指令A I0.0A I0.1ON I0.2 Q4.0 A I0.3 Q4.1圖3.8 多重輸出梯形圖 一個RLO可被用來驅動幾個輸出元件。在LAD中,輸出線圈是上下依次排列的。在STL中,與輸出信號有關的指令被一個接一個地連續編程,這些輸出具有相同的優先級。圖3.8是多重輸出梯形圖,與之對應的語句表如下: 2 . 置
43、位復位指令 置位復位指令根據RLO的值,來決定被尋址位的信號狀態是否需要改變。若RLO的值為1,被尋址位的信號狀態被置1或清0;若RLO是0,則被尋址位的信號保持原狀態不變。置位復位指令有關內容見表3.6。表3.6 置位復位指令 圖3.10 置位復位指令(a) 復位指令操作 (b)置位指令操作 3. RS觸發器 RS觸發器梯形圖方塊指令表示見表3.7。方塊中標有一個置位輸入(S)端,一個復位輸入(R)端,輸出端標為Q。觸發器可以用在邏輯串最右端,結束一個邏輯串,也可用在 邏輯串中,影響右邊的邏輯操作結果。 表3.7 RS觸發器 RS觸發器分為置位優先和復位優先型兩種, 置位優先型RS觸發器的R
44、端在S端之上,當兩個輸入端都為1時,下面的置位輸入最終有效。既置位輸入優先,觸發器或被復位或保持復位不變,如圖3.11。 A I0.0 R M0.0A I0.1S M0.0A M0.0 = Q4.0 圖3.11 置位優先型RS觸發器 4. 對RLO的直接操作指令 這一類指令直接對邏輯操作結果RLO進行操作,改變狀態字中RLO位的狀態。有關內容見表3.8。表3.8 對RLO的直接操作指令4.2.3 位測試指令 當信號狀態變化時就產生跳變沿。當從0變到1時,產生一個上升沿(或正跳沿);若從1變到0,則產生一個下降沿(或負跳沿)。 S7中有兩類跳變沿檢測指令,一種是對RLO的跳變沿檢測的指令,另一種
45、是對觸點跳變沿直接檢測的梯形圖方塊指令。具體內容見表3.9。 圖3.12是使用RLO正跳沿檢測指令的例子。這個例子中,若CPU檢測到輸入I 1.0有一個正跳沿,將使得輸出Q 4.0的線圈在一個掃描周期內通電。對輸入I 1.0常開觸點掃描的RLO值存放在存儲位M 1.0中。表3.9 跳變沿檢測指令圖3.12 RLO正跳沿檢測圖3.13 觸點負跳沿檢測 圖3.13是使用觸點負跳沿檢測指令的例子。圖中,由給出需要檢測的觸點編號(I 0.3),(M 0.0)用于存放該觸點在前一個掃描周期的狀態。 2. 串并聯組合表示法 當邏輯串是復雜組合時,CPU的掃描順序是先“與”后“或”。圖3.16 (a)給出的
46、梯形邏輯是觸點先并后串的例子,與其對應的語句表為: A( O I0.0 O I0.2 ) A( O M10.0 O M0.3 ) A M10.1 Q4.0 圖4.16 串并聯組合邏輯梯形圖 圖3.16(b)是先串后并的例子,與其對應的語句表如下: A( A I0.0 A M10.0 O A I0.2 A M0.3 ) A M10.1 Q4.03.3 定時器與計數器指令3.3.1 定時器指令 定時器是PLC中的重要部件,它用于實現或監控時間序列。定時器是一種由位和字組成的復合單元,定時器的觸點由位表示,其定時時間值存儲在字存儲器中。 S7-300/400提供的定時器有: 脈沖定時器(SP)擴展定
47、時器(SE)接通延時定時器(SD)帶保持的接通延時定時器(SS)和斷電延時定時器(SF)。 1. 定時器的組成 在CPU的存儲器中留出了定時器區域,用于存儲定時器的定時時間值。每個定時器為2 B,稱為定時字。在S7-300中,最多允許使用256個定時器。 S7中定時時間由時基和定時值兩部分組成,定時時間等于時基與定時值的乘積。采用減計時。定時時間到后會引起定時器觸點的動作。 定時器的第0位到第11位存放二進制格式的定時值,第12、13位存放二進制格式的時基(如圖3.18所示)。表3.11給出了可能出現的組合情況。圖3.18 累加器1低字的內容(定時值127,時基l s)表3.11 時基與定時范
48、圍 設置定時時間,用戶需給累加器1裝入需要的數值,避免格式錯誤,推薦采用下述直觀的句法: L W#16#wxyz其中,w為時基,取值為0,1,2或3,分別表示時基為10 ms,l00 ms,1 s或10 s;xyz為定時值,取值范圍為1999。 也可直接使用S5中的時間表示法裝入定時數值,例如: L S5T#aH_bbM_ccS_dddMS其中,a:小時,bb:分鐘,cc:秒,ddd:毫秒,時基是自動選擇的,原則是能滿足定時范圍要求的最小時基。2. 定時器的啟動與運行 S7中的定時器與時間繼電器的工作特點相似,對定時器同樣要設置定時時間,也要啟動定時器(使定時器線圈通電)。除此之外,定時器還增
49、加了一些功能,如隨時復位定時器、隨時重置定時時間(定時器再啟動)、查看當前剩余定時時間等。S7中的定時器不僅功能強,而且類型多。圖3.19給出了為定時作業如何正確選擇定時器的示意圖。以下將以LAD方塊圖為主詳細介紹定時器的運行原理及使用方法。圖3.19 五種類型定時器總覽圖3.20 脈沖定時器指令S_PULSET5SQRTVBCDBI( )Q4.0S5T#2SI0.0I0.13. 定時器梯形圖方塊指令1) 脈沖定時器 A I0.0 L S5T#2S SP T5 A I0.1 R T5 A T5 Q4.0 圖3.21 脈沖定時器時序圖3.22接通延時定時器指令S_ODTT5SQRTVBCDBI(
50、 )Q4.0S5T#2SI0.0I0.1 A I0.0 L S5T#2S SD T5 A I0.1 R T5 A T5 Q4.03) 延時接通定時器圖3.23 延時接通定時器時序4. 定時器線圈指令表3.12 定時器線圈指令圖3.24 擴展脈沖定時器線圈指令 A I0.0 L S5T#2S SE T5 A I0.1 R T5 A T5 Q4.0 3.3.2 計數器指令 * S7中的計數器用于:對RLO正跳沿計數。* 計數器是由表示當前計數值的字及狀態的位組成。* S7中有三種計數器 加計數器 (S_CU)減計數器 (S_CD)可逆計數器(S_CUD)圖3.25 累加器1低字的內容計數值127計
51、數器組成 在CPU中保留一塊存儲區作為計數器計數值存儲區,每個計數器占用兩個字節,計數器字中的第011位表示計數值(二進制格式),計數范圍是0999。2. 計數器梯形圖方塊指令表3.13 計數器梯形圖方塊指令圖3.26 可逆計數器梯形圖方塊應用A I0.0CU C10 A I0.1 CD C10 A I0.2L MW10S C10A I0.3R C10 A C10= Q4.03. 計數器線圈指令表3.14 計數器線圈指令3.4 數據處理功能指令3.4.1 裝入和傳送指令 裝入(L)和傳送(T)指令可以在存儲區之間或存儲區與過程輸入、輸出之間交換數據。CPU執行這些指令不受邏輯操作結果RLO的影
52、響。 L指令將源操作數裝入累加器1中,而累加器原有的數據移入累加器2中,累加器2中原有的內容被覆蓋。 T指令將累加器1中的內容寫入目的存儲區中,累加器的內容保持不變。對累加器1的裝入和傳送指令L 5 /將立即數5裝入累加器1中L MW 10 /將MW10中的值裝入累加器1中L IBDID 8 /將由數據雙字DID8指出的輸入字節裝入累加器1中T MW 20 /將累加器1中的內容傳送給存儲字MW20 T MWAR1,P#10.0 /將累加器1中的內容傳送給由地址寄存器1加偏移 /量確定的存儲字中 2. 讀取或傳送狀態字 L STW /將狀態字中08位裝入累加器1中,累 加器93l位被清0 T S
53、TW /將累加器1中的內容傳送到狀態字中 3. 裝入時間值或計數值L T1 /將定時器T1中二進制格式的時間值直接裝入累加器1的低字中 LC T1 /將定時器T1的時間值和時基以BCD碼裝入累加器1的低字中L C1/將計數器C1中二進制格式的計數值直接裝入累加器1的低字中LC C1/將計數器C l中的計數值以BCD碼格式裝入累加器1的低字中4. 地址寄存器裝入和傳送 對于地址寄存器,可以不經過累加器l而直接將操作數裝入或傳送,或將兩個地址寄 存器的內容直接交換。下面的例子說明了指令的用法: LAR1 P# I 0.0 /將輸入位I0.0的地址指針裝入AR1 LAR2 P# 0.0 /將二進制數
54、2#0000 0000 0000 0000 0000 0000 0000 0000裝入AR2 LAR1 P#Start /將符號名為Start的存儲器的地址指針裝入AR1 LAR1 AR2 /將AR2的內容裝入AR1 LAR1 DBD 20 /將數據雙字DBD 20的內容裝入AR1 TAR1 AR2 /將ARl的內容傳送至AR2 TAR2 /將AR2的內容傳送至累加器1 TAR1 MD 20 /將ARl的內容傳送至存儲器雙字MD 20 CAR /交換AR1和AR2的內容5. 梯形圖方塊傳送指令表3.15 梯形圖方塊傳送指令圖3.31 使用MOVE方塊指令MOVEENINENOOUTDBW12(
55、 )Q4.0MW10I0.0 A I0.0 JNB _0001 L MW10 T DBW12 SET /使RLO為1 SAVE /使BR為1 CLR_0001: A BR Q4.03.4.2 轉換指令 轉換指令首先將源數據按照規定的格式讀入累加器,然后在累加器中對數據進行類型轉換,最后再將轉換的結果傳送到目的地址。能夠實現的轉換操作有: * BCD碼和整數及長整數間的轉換 ( BTI , ITB , ITD , BTD , DTB , DTR ) * 實數和長整數間的轉換 ( RND , TRUNC , RND+ , RND- ) * 數的取反、取負等 ( INVI , INVD , NEGI
56、 , NEGD , NEGR )1. BCD和整數間的轉換表3.16 BCD和整數間的轉換表3.16 BCD和整數間的轉換 2. 實數和長整數間的轉換 實數和長整數間的轉換見表3.17。 因為實數的數值范圍遠大于32位整數,所以有的實數不能成功地轉換為32位整數。如果被轉換的實數格式非法或超出了32位整數的表示范圍,則得不到有效結果,而且狀態字中的OV和OS被置1。表3.17 實數和長整數間的轉換3. 數的取反、取負表3.18 數的取反、取負4.4.3 比較指令 1. 比較指令表3.19 比 較 指 令表3.19 比 較 指 令表3.19 比 較 指 令圖3.32 整數比較CMP=1IN1IN
57、2MW0MW2I0.1I0.1( S )Q4.0 A I0.0 A I0.1 A( L MW0 L MW2 =I ) S Q4.03.4.4 移位和循環移位指令 移位指令將輸入IN中的內容向左或向右逐位移動。移動次數由輸入值N提供的數值確定。移位后空出的位填以0或符號位(0代表正,1代表負),被移動的最后一位保存在狀態字中的CCl里,CC0和OV被復位為0。可使用條件跳轉指令對CCl進行判斷。循環移位指令與一般移位指令的差別是:循環移位指令的空位填以從IN中移出的位。1無符號數移位指令表3.20 無符號數移位指令圖3.35 輸入IN左移5位2. 有符號數移位指令 表3.21 有符號數移位指令圖
58、3.36 輸入IN帶符號右移4位3. 循環移位指令表3.22 循環移位指令圖3.37 輸入IN循環左移3位圖3.38 輸入IN循環右移3位4.4.5 累加器操作和地址寄存器指令 1. 累加器操作指令表3.23 累加器操作指令圖3.39 CAW、CAD指令執行時累加器1的變化 下面的例子說明了在有條件觸發的程序中INC指令是如何工作的。本例以存儲字節MB10作為循環次數計數暫存器,用INC指令修正循環次數,循環體中的程序連續執行5次。 LOOP:L MB10 /循環體開始,裝載存儲字節至累加器1 INC 1 /循環計數器加1 T MB10 /保存循環次數 L B#16#5 I /比較 JC ER
59、R /如果數據塊長度大于50,則跳轉至ERR標號處 A I0.0 BEU /無條件結束當前塊ERR:CALL FC10 /對于塊長度大于50的情況,調用FC10做相應的處理4. 顯示和空操作指令表3.26 顯示和空操作指令3.5 數據運算指令3.5.1 算術運算指令 在STEP 7中可以對整數、長整數和實數進行加、減、乘、除算術運算。算術運算指令在累加器l和2中進行,累加器2中的值作為被減數或被除數。算術運算的結果保存在累加器l中,累加器1中原有的值被運算結果覆蓋,累加器2中的值保持不變。算術運算指令對狀態字的某些位將產生影響,這些位是CCl和CC0,OV,OS。可以用位操作指令或條件跳轉指令
60、對狀態字中的標志位進行判斷操作。1. 整數算術運算 表3.27 整數算術運算圖3.40 使用整數加法方塊指令下面是與圖3.40所示梯形圖完全對應的語句表程序: A( A I0.0 JNB _0001 L MW0 L MW2 +I T MW10 AN OV /若OV為1,則RLO為0,否則RLO為1 SAVE /使BRRLO CLR _0001:A BR ) NOT S Q4.02. 實數算術運算 表3.28 實數算術運算3.5.2 字邏輯運算指令表3.29 字邏輯運算指令3.5.3 數據運算指令應用舉例 1. 運用算術運算指令完成方程式運算 運用算術運算指令完成下面的方程式運算,其梯形邏輯圖如
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 444 3ZBQS12-10型礦用氣動雙液注漿泵
- 自考行政管理課程反饋試題及答案
- 2025年藥師考試分科目練習試題及答案
- 自考行政管理教材選擇試題及答案
- 護理理論基礎試題及答案2025年
- 2025年行政管理預算管理試題及答案
- 執業護士考試職業素養與實踐指南試題及答案
- 2025年執業醫師考試新課程的設定與學習試題及答案
- 中國傳統美德在現代社會的意義試題及答案
- 護理信息管理試題及答案詳解
- 醫院員工保密協議書模板2025年
- 2025屆江蘇省南京市南京師大附中高考數學一模試卷含解析
- 成語故事《刻舟求劍》課件2
- 2014-2024年高考語文真題匯編之詩歌鑒賞含答案解析
- 49-提高臨邊防護欄桿有效合格率(清泉建筑)
- 鋁單板勞務分包合同
- CT室放射防護PDCA課件
- 2024年部編版八年級語文上冊電子課本(高清版)
- 企業間無償借款合同模板
- 生活水泵房管理制度
- 初三班級學生中考加油家長會課件
評論
0/150
提交評論