Welcome to My World (www.dgmayor.com)

하드웨어/PLC 관련... 프로젝트 (3)

1. MELSEC 명령어

dgmayor 2022. 11. 15. 13:04
728x90
디바이스
 
비트 디바이스, 주로 ON/OFF신호를 취급
X 입력
Y 출력
M 내부 릴레이
L 래치 릴레이
S 스탭 릴레이
B 링크 릴레이
F 애넌시애이터
 
워드 디바이스, 주로 데이터를 취급, 16비트로 1워드를 구성
T 타이머
C 카운터
D 데이터 레지스터
W 링크 레지스터
R 파일 레지스터
Z, V 인덱스 레지스터
N 네스팅
P 포인터
I 인터럽트용 포인터
K 10진 정수
H 16진 정수
 
SET : 입력조건이 ON으로 되면 지정된 디바이스를 ON으로 하고, 입력조건이 OFF가 되어도 ON상태를 유지한다
RST : 지정된 디바이스를 OFF상태로 한다.
PLS : 펄스 입력조건이 올라갈때 지정된 디바이스의 1스캔 ON명령(예: PLS M5)
PLF : 펄스 입력조건이 내려갈 때 지정된 디바이스의 1스캔 ON명령(예: PLF M0)
MC : 마스터 컨트롤(시작)
MCR : 마스터 컨트롤 리셋(종료)
CJ : 조건 점프즉시 실행 조건 점프
SCJ : 에스 조건 점프, 스캔 한번 후의 실행 조건 점프
CALL(P) : 서브 루틴 프로그램 실행
RET : 리턴, 서브 루틴 프로그램 실행
FEND : 에프앤드, 타이머 카운터의 현재값을 처리하거나 자기 진단을 한 다음 0스텝부터 다시 연산을 시작한다
 
수치데이터
K : 10진수표현
BIN : 2진수표현
H : 16진수표현
BCD : 2진화 10진수
 
전송 명령
MOV(P) : 데이터(16비트) 전송(예 : MOV T0 D0), 변화하는 데이터를 읽을 때는 MOV, 순간전송에는 MOVP명령을 사용
BIN(P) : BCD->BIN 데이터 변환 명령(예 : BIN K4X20 D5), K4X20:4자리 데이터 1234를 읽습니다
BCD(P) : BIN->BCD 데이터 변환 명령(예 : BCD T0 K2Y40), 7SEGMENT 등에 표현할시 사용
FMOV(P) : 동일 데이터의 일괄 전송(예 : FMOVP K365 D0 K8), 입력조건이 ON되면 1에서 지정한 디바이스 내용을 2에서 지정한 3개의 디바이스로 전송한다
BMOV(P) : 블록 데이터의 일괄 전송(예 : BMOVP D0 D32 K16), 입력조건이 ON되면 1에서 지정한 디바이스를 선두로하여 디바이스에 저장되어있는 3개의 데이터를 2에서 지정한 디바이스를 선두로하는 3개의 디바이스로 일괄 전송한다.
 
비교연산
E= : 같다(예 : = K20 C10)
E<> : 같지않다
E> : 작다
E>= : 작거나같다
E< : 크다
E<= : 크거나같다
 
 
사칙연산
+P : 더하기(INCP D0 = +P K1 D0)
-P : 빼기(DECP D2 = -P K1 D2)
*P : 곱셈(*P K30 D0 D10)
/P : 나눗셈(/P D0 K600 D20 D21), D20몫, D21 나머지
 
문자열 비교
$= S1 S2 : S1문자열과 S2문자열을 1문자 씩 비교한다
 
블록데이터비교
BKCMP= S1 S2 D n : S1에서 n점 분의 데이터와 S2에서 n점 분의 데이터를 1워드 단위로 비교하고 비교 결과를 D에서 지정한 비트 디바이스에서 n점 분에 쓰기한다
 
프로그램 분기명령
CJ : 입력조건이 성립하면 PN으로 점프(CJ Pn)
SCJ : 입력조건이 성립하면 다음 스캔부터 Pn으로 점프(SCJ Pn)
JMP : 무조건 Pn으로 점프(JMP Pn)
GOEND : 입력조건이 성립하면 END 명령으로 점프
 
프로그램 실행 제어 명령
DI : 인터럽트 금지
EI : 인터럽트 허가
IMASK : 인터럽트 프로그램마다 인터럽트 금지/허가를 한다(IMASK S)
IRET : 허가 설정 복귀, 인터럽트 프로그램에서 시스템 프로그램으로 복귀한다
 
RFS : I/O리프레시, 1스캔의 도중에 해당하는 입출력 부분을 리프레시한다
 
