Using the text editor
 텍스트 편집기 사용법

이 장에서는 ISaGRAF의 ST 와IL 언어의 소스코드에서 사용될  텍스트 편집기의 명령어를 설명 합니다

편집 명령어

옵션

도구 메뉴 명령어

기타 ISaGRAF 명령어 호출

프로그램의 파라미터

기타 파일 메뉴 명령어

일기장 갱신

변수목록에서 변수 선택

ST / IL 디버깅

또한 텍스트 편집기는 프로젝트 스크립터,일기장 파일,메모장(온라인)으로 언제든지 사용자의 편의에 맞게 사용 가능 합니다

리소스 정의


Editing commands
편집 명령어

"편집" 은 텍스트 편집기에서 자주 사용되는 명령어 입니다. 현재 커서위치에 대한 액션을 지정하는 명령어가 포함되어 있습니다.

 	자르기/ 붙여넣기

찾기/치환

Go to line

변수목록에서 심벌 삽입

파일 삽입


Cut and paste
 	자르기/붙여넣기

DEL키로 삭제된 텍스트는「편집」－「되돌리기」명령어로 복원됩니다.「편집」－「잘라내기」,「복사」,「붙이기」 명령어는 프로그램중의 텍스트를 이동시키기도 하고, 복사, 삽입하기도 합니다. 또한 다른 어플리케이션 사이에서도 클립보드를 통해서 텍스트 복사 등이 가능합니다.


Find and replace
찾기/치환

「편집」－「검색」,「치환」 명령어에 따라 편집중의 텍스트윈도우에서 지정텍스트를 검색 치환할 수 있습니다. 검색방향은↑방향과 ↓방향이 있습니다. 에러 발생시 등에 대상 변수명 등이 검색에 유효합니다.


Go to line

「편집」－「점프」 명령어에 따라  편집중 텍스트에 지정된 행수로 점프합니다. 이 기능을 사용하는 것으로, ISaGRAF 코드 생성중 발생한 에러표시가 ＳＴ,ＩＬ프로그램 텍스트 행수를 포함하고 있기 때문에 에러장소 검출에 유효하게 됩니다.


Insert symbol from dictionary
변수목록에서 심벌 삽입

「편집」－「변수삽입」 명령어에 따라 현커서 장소에 프로젝트로 선언되어 있는 변수모음에서 변수（심벌）를 선택해서 삽입 가능합니다. 이 변수 선택에는 전용 다이아로그박스가 표시됩니다. 상세한 것은「프로그램 에디터 공통항목」을 참조 바랍니다.


Insert file
파일 삽입

「편집」－「파일 삽입」 명령어에 따라 현커서 장소에 텍스트 파일의 삽입이 가능합니다. 단, 이 명령어에서는 텍스트 파일 이외의 파일은 다룰 수 없습니다.


Options
옵션

옵션 메뉴명령어에는 도구바의 표시/비표시선택, 키워드의 표시/비표시, 폰트의 지정이 포함되어 있습니다. 각각으로 선택된 폰트는 work bench상의 텍스트 에디터로 유효합니다.

ＳＴ／ＩＬ프로그램 소스 코드 입력 때「 옵션 」－「키워드 표시」 명령어에 따라 ＳＴ,ＩＬ프로그램은 각각 공통의 키워드 도구 바 표시를 사용할 수 있습니다. 도구 바 상의 버턴을 클릭하면 현커서 위치에 키워드 삽입이 가능합니다.


Calling other ISaGRAF tools
기타 ISaGRAF 도구 호출

검증

 	시뮬레이션 & 디버깅

변수목록 편집


Verify (compile) the program
검증

파일 - 검증 명령어에 따라 ISaGRAF코드 생성이 실행되고, 편집중의 프로그램문법을 체크합니다.  SFC프로그램 에서는 레벨1, 2 양쪽이 체크됩니다. 문법 체크가 완료되면 코드생성 윈도우가 종료되고, 다음 조작으로 이동합니다. 만약, 프로젝트가 현재 편집중인 하나의 프로그램만에서 구성되어 있을 경우는 에러가 없으면 어플리케이션 코드도 생성됩니다.

「옵션」－「컴파일러옵션」 명령어에 따라 컴파일러와 최적화  옵션을 설정하기 위해 사용됩니다. 또한, 이들에 관한 상세한 설명은「코드생성의 사용법」을 참조 바랍니다


Simulate or debug the application
 	시뮬레이션 & 디버깅

