十五講Micro800控制器的編程指令課件_第1頁
十五講Micro800控制器的編程指令課件_第2頁
十五講Micro800控制器的編程指令課件_第3頁
十五講Micro800控制器的編程指令課件_第4頁
十五講Micro800控制器的編程指令課件_第5頁
已閱讀5頁,還剩128頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

羅克韋爾PLC控制系統(tǒng)的編程

羅克韋爾PLC控制系統(tǒng)的編程

1、了解編程器的工作方式2、了解可編程控制器編程方式的特點3、熟練掌握功能塊指令、函數(shù)指令和操作指令學(xué)習(xí)目標(biāo)1、了解編程器的工作方式學(xué)習(xí)目標(biāo)通常PLC不采用微機(jī)的編程語言,而采用面向控制過程(分析出解決問題所需要的步驟,然后用函數(shù)把這些步驟一步一步實現(xiàn),使用的時候一個一個依次調(diào)用就可以了)、面向?qū)嶋H問題的自然語言編程。這些編程語言有梯形圖、邏輯功能圖、布爾代數(shù)式等。如羅克韋爾自動化公司所有的PLC(Micro800、MicroLogix、SLC500、PLC-5和ControlLogix)都支持梯形圖(LD)的編程方式。Micro800控制器支持三種編程方式:梯形圖、結(jié)構(gòu)化文本和功能塊編程。其最大的特點就是每種編程方式都支持功能塊化的編程。下面分別介紹這三種方式。Micro800控制器編程語言通常PLC不采用微機(jī)的編程語言,而采用面向控制過程(1、定義:梯形圖一般由多個不同的梯級(RUNG)組成,每一梯級又由輸入及輸出指令組成。在一個梯級中,輸出指令應(yīng)出現(xiàn)在梯級的最右邊,而輸入指令則出現(xiàn)在輸出指令的左邊,如圖所示。Micro800控制器編程語言一、梯形圖1、定義:梯形圖一般由多個不同的梯級(RUNG)組成,每一梯Micro800控制器編程語言一、梯形圖梯形圖的編程特點Micro800控制器編程語言一、梯形圖梯形圖的編程特點2、PLC控制器的編程方式:梯形圖編程輸入(條件)指令輸出指令()

梯級(RUNG)()梯形圖程序的組成:指令:輸入/輸出指令梯級:由一組輸入和一個輸出指令組成程序:由多個不同的梯級組成梯形圖程序的工作原理:從第一級程序掃描到最后一級(從上到下)掃描特定梯級的輸入指令,決定輸出指令的動作(從左到右)Micro800控制器編程語言一、梯形圖(可沒有)2、PLC控制器的編程方式:梯形圖編程3、PLC控制器的指令系統(tǒng)——標(biāo)準(zhǔn)指令Micro800控制器編程語言一、梯形圖繼電器(軟繼電器)類指令

常開常閉輸出鎖存()()L計時器/計數(shù)器指令TON(EN)(DN)TIMEBASEPREACC3、PLC控制器的指令系統(tǒng)——標(biāo)準(zhǔn)指令Micro800控制器編程語言一、梯形圖Micro800控制器編程語言一、梯形圖十五講Micro800控制器的編程指令課件十五講Micro800控制器的編程指令課件圖5-5選擇變量名圖5-5選擇變量名十五講Micro800控制器的編程指令課件Micro800控制器編程語言Micro800控制器編程語言在Micro800控制器中可以用功能塊(FBD,F(xiàn)unctionBlockDiagram)編程語言編寫一個控制系統(tǒng)中輸入和輸出之間的控制關(guān)系圖示。用戶也可以使用現(xiàn)有的功能塊組合,編輯成需要的用戶自定義功能塊。每個功能塊都有固定的輸入連接點和輸出連接點,輸入和輸出都有固定的數(shù)據(jù)類型規(guī)定。輸入點一般在功能塊的左邊,輸出點在右側(cè)。

二、功能塊Micro800控制器編程語言1、功能塊簡介在Micro800控制器中可以用功能塊(FBD,F(xiàn)u在FBD中同樣可以使用梯形圖(LD)編程語言中的元素,如線圈、連接開關(guān)按鈕、跳轉(zhuǎn)、標(biāo)簽和返回等。與梯形圖編程語言不同的是,在功能塊編程中所使用的元素放置位置沒有過多限制,不像在梯形圖中對每個元素有嚴(yán)格規(guī)定的位置。且在FBD編程語言中同樣支持使用功能塊操作,如操作指令、函數(shù)等大類功能塊以及用戶自定義的功能塊等(只在ConnectedComponentsWorkbench中)。二、功能塊Micro800控制器編程語言1、功能塊簡介在FBD中同樣可以使用梯形圖(LD)編程語言中的元素當(dāng)使用功能塊,可以從工具箱拖出功能塊元素到編輯框里,并編輯它。輸入和輸出變量與功能塊的輸入和輸出用連接線連接。信號連接線可以連接如下塊的兩類邏輯點:輸入變量和功能塊的輸入點;功能塊的輸出和另一功能塊的輸入點;功能塊的輸出和輸出變量。連接的方向表示連接線帶著得到的數(shù)據(jù)從左邊傳送到右邊。連接線的左右兩邊必須有相同的數(shù)據(jù)類型。功能塊多重的右邊連接分支也叫做分支結(jié)構(gòu),可以用于從左邊擴(kuò)展信息至右邊。注意數(shù)據(jù)類型的一致性。當(dāng)使用功能塊,可以從工具箱拖出功能塊元素到編輯框里,二、功能塊Micro800控制器編程語言2、功能塊執(zhí)行順序二、功能塊Micro800控制器編程語言2、功能塊執(zhí)行順序二、功能塊Micro800控制器編程語言2、功能塊執(zhí)行順序二、功能塊Micro800控制器編程語言2、功能塊執(zhí)行順序二、功能塊Micro800控制器編程語言3、功能塊的調(diào)試二、功能塊Micro800控制器編程語言3、功能塊的調(diào)試

結(jié)構(gòu)文本(ST,StructuredText)類似于BASIC語言,利用它可以很方便地建立、編輯和實現(xiàn)復(fù)雜的算法,特別是在數(shù)據(jù)處理、計算存儲、決策判斷、優(yōu)化算法等涉及描述多種數(shù)據(jù)類型的變量應(yīng)用中非常有效。采用類似BASIC高級語言的編程方法,比較容易完成復(fù)雜的算法。三、結(jié)構(gòu)文本Micro800控制器編程語言IF(xxx)THENYYYELSEZZZENDIF結(jié)構(gòu)文本(ST,StructuredText)類似三、結(jié)構(gòu)文本Micro800控制器編程語言1、結(jié)構(gòu)化文本(ST)主要語法三、結(jié)構(gòu)文本Micro800控制器編程語言1、結(jié)構(gòu)化文本(S三、結(jié)構(gòu)文本Micro800控制器編程語言1、結(jié)構(gòu)化文本(ST)主要語法三、結(jié)構(gòu)文本Micro800控制器編程語言1、結(jié)構(gòu)化文本(S行結(jié)束符(可以放在程序中的任何位置)使用不活動分隔符時,需要遵循以下規(guī)則:每行編寫的語句不能多于一條;使用Tab來縮進(jìn)復(fù)雜語句;插入注釋以提高行或段落的可讀性。Micro800控制器編程語言行結(jié)束符(可以放在程序中的任何位置)使用不活動分隔符時,需要三、結(jié)構(gòu)文本Micro800控制器編程語言2、表達(dá)式和括號三、結(jié)構(gòu)文本Micro800控制器編程語言2、表達(dá)式和括號ST編程語言可以調(diào)用函數(shù)。可以在任何表達(dá)式中使用函數(shù)調(diào)用。函數(shù)調(diào)用包含的屬性見下表。三、結(jié)構(gòu)文本Micro800控制器編程語言3、調(diào)用函數(shù)和功能塊ST編程語言可以調(diào)用函數(shù)??梢栽谌魏伪磉_(dá)式中使用函當(dāng)在函數(shù)主體中設(shè)置返回參數(shù)的值時,可以為返回參數(shù)賦予與該函數(shù)相同的名稱:FunctionName:=FunctionName(,…);三、結(jié)構(gòu)文本Micro800控制器編程語言3、調(diào)用函數(shù)和功能塊當(dāng)在函數(shù)主體中設(shè)置返回參數(shù)的值時,可以為返回參數(shù)賦予ST編程語言調(diào)用功能塊??梢栽谌魏伪磉_(dá)式中使用功能塊調(diào)用。功能塊調(diào)用屬性見表5-2。當(dāng)在功能塊主體中設(shè)置返回參數(shù)的值時,可以通過將返回參數(shù)的名稱與功能塊名稱相連來分配返回參數(shù):三、結(jié)構(gòu)文本Micro800控制器編程語言3、調(diào)用函數(shù)和功能塊FunctionBlockName.OutputParaName:=;ST編程語言調(diào)用功能塊??梢栽谌魏伪磉_(dá)式中三、結(jié)構(gòu)文本Micro800控制器編程語言3、調(diào)用函數(shù)和功能塊三、結(jié)構(gòu)文本Micro800控制器編程語言3、調(diào)用函數(shù)和功能Micro800控制器的內(nèi)存可以分為兩大部分:數(shù)據(jù)文件(變量)和程序文件(程序)。Micro800控制器的內(nèi)存組織Micro800控制器的內(nèi)存可以分為兩大部分:數(shù)據(jù)文Micro800控制器的變量分為全局變量和本地變量,其中I/O變量默認(rèn)為全局變量。全局變量在項目的任何一個程序或功能塊中都可以使用,而本地變量只能在它所在的程序中使用。不同類型的控制器I/O變量的類型和個數(shù)不同,I/O變量可以在CCW軟件中的全局變量中查看。I/O變量的名字是固定的。_IO_EM_DI_00Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件Micro800控制器的變量分為全局變量和本地變量,除了I/O變量以外,為了編程的需要還要建立一些中間變量,變量的類型用戶可以自己選擇,常用的變量類型見。Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件除了I/O變量以外,為了編程的需要還要建立一些中間變Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件Micro800控制器的內(nèi)存組織一、數(shù)據(jù)文件控制器的程序文件分為兩部分內(nèi)容:程序(Program)部分(相當(dāng)于通常的主程序部分)和功能塊(FunctionBlock)部分,這里所說的功能塊(FunctionBlock),除了系統(tǒng)自身的函數(shù)和功能塊(FunctionBlock)指令以外,主要是指用戶根據(jù)功能需要,自己用梯形圖語言編寫的具有一定功能的功能塊(FunctionBlock),可以在程序(Program)或者功能塊(FunctionBlock)中調(diào)用,相當(dāng)于常用的子程序。每個功能塊(FunctionBlock)最多有20個輸入和20個輸出。Micro810控制器最多可以有2000條含一個操作數(shù)的梯級。Micro800控制器的內(nèi)存組織一、程序文件控制器的程序文件分為兩部分內(nèi)容:程序(Program在一個項目中可以有多個程序(Program)和多個功能塊(FunctionBlock)程序。多個程序(Program)可以在一個控制器中同時運行,但執(zhí)行順序由編程人員設(shè)定,設(shè)定程序(Program)的執(zhí)行順序時,在項目組織器中右鍵單擊程序圖標(biāo),選擇屬性,打開程序(Program)屬性對話框。在Order后面寫下要執(zhí)行順序,1為第一個執(zhí)行,2為第二個執(zhí)行,例如:一個項目中有8個程序(Program),可以把第8個程序(Program)設(shè)定為第一個執(zhí)行,其他程序(Program)會在原來執(zhí)行的順序上,依次后推。原來排在第一個執(zhí)行的程序(Program)將自動變?yōu)榈诙€執(zhí)行。Micro800控制器的內(nèi)存組織一、程序文件在一個項目中可以有多個程序(Program)和多個功在Order后面寫下要執(zhí)行順序,1為第一個執(zhí)行,2為第二個執(zhí)行。在Order后面寫下要執(zhí)行順序,1為第一個執(zhí)行,2為

羅克韋爾自動化的可編程序控制器編程指令非常豐富,不同系列可編程序控制器所支持的指令稍有差異,但基本指令都是大家所共有的。對于編程指令的理解程度,將直接關(guān)系到工作的效率。可以這樣認(rèn)為,對編程指令的理解,直接決定了對可編程序控制器的掌握程度。下面將詳細(xì)介紹它的指令類型。Micro800控制器的指令系統(tǒng)羅克韋爾自動化的可編程序控制器編程指令非常豐富,不同編輯梯形圖程序時,可以從工具箱拖拽需要的指令符號到編輯窗口中使用??梢蕴砑右韵绿菪螆D指令元素:一、梯形圖指令Micro800控制器的指令系統(tǒng)1、梯級編輯梯形圖程序時,可以從工具箱拖拽需要的指令符號到編一、梯形圖指令Micro800控制器的指令系統(tǒng)2、線圈(Coils)直接輸出(DirectCoil)一、梯形圖指令Micro800控制器的指令系統(tǒng)2、線圈(CoMicro800控制器的指令系統(tǒng)2、線圈(Coils)直接輸出(DirectCoil)Micro800控制器的指令系統(tǒng)2、線圈(Coils)直接輸2、線圈(Coils)Micro800控制器的指令系統(tǒng)反向輸出(ReverseCoil)2、線圈(Coils)Micro800控制器的指令系統(tǒng)反向輸2、線圈(Coils)Micro800控制器的指令系統(tǒng)上升沿(正沿)輸出(PulseRisingEdgeCoil)2、線圈(Coils)Micro800控制器的指令系統(tǒng)上升沿2、線圈(Coils)Micro800控制器的指令系統(tǒng)下降沿(負(fù)沿)輸出(PulseFallingEdgeCoil)2、線圈(Coils)Micro800控制器的指令系統(tǒng)下降沿2、線圈(Coils)Micro800控制器的指令系統(tǒng)置位輸出(SetCoil)2、線圈(Coils)Micro800控制器的指令系統(tǒng)置位輸2、線圈(Coils)Micro800控制器的指令系統(tǒng)置位輸出(SetCoil)當(dāng)左連接件的布爾狀態(tài)變?yōu)椤罢妗睍r,輸出變量將被置“真”。該輸出變量將一直保持該狀態(tài)直到復(fù)位輸出(Resetcoil)發(fā)出復(fù)位命令,如圖所示。2、線圈(Coils)Micro800控制器的指令系統(tǒng)置位輸2、線圈(Coils)Micro800控制器的指令系統(tǒng)復(fù)位輸出(ResetCoil)2、線圈(Coils)Micro800控制器的指令系統(tǒng)復(fù)位輸一、梯形圖指令Micro800控制器的指令系統(tǒng)3、接觸器(Contacts)直接連接(DirectContact)一、梯形圖指令Micro800控制器的指令系統(tǒng)3、接觸器(C3、接觸器(Contacts)Micro800控制器的指令系統(tǒng)反向連接(ReverseContact)3、接觸器(Contacts)Micro800控制器的指令系3、接觸器(Contacts)Micro800控制器的指令系統(tǒng)上升沿連接(PulseRisingEdgeContact)3、接觸器(Contacts)Micro800控制器的指令系3、接觸器(Contacts)Micro800控制器的指令系統(tǒng)下降沿連接(PulseFallingEdgeContact)3、接觸器(Contacts)Micro800控制器的指令系繼電控制互鎖Micro800控制器的指令系統(tǒng)PLC實現(xiàn)繼電控制互鎖Micro800控制器的指令系統(tǒng)PLC實現(xiàn)互鎖指令梯級邏輯對于互鎖執(zhí)行的操作動作,采用鎖存解鎖指令對其控制是最有效和可靠的。

此例中有4個互鎖的控制,每當(dāng)滿足其中之一的控制條件,便鎖存自己的控制,解鎖其他控制,不管其他控制當(dāng)前的狀態(tài)如何,這樣可以確保只有一個控制在執(zhí)行。互鎖指令梯級邏輯對于互鎖執(zhí)行的操作動作,采用鎖存解鎖梯級一、二梯級一、二梯級三、四梯級三、四塊(Block)元素指的是指令塊,也可以是位操作指令塊、函數(shù)指令塊或者是功能塊指令塊。在梯形圖編輯中,可以添加指令塊到布爾梯級中(Block拖拽)。加到梯級后可以隨時用指令塊選擇器設(shè)置指令塊的類型,隨后相關(guān)參數(shù)將會自動陳列出來。在使用指令塊時請牢記以下兩點:(1)當(dāng)一個指令塊添加到梯形圖中后,EN和ENO參數(shù)將會添加到某些指令塊的接口列表中。(2)當(dāng)指令塊是單布爾變量輸入、單布爾變量輸出或是無布爾變量輸入、無布爾變量輸出時,可以強(qiáng)制EN和ENO參數(shù)??梢栽谔菪螆D操作中激活允許EN和ENO參數(shù)(EnableEN/ENO)。一、梯形圖指令Micro800控制器的指令系統(tǒng)4、指令塊(

Instructionblocks)塊(Block)元素指的是指令塊,也可以是位操作指令項目組織器梯形圖界面驅(qū)動工具箱指令工具箱項目梯形圖驅(qū)動指令4、指令塊(

Instructionblocks)Micro800控制器的指令系統(tǒng)EN輸入4、指令塊(Instructionblocks)Mic4、指令塊(

Instructionblocks)Micro800控制器的指令系統(tǒng)ENO輸出4、指令塊(Instructionblocks)Mic4、指令塊(

Instructionblocks)Micro800控制器的指令系統(tǒng)EN和ENO參數(shù)4、指令塊(Instructionblocks)Mic4、指令塊(

Instructionblocks)Micro800控制器的指令系統(tǒng)EN和ENO參數(shù)——功能塊使能(Enable)參數(shù)4、指令塊(Instructionblocks)MicMicro800控制器的指令系統(tǒng)EN和ENO參數(shù)——返回(Returns)參數(shù)Micro800控制器的指令系統(tǒng)EN和ENO參數(shù)——返回(R一、梯形圖指令Micro800控制器的指令系統(tǒng)5、跳轉(zhuǎn)(

Jumps)一、梯形圖指令Micro800控制器的指令系統(tǒng)5、跳轉(zhuǎn)(J一、梯形圖指令Micro800控制器的指令系統(tǒng)6、分支(

Branches)分支元件能產(chǎn)生一個替代梯級。可以使用分支元件在原來梯級基礎(chǔ)上添加一個平行的分支。一、梯形圖指令Micro800控制器的指令系統(tǒng)6、分支(B二、功能塊指令Micro800控制器的指令系統(tǒng)功能塊指令是Micro800控制器編程中的重要指令,它包含了實際應(yīng)用中的大多數(shù)編程功能。功能塊指令種類及說明見表。二、功能塊指令Micro800控制器的指令系統(tǒng)功能塊二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(Alarms)二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(A二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(Alarms)二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(A二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(Alarms)二、功能塊指令Micro800控制器的指令系統(tǒng)1、報警(A二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(BooleanOperations)二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(BooleanOperations)二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(BooleanOperations)二、功能塊指令Micro800控制器的指令系統(tǒng)2、布爾操作(二、功能塊指令Micro800控制器的指令系統(tǒng)(2)重置SETRESETQ1ResultQ100000011010001101001101111001110重置功能塊真值表二、功能塊指令Micro800控制器的指令系統(tǒng)(2)重置SEMicro800控制器的指令系統(tǒng)3、通信(Communications)通信類功能塊主要負(fù)責(zé)與外部設(shè)備通信,以及自身的各部件之間的聯(lián)系。通信類功能塊主要指令見下表。功能塊描述ABL(測試緩沖區(qū)數(shù)據(jù)列)統(tǒng)計緩沖區(qū)中的字符個數(shù)(直到并且包括結(jié)束字符)ACB(緩沖區(qū)字符數(shù))統(tǒng)計緩沖區(qū)中的總字符個數(shù)(不包括結(jié)束終止字符)ACL(ASCII清除緩存寄存器)清除接收,傳輸緩沖區(qū)內(nèi)容AHL(ASCII握手?jǐn)?shù)據(jù)列)設(shè)置或重置RS232請求發(fā)送(RTS)握手信號控制字ARD(ASCII字符讀)從輸入緩沖區(qū)中讀取字符并把它們放到某個字符串中ARL(ASCII數(shù)據(jù)列表)從輸入緩沖區(qū)中讀取一行字符并把它們放到某個字符串中,包括終止字符AWA(ASCII帶附加字符寫)寫一個帶用戶配置字符的字符串到外部設(shè)備中AWT(ASCII字符寫出)從源字符串中寫一個字符到外部設(shè)備中MSG_MODBUS網(wǎng)絡(luò)通信協(xié)議信息傳輸,發(fā)送Modbus信息Micro800控制器的指令系統(tǒng)3、通信(CommunicMicro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(ABL,ASCIITestForLine)測試緩沖區(qū)數(shù)據(jù)列功能塊指令可以用于統(tǒng)計輸入緩沖區(qū)里的字符個數(shù)(一直到并且包括結(jié)束字符),參數(shù)列表見下表。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行統(tǒng)計ABLInputInputABLACB(見ABLACB數(shù)據(jù)類型)將要執(zhí)行統(tǒng)計的通道QOutputBOOL假:統(tǒng)計指令不執(zhí)行;真:統(tǒng)計指令已執(zhí)行CharactersOutputUINT字符的個數(shù)ErrorOutputBOOL假:無錯誤;真:檢測到一個錯誤ErrorIDOutputUINT見ABL錯誤代碼Micro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(AMicro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(ABL,ASCIITestForLine)

ABLACB數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINT串行通道號;2代表本地串行通道口5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5TriggerTypeUSINT(無符號短整型)代表以下情況中的一種:0:Msg觸發(fā)一次(當(dāng)IN從假變?yōu)檎妫?:Msg持續(xù)觸發(fā),即IN一直為真;其他值:保留CancelBOOL當(dāng)該輸入被置為真時,統(tǒng)計功能快指令不執(zhí)行Micro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(AMicro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(ABL,ASCIITestForLine)

ABL錯誤代碼見下表。錯誤代碼描述0x02由于數(shù)據(jù)模式離線,操作無法完成0x03由于準(zhǔn)備傳輸信號(Clear-to-Send)丟失,導(dǎo)致傳送無法完成0x04由于通信通道被設(shè)置為系統(tǒng)模式,導(dǎo)致ASCII碼接收無法完成0x05當(dāng)嘗試完成一個ASCII碼傳送時,檢測到系統(tǒng)模式(DF1)通信0x06檢測到不合理參數(shù)0x07由于通過通道配置對話框停止了通道配置導(dǎo)致不能完成ASCII碼的發(fā)送或接收0x08由于一個ASCII碼傳送正在執(zhí)行,導(dǎo)致不能完成ASCII碼寫入Micro800控制器的指令系統(tǒng)(1)測試緩沖區(qū)數(shù)據(jù)列(AMicro800控制器的指令系統(tǒng)錯誤代碼描述0x09現(xiàn)行通道配置不支持ASCII碼通信請求0x0a取消(Cancel)操作被配置,所以停止執(zhí)行指令,沒有要求動作0x0b要求的字符串長度無效或者是一個負(fù)數(shù),或者大于82或0。功能塊ARD和ARL中也一樣0x0c源字符串的長度無效或者是一個負(fù)數(shù)或者大于82或0。對于AWA和AWT一樣0x0d在控制塊中的要求的數(shù)是一個負(fù)數(shù)或是一個大于存儲于源字符串中字符串長度的數(shù)。對于AWA和AWT指令一樣0x0eACL功能塊被停止0x0f通道配置改變說明:“0x”前綴表示十六進(jìn)制數(shù)。Micro800控制器的指令系統(tǒng)錯誤代碼描述0x09現(xiàn)行通道Micro800控制器的指令系統(tǒng)(2)ASCII清除緩存寄存器(ACL,ASCIIClearBuffers)

ASCII清除緩存寄存器功能塊指令用于清除緩沖區(qū)里的接收和傳輸?shù)臄?shù)據(jù),也可用于移除ASCII隊列里的指令,參數(shù)列表見下表。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行該功能塊ACLInputInputACL(見ACL數(shù)據(jù)類型)傳送和接收緩沖區(qū)的狀態(tài)QOutputBOOL假:該功能塊不執(zhí)行;真:該功能塊已執(zhí)行ErrorOutputBOOL假:無錯誤;真:檢測到一個錯誤ErrorIDOutputUINT見ABL錯誤代碼Micro800控制器的指令系統(tǒng)(2)ASCII清除緩存寄存Micro800控制器的指令系統(tǒng)

ACL數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINT串行通道號;2代表本地串行通道口5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5RXBufferBOOL當(dāng)置為真時,清除接收緩沖區(qū)里的內(nèi)容,并把接收ACSII功能塊指令(ARL和ARD)從ASCII隊列中移除TXBufferBOOL當(dāng)置為真時,清除傳送緩沖區(qū)里的內(nèi)容,并把傳送ASCII功能塊指令(AWA和AWT)從ASCII隊列中移除(2)ASCII清楚緩存寄存器(ACL,ASCIIClearBuffers)Micro800控制器的指令系統(tǒng)ACL數(shù)據(jù)類型見下表Micro800控制器的指令系統(tǒng)(3)ASCII握手?jǐn)?shù)據(jù)列(AHL,ASCIIHandshakeLines)

ASCII握手?jǐn)?shù)據(jù)列功能塊指令用于設(shè)置或重置RS-232請求發(fā)送(RequesttoSendRTS)握手控制信號控制行,參數(shù)列表見下表。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行該功能塊AHLInputInputAHL(見AHLI數(shù)據(jù)類型)設(shè)置或重置當(dāng)前模式的RTS控制字QOutputBOOL假:該功能塊不執(zhí)行;真:該功能塊已執(zhí)行ChannelStsOutputWord(見AHLChannnelSts數(shù)據(jù)類型)顯示當(dāng)前通道規(guī)定的握手行狀態(tài)(0000~001F)ErrorOutputBOOL假:無錯誤;真:檢測到一個錯誤ErrorIDOutputUINT見ABL錯誤代碼Micro800控制器的指令系統(tǒng)(3)ASCII握手?jǐn)?shù)據(jù)列(Micro800控制器的指令系統(tǒng)

AHLI數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINT串行通道號;2代表本地串行通道口5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5ClrRtsBOOL用于重置RTS控制字SetRtsBOOL用于設(shè)置RTS控制字CancelBOOL當(dāng)輸入為真時,該功能塊不執(zhí)行(3)ASCII握手?jǐn)?shù)據(jù)列(AHL,ASCIIHandshakeLines)Micro800控制器的指令系統(tǒng)AHLI數(shù)據(jù)類型見下Micro800控制器的指令系統(tǒng)

AHLChannnelSts數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述DTRstatusUINT用于DTR信號(保留)DCDstatusUINT用于DCD信號(控制字的第3位),1表示激活DSRstatusUINT用于DSR信號(保留)RTSstatusUINT用于RTS信號(控制字的第1位),1表示激活CTSstatusUINT用于CTS信號(控制字的第0位),1表示激活(3)ASCII握手?jǐn)?shù)據(jù)列(AHL,ASCIIHandshakeLines)Micro800控制器的指令系統(tǒng)AHLChannnMicro800控制器的指令系統(tǒng)(4)ASCII字符讀(ARS,ASCIIRead)

ASCII字符讀功能塊指令用于從緩沖區(qū)中讀取字符,并把字符存入一個字符串中,參數(shù)列表見下表。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行該功能塊ARDInputInputARDARL(見ARDARL數(shù)據(jù)類型)從緩沖區(qū)中讀取字符,最多82個DoneOutputBOOL假:該功能塊不執(zhí)行;真:該功能塊已執(zhí)行DestinationOutputASCIILoc存儲字符的字符串位置NumcharOutputUINT字符個數(shù)ErrorOutputBOOL假:無錯誤;真:檢測到一個錯誤ErrorIDOutputUINT見ABL錯誤代碼Micro800控制器的指令系統(tǒng)(4)ASCII字符讀(AMicro800控制器的指令系統(tǒng)

ARDARL數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINT串行通道號;2代表本地串行通道口5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5LengthUINT希望從緩沖區(qū)里讀取的字符個數(shù)(最多82個)CancelBOOL當(dāng)輸入為真時,該功能塊不執(zhí)行,如果正在執(zhí)行,在操作停止(4)ASCII字符讀(ARS,ASCIIRead)Micro800控制器的指令系統(tǒng)ARDARL數(shù)據(jù)類型Micro800控制器的指令系統(tǒng)(5)ASCII帶附加字符寫(AWA,ASCIIWriteAppend)該功能塊指令用于從源字符串向外部設(shè)備寫入字符,且附加編程人員在設(shè)置對話框里設(shè)置的兩個字符,參數(shù)列表見下表。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行該功能塊AWAInputInputAWAAWT(見AWAAWT數(shù)據(jù)類型)將要操作的通道和長度SourceInputASCIILoc源字符串,字符陣列QOutputBOOL假:該功能塊不執(zhí)行;真:該功能塊已執(zhí)行NumcharOutputUINT字符個數(shù)ErrorOutputBOOL假:無錯誤;真:檢測到一個錯誤ErrorIDOutputUINT見ABL錯誤代碼Micro800控制器的指令系統(tǒng)(5)ASCII帶附加字符寫Micro800控制器的指令系統(tǒng)

AWAAWT數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINT串行通道號;2代表本地串行通道口5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5LengthUINT希望寫入緩沖區(qū)里的字符個數(shù)(最多82個)。提示:如果設(shè)置為0,AWA將會傳送0個用戶數(shù)據(jù)字節(jié)和兩個附加字符到緩沖區(qū)CancelBOOL當(dāng)輸入為真時,該功能塊不執(zhí)行,如果正在執(zhí)行,在操作停止(5)ASCII帶附加字符寫(AWA,ASCIIWriteAppend)Micro800控制器的指令系統(tǒng)AWAAWT數(shù)據(jù)類型見下表Micro800控制器的指令系統(tǒng)(6)網(wǎng)絡(luò)通信協(xié)議信息傳輸(MSG_MODBUS)該功能塊指令用于傳送網(wǎng)絡(luò)通信協(xié)議(Modbus)信息,例如讀寫目標(biāo)設(shè)備的寄存器中的信息。Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。參數(shù)參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿(IN由假變真),執(zhí)行該功能塊CancelInputBOOL真:取消執(zhí)行功能塊LocalCfgInputMODBUSLOCPARA(見MODBUSLOCPARA數(shù)據(jù)類型)確定結(jié)構(gòu)化輸入信息(本地設(shè)備)TargetCfgInput確定結(jié)構(gòu)化輸入信息(目標(biāo)設(shè)備)Micro800控制器的指令系統(tǒng)(6)網(wǎng)絡(luò)通信協(xié)議信息傳輸(Micro800控制器的指令系統(tǒng)(6)網(wǎng)絡(luò)通信協(xié)議信息傳輸(MSG_MODBUS)參數(shù)參數(shù)類型數(shù)據(jù)類型描述LocalAddrInputMODBUSLOCADDR確定本地存入或?qū)懗鲂畔⒌牡刂罚?25字)MODBUSLOCADDR數(shù)據(jù)類型是一個大小為125個字的數(shù)組,由讀取命令用來存儲Modbus從站返回的數(shù)據(jù)(1~125個字),并由寫入命令用來緩沖要發(fā)送到Modbus從站的數(shù)據(jù)(1~125個字)QOutputBOOL假:指令未完成;真:MSG指令完成ErrorOutputBOOL假:無錯誤;真:出現(xiàn)錯誤ErrorIDOutputUINT當(dāng)信息傳送錯誤時,顯示錯誤代碼,見MSGMODBUS錯誤代碼Micro800控制器的指令系統(tǒng)(6)網(wǎng)絡(luò)通信協(xié)議信息傳輸(Micro800控制器的指令系統(tǒng)

MODBUSLOCPARA數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述ChannelUINTMicro800PLC串行端口號;2代表本地串行端口,5~9代表安裝在插槽1~5的嵌入式模塊串行通道口:5表示在插槽1;6表示在插槽2;7表示在插槽3;8表示在插槽4;9表示在插槽5TriggerTypeUSINT0:Msg觸發(fā)一次(IN從假變?yōu)檎妫?:MSG持續(xù)觸發(fā),當(dāng)IN為真;其他情況,保留CmdUSINTMSG指令的操作命令:01:讀取線圈狀態(tài);02:讀取輸入狀態(tài);03:讀取保持寄存器;04:讀取輸入寄存器;05:寫單一線圈;06:寫單一寄存器;15:寫多個線圈;16:寫多個寄存器ElementCntUINT讀寫數(shù)據(jù)個數(shù)的限制:對于讀取線圈或開關(guān)量輸入最多2000bits;對于讀寄存器最多125words;對于寫線圈最多1968bits;對于寫寄存器最多123words。Micro800控制器的指令系統(tǒng)MODBUSLOCPARMicro800控制器的指令系統(tǒng)

MODBUSTARPARA數(shù)據(jù)類型見下表。參數(shù)數(shù)據(jù)類型描述AddrUDINT目標(biāo)數(shù)據(jù)(1~65536);傳送后減1NodeUSINT默認(rèn)從機(jī)節(jié)點號為1。節(jié)點范圍0~247,0是Modbus廣播節(jié)點號,且當(dāng)Modbus處于寫命令時有效(如5,6,15,16)注:由于目標(biāo)數(shù)據(jù)地址傳送后會自動減1,所以給MSG指令讀寫地址時,需要在要讀寫的實際地址基礎(chǔ)上加1后給到Addr上,這樣才能使MSG指令讀寫到正確的地址。Micro800控制器的指令系統(tǒng)MODBUSTARPARMicro800控制器的指令系統(tǒng)

MSG_MODBUS錯誤代碼見下表。錯誤代碼描述錯誤代碼描述3TriggerType的類型已經(jīng)非法改為2~255130非法數(shù)據(jù)地址20本地通信設(shè)備與MSG指令不兼容131非法數(shù)據(jù)值21本地通道配置參數(shù)存在錯誤132從機(jī)連接失敗22目標(biāo)或本地節(jié)點號大于最大允許的節(jié)點號133響應(yīng)33存在一個損壞的MSG文件參數(shù)134從機(jī)忙54丟失調(diào)制解調(diào)設(shè)備信息135否定響應(yīng)55本地處理器中信息傳輸超時,鏈接層超時136存儲器奇偶校驗錯誤217用戶取消信息137非標(biāo)準(zhǔn)回應(yīng)129非法函數(shù)255通道被關(guān)閉Micro800控制器的指令系統(tǒng)MSG_MODBUS錯誤Micro800控制器的指令系統(tǒng)4、計數(shù)器(Counter)計數(shù)器功能塊指令主要用于增減計數(shù),主要指令見下表。功能塊描述CTD(減計數(shù))減計數(shù)CTU(增計數(shù))增計數(shù)CTUD(給定加減計數(shù))增減計數(shù)Micro800控制器的指令系統(tǒng)4、計數(shù)器(CounterMicro800控制器的指令系統(tǒng)4、計數(shù)器(Counter)給定加減計數(shù)(CTUD)參數(shù)參數(shù)類型數(shù)據(jù)類型描述CUInputBOOL加計數(shù)(當(dāng)CU上升沿時,開始計數(shù))CDInputBOOL減計數(shù)(當(dāng)CD上升沿時,開始計數(shù))RESETInputBOOL重置命令(高級)(RESET為真時,CV=0)LOADInputBOOL加載命令(高級)(當(dāng)LOAD為真時,CV=PV)PVInputDINT程序最大值QUOutputBOOL上限,當(dāng)CVPV時為真QDOutputBOOL下限,當(dāng)CV0時為真CVOytputDINT計數(shù)結(jié)果Micro800控制器的指令系統(tǒng)4、計數(shù)器(CounterMicro800控制器的指令系統(tǒng)4、計數(shù)器(Counter)給定加減計數(shù)(CTUD)這個程序要實現(xiàn)的功能是加減計數(shù),梯級一是一個字出發(fā)計時器,TON_1.Q每3秒輸出一個動作脈沖,并復(fù)位計數(shù)器,重新計時。梯級二使能加減計數(shù)器模塊。梯級三通過decrease位使能減計數(shù),這時當(dāng)TON_1.Q位輸出一個脈沖時,PV值減1。同理,梯級四用來使能加計數(shù)。梯級五用來復(fù)位加減計數(shù)。這樣便實現(xiàn)了加減計數(shù)功能。Micro800控制器的指令系統(tǒng)4、計數(shù)器(CounterMicro800控制器的指令系統(tǒng)5、計時器(Counter)計時器功能塊指令主要有以下4種,見下表。功能塊描述TOF(延時斷增計時)延時斷計時TON(延時通增計時)延時通計時TONOFF(延時通延時斷)在為真的梯級延時通在為假的梯級延時斷TP(上升沿計時)脈沖計時Micro800控制器的指令系統(tǒng)5、計時器(CounterMicro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)增大內(nèi)部計時器至給定值。功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOL下降沿,開始增大內(nèi)部計時器;上升沿,停止且復(fù)位內(nèi)部計時器PTInputTIME最大編程時間,見Time數(shù)據(jù)類型QOutputBOOL真:編程的時間沒有消耗完ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲㎝icro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOL下降沿,開始增大內(nèi)部計時器;上升沿,停止且復(fù)位內(nèi)部計時器PTInputTIME最大編程時間,見Time數(shù)據(jù)類型QOutputBOOL真:編程的時間沒有消耗完ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲┭訒r斷增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)延時斷增功能塊本質(zhì)是輸入斷開(即下降沿)一段時間(達(dá)到計時值)后,功能塊輸出(Q)才從原來的通狀態(tài)(1狀態(tài))變?yōu)閿酄顟B(tài)(0狀態(tài)),即延時斷。從圖中看,梯級條件IN的下降沿才能觸發(fā)計時器工作,且當(dāng)計時未達(dá)到預(yù)置值PT時,如果IN又有下降沿,計時器將從新開始計時。參數(shù)ET表示的是已消耗的時間,即從計時開始到目前為止計時器統(tǒng)計的時間,明顯的,ET的取值范圍是(0,PT)。延時斷增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)輸出Q的狀態(tài)由兩個條件控制,從時序圖可以看到:當(dāng)IN為上升沿時,Q開始從0變?yōu)?,前提是原來狀態(tài)為0,如果原來的狀態(tài)是1,即上次計時沒有完成,則如果又遇到IN的上升沿,Q保持原來1的狀態(tài);當(dāng)計時器完成計時后,Q才回復(fù)到0狀態(tài)。所以Q由IN的狀態(tài)和計時器完成情況共同控制。延時斷增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)當(dāng)delay_control_in置1時,delay_control_out置位,此時TOF_1.Q位保持為1。當(dāng)delay_control_in由1變?yōu)?時,斷電延時計時器開始計時,計時3s后,TOF_1.Q位由1變?yōu)?,梯級二導(dǎo)通,delay_control_out復(fù)位。由此實現(xiàn)斷電延時功能。Micro800控制器的指令系統(tǒng)(1)延時斷增計時(TOF)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿,開始增大內(nèi)部計時器;下降沿,停止且復(fù)位內(nèi)部計時器PTInputTIME最大編程時間,見Time數(shù)據(jù)類型QOutputBOOL真:編程的時間沒有消耗完ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲┰龃髢?nèi)部計時器至給定值。Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOL上升沿,開始增大內(nèi)部計時器;下降沿,停止且復(fù)位內(nèi)部計時器PTInputTIME最大編程時間,見Time數(shù)據(jù)類型QOutputBOOL真:編程的時間沒有消耗完ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲┭訒r通增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)延時通增功能塊本質(zhì)是輸入IN導(dǎo)通后,輸出Q延時導(dǎo)通。從圖中看,梯級條件IN的上升沿觸發(fā)計時器工作,IN的下降沿能直接停止計時器計時。參數(shù)ET表示的是已消耗的時間,即從計時開始到目前為止計時器統(tǒng)計的時間,明顯的,ET的取值范圍是(0,PT)。延時通增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)輸出Q的狀態(tài)也是由兩個條件控制,從時序圖看:當(dāng)IN為上升沿時,計時器開始計時,達(dá)到計時時間后Q開始從0變?yōu)?,;直到IN變?yōu)橄陆笛貢r,Q才跟著變?yōu)?;當(dāng)計時器未完成計時時,即IN的導(dǎo)通時間小于預(yù)置時間,Q仍然保持原來的0狀態(tài)。延時通增計時功能塊時序圖Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)這個程序在現(xiàn)場常用語檢測故障信號,當(dāng)探測故障發(fā)生的信號進(jìn)來,如果馬上動作,可能會引起停機(jī),因為有的故障是需要停機(jī)的,假定這個故障信號并不是真的故障,可能是一個干擾信號,停機(jī)就變得不是很合適。一般,會將這個信號延遲一段時間,用以確定故障真的存在,再去故障停機(jī)。本程序便是使用了延時通增計時(TON)來實現(xiàn)這一功能。Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)將定時器PT定義為3s,那么TON的梯級條件fault能保持3秒,則故障輸出動作的產(chǎn)生將延時3s執(zhí)行。如果這是一個擾動信號,不到3s便消失,計時器TON的梯級條件隨之消失,計時器復(fù)位,完成位不會置位,故障輸出動作不會發(fā)生。故障動作延時時間根據(jù)現(xiàn)場實際情況來確定。Micro800控制器的指令系統(tǒng)(2)延時通增計時(TON)Micro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOFF)該功能塊用于在輸出為真的梯級中延時通,在為假的梯級中延時斷開。功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOL如果IN上升沿,延時通計時器開始。如果程序設(shè)定的延時通時間消耗完畢,且IN是下降沿(從1變0),延時斷計時器開始計時,且重置已用時間(ET)。如果程序延時通時間沒有消耗完畢,且處于上升沿,繼續(xù)開啟延時通計時器。PTInputTIME延時通時間設(shè)置PTOFOutputTIME延時斷時間設(shè)置Micro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOMicro800控制器的指令系統(tǒng)功能塊參數(shù)類型數(shù)據(jù)類型描述QOutputBOOL真:程序延時通時間消耗完畢,程序延時斷時間沒有消耗完畢ETOutputBOOL當(dāng)前消耗時間。允許值:0~1193h2m47s294ms。如果程序延時通時間消耗完畢且延時斷計時器沒有開啟,消耗時間(ETelapsedtime)保持在延時通的時間值(PT)。如果延時斷的時間消耗完畢,且延時通計時器沒有開啟,則消耗時間保持與延時斷的時間值(PTOF)一致,直到上升沿再次出現(xiàn)為止。