특수릴레이
SM400 : 항상 ON한다
SM401 : 항상 OFF한다
SM409 : 5MS마다 ON/OFF 반복한다
SM410 : 0.1초마다 ON/OFF
SM411 : 0.2초마다 ON/OFF
SM412 : 1초마다 ON/OFF
SM413 : 2초마다 ON/OFF 
 
단축키
새 프로젝트 : ctrl + n
프로젝트 열기 : ctrl + o
프로젝트 덮어쓰기 : ctrl + s
인쇄 : ctrl + p
래더 잘라내기/붙여넣기 실행취소 : ctrl + z
클립보드에 선택된 내용 잘라내기/저장 : ctrl + x
클립보드에 선택된 내용 저장 : ctrl + c
클립보드에 내용 붙여넣기 : ctrl + v
 
프로젝트 데이터 리스트 표시 또는 숨기기 : alt + 0
디바이스 테스트 : alt + 1
스킵 실행 : alt + 2
부분 실행 : alt + 3
스텝 실행 : alt + 4
리모트 작동 : alt + 6
프로젝트 데이터 리스트와 각 윈도우간 전환 : alt + 7
네트워크 파라미터 설정 다이얼로그로 전환 : alt + 8
 
행삽입 : shift + ins
행삭제 : shift + del
쓰기모드전환 : f2
읽기모드전환 : shift + f2
스테이트먼트 표시 또는 숨기기 : ctrl + f7
표시노트표시 또는 숨기기 : ctrl + f8
기계이름표시 또는 숨기기 : alt + ctrl + f6
모든 창의 모니터링 시작 : ctrl + f3
모든 창의 모니터링 정지 : alt + ctrl + f3
 
래더 및 리스트간 전환 : alt + f1
접점또는 코일찾기 : alt + ctrl + f7
 
열삽입 : ctrl + ins
열삭제 : ctrl + del
현재편집중인프로그램전환 : f4
현재편집중인프로그램모두전환 : alt + ctrl + f4
run 중 쓰기 : shift + f4
코멘트표시또는숨기기 : ctrl + f5
모니터모드로전환, 모니터링시작 : f3
모니터로 전환,시작(쓰기모드) : shift + f3
래더입력동안 래더보기에서 커서이동 : ctrl + 커서키
모니터링 정지 : alt + f3
코멘트편집 : 디바이스이름=코멘트내용(x0=리미트 스위치 1)
노트편집 : 코일명령;노트내용(out y0;시동모터 1)

 

 

 

※ 주의사항 

본 블로그는 수업 내용을 바탕으로 제가 이해한 부분을 정리한 블로그입니다.
내용에 신빙성이 없으니 참고로만 보시고, 틀린 부분이 있다면 지적 부탁드립니다!

감사합니다😁

 

안녕하세요!!

오늘은 아래와 같은 내용을 확인해보겠습니다.

 

T(Timer) 명령어

ON DELAY TIMER

OFF DELAY TIMER

ONE SHOT TIMER

FLICKER TIMER (깜빡이 타이머)

RETENTIVE TIMER (적산 타이머)

STMR TIMER (특수기능 타이머)


# T(Timer) 명령어 #

미쓰비시 PLC 타이머는 크게 2종류의 타이머가 있습니다.


첫번째, ON DELAY TIMER : LOW SPEED / HIGH SPEED
두번째, RETENTIVE TIMER(적산 타이머) : LOW SPEED / HIGH SPEED

→ 적산 타이머도 ON DELAY TIMER 기반
※ OFF DELAY TIMER는 기본적으로 제공하지 않음

 

이번 글에는 위의 두가지 타이머 뿐만아니라 몇가지 더 소개를 해 드리겠지만

첫번째 타이머인 ON DELAY TIMER에서 파생되는 타이머라 생각하시면 편하실 것 같습니다.

 

※ TIMER를 사용하기에 앞서 기본적으로 타이머 설정값을 정해주셔야 합니다.

타이머 기본값 설정 방법 : (좌측메뉴창)Parameter → PLC Parameter → PLC System

Low Speed : 계측범위 → 1ms ~ 1000ms // 초기값 → 100ms(0.1초)
High Speed : 계측범위 → 0.01ms ~ 100ms //초기값 → 10ms (0.01초)

 

1. ON DELAY TIMER

 ON DELAY TIMER도 저속과 고속 타입이 있지만 주로 저속타입을 많이 사용합니다.

 

  1) 저속

저속타이머 래더 프로그램

  - 사용방법 : F7 "Coil" 선택 → "T0 K100" 입력 (0번 타이머 10초 지정)

  - 저속 타이머 기본 설정값 : 100ms

  → 100ms x 100 = 10s

  - 시간 설정 가능 범위 : K1 ~ K32767 → 초과하는 시간은 카운터로 설정해주어야 합니다.

 

 2) 고속 