「파일」－「시뮬레이션」,「디버그」명령어에 따라 ISaGRAF그래픽 디버그가 시뮬레이션 모드 또는 온라인 모드로 작동합니다. 이때, 각 프로그램 에디터는 모두 디버그모드로 다시 오픈 됩니다. 이 디버그모드에서는 프로그램의 직접 변경은 할 수 없습니다.（한번 디버그모드에서 빠져 나와 프로그램 에디터를 통상 모드로 열 필요가 있습니다.）상세한 것은「그래픽디버그의 사용법」을 참조 바랍니다.


Editing the dictionary of variables
변수목록 편집

「파일」-「변수목록」 명령어에 따라 현재 편집 프로젝트 변수모음 에디터를 작동합니다. 또한 이 모음 에디터에서 user정의 워드편집도 가능합니다. 상세한 것은「변수목록 편집기 사용법」 을 참조 바랍니다


Parameters of the program
파라미터

편집중 프로그램이 펑션, 펑션블록, 서브프로그램일때 파일 - 파라미터 명령어에 따라 프로그램 입출력 파라미터를 정의할 수 있습니다. 만약, 편집중의 프로그램이  SFC프로그램과 Begin, End섹션의 top레벨 프로그램일때 이 명령어는 무효가 됩니다.

펑션, 펑션블록, 서브프로그램은 최대３２개의 입출력 파라미터（합계）를 가질 수 있습니다. 펑션과 서브프로그램은 항상 한 개의 출력파라미터밖에 가질 수 없습니다. 이 출력파라미터명은 반드시 그 프로그램명과 일치해야 할 필요가 있습니다. 파라미터정의를 위해 이하의 다이아로그박스가 사용됩니다.

파라미터윈도우 상부에는 서브프로그램 파라미터가 위에서부터 입력파라미터, 마지막에 출력파라미터순으로 나타냅니다. 하부에는 선택되어 있는 파라미터가 해설됩니다. 파라미터명을 붙이는 방법에는 아래의 룰이 있습니다.

·	파라미터명은16반각문자 이내일것.

·	최초문자는 영문자（ａ－ｚ）일것.

·	이후의 문자는 영문자, 숫자일것.

·	파라미터명는 대·소문자 구별은 없음.

「삽입」버턴에 따라 선택되어 있는 파라미터앞에 새로운 파라미터를 삽입합니다.「삽입」 버턴에 따라 선택되어 있는 파라미터를 삭제합니다.「정렬」버턴에 따라 파라미터를 자동적으로 분류 해서 리턴파라미터가 마지막에 오도록 바꿔서 나열할 수 있습니다.　「확인」버턴에 따라 서브프로그램 인터페이스 정의（즉, 파라미터구성）를 보관해서 윈도우를 닫습니다.「취소」버턴에 따라 수정내용은 보관 되지 않고 윈도우는 닫힙니다.


Other commands of the "File" menu
기타 공통적인「파일」메뉴

이하에 프로그램 에디터「파일」메뉴명령어로 기타 공통적인 항목들 입니다

다른 프로그램 열기

인쇄


Open another program
다른 프로그램 열기

「파일」－「열기」명령어에 따라 현재 편집중인 프로그램을 닫고, 새로운 같은 언어의 다른 프로그램을 열수 있습니다. 다른 언어로 기술된 프로그램은 열수 없습니다.


Printing the program
인쇄

파일 - 인쇄 명령어에 따라 편집중인 프로그램은 인쇄가  불가능합니다. 단, 이 인쇄 명령어에서는 프로그램 리스트와 내부변수가 인쇄됩니다.

ＳＦＣ、ＦＢＤ、Ｑｕｉｃｋ　ＬＤ에디터에서는「편집」－「메타파일로 복사」 명령어에 따라 편집중인 다이아그램을 Ｗｉｎｄｏｗｓ 메타파일로서 클립보드에 복사할 수 있습니다. 이 내용은 다른 어플리케이션에 첨부할 수 있습니다. ＳＦＣ프로그램에 있어서는 레벨１（차트, 레퍼런스번호, 명령어）이 그 대상이 됩니다.


Updating the program diary
프로그램 일기장 갱신

파일 - 일기장  명령어에 따라 수정이력 파일의 편집이 가능합니다. 대개 이 파일에는 코드생성 등이 될 때, 문법체크 내용과 코드 생성된 일시 등이 자동적으로 추가되도록 되어 있습니다.

만약,「옵션」－「일기장 갱신」옵션이 set되어 있으면, 변경내용을 디스크에 보관하기 위해, 이하의 다이아로그박스가 열립니다.

