Using the Flow Chart editor
 Flow Chart 편집기 사용법

ISaGRAF Flow Chart편집기는 액션, 테스트블록을 ST, IL, QuickLD언어로 프로그램 할 수 있습니다. FlowChart는 판단을 기술하는 다이아그램이지만 sequence조작도 기술할 수 있습니다. LD와IL에서는 무한loop가 될 경우에도 FlowChart편집기에서는 Target으로의 처리를 블록하지 않고 되돌리기 점프기술도 가능하게 됩니다

FC 언어 기본

Flow Chart 들어가기

chart에서 작업

level 2 프로그램

level 2 프로그램 &  Quick LD

표시 옵션

도구 메뉴 명령어

기타 ISaGRAF 도구 호출

기타 "파일" 메뉴

프로그램 일기장 갱신

변수목록에서 변수 선택


Basics of the FC language
FC 언어 기본

Flow Chart（FC）는 Sequence한 처리를 기술하는 그래픽 언어 입니다. Flow Chart 프로그램은 액션과 테스트로 성립되어  있습니다. 액션과 텍스트를 데이타 흐름을 나타내는 링으로 결합합니다. 이하는 Flow Chart언어의 기본요소를 나타냅니다.

FC차트의 개시:

      "begin" 심벌은 Flow Chart 프로그램 최초에 반드시 존재합니다. 이 심벌은 차트 내에 하나만 존재하고 삭제할 수 없습니다. 이 심벌은 Flow Chart가 실행될 때 최초의 상태를 유지합니다.

FC차트의 종료:

      "end" 심벌은 Flow Chart프로그램의 마지막에 반드시 존재합니다. 이 심벌은 차트 내에 하나만 존재하고 삭제할 수 없습니다.(End)심벌에 아무것도 접속되어 있지 않는 것과 같은 상태(loop상태)가 가능합니다. 이 심벌이 실행된 때는 프로차트  마지막 상태로 됩니다.

FC flow링(링):

      flow링은 차트 내에 두개의 포인트를 접속하는 라인입니다. 링에서는 흐름의 방향성을 가리키는 화살표가 붙어 있습니다. 두개의 링은 동일의 소스가 되는 포인트에서 그어지는 일은 없습니다.

FC액션:

      액션심벌은 실행될 액션을 기술합니다. 액션심벌은 번호와 이름에 의해 식별됩니다. 차트 내에 두개의 액션심벌은 동일번호, 또는 이름을 가질 수 없습니다. 액션은 ST, LD, IL의 어떤 언어로도 프로그램 됩니다. 액션은 링에 접속되고 하나의 링이 액션에 들어와 하나의 링이 액션에서 나갑니다.

FC테스트:

      테스트심벌은 TRUE 형의 조건식을 나타냅니다. 테스트심벌은 번호와 이름에 따라 식별됩니다. ST, LD, IL언어로 기술된 표현의 평가결과에 따라 YES, NO 중에서 buzz로 프로가 이끌립니다. ST언어로 프로그램 되어 있을 때는 표현 마지막에 세미콜론(;)찍는 일도 있습니다. LD언어로 프로그램 되어 있을 때는 변수명이 정해져 있지 않는 하나의 코일이 평가결과를 유지합니다.

FC서브프로그램:

      Flow Chart 프로그램에서는 계층구조 프로그램을 할 수 있습니다. 하나의 Flow Chart는 다른 Flow Chart를 읽어낼 수 있습니다. 불러낼 프로그램은 FC서브프로그램 child FC프로그램 이라 불립니다. FC서브프로그램을 읽어 낼 프로그램은 FatherFC프로그램 이라고도 불립니다. Flow Chart에 있어서는 FC서브프로그램의 처리가 완료될 때까지는 FatherFC프로그램  처리는 서스펜드 되어 있습니다. SFC 프로그램에서는 동시실행이 가능합니다.

FC I/O조작블록:

      I/O조작블록심벌은 액션을 실행하기 위한 블록입니다. 기타 액션과 같은 모양으로 I/O 조작블록은 번호와 이름으로 식별됩니다. 다른 액션과 같은 의미를 가지지만, I/O조작블록에서는 Target의 하드윈도우에 의존하고 있는 I/O조작 등을 구별해서 표현하는 것에 따라, 프로그램을 알기 쉽도록 하기위해 만들어진 것입니다. 작동하는 것은 다른 액션과 같습니다.

