+ All Categories
Home > Documents > 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를...

4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를...

Date post: 23-Aug-2020
Category:
Upload: others
View: 3 times
Download: 0 times
Share this document with a friend
14
4. OB1 프로그램 작성 4 - 1 4. OB1프로그램 작성 4.1 LAD/STL/FBD 프로그램 에디터 오픈 LAD, STL, FBD 선택 STEP 7에서는, 표준 언어로서 Ladder Logic(LAD), Statement List (STL), 또는 Function Block Diagram (FBD)사용하여 S7 프로그램을 작성한다. 장에서도 실습을 위해 사용할 언어를 선택해야 한다. Ladder Logic (LAD) 전기 기술자에게 적합한 언어. “Key_1” “Key_2” “Green_Light” ( ) Statement List (STL) 컴퓨터 기술자에게 적합한 언어. A “Key_1” A “Key_2” = “Green_Light” Function Block Diagram(FBD) 회로 기술자에게 적합한 언어. & = “Green_Light” “Key_1” “Key_2” OB1 블록은 Project 마법사에서 Project생성할 선택한 언어에 따라 결정되지만, 그러나, 기본 프로그래밍 언어를 언제든지 변경할 있다.
Transcript
Page 1: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 1

4. OB1에 프로그램 작성

4.1 LAD/STL/FBD 프로그램 에디터 오픈

LAD, STL, FBD 선택

STEP 7에서는, 표준 언어로서 Ladder Logic(LAD), Statement List (STL), 또는 Function Block Diagram (FBD)을 사용하여 S7 프로그램을 작성한다. 이 장에서도 실습을 위해 사용할 언어를 선택해야 한다.

Ladder Logic (LAD) 전기 기술자에게 적합한 언어. “Key_1” “Key_2” “Green_Light” ( )

Statement List (STL) 컴퓨터 기술자에게 적합한 언어. A “Key_1” A “Key_2” = “Green_Light”

Function Block Diagram(FBD) 회로 기술자에게 적합한 언어.

&

=

“Green_Light” “Key_1”

“Key_2”

OB1 블록은 Project 마법사에서 Project를 생성할 때 선택한 언어에 따라 결정되지만, 그러나, 이 기본 프로그래밍 언어를 언제든지 변경할 수 있다.

Page 2: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 2

심볼 테이블 복사 및 OB1 오픈

필요하다면, "Getting Started"Project를 오픈한다. 이를 위해, 도구바에 있는"Open" 버튼을 클릭하고 이전에 만든 "Getting Started" Project를 선택한 후, "OK" 버튼을 누른다. 선택한 프로그래밍 언어에 따라 다음 중 1개의 Project도 오픈한다. · ZEn01_05_STEP7__LAD_1-9 · ZEn01_01_STEP7__STL_1-9 또는 · ZEn01_03_STEP7__FDB_1-9

오픈한 ZEn01_XXX“ Project에서 Symbols 오브젝트를 찾아 "Getting Started" Project 윈도우의 S7 Program 폴더로 끌어다 넣어 복사한다. 그 다음 "ZEn01_XXX" 윈도우를 닫는다.

“끌어다 넣음”의 의미는 오브젝트를 클릭하여 마우스 버튼을 누른 채로 오브젝트를 옮기는 것이다. 마우스 버튼을 놓으면, 그 오브젝트는 선택된 위치에 복사된다.

"Getting Started" Project에 있는 OB1을 더블 클릭한다. LAD/STL/FBD에디터 윈도우가 오픈된다.

STEP 7 에서, OB1 은 CPU 에 의해 주기적으로 계속 처리된다. CPU 는 프로그램 명령어들을 라인 별로 읽어 실행한다. CPU 가 프로그램의 첫 라인으로 되돌아 오면, 정확히 1 개 사이클을완료한 것이다. 이를 위해 필요한 시간을 스캔 사이클 타임이라 한다. 선택한 프로그래밍 언어에 따라, 4.2 절(LAD 를 사용한 OB1 프로그래밍), 4.3 절(STL 을 사용한 OB1 프로그래밍), 또는 4.4 절(FBD 를 사용한 OB1 프로그래밍)에서 실습을 계속한다.

메뉴 Help Contents를 선택하고 "Programming Blocks” 및 “Creating Projects and Libraries" 주제의 내용을 살펴보면 더 많은 정보를 얻을 수 있다.

