国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

三菱FX系列PLC條件跳轉(zhuǎn)和子程序指令的應(yīng)用*

2012-07-31 08:26:42赫煥麗熊安勝
關(guān)鍵詞:程序段標(biāo)號(hào)子程序

赫煥麗,熊安勝

(咸寧職業(yè)技術(shù)學(xué)院,湖北 咸寧 437100)

三菱FX系列PLC功能指令-條件跳轉(zhuǎn)指令用來選擇執(zhí)行指定的程序段,跳過暫時(shí)不需要執(zhí)行的程序段.在程序編制中,經(jīng)常也會(huì)遇到一些邏輯功能相同的程序段需要反復(fù)被運(yùn)行,為了簡(jiǎn)化程序結(jié)構(gòu),可以編寫成子程序,然后在主程序中根據(jù)需要反復(fù)調(diào)用.現(xiàn)就在實(shí)際中關(guān)于條件跳轉(zhuǎn)指令和子程序指令的應(yīng)用和注意事項(xiàng),總結(jié)如下.

1 跳轉(zhuǎn)指令CJ

跳轉(zhuǎn)指令可用來選擇執(zhí)行指定的程序段,跳過暫時(shí)不需要執(zhí)行的程序段.條件跳轉(zhuǎn)指令CJ的助記符、操作數(shù)等指令屬性如表1所示.

表1

如圖1所示,當(dāng)X0接通時(shí),則由“CJP0”指令跳到標(biāo)號(hào)為P0的指令處開始執(zhí)行,跳過了程序的一部分,減少了掃描周期.如果X0斷開,跳轉(zhuǎn)不會(huì)執(zhí)行,則程序按原順序執(zhí)行.

圖1 跳轉(zhuǎn)指令的使用

圖2 程序跳轉(zhuǎn)指令

如圖2所示,X0是手動(dòng)/自動(dòng)運(yùn)行的選擇開關(guān).X1、X2分別是電機(jī)M1和M2在手動(dòng)操作方式下的啟動(dòng)按鈕(點(diǎn)動(dòng)控制),X3是自動(dòng)運(yùn)行方式下兩電機(jī)的啟動(dòng)按鈕.Y1、Y2分別是控制電機(jī)M1啟動(dòng)和M2啟動(dòng)的輸出信號(hào).

當(dāng)X0常開觸點(diǎn)接通時(shí),執(zhí)行“CJP0”指令,跳到標(biāo)號(hào)為P0處執(zhí)行手動(dòng)操作程序.此時(shí)分別按下X1和X2,可點(diǎn)動(dòng)M1和M2進(jìn)行機(jī)床調(diào)整;而當(dāng)X0常閉觸點(diǎn)接通時(shí),不執(zhí)行“CJP0”指令,順序執(zhí)行自動(dòng)運(yùn)行程序.此時(shí)按下啟動(dòng)按鈕X3電機(jī)M1先啟動(dòng),5s后電機(jī)M2自行啟動(dòng)運(yùn)行,按下停止按鈕可同時(shí)停止兩臺(tái)機(jī)床.然后執(zhí)行“CJP1”指令,跳過自動(dòng)程序直接轉(zhuǎn)到標(biāo)號(hào)P1處結(jié)束.X0的常開/常閉觸點(diǎn)起聯(lián)鎖作用,使手動(dòng)操作和自動(dòng)運(yùn)行兩個(gè)程序只能選擇其中之一.

2 子程序指令

子程序調(diào)用指令CALL、返回指令SRET的助記符、操作數(shù)等指令屬性如表2所示.

表2

如圖3所示.當(dāng)X0常開觸點(diǎn)接通時(shí),執(zhí)行“CALL P1”,即程序轉(zhuǎn)到標(biāo)號(hào)P1處,執(zhí)行子程序.當(dāng)執(zhí)行到子程序的最后一句“SRET”時(shí),程序返回到主程序,從步序號(hào)4開始繼續(xù)往下執(zhí)行.當(dāng)X0常開觸點(diǎn)斷開時(shí),標(biāo)號(hào)為P1的子程序不能被調(diào)用執(zhí)行.

圖3 子程序指令使用說明

圖4 兩種工作方式電動(dòng)機(jī)控制程序

某電機(jī)要求有連續(xù)運(yùn)行和手動(dòng)調(diào)整兩種工作方式,用子程序設(shè)計(jì)的梯形圖控制程序如圖4所示.當(dāng)工作方式開關(guān)X0的常開觸點(diǎn)接通時(shí),運(yùn)行標(biāo)號(hào)為P2的子程序,此時(shí)為手動(dòng)調(diào)整狀態(tài);當(dāng)X0常開觸點(diǎn)斷開時(shí),運(yùn)行標(biāo)號(hào)為P1的子程序,此時(shí)電機(jī)為連續(xù)運(yùn)行狀態(tài).