FC 연결

      connect는 차트상에서의 두개의 포인트를 직접적으로 선을 긋는 것이 아니고 링 시키기 위해서 사용합니다. connect는 원으로 표현되어 접속소스에서 접속됩니다. 접속 전에 Flow Chart 상의 포인트를 (통상은 접속전의 이름과 번호)지정하는 것에 따라connect 설정이 끝납니다.

FC 주석:

      커맨드는 Flow Chart의 실행과는 관계 없지만 Flow Chart 상의 임의의 장소에 삽입할 수 있습니다. 커맨드에 따라 프로그램을 읽기 쉽게 토큐멘트 할 수 있습니다.


Entering a Flow Chart
Flow Chart 들어가기

Flow Chart를 입력하기 위해서는 이하 구성요소（액션, 테스트, 연결 등）를 그래픽 편집기에 배치시켜  링으로 접속 할 수 있게 됩니다.

객체 삽입

객체 선택

주석 삽입

flow 링크 그리기

연결

이동

크기조절

출력 바꿔 넣기


Inserting objects
객체 삽입

차트에 오브젝트를 삽입하기 위해서는 도구 바에서 목적버튼을 선택해서 그래픽 편집기를 마우스클릭 합니다. 공백에 배치하는 것도 flow링을 선택하는 것으로 링 사이에 삽입시키는 것도 가능합니다. 또한, 링 사이의 삽입은 수직 flow링 위에서만 가능합니다.

이하의 기본요소를 삽입할 수 있습니다.

액션(ST,IL,QuickLD중의 프로그램)

IO조작블록

테스트(ST,IL,QuickLD 중의 프로그램)

connect

FC서브프로그램 읽어내기

커맨드

ISaGRAF  Flow Chart에서는 이하의 전형적인 블록을 준비하고 있습니다. 이들은 이미 그어져 있는 flow링에 삽입할 수 있습니다. 공백에서의 배치는 할 수 없습니다.

If / Then / Else

Repeat until

While


Selecting objects
객체 선택

그래픽오브젝트의 선택은 프로그램의 편집 작성에서 필요하게 됩니다. 차트 내의 하나 또는 복수 오브젝트를 선택하기 위해서는 도구 바상의 화살표 버튼 [image] 을 선택해서 차트 내의 오브젝트를 마우스클릭 합니다. 복수 오브젝트선택의 경우는 마우스를 드래그해서 선택하고 싶은 영력을 지정합니다. 선택된 오브젝트는 청색 으로, 작은 사각으로 둘러싸인 것으로 표시됩니다. Shift와 Ctrl키 눌리면서 마우스 클릭하는 것에 따라 특정오브젝트를 포함시키기도 하고, 배제할 수도 있습니다.

새로운 오브젝트를 선택하기 위해서는, 전에 선택되어 있었던 오브젝트는 선택 에서 떼어 냅니다. 모든 선택을 떼어 내고 싶은 경우는 차트 내의 공백 영역을 마우스클릭 합니다.

단일 오브젝트선택의 경우는 키보드에서 화살표키에 따라 선택되어 있는 오브젝트를 바꿀 수 있습니다. flow링을 선택할 수 있습니다.


Inserting comments
주석 삽입

차트 내의 공백 영역에 커맨드텍스트를 삽입할 수 있습니다. 커맨드는 Flow Chart 처리에는 영향을 주지않습니다. 프로그램을 알기 쉽게 하기 위해 사용됩니다. 커맨드를 삽입하기 위해서는 도구 바에서 커맨드버튼을 선택해서 커맨드를 배치하고 싶은 장소에 마우스클릭 합니다. 커맨드 텍스트를 적어 넣을 때는 커맨드 오브젝트를 더블클릭 합니다."(*" 와 "*)" 등의 특정한 기호는 삽입할 필요는 없습니다. 선택된 커맨드 블록은 코너부분을 드래그하면 자유롭게 사이즈 변경이 가능합니다.


Drawing flow links
flow링크 그리기

오브젝트 사이를 flow에서 접속하기 위해서는 도구 바 위의 flow삽입 버튼을 선택합니다. flow의 방향성에 따라 마우스를 드래그해서 오브젝트 사이를 flow로 접속합니다. 우선 접속되어 있지않는 오브젝트를 선택해서 목적버튼까지 마우스를 드래그합니다. 목적버튼은 미접속상태 오브젝트의 상부, 또는 존재하고 있는 링위의 장소가 됩니다. flow 위에서의 결합부분는 작은 그레이 원으로 표현됩니다. 이 결합버튼은 다이아그램을 arrange하기위해 이동시킬 수 있습니다.