「ＯＫ」버턴을 선택하면 입력된 텍스트는 수정이력 파일에 날짜/시간 stemp붙임이 추가되어 보존됩니다. 이 기능은 프로그램의 유지상 유효하게 활용 가능 합니다.


Selecting a variable from dictionary
변수목록에서 변수선택

ＳＴ、ＩＬ프로그램 편집 중에는「편집」－「변수 삽입」명령어에 따라 편집중인 프로그램으로 현재 커서에 모음으로 등록되어 있는 변수명은 삽입이 가능합니다. 또한, QuickLD에서는「편집」－「텍스트／심벌set」명령어（혹은 심벌과 지정된 영력을 더블클릭）에 따라 다이아그램중의 접점, 코일, 블록 입출력 파라미터등에 변수명의 할당이 가능합니다. 또한, ＦＢＤ에디터에서는 심벌을 더블클릭함으로서 다이아그램중의 접점, 코일, 블록 입출력 파라미터등에 변수명의 할당이 가능합니다.

스코프용의 선택 변수의 범위를 글로벌, local에서 선택 가능합니다. 오른쪽 위의 변수형 선택이 가능합니다. 옆의 4개의 아이콘은 이 변수형을 선택하기 위해 shortcut해서 사용할 수 있습니다.

ture형

정/실수형

시변형

가변 장문자열형

변수선택을 하기 위해, 리스트 가운데서 변수명을  선택해서（클릭） 선택된 변수명과 그 명령이 선택books（리스트의 상부）에 표시된 것을 확인합니다. 다음에“ＯＫ”버턴을 선택하면, 선택된 변수명을 뽑을 수 있습니다. 또한, 변수명 더블클릭하든지, 선택버턴에 직접 변수명을 입력하면 같은 조작을 할 수 있습니다.


Defining resources
리소스 정의

「옵션」－「리소스」 명령어로 리소스를 정의할 수 있습니다. 여기서 말하는 리소스라는 것은 파일과 리스트 등의 형식의 USER정의 데이터（네트워크 구성, 하드웨어 설정등）로 Target코드와merge해서 다운로드 됩니다. 이 데이터는 ISaGRAF 커서를 직접조작 하지 않고, Target측에 인스톨 된 다른 프로그램을 참조하기 위한 것입니다.

리소스 정의 파일

언어 참조

예제

리소스 컴파일

수행


The resource definition file
리소스 파일 정의

리소스 정의는 ISaGRAF프로젝트 파일과 함께“리소스 정의 파일”로서 정의됩니다. 이 파일은 ASCI 텍스트 파일로 ISaGRAF 리소스 컴파일러로 처리됩니다. 리소스 컴파일러는 어플리케이션 코드 생성시에 자동적으로 작동합니다. 파일 내의 기술은 ＳＴ언어 문법에 따라 적힙니다. 예를 들면 명령어는(*    *)로, 문자열은 '　' 로 둘러싸입니다. 상세한 문법은 해당사항을 참조 바랍니다.


Language reference
언어

이하에서는 리소스 파일 중에 사용되는 키워드와 그 기술방법을 나타냅니다.

ULONGDATA

VARLIST

BINARYFILE

TEXTFILE

TARGET

ANYTARGET

FROM

TO


ULONGDATA

의미:	정수치 리스트. Target코드에unsigned 32 bit integers 로 추가 됩니다. 정수는 리소스 정의 파일로 정의된 순번으로 나열됩니다. 정수는 ( , )로 구분됩니다. 리소스명은 최대１５문자입니다.

문법:	ULONGDATA '<resource_name>'

BEGIN

...target_selection...

...list of values...

END

예:	ULongData 'MYDATA'

Begin

...

0, -1, 100_000,	(* decimal *)

16#A0B1, 2#1011_0101	(* hexadecimal, binary *)

End


VARLIST

의미:	변수 어드레스를 나타내는 리스트 입니다. 변수는 리소스 정의 파일 내의 변수명으로 식별됩니다. 변수 어드레스는 target코드에서는 unsigned 16 bit integers로 표현됩니다. 어드레스는 리소스 정의 파일 내에서 지정된 정의순이 됩니다. 변수는 comma로 구분되고, 리소스 명칭은 최대15문자입니다.

문법:	VARLIST '<resource_name>'

BEGIN

...target_selection...

...list of variable names...

END

예:	VarList 'LIST'

Begin

...

Var100, MyParameterr, Command, Alarm

End


BINARYFILE

의미:	binary파일 리소스 ＭＳ－ＤＯＳ파일형식으로 보관됩니다. 패스명으로 성립되어 있습니다. End of line 캐릭터는 리소스 컴파일러로 변환되지 않습니다. 리소스명은 최대１５문자입니다.

