Copyright: ISaGRAF V3.4


 使用FBD/LD編輯器

ISaGARF FBD/LD圖形編輯器允許使用者輸入部分階梯圖，以組成完整的FBD程式，它組合了圖形與文字的編輯能力，如此可以輸入圖形，也可以輸入相對應的輸入及輸出。這個編輯器比較致力於FBD語言，純粹的階梯圖建議最好使用ISaGRAF Quick LD編輯器來編輯。

FBD/LD語言基礎

輸入FBD圖形

編輯已存在的圖形

顯示選項

樣式及更動記錄

"工具" 功能表的命令

呼叫ISaGRAF其他工具

程式的參數

"檔案" 功能表中其它的命令

程式日記 (program diary) 的更新

從字典中挑選變數


FBD/LD語言基礎

FBD語言是許多不同型態程式的圖形表示法，運算元以長方形的函數方塊表示。函數的輸入連結到方塊的左邊，函數的輸出則連結到方塊的右邊。圖形式的輸入與輸出 (變數) 使用邏輯連線到函數的方塊上，函數方塊的輸出也可以連到另一個方塊的輸入。

LD語言是布林運算式的圖形表示法，這種圖形方式可以很明顯地表示出布林AND、OR、NOT等運算元。布林輸入變數連結到圖形接點上，而布林輸出變數則連結到圖形線圈上。接點及線圈由水平線連結在一起，且連結到左右電力軌上。每一個線段皆會有真 (TRUE) 或假 (FALSE) 的布林狀態值，所有連結在一起的線段都有相同的布林狀態，任何連到左垂直電力軌上的水平線皆是真 (TRUE) 的狀態。

左電力軌

右電力軌

LD垂直 "OR" 連結

接點

線圈

功能方塊

標籤

跳躍

返回符號

變數

連結

布林反相連結

使用者定義的轉角

LD與FBD圖形的程式執行順序皆是從左到右，從上到下。參考ISaGRAF語言參考手冊，可得到更多有關LD與FBD語言的更多說明。以下是FBD/LD編輯器所支援的基本LD及FBD語言元件：


左電力軌

導軌的左端必須連結到左電力軌上 (表示初始的 "真" (TRUE) 狀態)，ISaGRAF FBD編輯器亦允許連結任何的布林符號到左電力軌上。


右電力軌

線圈的右端可以連結到右電力軌上，當使用ISaGRAF FBD/LD編輯器時，這是可以選擇的。假如線圈的右方無右電力軌，它會自動產生一個右電力軌。


LD垂直 "OR" 連結

LD垂直連結接受一些左邊及右邊的連線，每一個右方連結的狀態相當於左方連結做OR (或) 運算後的結果。


接點

接點會根據布林變數的狀態來改變布林資料流，連結的變數名稱顯示於接點符號的上方。下面是ISaGRAF FBD/LD編輯器所支援的接點型態：

直接接點

反相接點

正 (上升) 邊緣偵測接點

負 (下降) 邊緣偵測接點


線圈

線圈表示一種動作，它的左端必須連結到布林符號 (如接點)，連結的變數名稱顯示於線圈符號的上方。下面是ISaGRAF FBD/LD編輯器所支援的線圈型態：

直接線圈

反相線圈

"設定" 線圈

"重置" 線圈


功能方塊

FBD圖形中的方塊可以表示函數、功能方塊、副程式或是運算元，輸入及輸出必須連結到變數、接點、線圈或其它方塊的輸出或輸出點上，形式上的參數名稱顯示於矩形方塊內。


標籤

標籤可以放置於圖中的任何地方，用來當作跳躍指令的目的地，它可以改變程式的執行順序。標籤無法跟其它元件做連結。為了增加程式的可讀性，建議你最好將標籤放置於圖左方。


跳躍

跳躍符號總是參考到放置於圖中某處的標籤，它的左端必須連結到布林點上，當左端的狀態為真 (TRUE)，程式會直接跳到目的標籤所在的程式執行。使用向後跳躍時要特別注意，因為可能會產生無窮迴圈，使程式凍結住。


返回符號

返回符號連結到布林點上，當導軌的狀態為真 (TRUE) 時，程式的執行將被停止。


