Copyright: ISaGRAF V3.4


ISaGRAF
ISaGRAF 3.40 版  註記

此文件資料為針對 ISaGRAF V3.40 版和舊版工作平台(workbench)的不同處所做的說明, 和一些未出現在 ISaGRAF 文件裡的內容. ISaGRAF V3.40 版是完全與 3.3x 版相容的. ISaGRAF V3.40 工作平台可用來設計 ISaGRAF 3.3 版的控制器應用程式.

如欲更多資料請參照本文下列之新特色:

3.40 版的新特色

新特色之內容

3.40 版修正的項目

關於先前的版本

關於流程圖(Flow Chart)語言

給 Windows NT 使用者的重要訊息


New features in release 3.40
3.40 版的新特色

下列為 3.40 版主要的新特色:

- Quick LQ 內之 內插(In Line) 功能方塊

- 結構化文字/指令集編輯器 的彩色編輯

- 功能方塊圖編輯器 的頁面預覽

- 交互參考編輯器 的快速搜尋

- 資源(Resource)定義檔 的相關路徑名稱

Quick LQ 內之 內插(In Line) 功能方塊

ISaGRAF 3.4 版現在支援階梯圖裡的 "內插" 功能方塊. "內插" 功能方塊提供功能方塊裡的功能方塊(FB in FB).

定義

內插 功能方塊有和其他功能方塊相同的定義:

- 內插 功能方塊有輸入及輸出的區域變數. 每一個輸入或輸出的區域變數有一個非常清楚的資料樣本. 輸入及輸出的總數不能超過32.

- 內插 功能方塊每次使用時會複製一份區域性變數.

內插 功能方塊的主要特徵就是每次使用時功能方塊的本體會被複製一份. 不像其他功能方塊,呼叫系統和區域變數. 內插 功能方塊的每一次要求呼叫是被實際方塊碼所取代的. 這個機構被Quick LD 編輯器達成. 因為這個複製機構是完全由編輯器所操作, 所以在 內插 功能方塊內無巢狀限制. 意思就是:

-	內插 功能方塊可以呼叫其它的 內插 功能方塊

-	內插 功能方塊可以呼叫標準的功能方塊或 C 功能方塊

注意的是舊式的功能方塊 (如 ISaGRAF 先前的版本) 仍被支援的

原則

請大家想像一個很簡單的方塊裡有一個輸入,一個輸出和一個內部複製的變數. 下例是一個 邊緣偵測功能方塊 的例子:

名稱:

FB1

輸入:

IN (boolean) = input signal

輸出:

Q (boolean) = set to TRUE only when IN changes from FALSE TO TRUE

內部樣例資料 (乃是每次呼叫時被複製的):

PREV (boolean) = state of IN signal at the previous cycle

FB1 方塊的階梯圖程式:

     IN         PREV          Q

