回覆列表
  • 1 # 鋼鐵煉成記Y

    使用功能塊的主要目的是促進良好的結構化程式設計,功能呼叫;讓複雜的程式建立的程式碼更少,更易於程式的管理。一個功能塊由塊頭和塊體組成塊頭—要在功能塊程式中使用的資料:作為輸入和輸出的連線的變數,功能塊內部變數,用塊內本地引數定義-形參。塊體包含可能的指令,演算法 - 這是功能塊每次執行時的實際的程式碼。呼叫中,對應輸入和輸出變數用實際對應的變數代入。不是所有的PLC都可以建立功能塊。可以建立功能塊歐姆龍plc:CJ1M,CJ,CS,CP1H/L等;每一型別的PLC能建立的功能塊數量是不同的。在PLC中最多可以定義64個功能塊,最多可以寫30000條語句。

    建立和使用功能塊的步驟:

    一、PLC必須是一個有效的PLC型別。

    二、是功能塊的定義建立。選擇合適的功能塊型別:梯形圖或結構化文字;新的功能塊被建立,它的名稱將預設為‘功能塊’。

    三、是開啟功能塊進行編輯,包括在塊頭中設定使用功能塊變數;塊體使用書面的演算法功能塊梯形結構化編輯器或文字編輯器編寫 。

    四、建立後的功能塊可以在主程式梯圖編輯器中呼叫使用。

    如果某具體的功能塊已經存在,那麼可以從‘FB列表中’選擇。如果沒有,建立的功能塊只需要輸入一個新名稱,選擇適當的‘FB列表’定義。選擇的功能塊會自動在全域性符號表中建立(包括分配在功能塊頭中定義的每個變數的記憶體);功能塊的呼叫將在梯形圖中顯示。

    呼叫的功能塊的執行,可以透過執行條件連線功能塊EN輸入引腳。當執行條件滿足時(相當於True),能量流達到EN腳,功能塊被執行。 功能塊ENO輸出引腳可選的。也可不選;可以連線執行線圈或者執行條件,但是最右邊的元素必須用線圈或指示終止。

    五、連線功能塊的輸入和輸出引腳。

    這些引腳必須使用[回車]鍵或從[插入]選單的[功能塊引數]選項選擇引數連線;而不能用觸點或者線圈連線。功能塊左側為輸入引腳;右側為對功能塊的輸出引腳。該功能塊的輸入和輸出引腳連線完全是可選的。

    六、設定完成後,CX –P程式可以編譯,下載和執行。

    1、建立方式

    選擇樹型選單中[功能塊],右鍵插入,或者選中樹型選單中[功能塊],再從下拉選單[插入]中選擇[功能塊]。

    2、有幾種形式建立

    (1)是從檔案中直接匯入(字尾

    .CXF

    )現有的功能塊;

    (2)是自己建立:用結構文字方式寫;或者是梯形圖來寫。

    呼叫方式

    選擇在程式設計區適當的單元格中,右鍵呼叫,或者使用從[插入]選單[功能塊呼叫]選項。

  • 2 # 控制研究控

    這個問題,我在omrog-CX-programmer裡邊看了一下,和西門子一邊建立自定義塊還是很相似的。

    直接上圖來看說吧:

    新建一個專案,裡邊是沒有功能塊的,如下圖:

    如圖最下邊紅色線框,功能塊這裡,沒有任何的功能塊,目前這個像是讓你建立功能塊的一個根目錄。而當我滑鼠右鍵插入一個功能塊後,這裡將出現一個真正的功能塊,圖就和這裡這個圖示也不一樣,如下圖:

    這裡因為我插入的是一個梯形圖的功能塊1,所以這裡顯示L;如果插入是結構文字,這裡的圖示是S。

    雙擊功能塊1,在檢視的右側就會出現對功能塊1編輯的畫面,如下圖:這裡我就只在輸入和輸出中建立3個變數,然後做一個簡單的程式,完成這個程式塊:

    這個圖可以看到,我在輸入中建立了2個變數啟動和停止,在輸出中建立了一個變數M_OUT。而EN,和ENO是系統自己建立的,運來就存在的!

    這樣,這個功能塊其實就編寫完成了!

    看一下在主程式中呼叫後監控執行的情況吧:

    從這個圖片可以看到,EN接通,ENO就輸出。同時,我強制PB_START的變數,M_OUT也就輸出為1了。也就說明,這個功能塊已經正常工作了!

  • 中秋節和大豐收的關聯?
  • 出了交通事故,自己墊付了對方所有醫藥費,但是現在傷者病好了不出院怎麼辦?