變數

變數在圖中是以小長方矩形表示，它的左右兩端可以連結到其它元件。


連結

各元件間以連結線來表示連結關係，連結必須由輸出點到輸入點 (資料流的方向)。


布林反相連結

某些布林的連結線會在線的最右端加上一個小圓圈，代表反相的布林資料流。


使用者定義的轉角

使用者定義點可以定義在連結線上，它允許使用者手動控制連線的外型，在沒有加上轉角的情況下，ISaGRAF FBD/LD編輯器使用內定的連線軌跡規則。


輸入FBD圖形

要輸入FBD圖形，你必須放置元件 (方塊、變數、接點、線圈_) 於圖形區域內，然後將他們連結起來。

插入物件

選擇物件

插入註解

移動物件

 	繪出連結線

改變連結線的畫法

改變連結線的型態

繪出LD導線

多重連結


插入物件

欲於圖中插入物件，需點選工具列上的相對按鈕，然後於圖形區域內欲插入的位置按滑鼠左鍵。


選擇物件

大部分的編輯命令都需要先選取物件，ISaGRAF FBD/LD圖形編輯器可以選取一個或多個存在於圖形區內的物件。欲選取物件，必須先點選編輯工具列上的 "選擇" 按鈕 (箭頭形狀)。僅選一個物件時，點選該物件即可，欲選取多個物件時，於圖中拖曳滑鼠成長方形，與長方形區域交錯的物件將被標上 "被選取" 的記號，被選到的物件會在它的四週出現黑色的小方點。當選取新的物件後，所有先前選取過的物件將不再被選取，不要選取任何物件時，只要點選被選取物件長方形邊界外的空區域即可。


插入註解

註解可以插入於圖形中的任何區域，它不會影響程式的執行，但是可增加程式的可讀性。要插入註解方塊，選取工具列上的相對按鈕，拖曳滑鼠，選取註解所需的長方形區塊，然後輸入文字註解。當你輸入註解方塊內的文字時，不需要加上如 "(*" 與 "*)" 等的開頭及結尾字串。當註解方塊被選取時，可以拖曳它的邊框來改變註解方塊的大小。


移動物件

要於圖中移動物件，先選取它們，再移動滑鼠，將它們搬移到目的地。若移動的物件已做過連線，只要於移動圖形符號後，則ISaGRAF FBD/LD編輯器會根據移動後的新位置重畫各物件間的連結線。


 	繪出連結線

選取工具列上的相對按鈕來繪出已存在元件間的連結線，假如你從一個連結點畫到一個空的位置，在終端處會自動加入使用者定義轉角，這樣你可以再繼續畫出另一個區段。


改變連結線的畫法

當連結線被選取後，"工具 / 改變線形" 可用來改變連線的軌跡，但是若這個連結線連到使用者定義轉角，這個命令將沒有作用。假如連結線有三個區段，這個命令會改變第二區段的位置，如下所示：


改變連結線的型態

只要在連結線的極右端上雙按滑鼠左鍵，你能很容易第改變連結線的型態 (有或沒有布林反相)。


繪出LD導線

欲畫一個新的LD導線，首先須插入左電力軌，然後放置一個線圈，它會自動連結到電力軌上，其它的接點及垂直OR連線可以直接加在這個導軌線上，不需要自己加入任何的連結線。

當加入新的LD接點或線圈到空的編輯區內，會在插入的元件與已存在的左右電力軌之間加入新的水平導線。假如新加入的元件沒有放置在電力軌之間，這條導線不會自動加上去。你可以在導軌上自由移動插入的接點或線圈。當插入的LD接點或線圈被刪除後，編輯器會補上水平線。你可以插入新的LD接點或線圈到已存在導軌的水平線上，編輯器會自動剪斷導軌，且將它連到新插入接點或線圈的左右連結點上。


多重連結

多重連結可以建立在任何輸出接點的右端，他表示將訊息廣播到幾個其它點上，每個接點的極右端點的狀態都相同。輸出接點所連出去的連結線數目是沒有限制的，但是不能將兩個連結線的極右端點連到相同的輸入點上，除非是如下的LD元件：

右電力軌