Page 3: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 3

LAD/STL/FBD 에디터 윈도우

모든 블록들은 LAD/STL/FBD 에디터 윈도우에서 프로그래밍 된다.

아래에 LAD를 사용할 때의 모습이 나타나 있다.

프로그래밍 언어 변경

Program Element 윈도우 표시 On/Off

새로운 Network 삽입

LAD/FBD에서 많이 사용되는 명령어

"Details" 윈도우에 있는 여러 탭들의용도: 에러 메시지 표시, 주소에 대한 정보표시, 심볼 편집, 주소 모니터링, 블록 비교, 편집 에러 표시, 프로세스 진단에 대한 정의.

선택된 명령어에 대한 정보

선택된 명령어에 대한 도움말

Program Element 윈도우

블록에 대한 파라메타와 로컬 변수들을 포함하는

변수 선언 테이블

블록, Network의 제목 및 주석문

프로그램 입력 라인

Page 4: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 4

4.2 LAD를 사용한 OB1 프로그래밍

이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의

프로그램을 작성한다.

LAD로 직렬회로 프로그래밍

필요하다면, View 메뉴에서 프로그래밍 언어로서 LAD를 설정한다.

…View

LAD Ctrl+1 STL Ctrl+2 FBD Ctrl+3

OB1 : Title

Comment :

OB1의 Title을 클릭하고, 예를 들어“Cyclically processed main program”을입력한다.

첫 명령어를 입력할 위치를 선택한다.

도구바에 있는 이 버튼을 클릭하여 N.O(A) 접점을 삽입한다.

??.? ??.? 같은 방법으로 두번째 N.O(A) 접점을 삽입한다.

같은 라인의 오른쪽 끝에 코일을 삽입한다.

??.? ??.? ??.? ( )

… View

Display with ▶

Symbolic Representation Symbol Information Symbol Selection

Comment dd d ifi i

심볼 표현이 활성화 되어 있는지 점검해 본다.

이 직렬회로에서 입.출력 접점의 주소는 아직 지정되어 있지 않다.

Page 5: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 5

??.? ??.? ??.? ( )

??.? 표시를 클릭하고 심볼 이름 “Key_1”을 입력한다. 엔터 키를 누른다.

??.? ??.? ??.? ( )

두번째 입력 접점에 심볼 이름 “Key_2”을 입력한다. 엔터 키를 누른다.

??.? ??.? ??.? ( ) 코일에 “Green Light”를 입력한다.

“Key_1” “Key_2” “Green_Light”

( ) 이제 완벽한 직렬회로 프로그램을 작성하였다.

적색으로 나타난 표시가 없으면 블록을 저장한다.

심볼들이 적색으로 표시되면, 심볼 테이블에 그 심볼이 존재하지 않거나 문장 에러를 의미한다.

Page 6: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 6

LAD로 병렬회로 프로그래밍

Network 1을 선택한다. OB1 Title :

Comment :

명령어를 입력할 위치를 선택한다.

병렬분기를 종료한다.(필요하면, 화살표를 선택)

??.?

블록을 저장한다.

Network 1

새로운 Network을 삽입한다.

N.O(A) 접점과 코일을 삽입한다.

??.? 수직선을 선택한다.

병렬분기를 삽입한다.

??.? ??.?

??.?

( )

( ) 병렬분기에 다른 N.O(A) 접점을 삽입한다.

??.? ??.?

??.?

( ) 이 병렬회로에서 입.출력 접점의 주소는 아직 지정되어 있지 않다. 직렬회로에서와 동일한 방법으로 심볼 이름들을 지정한다.

“Key_3” “Red_Light”

( ) 위의 N.O(A) 접점에는 “Key_3”, 아래의 N.O(A) 접점에는 “Key_4”, 코일에는 “Red_Light”를 입력한다.“Key_4”

Page 7: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 7

LAD로 메모리 기능 프로그래밍

그래밍

“Manual _On”

Network 2를 선택하고 다른 Network을 삽입한다.

명령어를 입력할 위치를 선택한다.

블록을 저장하고 윈도우를 닫는다.

Program Element 윈도우의 Bit Logic 안에 있는 SR 명령어를 찾아 더블 클릭하여 삽입한다..

SR S Q R

??.? 입력 S와 R 앞에 입력 접점을 삽입한다.