如果設(shè)定的關(guān)斷延時時間已過,且關(guān)斷延時計時器未啟動,則上升沿再次發(fā)生之前,消耗時間(ET)仍為關(guān)斷延時(PTOF)值。[注]如果在該功能塊使用EN參數(shù),當(dāng)EN為真時,計時器開始增計時,且持續(xù)下去(即使EN被置為假)Micro800控制器的指令系統(tǒng)功能塊參數(shù)類型數(shù)據(jù)類型描述QMicro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOFF)這個例子是某個輸出開關(guān)的控制要求,當(dāng)控制發(fā)生打開命令后,延時3s打開;控制發(fā)出關(guān)閉命令后,延時2s關(guān)閉。如果發(fā)出打開的命令不到3s接收關(guān)閉命令,則不打開;如果發(fā)出關(guān)閉命令后不到2s接收打開命令,則不關(guān)閉。

延時控制開關(guān)in作為TONOFF_1的梯級條件,開或關(guān)的任意情況會觸發(fā)通電計時或斷電計時,從而控制out位輸出。Micro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOMicro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOFF)延時斷增計時延時通增計時如果發(fā)出打開的命令不到3s接收關(guān)閉命令,則不打開如果發(fā)出關(guān)閉命令后不到2s接收打開命令,則不關(guān)閉Micro800控制器的指令系統(tǒng)(3)延時通延時斷(TONOMicro800控制器的指令系統(tǒng)(4)上升沿計時(TP)該功能塊在上升沿,內(nèi)部計時器增計時至給定值,若計時時間達(dá)到,則重置內(nèi)部計時器。功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOLIN上升沿,內(nèi)部計時器開始計時(如果沒有開啟增計時);如果IN為假且計時時間到,重置內(nèi)部計時器,在計時期間任何改變將無效PTInputTIME最大編程時間QOutputBOOL真:計時器正在計時ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲㎝icro800控制器的指令系統(tǒng)(4)上升沿計時(TP)Micro800控制器的指令系統(tǒng)(4)上升沿計時(TP)功能塊參數(shù)類型數(shù)據(jù)類型描述INInputBOOLIN上升沿,內(nèi)部計時器開始計時(如果沒有開啟增計時);如果IN為假且計時時間到,重置內(nèi)部計時器,在計時期間任何改變將無效PTInputTIME最大編程時間QOutputBOOL真:計時器正在計時ETOutputTIME已消耗的時間,范圍0~1193h2m47s294ms。注:如果在功能塊使用EN參數(shù),當(dāng)EN置真時,計時器開始增計時,且一直持續(xù)下去(即使EN變?yōu)榧伲㎝icro800控制器的指令系統(tǒng)(4)上升沿計時(TP)功能Micro800控制器的指令系統(tǒng)(4)上升沿計時(TP)從圖中看,上升沿計時功能塊與其他功能塊明顯的不同是消耗時間(ET)總是與預(yù)置值PT相等。輸入IN的上升沿觸發(fā)計時器開始計時,當(dāng)計時器開始工作后,就不受IN干擾,直至計時完成。計時器完成計時后,才接受IN的控制,即計時器的輸出值保持住當(dāng)前的計時制,直至IN變?yōu)?狀態(tài)時,計時器才回到0狀態(tài)。上升沿計時功能塊時序圖Micro800控制器的指令系統(tǒng)(4)上升沿計時(TP)Micro800控制器的指令系統(tǒng)(4)上升沿計時(TP)此外,輸出Q也與之前的計時器不同,計時器開始計時時,Q由0變?yōu)?,計時結(jié)束后,再由1變?yōu)?。所以Q僅由ET控制,可以表示計時器是否在計時狀態(tài)。上升沿計時功能塊時序圖Micro800控制器的指令系統(tǒng)(4)上升沿計時(TP)Micro800控制器的指令系統(tǒng)6、數(shù)據(jù)操作(DataManipulation)數(shù)據(jù)操作類功能塊主要有最大值、最小值、平均值,見下表。功能塊描述AVERAGE(平均)取存儲數(shù)據(jù)的平均MAX(最大值)比較產(chǎn)生兩個輸入整數(shù)中的最大值MIN(最小值)計算兩個整數(shù)輸入中最小的數(shù)Micro800控制器的指令系統(tǒng)6、數(shù)據(jù)操作(DataMMicro800控制器的指令系統(tǒng)6、數(shù)據(jù)操作(DataManipulation)功能塊參數(shù)類型數(shù)據(jù)類型描述RUNInputBOOL真:執(zhí)行;假:重置XINInputREAL任何實數(shù)NInputDINT用于定義樣本個數(shù)XOUTOutputREAL輸出XIN的平均值ENOOutputBOOL使能輸出[注]需要設(shè)置或更改N的值時,需要把RUN置假,然后置回真平均功能塊用于計算每一循環(huán)周期所有已存儲值的平均值,并存儲該平均值。只有N的最后輸入值被存儲。N的樣本數(shù)個數(shù)能超過128個。如果RUN命令為假(重置模式),輸出值等于輸入值。當(dāng)達(dá)到最大存儲個數(shù)時,第一個存儲的數(shù)將被最后一個替代。Micro800控制器的指令系統(tǒng)6、數(shù)據(jù)操作(DataMMicro800控制器的指令系統(tǒng)7、輸入/輸出(Input/Output)輸入/輸出類功能塊指令主要用于管理控制器與外設(shè)之間的輸入和輸出數(shù)據(jù),其指令用途見下表。功能塊描述HSC(高速計數(shù)器)設(shè)置要應(yīng)用到高速計數(shù)器上的高和低預(yù)設(shè)值以及輸出源HSC_SET_STS(HSC狀態(tài)設(shè)置)手動設(shè)置/重置高速計數(shù)器狀態(tài)IIM(立即輸入)在正常輸出掃描之前更新輸入IOM(立即輸出)在正常輸出掃描之前更新輸出KEY_READ(鍵狀態(tài)讀?。┳x取可選LCD模塊中的鍵的狀態(tài)(只限Micro810TM)Micro800控制器的指令系統(tǒng)7、輸入/輸出(InputMicro800控制器的指令系統(tǒng)7、輸入/輸出(Input/Output)功能塊描述MM_INFO(存儲模塊信息)讀取存儲模塊的標(biāo)題信息PLUGIN_INFO(嵌入型模塊信息)獲取嵌入式模塊信息(存儲模塊除外)PLUGIN_READ(嵌入型模塊數(shù)據(jù)讀?。那度胧侥K讀取信息PLUGIN_RESET(嵌入型模塊重置)重置一個嵌入型模塊(硬件重置)PLUGIN_WRITE(寫嵌入型模塊)向嵌入型模塊中寫入數(shù)據(jù)RTC_READ(讀RTC)讀取實時時鐘(RTC)模塊的信息RTC_SET(寫RTC)向?qū)崟r時鐘模塊設(shè)置實時時鐘數(shù)據(jù)SYS_INFO(系統(tǒng)信息)讀取Micro800TM系統(tǒng)狀態(tài)TRIMPOT_READ(微調(diào)電位器)從特定的微調(diào)電位模塊中讀取微調(diào)電位值LCD(顯示)顯示字符串和數(shù)據(jù)(只限Micro810TM)RHC(讀高速時鐘的值)讀取高速時鐘的值RPC(讀校驗和)讀取用戶程序校驗和Micro800控制器的指令系統(tǒng)7、輸入/輸出(InputMicro800控制器的指令系統(tǒng)7、輸入/輸出(Input/Output)該功能塊用于啟/停高速計數(shù),刷新高速計數(shù)器的狀態(tài),重載高速計數(shù)器的設(shè)置,以及重置高速計數(shù)器累價值[注]在CCW中高速計數(shù)器被分為兩個部分,高速計數(shù)部分和用戶接口部分。這兩部分是結(jié)合使用的。這里主要介紹高速計數(shù)器部分。用戶接口部分由一個中斷機(jī)制驅(qū)動(例如中斷允許UIE、激活UIF、屏蔽UID或是自動允許中斷AutoStart),用于在高速計數(shù)器到達(dá)設(shè)定條件時驅(qū)動執(zhí)行指定的用戶中斷程序。(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)7、輸入/輸出(InputMicro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)功能塊參數(shù)類型數(shù)據(jù)類型描述HscCmdInputUSINT功能塊執(zhí)行、刷新等控制命令,見HSC命令參數(shù)HscAPPDataInputHSCAPPHSC應(yīng)用配置。通常只需配置一次。見HSC應(yīng)用數(shù)據(jù)結(jié)構(gòu)HSCStsInfoInputHSCSTSHSC動態(tài)狀態(tài)。通常在HSC執(zhí)行周期里該狀態(tài)信息會持續(xù)更新,見HSC狀態(tài)信息數(shù)據(jù)結(jié)構(gòu)PlsDataInputPLS可編程限位開關(guān)數(shù)據(jù)(ProgrammableLimitSwitch,PLS),用于設(shè)置HSC的附加高低及溢出設(shè)定值。見PLS數(shù)據(jù)類型。StsOutputUINTHSC功能塊執(zhí)行狀態(tài),見HSC狀態(tài)值Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)HSC命令參數(shù)見下表。HSC命令命令描述0x00保留,未使用0x01執(zhí)行HSC:運行HSC(如果HSC處于空閑模式其梯級使能);只更新HSC狀態(tài)信息(如果HSC處于運行模式其梯級使能)0x02停止HSC(如果HSC處于運行模式,且梯級使能)0x03上載或設(shè)置HSC應(yīng)用數(shù)據(jù)配置信息(如果梯級使能)0x04重置HSC累加值(如果梯級使能)[注]“0x”前綴表示十六進(jìn)制數(shù)Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)HSCAPP數(shù)據(jù)類型(HSCAppData)見下表。參數(shù)數(shù)據(jù)類型描述PLSEnableBOOL使能或停止可編程限位開關(guān)(PLS)HscIDUINT要驅(qū)動的HSC編號,見HSCID定義HSCModeUINT要使用的HSC計數(shù)模式,見HSC模式AccumulatorDINT設(shè)置計數(shù)器的計數(shù)初始值HPSettingDINT高預(yù)設(shè)值LPSettingDINT低預(yù)設(shè)值OFSettingDINT溢出設(shè)置值Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)HSCAPP數(shù)據(jù)類型(HSCAppData)見下表。參數(shù)數(shù)據(jù)類型描述UFSettingDINT下溢設(shè)置值OutputMaskUDINT設(shè)置輸出掩碼HPOutputUDINT高預(yù)設(shè)值的32位輸出值LPOutputUDINT低預(yù)設(shè)值的32位輸出值

說明:OutputMask指令的作用是屏蔽HSC輸出的數(shù)據(jù)中的某幾位,以獲取期望的數(shù)據(jù)輸出位。例如,對于24點的Micro830,有9點本地(控制器自帶)輸出點用于輸出數(shù)據(jù),當(dāng)不需輸出第0位的數(shù)據(jù)時,可以把OutputMask中的第零位置0即可。這樣即使輸出數(shù)據(jù)上的第零位為1,也不會輸出。Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)

HscID、HSCMode、HPSetting、LPSetting、OFSetting、UFSetting6個參數(shù)必須設(shè)置,否則將提示HSC配置信息錯誤。上溢值最大為+2,147,483,647。下溢值最小為-2,147,483,647。預(yù)設(shè)值大小須對應(yīng),即高預(yù)設(shè)值不能比上溢值大,低預(yù)設(shè)值不能比下溢值小。當(dāng)HSC計數(shù)值達(dá)到上溢值時,會將計數(shù)值置為下溢值繼續(xù)計數(shù);達(dá)到下溢值時類似。HSC應(yīng)用數(shù)據(jù)是HSC組態(tài)數(shù)據(jù),它需要在啟動HSC前組態(tài)完畢。在HSC計數(shù)期間,該數(shù)據(jù)不能改變,除非需要重載HSC組態(tài)信息(在HscCmd中寫03命令)。但是在HSC計數(shù)期間的HSC應(yīng)用數(shù)據(jù)改變請求被忽略。Micro800控制器的指令系統(tǒng)(1)高速計數(shù)器(HSC)Micro800控制器的指令系統(tǒng)HSCID定義見下表。位描述15~13HSC的模式類型:0x00-本地;0x01-擴(kuò)展式(暫無);0x02-嵌入式。12~8模塊的插槽ID:0x00-本地;0x01~0x1F-擴(kuò)展式(暫無)模塊的ID;0x01~0x05-嵌入式模塊的ID。7~0模塊內(nèi)部的HSCID:0x00~0x0F-本地;0x00~0x07-擴(kuò)展式(暫無);0x00~0x07-嵌入式。[注]對于初始版本ConnectedCoponentsWorkbench只支持0x00~0x05范圍的ID使用說明:將表中各位上符合實際要使用的HSC的信息數(shù)據(jù)組合為一個無符號整數(shù),寫到HSCAppData的HscID位置上即可。例如,選擇控制器自帶的第一個HSC接口,即15~13位為0,表示本地I/O;12~8位為0,表示本地的通道,非擴(kuò)展或嵌入模塊;7~0位為0,表示選擇第0個HSC,這樣最終就在定義的HSCAPP類型的輸入上的HscID位置上寫入0即可。Micro800

溫馨提示

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

最新文檔

評論

0/150

提交評論