liminfo

Siemens TIA Portal Reference

Siemens S7 명령어/FB/FC/DB 블록 레퍼런스

29개 결과

Siemens TIA Portal Reference 소개

Siemens TIA Portal 레퍼런스는 TIA Portal을 사용하여 Siemens S7-1200/S7-1500 PLC를 프로그래밍하는 자동화 엔지니어를 위한 실용적인 빠른 참조 도구입니다. 조직 블록(OB1 메인 스캔 사이클, OB100 시작 초기화, OB35 PID용 주기 인터럽트), 함수 블록(FB, 상태 저장용 인스턴스 DB 포함), 함수(FC, 반환값이 있는 무상태 계산), 데이터 블록(DB, 타입이 지정된 필드를 가진 구조화된 글로벌 데이터 저장소) 등 기본 블록 아키텍처를 다룹니다.

프로그래밍 언어 섹션에서는 STL(명령문 목록)과 SCL(구조화 제어 언어)을 모두 다룹니다. STL은 비트 논리 연산(A/AN: AND, O/ON: OR, S/R: 세트/리셋 래칭, L/T: 워드 데이터 로드/전송)을 상세히 설명합니다. SCL은 IF/ELSIF/CASE 조건문, FOR/WHILE 반복문, 데이터 이동 연산, #REGION 코드 접기를 다룹니다. TON(온딜레이 타이머 SFB4), TOF(오프딜레이 타이머 SFB5), CTU(업 카운터 SFB0), BLKMOV(SFC20 블록 이동), 자동 튜닝이 가능한 PID_Compact 등 시스템 함수 블록도 호출 구문과 파라미터 예제와 함께 수록되어 있습니다.

메모리 주소 체계(I 입력, Q 출력, M 비트 메모리, 절대 주소 DB1.DBW0와 심볼릭 접근 "DB_Name".Value), 통신 프로토콜(PROFINET IO 디바이스 설정과 IP/주소 매핑, CPU 간 S7 데이터 교환용 PUT/GET, TCP/UDP 개방형 사용자 통신용 TSEND_C/TRCV_C), 디버깅 도구(실시간 변수 기록용 Trace 오실로스코프, 온라인 모니터링 및 값 강제용 Watch Table, S7-GRAPH 순차 기능 차트 프로그래밍)도 참조할 수 있습니다.

주요 기능

  • 조직 블록 레퍼런스: OB1 메인 사이클, OB100 웜 리스타트 초기화, OB35 PID 호출 예제가 포함된 주기 인터럽트
  • FB/FC/DB 블록 프로그래밍: 인스턴스 DB가 있는 함수 블록, 반환값이 있는 함수, 타입 지정 STRUCT의 데이터 블록
  • STL 비트 논리 명령어: A/AN(AND), O/ON(OR), S/R(세트/리셋 래칭), L/T(로드/전송) 동작 예제
  • SCL 구조화 텍스트: IF/CASE 조건문, FOR/WHILE 반복문, MOVE/BLKMOV 데이터 연산, #REGION 코드 정리
  • 시스템 FB: PT 시간값의 TON/TOF 타이머, PV 프리셋의 CTU 카운터, 자동 튜닝 PID_Compact 컨트롤러
  • 메모리 주소: I/Q/M/DB 영역의 비트, 바이트, 워드, 더블워드 접근과 심볼릭 DB 표기법
  • 통신: PROFINET IO 디바이스 설정, PUT/GET CPU 간 교환, TSEND_C/TRCV_C TCP/UDP 소켓
  • 디버깅: 트리거와 샘플링이 가능한 Trace 오실로스코프, Watch Table 모니터링/강제, S7-GRAPH SFC 스텝

자주 묻는 질문

OB1, OB100, OB35의 차이점은 무엇인가요?

OB1은 매 PLC 스캔 사이클마다 실행되는 메인 조직 블록으로 주요 프로그램 로직을 포함합니다. OB100은 웜 리스타트 시 1회 실행되어 초기화(기본값 설정, 플래그 클리어)를 수행합니다. OB35는 메인 스캔 사이클과 무관하게 고정 간격(기본 100ms)으로 실행되는 주기 인터럽트 블록으로 PID 제어 루프 같은 시간이 중요한 작업에 적합합니다.