“Automatic_Mode”

다음 심볼 이름들을 입력한다. 위의 접점 “Automatic_On” 아래 접점 “Manual_On” SR 요소 “Automatic_Mode”

“Automatic On”

심볼 주소 지정 방식과 절대 주소 지정 방식의 차이점을 확인하려면 메뉴 View Display with Symbolic Representation를 선택한다. 심볼 이름의 표시 길이를 조정하려면, LAD/STL/FBD 에디터의 메뉴 Options Customize를 선택하고 "LAD/FBD" 탭에서 "Width of address field”를 선택한다. 여기에서, 1줄의 길이를 10-24문자로 설정할 수 있다.

예 : LAD에서의 심볼주소 지정

“Key_1” “Key_2” “Green_Light”

( )

I 0.1 I 0.2 Q 4.0

( )

예 : LAD에서의 절대주소 지정

SR S Q R

메뉴 Help Contents 를 선택하고 "Programming Blocks”, “Creating Logic Blocks" 및 “Editing Ladder Instructions” 주제의 내용을 살펴보면 더 많은 정보를

Page 8: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 8

4.3 STL을 사용한 OB1 프로그래밍

이 절에서는 STL을 사용하여 AND 명령, OR 명령 및 Set / Reset 메모리 기능의

프로그램을 작성한다.

STL로 AND 명령 프로그래밍

필요하다면, View 메뉴에서 프로그래밍 언어로서 STL을 설정한다.

…View

LAD Ctrl+1 STL Ctrl+2 FBD Ctrl+3

OB1 : Title :

Comment :

OB1의 Title을 클릭하고, 예를 들어“Cyclically processed main program”을입력한다.

프로그램 첫 줄에 A(AND)를 입력 하고, 한 칸 띄우고, 심볼 이름 “Key_1”을 입력한다. 입력 후, 엔터 키를 누르면, 다음 라인으로 커서가 이동한다.

Display with ▶

Symbolic Representation Symbol Information Symbol Selection

Comment Address Identification

심볼 표현이 활성화 되어 있는지 점검해 본다.

View

OB1 : Title :

Comment :

Network 1

A “Key_1”

첫 문장을 입력할 위치를 선택한다.

Page 9: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 9

STL로 OR 명령 프로그래밍

동일한 방법으로 AND 명령을 완성한다.

심볼들이 적색으로 표시되면, 심볼 테이블에 그 심볼이 존재하지 않거나 문장 에러를 의미한다. 심볼 이름을 심볼 테이블로부터 직접 삽입할 수 있다.

??.? 표시를 클릭하고, 메뉴 Insert -> Symbol.을 사용한다.

리스트 내에서 이동하여 해당 심볼이 나타나면 선택한다. 심볼 이름이 자동적으로 추가된다.

A “Key_1” A “Key_2” = “Green_Light”

이제 완전한 AND 명령 프로그램을 작성하였다. 적색으로 나타난 표시가 없으면 블록을 저장한다.

Network 1을 선택한다. OB1 : Title :

Comment :

Network 1

새로운 Network을 삽입하고 입력 영역을 선택한다.

O “Key_3” O “Key_3” O “Key_4” = “Red_Light”

O(OR)와 심볼 이름 “Key_3”를 입력한다.(AND 명령에서와 동일) OR 명령을 완성하고 저장한다.

Page 10: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 10

STL로 메모리 명령 프로그래밍

Network 2를 선택하고 다른 Network을 삽입한다.

A “Automatic_On” A “Automatic_On” S “Automatic_Mode” A “Manual_On” R “Automatic_On”

첫 줄에 A와 심볼 이름 “Automatic_On”을 입력한다. 메모리 기능을 완성하고 저장한다. 블록을 닫는다.

심볼 주소 지정 방식과 절대 주소 지정 방식의 차이점을 확인하려면 메뉴 View Display with Symbolic Representation를 선택한다.

메뉴 Help Contents 를 선택하고 "Programming Blocks”, “Creating Logic Blocks" 및 “Editing STL Statements” 주제의 내용을 살펴보면 더 많은 정보를 얻을 수 있다.

예 : STL에서의 심볼주소 지정

A “Key_1” A “Key_2” = “Green_Light”

A I 0.1 A I 0.2 = Q 4.0

예 : STL에서의 절대주소 지정