고속타이머 래더 프로그램

  - 사용방법 : 사용방법 : F7 "Coil" 선택 → "H T1 K100" 입력 (1번 고속 타이머 1초 지정)

  - 고속 타이머 기본 설정값 : 10ms(0.1초)

  → 10ms x 100 = 1s

 


 2. OFF DEALY TIMER

 미쓰비시 PLC는 OFF DELAY TIMER를 기본 제공하지 않습니다.

 하지만 ON DELAY TIMER를 조합하여 OFF DELAY TIMER 기능을 구현할 수 있습니다.

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;타임차트&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; OFF DELAY TIMER 래더 프로그램&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;

 - OFF DELAY TIMER는 말 그대로 출력신호가 OFF되는데 TIMER 설정 시간 만큼 걸린다고 생각하시면 될 것 같습니다.
타이머가 동작하기 전까지 입력신호(X2)를 주기적으로 주게되면 OFF DELAY TIMER는 계속 초기화 됩니다.

 

 3. ONE SHOT TIMER(원 샷 타이머) 

 원 샷 타이머는 말 그대로 처음 입력신호를 주자마자 동작하는 타이머입니다.

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;타임차트&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ONE SHOT TIMER 래더 프로그램&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;

 - OFF DELAY TIMER와 차이점은 [T0 K100] 앞에 별도의 B접점 입력신호가 없습니다.


 4. FLICKER(깜빡이) TIMER

FLICKER TIMER는 주기적인 설정시간동안 꺼졌다 켜졌다를 반복하는 타이머 입니다.

ON DELAY TIMER 방식과 특수릴레이를 활용하는 방식으로 나뉩니다.

 1) ON DELAY TIMER 방식

&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;타임차트&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; FLICKER(온 딜레이) 래더 프로그램&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;

 2) 특수릴레이 활용 방식

 미리 정의된 특수 릴레이 중에 하나인 SM명령어를 활용하여 FLICKER 기능을 구현 가능합니다.

특수릴레이 번호 / 명칭 / 기능

 - SM401 : (테스트를 진행할 때) 테스트에 해당하지 않는 회로 앞단에 부착해서 사용합니다.

 - SM402, SM403 : 복잡한 응용 명령어를 다룰때 사용합니다.

 - SM409 ~ SM413 : FLICKER 접점에 사용됩니다. (주로 SM412)

FLICKER(특수릴레이) 래더 프로그램

 - SM412 명령어를 활용하면 정주기 클럭의 단순한 플리커 프로그램을 위와 같이 만들 수 있습니다.


5. RETENTIVE TIMER

RETENTIVE TIMER는 우리나라말로 적산 타이머라 부르며 ON DELAY TIMER를 기반으로 하고 있습니다.

 - 사용방법 : F7 "Coil" 클릭 → [ ST0  K100 ] 입력

 

 ※ RETENTIVE TIMER를 사용하기에 앞서 기본적으로 적산타이머 디바이스 포인터를 수정해주셔야 합니다.

 적산타이머 기본값 설정 방법 :
 (좌측메뉴창) Parameter → PLC Parameter → Device → Retentive Timer 의 Device Points 값을 설정해준다.
 (Data Register가 제일 값이 크므로 하나를 빼준다.)

 적산타이머를 설정 후에 PLC 프로그램을 다운로드하면 반드시 CPU RESET을 실시하셔야합니다.

 

RETENTIVE TIMER 래더 프로그램

 - 일반적인 타이머와는 다르게 입력신호를 눌렀다 뗐다를 반복해도 타이머 시간이 축적됩니다.
  (일반 타이머의 경우 0으로 초기화)

 - 반드시 RST를 사용해서 적산타이머를 초기화 해주어야 합니다. 


6. STMR(특수기능 타이머)

총 4종류의 타이머 기능을 사용할 수 있는 명령어 입니다. (저속 타이머 기반)

- 사용방법 : F7 "Coil" 클릭 → —[STMR  s`  n`  d`]— (ex. [STMR T0 K50 M0])

  • s` : 타이머 번호
  • n` : 타이머 설정 시간 (K1 ~ K32767 설정 가능)
  • d` : 특수기능

    ※ M0으로 설정하면 눈에는 보이지 않지만 자동으로 0~3까지 특수기능 타이머가 설정 됩니다.
STMR(특수기능) TIMER 래더 프로그램
 
 
 
728x90

'하드웨어 > PLC 관련... 프로젝트 (3)' 카테고리의 다른 글

6.PLC 설명  (0) 2022.11.29
5. Plc 엘리베이터  (0) 2022.11.28
4. CC-Link 설명 2  (0) 2022.11.21
3. CC-Link 설명 1  (0) 2022.11.21
2. 시퀀스 신호등  (0) 2022.11.21