TIA Portal에서 FB와 FC는 언제 사용하나요?

호출 간에 영구적인 상태가 필요할 때(타이머가 있는 밸브 제어, 스텝 카운터가 있는 모터 시퀀싱 등) FB(함수 블록)를 사용합니다. 각 FB 인스턴스는 내부 변수를 저장하는 자체 DB를 갖습니다. 아날로그 값 스케일링이나 공식 계산처럼 호출 간에 데이터를 유지할 필요가 없는 무상태 계산에는 FC(함수)를 사용합니다. FC는 값을 직접 반환할 수 있습니다.

S7-1500의 PID_Compact 컨트롤러는 어떻게 작동하나요?

PID_Compact는 주기 OB(OB35 등)에서 호출하는 내장 PID 컨트롤러입니다. Setpoint와 Input(공정 변수)을 설정하면 제어값을 출력합니다. Mode 3이 자동 운전입니다. TIA Portal의 Commissioning 도구로 자동 튜닝을 수행하면 P, I, D 게인을 자동으로 결정합니다. 가열 및 냉각 모드를 모두 지원하고 안티와인드업이 포함되어 있습니다.

STL과 SCL 프로그래밍의 차이는 무엇인가요?

STL(명령문 목록)은 A(AND), O(OR), S(Set), L(Load) 같은 니모닉을 사용하는 저수준 어셈블러 유사 언어입니다. 레지스터 수준의 직접 제어가 가능하고 간단한 비트 논리에 효율적입니다. SCL(구조화 제어 언어)은 IF/CASE/FOR/WHILE 구문을 가진 Pascal 유사 고급 언어로, 복잡한 알고리즘, 수학 계산, 구조화 프로그래밍에 적합합니다.

Siemens PLC에서 메모리 주소는 어떻게 지정하나요?

입력은 I(I0.0 비트, IW64 아날로그 워드), 출력은 Q(Q0.0, QW80), 내부 메모리는 M(M0.0, MW100, MD0 REAL용)을 사용합니다. 데이터 블록은 절대 주소(DB1.DBX0.0 비트, DB1.DBW0 워드, DB1.DBD0 더블워드) 또는 심볼릭 접근("DB_Name".VariableName)을 사용합니다. 워드(W)는 2바이트, 더블워드(D)는 4바이트입니다.

PROFINET IO 통신은 어떻게 설정하나요?

TIA Portal 하드웨어 구성에서 CPU를 컨트롤러로 하는 PROFINET IO 시스템을 추가합니다. ET200SP 같은 IO 디바이스를 IP 주소와 함께 추가하고 각 모듈 슬롯의 I/O 주소를 매핑합니다. 컨트롤러가 주기적 데이터 교환을 자동 처리합니다. 통신 시작 전 DCP 프로토콜로 디바이스 이름을 할당해야 하며, OB82를 통해 진단이 가능합니다.

PUT/GET과 TSEND_C/TRCV_C의 차이는 무엇인가요?

PUT/GET(S7 통신)은 S7 프로토콜을 사용한 CPU 간 데이터 교환의 간단한 방법입니다. 서버 CPU에서 PUT/GET 접근을 활성화해야 합니다. TSEND_C/TRCV_C는 비Siemens 장치 연결이나 사용자 정의 프로토콜을 위한 TCP/UDP 개방형 사용자 통신을 제공합니다. TSEND_C는 하나의 블록에서 연결 관리와 데이터 전송을 처리하며 영구 TCP 연결을 유지합니다.

Watch Table과 Trace는 어떻게 사용하나요?

Watch Table은 변수를 실시간 모니터링하고, 값을 임시 수정하거나, 프로그램을 무시하고 값을 고정 상태로 강제할 수 있습니다. Trace는 오실로스코프처럼 작동합니다. 기록할 변수를 구성하고, 샘플링 속도(S7-1500에서 1ms까지)를 설정하고, 트리거 조건(예: M10.0 상승 엣지)을 정의하고, 지정된 시간 동안 기록합니다. 둘 다 TIA Portal 온라인 메뉴에서 접근합니다.