左 (OR) 運算元的多連結

這些LD符號沒有輸入數目的限制。


編輯已存在的圖形

"編輯" 功能表的命令用來改變或完成已存在的圖形，大部分的命令作用在被選取的物件上。

修正圖形

尋找與取代

顯示執行順序

輸入符號及文字

選擇功能方塊型態

加入空白區


修正圖形

DEL鍵可以用來移除被選取的物件，連結到這些被刪除元件的連結線會一並被刪除。DEL鍵執行後，可以用 "編輯 / 回復" 命令來復原被刪除的元件。DEL命令也可以用在所選的物件群組上。"編輯" 功能表下的 "剪下"、"複製" 及 "貼上" 命令用來搬移或複製所選的元件。


尋找與取代

"編輯" 功能表下的 "尋找" 與 "取代" 命令用來尋找與取代圖形中的文字，僅有完整的名稱才能被找到。尋找可以用在接點、線圈、方塊名稱、變數與標籤上，不能用來尋找註解內的字串，取代命令不能用來改變方塊名稱。尋找能從選擇的位置往前或往後搜尋，當搜尋至圖形區的邊界後，則重新從另一端再搜尋起。


顯示執行順序

當FBD圖形包含向後跳躍的迴圈時，執行的順序就不再是單純的左到右 / 上到下的方式，為了避免混淆，使用 "編輯 / 顯示執行順序" 命令或按Control+F1鍵來顯示執行順序 (編譯時的順序)，在會導致動作的符號 (線圈、設定變數與功能方塊) 附近標上1到N的數字。


輸入符號及文字

在元件上雙按滑鼠左鍵可輸入連結的符號或文字，這個方法可以用在變數、接點、線圈、註解文字及標籤上。當用在接點及線圈上時，可以改變它的型態 (直接、反相_)。

對話框包含變數或方塊選擇列表，也可以用於文字輸入。假如 "選項" 功能表的 "手動鍵盤輸入" 模式被開啟時，變數符號及名稱直接輸入於單純文字編輯盒中，輸入新的文字後按 "Enter" 鍵來確定，或按 "Escape" 鍵取消，且關閉文字編輯盒。文字編輯盒於 "手動鍵盤輸入" 模式下不能以滑鼠來關閉。

假如 "選項" 功能表下的 "自動輸入" 模式被開啟，每次插入新的接點時，變數符號必須立即輸入；當插入變數或標籤時，符號也必須立即輸入。


選擇功能方塊型態

於方塊上雙按滑鼠左鍵可以改變它的型態，方塊的型態可以從可利用的運算元、函數與功能方塊等列表中選出，這命令亦允許改變輸入點的個數 (如AND, OR, ADD, MUL...)。


加入空白區

當你於FBD繪圖區中按滑鼠右鍵時，將顯示出一個彈出式功能表，它包含下述之命令，可以用來插入或移除滑鼠所在位置之空白區：

插入列：	這個命令會於彈出式功能表開啟處之滑鼠游標的起始位置插入水平的空白區 (根據格點間隔計算出來的4列)。

刪除列：	這個命令會於彈出式功能表開啟處之滑鼠游標的起始位置刪除未使用的水平空白區 (列)。此命令不能用來刪除FBD元件。

當彈出式功能表開啟時，FBD繪圖區會出現一條灰色線來顯示即將插入或刪除空白區的位置。


顯示選項

"選項" 功能表的命令用來設定螢幕上的FBD圖形的顯示。

外觀

"選項 / 外觀" 命令開啟一個對話盒，這個對話盒聚集有關編輯工作區間及圖形顯示的參數及選項。使用 "工作區間" 群組內的檢查方塊 (check box) 用來顯示或隱藏編輯工具列或狀態列，"文件" 群組的選項允許你顯示或隱藏編輯格點。

"放大" 群組的選項允許你選擇一個主放大比例，你亦能使用編輯工具列上的 "放大" 按鈕來切換內定的比例。

使用 "選項 / 字型" 命令來選擇所有用在ISaGRAF圖形文件中的文字字型的名稱。選取字型的時候，字型的型態和大小是不相關的，而且不需詳細地設定。ISaGRAF圖形編輯器總是根據被選取的放大比例來計算字型的大小。


