控制程序結構_第1頁
控制程序結構_第2頁
控制程序結構_第3頁
控制程序結構_第4頁
控制程序結構_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

控制程序結構第1頁,共27頁,2023年,2月20日,星期一畫面組成要素在程序中的利用要素名稱要素例在程序中使用例畫面SCRSCR..部品PARTSCR.PART.控件CONSCR.PART.CON當前部品CPART..當前控件CCON..CCONP2-12第2頁,共27頁,2023年,2月20日,星期一K-BASIC控制程序中的變量類型變量種類數據內容大小DATA%整型變量4bytesDATA!/DATA浮點數變量4bytesDATA$字符串變量根據定義大小可變DATA@ID對象型變量6bytes各變量全可以定義為數組變量。數組變量從0開始定義Array%(10),共定義11個變量。允許定義多維數據:array(2,3);v(1,2,3)各類型變量可以重名。VAR%,VAR!,VAR$,VAR@為不同的變量。第3頁,共27頁,2023年,2月20日,星期一K-BASIC控制程序中的變量種類變量種類變量的作用范圍以及生命周期局部變量由[LOCAL]聲明,不做任何聲明的變量自動為局部變量。該變量在每次程序執(zhí)行開始時賦初值,整數、浮點數為0;字符串、ID變量為空。在動作程序結束時,該種變量自動清零,值不保留。(在[END****]時清零)。該變量不能在全局畫面的畫面控制程序中使用。靜態(tài)變量由[STATIC]聲明,該種變量的值即使在程序執(zhí)行結束后也保持,但其不能被其他畫面或部品調用。其僅在機器啟動時初始化一次。全局變量由[GLOBAL]聲明,可被所有的畫面、部品程序共用。其值在程序執(zhí)行結束后也保持,其僅在機器啟動時初始化一次。后備變量由[BACKUP]聲明,即使在觸摸屏掉電后,其值也保持,即上電時不做初始化處理。其他同全局變量。后備變量僅對帶后備型存儲器的產品有效!對不帶后備型存儲器的產品,其功能同全局變量。(255kb)自動變量由[AUTO]聲明,其僅能在功能函數中使用。AUTO變量在每次功能函數執(zhí)行時被初始化。第4頁,共27頁,2023年,2月20日,星期一K-BASIC控制程序中的常量常量類型常量說明例子字符串常量由“”括起的一串字符,最長80個字符“STRING”整數常量可定義8進制、10進制、16進制常量,范圍:-2147483648——2147483647&123,&o66(8)100(10)&hff(16)浮點數常量可定義常量范圍:-1.70141E+38—+1.70141E+38有效小數位6位.1.230.0001-2.3E-4ID型常量畫面名,部品名,控件名邏輯設備名,構件名,文本,PLC定義號等Screen..scr.part...conHSTPRNBCRMCRTKYICCSIO00~R200000~Q20第5頁,共27頁,2023年,2月20日,星期一部品的動作原理—消息控制活動畫面的切換畫面控制部品局部畫面-2局部畫面-1全局畫面部品A部品BPLC消息?消息?消息光洋電子局部畫面-1局部畫面-2局部畫面-2第6頁,共27頁,2023年,2月20日,星期一K-BASIC程序中消息的讀入INPUTTYPE%,ID@,DATA%TYPE%:指明消息發(fā)送者的類型碼;

目前能用1~22。ID@:指明消息發(fā)送者的名稱