Using connectors
연결

 ISaGRAF Flow Chart 에디터에서는connect를 다룰 수 있습니다. 이것은 flow링과 같이 두개의 오브젝트사이의 접속을 표현하는 것입니다. connect이용하는 것으로 긴flow링을 사용하지 않고 끝내기 위해 차트가 알기 쉽게 되는 강점이 있습니다. connect로 다른Flow Chart와의 접속은 할 수 없습니다.

connect는 Flow Chart 상에 하나의 오브젝트로 존재합니다. 도구 바상에서 connect 버튼을 선택해서, 차트 위에 배치할 장소를 마우스클릭 합니다. 이때 접속 전에 리스트Box가 표시되며, 여기서 선택합니다. connect는 원으로 표현되어 접속 전의 오브젝트 번호와 이름을 유지하게 됩니다. flow링에 따라 connect가 다른 오브젝트에서 접속됩니다.


Moving objects
이동

차트 내의 오브젝트를 이동하기 위해서는 이동시킬 오브젝트를 선택버튼으로 미리 선택해 놓습니다. 하나 또는 복수오브젝트를 선택해 놓을 수 있습니다. 이들을 마우스로 드래그하면 이동시킬 수 있습니다. 오브젝트는 기타 오브젝트와는  서로 중복할 수 없습니다.

하나의 오브젝트（액션, 테스트 등）가 선택되어, 이동시키면 나머지 차트도 자동적으로 이하에 접속되어 있는 오브젝트도 이동합니다.


Resizing objects
크기조절

"Begin"과 "End"심벌 이외의 모든 그래픽오브젝트는 자유로이 사이즈변경이 가능합니다. 오브젝트 사이즈를 변경하기 위해서는 오브젝트를 선택해서, 오브젝트 경계선의 작은 사각부분을 마우스로 드래그합니다. 단 이때 오브젝트가 다른 오브젝트와 중복될 수 없기 때문에 (또는 윈도우 경계와의 간섭) 중복될 것 같은 오브젝트를 미리 이동시켜 놓을 필요가 있을지도 모릅니다.

수직인 flow링이 오브젝트와 접속되어 있을 경우는 오브젝트는 수평으로 변경하면 자동적으로 좌우로 나누어져 flow링이 오브젝트의 중심이 됩니다.


Swapping the outputs of a test
출력 바꿔 넣기

테스트블록에서 출력된 YES/NO의 위치를 바꿔 넣을 수 있습니다. 바꿔 넣기 위해서는 YES, NO의 라인 주의 하나를 더블클릭 합니다.


Working on an existing chart
chart에서 작업 하기

Flow Chart의 「편집」메뉴 커맨드에 따라 선택되어 있는 오브젝트에 대해서 편집이 가능합니다.

chart수정

찾기 / 바꾸기

요소에 직접 접근t

숫자 메기기


Correcting a chart
chart 수정

DEL키는 선택한 오브젝트 삭제에 사용할 수 있습니다. 선택된 오브젝트 에서 접속되어 있는 flow링도 동시에 삭제됩니다. 「편집」－「되돌리기」메뉴 커맨드에 따라 삭제된 오브젝트를 복원할 수 있습니다. DEL키는 복수 선택된 오브젝트에 대해서도 조작이 가능합니다.「잘라내기」,「인쇄」,「붙이기」커맨드에 따라 선택된 오브젝트를 이동, 인쇄할 수 있습니다.


Find and replace
찾기 / 바꾸기

「편집」－「검색」,「치환」메뉴 커맨드에 따라 프로그램 전체（액션, 테스트블록이 ST,IL,QuickLD로 기술되어 있다）에 대해서 텍스트의 검색, 치환이 가능합니다. 검색, 치환은 열려 있는 에디터윈도우에서 텍스트가 검색되어 텍스트가 검색되면 레벨２프로그램이 열립니다.


Direct access to an element
요소에 직접 접근

「편집」－「점프」메뉴 커맨드에 따라 또는 도구 바상의 [image] 버튼 선택에 따라 열려 있는 Flow Chart 내에 지정된 그래픽오브젝트로 직접점프를 할 수 있습니다. 윈도우의 스크롤은 자동적으로 행해지며 오브젝트가 보이는 곳에 표시됩니다


Renumbering elements
번호 메기기