문법:	BINARYFILE '<resource_name>'

BEGIN

...target selection...

FROM '<source_pathname>'

TO '<destination_pathname>'

END

예:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TEXTFILE

의미:	텍스트 파일 리소스. 어스키파일로서 보관됩니다. 패스명으로 성립되어 있습니다. End of line 캐릭터는 target 시스템 맞춘 방법으로 리소스컴파일러로 변환됩니다. 리소스 명칭은 최대15문자입니다.

문법:	TEXTFILE '<resource_name>'

BEGIN

...target selection...

FROM '<source_pathname>'

TO '<destination_pathname>'

END

예:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.bin'

To '/dd/user/appl/config.dat'

End


TARGET

의미:	지정할 리소스를 포함한 Target코드의 명칭. "Target"스테이트먼트는 복수Target을 선택가능 하게 할 동일 리소스블록 내에 몇회라도 사용됩니다. "AnyTarget" 스테이트먼트가 사용되고 있는 곳에서는 다루지 않습니다.

문법:	TARGET '<target_name>'

예:	BinaryFile 'MYFILE'

Begin

Target 'ISA86M'

Target 'ISA68M'

...

End


ANYTARGET

의미:	지정 리소스 코드생성시에 모든 Target 코드에 머지 되는 것을 의미합니다.「어플리케이션 코드생성」명령어로 복수Target을 생성할 수 있습니다. 모든Target코드가 대상이 됩니다. "Target" 스테이트먼트가 지정되어 있는 경우는 다루지 않습니다.

Syntax:	ANYTARGET

Example:	ULongData 'MYDATA'

Begin

AnyTarget

...

End


FROM

의미:	소스 파일명을 패스명의 부쳐서 지정합니다. ISaGRAFworkbench가 인스톨 되어 있는 PC내부의 binary파일 또는 텍스트 파일의 파일명을 가리킵니다. 패스명의 기술시에는 MS-DOS시스템 지정에 따를 필요가 있습니다.

문법:	FROM '<target pathname>'

Example:	BinaryFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


TO

의미:	distination(Target시스템)에 있어 binary파일 또는 텍스트  파일명을 가리킵니다. 파일명의 기술은 Target시스템 지정에 따를 필요가 있습니다.

문법:	TO '<target pathname>'

Example:	TextFile 'MYFILE'

Begin

...

From 'c:\user\config.dat'

To '/dd/user/appl/config.dat'

End


Example
예제

이하에서는 하나의 리소스 정의 파일의 예를 나타냅니다.

(*리소스 정의 파일  *)

ULongData 'DATA1'	(* 데이터 리스트 *)

Begin

   Target 'ISA86M'	(* 지정된Target코드에 한정 *)

   1, 0, 16#1A2B3C4D, +1, -1	(* 수치 *)

End

VarList 'VLIST1'	(* 변수 리스트  *)

Begin

   Target 'ISA86M'	(* 이 Target코드에 한정  *)

   Valve1, StateX, Command, Alrm1	(*변수명 *)

End

BinaryFile 'FILE1'	(*binary파일  리소스 *)

Begin

   AnyTarget	(* 모든 Target코드를 대상 *)

   From 'c:\user\updatef.bin'	(* 소스 파일명 *)

   To 'updatef.cfg'	(*Target에서의 파일명  *)

End

TextFile 'FILE2'	(*텍스트 파일 리소스*)

Begin

   Target 'ISA68M'

   From 'c:\nw\nwbd.txt'	(*소스 파일명 *)

   To '/nw/dat/nwbd'	(*Target에서의 파일명*)

End


Resource compiling
리소스compiling

"Start compile" 버튼을 선택하면 리소스 컴파일이 개시됩니다. 출력 메시지와 에러 메시지는 이 윈도우에 표시됩니다. "나가기" 버튼을 선택하면 리소스 컴파일러가 빠집니다. 이 경우는 리소스는 Target코드에 첨가되지 않습니다.


Implementation
실행

리소스 수, 행수, 파일수는 ISaGRAF에서 제한은 없습니다. 리소스는 Target코드의 마지막에 리소스 디렉토리 부치기가 첨가됩니다. 아래에서는 리소스 디렉토리 포맷을 C언어 문법으로 나타냅니다.

__RESOURCE:

{

  long nbres;	/* 정의되어 있는 리소스의 수 */

  {

    char name[16];	/* 리소스명 */

    long type;	/* 리소스 데이터 타입 */

    long size;	/* 데이터 블록장 */

    void *data;

    char *path_offset;	/* 문자열로의 포인트 */

  } /*nb of records */

}

