freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

codesys中文編程手冊_cn-資料下載頁

2025-06-07 07:33本頁面
  

【正文】 OU。然而不允許進(jìn)行遞歸調(diào)用。功能一個功能即是一個 POU,當(dāng)對它進(jìn)行處理時,它可準(zhǔn)確地生成數(shù)據(jù)元素(諸如由幾個字段或結(jié)構(gòu)等元素組成),并在文本語言調(diào)用時作為表達(dá)式內(nèi)的一個操作符出現(xiàn)。當(dāng)聲明一個功能時,不要忘記功能必須返回一個類型。這意味著,在功能名后,你必須輸入一個冒號,后跟一個類型。一個正確的功能聲明有如下示例那樣的形式:FUNCTION Fct:INT此外,必須對功能分配一個結(jié)果。這意味著,功能名作為一種輸出變量使用。以下為使用 IL(指令表)編寫的一個功能例子,它有三個輸入變量,并返回由前二個變量乘積除以第三個變量的結(jié)果:由 ST(結(jié)構(gòu)化文本)編寫的一個功能調(diào)用可作為表達(dá)式中的一個操作數(shù)。功能沒有任何內(nèi)部條件。這意味著,由相同變元(輸入?yún)?shù))調(diào)用的一個功能總是產(chǎn)生相同的值(輸出)。注意:如果你在一個功能內(nèi)聲明一個保持型的本地變量,這是沒有意義的。變量不會保存到保留區(qū)!調(diào)用上述功能的示例:使用 IL:LD 7 Fct 2,4 ST ResultCodesys PLC Control:簡介第 4 頁 共 249 頁使用 ST 語言:Result := Fct(7, 2, 4)。使用 FBD:使用 SFC 時,一個功能調(diào)用只出現(xiàn)在一個步或一個轉(zhuǎn)換內(nèi)。注意:如果在項目中應(yīng)用名稱“CheckBounds ”來定義一個功能,你可以使用這個名字來檢查項目中是否有范圍溢出!該功能名是系統(tǒng)預(yù)定義的,而且系統(tǒng)只識別這個標(biāo)識符。下面的典型程序是使用 CheckBounds 功能測試超出一個定義數(shù)組的邊界。CheckBounds 功能可以確認(rèn)TRUE 值沒有分配給 A[10],而是分配給上邊界A[7],在這一位置,A[7] 仍然有效。因此,Check Bounds功能可以用來檢查是否超出數(shù)值邊界。注意:如果在你的項目中,使用了 CheckDivByte、CheckDivWord、CheckDivDWord 和 CheckDivReal 定義的功能,并且使用了操作符 DIV,則它們可以用于檢查除數(shù)的有效性,例如用來避免出現(xiàn)被0 除。該功能名是系統(tǒng)預(yù)定義的,而且系統(tǒng)只識別這個標(biāo)識符。如果你使用 CheckRangeSigned 和 CheckRangeUnsigned 來定義功能,則超出由子范圍類型聲明的變量范圍可以被截斷。所有這些檢查的功能名都被系統(tǒng)作為應(yīng)用程序的保留名。功能塊一個功能塊即是一個 POU ,它提供程序運(yùn)行過程中的一個或多個值。與功能相比,功能塊不提供返回值。以下是有二個輸入變量和二個輸出變量的一個功能塊的例子,使用 IL 語言編寫。其中一個輸出是二個輸入的乘積,另一個輸出則比較它們是否相等:Codesys PLC Control:簡介第 5 頁 共 249 頁功能塊實例可以創(chuàng)建一個功能塊的拷貝或?qū)嵗◤?fù)制)。每個實例都具有其自身的標(biāo)識符(實例名),以及包含有輸入、輸出和內(nèi)部變量的數(shù)據(jù)結(jié)構(gòu)。實例可以作為本地或全局變量加以聲明,而功能塊名是作為標(biāo)識符類型予以指示的。示例,名稱為“INSTANCE”的 FUB 功能塊的實例:INSTANCE:FUB。功能塊總是通過上述實例調(diào)用的。只能從一個功能塊實例的外部存取輸入和輸出參數(shù),而不能從其內(nèi)部變量存取這些參數(shù)。存取一個輸入變量的示例:功能塊 FB 有一個類型 INT 的輸入變量 in1。PROGRAM progVARinst1:fb。END_VARLD 17ST CAL inst1END_PROGRAM功能塊和程序的聲明部分可包含實例聲明。在功能內(nèi)不允許有實例聲明。對一個功能塊實例的訪問除非它們是全局聲明的,否則只限于聲明它們的 POU。一個功能塊實例的實例名可用作一個功能或一個功能塊的輸入。注意:處理一個功能塊后,所有的值直到下一次處理之前都加以保留。因此,通過相同變元的功能塊調(diào)用并不總是返回相同的輸出值!提示:Codesys PLC Control:簡介第 6 頁 共 249 頁如果至少有一個功能塊變量是一個保留變量,則全部實例都存儲在保留區(qū)。調(diào)用一個功能塊通過建立一個功能塊實例,并用以下語法規(guī)定所期望的變量,則可以從其它 POU 存取一個功能塊的輸入和輸出變量。實例名.變量名當(dāng)你打開功能塊時,如果要設(shè)置輸入?yún)?shù)(輸入變量的值),你可以使用文本語言 IL 和 ST,通過對括號(位于功能塊實例名后)內(nèi)的參數(shù)賦值來設(shè)置輸入?yún)?shù)(使用“:=”進(jìn)行賦值,如同在聲明位置的變量初始化)。請注意,POU 的輸入/輸出變量 (VAR_IN_OUT) 將轉(zhuǎn)變成為一個指針。因此,在調(diào)用時不能對它們賦值常數(shù),而且不能進(jìn)行外部的讀或?qū)懖僮?。?yīng)用 ST 語言編寫的調(diào)用 POU fubo 的 VAR_IN_OUT 變量 inout1 示例:VARinst:fubo。var1:int。END_VARvar1:=2。inst(inout1:=var1)。不允許:inst(inout1:=2)。 或 :=2。調(diào)用上述功能塊 FUB 的例子。乘法結(jié)果保存在變量 ERG 內(nèi),比較結(jié)果保存在 QUAD 內(nèi)。并聲明功能塊 FUB 的實例名為 INSTANCE:使用 IL 語言,按以下程序調(diào)用功能塊:Codesys PLC Control:簡介第 7 頁 共 249 頁在以下例子中,使用 ST 語言表示的調(diào)用。聲明部分同IL 語言:使用 FBD 語言,屏幕顯示如下(聲明部分同IL 語言):使用 SFC 語言,只能按步調(diào)用功能塊。程序一個程序即是一個 POU,它在運(yùn)行過程中返回若干個值。并全局識別整個項目的程序。從上一次運(yùn)行程序直到下一次運(yùn)行程序,一直保留所有的值。程序可以被調(diào)用。不允許在一個功能內(nèi)調(diào)用一個程序。也不存在程序的實例。如果一個 POU 調(diào)用一個程序,而且如果程序的值隨之改變,那么,這些改變將被保留到下一次調(diào)用程序(即使從其它 POU 內(nèi)已調(diào)用了該程序)。這不同于調(diào)用一個功能塊。那里只改變功能塊給定實例中的值。因此僅當(dāng)調(diào)用相同實例時,這些改變才起作用。一個程序聲明以關(guān)鍵字 PROGRAM 開始,以 END_PROGRAM 結(jié)束。上述程序調(diào)用的示例:使用 IL 語言:Codesys PLC Control:簡介第 8 頁 共 249 頁CAL PRG ExampleLD ST ERG使用 ST 語言:PRGExample。Erg := 。使用 FBD 語言:如果從程序 PRGexample 來的變量 PAR 是通過一個帶有 0 的主程序初始化,然后以上述命名的程序調(diào)用逐一調(diào)用其它程序,那么,程序中的 ERG 結(jié)果將有值 2 和3。如果交換調(diào)用順序,那么,給定結(jié)果參數(shù)的值也應(yīng)相應(yīng)的改變。動作作為功能塊和程序的附加特性,你可以定義各種動作(Action)。一個動作是使用步實現(xiàn)的。它可以使用與“normal(常規(guī))”實現(xiàn)體不同的語言編寫。每個動作有一個名字。一個動作是與關(guān)聯(lián)的功能塊或程序的數(shù)據(jù)一起工作的。它與“常規(guī)”實現(xiàn)體一樣,使用相同的輸入/輸出變量和局部變量。參見上圖中的示例:當(dāng)調(diào)用功能塊 Counter 時,輸出變量隨輸入變量 39。in39。 增加或減小。當(dāng)調(diào)用附屬于功能塊的動作 Reset時,輸出變量設(shè)置為 0。在這兩種情況下,編寫相同的輸出變量 Out。相應(yīng)于 實例名.動作名,通過 程序名.動作名 調(diào)用一個動作。如果必須在主模塊內(nèi)調(diào)用動作,則在文本編輯器中,只使用動作名,在圖形編輯器中,功能塊的調(diào)用不需要實例名。示例對所有示例的聲明:PROGRAM PLC_PRGVARInst : Counter。END_VARCodesys PLC Control:簡介第 9 頁 共 249 頁使用 IL 語言:CAL (In := FALSE)LD ST ERG使用 ST 語言:(In := FALSE)。Erg := 。使用 FBD 語言:注意:有關(guān) SFC 動作的詳細(xì)信息,請參見“SFC”章節(jié)。在 IEC 611313 標(biāo)準(zhǔn)中,只描述用于 SFC 的動作。資源為了配置和組織項目以及跟蹤變量值,你需要使用資源:l “全局變量(Global Variable)”,它可以在整個項目中使用。l 用來配置硬件的“PLC 配置(PLC Configuration)”。l 引__________導(dǎo)程序執(zhí)行各種任務(wù)的“任務(wù)配置(Task Configuration)”。l 用于變量圖形化顯示的“抽樣跟蹤(Sampling Trace)”。l 用來顯示變量和設(shè)置默認(rèn)變量的“監(jiān)視和接收管理器(Watch and Receipt Manager)”。參見“資源”章節(jié)。軟件庫你可以在項目中包括一系列的軟件庫。你可以像用戶定義變量那樣使用這些庫的POU、數(shù)據(jù)類型以及全局變量。 庫是程序的一個標(biāo)準(zhǔn)部分,供你隨時使用。參見章節(jié)“庫管理器”。數(shù)據(jù)類型除標(biāo)準(zhǔn)數(shù)據(jù)類型之外,用戶還可以定義自己的數(shù)據(jù)類型。并可以建立結(jié)構(gòu)、枚舉類型和子類型。參見附錄中的“標(biāo)準(zhǔn)數(shù)據(jù)類型”和“用戶定義的數(shù)據(jù)類型”。Codesys PLC Control:簡介 第 10 頁 共 249 頁 語言 編程語言Codesys PLC Control 支持所有的 IEC611313 編程語言。有兩種文本編程語言和三種圖形編程語言。文本編程語言l 指令表 (IL)l 結(jié)構(gòu)化文本(ST)圖形編程語言l 功能塊圖(FBD)l 梯形圖 (LD)l 連續(xù)功能圖(CFC)l 順序功能圖(SFC) 指令表 (IL)指令表(IL)由一系列指令組成。每個指令在一個新行的開始,包含有一個操作符以及取決于操作符類型的一個或幾個以逗號分隔的操作數(shù)。在指令前面可以有標(biāo)識符號(標(biāo)記),后跟一個冒號(:)。注釋必須是一行的最后元素。指令之間可以插入空行。例:LD 17ST lint (* 注釋 *)GE 5JMPC nextLD idwordEQ STN testnext:使用 IL 語言的修飾符和操作符在 IL 語言中,可以使用以下操作符和修飾符。修飾符:l JMP、CAL、RET 帶有C:僅當(dāng)前面的表達(dá)式結(jié)果是 TRUE(真)時,才執(zhí)行指令。l JMPC、CALC、RETC 帶有 N:僅當(dāng)前面的表達(dá)式結(jié)果是 FALSE(假)時,才執(zhí)行指令。l 其它情況的 N:操作數(shù)的求反運(yùn)算(不是累加器)以下列出所有用于 IL 語言的操作符以及可能的修飾符和操作符相應(yīng)的含義:操作符 修改符 含義LD N 使當(dāng)前的結(jié)果等于操作數(shù)Codesys PLC Control:簡介 第 11 頁 共 249 頁ST N 在操作數(shù)位置保存當(dāng)前結(jié)果S 如當(dāng)前結(jié)果是 TRUE,將布爾操作數(shù)設(shè)置為 TRUER 如當(dāng)前結(jié)果是 TRUE,將布爾操作數(shù)設(shè)置為 FALSEAND N, ( 按位邏輯“與”O(jiān)R N, ( 按位邏輯“或”XOR ( 按位“異或”ADD ( 加法SUB ( 減法MUL ( 乘法DIV ( 除法GT ( EQ ( =NE ( LE ( =LT ( JMP CN 跳轉(zhuǎn)到標(biāo)號CAL CN 調(diào)用功能塊RET CN 從功能塊調(diào)用返回) 后期評估操作你可以在附錄表中找到所有的 IEC 操作符。使用修飾符的一個 IL 程序示例:LD TRUE (*在累加器中裝載 TRUE*)ANDN BOOL1 (*BOOL1 變量取反進(jìn)行“與”運(yùn)算*)JMPC label (*如果結(jié)果是“TRUE”,則跳轉(zhuǎn)到標(biāo)號“Label”*)LDN BOOL2 (*裝載 BOOL2 取反值*)ST ERG (__________*在 ERG 中存儲 BOOL2*)label:LD BOOL2 (*存儲 BOOL2 的值*)ST ERG (*在 ERG 中存儲 BOOL2*)使用 IL 語言還可以在操作符后放置括號。從而,括號內(nèi)的值被認(rèn)為是一個操作數(shù)。例:LD 2MUL 2ADD 3ST Erg這里,Erg 值是 7。然而,如果加上括號:LD 2MUL( 2ADD 3)ST ErgCodesys PLC Control:簡介 第 12 頁 共 249 頁這里,Erg(結(jié)果)的最終值為 10,從而,只有到達(dá)“)”,才能求值操作 MUL;這是因為操作 MUL5 是以后計算出來的。 結(jié)構(gòu)化文本(ST)結(jié) 構(gòu) 化 文 本 由 一 系 列 指 令 組 成 ??梢詧?zhí)行如同高級語言所確定的 (IF..THEN..ELSE) 或 循 環(huán)(WHILE..DO) 語句。例:IF value 7 THENWHILE value 8 DOvalue := value + 1。END_WHILE。END_IF。表達(dá)式表達(dá)式是一種結(jié)構(gòu),它返回計算后的值。表達(dá)式由操作符和操作數(shù)組成。操作數(shù)可以是常數(shù)、變量、功能調(diào)用,或其它表達(dá)式。表達(dá)式的求值按照優(yōu)先級規(guī)則,通過對操作符的處理可執(zhí)行表達(dá)式的求值。首先處理最高優(yōu)先級的操作符,然后處理次優(yōu)先級的操作符,依次類推,直至處理完所有的操作符為止。有相同優(yōu)先級的操作符是從左到右處理的。以下按操作符的優(yōu)先級大小列出
點擊復(fù)制文檔內(nèi)容
法律信息相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1