Page 11: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 11

4.4 FBD를 사용한 OB1 프로그래밍

이 절에서는 FBD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의

프로그램을 작성한다.

FBD로 AND 기능 프로그래밍

필요하다면, View 메뉴에서 프로그래밍 언어로서 FBD를 설정한다.

…View

LAD Ctrl+1 STL Ctrl+2 FBD Ctrl+3

OB1 : Title

Comment :

OB1의 Title을 클릭하고, 예를 들어“Cyclically processed main program”을입력한다.

AND 기능에 대한 입력 영역을 선택한다.(Comment 아래)

AND(&) 박스와 지정(=) 박스를 삽입한다.

… View

Display with ▶

Symbolic Representation Symbol Information Symbol Selection

Comment Address Identification

심볼 표현이 활성화 되어 있는지 점검해 본다.

OB1 : Title

Comment :

Network 1

AND 기능에서 입.출력 접점의 주소는 아직 지정되어 있지 않다.

&

= ??.? ??.?

??.?

Page 12: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 12

적색으로 나타난 표시가 없으면 블록을 저장한다.

??.? 표시를 클릭하고 심볼 이름 “Key_1”을 입력한다. 엔터 키를 누른다.

& =

??.? ??.?

??.?

두번째 입력 접점에 심볼 이름 “Key_2”을 입력한다. 엔터 키를 누른다.

& =

??.? ??.?

??.?

지정 명령에 “Green_Light”를 입력한다. 엔터 키를 누른다.

& =

??.? ??.?

??.?

완전한 AND 기능 프로그램을 작성하였다.

& =

“Green_Light” “Key_1”

“Key_2”

심볼들이 적색으로 표시되면, 심볼 테이블에 그 심볼이 존재하지 않거나 문장 에러를 의미한다.

Page 13: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 13

FBD로 OR 기능 프로그래밍

OB1 : Title :

Comment :

AND 기능에 대한 입력 영역을 선택한다.(Comment 아래)

블록을 저장한다.

Network 2

새로운 Network을 삽입한다.

OR 박스(≥1)와 지정 박스(=)를 삽입한다.

>=1 =

??.? ??.?

??.?

>=1 =

“Red_Light” “Key_3”

“Key_4”

OR 기능에서 입.출력 접점의 주소는 아직 지정되어 있지 않다. AND 기능에서와 동일한 방법으로 진행한다.

위의 입력에는 “Key_3”, 아래 입력 에는 “Key_4” 그리고 지정 명령에는“Red_Light”를 입력한다.

Page 14: 4. OB1 에 프로그램 작성...4.2 LAD를 사용한 OB1 프로그래밍 이 절에서는 LAD를 사용하여 직렬회로, 병렬회로 및 Set / Reset 메모리 기능의 프로그램을

4. OB1에 프로그램 작성

4 - 14

FBD로 메모리 기능 프로그래밍

그래밍

“Manual_On”

Network 2를 선택하고 다른 Network을 삽입한다. 입력 영역을 선택한다.(Comment 아래)

블록을 저장하고 윈도우를 닫는다.

Program Element 윈도우의 Bit Logic 안에 있는 SR 명령어를 찾아 더블 클릭하여 삽입한다..

“AutomaticMode” 다음 심볼 이름들을 입력한다.

Set “Automatic_On” Reset “Manual_On” SR 요소 “Automatic_Mode”

“Automatic_On”

심볼 주소 지정 방식과 절대 주소 지정 방식의 차이점을 확인하려면 메뉴 View Display with Symbolic Representation를 선택한다. 심볼 이름의 표시 길이를 조정하려면, LAD/STL/FBD 에디터의 메뉴 Options Customize를 선택하고 "LAD/FBD" 탭에서 "Width of address field”를 선택한다. 여기에서, 한 줄의 길이를 10-24문자로 설정할 수 있다. 메뉴 Help Contents 를 선택하고 "Programming

Blocks”, “Creating Logic Blocks" 및 “Editing FBD Statements” 주제의 내용을 살펴보면 더 많은 정보를 얻을 수 있다.

예 : FBD에서의 심볼주소 지정

예 : FBD에서의 절대주소 지정

SR S

R Q

& =

“Green_Light” “Key_1”

“Key_2”

& =

Q 4.0 I 0.1

I 0.2


Recommended