呼叫其他ISaGRAF工具

驗證 (編譯) 程式

 	模擬或除錯

編輯變數字典


驗證 (編譯) 程式

"檔案 / 驗證" 命令會執行一個叫 "ISaGRAF碼產生器" (Code generator) 的程式去驗證程式語法。如果是SFC語言，則第一層與第二層都會被驗證。當語法驗證完畢後，"碼產生器" 視窗必須關閉以便繼續程式上的工作。如果沒有語法上的錯誤，而且應用中又只有一個程式，則應用碼便會被產生出來。"選項 / 編譯選項" 命令是被用來設置 (set) 參數的編譯及最佳化時使用。參考 "如何使用碼產生器" 一章，您將會得到進一步有關編譯及碼產生器的訊息。


 	模擬或除錯

"檔案 / 模擬" 以及 "檔案 / 除錯" 命令可以在模擬模式或真實連接模式中執行ISaGRAF圖形除錯器，且於除錯模式時，再將SFC程式開啟。於除錯模式時，你無法修改程式內容。


編輯變數字典

"檔案 / 字典" 命令是用來編輯目前應用程式所用到的變數，它也可用來編輯使用者自訂的定義字。"區域" 宣告或定義字只適用於目前編輯的程式中。


程式的參數

當編輯的程式為函數、功能方塊或副程式時，則 "檔案 / 參數" 命令被用來定義呼叫及回傳的參數。當程式為SFC或為開始、結束區中的程式時，這個命令無效。

副程式、函數或功能方塊最高可以有32個參數 (包含輸入及輸出)。函數或副程式通常只有一個回傳參數，而且這個參數必須與函數名稱相同，以便符合ST語言的撰寫法則。下列對話框是被用來描述副程式的參數：

在視窗左上方的位置列出所有的參數且以呼叫模式的順序來排列。前面是 "呼叫參數"，再來為 "回傳參數"。在視窗的下半部顯示被選取參數的詳細描述，參數可以是任何一個ISaGRAF的資料形態。"回傳參數" 必須位於 "呼叫參數" 之後。參數名稱必須符合下列規則：

•	名稱不能超過16個字元

•	第一個字元必須是英文字母

•	第一個字元以後的字元可以是字母、數字或底線字元

•	名稱不分大小寫

"插入" 命令是用來在選取的參數之前插入新參數。"刪除" 命令是用來刪除選取的參數。"排序" 命令是用來自動重排列 (排序) 參數，所以 "回傳參數" 皆會放置於列尾。


"檔案" 功能表中其它的命令

下列命令可用於所有程式編輯器內的 "檔案" 功能表中：

打開其它的程式

程式列印


打開其它的程式

"檔案 / 開啟" 命令允許使用者關閉目前編輯的程式，且開啟目前案件中相同語言的程式。這個功能不能用來編輯以另一種語言撰寫的程式。被選取的程式會替換目前在編輯視窗中編輯的程式。


程式列印

"檔案 / 列印" 命令用來輸出程式至印表機。這個命令會自動執行ISaGRAF文件產生器來列印正在編輯的程式和相關的區域變數。

於圖形語言程式中 (SFC、FBD及Quick LD)，您可用 "編輯 / 複製圖形" 命令去拷貝在剪貼簿中以metafile格式所繪的圖形，以便於去剪貼於其他的應用中，例如文書編輯器 "Word"。如果是SFC程式，僅有第一階的圖形 (流程圖，數字編號以及第一層註解) 會拷貝到metafile檔中。


更新程式日記 (program diary)

可以用 "檔案 / 日記" 命令將附帶於編輯程式的日記檔以手動方式輸入。每一次程式編譯時，這個日記檔會自動加上語法檢查輸出訊息。編譯輸出完成後會有一個時間 / 日期的蓋印。

如果程式編輯器 "選項" 功能表下的 "更新日記" 模式中被選取，則每次程式被儲存至硬碟時會出現下列對話框。

假如 "確定" 按鍵被按下，則所輸入的文字註解便會加上時間 / 日期而儲存至日記檔的末端。這個特色對於維護程式非常有用，因為它提供了程式生命週期的協助。


