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

?

西門子PLC順序控制梯形圖程序?qū)崿F(xiàn)方法

2021-07-06 00:34:20
關(guān)鍵詞:置位程序段順序控制

馬 寶 秋

(石家莊職業(yè)技術(shù)學(xué)院 機(jī)電工程系,河北 石家莊 050081)

在現(xiàn)代智能制造生產(chǎn)線中,PLC(可編程控制器)強(qiáng)大的控制功能使其成為生產(chǎn)管理系統(tǒng)(MES)的核心硬件.PLC程序編寫的優(yōu)劣不但影響MES的性能,而且對(duì)智能制造生產(chǎn)線的運(yùn)行也有很大的影響,因此,在編寫復(fù)雜的PLC程序時(shí)要求比較嚴(yán)格,要求有統(tǒng)一性、靈活性、健壯性和可靠性.復(fù)雜的設(shè)備運(yùn)行過(guò)程一般是按照時(shí)間或邏輯的先后順序進(jìn)行的,因此,順序控制程序設(shè)計(jì)方法就成為廣泛使用的一種編程方法.

1 順序控制程序設(shè)計(jì)方法簡(jiǎn)介

順序控制程序設(shè)計(jì)方法是從有限狀態(tài)機(jī)FSM(Finite State Machine)發(fā)展而來(lái)的.具有復(fù)雜邏輯關(guān)系的程序用FSM的思維進(jìn)行程序設(shè)計(jì),比用控制流程的思維更有效率.FSM結(jié)構(gòu)示意圖見圖1.

圖1 FSM結(jié)構(gòu)示意圖

復(fù)雜設(shè)備的運(yùn)行過(guò)程可以看成是由多個(gè)獨(dú)立的工作狀態(tài)按時(shí)間或邏輯順序排成的、具有一定結(jié)構(gòu)的序列,而且這些獨(dú)立的工作狀態(tài)可以再細(xì)分為更小的獨(dú)立工作狀態(tài).劃分的最小工作狀態(tài)稱作狀態(tài)步,簡(jiǎn)稱“步”.一般情況下,在每一個(gè)步中,系統(tǒng)應(yīng)該專心做一件事情或維持一個(gè)狀態(tài).每個(gè)步之間是有相互聯(lián)系的,當(dāng)前正在執(zhí)行的步(激活步)在滿足一定的轉(zhuǎn)移條件后,可以進(jìn)入下一個(gè)狀態(tài)步;原來(lái)的下一個(gè)狀態(tài)步就成為正在執(zhí)行的步(激活步),原來(lái)的激活步則成為凍結(jié)步.

實(shí)現(xiàn)順序控制程序設(shè)計(jì)的關(guān)鍵是要合理劃分步及確定各步間轉(zhuǎn)移的條件.步劃分太大,不能體現(xiàn)順序控制程序編寫的優(yōu)點(diǎn);步劃分太瑣碎,則會(huì)影響程序執(zhí)行的效率.

一般情況下,F(xiàn)SM中任意時(shí)刻都可以存在有限個(gè)激活狀態(tài),其他狀態(tài)則是凍結(jié)狀態(tài).順序控制程序中僅當(dāng)前有限個(gè)執(zhí)行步是激活的,即當(dāng)前激活的有限個(gè)步中的程序代碼在CPU(中央處理器)中順序執(zhí)行,其他凍結(jié)步中的代碼則不在CPU中執(zhí)行,所以實(shí)現(xiàn)順序控制就是在編程中實(shí)現(xiàn)只有激活步的代碼執(zhí)行,而其他步的代碼不執(zhí)行;同時(shí)判斷轉(zhuǎn)移條件,以使各步在激活狀態(tài)和凍結(jié)狀態(tài)之間轉(zhuǎn)換.這一點(diǎn)是順序控制程序設(shè)計(jì)的精髓.

FSM是對(duì)具體事物的抽象.在PLC編程實(shí)踐時(shí),常將各步及各步間的轉(zhuǎn)移條件畫成順序功能圖(sequential function chart,簡(jiǎn)寫為SFC),見圖2.

圖2 順序功能圖(SFC)