在圖2和圖4中,由于手動(dòng)程序和自動(dòng)程序不能同時(shí)執(zhí)行,所以程序中的線圈Y0不能視為雙線圈.

3 數(shù)組運(yùn)算的梯形圖程序

3.1 控制要求

某車間要對(duì)生產(chǎn)流水線進(jìn)行過程控制.動(dòng)態(tài)采集20個(gè)現(xiàn)場(chǎng)數(shù)據(jù)(16位),存放在D0~D19中.每隔半小時(shí)找出其中的最大值,將其與標(biāo)準(zhǔn)值(放入D30中)進(jìn)行比較,如果大于標(biāo)準(zhǔn)值點(diǎn)亮紅燈(Y0);每隔1小時(shí)計(jì)算他們的平均值,并與標(biāo)準(zhǔn)平均值(放入D40中)進(jìn)行比較,若大于標(biāo)準(zhǔn)平均值紅燈(Y1)閃爍報(bào)警.

3.2 確定輸入、輸出并分配I/O地址

本控制在這里編程時(shí)不涉及到20個(gè)現(xiàn)場(chǎng)數(shù)據(jù)的動(dòng)態(tài)采集過程.假定這20個(gè)數(shù)據(jù)已經(jīng)采集到位,只對(duì)其比較、計(jì)算控制進(jìn)行編程.

選擇X0作為控制裝置的啟停開關(guān)作為輸入信號(hào),兩個(gè)紅燈地址分別為Y0和Y1作為輸出信號(hào).

3.3 設(shè)計(jì)PLC控制程序

根據(jù)控制要求,編制出PLC的梯形圖程序如圖5所示.程序中,當(dāng)通過開關(guān)輸入使X0=1后,C0、C1同時(shí)對(duì)M8014(1min時(shí)鐘脈沖)計(jì)數(shù).C0每計(jì)滿半小時(shí),執(zhí)行一次子程序P0,即比較20個(gè)現(xiàn)場(chǎng)數(shù)據(jù)的大?。瓹1每計(jì)滿1小時(shí)執(zhí)行一次子程序P1,即計(jì)算20個(gè)數(shù)據(jù)的平均值.在子程序P0中,先將20個(gè)數(shù)據(jù)中的第一個(gè)數(shù)送到D20中,賦變址寄存器Z的初值為1.再用循環(huán)指令將剩下的19個(gè)數(shù)據(jù)(因此循環(huán)次數(shù)應(yīng)等于19)逐一與D20進(jìn)行比較,若有比D20數(shù)據(jù)大的,就直接送往D20覆蓋原數(shù)據(jù),然后地址變量Z加1.等全部比較完畢,20個(gè)數(shù)據(jù)中的最大值就一定存放在D20中.再用觸點(diǎn)比較指令將最大值(存放在D20中)與標(biāo)準(zhǔn)值(存放在D30中)對(duì)比,若大于標(biāo)準(zhǔn)值就把Y0接通.在子程序P1中,先將D23、D22清0,地址變量Z也清0,再用循環(huán)指令對(duì)20個(gè)數(shù)據(jù)逐一相加,并將所求之和存放到 D23(高16位)、D22(低16位)中,因此循環(huán)次數(shù)為20.接下來用32位操作的除法指令將所求的總和除以數(shù)據(jù)的個(gè)數(shù)20,得到平均值放到D24中.最后用觸點(diǎn)比較指令與標(biāo)準(zhǔn)平均值(存放在D40)對(duì)照,若大于標(biāo)準(zhǔn)平均值就使Y1閃爍報(bào)警.

圖5 數(shù)組運(yùn)算的梯形圖程序

4 使用條件跳轉(zhuǎn)和子程序指令應(yīng)注意的問題

4.1 使用條件跳轉(zhuǎn)指令應(yīng)注意的幾個(gè)問題:

(1)條件跳轉(zhuǎn)指令CJ(P)的操作數(shù)為指針標(biāo)號(hào)P0~P127,P用于分支和跳轉(zhuǎn)程序.

(2)標(biāo)號(hào)P放置在左母線的左邊,在一個(gè)程序中一個(gè)標(biāo)號(hào)只能出現(xiàn)一次,若出現(xiàn)兩次或兩次以上,程序報(bào)錯(cuò).

(3)若跳轉(zhuǎn)條件滿足,則執(zhí)行跳轉(zhuǎn)指令,程序跳到以標(biāo)號(hào)P為入口的程序段中執(zhí)行,否則不執(zhí)行跳轉(zhuǎn)指令,按順序執(zhí)行下一條指令.

(4)P63是END所在的步序,在程序中不需要設(shè)置P63.指針標(biāo)號(hào)允許用變址寄存器修改.CJ和CJ(P)都占三個(gè)程序步,指針標(biāo)號(hào)占一步.

(5)若用M8000常開觸點(diǎn)作為跳轉(zhuǎn)條件,則CJ變成無條件跳轉(zhuǎn)指令.

