본문 바로가기
Siemens Automation/STEP7

STEP7 편집기 기본 조작 방법 - 1

by 의명 2020. 6. 2.

 

 

LD(Ladder Diagram), LAD(Ladder Diagram) Step7 표준 패키지 언어

FBD(Function Block Diagram) 논리회로도와 유사한 프로그램언어 이다 Step7 표준 패키지 언어

IL(Instruction List) STL(Statement List) Step7 표준 패키지 언어

ST(Structured Text) SCL Step7 옵션패키지 언어

SFC(Sequential Function Chart) GRAPH 옵션패키지 언어

 

LD(Ladder Diagram), LAD(Ladder Diagram) Step7 표준 패키지 언어

FBD(Function Block Diagram) 논리회로도와 유사한 프로그램언어 이다 Step7 표준 패키지 언어

IL(Instruction List) STL(Statement List) Step7 표준 패키지 언어

ST(Structured Text) SCL Step7 옵션패키지 언어

SFC(Sequential Function Chart) GRAPH 옵션패키지 언어
CFC(
Continuous Function Chart) 주로 Safety SIL 관련된 Programming 시에 사용
SCL(Structured Control Language) C언어 기반의 Programming

 

 

 

 

 

 

Overview 

각종 특수 명령 또는 현재의 프로젝트내 FB, FB, SFC, SFB 또는 Multiple Instance 블록을 프로그램에 삽입 할 때 사용 하며, 이 Overview 창은 현재 선택된 프로그램 언어에 따라 그 형태와 명령어가 변화 하며, 또한 현재 프로젝트의 프로그램 호출구조(Program Structure)를 볼 수 있다.

 

변수선언창 

현재블록에서 사용 할 임시변수(TEMP) 또는 정적변수(STA)를 선언 및 편집 할 수 있는 창이다.

 

프로그램입력창 

프로그램 코드를 입력하는 창이다.

 

Detail 

여러 가지 기능을 복합적으로 수행하는 창이며, 이 창은 프로그램 컴파일에러, 프로그램 크로스리퍼런스, 변수값의 모니터링, 변수값의 수정, CPU진단, 프로그램 블록의 비교 기능을 수행 할 수 있다.

 

 

 

 

LAD 또는 FBD로 작성된 프로그램은 STL로 변환이 100% 가능 하다 그 이유는 사용자는 LAD 또는 FBD로 프로그램을 작성하고 있지만, Step7의 프로그램 편집기는 내부적으로 STL로 프로그램을 해석하고 있기 때문이다. 

 

즉 사용자는 프로그램을 LAD 또는 FBD형태로 작성하고 있지만 이것은 단순히 프로그램을 LAD 또는 FBD형태로 디스플레이 하는 것에 불과 하고, Step7 내부적으로는 STL 언어 형태로 프로그램을

작성하고 있다 이것은 Step7의 근본적인 언어는 STL이기 때문이다.

 

STL로 작성된 프로그램은 LAD 또는 FBD로 대부분 변환 되지 않는다. 그 이유는 다음의 몇 가지로

정리 할 수 있다.

 

1) LAD 또는 FBD 프로그램은 하나의 Network에 하나의 출력코일만을 사용 할 수 있지만

(물론 하나의 출력코일에 or로 다른 코일을 추가 하는 것은 가능하다) STL은 이러한 제한이 없다 즉

하나의 Network에 여러 개의 출력코일을 사용 할 수 있다.

 

2) LAD 또는 FBD의 몇 개의 명령어를 처리 하기 위해서는 임시변수를 사용해야 하지만, STL은 이러한 임시변수 없이 명령어 처리가 가능하다.

3) LAD 또는 FBD는 Address Type Check를 한다. 만약 MW100이라는 영역에 심볼이름을 입력하고, 데이터형식을 Word로 지정했다면 이 MW100이라는 영역은 Integer명령에는 사용 할 수 없다 즉

심볼데이터에 입력한 데이터 형식으로만 사용 할 수 있다. 하지만 STL은 이러한 Address Data Check를 하지 않는다.

 

4) LAD 또는 FBD의 몇 개의 명령어는 NOP를 가지고 있다. NOP(Null Operation) 특정 LAD 또는 FBD 명령어를 STL로 변환하면 해당 명령어에 NOP가 포함 된 것을 알 수 있다 이 NOP 들은 명령어의 기능상에는 아무런 의미가 없지만 해당 NOP를 삭제하면 이 프로그램은 더 이상 LAD 또는 FBD로

디스플레이 되지 않는다.

 

 

STL로 작성된 프로그램은 LAD 또는 FBD로 대부분 변환 되지 않는다. 그 이유는 다음의 몇 가지로

정리 할 수 있다.

 

1) LAD 또는 FBD 프로그램은 하나의 Network에 하나의 출력코일만을 사용 할 수 있지만

(물론 하나의 출력코일에 or로 다른 코일을 추가 하는 것은 가능하다) STL은 이러한 제한이 없다 즉

하나의 Network에 여러 개의 출력코일을 사용 할 수 있다.

 

2) LAD 또는 FBD의 몇 개의 명령어를 처리 하기 위해서는 임시변수를 사용해야 하지만,

STL은 이러한 임시변수 없이 명령어 처리가 가능하다.

 

3) LAD 또는 FBD는 Address Type Check를 한다. 만약 MW100이라는 영역에 심볼이름을 입력하고, 데이터형식을 Word로 지정했다면 이 MW100이라는 영역은 Integer명령에는 사용 할 수 없다 즉

심볼데이터에 입력한 데이터 형식으로만 사용 할 수 있다. 하지만 STL은 이러한 Address Data Check를 하지 않는다.

 

4) LAD 또는 FBD의 몇 개의 명령어는 NOP를 가지고 있다. NOP(Null Operation) 특정 LAD 또는 FBD 명령어를 STL로 변환하면 해당 명령어에 NOP가 포함 된 것을 알 수 있다 이 NOP 들은 명령어의 기능상에는 아무런 의미가 없지만 해당 NOP를 삭제하면 이 프로그램은 더 이상 LAD 또는 FBD로 디스플레이 되지 않는다.

 

5) LAD 또는 FBD 프로그램 언어에는 존재 하지 않는 명령어가 STL에는 존재 한다. 예를 들면 STL 명령어 중 “SET”, “CLR”을 사용하여 프로그램을 작성 하였다면 이 프로그램은 LAD 또는 FBD로 변환 될 수 없다 그 이유는 LAD 또는 FBD 프로그램 언어에는 해당 명령어를 표현 할 수 없기 때문이다.

 

6) 어큐물레이터(Accumulator) 관련명령어, 간접어드레싱(Indirect Addressing) 관련 명령어는 오로지 STL에만 존재 한다, 그러므로 위와 같은 기능을 사용하기 위해서는 STL로 프로그래밍 해야 한다.

 

지멘스 교육이나 기술지원이 문의 사항이 있으시면 언제든지 연락주시고,

제가 도움을 드릴 수 있는 내용은 최대한 답을 드릴수 있도록 하겠습니다.

긴글 읽어주셔서 감사드리고, 틈나는대로 계속 관련 내용 업데이트하도록 하겠습니다

감사합니다.

댓글