SFC已經(jīng)成為PLC國(guó)際標(biāo)準(zhǔn)IEC61131-3首選的編程語(yǔ)言,一般中小型PLC并未配備SFC語(yǔ)言,但可以用SFC來(lái)描述系統(tǒng)的功能[1],畫出SFC,這樣再編程就比較容易.

2 順序控制梯形圖編程實(shí)現(xiàn)方法

在SFC中已經(jīng)將每個(gè)狀態(tài)步劃分完畢,并確定了在各狀態(tài)步間轉(zhuǎn)移的條件.在實(shí)踐中,用SFC實(shí)現(xiàn)順序控制程序的關(guān)鍵在于,如何讓PLC運(yùn)行時(shí)只執(zhí)行當(dāng)前激活的狀態(tài)步而不執(zhí)行凍結(jié)的狀態(tài)步.

達(dá)到這一目的的基本思路是,使用寄存器位作為標(biāo)志位,每個(gè)標(biāo)志位代表一個(gè)步的程序段.在PLC主程序運(yùn)行過(guò)程中不斷地判斷每一個(gè)標(biāo)志位是否置位.標(biāo)志位置位則運(yùn)行與該標(biāo)志位對(duì)應(yīng)的步,這一步的程序段就是激活的;標(biāo)志位為清零狀態(tài)的步不運(yùn)行,所有未運(yùn)行步的程序段都在凍結(jié)狀態(tài).在當(dāng)前步的代碼中判斷轉(zhuǎn)移條件,若滿足轉(zhuǎn)移條件,則將下一步的標(biāo)志位置位,并將本步的標(biāo)志位清零.這樣一個(gè)PLC掃描周期后,置位的標(biāo)志位所對(duì)應(yīng)的步的程序段即被執(zhí)行.

本文以石家莊職業(yè)技術(shù)學(xué)院“離散智能制造生產(chǎn)線”中PLC控制的倍速運(yùn)輸鏈末端轉(zhuǎn)運(yùn)機(jī)順序控制為例來(lái)說(shuō)明.倍速運(yùn)輸鏈為上下雙層結(jié)構(gòu),在工作過(guò)程中具有運(yùn)輸、存儲(chǔ)、狀態(tài)判斷等功能.在運(yùn)輸鏈的首端和末端各有一套轉(zhuǎn)運(yùn)機(jī).承載物料的托盤由上層運(yùn)輸鏈運(yùn)送到末端后,由末端轉(zhuǎn)運(yùn)機(jī)構(gòu)將其轉(zhuǎn)運(yùn)至下層運(yùn)輸鏈,托盤在下層運(yùn)輸?shù)绞锥撕?,由首端的轉(zhuǎn)運(yùn)機(jī)構(gòu)將其運(yùn)輸至上層,如此循環(huán)往復(fù).倍速運(yùn)輸鏈末端轉(zhuǎn)運(yùn)機(jī)的結(jié)構(gòu)示意圖見圖3.

圖3 倍速運(yùn)輸鏈末端轉(zhuǎn)運(yùn)機(jī)的結(jié)構(gòu)示意圖

該機(jī)構(gòu)具有典型的時(shí)間邏輯順序工作特點(diǎn),其SFC如圖2所示.

將每一步與一個(gè)繼電器標(biāo)志位關(guān)聯(lián)起來(lái),建立步與繼電器位的對(duì)照表,見表1.

表1 步與繼電器標(biāo)志位對(duì)照表

建立的I/O分配表見表2.

表2 I/O分配表

在編程時(shí),順序控制程序在邏輯上分兩部分.一部分是按邏輯順序依次對(duì)步的標(biāo)志位進(jìn)行置位/復(fù)位的程序段;另一部分是在每個(gè)步中實(shí)現(xiàn)具體工作的程序段.在實(shí)踐及教學(xué)中發(fā)現(xiàn),第一部分的程序編寫易出現(xiàn)邏輯混亂,從而造成程序失敗.有4種實(shí)現(xiàn)方法可解決這個(gè)問(wèn)題.

2.1 啟保停法