「편집」－「번호 고치기」메뉴 커맨드에 따라 Flow Chart 내에서 오브젝트에 할당되어 있는 번호 고치기를 합니다. Flow Chart상에서의 오브젝트는 unique한 참조번호를 취할 수 있습니다. 새로운 오브젝트가 삽입될 때마다 새로운 번호가 할당됩니다.「번호 고치기」에 따라 차트상의 장소에 따라, 오브젝트번호가 고쳐집니다. 번호는 위에서 아래로, 좌에서 우로 번호가 증가합니다.


Display options

옵션 - 윤곽 메뉴커맨드에 따라 차트의 화면표시에 관계하는

파라미터가 정리된 DialogBox가 열립니다.

     워크스페이스 그룹Box에서는 도구 바와 상태바의 표시/비표시를 할 수 있습니다.

     도큐멘트 그룹Box에서는 편집grid의 표시/비표시 와 칼라모드의 선택을 할 수 있습니다.

도구 바상의 Zoom  버튼에 의해 Zoom 비율을 변경할 수 있습니다. 이 버튼은 텍스트와 액션을 기술 하는 레벨2 프로그램에서도 유효합니다. (선택되어 있는 윈도우가 Zoom의 대상이 됩니다.)

도구 바상의 grid버튼에 의해 편집grid의 표시/비표시를 할 수 있습니다. 이 버튼은 테스트와 액션을 기술하는 레벨2 프로그램 에서도 유효합니다.(선택되어 있는 윈도우가 Zoom의 대상이 됩니다)

「옵션」-「글꼴」메뉴커맨드에 따라 차트내의 텍스트폰트타입을 선택할 수 있습니다. ST,IL프로그램에서는 폰트사이즈도 유효하며 설정할 수 있습니다. FC, QuickLD에서는 폰트사이즈는 화면사이즈에 대응해서 자동적으로 변경되기 때문에 사이즈의 설정은 무효가 됩니다.


Calling other ISaGRAF tools
다른 ISaGRAF 도구 호출

검증

 	시뮬레이션 / 디버그

변수목록 편집


Verify (compile) the program
검증

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

「옵션」－「컴파일러옵션」 명령어에 따라 컴파일러와 최적화  옵션을 설정하기 위해 사용됩니다.

또한, 이들에 관한 상세한 설명은「코드생성의 사용법」을 참조 바랍니다.


Simulate or debug the application
 	시뮬레이션 / 디버그

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


Editing the dictionary of variables
변수목록 편집

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


Other commands of the "File" menu
기타 "파일" 메뉴

다른 프로그램 열기

인쇄


Open another program
다른 프로그램 열기

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


Printing the program
인쇄

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

SFC, FBD, QuickLD편집기 에서는「편집」-「메타파일로 복사」 커맨드에 따라 편집중인 다이아그램을 Ｗｉｎｄｏｗｓ 메타파일로서 클립보드에 복사할 수 있습니다. 이 내용은 다른 어플리케이션에 첨부할 수 있습니다. ＳＦＣ프로그램에 있어서는 레벨１（차트, 래퍼런스번호, 커맨드）이 그 대상이 됩니다.


Updating the program diary
일기장 갱신

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

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

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


Selecting a variable from dictionary
변수목록에서 찾기

  ST, IL프로그램 편집 중에는「편집」－「변수 삽입」커맨드에 따라 편집중인 프로그램으로 현재 커서에 변수목록에 등록되어 있는 변수명은 삽입이 가능합니다. 또한, QuickLD에서는「편집」－「텍스트／심벌설정」명령어（혹은 심벌과 지정된 영력을 더블클릭）에 따라 다이아그램중의 접점, 코일, 블록 I/O 파라미터 등에 변수명의 할당이 가능합니다. 또한, ＦＢＤ에디터에서는 심벌을 더블클릭 함으로서 다이아그램중의 접점, 코일, 블록 입출력 파라미터등에 변수명의 할당이 가능합니다.  어떤 경우라도 이하의 공통변수명 선택용 DilaogBox가 표시됩니다.

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

이진

정/실수

시변수

메세지

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


Commands of the "Tools" menu
"도구" 메뉴

다음은 도구 메뉴의 명령어 입니다.  SFC창의 바탕 화면아래에 작은 글씨로 정보를 보여 줍니다.

컴파일러 출력 보기	이전 컴파일 결과 에러 메세지를 보입니다

스텝/transitions 에서 찾기	스텝/transition 내의 텍스트 찾기 및 검색 목록을 보인다

출력창 숨기기	    출력창을 닫는다