例如,一個部品中有2個按鍵時,用于區(qū)分 是哪個按鍵發(fā)出的消息。DATA%:所發(fā)送的數據,可一個或多個。EVNT事件塊由消息來觸發(fā)其的一次執(zhí)行!第7頁,共27頁,2023年,2月20日,星期一消息種類消息發(fā)送者type@%Id@data@%畫面1畫面名由PRINT指令指定部品2部品名由PRINT指令指定開關3開關名1/0(單),開關號(多選擇)定時器4OPENTIM定時器名固定為1報警5SETALARM報警名固定為1并口6代表并口的ID數據位+狀態(tài)+PIOCH數無協(xié)議通訊7---通訊口+狀態(tài)+接收到字節(jié)數采樣9執(zhí)行采樣的主體采樣數值PLC/M連接16定義號名或M表名定義號或存儲器表內容條碼機18BCR來自條碼機的字符串鍵盤20TKY來自鍵盤的字符串主計算機22HST來自主計算機的字符串第8頁,共27頁,2023年,2月20日,星期一K-BASIC發(fā)送消息(給部品)PRINT/SEND命令利用「PRINT/SEND」命令,可由K-BASIC程序向部品發(fā)送消息。例)要向部品[B000]發(fā)送[100]消息的程序段如下: PRINT100SEND.B000.利用這種信息傳遞方式的部品有[輸入數據顯示器]和[數據輸入鍵盤]。在[輸入數據顯示器]部品上按下鍵,則向對應鍵盤發(fā)送[當前值]和[上下限值];在[數據輸入鍵盤]部品上按下[ENT]鍵,則向[輸入數據顯示器]部品發(fā)送設定值。第9頁,共27頁,2023年,2月20日,星期一K-BASIC發(fā)送消息(給打印機)利用打印機打印當GC與打印機連接時,不僅僅能進行畫面的硬拷貝打印,更可利用K-BASIC程序指令,高速打印文字、數值等。例)PRINT100,”KOMATSU”SENDPRN可通過[PRINT]指令向打印機送出打印機ESC控制代碼,從而自由設計打印格式。利用這一功能,可非常方便地制作各種報表。第10頁,共27頁,2023年,2月20日,星期一K-BASIC程序中消息處理在K-BASIC程序中,一般通過判斷語句來處理讀入的消息!K-BASIC的條件判斷語句有2種:1.IF···THEN···ELSE條件判斷組2.SELECTCASE···ENDSELECT條件判斷組第11頁,共27頁,2023年,2月20日,星期一練習1—簡單按鍵/指示燈畫面第12頁,共27頁,2023年,2月20日,星期一練習2—用鍵盤輸入數據顯示數値表示#CLN1001鍵盤(直接輸入)#CLT30012者操作參數全為R2000第13頁,共27頁,2023年,2月20日,星期一練習3—按鍵控制畫面的切換該處輸入畫面號第14頁,共27頁,2023年,2月20日,星期一練習4—PLC控制畫面切換例在畫面上配置畫面切換部品#CLB3001,在其控制程序參數中設置用于控制畫面切換的R存儲器號。系統(tǒng)會自動跳轉到所指定的畫面(R寄存器中數據為目標畫面號)。注意: 要使該功能始終有效,該部品必須配置在全局畫面上; 如果所指定的畫面不存在,系統(tǒng)報錯。 由于部品不能重疊,配置該部品時注意。第15頁,共27頁,2023年,2月20日,星期一練習5—輸入密碼后的畫面跳轉非常簡單,利用部品#CAB3101即可實現(xiàn)。第16頁,共27頁,2023年,2月20日,星期一練習6—多數據的連續(xù)輸入第17頁,共27頁,2023年,2月20日,星期一練習7—最基本的控制程序在畫面上顯示數據:12341.新建一工程2.打開部品編輯器3.調入并設置數據顯示控件4.編程顯示程序5.保存所制作部品6.調用部品制作畫面7.畫面下載,試運行第18頁,共27頁,2023年,2月20日,星期一練習8— 顯示PLCR2000中的內容1.調用數據顯示部品2.使其動作參數無效,選擇K-BASIC控制程序3.編制相應的K-BASIC控制程序1,2也可以自己調用數據顯示控件,制作顯示部品!注意:數據顯示控件名稱為NUM000!!程序如下:initlocaltype%,id@,data%cyclic01~r2000EndinitEvntinputtype%,id@,data%Iftype%=16andid@=01~r2000thennumdsp..NUM000,data%endifEndevnt第19頁,共27頁,2023年,2月20日,星期一練習9—顯示PLC指定寄存器中的內容程序如下:initlocaltype%,id@,data%cyclic[stationNo.]~[device]EndinitEvntinputtype%,id@,data%Iftype%=16andid@=[stationNo.]~[device]thennumdsp..NUM000,data%endifEndevnt第20頁,共27頁,2023年,2月20日,星期一練習10—畫面的定時跳轉confopentim3(1)time%=[Waittime(sec)]*10settim1,time%,0starttim1endconfevntinputtype%,id@,data%iftype%=4ortype%=3thenjump[nextscreenname]..endifendevntOpentim():返回個ID型數值Opentim2(x):返回0或1Opentim3(x):返回0或1系統(tǒng)提供0~15共16個定時器,不用的定時器要返還給系統(tǒng)(CLOSETIM);Opentim3(X)自動返還。第21頁,共27頁,2023年,2月20日,星期一練習11—彈出式報警畫面當某個報警條件成立時,彈出一個報警部品!1.制作報警部品2.編制報警部品打開程序3.編制手工關閉報警部品程序部品打開程序部品關閉程序第22頁,共27頁,2023年,2月20日,星期一練習12—棒圖的顯示用棒圖顯示R2000在R2100中的比例!R2100R2000Initcyclic[局號]~[上限寄存器]cyclic[局號]~[監(jiān)視寄存器]endinitevntinputtype%,id@,data%iftype%=16then ifid@=[局號]~[上限寄存器]then range..bar000,0,data%,0,0 elseifid@=[局號]~[監(jiān)視寄存器]then bardsp..bar000,1,data% endifendifendevnt第23頁,共27頁,2023年,2月20日,星期一練習13—帶上下限的數據輸入顯示鍵盤(直接輸入)#CLT3001「數值顯示器」部品中編制有K-BASIC程序。連接設備名MTBL(100)連接設備名MTBL(100)數值顯示控件數值顯示控件數值顯示#CLN1001confaddcyc..NUM000numdsp..NUM001,[MIN]numdsp..NUM002,[MAX]endconfevntinputtype%,id@,data%iftype%=16thenifdata%<[MIN]thendspmode..NUM001,3dspmode..NUM002,0elseifdata%>[MAX]thendspmode..NUM001,0dspmode..NUM002,3elsedspmode..NUM001,0dspmode..NUM002,0endifendifendevnt第24頁,共27頁,2023年,2月20日,星期一練習14—構件圖形顯示1帶標記部品#CLS1005圖形顯示器#CLF1001連接設備名MTBL(100)連接設備名MTBL(100)使用[圖形顯示器]部品【#CLF1001】和[帶標記按鍵]部品【#CLS1005】。[圖形顯示器]部品連接的P定義號為[MTBL(100)],按鍵部品的操作參數無效。把上面的12個構件從1開始登記到工程的構件一覽表中。try3第25頁,共27頁,2023年,2月20日,星期一練習15—構件圖形顯示2把上面練習的畫面修改如下:圖形顯示器部品不變,增加一個按鍵成上下2個按鍵;給2個按鍵部品分別編制程序,按下時左翻轉或右翻轉所顯示的圖形內容。把2個按鍵部品的動作參數設置為無效狀態(tài)!帶標記部品#CLS1005圖形顯示器#CLF1001連接設備名MTBL(100)連接設備名MTBL(100)連接設備名MTBL(100)帶標記部品#CLS1006try4第26頁,共27頁,2023年,2月20日,星期一練習16—撥碼開關的制作標準部品加入程序declareBcdBinConvert%(mode%,data%)initcyclic[局號]~[功能地址號]endinitevntinputty%,id@,dat%ifty%=3anddat%=1then plc%=[局號]~[功

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論