本步的轉(zhuǎn)換條件可以看作是下一步的啟動(dòng)條件和本步的結(jié)束條件.SFC中已經(jīng)標(biāo)明了這些啟停條件,根據(jù)啟保?;靖袷骄涂梢詫懗龀绦?任何PLC都能實(shí)現(xiàn)啟保停程序,所以這是一種比較通用的程序設(shè)計(jì)法[2].本例的啟保停法程序段梯形圖見圖4.程序以西門子TIA Portal V16編寫.

圖4 啟保停法實(shí)現(xiàn)順序控制梯形圖

若邏輯關(guān)系復(fù)雜,可以根據(jù)轉(zhuǎn)換條件與上下步的關(guān)系列出邏輯函數(shù)式,再畫出梯形圖[3].

2.2 置位復(fù)位法

該方法是在標(biāo)志位的操作上使用置位/復(fù)位指令.程序中將本步的啟動(dòng)電路作為本步標(biāo)志位置位(S)指令和上一步標(biāo)志位復(fù)位(R)指令的通電條件[2].根據(jù)置位/復(fù)位指令的特點(diǎn),程序在邏輯判斷方面使用的梯形圖指令會(huì)減少,邏輯比較清晰,不易出錯(cuò)[2].使用置位復(fù)位法實(shí)現(xiàn)本例程序段的梯形圖見圖5.

圖5 置位復(fù)位法實(shí)現(xiàn)順序控制梯形圖

2.3 移位指令法

本方法的實(shí)質(zhì)是通過(guò)移位指令,將二進(jìn)制1在標(biāo)志位寄存器單元中不斷移位,移至哪一位,哪一位對(duì)應(yīng)的步便被激活.在實(shí)現(xiàn)時(shí),將各步的啟動(dòng)條件并聯(lián)作為移位指令的觸發(fā)條件即可.使用移位指令法實(shí)現(xiàn)本例程序段的梯形圖見圖6.程序中采用ROL(循環(huán)左移指令)進(jìn)行移位操作.使用移位指令必須采用沿觸發(fā)的方式.當(dāng)需要循環(huán)回順序的開始步時(shí),要將開始步對(duì)應(yīng)位為1(其他位為0)的值重新賦值給移位寄存器,這是因?yàn)椴降臄?shù)量絕大部分情況下并不一定等于寄存器的位數(shù).

圖6 移位法實(shí)現(xiàn)順序控制梯形圖

2.4 順序控制標(biāo)志繼電器法

西門子S-200系列和S7-200 Smart系列PLC專門為順序控制方法設(shè)置了“順序控制標(biāo)志繼電器(S)”.編寫程序時(shí),將每一個(gè)狀態(tài)步與一個(gè)S繼電器位關(guān)聯(lián)起來(lái),步的激活和凍結(jié)過(guò)程就由配套的SCR(順序控制)指令組控制,PLC系統(tǒng)自動(dòng)完成,可以比較方便地實(shí)現(xiàn)順序控制編程.本例中S7-200的PLC程序梯形圖見圖7,程序由西門子Step7 MicroWin 4.0 SP9實(shí)現(xiàn).

圖7 順序控制標(biāo)志繼電器法實(shí)現(xiàn)順序控制梯形圖

3 討論

(1)PLC系統(tǒng)在啟動(dòng)時(shí),應(yīng)該用“上電初次掃描存儲(chǔ)器位”指令在第一個(gè)掃描周期將步的標(biāo)志位全部清零,完成初始化工作后,再將第一個(gè)需要運(yùn)行的步的標(biāo)志位置位,而后開始執(zhí)行順序控制程序.

(2)如果程序中有兩個(gè)標(biāo)志位置位,則意味著有兩個(gè)步需要同時(shí)激活.由PLC運(yùn)行原理可知,從微觀上看,這兩個(gè)步是先后依次運(yùn)行;從宏觀上看,這兩個(gè)步像是在同時(shí)運(yùn)行.這樣既可以實(shí)現(xiàn)兩個(gè)步的并行運(yùn)行,也可以實(shí)現(xiàn)有限個(gè)步的并行運(yùn)行.

(3)并行步序列終歸要合并為一個(gè)單序列.一般來(lái)說(shuō),兩個(gè)并行步的工作不一定會(huì)同時(shí)結(jié)束,所以可以在預(yù)計(jì)先結(jié)束的步后面增加一個(gè)等待步,跳出等待步的條件就是與其并行的步被凍結(jié),即要判斷其他并行步的標(biāo)志位是否清零;如果不確定并行步哪個(gè)先結(jié)束,可以在每個(gè)并行步后面都增加一個(gè)等待步.這樣做的好處是邏輯清晰,程序健壯、可靠.

