版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、第3章 三菱FX2N指令系統(tǒng)計(jì) 教學(xué)提示:本章概述了三菱FX2N系列的內(nèi)部組件,主要介紹三菱FX2N系列的23條基本指令以及實(shí)際應(yīng)用。介紹了步進(jìn)指令及其編程方法,簡要闡述了單流程SFC的結(jié)構(gòu)流程,有關(guān)狀態(tài)轉(zhuǎn)移的編制方法將在第4章詳細(xì)闡述。同時(shí)PLC還有強(qiáng)大的功能指令,本章還將對常用功能指令的格式、類型以及每條功能指令的使用要素進(jìn)行介紹 。 教學(xué)目標(biāo):通過本章的學(xué)習(xí),要求能應(yīng)用基本指令解決一般的繼電接觸控制問題;能熟練設(shè)計(jì)步進(jìn)梯形圖并應(yīng)用步進(jìn)指令解決復(fù)雜問題;掌握各類功能指令及運(yùn)用功能指令編程的方法 。3.1 概概 述述3.2 FX2N系列系列PLC內(nèi)部組件內(nèi)部組件3.3 三菱三菱FX系列基本指
2、令系列基本指令3.5 三菱三菱FX系列功能指令系列功能指令3.4 步進(jìn)指令與狀態(tài)編程步進(jìn)指令與狀態(tài)編程3.1 概述 三菱公司是日本生產(chǎn)PLC的主要廠家之一。先后推出的PLC系列有F(F1、F2)、FX(FX0、FX0N、FX2、FX2C、FX1S、FX1N、FX2N、FX2NC、FX3U、FX3G)、A(A1、A2、A3)和Q等系列。F系列現(xiàn)已停產(chǎn),取而代之的是FX系列。其中FX2N是有代表性的小型PLC,在小型化、高速度、高性能等方面都是FX系列中較高檔次的小型可編程序控制器。而目前FX3U、FX3G也已面市。FX2N的運(yùn)行控制方法是通過儲(chǔ)存的程序周期運(yùn)轉(zhuǎn),I/O控制方法是當(dāng)執(zhí)行END指令時(shí)
3、批次處理方法(I/O指令可以刷新)。 FX2N基本指令的運(yùn)轉(zhuǎn)處理時(shí)間是0.08S/指令,應(yīng)用指令的運(yùn)轉(zhuǎn)處理時(shí)間是1.52至幾百S/指令。FX2N的編程語言是邏輯梯形圖和指令清單(使用步進(jìn)梯形圖能生成SFC類型程序)。FX2N的程序容量是8000步內(nèi)置(使用附加寄存器盒可擴(kuò)展到16000步)。FX2N可用的指令數(shù)目分別是基本指令27條,步進(jìn)梯形指令2條,應(yīng)用指令128條(最大可用298條)。其I/O配置按用戶的選擇最大硬體I/O配置點(diǎn)256,最大軟件可設(shè)定地址輸入256、輸出256。 FX2N基本性能: n如下表所示 3.2 FX2N系列PLC內(nèi)部組件 FX2N系列產(chǎn)品,它內(nèi)部的編程元件,也就是
4、支持該機(jī)型編程語言的軟元件,按通俗叫法分別稱為繼電器、定時(shí)器、計(jì)數(shù)器等,但它們與真實(shí)元件有很大的差別,一般稱它們?yōu)椤败浝^電器”。這些編程用的繼電器,它的工作線圈沒有工作電壓等級、功耗大小和電磁慣性等問題;觸點(diǎn)沒有數(shù)量限制、沒有機(jī)械磨損和電蝕等問題。它在不同的指令操作下,其工作狀態(tài)可以無記憶,也可以有記憶,還可以作脈沖數(shù)字元件使用。一般情況下,X代表輸入繼電器,Y代表輸出繼電器,M代表輔助繼電器,SPM代表專用輔助繼電器,T代表定時(shí)器,C代表計(jì)數(shù)器,S代表狀態(tài)繼電器,D代表數(shù)據(jù)寄存器, MOV代表傳輸?shù)取?. 輸入繼電器X(X0X177) PLC的輸入端子是從外部開關(guān)接受信號的窗口,PLC內(nèi)部與
5、輸入端子連接的輸入繼電器X是用光電隔離的電子繼電器,它們的編號與接線端子編號一致(按八進(jìn)制編號),最多為128個(gè)點(diǎn),線圈的吸合或釋放只取決于PLC外部觸點(diǎn)的狀態(tài)。內(nèi)部有常開/常閉兩種觸點(diǎn)供編程時(shí)隨時(shí)使用,且使用次數(shù)不限。輸入電路的時(shí)間常數(shù)一般小于10ms。各基本單元都是八進(jìn)制輸入的地址,輸入為X000X007,X010X017,X020X027,。它們一般位于機(jī)器的上端。圖3.1 輸入、輸出繼電器等效電路圖2. 輸出繼電器Y(Y0Y177) PLC的輸出端子是向外部負(fù)載輸出信號的窗口。輸出繼電器的線圈由程序控制,輸出繼電器的外部輸出主觸點(diǎn)接到PLC的輸出端子上供外部負(fù)載使用,其余常開/常閉觸點(diǎn)
6、供內(nèi)部程序使用。輸出繼電器的電子常開/常閉觸點(diǎn)使用次數(shù)不限。輸出電路的時(shí)間常數(shù)是固定的。PLC的輸出繼電器是無源的,因此需要外接電源。FX2N系列的輸出繼電器也是采用八進(jìn)制,輸出為Y000Y007,Y010Y017,Y020Y027,最多為128點(diǎn)。它們一般位于機(jī)器的下端。 需要注意的是,F(xiàn)X系列PLC中除了輸入/輸出繼電器采用八進(jìn)制地址外,其余軟組件都是采用十進(jìn)制地址。另外,輸出繼電器的初始狀態(tài)為斷開狀態(tài)。3. 輔助繼電器M PLC內(nèi)有很多的輔助繼電器,其線圈與輸出繼電器一樣,由PLC內(nèi)各軟元件的觸點(diǎn)驅(qū)動(dòng)。作用相當(dāng)于繼電器控制系統(tǒng)中的中間繼電器,用于狀態(tài)暫存、輔助一位運(yùn)算及特殊功能等。輔助繼
7、電器沒有向外的任何聯(lián)系,只供內(nèi)部編程使用。它的電子常開/常閉觸點(diǎn)使用次數(shù)不受限制。但是,這些觸點(diǎn)不能直接驅(qū)動(dòng)外部負(fù)載,外部負(fù)載的驅(qū)動(dòng)必須通過輸出繼電器來實(shí)現(xiàn)。如圖3.2中的M300,它只起到一個(gè)自鎖的功能。圖3.2 輔助繼電器的使用 輔助繼電器的地址編號是采用十進(jìn)制的,共分為三類:通用型輔助繼電器、斷電保持型輔助繼電器和特殊用途型輔助繼電器。其中通用型從M0M499共500點(diǎn);斷電保持型分為可修改和專用,可修改從M500M1023共524點(diǎn),專用從M1024M3071共2048點(diǎn);特殊用途型從M8000M8255共256點(diǎn)。(1) 通用型輔助繼電器(M0M499) 共有500點(diǎn)通用輔助繼電器,
8、用作狀態(tài)暫存、中間過渡等。特點(diǎn)是線圈通電,觸點(diǎn)動(dòng)作,線圈斷電,觸點(diǎn)復(fù)位,沒有斷電保持功能。如果在PLC運(yùn)行時(shí)突然斷電,這些繼電器將全部變?yōu)镺FF狀態(tài)。若再次通電之后,除了因外部輸入信號而變?yōu)镺N狀態(tài)的以外,其余的仍將保持為OFF狀態(tài)。(2) 斷電保持型輔助繼電器(M500M3071) 不少控制系統(tǒng)要求繼電器能夠保持?jǐn)嚯娝查g的狀態(tài)。斷電保持輔助繼電器就是用于這種場合的,斷電保持由PLC內(nèi)裝鋰電池支持。FX2N系列有M500M1023共524個(gè)斷電保持輔助繼電器。當(dāng)PLC斷電并再次通電之后,這些繼電器會(huì)保持?jǐn)嚯娭暗臓顟B(tài)。其他特性與通用輔助繼電器完全一樣。 此外,還有M1024M3071共2048
9、個(gè)斷電保持專用輔助繼電器,它與斷電保持輔助繼電器的區(qū)別是斷電保持輔助繼電器可用參數(shù)來設(shè)定,可變更非斷電保持區(qū)域。而斷電保持專用輔助繼電器的斷電保持特性無法用參數(shù)來改變。(3) 特殊功能輔助繼電器(M8000M8255) 從M8000到M8255這256個(gè)輔助繼電器區(qū)間是不連續(xù)的,也就是說有一些輔助繼電器是根本不存在的,對這些沒有定義的繼電器無法進(jìn)行有意義的操作。有定義的特殊功能輔助繼電器可分為兩大類。 觸點(diǎn)利用型 這類是反映PLC的工作狀態(tài),接點(diǎn)的通或斷的狀態(tài)直接由PLC自動(dòng)驅(qū)動(dòng)。在編制用戶程序時(shí),用戶只能使用其接點(diǎn),不能對其驅(qū)動(dòng)。 例如,M8000:為運(yùn)行監(jiān)控用,PLC運(yùn)行時(shí),M8000始終
10、被接通。這樣在運(yùn)行過程中,其常開觸點(diǎn)始終“閉合”,常閉觸點(diǎn)始終“斷開”。用戶在編制用戶程序時(shí),可以根據(jù)不同的需要,使用M8000的常開觸點(diǎn)或常閉觸點(diǎn)。 M8002:僅在PLC投入運(yùn)行開始瞬間接通一個(gè)掃描周期的初始脈沖。 M8013:每秒發(fā)出一個(gè)脈沖信號,即自動(dòng)地每秒ON一次。 M8020:加減運(yùn)算結(jié)果為零時(shí)狀態(tài)為ON,否則為OFF。 M8060:F0地址出錯(cuò)時(shí)置位(ON)。例如對不存在的X或Y進(jìn)行了操作。 線圈驅(qū)動(dòng)型 這類是可控制的特殊功能輔助繼電器,驅(qū)動(dòng)這些繼電器之后,PLC將做一些特定的操作。例如,M8034: ON時(shí)禁止所有輸出。 M8030: ON時(shí)熄滅電池欠電壓指示燈。 M8050:
11、 ON時(shí)禁止I0中斷。4. 狀態(tài)組件S 狀態(tài)組件是構(gòu)成狀態(tài)轉(zhuǎn)移圖的重要器件,與步進(jìn)順控指令配合使用。常開常閉觸點(diǎn)的使用次數(shù)不受限制。不用于步進(jìn)順控指令時(shí),狀態(tài)組件也可以作為輔助繼電器使用。FX2N系列共有1000點(diǎn)狀態(tài)組件,地址號和功能見表3.9 。5. 定時(shí)器T(T0T255) 定時(shí)器相當(dāng)于繼電器系統(tǒng)中的時(shí)間繼電器,可在程序中用于延時(shí)控制,PLC里的定時(shí)器都是通電延時(shí)型。定時(shí)器工作是將PLC內(nèi)的1ms、10ms、100ms等時(shí)鐘脈沖相加,當(dāng)它的當(dāng)前值等于設(shè)定值時(shí),定時(shí)器的輸出觸點(diǎn)(常開或常閉)動(dòng)作,即常開觸點(diǎn)接通,常閉觸點(diǎn)斷開。定時(shí)器觸點(diǎn)使用次數(shù)不限。定時(shí)器的設(shè)定值可由常數(shù)(K)或數(shù)據(jù)寄存器
12、(D)中的數(shù)值設(shè)定。使用數(shù)據(jù)寄存器設(shè)定定時(shí)器設(shè)定值時(shí),一般使用具有掉電保持功能的數(shù)據(jù)寄存器,這樣在斷電時(shí)不會(huì)丟失數(shù)據(jù)。定時(shí)器按工作方式不同可分為普通定時(shí)器和積算定時(shí)器兩類 。定時(shí)器的地址號及設(shè)定時(shí)間范圍如下:100ms普通定時(shí)器T0T199,共200點(diǎn),設(shè)定值:0.13276.7s。10ms普通定時(shí)器T200TT245,共46點(diǎn),設(shè)定值:0.01327.67s。1ms積算定時(shí)器 T246T249,共4點(diǎn),執(zhí)行中斷保持,設(shè)定值:0.00132.767s。100ms積算定時(shí)器T250T255,共6點(diǎn),定時(shí)中斷保持,設(shè)定值:0.13276.7s。 (1) 普通定時(shí)器(T0T245) 普通定時(shí)器在梯形
13、圖中的使用和動(dòng)作時(shí)序如圖3.3(a)所示: (a) 普通定時(shí)器 (b) 積算定時(shí)器圖3.3 定時(shí)器的使用及動(dòng)作時(shí)序 當(dāng)X000接通時(shí),T0線圈被驅(qū)動(dòng),T0的當(dāng)前值計(jì)數(shù)器對100ms的時(shí)鐘脈沖進(jìn)行累積計(jì)數(shù),當(dāng)前值與設(shè)定值K12相等時(shí),定時(shí)器的輸出接點(diǎn)動(dòng)作,即輸出觸點(diǎn)是在驅(qū)動(dòng)線圈后的1.2秒(100ms12=1.2s)時(shí)才動(dòng)作,當(dāng)T0觸點(diǎn)吸合后,Y000就有輸出。當(dāng)輸入X000斷開或發(fā)生停電時(shí),定時(shí)器就復(fù)位,輸出觸點(diǎn)也復(fù)位。 (2) 積算定時(shí)器(T246T255) 積算定時(shí)器在梯形圖中的使用和動(dòng)作時(shí)序如圖3.3(b)所示。定時(shí)器線圈T250的驅(qū)動(dòng)輸入X001接通時(shí),T250的當(dāng)前值計(jì)數(shù)器對100m
14、s的時(shí)鐘脈沖進(jìn)行累積計(jì)數(shù),當(dāng)該值與設(shè)定值K345相等時(shí),定時(shí)器的輸出觸點(diǎn)動(dòng)作。計(jì)數(shù)中途即使X1斷開或斷電,T250線圈失電,當(dāng)前值也能保持。輸入X001再次接通或復(fù)電時(shí),計(jì)數(shù)繼續(xù)進(jìn)行,直到累計(jì)延時(shí)到34.5s(100ms345=34.5s)時(shí)觸點(diǎn)動(dòng)作。任何時(shí)刻只要復(fù)位輸入X002接通,定時(shí)器就復(fù)位,輸出觸點(diǎn)也復(fù)位。一般情況下,從定時(shí)條件采樣輸入到定時(shí)器延時(shí)輸出控制,其延時(shí)最大誤差為2TC,TC為一個(gè)程序掃描周期。 6. 計(jì)數(shù)器C(C0C255) 計(jì)數(shù)器在程序中用作計(jì)數(shù)控制,F(xiàn)X2N系列提供了256個(gè)計(jì)數(shù)器。當(dāng)計(jì)數(shù)器的當(dāng)前值和設(shè)定值相等時(shí),觸點(diǎn)動(dòng)作。計(jì)數(shù)器的觸點(diǎn)可以無限次使用。根據(jù)計(jì)數(shù)方式和工作
15、特點(diǎn)可分為內(nèi)部信號計(jì)數(shù)器和高速計(jì)數(shù)器。(1) 內(nèi)部信號計(jì)數(shù)器 在執(zhí)行掃描操作時(shí),對內(nèi)部器件X、Y、M、S、T和C的信號(通/斷)進(jìn)行計(jì)數(shù)。其接通時(shí)間和斷開時(shí)間應(yīng)比PLC的掃描周期稍長。內(nèi)部信號計(jì)數(shù)器按工作方式有可分為以下幾種類型。 16位增計(jì)數(shù)器 FX2N中的16位增計(jì)數(shù)器,是16位二進(jìn)制加法計(jì)數(shù)器,它是在計(jì)數(shù)信號的上升沿進(jìn)行計(jì)數(shù),計(jì)數(shù)設(shè)定值為K1K32767,設(shè)定值K0和K1的含義相同,均在第一次計(jì)數(shù)時(shí),其輸出觸點(diǎn)就動(dòng)作。計(jì)數(shù)器又分通用型和斷電保持型,其中C0C99共100點(diǎn)是通用型16位加法計(jì)數(shù)器,C100C199共100點(diǎn)是斷電保持型16位加法計(jì)數(shù)器。當(dāng)切斷PLC的電源時(shí),普通型計(jì)數(shù)器當(dāng)
16、前值自動(dòng)清除,而斷電保持型計(jì)數(shù)器則可存儲(chǔ)停電前的計(jì)數(shù)器數(shù)值,當(dāng)再次通電時(shí),計(jì)數(shù)器可按上一次數(shù)值累積計(jì)數(shù)。圖3.4是加法計(jì)數(shù)器的動(dòng)作過程。 圖3.4 16位增計(jì)數(shù)器的動(dòng)作過程 X1是計(jì)數(shù)器輸入信號,每接通一次,計(jì)數(shù)器C0當(dāng)前值加1,當(dāng)前值與設(shè)定值相等時(shí),即當(dāng)前值為8時(shí),計(jì)數(shù)器輸出觸點(diǎn)動(dòng)作,即常開觸點(diǎn)接通,常閉觸點(diǎn)斷開。當(dāng)C0觸點(diǎn)吸合后,Y000就有輸出。之后即使X1再接通,計(jì)數(shù)器的當(dāng)前值保持不變。當(dāng)復(fù)位輸入X0接通時(shí),執(zhí)行RST復(fù)位指令,計(jì)數(shù)器C0被復(fù)位,當(dāng)前值變?yōu)?,輸出觸點(diǎn)斷開。 計(jì)數(shù)器的設(shè)定值除了用常數(shù)K設(shè)定外,也可由數(shù)據(jù)寄存器來指定,這要用到后述的功能指令MOV。 32位增/減雙向計(jì)數(shù)器
17、 32位增/減雙向計(jì)數(shù)器的計(jì)數(shù)設(shè)定值為- 2147483648+2147483647。雙向計(jì)數(shù)器也有兩種類型,即通用型C200C219共20點(diǎn),斷電保持型C220C234共15點(diǎn)。增/減計(jì)數(shù)由特殊輔助繼電器M8200M8234設(shè)定。對應(yīng)的特殊輔助繼電器接通(ON)時(shí),為減計(jì)數(shù);反之為加計(jì)數(shù)。32位增/減雙向計(jì)數(shù)器對應(yīng)切換的特殊輔助繼電器見表3.10。 與16位計(jì)數(shù)器一樣,可直接用常數(shù)K或間接用數(shù)據(jù)寄存器D的內(nèi)容作為設(shè)定值,設(shè)定值可正、可負(fù)。間接設(shè)定時(shí),數(shù)據(jù)寄存器將連號的內(nèi)容變?yōu)橐粚?,作?2位雙向計(jì)數(shù)器的設(shè)定值。如在指定D0時(shí),D1與D0兩項(xiàng)作為32位設(shè)定值處理。 圖3.5是32位雙向計(jì)數(shù)器的
18、動(dòng)作過程。其中X12為計(jì)數(shù)方向設(shè)定信號,X13為計(jì)數(shù)器復(fù)位信號,X14為計(jì)數(shù)器輸入信號。在計(jì)數(shù)器的當(dāng)前值由-4到-3增加時(shí),輸出觸點(diǎn)接通(置ON),由-3到-4減小時(shí),輸出觸點(diǎn)斷開(復(fù)位)。當(dāng)復(fù)位輸入X13接通時(shí),計(jì)數(shù)器的當(dāng)前值就為0,輸出觸點(diǎn)也復(fù)位。若計(jì)數(shù)器從+2147483647起再進(jìn)行加計(jì)數(shù),當(dāng)前值就變成-2147483648,同樣從-2147483648再減,當(dāng)前值就變成+2147483647,稱為循環(huán)計(jì)數(shù)。 圖3.5 32位雙向計(jì)數(shù)器的動(dòng)作過程(2) 高速計(jì)數(shù)器 高速計(jì)數(shù)器是對外部輸入的高速脈沖信號(周期小于掃描周期)進(jìn)行計(jì)數(shù),可以執(zhí)行數(shù)千赫的計(jì)數(shù)。高速計(jì)數(shù)器共21點(diǎn),其地址號為C2
19、35C255。適用于高速計(jì)數(shù)器輸入端只有6點(diǎn),X000X005,即高速脈沖信號只允許從這6個(gè)端子上引入,其它端子不能對高速脈沖進(jìn)行處理。高速計(jì)數(shù)器的計(jì)數(shù)頻率較高,它們的輸入信號的頻率受二方面的限制。一是輸入端的響應(yīng)速度。二是全部高速計(jì)數(shù)器的處理時(shí)間。因它們采用中斷方式,所以計(jì)數(shù)器用的越少,則可計(jì)數(shù)頻率就越高。單獨(dú)使用單相C235、C236、C246最高可以對60kHz高速脈沖進(jìn)行計(jì)數(shù);C251(雙相)最高頻率為30kHz。當(dāng)多個(gè)高速計(jì)數(shù)、脈沖輸出同時(shí)使用時(shí),頻率會(huì)降低,不超過一定的總計(jì)頻率數(shù)。X006和X007也是高速輸入,但只能用作啟動(dòng)信號而不能用于高速計(jì)數(shù)。 高速計(jì)數(shù)器的選擇并不是任意的,
20、它取決于所需高速計(jì)數(shù)器的類型及高速輸入端子。高速計(jì)數(shù)器的類型可分為: (1) 1相無啟動(dòng)/復(fù)位高速計(jì)數(shù)器C235C240; (2) 1相帶啟動(dòng)/復(fù)位高速計(jì)數(shù)器C241C245; (3) 1相2輸入(雙向)高速計(jì)數(shù)器C246C250; (4) 2相輸入(A-B相型)高速計(jì)數(shù)器C251C255。具體見表3.11。 7. 數(shù)據(jù)寄存器D 數(shù)據(jù)寄存器是計(jì)算機(jī)必不可少的元件,用于存放各種數(shù)據(jù)。FX2N中每一個(gè)數(shù)據(jù)寄存器都是16bit(最高位為正、負(fù)符號位),也可用兩個(gè)數(shù)據(jù)寄存器合并起來存儲(chǔ)32bit數(shù)據(jù)(最高位為正、負(fù)符號位)。(1) 通用數(shù)據(jù)寄存器D 通道分配:D0D199,共200點(diǎn)。 只要不寫入其他
21、數(shù)據(jù),已寫入的數(shù)據(jù)不會(huì)變化。但是,由RUNSTOP時(shí),全部數(shù)據(jù)均清零。(若特殊輔助繼電器M8033已被驅(qū)動(dòng),則數(shù)據(jù)不被清零)。 (2) 停電保持用寄存器 通道分配:D200D511,共312點(diǎn),或D200D999,共800點(diǎn)(由機(jī)器的具體型號定)。 功能基本與通用數(shù)據(jù)寄存器相同。除非改寫,否則原有數(shù)據(jù)不會(huì)丟失,不論電源接通與否,PLC運(yùn)行與否,其內(nèi)容也不變化。然而在二臺PLC作點(diǎn)對點(diǎn)的通信時(shí),D490D509被用作通信操作。(3) 文件寄存器 通道分配:D1000D2999,共2000點(diǎn)。 文件寄存器是在用戶程序存儲(chǔ)器(RAM、EEPROM、EPROM)內(nèi)的一個(gè)存儲(chǔ)區(qū),以500點(diǎn)為一個(gè)單位,最
22、多可在參數(shù)設(shè)置時(shí)到2000點(diǎn)。用外部設(shè)備口進(jìn)行寫入操作。在PLC運(yùn)行時(shí),可用BMOV指令讀到通用數(shù)據(jù)寄存器中,但是不能用指令將數(shù)據(jù)寫入文件寄存器。用BMOV將數(shù)據(jù)寫入RAM后,再從RAM中讀出。將數(shù)據(jù)寫入EEPROM盒時(shí),需要花費(fèi)一定的時(shí)間,務(wù)必請注意。(4) RAM文件寄存器 通道分配:D6000D7999,共2000點(diǎn)。 驅(qū)動(dòng)特殊輔助繼電器M8074,由于采用掃描被禁止,上述的數(shù)據(jù)寄存器可作為文件寄存器處理,用BMOV指令傳送數(shù)據(jù)(寫入或讀出)。(5) 特殊用寄存器 通道分配:D8000D8255,共256點(diǎn)。 是寫入特定目的的數(shù)據(jù)或已經(jīng)寫入數(shù)據(jù)寄存器,其內(nèi)容在電源接通時(shí),寫入初始化值(一
23、般先清零,然后由系統(tǒng)ROM來寫入)。8. 指針P/I (1) 分支指令用指針 P標(biāo)號共有128點(diǎn),從P0P62,P64P127,P63結(jié)束跳轉(zhuǎn)用,不能隨意指定,P63相當(dāng)于END。用來指定跳轉(zhuǎn)指令CJ或子程序調(diào)用指令CALL等分支指令的跳轉(zhuǎn)目標(biāo)。P標(biāo)號在整個(gè)程序中只允許出現(xiàn)一次,但可以多次引用。 P標(biāo)號用在跳轉(zhuǎn)指令中,使用格式:CJ P0 CJ P62 P標(biāo)號用在子程序調(diào)用指令中,使用格式: CALL P0 CALL P63(2) 中斷用指針 標(biāo)號專用于中斷服務(wù)程序的入口地址,有15點(diǎn),其中I000I500共六點(diǎn)用于外中斷,由輸入繼電器X0X5引起中斷。I600I800共三點(diǎn)用于插入計(jì)數(shù)。余下
24、的六點(diǎn), I010I060用于計(jì)數(shù)器中斷。9. 常數(shù)K/H 常數(shù)也作為器件對待,它在存儲(chǔ)器中占有一定的空間,PLC最常用的是兩種常數(shù)K、H。K表示十進(jìn)制,如:K30表示十進(jìn)制的30。H表示十六進(jìn)制,如:H64就是對應(yīng)十進(jìn)制的100。常數(shù)一般用于定時(shí)器、計(jì)數(shù)器的設(shè)定值或數(shù)據(jù)操作。3.3 三菱FX系列基本指令3.3.1 LD、LDI、OUT指令指令3.3.2 AND、ANI指令指令3.3.3 OR、ORI指令指令 3.3.4 LDP、LDF、ANDP、ANDF、ORP、ORF指令指令3.3.5 串聯(lián)電路塊并聯(lián)指令串聯(lián)電路塊并聯(lián)指令ORB和并聯(lián)電路塊串聯(lián)指令和并聯(lián)電路塊串聯(lián)指令A(yù)NB 3.3.6 M
25、PS、MRD、MPP指令指令3.3.10基本指令應(yīng)用舉例基本指令應(yīng)用舉例3.3.7 置位指令置位指令SET和復(fù)位指令和復(fù)位指令RST3.3.8 取反指令取反指令I(lǐng)NV3.3.9 空操作指令空操作指令NOP和結(jié)束指令和結(jié)束指令END3.3.1 LD、LDI、OUT指令 LD(Load)取指令。用于將常開觸點(diǎn)接到母線上。另外,與后述的ANB、ORB指令組合,在分支起點(diǎn)處也可使用。 LDI(Load Inverse)取反指令。與LD的用法相同,只是LDI是對常閉觸點(diǎn)。 OUT(Out)輸出指令,也叫線圈驅(qū)動(dòng)指令。是對輸出繼電器、輔助繼電器、狀態(tài)繼電器、定時(shí)器、計(jì)數(shù)器的線圈驅(qū)動(dòng),對于輸入繼電器不能使用
26、。OUT指令用于并行輸出,在梯形圖中相當(dāng)于線圈是并聯(lián)的。OUT指令能連續(xù)使用多次,不能串聯(lián)使用。 LD、LDI、OUT三條指令的指令說明見表3.12。表3.12 指令說明 LD、LDI是一個(gè)程序步指令,一個(gè)程序步即是一個(gè)字;OUT是多程序步指令,要視目標(biāo)元件而定。當(dāng)對定時(shí)器T、計(jì)數(shù)器C使用OUT指令時(shí),必須設(shè)置常數(shù)K,K值設(shè)定范圍與步數(shù)值如表3.13。表3.13 常數(shù)K的設(shè)定范圍與步數(shù)值 圖3.8 LD、LDI、OUT指令的使用3.3.2 AND、ANI指令 AND(And)與指令。用于單個(gè)常開觸點(diǎn)的串聯(lián)。 ANI(And Inverse)與非指令。用于單個(gè)常閉觸點(diǎn)的串聯(lián)。 AND、ANI的指
27、令說明見表3.14。表3.14 AND、ANI指令說明 AND、ANI都是一個(gè)程序步指令,串聯(lián)觸點(diǎn)個(gè)數(shù)沒有限制,該指令可以連續(xù)多次使用。如果有兩個(gè)以上的觸點(diǎn)并聯(lián)連接,并將這種并聯(lián)回路與其他回路串聯(lián)連接時(shí),要采用后述的ANB指令。OUT指令后,通過觸點(diǎn)對其他線圈使用OUT指令實(shí)現(xiàn)縱接輸出時(shí),如圖3.9中的OUT Y2,如果順序不錯(cuò),可以重復(fù)連續(xù)使用。圖3.9 AND、ANI指令的使用3.3.3 OR、ORI指令OR(Or)或指令。用于單個(gè)常開觸點(diǎn)的并串聯(lián)。ORI(Or Inverse)或非指令。用于單個(gè)常閉觸點(diǎn)的并聯(lián)。OR、ORI的指令說明見表3.15。 表3.15 OR、ORI指令說明 OR、
28、ORI都是一個(gè)程序步指令,并聯(lián)觸點(diǎn)個(gè)數(shù)沒有限制,該指令可以連續(xù)多次使用。如果有兩個(gè)以上的觸點(diǎn)串聯(lián)連接,并將這種串聯(lián)回路與其他回路并聯(lián)連接時(shí),要采用后述的ORB指令。指令使用如圖3.11。 圖3.11 OR、ORI指令的使用3.3.4 LDP、LDF、ANDP、ANDF、ORP、ORF指令LDP取脈沖上升沿指令。用來作上升沿檢測,在輸入信號的上升沿接通一個(gè)掃描周期。 LDF取脈沖下降沿指令。用來作下降沿檢測,在輸入信號的下降沿接通一個(gè)掃描周期。ANDP與脈沖上升沿指令。用來作上升沿檢測。ANDF與脈沖下降沿指令。用來作下降沿檢測。ORP或脈沖上升沿指令。用來作上升沿檢測。ORF或脈沖下降沿指令。
29、用來作下降沿檢測。指令說明如表3.16。 表3.16 指令說明 這是一組與LD、AND、OR指令相對應(yīng)的脈沖式觸點(diǎn)指令。指令中P對應(yīng)上升沿脈沖,F(xiàn)對應(yīng)下降沿脈沖。指令中的觸點(diǎn)僅在操作元件有上升沿/下降沿時(shí)導(dǎo)通一個(gè)掃描周期。LDP、LDF的使用如圖3.12所示,使用LDP指令,Y0僅在X0的上升沿時(shí)接通一個(gè)掃描周期。使用LDF指令,Y1僅在X1的下降沿時(shí)接通一個(gè)掃描周期。圖3.12 LDP、LDF指令的使用 ANDP、ANDF指令的使用如圖3.13所示,使用ANDP指令,在X2接通后,M0僅在X3的上升沿時(shí)接通一個(gè)掃描周期。使用ANDF指令,在X4接通后,Y2僅在X5的下降沿時(shí)接通一個(gè)掃描周期。
30、圖3.13 ANDP、ANDF指令的使用 ORP、ORF指令的使用如圖3.14所示,使用ORP指令, M1僅在X10或X11的上升沿時(shí)接通一個(gè)掃描周期。使用ORF指令,Y3僅在X12或X13的下降沿時(shí)接通一個(gè)掃描周期。圖3.14 ORP、ORF指令的使用3.3.5 串聯(lián)電路塊并聯(lián)指令ORB和并聯(lián)電路塊串聯(lián)指令A(yù)NB ORB串聯(lián)電路塊或。將兩個(gè)或兩個(gè)以上串聯(lián)電路塊并聯(lián)連接的指令。ANB并聯(lián)電路塊與。將并聯(lián)電路塊的始端與前面電路串聯(lián)連接的指令。ORB、ANB的指令說明見表3.17。表3.17 ORB、ANB指令說明 兩個(gè)或兩個(gè)以上的觸點(diǎn)串聯(lián)連接的電路叫串聯(lián)電路塊。串聯(lián)電路塊并聯(lián)連接時(shí),分支開始用L
31、D、LDI指令,分支結(jié)束用ORB指令。ORB指令不帶操作元件,其后不跟任何軟組件編號。使用時(shí)如果有多個(gè)串聯(lián)電路塊按順序與前面的電路并聯(lián)時(shí),對每個(gè)電路塊使用ORB,指令如圖3.15(b),則對并聯(lián)的回路個(gè)數(shù)沒有限制。如果集中使用ORB指令并聯(lián)連接多個(gè)串聯(lián)電路塊時(shí),如圖3.15(c),由于LD、LDI指令的重復(fù)次數(shù)限制在8次以下,因此這種電路塊并聯(lián)的的個(gè)數(shù)限制在8個(gè)以下。一般不推薦集中使用ORB指令的方式。使用舉例如圖3.15。圖3.15 ORB指令的使用 兩個(gè)或兩個(gè)以上觸點(diǎn)并聯(lián)的電路稱為并聯(lián)電路塊。并聯(lián)電路塊串聯(lián)連接時(shí),分支的起點(diǎn)用LD、LDI指令,并聯(lián)電路塊結(jié)束后用ANB指令與前面電路串聯(lián)。A
32、NB指令不帶操作元件,其后不跟任何軟組件編號。若有多個(gè)并聯(lián)電路塊按順序與前面的電路串聯(lián)時(shí),對每個(gè)電路塊使用ANB指令,則對串聯(lián)的回路個(gè)數(shù)沒有限制。而若成批集中使用ANB指令串聯(lián)連接多個(gè)并聯(lián)電路塊時(shí),由于LD、LDI指令的重復(fù)次數(shù)限制在8次以下,因此這種電路塊串聯(lián)的的個(gè)數(shù)限制在8個(gè)以下。ANB指令使用如圖3.16。圖3.16 ANB指令的使用3.3.6 MPS、MRD、MPP指令MPS(Push)進(jìn)棧指令。MRD(Read)讀棧指令。MPP(Pop)出棧指令。這三條指令都是無目標(biāo)元件指令,都為一個(gè)程序步長,這組指令多用于多輸出電路。指令說明見表3.18。表3.18 MPP、MRD、MPP指令說明
33、 PLC中有11個(gè)存儲(chǔ)中間運(yùn)算結(jié)果的存儲(chǔ)區(qū)域被稱為棧存儲(chǔ)器。棧存儲(chǔ)器采用先進(jìn)后出的數(shù)據(jù)存取方式。如圖3.17。圖3.17 棧操作示意使用一次MPS指令就將此時(shí)的運(yùn)算結(jié)果送入棧存儲(chǔ)器的第一層進(jìn)行存儲(chǔ)。再使用MPS指令,又將此時(shí)的運(yùn)算結(jié)果送入棧存儲(chǔ)器的第一層進(jìn)行存儲(chǔ),而將原先存入的數(shù)據(jù)依次移到棧存儲(chǔ)器的下一層。MRD是讀出最上層所存的最新數(shù)據(jù)的專用指令。讀出時(shí),棧內(nèi)數(shù)據(jù)不發(fā)生移動(dòng),仍然保持在棧內(nèi)的位置不變。使用MPP指令,各層數(shù)據(jù)依次向上移動(dòng),將最上端的數(shù)據(jù)讀出后,該數(shù)據(jù)就從棧存儲(chǔ)器中消失。MPS指令用于存儲(chǔ)電路中有分支處的邏輯運(yùn)算結(jié)果。MPS、MPP必須成對使用,連續(xù)使用的次數(shù)應(yīng)小于11。MRD
34、可以多次使用,但最終輸出回路必須采用MPP指令,從而在讀出存儲(chǔ)數(shù)據(jù)的同時(shí)將它復(fù)位。 MPS、MRD、MPP指令的使用如圖3.18一層堆棧,圖3.19二層堆棧。圖3.20是一個(gè)四層堆棧梯形圖,如改為圖3.21,則不必使用MPS指令,編程也方便。 圖3.18 一層堆棧梯形圖圖3.19 二層堆棧梯形圖圖3.20 四層堆棧梯形圖圖3.21 不用MPS指令的圖3.20等效梯形圖3.3.7 置位指令SET和復(fù)位指令RST SET置位指令。使動(dòng)作保持。 RST復(fù)位指令。消除動(dòng)作保持,當(dāng)前值及寄存器清零。 SET指令的操作目標(biāo)元件為Y,M,S,而RST指令的操作元件為Y、M、S、T、C、D、V、Z。這兩條指令
35、是13程序步。指令說明見表3.19。表3.19 SET、RST指令說明 SET和RST指令的使用沒有順序限制,也可以多次使用,并且SET和RST之間可以插入別的程序,但最后執(zhí)行的一條有效。具體使用如圖3.22。圖3.22 SET、RST的使用 RST指令的操作元件除了與SET指令相同的Y,M,S外,還有T,C,D。即對數(shù)據(jù)寄存器D和變址寄存器V、Z的清零操作,以及對定時(shí)器T(包括累計(jì)定時(shí)器)和計(jì)數(shù)器C的復(fù)位,使它們的當(dāng)前計(jì)時(shí)值和計(jì)數(shù)值清零。如圖3.23,C0對X1的上升沿次數(shù)進(jìn)行增計(jì)數(shù),當(dāng)達(dá)到設(shè)定值K10時(shí),輸出觸點(diǎn)C0動(dòng)作。此后,X1即使再有上升沿的變化,計(jì)數(shù)器的當(dāng)前值不變,輸出觸點(diǎn)仍保持動(dòng)
36、作。為了將此清除,讓X0接通,對計(jì)數(shù)器復(fù)位,使輸出觸點(diǎn)復(fù)位。圖3.23 對計(jì)數(shù)器的復(fù)位使用3.3.8 取反指令I(lǐng)NV INV指令是將INV指令執(zhí)行之前的運(yùn)算結(jié)果取反的指令,即執(zhí)行INV指令前的運(yùn)算結(jié)果為OFF,執(zhí)行INV指令后的運(yùn)算為ON。該指令不能直接與母線連接,也不能單獨(dú)使用。該指令是一個(gè)無操作元件指令,占一個(gè)程序步。指令說明見表3.20。表3.20 INV指令說明 INV的使用如圖3.24所示,當(dāng)X0斷開時(shí),Y0為ON,如果X0接通,則Y0為OFF。圖3.24 INV指令的使用3.3.9 空操作指令NOP和結(jié)束指令ENDNOP空操作指令??找粭l指令(或用于刪除一條指令)。END程序結(jié)束指
37、令。指令說明見表3.21。表3.21 NOP、END指令說明 在普通的指令加入NOP指令,對程序執(zhí)行結(jié)果沒有影響。但是將已寫入的指令換成NOP,則被換的程序被刪除,程序發(fā)生變化。所以可用NOP指令對程序進(jìn)行編輯。比如,AND和ANI指令改為NOP,相當(dāng)于串聯(lián)接點(diǎn)被短路。OR和ORI指令改為NOP,相當(dāng)于并連接點(diǎn)被開路。變化見圖3.25。如用NOP指令修改后的電路不合理,梯形圖將出錯(cuò)。執(zhí)行程序全清操作后,全部步指令都變?yōu)镹OP。圖3.25 NOP指令的使用 END是程序結(jié)束指令,在程序的最后寫入END指令,則END以后的程序不再執(zhí)行。如果程序結(jié)束不用END,在程序執(zhí)行時(shí)會(huì)掃描完整個(gè)用戶存儲(chǔ)器,延
38、長程序的執(zhí)行時(shí)間,有時(shí)PLC會(huì)提示程序出錯(cuò),程序不能運(yùn)行。在程序調(diào)試階段,在各程序段插入END指令,可依次檢查各程序段的動(dòng)作,確認(rèn)前面的程序動(dòng)作無誤后,依次刪去END指令,有助于程序的調(diào)試。 3.3.10 基本指令應(yīng)用舉例綜合以上所學(xué)的基本指令,本節(jié)將舉例說明基本指令的應(yīng)用。1. 保持電路 如圖3.27所示,將輸入信號加以保持記憶。當(dāng)X000接通,輔助繼電器M0接通并保持,Y000有輸出。X000斷開后,Y000仍有輸出.只有當(dāng)X001接通,其常閉觸點(diǎn)斷開,才能使M0斷開,使Y000無輸出。圖3.27 保持電路2. 延時(shí)斷開電路 如圖3.28所示,當(dāng)X000接通,Y000有輸出且觸點(diǎn)自鎖保持,
39、當(dāng)X000斷開后,啟動(dòng)內(nèi)部定時(shí)器T0,定時(shí)5s后,定時(shí)器常閉觸點(diǎn)斷開,輸出Y000斷開。圖3.28 延時(shí)斷開電路(a) 梯形圖 (b) 指令表 (c) 時(shí)序圖 3. 振蕩電路 如圖3.29所示,當(dāng)X000接通,輸出Y000閃爍,接通與斷開交替運(yùn)行,接通時(shí)間為1s由定時(shí)器T0設(shè)定,斷開時(shí)間為2s由定時(shí)器T1設(shè)定。圖3.29 振蕩電路3.4 步進(jìn)指令與狀態(tài)編程 在編程中對于一個(gè)復(fù)雜的控制系統(tǒng),尤其是順序控制系統(tǒng),由于內(nèi)部的聯(lián)鎖、互動(dòng)關(guān)系極其復(fù)雜,其梯形圖往往長達(dá)數(shù)百行,編制的難度較大,而且這類程序的可讀性也大大降低。運(yùn)用SFC語言編制復(fù)雜的順控程序,初學(xué)者可以很容易掌握。另外也為調(diào)試、試運(yùn)行帶來方
40、便。SFC語言是一種通用的流程圖語言,三菱PLC在基本邏輯指令之外增加了兩條簡單的步進(jìn)順控指令(STL,意為Step Ladder),同時(shí)輔之以大量狀態(tài)元件,就可以用類似于SFC語言的狀態(tài)轉(zhuǎn)移圖方式編程。3.4.1 步進(jìn)指令步進(jìn)指令STL、RET 3.4.2 單流程單流程SFC與步進(jìn)梯形圖編程與步進(jìn)梯形圖編程 3.4.3 單流程狀態(tài)轉(zhuǎn)移圖(步進(jìn)梯形圖)的編程單流程狀態(tài)轉(zhuǎn)移圖(步進(jìn)梯形圖)的編程舉例舉例 3.4.1 步進(jìn)指令STL、RET PLC有專門用于編制順序控制程序的步進(jìn)指令及編程元件。STL和RET是一對步進(jìn)指令,STL是步進(jìn)開始指令,后面的操作元件只能是狀態(tài)組件S,在梯形圖中直接與母線
41、相連,表示每一步的開始。RET是步進(jìn)結(jié)束指令,后面沒有操作數(shù),是指狀態(tài)流程結(jié)束,用于返回主程序(母線)。指令說明見表3.22。表3.22 步進(jìn)指令說明 STL只能與狀態(tài)組件S配合時(shí)才具有步進(jìn)功能。FX2N系列的狀態(tài)組件中有900點(diǎn)(S0S899)可用于構(gòu)成狀態(tài)轉(zhuǎn)移圖,其中S0S9用于初始步,S10S19用于返回原點(diǎn)。使用STL指令的狀態(tài)組件的常開觸點(diǎn)稱為STL觸點(diǎn),用符號 表示,沒有常閉的STL觸點(diǎn)。 指令使用如圖3.30所示。圖3.30 STL指令使用 從圖中可以看出狀態(tài)轉(zhuǎn)移圖與梯形圖之間的關(guān)系。在梯形圖中引入步進(jìn)接點(diǎn)和步進(jìn)返回指令后,就可以從狀態(tài)轉(zhuǎn)移圖轉(zhuǎn)換成相應(yīng)的步進(jìn)梯形圖和指令表。對應(yīng)圖
42、3.32(a)的狀態(tài)轉(zhuǎn)移圖的步進(jìn)梯形圖和指令表如圖3.30(b)(c)。狀態(tài)組件代表狀態(tài)轉(zhuǎn)移圖各步,每一步都具有三種功能:負(fù)載的驅(qū)動(dòng)處理、指定轉(zhuǎn)換條件和指定轉(zhuǎn)換目標(biāo)。 STL指令的執(zhí)行過程為:當(dāng)步S20為活動(dòng)步時(shí),S20的STL觸點(diǎn)接通,負(fù)載Y0有輸出。如果轉(zhuǎn)換條件X0滿足,后續(xù)步S21被置位變成活動(dòng)步,同時(shí)前級步S20自動(dòng)斷開變成不活動(dòng)步,輸出Y0斷開。 STL指令的使用特點(diǎn):(1) 使用STL指令使新的狀態(tài)置位,前一狀態(tài)自動(dòng)復(fù)位。當(dāng)STL觸點(diǎn)接通后,與此相連的電路被執(zhí)行;當(dāng)STL觸點(diǎn)斷開時(shí),與此相連的電路停止執(zhí)行。若要保持普通線圈的輸出,可使用具有自保持功能的SET和RST指令。 (2)
43、STL觸點(diǎn)與左母線相連,與STL觸點(diǎn)右側(cè)相連的觸點(diǎn)要使用LD、LDI指令。也就是說,步進(jìn)指令STL有建立子母線的功能,當(dāng)某個(gè)狀態(tài)被激活時(shí),步進(jìn)梯形圖上的母線就移到子母線上,所有操作均在子母線上進(jìn)行。(3) 使用RET指令使LD、LDI點(diǎn)返回左母線。(4) 同一狀態(tài)組件的STL觸點(diǎn)只能使用一次(單流程狀態(tài)轉(zhuǎn)移)。(5) 梯形圖中同一元件的線圈可以被不同的STL觸點(diǎn)驅(qū)動(dòng),也就是說使用STL指令時(shí)允許雙線圈輸出。(6) STL觸點(diǎn)可以直接驅(qū)動(dòng)或通過別的觸點(diǎn)驅(qū)動(dòng)Y、M、S、T等元件的線圈和功能指令。(7) STL指令后不能直接使用入棧(MPS)指令。在STL和RET指令之間不能使用MC、MCR指令。(
44、8) STL指令僅對狀態(tài)組件有效,當(dāng)狀態(tài)組件不作為STL指令的目標(biāo)元件時(shí),就具有一般輔助繼電器的功能。 3.4.2 單流程SFC與步進(jìn)梯形圖編程 1. 單流程SFC 單流程SFC是狀態(tài)轉(zhuǎn)移圖中的最基本的結(jié)構(gòu)流程。如圖3.31所示就是一個(gè)單流程的結(jié)構(gòu)。是由順序排列、依次有效的狀態(tài)序列組成,每個(gè)狀態(tài)的后面只跟一個(gè)轉(zhuǎn)移條件,每個(gè)轉(zhuǎn)移條件后面也只連接一個(gè)狀態(tài)。 圖3.31 單流程的SFC流程 圖中,當(dāng)狀態(tài)S20有效時(shí),若轉(zhuǎn)移條件X001接通,狀態(tài)將從S20轉(zhuǎn)移到S21,一旦轉(zhuǎn)移完成,S20同時(shí)復(fù)位。同樣,當(dāng)狀態(tài)S21有效時(shí),若轉(zhuǎn)移條件X002接通,狀態(tài)將從S21轉(zhuǎn)移到S22,一旦轉(zhuǎn)移完成,S21同時(shí)復(fù)
45、位。以此類推,直至流程中的最后一個(gè)狀態(tài)。2. 狀態(tài)編程的特點(diǎn)(1) 狀態(tài)轉(zhuǎn)移圖和步進(jìn)梯形圖表達(dá)的都是同一個(gè)程序,優(yōu)點(diǎn)是讓用戶每次只考慮一個(gè)狀態(tài),而不必考慮其他的狀態(tài),從而使編程更容易,而且還可以減少指令的程序步數(shù)。(2) 狀態(tài)轉(zhuǎn)移圖中的一個(gè)狀態(tài)表示順序控制過程中的一個(gè)工步,因此步進(jìn)梯形圖也特別適用于時(shí)間和位移等順序的控制過程,也能形象、直觀地表示順控過程。(3) 狀態(tài)編程開始時(shí),必須用STL指令使STL接點(diǎn)接通,從而使主母線與子母線接通,連在子母線上的狀態(tài)電路才能執(zhí)行,這時(shí)狀態(tài)就被激活。(4) 狀態(tài)的三個(gè)功能是在子母線上實(shí)現(xiàn)的,所以只有STL接點(diǎn)接通,該狀態(tài)的負(fù)載驅(qū)動(dòng)和狀態(tài)轉(zhuǎn)移才能被掃描執(zhí)行。
46、反之,STL接點(diǎn)斷開,對應(yīng)狀態(tài)就未被激活,則負(fù)載驅(qū)動(dòng)和狀態(tài)轉(zhuǎn)移就不可能執(zhí)行,該電路將不被掃描而跳過。因此,除初始狀態(tài)外,其他所有狀態(tài)只有在轉(zhuǎn)移條件成立時(shí)才能被前一狀態(tài)置位而激活,一旦下一狀態(tài)激活,前一狀態(tài)就自動(dòng)關(guān)閉。基于這一特點(diǎn),使各狀態(tài)之間的關(guān)系十分清晰單純,不相鄰狀態(tài)間的連鎖關(guān)系將不復(fù)存在,只需集中考慮實(shí)現(xiàn)本狀態(tài)的三大功能即可。(5) 使程序的可讀性更好、更便于理解,也使程序的調(diào)試、故障排除變得相對簡單。(6) 狀態(tài)編程的最后,必須使用步進(jìn)返回指RET,從子母線返回主母線。若沒有RET指令,會(huì)將后面的所有程序還看成是當(dāng)前狀態(tài)中的指令,由于PLC程序是循環(huán)掃描的,也包括了最開始處的指令,這就
47、會(huì)引起程序出錯(cuò)而不能運(yùn)行。 3. 狀態(tài)編程的規(guī)則 從圖3.32狀態(tài)轉(zhuǎn)移圖中S20的狀態(tài)來看,每個(gè)狀態(tài)具有驅(qū)動(dòng)負(fù)載、指定轉(zhuǎn)移方向和指定轉(zhuǎn)移條件三個(gè)功能。其中指定轉(zhuǎn)移方向和指定轉(zhuǎn)移條件是必不可少的,而負(fù)載驅(qū)動(dòng)則視具體情況,沒有負(fù)載的狀態(tài)就不必進(jìn)行負(fù)載驅(qū)動(dòng)。在圖中當(dāng)STL接點(diǎn)接通,S20狀態(tài)有效時(shí),先是用OUT指令驅(qū)動(dòng)輸出線圈Y0,然后才是用“SET S21”指令決定轉(zhuǎn)移方向,轉(zhuǎn)向下一相鄰狀態(tài)S21。單流程中的其他狀態(tài)的編程就參照此模板進(jìn)行。狀態(tài)編程的規(guī)則如下。(1) 初始狀態(tài)的編程。初始狀態(tài)一般是指一個(gè)順控工藝過程最開始的狀態(tài)。狀態(tài)轉(zhuǎn)移圖起始位置的狀態(tài)就是初始狀態(tài),初始狀態(tài)編程必須在其他狀態(tài)之前。
48、狀態(tài)組件中S0S9共10個(gè)狀態(tài)組件專用作初始狀態(tài)。程序首次開始運(yùn)行時(shí),初始狀態(tài)必須用其他方法預(yù)先驅(qū)動(dòng),使它處于工作狀態(tài),否則狀態(tài)流程就不可能進(jìn)行,一般利用系統(tǒng)的初始條件實(shí)現(xiàn)如可由PLC從STOPRUN切換瞬間的初始脈沖使特殊輔助繼電器接通來驅(qū)動(dòng)初始狀態(tài),如圖3.32就是用這一方法來驅(qū)動(dòng)初始狀態(tài)S0,使其置1。開始運(yùn)行后,初始狀態(tài)可由其他狀態(tài)來驅(qū)動(dòng)。 每一個(gè)初始狀態(tài)下面的分支數(shù)總和不能超過16個(gè),這是對總分支數(shù)的限制,而對總狀態(tài)數(shù)則沒有限制。從每一個(gè)分支點(diǎn)上引出的分支不能超過8個(gè),所以超過8個(gè)的分支不能集中在一個(gè)分支點(diǎn)上引出。初始狀態(tài)編程也可用后面的IST指令。(2) 一般狀態(tài)的編程。除了初始狀
49、態(tài)外,一般狀態(tài)組件必須在其他狀態(tài)后加入STL指令來進(jìn)行驅(qū)動(dòng),也就是說不能用除狀態(tài)組件之外的其他方式驅(qū)動(dòng)。一般狀態(tài)編程時(shí),必須先負(fù)載驅(qū)動(dòng),后轉(zhuǎn)移處理。狀態(tài)組件不可重復(fù)使用。(3) 相鄰的兩個(gè)狀態(tài)中不能使用同一個(gè)定時(shí)器,否則會(huì)導(dǎo)致定時(shí)器沒有復(fù)位機(jī)會(huì),而引起混亂。在非相鄰的狀態(tài)中可以使用同一個(gè)定時(shí)器。(4) 連續(xù)轉(zhuǎn)移用SET,非連續(xù)轉(zhuǎn)移用OUT。若狀態(tài)向相鄰的下一狀態(tài)連續(xù)轉(zhuǎn)移使用SET指令,但若向非相鄰的狀態(tài)轉(zhuǎn)移,則應(yīng)改用OUT指令。(5) 在STL與RET指令之間不能使用MC、MCR等指令。MPS指令也不能緊接著STL后使用。在子程序或中斷服務(wù)程序中,不能使用STL。 圖3.32 初始狀態(tài)S0的驅(qū)
50、動(dòng)梯形圖3.4.3 單流程狀態(tài)轉(zhuǎn)移圖(步進(jìn)梯形圖)的編程舉例 例例3.2 圖3.33是自動(dòng)臺車控制示意圖,臺車在啟動(dòng)前位于導(dǎo)軌的中部。一個(gè)工作周期的控制工藝如下:1) 按下啟動(dòng)按鈕SB,臺車電動(dòng)機(jī)M正轉(zhuǎn),臺車前進(jìn),碰到限位開關(guān)SQ1后,臺車電動(dòng)機(jī)M反轉(zhuǎn),臺車后退。2) 臺車后退碰到限位開關(guān)SQ2后,臺車電動(dòng)機(jī)M停轉(zhuǎn),臺車停車,停5s,第二次前進(jìn),碰到限位開關(guān)SQ3,再次后退。3) 當(dāng)后退再次碰到限位開關(guān)SQ2時(shí),臺車停止。 為設(shè)計(jì)本控制系統(tǒng)的梯形圖,先安排輸入、輸出口及機(jī)內(nèi)器件。臺車由電動(dòng)機(jī)M驅(qū)動(dòng),正轉(zhuǎn)(前進(jìn))由PLC的輸出點(diǎn)Y1控制,反轉(zhuǎn)(后退)由Y2控制。為了解決延時(shí)5s,選用定時(shí)器T0。
51、啟動(dòng)按鈕SB及限位開關(guān)SQ1、SQ2、SQ3分別接到X0、X1、X2、X3。狀態(tài)轉(zhuǎn)移圖解決順控問題的方法步驟如下:(1) 將整個(gè)控制系統(tǒng)過程按任務(wù)要求分解,臺車自動(dòng)往返控制系統(tǒng)流程圖見圖3.34。從圖3.34可以看出該圖的特點(diǎn): 將復(fù)雜的任務(wù)或過程分解成若干個(gè)工序(狀態(tài))。無論多么復(fù)雜的過程均能分化為小的工序,這非常有利于程序的結(jié)構(gòu)化設(shè)計(jì)。圖3.33 自動(dòng)臺車示意圖 相對于某一具體的工序來說,控制任務(wù)實(shí)現(xiàn)了簡化,給局部程序的編制帶來了方便。 整體程序是局部程序的綜合,只要弄清各工序成立的條件、工序轉(zhuǎn)移的條件和轉(zhuǎn)移的方向,就可進(jìn)行這類圖形的設(shè)計(jì)。 狀態(tài)轉(zhuǎn)移流程圖可讀性強(qiáng)、容易理解,能清晰地反映工
52、藝控制全過程。 將圖中的“工序”更換為“狀態(tài)”,“準(zhǔn)備”更換為“初始狀態(tài)”,就得到了狀態(tài)轉(zhuǎn)移圖。狀態(tài)轉(zhuǎn)移圖是狀態(tài)編程的重要工具。狀態(tài)編程的一般思想為:將一個(gè)復(fù)雜的控制過程分解為若干個(gè)工作狀態(tài),弄清各狀態(tài)的工作內(nèi)容(狀態(tài)的功能、轉(zhuǎn)移條件和轉(zhuǎn)移方向),根據(jù)總的控制順序要求,將各獨(dú)立狀態(tài)聯(lián)系起來,形成狀態(tài)轉(zhuǎn)移圖,進(jìn)行繪制梯形圖程序,寫出語句表。(2) 分配、確定狀態(tài)器元件,弄清每個(gè)被分配狀態(tài)器的功能,見表3.23。 需注意的是S20與S23、S21與S24功能相同,但它們是狀態(tài)轉(zhuǎn)移圖中的不同工序,也就是不同狀態(tài),故編號也不相同。圖3.34 臺車自動(dòng)往返狀態(tài)轉(zhuǎn)換流程圖表3.23 工序與狀態(tài)器及功能對應(yīng)
53、表(3) 找出每個(gè)狀態(tài)的轉(zhuǎn)移條件。狀態(tài)轉(zhuǎn)移圖就是狀態(tài)和狀態(tài)轉(zhuǎn)移條件及轉(zhuǎn)移方向構(gòu)成的流程圖,所以弄清轉(zhuǎn)移條件是十分必要的。本例中各狀態(tài)的轉(zhuǎn)移條件是:S20轉(zhuǎn)移條件SB (X0) S21轉(zhuǎn)移條件SQ1 (X1)S22轉(zhuǎn)移條件SQ2 (X2)S23轉(zhuǎn)移條件定時(shí)器(T0)S24轉(zhuǎn)移條件SQ3 (X3)(4) 由以上分析,可以得到臺車往返控制的順控狀態(tài)轉(zhuǎn)移圖,見圖3.35(a)。(5) 與SFC對應(yīng)的步進(jìn)梯形圖,見圖3.35(b)。(6) 根據(jù)狀態(tài)轉(zhuǎn)移圖和梯形圖寫出指令語句表,見圖3.35(c)。【例2】設(shè)計(jì)三只彩燈(HL1、HL2、HL3)自動(dòng)閃爍的程序,并寫出指令語句表??刂乒に囈螅?) HL1亮
54、1s后,HL2亮,同時(shí)HL1滅;HL2亮1s后,HL3亮,同時(shí)HL2滅;HL3亮1s后,三只燈一齊亮1s,滅1s,再一齊亮1s,回到起始點(diǎn)。2) 用一只點(diǎn)動(dòng)按鈕SB控制三彩燈閃爍。(1) PLC控制的I/O端口分配見表3.24。表3.24 彩燈自動(dòng)閃爍控制I/O分配表(2) 彩燈自動(dòng)閃爍狀態(tài)轉(zhuǎn)移圖如圖3.36。(3) 步進(jìn)梯形圖如圖3.37。(4) 指令表如圖3.38。 (a) 狀態(tài)轉(zhuǎn)移圖 (b) 梯形圖 (c) 指令表圖3.35 臺車自動(dòng)往返控制 (a) 狀態(tài)轉(zhuǎn)移圖 圖3.36 彩燈自動(dòng)閃爍狀態(tài)轉(zhuǎn)移圖圖3.37 彩燈自動(dòng)閃爍步進(jìn)梯形圖圖3.38 彩燈自動(dòng)閃爍指令表 3.5 三菱FX系列功能指
55、令 PLC的基本指令是基于繼電器、定時(shí)器、計(jì)數(shù)器類等軟元件,主要用于邏輯處理的指令。作為工業(yè)控制計(jì)算機(jī),PLC僅有基本指令是遠(yuǎn)遠(yuǎn)不夠的?,F(xiàn)代工業(yè)控制在許多場合需要數(shù)據(jù)處理,因而PLC制造商在PLC中引入應(yīng)用指令,也稱功能指令。 FX系列PLC除了基本指令、步進(jìn)指令外,還有200多條功能指令??煞譃槌绦蛄飨蚩刂啤?shù)據(jù)傳送與比較、算術(shù)與邏輯運(yùn)算、數(shù)據(jù)移位與循環(huán)、數(shù)據(jù)處理、高速處理、方便指令、外部設(shè)備通信(I/O模塊、功能模塊)、浮點(diǎn)運(yùn)算、定位運(yùn)算、時(shí)鐘運(yùn)算、觸點(diǎn)比較等幾大類。功能指令實(shí)際上就是許多功能不同的子程序。圖3.39 功能指令格式 圖3.39這條程序的意思是:當(dāng)X0為ON時(shí),把常數(shù)K123
56、送到數(shù)據(jù)寄存器D20中去。其中X0是執(zhí)行條件,MOV是傳送功能指令,K123是源操作數(shù),D20是目標(biāo)操作數(shù)。3.5.1 指令的基本規(guī)則指令的基本規(guī)則 3.5.2 傳送指令傳送指令MOV 3.5.3 移位傳送指令移位傳送指令SMOV 3.5.4 取反傳送指令取反傳送指令CML 3.5.5 傳送指令傳送指令BMOV 3.5.6 多點(diǎn)傳送指令多點(diǎn)傳送指令FMOV 3.5.7 數(shù)據(jù)交換指令數(shù)據(jù)交換指令XCH 3.5.8 比較指令比較指令CMP 3.5.9 間比較指令間比較指令ZCP 3.5.10 二進(jìn)制碼轉(zhuǎn)換指令二進(jìn)制碼轉(zhuǎn)換指令BIN3.5.11 BCD碼轉(zhuǎn)換指令碼轉(zhuǎn)換指令 3.5.12 BIN加加1
57、指令指令I(lǐng)NC 3.5.13 BIN減減1指令指令DEC 3.5.14 區(qū)間復(fù)位指令區(qū)間復(fù)位指令ZRST 3.5.15 七段解碼指令七段解碼指令SEGD 3.5.16 位右移指令位右移指令SFTR 3.5.17 位左移指令位左移指令SFTL 3.5.1 功能指令的基本規(guī)則 1. 功能指令的表示方法 功能指令由指令助記符、功能號、操作數(shù)等組成。在簡易編程器中,輸入功能指令時(shí)以功能號輸入功能指令;在編程軟件中,輸入功能指令時(shí)以指令助記符輸入功能指令。功能指令的表式形式見表3.25。表3.25 功能指令的表示形式說明如下:(1) 每一條功能指令有一個(gè)功能號和一個(gè)助記符,兩者嚴(yán)格對應(yīng)。由表3.25可見
58、,助記符MEAN(求平均值)對應(yīng)的功能號為FNC45。(2) 操作數(shù)(或稱操作元件) 有些功能指令只有助記符而無操作數(shù),但大多數(shù)功能指令在助記符之后還必須有15個(gè)操作數(shù)。組成部分有: S表示源操作數(shù),若使用變址寄存器,表示為S,多個(gè)源操作數(shù)用S1S2或者S1S2 表示。 D表示目標(biāo)操作數(shù),若使用變址寄存器,表示為D,多個(gè)目標(biāo)操作數(shù)用D1D2或者D1D2 表示。 n表示其他操作數(shù),常用于表示常數(shù)或?qū)和D的補(bǔ)充說明。有多個(gè)時(shí)用n1、n2表示。表示常數(shù)時(shí),K表示十進(jìn)制數(shù),H表示十六進(jìn)制數(shù)。(3) 程序步。在程序中,每條功能指令占用一定的程序步數(shù),功能號和助記符占一步,每個(gè)操作數(shù)占2步或4步(16位
59、操作數(shù)是2步,32位操作數(shù)是4步)。(4) 功能指令助記符前加D,表示處理32位數(shù)據(jù);指令前不加D,表示處理16位數(shù)據(jù)。2. 功能指令的執(zhí)行方式 功能指令執(zhí)行方式有連續(xù)執(zhí)行和脈沖執(zhí)行兩種方式。由表3.25可見,在指令的助記符后加符號(P)表示脈沖執(zhí)行方式。助記符后不加(P)則為連續(xù)執(zhí)行方式。如圖3.40所示,在X0從OFFON變化時(shí),該指令執(zhí)行一次。當(dāng)執(zhí)行條件X1為ON時(shí),每個(gè)掃描周期都要執(zhí)行一次。 對某些功能指令如INC、DEC等,用連續(xù)執(zhí)行方式在實(shí)用中可能會(huì)帶來問題。如圖4.41所示,是一條INC指令,是對目標(biāo)組件D10進(jìn)行加1操作的。假設(shè)該指令以連續(xù)方式工作的話,那么只要X000是接通的
60、,則每個(gè)掃描周期都會(huì)對目標(biāo)組件加1,而這在許多實(shí)際的控制中是不允許的。為了解決這類問題,在指令助記符的后面加符號(P),設(shè)置了指令的脈沖執(zhí)行方式。 圖3.40 指令執(zhí)行形式 INC(P)指令的含義:每當(dāng)X000從斷開變?yōu)榻油〞r(shí),目標(biāo)組件就被加1一次。也就是說,每當(dāng)X000來了一個(gè)上升沿,才會(huì)執(zhí)行加1。而在其他情況下,即使X000始終是接通的,都不會(huì)執(zhí)行加1指令。 由此可見,在不需要每個(gè)掃描周期都執(zhí)行指令時(shí),可以采用脈沖執(zhí)行方式的指令,這樣還能縮短程序的執(zhí)行時(shí)間。圖3.41 脈沖執(zhí)行方式的INC 指令3. 位元件只處理ON/OFF兩種狀態(tài),用一個(gè)二進(jìn)制位表達(dá)的元件稱位元件。如X、Y、M、S都是位
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 智能農(nóng)業(yè)的土地利用規(guī)劃
- 四川電影電視學(xué)院《動(dòng)畫史與經(jīng)典作品賞析》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《藥用植物學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《食品技術(shù)原理》2022-2023學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《結(jié)構(gòu)力學(xué)二》2021-2022學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《家庭社會(huì)工作》2023-2024學(xué)年第一學(xué)期期末試卷
- 石河子大學(xué)《房屋建筑學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《自動(dòng)控制原理》2023-2024學(xué)年期末試卷
- 沈陽理工大學(xué)《商業(yè)攝影》2023-2024學(xué)年第一學(xué)期期末試卷
- 沈陽理工大學(xué)《建筑實(shí)務(wù)》2021-2022學(xué)年第一學(xué)期期末試卷
- 詳細(xì)解讀公文格式
- (全冊)教學(xué)設(shè)計(jì)(教案)新綱要云南省實(shí)驗(yàn)教材小學(xué)信息技術(shù)四年級第3冊全冊
- 農(nóng)產(chǎn)品市場營銷-東北農(nóng)業(yè)大學(xué)中國大學(xué)mooc課后章節(jié)答案期末考試題庫2023年
- 當(dāng)前房地產(chǎn)市場狀況下如何正確運(yùn)用收益法評估
- EN81-41升降平臺歐洲標(biāo)準(zhǔn)
- 內(nèi)鏡下粘膜剝離術(shù)-課件
- 2024屆福建省泉州高考一模地理試題(解析版)
- 2023年06月深圳市坪山區(qū)機(jī)關(guān)事業(yè)單位公共輔助員適崗能力招考筆試題庫含答案解析
- 職場心理學(xué)中員工心理健康的研究
- 績優(yōu)學(xué)案八年級上冊英語
- 部編版小學(xué)語文四年級上冊《希臘神話故事》測試題及答案(全套)
評論
0/150
提交評論