從字典中挑選變數

 當編輯文字式程式 (ST或IL) 時，"編輯 / 插入變數" 允許選取一個已宣告的變數名稱，插入到游標所在的位置。當編輯LD或FBD程式時，線圈、I/O參數或FBD變數方塊必須依附上變數。在兩種情況下，將開啟下列的對話框，以便選取已宣告的變數：

"範圍" 列示盒是用來選擇全域或區域變數。列示盒的右邊可以選擇資料型態。在型態選擇欄的旁邊有一些小的圖示 (icon) 為選擇資料型態的快捷按鈕：

布林 (Boolean) 型態

整數 / 實數 (Integer / Real) 型態

計時器 (Timer) 型態

訊息 (Message) 型態

欲選擇變數，只要在名單上點選即可。它的名稱以及註解便會出現在名單正上方。然後按 "確定" 按鈕確認您的選擇，如此便完成了程序。當然，您亦可以直接將變數名稱輸入欄位中。


樣式及更動記錄

ISaGRAF LD/FBD 編輯器讓使用者可以指定任何LD/FBD元件的圖形樣式。樣式就是將圖形元件定義成特別的顏色，ISaGRAF亦使用樣式來做圖形變更的記錄，以便於作不同版本間的控制。

預定的樣式

變動記錄

注意於模擬或線上除錯模式下，樣式是不可見的，因為變數的TRUE / FALSE狀態會以紅色及藍色來表示。


預定的樣式

下面的樣式已預先定義好：

正常	為內定的樣式 (黑色)。對變動記錄而言，"正常" 樣式表示此元件為原始圖形的一部份。在執行時，具有 "正常" 樣式的元件將會加以執行。

變更	具有 "變更" 樣式的元件以粉紅色來標示。對變動記錄而言，"變更" 樣式用來突顯改變或加入原始圖形的元件。在執行時，具有 "變更" 樣式的元件將會加以執行。

刪除	具有 "刪除" 樣式的元件以灰色虛線來標示。程式在執行時會忽略這些元件，這種元件主要是用來記錄移除後的元件，以作為版本控制之用。

自行設定	除了預定的樣式外，ISaGRAF LD/FBD 編輯器允許使用者自定圖形元件成任意的顏色，這樣的元件則被當作具有 "自行設定" 的樣式。使用 "自行設定" 樣式對程式執行不會造成任何的影響。

使用 "編輯" 功能表下的 "樣式" 副功能表下的命令手動調整選取元件的樣式。


變動記錄

可用 "刪除" 樣式來作變更記錄的追蹤，或使用 "編輯/樣式" 功能表下的 "標記變更" 命令可用來開啟或關閉變更的記錄。

當 "標記變更" 選項被設定，所有變動或加入的圖形元件都會自動設定成 "變更" 樣式，當元件使用 "刪除" 或 "剪下" 命令刪除，它們不會自圖形中刪除，而是標上 "刪除" 的樣式。這樣的功能可以自動記錄圖形中所有變動過的元件。

使用 "編輯/樣式/移除所有刪除的項目" 命令，移除LD/FBD圖形中所有標記 "刪除" 樣式的元件，這個命令不管目前的選擇區，而是作用在整個的圖形上。

欲 "回復" 標記 "刪除" 樣式的元件，選取此元件，然後改變為 "正常" 樣式、"變更" 樣式或任何 "自行設定" 樣式即可，這樣的操作可能會導致無效的連結 (多於一個的連線連至相同的輸入點) ，這樣的情況會於下一次程式驗證時才會偵測出來。


"工具" 功能表的命令

工具功能表的命令如下所示，使用者可以使用它們來顯示訊息在FBD視窗底部的小文字列中：

顯示編譯輸出	在輸出視窗中顯示最後編譯產生的錯誤訊息

尋找圖形內容	在圖形中尋找指定的圖形內容，並且將它們列在輸出視窗中

隱藏輸出列	關閉輸出列表視窗

當錯誤訊息或尋找的圖形內容被顯示在輸出視窗中時，使用者可以直接用滑鼠左鍵在任何一行上按兩下，然後在訊息的相關位置做設定。