(4)相比而言,S7-200 PLC中的SHRB(移位寄存器)指令比較靈活.對(duì)不復(fù)雜的程序來(lái)說(shuō),移位指令法的指令個(gè)數(shù)相對(duì)最少,但是由于受單個(gè)移位寄存器大小的限制,對(duì)于有幾十步甚至上百步的復(fù)雜程序,編程時(shí)需要考慮各寄存器間的協(xié)調(diào)問(wèn)題,尤其是有并行、選擇序列的情況時(shí),由于復(fù)雜度增加,程序也會(huì)更復(fù)雜.

(5)西門子主流的小型PLC S7-1200系列已經(jīng)取消了順序功能寄存器(S),但是順序控制的編程思想并不會(huì)消失,取而代之的是本文介紹的前三種及更加靈活的實(shí)現(xiàn)方法.

(6)若步的大小劃分的合理,順序控制程序的第二部分程序會(huì)比較簡(jiǎn)單.本例第二部分程序段的梯形圖見圖8.

圖8 本例實(shí)現(xiàn)具體工作的程序段梯形圖

在該部分,只需要判斷步的標(biāo)志位.哪一個(gè)步的標(biāo)志位置位,則執(zhí)行哪一步的動(dòng)作.可以看出,圖8的程序段梯形圖對(duì)前3種方法是通用的,這也體現(xiàn)了順序控制編程的優(yōu)點(diǎn).一般來(lái)說(shuō),使用順序控制標(biāo)志繼電器法編寫的程序分散在每一步的SCR程序中,當(dāng)然根據(jù)需要也可以不放在任何SCR程序中,而是放在公共程序段中.

4 結(jié)語(yǔ)

順序控制的程序設(shè)計(jì)方法可使程序結(jié)構(gòu)清晰.由于每一步的工作被限制在了特定的時(shí)間/空間范圍內(nèi),基本解決了經(jīng)驗(yàn)設(shè)計(jì)法中的記憶、聯(lián)鎖等問(wèn)題[1],所以程序中一些無(wú)關(guān)的信號(hào)可以被排除,從而使得程序健壯、可靠,硬件上也可以減少不必要的外部物理信號(hào),降低系統(tǒng)的成本.該方法不僅在PLC編程上,在工控機(jī)、單片機(jī)、嵌入式系統(tǒng)等其他類型的控制器編程中也可以靈活應(yīng)用.

猜你喜歡
置位程序段順序控制
基于WinCC的物料小車控制系統(tǒng)設(shè)計(jì)與仿真
一種變電站測(cè)控防誤閉鎖邏輯智能校驗(yàn)裝置的設(shè)計(jì)
M310 核電機(jī)組重要廠用水泵運(yùn)行置位信號(hào)邏輯優(yōu)化
數(shù)控系統(tǒng)手輪回退功能的研究與實(shí)現(xiàn)*
基于雙引導(dǎo)值的三軸天線等待點(diǎn)置位效率的初步研究
PLC順序控制設(shè)計(jì)方法的深入探析
基于NC程序段的提高數(shù)控加工監(jiān)控閾值與信號(hào)同步的方法*
智能變電站中順序控制的功能分析與實(shí)現(xiàn)
淺談智能變電站的順序控制功能及應(yīng)用
智能變電站順序控制技術(shù)應(yīng)用研究
成武县| 察雅县| 西和县| 新平| 江津市| 长汀县| 盈江县| 南安市| 泽普县| 广灵县| 靖宇县| 泸定县| 永胜县| 永昌县| 南木林县| 呼图壁县| 石泉县| 芒康县| 凤翔县| 米易县| 登封市| 德惠市| 乌兰浩特市| 延寿县| 遂川县| 旬邑县| 三明市| 托里县| 乌什县| 金堂县| 磴口县| 定结县| 海林市| 四会市| 社会| 双辽市| 永康市| 乐平市| 进贤县| 尚义县| 喀什市|