상기 "type" 파일에는 아래 가운데서 지정됩니다.

•	1 = binary파일

•	2 = 텍스트 파일

•	3 = 데이터 리스트:ulong data (이 경우path_offset필드는 사용되지 않습니다.)

•	4 = 변수 리스트:varlist  (이 경우path_offset 필드는 사용되지 않습니다.)

텍스트 파일에 관해서 end of line 캐릭터는 Target시스템을 합쳐서 리소스 컴파일러가 번역합니다. 모든 포인트는 32비트offset됩니다. 리소스명과 패스명은 NULL로 종료합니다. 패스명과 data는 상기의 리소스 디렉토리 이후에 계속됩니다.


Commands of the "Tools" menu
 도구 메뉴 명령어

다음은 도구 메뉴에 있는 명령어 이다.작은 텍스트 리스트로 창의 바닥에 정보를 나타낸다.:

컴파일러 결과 보기	이전에 컴파일된 출력 에러 메세지를 보인다 (단, ST / IL)

텍스트에서 찾기	모든 텍스트 중에서 찾아 내기를 해서 리스트창에 보여준다.

출력창 숨기기	결과 창을 닫는다.

결과가 창에 출력 될 때 해당 라인을 더블 클릭 하면 관련된 위치의 설정으로 바로 이동 된다.


Debugging ST and IL programs
ST / IL 프로그램 디버깅

 ST/IL 프로그램 시뮬레이션, 디버그 중에 직접 프로그램 변경을 첨가 할 수 없습니다.

IL	IL 프로그램에서는 instraction 리스트 형식이 되고, 변수의 현재치가 같은 행에 표시됩니다. instraction를 더블클릭하면 대응하는 변수치를 변경할 수 있습니다.

ST	ST 프로그램에서는 에디터 윈도우에 스파이 리스트 윈도우가 짜여집니다. 두개의 윈도우 사이의 세퍼레이션을 마우스로 드래그하면, 표시 사이즈 변경이 가능합니다.

리스트 보존

 	리스트에 변수 추가

선택 변수 변경

비우기보기

변수 스파이 리스트에는 변수명, 현재치, 명령어가 표시된 각 파일의 폭은 마우스 드래그에 의해 변경 가능합니다.


Saving list on hard disk
리스트 보존

파일 - 보존 명령어에 따라 디버그 중의 프로그램명과 동일명 으로 스파이 리스트가 보존됩니다. 이 리스트는 다음 번 ST, IL프로그램이 디버그상태가 될 때 자동적으로 열립니다.

또한, 디버그 윈도우의「도구」－「스파이 리스트」 메뉴명령어에 따라 이 프로그램명인 스파이 리스트를 표시하고 수정, 보존하는 것도 가능합니다.


Inserting variables in the list
 	리스트에 변수 추가

 「편집」－「변수 삽입」메뉴명령어에 따라 스파이 리스트에 변수를 삽입할 수 있습니다. 프로젝트 변수모음의 변수 선택용 다이아로그박스에서 삽입할 변수를 선택합니다. 이러한 변수를 매뉴얼 입력할 필요는 없습니다. 이 리스트에는 최대32개 까지의 변수 포함이 가능합니다. 동일 변수명이 리스트상에 표시되는 일은 없습니다.

 ST텍스트 윈도우에서 변수가 선택（하이라이트）되어 있을 때는「편집」－「스파이 리스트에서 추가」또는「스파이 리스트로 추가」도구 바 아이콘에 따라 스파이 리스트에 변수를 삽입할 수 있습니다. 변수를 선택해서 오른쪽 마우스 클릭해서, 오픈 되는 pupup메뉴에서의 선택도 가능합니다.


Changing the selected variable
선택 변수 변경

「편집」－「변수 변경」메뉴명령어에 따라 스파이 리스트상으로 선택되어 있는 변수 변경이 가능합니다.「편집」－「변수 잘라내기」메뉴명령어에 따라  스파이 리스트상에서 선택되어 있는 변수 삭제가 가능합니다.


Dump display
Dump 보기

사용자는 언제든지  확대/축소 버튼 또는 "옵션 / Dump " 명령어로 Dump를볼 수 있다.

"비우기" 모드에선, 항상 하나의 변수만 설정하면서 볼 수 있는데 이 변수는 10/16진수의 형식으로 볼 수 있다.창의 맨 위엔 이진 비우기 형식(BDF)을 표시한다.

변수추적과 메세지 변수의 이해(인쇄 불가능 메세지 변수..)에 유용한 도구 이다.