Entering level 2 programs
level 2 프로그램

액션과 테스트블록에 레벨2프로그램을 기술할 때는 액션과 테스트블록을 선택해서 더블클릭 합니다. 레벨2프로그램 윈도우가 Flow Chart 윈도우의 우측에 열립니다. Flow Chart 윈도우와 레벨2 프로그램 윈도우 사이의 경계는 마우스로 자유롭게 이동할 수 있습니다. 최대로 두개까지 레벨2 윈도우를 동시에 열수 있습니다. 이하에서 레벨2 윈도우를 열기 위해 키보드, 마우스, 편집 메뉴조작을 나타냅니다.

	키보드	마우스조작	편집-메뉴커맨드
제2윈도우	Enter	더블클릭	레벨2 편집
제2윈도우	Ctrl+Enter	Ctrl + 더블클릭	세퍼레이트 윈도우에서 레벨2 편집

두개의 레벨2 윈도우가 열려 있을 시에는 이들 경계는 마우스로 자유롭게 이동할 수 있습니다. 레벨2 윈도우의 오른 위 버튼으로 윈도우를 닫을 수 있습니다.

레벨２ 프로그램언어의 Default는 ST언어입니다. 또한 프로그램언어는IL, QuickLD언어를 이용하는 것도 가능합니다. 선택되어 있는 프로그램 언어는 윈도우의 타이틀바 우측에 표시됩니다. 프로그램 언어를 변경할 경우에는 이 부분을 마우스클릭해서 변경합니다.「옵션」-「Level２Language설정」메뉴 커맨드에 따라서도 언어를 바꿀 수 있습니다. 단, 프로그램언어 바꾸기는 레벨２ 프로그램이 공백 상태일 때만 유효합니다. 한번 프로그램을 행했던 경우는 이것을 완전하게 삭제하면 다시 선택이 가능하게 됩니다.

레벨２ 윈도우 타이틀바 하부에 １행의 텍스트편집Box가 열립니다. 여기에 입력된 텍스트는 테스트와 액션블록 커맨드가 되고,「점프」커맨드 등으로 점프 앞을 선택할 경우에 유효하게 사용할 수 있습니다. 또한 Flow Chart의 인쇄 시에도 표시됩니다.

「옵션」－「최신정보」메뉴커맨드에 따라 레벨２프로그램 내용을 메인Flow Chart 프로그램에 반영시킬 수 있습니다.


Programming with Quick LD
프로그램 & Quick LD

레벨2 프로그램에 Quick LD에디터를 사용할 수 있습니다. 테스트블록에서의 LD프로그램에는 괦줄의 rung만 프로그램 됩니다. 코일에 변수할당은 필요 없습니다. 이하에서 그 예를 나타냅니다.

Quick LD에 의한 프로그램으로 Ladder 프로그램용 심벌을 삽입하기 위한 쇼트컷 키를 이하에서 나타냅니다.

F2:	접점을 뒤에 삽입�^rung개시에 사용

F3:	접점을 앞에 삽입

F4:	접점을 병렬에 삽입

F5:	코일을 병렬에 삽입(테스트블록에서는 사용불가)

F6:	블록을 뒤에 삽입

F7:	블록을 앞에 삽입

F8:	블록을 병렬에 삽입

F9:	선택된 코일과 병렬에서 점프삽입 (테스트블록에서는 사용불가)

점프하기 전은 rung명이 됩니다. rung명을 입력할때는 rung의 맨앞(좌단)에 커서를 set해서 ENTER키를 선택합니다.이전에 입력마침 라벨명이 표시되고, 신규 rung명을 입력 할 수 있습니다. 또, 점프 전에 입력할 라벨점프 DialogBox에서는 점프 전의 라벨명을 선택합니다.  삭제 버튼에 따라 점프 전의 라벨명을 삭제할 수 없습니다. 단, 이 조작에 따라 라벨명은 삭제할 수 없습니다.

접점, 코일, 블록의 입출력 파라미터에 커서를 선택한 상태에서 ENTER키를 선택해서 변수를 할당할 수 있습니다. 블록에 커서를 놓으면 FunctionBlock타입을 선택할 수 있습니다. 다블클릭에 의해서도 같은 형식으로 가능합니다.

CNTL＋스페이스 키에  따라 선택되어 있는 접점의 타입（A접점, B접점）을 변경할 수 있습니다. 상세한 것은Quick LD편집기의 사용법을 참조 바랍니다.