(6)不在同一個(gè)指針標(biāo)號(hào)的程序段中出現(xiàn)的同一個(gè)線圈不看作雙線圈.

(7)在跳轉(zhuǎn)執(zhí)行期間,即使被跳過程序的驅(qū)動(dòng)條件改變,但其線圈(或結(jié)果)仍保持跳轉(zhuǎn)前的狀態(tài),因?yàn)樘D(zhuǎn)期間根本沒有執(zhí)行這段程序.

(8)處于被跳過的程序段中的Y、M、S由于該段程序不執(zhí)行,故即使驅(qū)動(dòng)它們的工作條件發(fā)生了變化,它們的狀態(tài)也依然保持跳轉(zhuǎn)前的狀態(tài)不變.同理,T、C如果被跳過,則跳轉(zhuǎn)期間它們的當(dāng)前值被鎖定,當(dāng)跳轉(zhuǎn)中止、程序繼續(xù)執(zhí)行時(shí),定時(shí)計(jì)數(shù)接著進(jìn)行.

(9)如果在跳轉(zhuǎn)開始時(shí)定時(shí)器和計(jì)數(shù)器已在工作,則在跳轉(zhuǎn)執(zhí)行期間它們將停止工作,到跳轉(zhuǎn)條件不滿足后又繼續(xù)工作.但對(duì)于正在工作的定時(shí)器T192~T199和高速計(jì)數(shù)器C235~C255,不管有無跳轉(zhuǎn)仍連續(xù)工作.

(10)若積算定時(shí)器和計(jì)數(shù)器的復(fù)位(RST)指令在跳轉(zhuǎn)區(qū)外,即使它們的線圈被跳轉(zhuǎn),但對(duì)它們的復(fù)位仍然有效.

4.2 使用子程序指令時(shí)應(yīng)注意的幾個(gè)問題:

(1)主程序在前,子程序在后,即子程序要放在FEND指令之后.不同位置的“CALL”指令可以調(diào)用相同標(biāo)號(hào)的子程序,但同一標(biāo)號(hào)的指針只能使用一次.

(2)轉(zhuǎn)移標(biāo)號(hào)不能重復(fù),也不可與跳轉(zhuǎn)指令CJ的標(biāo)號(hào)重復(fù).(3)子程序必須寫在FEND和END之間,否則出錯(cuò).

(4)子程序可以調(diào)用下一級(jí)子程序,稱為子程序嵌套,F(xiàn)X2N系列的PLC最多可以有5級(jí)子程序嵌套.

5 結(jié)語(yǔ)

通過以上實(shí)例,三菱FX系列PLC條件跳轉(zhuǎn)指令和子程序指令在實(shí)際應(yīng)用中可以用來選擇執(zhí)行指定的程序段,或者要反復(fù)被運(yùn)行程序段.我們?cè)趯?shí)際使用的過程中一定要注意他們的使用注意事項(xiàng),以免使用中出現(xiàn)錯(cuò)誤.

[1]郭艷萍,陳冰.電氣控制與PLC應(yīng)用[M].北京:人民郵電出版社,2010.

[2]黃中玉,于寧波.PLC應(yīng)用技術(shù)[M].北京:人民郵電出版社,2009.

[3]岳慶來.變頻器、可編程序控制器及觸摸屏綜合應(yīng)用技術(shù)[M].北京:機(jī)械工業(yè)出版社,2009.

猜你喜歡
程序段標(biāo)號(hào)子程序
基于WinCC的物料小車控制系統(tǒng)設(shè)計(jì)與仿真
數(shù)控系統(tǒng)手輪回退功能的研究與實(shí)現(xiàn)*
基于NC程序段的提高數(shù)控加工監(jiān)控閾值與信號(hào)同步的方法*
非連通圖2D3,4∪G的優(yōu)美標(biāo)號(hào)
非連通圖2D3,4∪G的優(yōu)美標(biāo)號(hào)
淺談子程序在數(shù)控車編程中的應(yīng)用
非連通圖D3,4∪G的優(yōu)美標(biāo)號(hào)
子程序在數(shù)控車加工槽中的應(yīng)用探索
非連通圖(P1∨Pm)∪C4n∪P2的優(yōu)美性
西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
望城县| 郧西县| 马龙县| 阿城市| 乐东| 新蔡县| 湖州市| 三穗县| 江山市| 册亨县| 保靖县| 波密县| 蛟河市| 慈利县| 宕昌县| 北宁市| 临江市| 突泉县| 涞水县| 关岭| 彩票| 娱乐| 府谷县| 板桥市| 汾阳市| 龙里县| 三门县| 衢州市| 合作市| 万年县| 邢台市| 克东县| 仁寿县| 密云县| 利辛县| 泸溪县| 通州区| 阿荣旗| 广平县| 贵南县| 黑水县|