|----] [--------]\[----------( )-|

     IN         PREV

|----] [--------( )-|

結構化文字語言的相等式:

Q := IN and not PREV;

PREV := IN;

以下是呼叫此功能方塊的 Quick LD 程式:

     B1   +-------+         B2

|----] [--|  FB1  |--------( )-|

          +-------+

     B3   +-------+         B4

|----] [--|  FB1  |--------( )-|

          +-------+

"FB1" 程式碼將會被複製. 以下是編譯時,結構化文字語言的相等式:

(* code of the first call *)

B2 := B1 and not PREV1;

PREV1 := B1;

(* code of the second call *)

B4 := B3 and not PREV2;

PREV2 := B3;

此例, 編譯器必須分配內部變數給功能方塊的每次呼叫 (PREV1 和 PREV2). 因為內部變數自動重取名稱,所以不會局限 內插 功能方塊的巢狀結構.

注意的是應用程式碼的大小(TIC code)是比用一般功能方塊的程式碼大, 然而 內插 功能方塊提供較短的執行時間

巢狀 內插 功能方塊一樣支援 邊緣偵測接點和線圈 (P 和 N),  "C" 和 標準的功能方塊, 和區域跳躍與標籤.

限制

內插 功能方塊只用於 Quick LD 語言. 意思是說:

- 內插 功能方塊必須用 Quick LD 語言來寫

- 所有呼叫內插 功能方塊的程式必須用 Quick LD 語言來寫

- 在 SFC 語言及 Flow Chart 語言內的小段 Quick LD 程式可呼叫內插 功能方塊

以下是一些呼叫內插 功能方塊的規則:

- 內插 功能方塊可呼叫內插 功能方塊

- 一般的功能方塊不能呼叫內插 功能方塊

- 內插 功能方塊可呼叫一般的功能方塊

- 回復式的呼叫是不允許的

( "一般的功能方塊" 指的是像在 ISaGRAF 3.3 裡的功能方塊)

呼叫錯誤是在編譯時會被發現的. 還有, 當執行 "驗證" or "編譯" 命令時, 編譯器會根據呼叫的圖案,自動確認 內插 功能方塊.

內插 功能方塊只能在一個案件裡定義. ISaGRAF 程式庫不支援 內插 功能方塊.

定義內插 功能方塊

在 Quick LD 編輯器的 "工具" 列裡, 新的 "內插" 命令, 允許被編輯的功能方塊是否為 內插 功能方塊. 這命令可設定或重置被編輯的功能方塊的 內插 屬性. 當內插 被設定時,一個小的名稱列會隨工具列出現.

結構化文字/指令集編輯器 的彩色編輯

ISaGRAF 3.4 版包含新的結構化文字和指令集程式的文字編輯器. 這個編輯器使用幾個顏色來展示關鍵字,變數名,語法� 除此之外, 這新的編輯器現在有能力來編輯更大的文件檔(一不同機器, 最多至100 KB). 彩繪顏色組不能自創.

功能方塊圖編輯器 的頁面預覽

當列印時,根據選用的影印機和紙, 功能方塊圖被分裂為數頁. 現在有機會在功能方塊圖編輯器裡預覽每頁頁界. 當設計圖面時,這很有用來避免放置一個符號在分裂的二頁上.

當編輯格子可看見時, 頁界會被展示為如同圖裡的灰色線.

功能方塊圖編輯器使用最後選擇的影印機結構來展示頁面大小. 在功能方塊圖編輯器裡預覽頁界前, 你必需啟動文件產生器且選用正確的印表機和紙張. 因此, 為了檢查圖面, 你必需:

- 執行文件產生器

- 選用影印機和紙張大小和定位

- 不用影印關閉文件產生器

- 打開功能方塊圖程式

- 展示格點.

交互參考編輯器 的快速搜尋

交互參考編輯器現在可用來查詢一個參考符號. 當交互參考編輯器正在執行時, 一個對話盒子會出現,您可輸入查詢的符號. 按 "確定" 來查詢這個符號. 按 "全部" 來計算全部的交互參考.

注意執行交互參考編輯器只用一個符號可節省計算時間.

資源(Resource)定義檔 的相關路徑名稱

資源的定義(額外和下載應用程式碼合併的資料) 現在接受相關路徑名稱. 您可使用 ".\" 相關路徑 (對應於該案件目錄) 來輸入文件檔. 這個可應用在 TEXTFILE 和 BINARYFILE 資源, 在"FROM" 敘述裡描述的檔案.


Detailed list of new features in release 3.40
3.40 版新特色的詳細列表

以下是 3.4 版新特色的詳細列表:

(待完成)


Corrections included in release 3.40
3.40 版修正的項目

以下是 3.4 版修正了那些項目的詳細列表:

(待完成)


Corrections included in release 3.32
3.32 版修正的項目

以下是 3.32 版修正項目的列表:

0146 C 4 archiver:do not see projects with archive attrib.

0371 C 4 compil never ends with BDD optim. and boo=true

0434 C 4 Quick-LD printout: rungs are missing

0446 R 4 WKINTER:TIC Codes listed with wrong page numbers

0471 R 4 WKINTER: R_ANY com. exchange is not as described

0522 R 4 WKINTER:tell what is last compilation date format

0614 C 3 compiler error on FC pgms if 'use SFC' unchecked

0623 C 2 FC delete link erases all below chart

0626 R 2 ST expression badly compiled

0647 R 1 Pb with FC editor (delete a connector)

0648 R 3 CMP :Execution problem when use 'EXIT'

0649 R 2 SCC: missing Conversion table declaration

0650 R 4 SCC: if no program, appli.c not in SCC

0651 R 2 Pb with local vars in spotlight

0652 R 1 Pb with copy/paste a test in FC

0653 R 2 Error not expected with unknown label

0657 R 3 CMP: execution problem with boolean operation

0658 R 3 CMP: bad code generated if use BDDs option

0660 R 2 Forcing of out. mess. var. may not update the out. device

0662 R 3 French: link dialog box, the 'and' is not translated

0663 R 1 GPF on ISaGRAF Quick LD code generator in Japan

0665 R 1 GPF after Delete comment in FBD program

0666 R 3 SFC: in LD transition, copy/paste is not possible

0667 C 3 if rename or add comment on Program, it is moved

0668 R 3 Scc: missing a ( in the if when used message output

0669 R 3 Quick variable declaration is enables to declare variable

0670 R 2 Dialog box do not asking save or not when we close I/O

0671 R 3 I/O slot and channel are defined by using VXA Function

0672 R 3 Variable names beginning with '_' can't be monitored

0673 R 3 ST,IL programs open without spying in debug or simulation

0675 C 2 Print: ST level2 of SFC programs is truncated

0676 C 3 HLP:Time-Out,the doc says that unit is millisecond

0677 C 1 GPF after open the cross references

0679 C 2 After rename a I/O config in lib., boards are lost

0680 C 1 GPF after try to print an SFC program with jump

0681 C 2 Password not asked after restore in new WB

0682 C 4 no % variable in all demo projects

0683 C 4 ST debug: not same tabs setting as during editing


Corrections included in release 3.31
3.31 版的修正項目

以下是 3.31 版修正項目的列表:

工作平台上

0274 R 4 refresh graphics is not done (icons overlaps)

0313 R 4 SFC selection is lost if mouse moved on button bar

0386 V 2 GPF in quickLD editor if many manipulations

0446 R 4 WKINTER:TIC Codes listed with wrong page numbers

0466 R 4 Dictionary: when var nr >=7000, dictionary crashes

0471 R 4 WKINTER: R_ANY com. exchange is not as described

0522 R 4 WKINTER:tell what is last compilation date format

0584 R 4 English QLD error message in French/German workbch

0585 R 2 Problem with delet a link in FC editor

0586 R 4 Copy of FC / SFC program in begin/ end section

0588 R 4 Problem with 'Option / Layout' in Quick-Ld editor

0593 R 4 Restoring archive of C function generates error 209

0594 R 4 Problem with 'Find in steps & tests' command

0601 R 2 SFC:GPF when saving if 'end of macro' step misplaced

0602 V 1 simulator remains in 'logging' state under Win95

0603 R 3 SFC+FC:'hidden' var. on QLD enable line=>compil

0604 R 2 FC: GPF after IF-THEN-ELSE branches deletion

0606 R 4 Export FC child pgm to library should not be allowed

0610 R 4 SFC level 2: close window box not always visible

0618 R 3 FC editor: invert YES/NO branches &save=>abnormal FC

0619 R 2 3.30 DOC generator doesn't work at all under Win3.1

0621 R 2 Colored contacts in Ladder

0627 R 2 SFC:IL transitions from 3.23 pgrams aren't visible

0630 R 3 NUMS files not correctly updated by the archiver

0635 R 2 W95: impossible to de-archive if drive protected

編譯器上

0535 R 3 SCC not OK if C function with timer or message para

0596 R 2 Function result needs to be assigned on last line

0617 R 2 EXIT statement does not work after imbricated loop

0620 R 2 Optimizer error for delayed operators in IL program

0628 R 2 Too many message variables may cause error

0634 R 2 Concatenation pb with SCC


New features in release 3.30
3.30 版相對於先前版本的特色

以下是 3.30 版相對於先前版本的主要特色:

- 新的 SFC 編輯器

- 增加流程圖(Flow Chart) 編輯器

- 修正 FBD 編輯器的追蹤

- 增加變數的快速宣告

- 新的模擬工具

- 強化的密碼系統

新的 SFC 編輯器

- 完全和 3.2x 版的 SFC 程式相容

- 快速的 滑鼠/或鍵盤 輸入

- 圖片插入或刪除後的自動安排

- 選取, 拖曳去移動圖片部份

- 更好的第二層編輯視窗 (with splitters)

- SFC 倉庫允許複雜 SFC 結構的快速輸入

- SFC 倉庫可管理 SFC 暫時檔

新的 流程圖(Flow Chart) 編輯器:

- 流程圖(FC)現在成為第六種程式語言

- FC 是順序區內的程式

- FC 程式可被編輯, 編譯和執行運作, 甚至在一個 3.2x 版的控制器上

- Actions 和 tests 可以使用 LD, ST 或 IL 語言來寫

- 支援連結器(connectors), FC副程式

-平行分支不在這版本被支援

-每個符號可獨自被變大變小

- 在插入或刪除之後圖的自動排列

- 第二層編輯視窗 (with splitters)

FBD 編輯器的變更:

- 樣式(Style) 選項 (彩色圖形)

- 在編輯時自動設定修改的 樣式 (修正追蹤)

- "刪除" 樣式的使用給修正追蹤

- 插入/移除 圖形內的空白列(從滑鼠右側按鈕彈起單)

- 在每一功能方塊註記選項裡有一個描述文件

- 可從鍵盤手動輸入文字(不必始用選項列表)

- 在偵錯時字體大小選擇已被最佳化

- 二個獨立的圖形大小比率可被儲存以供編輯和偵錯用

Quick LD 編輯器的變更:

- 選項和命令從變數字典裡更新別名

- 在每一功能方塊註記選項裡有一個描述文件

- 可從鍵盤手動輸入文字(不必始用選項列表)

在所有編輯器內可用的新功能:

- 編輯錯誤訊息現在植入編輯視窗內

- 有一個植入的交互參考工具給程式使用(尋找�)

- 文字字體可從 FBD / Quick LD / SFC / FC 編輯器裡選擇

- "列印" 命令現在在編輯的文件內執行文件產生器

變數字典裡的改變:

- 快速宣告:一個命令的可宣告很多變數(以數字來區別)

- 新的 Tab 控制在標題列內

- 轉算表 現在是在一個從字典 工具 選單裡的對話欄內編輯

- 容易使用的 MODBUS 位址對應給變數

模擬器裡的新特徵:

- 可將 輸入接點 狀況儲存至文件檔且重新保存

- 週期描繪器: 瞭解執行時間如何在不同程式內

- 模擬草稿可被產生和執行(強迫輸入, 追蹤變數�)

焦點(Spotlight) 除錯:

- 焦點可從3.2版和更早的版本裡讀取圖形檔和曲線

- (3.2 版圖形編輯器和曲線編輯器不再被安裝)

- 焦點 為每一 項目 管理一個 "命令" 旗標 (啟動/關閉 強迫)

- 焦點 現在支援 4 個方向的長條圖

檢視表集編輯器的改變:

- 此表集顯示每個變數的註解文字

- 有一個標題列和可調大小的欄

- 訊息直到255個字母可被顯示

- 新的 "丟棄" 流覽樣式(對於訊息很好用)  使用 "變大變小" 按鈕

新的除錯器特徵:

- ST 程式在偵錯時包含一個檢視表集

- 一個檢視表集可加入至任何ST程式裡且儲存在磁碟片

- 當從除錯器強迫改變一個常數變數, 系統建議你在其變數字典裡更新初始值

密碼系統的強化:

- 您可設定 '可讀' 和/或 '完全控制' 權 (資料閱讀權利可被密碼保護)

- 您現在可以保護 '開始', '順序' 和 '結束' 區

- 字典裡變數可一個接著一個被保護

- 在 I/O 連結系統工具裡的 I/O 接點可一個接著一個被保護

在案件管理員裡的新特徵:

- 案件群組的快速產生及選取

- 安裝程式產生兩個內定的群組 "default" 和 "samples"

- 程式庫管理員可從案件管理員的選單內呼叫

- 程式註記增加案件繼承屬性

備份工具的改變:

- 備份工具不再是一個分開的應用, 而是一個對話欄

- 它是從案件管理員和程式庫管理員內呼叫

- 備份磁片的目錄可用瀏覽方式選取

I/O連結編輯器的改變:

- 當儲存I/O連結, 一個警告訊息會產生,如果:

- 有太多I/O 變數 (根據保護鍵)

- 仍有些變數未連結

編譯器的改變:

- 在關於 I/O 連結的錯誤上以滑鼠雙擊會開啟 I/O連結編輯器

- 在關於變數宣告的錯誤上以滑鼠雙擊會開啟字典編輯器

- 在關於參數的錯誤上以滑鼠雙擊會定義相對的方盒


Detailed list of new features in release 3.30
3.30 版新特色之詳細列表

下列是 3.30 版新特色之詳細列表:

工作平台 和 編譯器 上

0034 R 4 Technical not of board: improve printing

0037 R 4 Create new prog: choice only between possible lang

0047 4 mark double lines of macro step when printed

0079 R 4 in Project manager, customized menu or buttons

0088 4 zoom as % for SFC

0106 4 direct access to SFC level 1(multi level1)

0120 4 SFC:if select outside,scroll should be done

0124 4 var with prefix, generation from 0 to 9 X0,X9

0136 4 ARCHIVER: improve interface

0159 4 SFC:an eraser should be proposed

0161 4 SFC:more than 10 columns

0162 4 SFC:cut/paste lvl 1 with insertion

0163 4 SFC:move elements with/without copy

0172 4 version management/can be interface with PCS

0215 2 Undo in SFC

0328 4 call archive manager from library manager

0345 4 archiv:directory should accept drive specification

0351 4 SFC:Scroll when selecting area to copy or cut

0253 4 init value for analog in Hexa, Binary

0352 4 Printing SFC Schemas like in document generator

0365 R 4 Tools menu in Debug window

0375 4 add long name for languages

0405 4 FBD: insert lines

0409 R 4 FBD:Adpat zoom ratio to fit selection

0421 4 SFC debug:open lvl2 wdow with right mouse btn

0442 4 PROJ. MANAGEMENT: existing groups should be listed

0443 4 Workbench: hints infos should not move with mouse

0445 4 SFC programs should be stored in lib as funct. are

0446 4 Program comments should be set during creation

0448 4 SFC editor : use keyboard to open level 2

0459 R 4 start cross-ref+export with command line

0481 R 4 Doc generator: choose SFC zoom level

0493 4 DOC + HELP: Call of FB from IL or ST langage

0520 R 4 DEBUG:possiblity to display in hexa. message var.

0530 4 see var comment in spy list and force value wdw - partially Av330

0537 4 Possibility to resize variable list columns

0542 4 Full edition in step or trans. in Find/replace wdw

0547 R 4 Insert several variables at one time in var. list

0553 4 MANUAL: include readme.wri errata on TP in manual

0572 4 Dictionary:Reduce time too save variable

0618 4 parameter the space between lines in the FBD

0637 4 User's Guide: guive new limitations for V3.23

0655 4 FBD/LD in debug : wider characters

0664 4 dictionary:  reduce time to sort variables

0684 4 FBD/LD:keep connection footprint when removing F/FB

0695 R 4 dble-click to locate run-time execution error - partially Av330

0696 4 customize menu in debugger window

0707 4 check I/O nr when saving from I/O connection edtor

0717 4 User's Guide: timer max value is 23h59m59s999ms

0721 4 Doc generator: comments in pgm hierachy

0738 4 Export program should export pgm management comment

控制器核心程式上

n0145 4 free memory of arrays

0212 4 Increase dynamic limits of SFC

0555 N 4 MODBUS standard frames should work with TCP-IP

0590 R 3 ON-LINE MODIF: possibility to save on disk new appli

0615 N 4 Enable MODBUS-like frames with Ethernet

0642 N 4 NT target:OPC.txt : make some changes

0649 4 Alignement to 4 on kernel should be possible

0722 R 4 TDK: replace pointer field by uint32 in str_def_res

0735 R 4 target: More than 255 steps per program


Corrections included in release 3.30
3.30 版修正的項目

以下是 3.30 版修正的項目列表:

工作平台上

0377 4 DOC:SIG_GEN and BLINK : diagram shift with 1period

0382 4 MANUAL: RS+ SR  FB not well documented

0400 4 Workbench install:do not work well on network

0405 4 graph symbol are overlapped (CTRLV CTRLV or mouse)

0440 4 Renumber Net address on not contiguous fields

0458 4 X-ref: progr.names should not appear as unused var

0459 4 Debug:only 70th 1st car of new mess value are sent

0460 4 DEBUG:in all windows,message display is limited

0461 4 GPF in SFC editor if too many elements to refresh

0463 4 SPOT-LIGHT: CANCEL button doesn't cancel a box

0468 4 top project is not moved by "Move down in the list

0470 4 DOC:B4.1.3 error in example title

0474 4 simulator GPF:long string entered for an ana input

0475 4 message inputs from simulator limited to 40 chars

0476 4 simulator:string input value >string max length

0500 4 ST 'replace all'=>infinit loop (10 replaced by10.0)

0508 4 FBD\LD, QuickLD:border window lines not refreshed -partially AV330

0512 4 spotligth: GPF when insert bmp and boolean or text

0518 4 in lib, system font influence logical nr visibility

0523 3 QLD:GPF when selecting FBloc with long parm.names

0528 4 QLD alias: not refreshed when dictionary change

0534 4 FBD display pb:if param is added to FB already used

0539 4 old .C /.H files not always deleted by pgm manager

0544 3 DOC Generator: GPF

0550 3 IL editor: GPF in debug if dble click on long line

0557 4 WSCM1ETH with -u=M in cmd line =>spotlight miss

0563 4 Quick_Ld data corruption

0566 4 SFC : overlap of long variables in tr with QLD  -partially AV330

0567 4 user guide:Q instead of O for project with I/O conf

0568 4 Dictionary display Pb in debug if long unit name

0570 N 3 Inport/Export text shortens comments with commas

編譯器上

0505  3 Resource compil. pb if 'simulator' option cheked

0527  4 structured C : touch required before re-compiling

0556  3 If more than one target, resource compiling not OK

0558  2 local var. in FBlocs are never initialised

0564  4 SCC : add warning when IL prgs in project

0571  2 CRC changes if many graphical pgms compiled at once

0572  2 Replacing TON with TP doesn't change the CRC

0573  3 RC compiler dosen't work with 2 compiler options

0578  2 OPTIMISER: error in Imbricated func. calls

0580  1 LINK error if local variable called t

控制器核心程式上

0145 4 'Can not overlapp output var.' should be filtered

0374 4 NT Target: new program with old symbol table=>GPF

0419 4 IONT: archive of snapo2A can not be unarchived

0442 4 source files for DOS; error in srcfiles.txt

0469 4 NT target: connection to OPC server is too long

0478 4 NT target : acknoledge instead of acknowledge

0480 4 NT target: wrong values in simulator for reals

0482 4 NT tgt:cursor visible in GUI & no entry is possible

0491 4 XVA:division by 0:error in indicated variable

0496 4 ANA on messages does not work with neg. value part.

0499 2 IBS driver for NT target don't work with C (cc68M)

0506 4 NTtarget DDE server: request pb if without advise

0513 4 NT target:DDE not always linked to symbol space

0517 3 NT target DDE returns 'g' for real variables

0529 4 NT/OPC:IXL connect function:return codes not comple

0536 4 NT Targ : FM_WRITE does not add \n after the value

0537 4 neg real divided by 0: returned value should be <0

0538 4 NT target menu entry in workb is not de-installed

0543 4 NTTarget display pb if different errors/each cycle

0547 4 MSG on minimal integer returns anything

0548 4 SFC: breakpoints don't always work

0549 4 NT tgt simul adds board at each wrong appli start

0562 4 opc srv remains connected if symbols not downloaded

0565 2 SFC : Limit of step number less than 2352


About previous releases
關於之前的版本

下列主題是自從 3.00 版起包括有關 ISaGRAF 之前版本的有用資料:

3.32 版修正的項目

3.31 版修正的項目

3.30 版相對於先前版本的特色

新特色的詳細列表

3.30 版修正的項目

3.24 版

3.23 版的特徵

3.23 版修正的項目

3.21 版修正的項目

3.21 版相容性的註記

3.20 版的特徵

3.20 版修正的項目

3.04 版的特徵

關於第 3 版


Release 3.24
3.24 版

ISaGRAF 3.24 版工作平台是以 3.23 版為基礎加入西班牙文. 控制器核心程式部分並未改變保持在 3.23 版. 下列是 3.24 版修正的錯誤:

p00486 4 NTVDM not close when ISDK-COM.dll connection fails

p00148 2 when appli.c calls a  FB,pb in real returned value

p00340 3 QUick LD on-line modification does not work

p00472 3 structured C: some } are missing in imbricated elsif

p00484 2 Optimiser:P1 in SFC: analog not set to correct value

p00502 1 "Unknown TIC code" error

p00503 2 BDD option => Incorrect evaluation

p00504 2 compiler option'optimize variable copying' not OK

p00509 2 Optimiser:logical pb if any option(except '2 passes')

p00510 3 Msgs initialised with Kanji aren't correctly compiled

p00511 2 SCC generation problem : empty parentheses

p00514 3 SCC if ( (condition1) && (condition2)  )

p00525 2 problem with on line modification

p00526 2 Structured C: missing include of user IEC FB header

p00531 2 SCC: code between if bloc and else prevents compil

p00532 4 SCC: some functions have no header in appli.c

p00533 4 SCC: implicit conversion from int to float

p00541 2 Optimizer:pb in LD if 2 1st compiler options are set

p00556 3 If more than one target, resource compiling not OK

p00434 4 Quick-LD printout: rungs are missing


New features in release 3.23
3.23 版的特徵

以下是 3.23 版的特徵:

Main features

- ISaGRAF 3.23 版現在支援上載功能. 上載是透過將應用程式壓縮至控制器核心內來進行的.

- 各種型態的變數可增加至 64,000 個.

- 新的監視功能, "焦點", 加到除錯工具內.

- ISaGRAF 編譯器現在可產生結構 "C" 原始程式, 更模組化及具可讀性.

- SFC 線上自動捲軸, 執行的步驟可隨時被看到.

- 提供偵錯 "工作空間" , 當進入除錯器或模擬器時會自動開啟文件內要求的項目. 要準備一個工作空間, 在 ISaGRAF 程式管理員內執行 "除錯 / 工作空間".

- 控制器核心管理輸出已最佳化.

- ISaGRAF OS9 控制器核心程式已完成 Semaphores 功能.

- ISaGRAF MS-DOS 控制器核心程式加入 Advantech 的 I/O 板.

- ISaGRAF NT 控制器核心程式含入一個 OPC server.

相容性

雖然 ISaGRAF 3.23 版工作平台完全與 3.20 及 3.21 版相容, 但像上載,增加的變數數量這些功能, 之前的版本並沒有. 需要更多關於上載的說明, 請參照線上說明文件內關於相容性的說明.

關於線上變更

ISaGRAF 編譯器產生 "隱藏的" 暫存變數來處理複雜表示式. 在某些情況, 表示式的改變可能會產生不同組的暫存變數, 且導致無法線上變更. 為了避免這種情況, 你可在 ISA.INI 檔案內加入下列幾行, 以限制其最小的可允許暫存變數. 以下的值是一個範例:

[DEBUG]

MNTVboo=8	; for booleans

MNTVana=4	; for integers and reals

MNTVtmr=4	; for timers

MNTVmsg=2	; for messages

當此設定被寫入 ISA.INI 檔, 編譯器在應用程式將產生數量超過的暫存變數會輸出警告訊息.

工作平台和編譯器的其它新特徵

n0032 Message in Graphics  (SpotLight)

n0033 Trace refresh: scroll the trace and not the line (SpotLight)

n0078 message when 200 elts in SFC

n0100 install target on DOS, should ask for readme visu

n0157 SFC: more than 200 elts

n0228 graphic accessible from the debugger

n0239 DAY_TIME std function should be in the simulator

n0250 Upload function

n0339 New LD: Help when putting a block

n0349 increase the number of objects allowed in one SFC

n0383 Initial value for Inputs used in simulation

n0397 Help on blocks from Quick LD

n0404 FBD:Undo when move blocks

n0429 increase max number of variables

n0437 DAY_TIME to be implemented in the simulator

n0441 PROJECT MANAGEMENT : sort by alphabetical order

n0512 other default link setup values at project creation

n0529 Cross reference:possibility to hide unused LIB elts

n0536 Possibility to delete an existing variable list

控制器核心的新特徵

n0433 WinNT: simulator panel moves each time stop/start

n0463 DDE access with NT target:TRUE/FALSE -> 1/0


Corrections included in release 3.23
3.23 版修正的項目

以下是 3.23 版修正的項目列表:

工作平台上

p0123 simulation of a C function, out ana is anything

p0129 Not enough room for IL operands

p0175 Win95: can not create project if Lib is open

p0237 appli s_retain defined size for retain are wrong

p0263 cjbi16bo descriptor, 'j' letter is missing     partly

p0266 File management fct should not work with simulator

p0292 German: Layout instead of Darstellung in Quick LD

p0295 Doc generator:Edit/insert, return key does not work

p0296 German:Doc generator:Bearbeiten/Einsetzen->Einf�gen

p0306 install dir protected,Quick LD pgm not saved

p0317 Win3.11 Help on binary operators in FBD pgm

p0325 CODE GENERATOR WINDOW:bad refresh when pgup&down

p0326 After program rename, comment is cleared.

p0329 Editor options not saved if isaexe protected.

p0333 Project document not OK for LD transitions in SFC

p0344 Print document: 1st line of I/O connection too large

p0349 QuickLD:enter var with keyboard,alias not displayed

p0354 QuickLD: Large programs(48 KB) can not be saved

p0356 Quick LD:copy after last rung impossible

p0361 Quick LD+LD/FBD:undo does not undo the last paste

p0366 Quick_LD editor: in "Jump label" dialog box tab-key

p0367 Quick LD: xF9 key don't work, shift F9 work

p0386 GPF in quickLD editor if many manipulations partially

p0391 QUICK-LD:dble-click on a wrapped block parameter

p0397 Long F,FB parameters are unreadable in simulator

p0399 colors in FBD/LD:not OK when ALT F1 is pressed

p0402 ST and IL printout: long comment lines badly printed

p0404 debug of FB or IEC F,after the end section is not OK

p0406 Quick-LD:PB if bool with parenthesis in comment

p0407 Display problem when year 2002, on win 3.11 or 95

p0408 DEBUG quickLD: del key still works !

p0412 Local dictionary can be opened twice for same pgm

p0417 quick-ld: in debug mode, show local boolean values

p0418 Quick-LD: negative value in "layout" crashes editor

p0420 variables in quick-LD without colour during debug

p0422 WKINTER: specify that TCP-IP frames must be filled

p0428 debug: Colours in LD/FBD not OK

p0434 Quick-LD printout: rungs are missing

p0437 IL IMPORT: initial values are not 0 by default

p0443 Variable appears as unused in cross-reference

p0445 spaces in dictionary =>'var non connected' error

編譯器上

p0319 Quick LD Compilation: error in translation in ST

p0322 SYMBOL TABLE: FBL output names are not unique

p0335 Divide by 0 error in each division of a CApplication

p0338 CFB calls not OK when there are too many instances

p0340 QUick LD on-line modification does not work

p0341 Variables not visibles during simulation

p0346 GPF in WSMQ1HDL.DLL on an SFC with LD trans

p0347 Compile err if long names for block output param

p0368 sub-program with parameter = a variable name =>pb

p0371 compil.never ends with BDD optimisation and boo=true

p0390 compiler optimization:evaluate const expre. not OK

p0398 C generation generates bad labels in FBD

p0430 GPF in IL import on Win3.11 if there is a %variable

p0432 Import IL program not work if there is a call to TON

p0435 IL IMPORT:some var.initializations stop IL import

控制器核心程式上

p0178 STACKINT block overflow output is not updated

p0290 real divided by 0 in v2.14 crashed the system

p0318 Incorrect OEM params while defining a NTtarget board

p0351 undef FLOAT:some calls still exists

p0378 debug: connect/disconnects if lot of data to refresh

p0379 Target: floating point error if maxi=0 on SIG_GEN

p0381 Some Locked var. are not shown in the list    (partly AVi)

p0383 I/O board error:debugguer should know 1st var name

p0393 NT TARGET: "can't lock space num" message box

p0394 SFC end actions not executed when sfc not stable  (AV214+)

p0415 Retain implementation in NT target

p0433 more than 255 board crashes the target

p0441 MODBUS function 1: on OS9, boolean qtity is limited

p0451 MSG(BOO) provides a message with 2 NULS at the end


Corrections included in release 3.21
3.21 版修正的項目

以下是 3.21 版修正的項目列表::

工作平台上

0204 C 4 Debugger:stop appli,windows not refreshed

0237 R 3 appli s_retain defined size for retain are wrong

0246 N 3 close debug before 'Cannot install...'-> gpf

0263 R 4 cjbi16bo descriptor, 'j' letter is missing     partly

0294 C 4 Lib iEC function:create 'f', open par of fbsample

0297 C 4 Password dialog boxes are in white-> should be grey

0303 R 3 move UP/DN Comp. Equip does not work

0304 R 2 SIG_GEN sine par is not correct (sinus in isa.smb)

0306 R 2 install dir protected,Quick LD pgm not saved

0309 N 2 debugger hangs when NT target closed during debug

0314 R 2 real I/O with simulator are badly converted

0318 R 2 Incorrect OEM params while defining a NTtarget board

0320 C 3 Graphic editor Icons not saved if only for false

0333 R 2 Project document not OK for LD transitions in SFC

0342 C 4 Quick LD:Replace of var by same name->infinite loop

0343 C 4 sort of Defined words not correct

0352 R 4 some var (GS...) not refreshed in list of var

0353 R 3 Quick LD comment not read if two bytes char inside

0355 R 4 SFC editor with LD trans: paste can generate GPF

0356 R 4 Quick LD:copy after last rung impossible

0362 C 3 CRC is unfluenced by librarie contents(Func,FB)

0363 C 4 LD printout: there is a kink in rung lines

0365 N 4 LD/FBD editor:"greaterOrEqual"too large in Japanese

0369 R 4 boards in complex equipement, board max nr = 255

編譯器上

0298 R 2 C code:kill SFC father does not kill its children

0305 R 2 Unused Global var are not in symbol table

0316 R 3 "undeclared identifier" FBD pgm global compilation

0319 R 2 Quick LD Compilation: error in translation in ST

0322 R 4 SYMBOL TABLE: FBL output names are not unique

0330 R 2 Positive and negative contact not OK in SFC trans.

0335 R 2 Divide by 0 error in each division of a CApplication

0338 R 2 CFB calls not OK when there are too many instances

0340 R 3 QUick LD on-line modification does not work

0341 R 2 Variables not visibles during simulation

0346 R 1 GPF in WSMQ1HDL.DLL on an SFC with LD trans

0371 N 4 compil.never ends with BDD optimisation and boo=true

控制器核心程式上

0178 C 3 STACKINT block overflow ouput is not updated?

0231 R 2 SYSTEM save/restore has some problems

0288 C 2 retain active timer does not work

0290 C 4 real divided by 0 in v2.14 crashed the system

0301 C 3 NT:boards not closed after ALT+F4 or Close

0307 C 2 NT:Timer thread priority isn't well set.

0308 C 2 NT:Target DDE server not closed correctly

0312 C 1 NT:serial com between 3.11 and WinNT3.51 disconnect

0321 C 2 NTtarget.Alignement to2generates pb in symbol table

0350 N 3 Compil:TON bad behavior with return before

0351 R 4 undef FLOAT:some calls still exists

0358 C 2 SAVE/RESTORE active timer does not work

0360 C 4 DDE with NT target: timer access does not work

0364 R 2 NT Target: DDE for messages do not work


Compatibility notes for release 3.21
3.21 版的相容性註記

以下是一些 3.21 版對於 3.20 版相容性的一些註記:

3.21 版工作平台完全與 3.20 版的工作平台與控制器核心相容. 3.20 版的工作平台與 3.0x 版的控制器核心相容除了一些錯誤修正和某些配合 IEC 1131-3 標準的項目外.

訊息的比較

它在 3.0x 版無法使用, 已在 3.20 版的控制器核心修正. 增加了新函數. 當你要產生 C 原始碼時, 與 3.04 版的 port-pack, 你將得到一個未知的函數: msg_lexcmp. 此時, 你需要更新你的控制器核心程式已修正此錯誤.

PCL-Open 組織認證的 IL 變更

3.20 版前, 不可混合布林與類比緩衝值. 而現在:

類比緩衝器的 0 表示布林的 FALSE .

類比緩衝器的 1 表示布林的 TRUE.

所以假如你使用 IL 程式, 請小心你的舊應用程式.

IEC 語言寫出來的功能方塊

假如你有 IEC 語言寫成的功能方塊, 且使用區域計時器變數, 你至少需要 3.20 版的控制器核心. 3.0x 版的控制器核心並不支援.

物件命名

請參閱使用手冊的保留關鍵字(第 B.2.3.1 節): 應用程式使用這些保留字將不會編譯成功,必須改名.

基於 PLC 認證, 變數名稱使用兩個 '_' 字元不被接受: 如 var__init 不行, var_init 可以.

LD/FBD

要執行 Quick LD 編輯器, 產生一個新的 LD 語言. 所有先前版本的 LD/FBD 程式現在都被標示為 FBD.


New features in release 3.20
3.20 版的特徵

以下是 3.20 版特徵的列表:

主要特徵

- 新的 LD 編輯器: 快速使用

- 功能方塊可被 IEC 語言使用: LD, FBD, ST or IL

- 允許多個除錯器

- 在控制器核心程式沒有 SFC 引擎時應用程式碼產生器仍可編譯各個 SFC 指令

- 可以輸入 IL 程式

- 可使用直接表示的變數

- 加入 "工具" 選單以管理程式視窗

- 新的案件群組工具, 彩色偵錯, 程式和案件的註解, 容易從編輯轉到偵錯 ...

- 支援 DDE Poke 函數可抓取除錯器的資料.

- 控制器核心支援 Windows NT, MS-DOS, VxWorks 和 OS-9 等作業系統.

工作平台上

0003 LD/FBD printing improvement

0004 Move a board in IO connection editor

0005 Access to compiling options for library functions from editor

0007 Technical note of library functions from the SFC editor -> from everywhere from Help menu

0008 When a new conversion table is created and the dictionary is open, refresh the list of available conversions in dictionary window

0009 Save position of the window to declare variable

0010 Initial value of variable in the document

0011 ARCHIVER - sub-dir access for saving on floppy

0013 Touch function in Program management menus

0019 Inserting function in the I/O connection editor

0021 PushButton functionality in the Simulator panel

0022 In Help, find a function by its name

0023 Cut and paste of initial value

0028 Start LD editor to describe SFC conditions

0030 Mark Step and Trans with compiling errors (goto step/trans)

0038 Find / Replace in TEXT editors

0040 FBD: Visu TRUE / FALSE with color during debug

0051 Reset project version number after a copy

0052 Cursor type during SFC edition

0054 LD/FBD: when selecting a variable, its comment should be displayed

0055 LD/FBD: visu / print of var comment (aliases in Quick LD editor)

0057 LD/FBD: search 'next occurrence'

0058 Shift the complete LD diagram up or down  (insert a new rung)

0060 Simulator: display board names

0064 Improve multi-connection on the right in FBD

0070 Debugger variable list: change value with keyboard  (Enter)

0074 Should be 'integer' instead of 'analog'

0082 GS.X sent to a variable list from SFC Editor: a variable list is created for each SFC program

0089 If no program, it should not be possible to create local variable

0096 Fbl written in FBD (language IEC)

0098 LD: possibility to copy links

0112 Undo in LD/FBD

0117 Trace diagram to explain tstart/tstop  (documentation)

0121 FBD: connection with scroll

0122 FBD: selection with scroll

0123 FBD: moving elements with scroll

0125 LD cut=rm free lines,copy=insert lines

0126 Debug:cyclic refresh duration < 100ms

0127 Improve LD editing (Quick LD editor)

0128 LD/FBD: display symbol state during debug

0129 Ease on-line modification (debug/edit): If a program is open in edition mode, if debugger or simulator is started, the program is re-open in debug mode. When closing the debugger is closed, the program is re-open in edition mode, ready to be modified.

0138 Choice of directory for projects: notion of Project groups

0166 It should be not possible to close Program window during debug

0211 when selecting a variable, select default variable

0213 Find / replace in FBD/LD

0214 Find/replace in SFC editor

0229 Direct help on buttons (without any mouse action)

0236 No default powerrails in new FBD/LD program

0237 FBlock in/out names in FBD editor & during debug

0238 LD: possibility to insert a line: insert new rung

0241 Improve actions on FBD comments (resize, move)

0243 Menus re-arranged like in other windows appli

0247 Option to exit an incorrect SFC

0248 Del key to delete element in LD/FBD

0249 Del key to delete element in SFC

0252 Extend capacity of defined words to 255 characters

0259 FBD: improve line drawing: possibility to insert corners

0260 Distinguish LD symbol state and variable state (debug)

0261 Support N and P coils   (Quick LD editor)

0262 FBD: execution order for FBlocks and outputs

0264 Simulator:increase/decrease buttons for integers

0265 Variable selection in a separate DLL

0268 Possibility to define size of each fields in dictionary

0273 Remove "Medium" code generator code description

0274 OEM parameter visible by user but "read only"

0275 Add a "Tools" menu in Program manager

0276 Read only internal variable with initial value (Constants)

0277 Make appli if code generator open should start make

0279 Increase limit 200x500 of LD editor  (Quick LD editor)

0281 Search function in SFC editor+Go to step/trans

0282 Search functionality in LD/FBD

0283 From cross-ref,when open program, locate corresponding variable

0285 Force a variable only when mouse is depressed

0288 Attribute/comment of variable to be displayed during debug in the dictionary

0289 Increase size of 'string' in dictionary search window

0291 If only 1 program, verify should make the application code

0292 Rfrotate should have No parity (PC-PLC link)

0293 Implement POKE DDE

0294 Start debug/simulate from editors

0297 Color for booleans during debug in dictionary/lists/trace

0298 Add Direct represented variable in variable selection box

0299 Connection editor, display variable and D.R.V comment

0300 16 char(or upto :)comment taken as alias in Quick LD editor

0301 Call archive manager from project manager

0302 SFC: edit 2 level 2 at the same time

0303 SFC action on deactivation of step (P0/P1)

0304 Document: in hierarchy, indicate language of programs

0306 Document: cross references with alphabetic order

0309 Debugger: suppress parameter "session time-out"

0310 Add binary checksum at the end of TIC code

0311 Option to start compiler in background  from a command line

0312 IO variable in read only in the dictionary

0314 FBD: option not to enter variable name when placing elements

0315 FBD: new command: transform link <-> negated link

0316 FBD: change number of inputs of a block->keep existing links

0317 IL editor: each basic instructions in a toolbar

0318 SFC: when SFC chart is wrong, improve error text

0320 Remove 'compact' from project manager

0321 Add Print/history/descriptor in Program management

0323 Editors: comment of selected variable in the status bar

0325 Direct help on blocks after double click in FBD

0327 Archiver: Change Cancel to Done

0329 WB should ask target to know its type:Intel/Motor

0333 "Kernel simulator" to be changed (no more name for this window)

0340 From help of specific block, acces to the list of blocks (Contents)

0346 User guide: note of TMR: be care input is positive

0347 Add comment next to each program

0356 Copy a connected board to another place(see new dev number 0004)

0367 In WDK for communication, 2 functions before and after download

0373 Change "PLC" to "target"(PLC link-> link setup)

0374 Add date on error message displayed in debug window

0376 Change 'Any' in 'All' after compact (touch)

0378 Buttons for variable types in selection box

0385 Possibility to open more than 1 debugger/simulator

0386 SFC editor: action P/N/IL should not modify clipboard

0387 FBD/LD: Change drawing multi-connection on the left

0388 FBD: put automatic corner if connect to nothing

0407 FBD: button to move connections, with connection buttons

0413 +C instead of +X for constant variable in appli.tst

0420 Parameterize \LIB directory in ISA.INI  (IsaLib)

控制器核心程式上

0076 Detailed description of all target errors

0091 Add new I/O brds not linked to kernel: separate DLL for Windows NT target

0296 Semaphores between kernel and other client task can be implemented with VxWorks target

0307 NT target: save settings of GUI used

0308 NT target: display error description

0313 Dba_init to be called after network address are OK

0377 PID_AL to be given as SAMPLES ( DOS and OS-9 targets)

0392 Create more hooks in function ios_input (as dba_begin)

0422 hooks before and after cyclic program execution


Corrections included in release 3.20
3.20 版修正的項目

以下是 3.20 版修正的項目的列表:

工作平台上

0185 if .DLO has blank lines, rest of file is not read

0192 Conversion table: after modifications, sometimes points shown are not sorted

0195 message with '=' in list of variables, rest is truncated

0197 same name for two parameters of a function block accepted: now there is a control

0198 Archiver: restore "C" function and library open, new function not displayed

0206 German version: not enough space for attribute of variable: now you can define yourself the space for each attribute of variables in the dictionary

0209 Win3.11: after download, debug program window not displayed

0210 on Win NT, Ethernet communication crashes : see notes about Windows NT

0214 numbers given in the IO editor not in the document

0215 defined word for booleans are not used in trace-list

0221 dictionary from descriptor, define local variable !!! : now you can not access the dictionary from the project descriptor editor

0222 print or metafile SFC, reset color display

0226 metafile copy does not copy FBD comment

0228 FBD: put block, change it, number of output paramaters is not refreshed

0230 compile option code C 'for intel' to be suppressed

0248 variable with 16 char overpass on value in dictionary during debug : now you can define yourself the space for each attribute of variables in the dictionary

0257 browse in graphics, no scroll !

0258 create local variable when application has no program !! : now, dictionary always open on global, and impossible to change to local if there is no program

0264 FBD/LD: name of variable was not refreshed in certain case

0265 FBD/LD printing, name of variable not printed on new page

0266 File management functions should not work with simulator : they are no more integrated to the simulator

0273 big FBD program, zoom to 15% crashes the editor

0276 if tech notes are too big, they are not displayed

0280 SFC level2: empty lines are removed

0281 BOO conversion on 0/1 is not applied before JMPC : now an error is generated during compiling

編譯器上

0203 if number of resources > 2, offset is wrong

0205 Compiler hangs up if no ';' after end_action(SFC)

0207 Optimizer not OK for expression using function calls

0208 Optimization of FBlock calls is slower than when there is no optimization

0212 Optimizer (not(a)&not(boo(b))&(not(c)&not(boo(d)))

0213 $n in lower case is not accepted by the compiler

0227 Optimized code is wrong on IF with tests on timer

0229 graphic pre-processor wrong on FBL outputs using block with 8 inputs 7 outputs, the 2nd, 3, 4 outputs are a, b, c, and are connected to the inputs of a function, what arrived to the function is a, a, a

0240 optimizer, 2 calls of same function, returns are mixed

0242 in IL, ANA boo_var produce a GPF of WSMK1EDT.EXE

0250 when $' is in a msg, rest of msg is put in uppercase

0251 when $' in a message, next message is unknown

0252 (+a=0);(toto:=+1);OK for compiler, but fatal error

0253 Optimize OR_MASK does not work

0255 2 variables with same network address not detected

0271 GPF of compiler with day_time function

0283 grxx0lib.c generated with grsy0def->tasy0def

0286 optimizer: fedge on boo expression (or) does not work

0287 optimizer: wrong result on a boo expression

控制器核心程式上

0007 Multi-application can not be used on VxWorks

0014 Stop/Activate does not work when ISA11 is PROMed

0070 Bustrap using SSM/MMU access to srv_dsp

0079 isaker consumes CPUtime even if no appli

0124 Input with a conversion on a virtual board, the conversion is applied

0153 if a Conversion Function is unknown on the target, the variables with the conversion are modified anyway

0173 cannot open brd cjvo8a32,cjvi8a32,cjbo8a32,cjbi8a32

0182 Mailbox User Function (MB_...) do not wait time-out

0183 Mailbox User Function MB_RANA cannot read 3 last integers

0184 Update application if a conversion table has changed does not work

0201 ANA(    192) is not equal to 192, but 0

0202 Communication problem when debugger repeats a question

0219 MODBUS 16 function does not work for isatst (OS-9)

0220 MODBUS function 5: not correct answer

0223 Conversion tables do not work with C option

0224 init of output variables not done when start application, if output boards are before input boards

0225 MSG conversion for timer crashes the system

0236 usr_getva attributes wrong in documentation, and do not work if IO mixed correct attributes are : intern 0, input 3, output 1

0245 EXPT function exponent has to be integer

0249 Ethernet 256th connection is the last successful

0254 slave number 13 cannot be used (return for OS9 shell): it is still the case, it is signaled in the documentation

0260 SERVER rename sym_user_address in sym_parent_address

0261 SERVER: create an include with SRV function prototypes: TAUS0SYM.H for server access on symbols ; TAKE0PRO.H for server synchronous services

0267 #ifdef DEF_KBB to be added in OEM

0268 VxWorks target: wrong cycle time sometimes

0275 2 isatst may have wrong answers

0277 TIC code EQ message on SFC trans badly evaluated

0278 TIC code EQ booleans on SFC trans badly evaluated

0279 Some pb may occur if rea1 < rea2 on an SFC trans

0282 server or modbus access on last IO does not work

0285 2 communication tasks + 2 debuggers: stop on 1 debugger, still run on the other

0289 OEM:TAIO0oem.c iovar++ should be done outside lock


New features in release 3.04
3.04 版的特徵

以下是 3.04 版特徵的列表:

C 選項

C 選項在新的 V3.04 版保護 Key 上可被取得, 它被包含在不限點 3.20 版內.

產生 "C" 原始碼的步驟

   a/ 工作平台上

      - 寫一個應用程式

      - 在 "編譯選項" 內選取控制器核心 "CC86M"

      - 編譯應用程式

      在應用程式目錄內會產生兩個檔案 "appli.c" 和 "appli.h"

      這就是應用程式的 C 原始碼

   b/ 控制器核心程式上

      - 複製檔案 "appli.c" 到 .\SRC 之內

      - 複製檔案 "appli.h" 到 .\DEFS 之內

      - 產生核心執行程式 (工具程式 makisac, 請參閱 I/O 發展工具 3.20 版的 readme檔案, 3.04 版的 port-pack 磁片)

關於 "C" 應用程式的訊息

   下列功能將無法在工作平台內使用

   - 下載

   - SFC 中斷點

   - 資源

注意

   在某些較大的應用程式, 編譯 applic.c 可能不會成功(程式區段太大).

   此時可以嘗試

   - Visual C++ 編譯器, 在 isacc.bat 檔內加入: /Gs /G3 /Gy /Gt   (/G3 只給 386)

保護 Key

兩種保護 Key 被支援: Rainbow and Electryon

Windows NT

使用 Windows NT 安裝工作平台時, 必須

- 安裝 Rainbow 保護 key. 你需要安裝一個專屬的驅動程式 (額外以磁片提供)

- 為了能與控制器通訊, 須在 ISA.INI 檔內的 [WS001] 段落加入一行:  NT=1


About version 3
關於第 3 版

以下是第 3 版對照舊版本的一般資訊:

ISaGRAF 1.5 版的 LD/FBD 程式:

1.5 版的圖形 LD 和 FBD 程式無法在 3.00 版內編譯. 為了轉換到新的格式, 在 2.1 版內必須如下操作:

- 編輯 LD 或 FBD 程式

- 執行 'Files' 主選單下的 'Save' 命令

此儲存的 LD/FBD 程式可被 ISaGRAF V3.00 版編譯.

計時器精確度:

目前計時器的單位是 ms. 注意 2.1 版應用程式內的單位是不相同的:

ana (t#1s) = 1000	(* 3.00 版*)	(* = 100 在 2.1 版內*)

類比位元對位元遮罩:

關鍵字 "AND", "OR" 和 "XOR" 應用在位元遮罩和 IEC 1131-3 標準是不相容的. 在 3.00 版內, 他們現在被下列關鍵字取代:

AND_MASK, OR_MASK, XOR_MASK.

關鍵字 "AND", "OR" 和 "XOR" 現在是單純的布林狀態運算. 以 2.1 版設計程式, 必須以手動方式更改 ST 程式內的相關關鍵字. FBD 程式則會自動被更新.

標準的 "C" 函數和功能方塊:

標準的函數和功能方塊不像 2.x 版被放置在 "C" 程式庫內, 現在已完全整合至 控制器核心程式內, 所以再也不會在程式庫內看到他們.

編譯的錯誤訊息:

每次編譯後, 編譯訊息的列表會被存在程式的日記檔內, 如此可讓設計者隨時追蹤而不用重新啟動編譯器.


About Flow Chart
關於流程圖(Flow Chart) 語言

流程圖(Flow Chart) 現在新加入成為 ISaGRAF 的第六種語言. 它完全整合在 ISaGRAF 的設計環境內, 是一個新的程式設計選擇.

流程圖不是 IEC 定義的標準語法, 它的目的也不是用來取代其它的圖形式語言. 它提供一種新的設計樣式, 可在某些控制邏輯上有較好的表現. 它和 SFC 是不同的, 不能把它視為 SFC 的一部份.

SFC 語言是一種狀態式語法. 適用於程序式的控制. 使用 SFC 設計時, 你所專注的是步驟及目前的穩定狀態. 在穩定狀態下你會要求做某些事, 直到狀態轉變. SFC 並非是一種 IF/THEN/ELSE 的程式邏輯, 然而使用轉移條件可以用來選擇不同的執行路徑. SFC 的運作邏輯是依照步驟的穩定狀態來進行驅動的, 布驟的轉移是以目前的狀態旗標從此週期到下一週期進行轉變. 這意味如果你有10個平行的程序, 若其條件都一樣, 則將會在之後的某個週期皆同時抵達最後的一個步驟.

流程圖語言是一種選擇性的邏輯. 這意味你會專注在選擇上, 在什麼狀態下做什麼事. 並可進行複雜的判斷邏輯. 然而它並未顯示出穩定的狀態. 流程圖語言的主要好處是允許你進行迴路判斷, 你亦可以將程式的執行往前跳, 這方面它比 FBD, LD, ST 或 IL 有彈性的多. 你可以在某些程序式的控制上充分利用它, 然而你無法選擇何處流程會中斷, ISaGRAF 系統會自行處理. 當流程很複雜的時候它可能會無法直覺的被了解.

我們決定將 SFC 和 Flow Chart 設計成不同的原理, 如此你可從不同的語言中取得你要的好處. 以此思路, 一些順序式的操作, 如平行分支只在 SFC 內提供. 你可參考看看 Flow Chart 語言. 或許它可啟發一些新的想法. 另外也不要放掉其它語言所帶給你的好處. 我們相信在 ISaGRAF 內一起提供 Flow Chart 及 5 種 IEC 語言可幫助你更容易且功能強大的管理你的應用.


Notes for Windows NT users
給 Windows NT 使用者的重要註記

RS 通訊:

當工作平台是使用 Windows NT 3.51 或 4.00, 必須在 ISA.ini 檔案(在 \ISAWIN\EXE 目錄內)中的 [WS001] 段落加入一行:

[WS001]

NT=1

Isa=C:\ISAWIN

IsaExe=C:\ISAWIN\EXE

IsaApl=C:\ISAWIN\APL1

IsaTmp=C:\ISAWIN\TMP

此點是使用 RS 通訊時特別需要的.

保護 key:

在 Windows NT 系統, 為了讓保護 Key 能被偵測到, 必須安裝 Sentinel/Rainbow 驅動程式. Sentinel Rainbow 驅動程式放在 ISaGRAF 安裝光碟的 "\sentinel" 目錄內.

此硬體保護 Key 防止非法拷貝 ISaGRAF 軟體. 保護 Key 也定義了 ISaGRAF 工作平台的對大可使用 I/O 點數. 當此保護 Key 未被正確的插好時, 有些功能將無法使用. 在 ISaGRAF  "說明" 主選單下的 "關於ISaGRAF" 可查看工作平台的版本及可使用的 I/O 點數. 未插入保護 Key 會顯示 "WD2" 及 "32" 個I/O點.