引入BLOCK的必要性改_第1頁
引入BLOCK的必要性改_第2頁
引入BLOCK的必要性改_第3頁
引入BLOCK的必要性改_第4頁
引入BLOCK的必要性改_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一、BLOCK的根本概念1、BLOCK概述順序功能塊,即BLOCK〔以下簡稱BLOCK〕是為了實現(xiàn)某些功能而存在的一段程序塊。可以將BLOCK理解為一個特殊的流程,在這個特殊的流程里,所有的程序按照一個原那么來執(zhí)行,即順序執(zhí)行原那么,這也是BLOCK與一般流程最大的不同之處。BLOCK開始于SBLOCK、結(jié)束于SBLOCKE,中間為編程人員書寫指令區(qū)。如果同一個BLOCK中包含多個發(fā)脈沖指令〔其他指令也適用〕,那么脈沖指令將按照觸發(fā)條件成立的先后順序依次執(zhí)行;同時,先執(zhí)行的脈沖指令結(jié)束后才開始下一條脈沖指令的執(zhí)行。一個完整的BLOCK結(jié)構(gòu),如下列圖所示:BLOCK運行開始用戶執(zhí)行語段BLOCK運行開始用戶執(zhí)行語段脈沖通訊變頻器讀寫Wait指令其他指令SBLOCKKnSBLOCKEBLOCK內(nèi)的執(zhí)行語段,BLOCK內(nèi)的執(zhí)行語段,所有指令按順序執(zhí)行BLOCK運行結(jié)束BLOCK運行結(jié)束2、引入BLOCK的原因優(yōu)化原有脈沖、通訊指令在流程中的寫法PLCPLCBLOCK執(zhí)行機構(gòu)上位機編程軟件RAMGcode1Gcode2….GcodeN由于原XC系列脈沖、通訊指令不支持多條指令在同一流程中同時執(zhí)行,因此在程序的編寫上會較為繁瑣。引入BLOCK后,可支持多條脈沖、通訊等指令的編寫,所有指令遵循順序執(zhí)行原那么。不可行〔×〕可行〔√〕引入順序功能塊之前引入順序功能塊之后二、BLOCK的調(diào)用在一個程序文件中,可調(diào)用多個BLOCK程序塊。BLOCK的調(diào)用方法為面板配置法,以下為BLOCK配置的具體操作。1、BLOCK的添加翻開XCPPro軟件,在左側(cè)的工程欄中找到“順序功能塊〞,右鍵單擊它,將會出現(xiàn)“添加順序功能塊〞命令,如下列圖所示:單擊該命令,將彈出設(shè)置面板,如下列圖所示:上圖便是編輯某一BLOCK的界面,在該界面上可以添加多個程序語段、修改和刪除對應(yīng)語段,包括脈沖、通訊、運動控制等多種指令。上移/下移用于BLOCK中指令的上下位置的調(diào)整。單擊“添加〞按鈕,將看到系統(tǒng)已自動列出可能要用到的幾種類別的指令,包括命令語列表、脈沖配置、Modbus指令、Wait指令、變頻器讀寫、自由格式通訊。如下列圖所示:例如,在上面的BLOCK中添加一個“脈沖配置〞,對其設(shè)置如下:單擊確定后,將發(fā)現(xiàn)在設(shè)置面板中也添加了相應(yīng)信息,如下列圖所示:繼續(xù)單擊確定,梯形圖界面中將會出現(xiàn)如下指令段:同時,在左側(cè)工程欄中的“順序功能塊〞下出現(xiàn)了新添加的功能塊,如下列圖所示:2、BLOCK的轉(zhuǎn)移如果想要將已經(jīng)建立好的BLOCK轉(zhuǎn)移到其他地方時,必須先刪除原BLOCK程序塊〔全部選中再刪除〕,如下列圖所示:然后將光標先定位在所需調(diào)用的地方,然后右鍵單擊已建立的BLOCK,在彈出的菜單中選擇“添加到當(dāng)前梯形圖節(jié)點〞,如下列圖所示:此時,將發(fā)現(xiàn)該BLOCK已經(jīng)出現(xiàn)在了光標所在處,如下列圖所示:3、BLOCK的刪除如果只是刪除在程序中調(diào)用的BLOCK程序塊,可采用選中BLOCK區(qū)域后再Del的方法〔同BLOCK轉(zhuǎn)移操作的前半局部〕。如果是要徹底刪除某一功能塊,那么只要右鍵單擊該功能塊,選擇“刪除順序功能塊〞即可,刪除之后,將無法再調(diào)用,只能重新添加。如下列圖所示:4、BLOCK的修改當(dāng)成功添加BLOCK功能塊之后,如果想對BLOCK進行整體上的修改,那么只要雙擊梯形圖窗口中該BLOCK的起始段或結(jié)束段,即可翻開配置面板進行修改,如果只是對其中某一段程序進行修改,那么雙擊該段指令即可,兩種修改方式如下列圖所示:〔A〕雙擊BLOCK起始段/結(jié)束段:〔B〕雙擊具體語段:三、BLOCK內(nèi)部指令的編輯1、命令語列表由于配置面板中提供的幾種方式針對性較強,難以滿足更豐富的編程要求。為了可以自由的向BLOCK中添加程序,以命令語的形式編輯將會帶來極大的便利。翻開配置面板,單擊“添加〞,如下列圖所示:單擊“命令語列表〞,此時將彈出新的面板,如下列圖所示:框內(nèi)即為命令語的添加區(qū)域,用戶可以自由添加需要的程序。另外需要注意的是,“SKIP條件〞是控制是否執(zhí)行以下命令語,如果不填,那么默認執(zhí)行,如果鉤選了“SKIP條件〞,然后在后面的框內(nèi)輸入控制線圈,那么,當(dāng)該線圈接通時,將不執(zhí)行所在的命令語列表。如下列圖所示:此時,單擊“確定〞,程序區(qū)域?qū)霈F(xiàn)如下程序段:“命令語列表〞前的M0那么為是否執(zhí)行該命令語列表的條件。注意:同一個BLOCK中可以添加多個程序段,每一段都由“SKIP條件〞來作為其執(zhí)行與否的條件,條件成立那么跳過不執(zhí)行,條件不成立或為空那么執(zhí)行。在上圖中,命令語段在梯形圖中并未展開顯示,但可以根據(jù)該語段的作用修改其注釋,如下列圖所示:注釋修改之后的BLOCK語段業(yè)有了相應(yīng)的變化,如下列圖所示:2、脈沖配置以相同的方法翻開脈沖配置面板,如下列圖所示:在該配置面板中可設(shè)定脈沖輸出的形式,單段或者24段、相對或者絕對;其他參數(shù)相應(yīng)的輸入?yún)^(qū)中寫入?yún)?shù)的地址,如頻率以及加減速時間、頻率、脈沖個數(shù)。添加兩條發(fā)脈沖指令到BLOCK中,如下列圖所示:注意:BLOCK中脈沖輸出的指令全部為32位指令形式。3、Modbus指令按照前面的方法,翻開Modbus指令編輯面板,如下列圖所示:Modbus指令的配置也非常方便,直接從下拉列表中選擇需要的Modbus指令,然后依次填好遠端站號、串口號、遠端線圈首地址、線圈個數(shù)、本地線圈首地址,系統(tǒng)將自動產(chǎn)生一條指令。如下列圖所示:4、Wait指令以前面的方法,翻開Wait指令的配置面板。Wait指令是用于等待標志位或是定時到再執(zhí)行當(dāng)前梯級的程序。配置面板中提供了兩種等待方式,其一為標志位、其二為定時,兩種方式設(shè)置分別如下:〔A〕標志位〔B〕定時等待〔C〕梯形圖窗口中的效果5、變頻器配置該項是方便PLC與信捷變頻器進行通訊而設(shè)立的,用戶只需通過該面板就可對變頻器進行讀取和寫入。配置面板如下列圖所示:面板中按照作用的不同,可分成4塊區(qū)域,分別是變頻器站號以及串口號、控制變頻器動作、監(jiān)控變頻器狀態(tài)、自定義。下面分別介紹這4塊區(qū)域?!睞〕變頻器站號以及串口號站號用于指定通訊的變頻器站號,串口號為PLC串口,設(shè)置例如下:〔B〕控制變頻器動作控制變頻器動作,包括“寫入定值〞和“從軟元件寫入〞,前者直接指定變頻器的運行方式,后者那么根據(jù)軟元件〔存放器〕的值來決定變頻器的運行方式。第一種方式非常簡單,直接選中所需的操作,如下列圖所示:而第二種方式,以從軟元件D0寫入變頻器為例設(shè)置:〔C〕監(jiān)控變頻器狀態(tài)監(jiān)控變頻器狀態(tài),即讀取變頻器的狀態(tài)。按照面板上提供的監(jiān)控對象,直接將值讀取到PLC中指定的存放器里,直接按照提示操作即可,如下列圖所示:〔D〕自定義以自定義的形式來設(shè)置變頻器操作,既是寫入和讀取變頻器的綜合操作,顯得更加靈活,配置面板如下列圖所示:如可添加一條寫變頻器命令,點擊“添加〞按鈕,彈出配置面板,在面板中設(shè)置如下:繼續(xù)添加一條讀變頻器的命令,添加之后的面板,如下列圖所示:注意:變頻器配置語段在梯形圖中也并未展開。6、自由格式通訊自由格式通訊配置界面與一般自由格式配置界面相同,分成發(fā)送和接收2種方式,可添加多條自由通訊指令,并對其進行修改和刪除,以及上下移動,另外還包括串口號和發(fā)送數(shù)據(jù)位的設(shè)定。配置面板如下:以添加1條發(fā)送指令為例,先選中“發(fā)送〞,將首地址設(shè)為D0,串口2,16位。然后單擊“添加〞,彈出設(shè)置面板,如下所示:數(shù)據(jù)局部可選擇常量數(shù)據(jù)和軟元件兩種方式,常量數(shù)據(jù)類型,直接輸入數(shù)字即可〔無需加K〕;軟元件類型那么輸入軟元件的地址號以及個數(shù)即可。切換到“校驗〞選項卡,選擇相應(yīng)的校驗方式,如下列圖所示:另外,在進行自由格式通訊配置時,還需要對通訊相關(guān)參數(shù)進行設(shè)置,單擊“自由通訊設(shè)置〞按鈕,如下列圖所示:四、BLOCK的執(zhí)行方式1、存在多個BLOCK時,其執(zhí)行方式與一般程序相同,條件成立時,BLOCK即執(zhí)行。 〔A〕條件為常開/閉線圈如下圖,順序功能塊1,順序功能塊2,順序功能塊3是同步執(zhí)行的。當(dāng)M1,M2,M3為ON的時候,所有Block循環(huán)執(zhí)行。掃描周期1掃描周期2掃描周期3M1掃描周期1掃描周期2掃描周期3M1M2M3Block1Block1,Block2Block1,Block2,Block3〔B〕條件為上升/下降沿如下圖當(dāng)M1,M2,M3為OFF-->ON的時候,所有Block只執(zhí)行一次。2、BLOCK內(nèi)部的程序按照掃描時間順序執(zhí)行,條件成立的先執(zhí)行,一條執(zhí)行完后再執(zhí)行滿足條件的第二條?!睞〕不帶SKIP條件順序功能塊1中的程序執(zhí)行順序如下列圖所示:掃描周期1掃描周期1掃描周期2掃描周期3M2掃描周期4掃描周期5PLSY0PLSY1COM2BLOCK的執(zhí)行BLOCK條件為OFF,并且所有順序指令執(zhí)行完畢〔B〕帶SKIP條件說明:A 如下圖當(dāng)M2為ON的時候,順序功能塊1執(zhí)行。B) 在BLOCK內(nèi)部,所有指令都是順序執(zhí)行的。C) M3,M4,M5是SKIP標志,表示是否跳過當(dāng)前梯級的指令,如果為ON那么跳過。D) 當(dāng)M3為OFF的時候,如果沒有其他指令占用脈沖控制塊Y0,執(zhí)行DPLSRD0D1Y0指令;如果當(dāng)前脈沖控制塊已經(jīng)被占用,那么當(dāng)前Block等待其他指令釋放該控制塊后再執(zhí)行DPLSRD0D1Y1指令。E) Y0脈沖發(fā)送完畢以后,判斷M4,如果M4為OFF,檢查脈沖控制塊Y1;如果M4為ON,那么判斷M5,如果M5為OFF,檢查通信控制塊COM2。五、BLOCK內(nèi)部指令的編寫要求在BLOCK中,指令的編寫并不是隨意的,必須符合一定的要求。編程人員請務(wù)必遵守以下幾項原那么:1、BLOCK內(nèi)部指令最多只能帶1個SKIP條件。不可行〔×〕可行〔√〕2、條件只允許X、M這2種位軟元件,且不帶偏移。不可行〔×〕可行〔√〕3、SKIP條件不允許為邊沿指令〔LDP,LDF〕,只允許狀態(tài)指令〔LD,LDI〕這2種指令。不可行〔×〕可行〔√〕4、輸出指令不允許為HSC、PLSF、PWM、FRQM。不可行〔×〕可行〔√〕5、LabelKind類型不允許出現(xiàn)P、I等標簽指令雖可在配置面板中的命令語局部中被輸入,但實際無效,應(yīng)注意防止。六、BLOCK相關(guān)指令1、暫停BLOCK的執(zhí)行[BSTOP]指令暫停執(zhí)行BLOCK中的指令S1:指順序功能塊的塊號??捎貌僮鲾?shù):K、DS2:暫停執(zhí)行BLOCK的方式??捎貌僮鲾?shù):K0、K1K0:緩慢停止BLOCK,即當(dāng)脈沖正在發(fā)送時,BSTOP條件成立,那么先將脈沖發(fā)完,再停止BLOCK。K1:立即停止BLOCK,即當(dāng)BSTOP條件成立時,立即停止BLOCK中指令的執(zhí)行。2、繼續(xù)執(zhí)行已暫停的BLOCK[BGOON]指令繼續(xù)執(zhí)行BLOCK中的指令,相對于BSTOP指令而言S1:指順序功能塊的塊號??捎貌僮鲾?shù):K、DS2:繼續(xù)執(zhí)行BLOCK的方式??捎貌僮鲾?shù):K0、K1K0:繼續(xù)執(zhí)行被暫停BLOCK中的未完成的指令;例如,當(dāng)脈沖未發(fā)完就被立即停止時,BGOON條件成立后,將繼續(xù)發(fā)送剩余脈沖個數(shù)。K1:繼續(xù)執(zhí)行被暫停的BLOCK,但舍棄未發(fā)完的指令;例如,當(dāng)脈沖未發(fā)完就被立即停止時,BGOON條件成立后,將不再發(fā)送未發(fā)完的脈沖個數(shù),而是直接執(zhí)行后面的指令。3、指令的執(zhí)行時序掃描周期1掃描周期2掃描周期3掃描周期1掃描周期2掃描周期3條件M0M0掃描周期4掃描周期5條件M1M1條件M2條件M3PLSY0PLSY0PLSY0PLSY0條件M4PLSY0七、BLOCK執(zhí)行標志位/存

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論