아래 영상을 보고 간단하게 정리한 것임. PLC 메모리에 대해 이해하는데 참 좋은 영상.
https://youtu.be/6sGWWJoihWI?si=LRFnUaMMD7pZxC6c
XGK-CPUUN 기준 메모리 종류
비트 단위는 마지막 값이 비트 번호임. 즉 P00000인 경우 앞의 0000는 워드 번호이고 마지막 0은 비트 번호임.
반면 워드 단위는 모두 워드 번호임. 비트를 표현하고 싶으면 뒤에 점(.)을 써야 함
P: 입출력 접점
입출력 접점P에서 워드번호는 10진수로 표현되고 비트번호는 16진수로 표현됨!
입출력 접점은 고정식과 가변식이 있음.
고정식은 슬롯에 꽂히는 모듈의 입출력 점수(point count)에 상관없이 슬롯별로 4 WORD가 할당됨 증분함. 장점은 다른 점수를 가진 슬롯을 바꿔도 앞뒤로 입출력 번호가 바뀌지 않음. 그래서 프로그램을 수정할 필요가 없음. 대신 입력16의 경우는 P00000~00000F까지만 쓸 수 있으므로 나머지 P00010~P0003F까지는 안쓰는 것으로 그냥 메모리처럼 쓸 수 있게 됨.
반면, 가변식인 실제 모듈의 점수만큼 증분이됨. 만약 다른 점수를 가진 슬롯을 중간에 바꾸면 프로그램 수정을 해야함. 디바이스 바꾸기를 통해 할 수 있음.
M : 내부 접점
비트 단위 메모리임. 워드 단위 메모리는 D임.
레더 코드로 M00000 비트와 M00003 비트가 모두 ON이면 M0002에 있는 Word값을 M0003으로 이동(MOV)하는 명령을 아래처럼 쓸 수 있음. MOV가 WORD 단위로 이동하는 것을 기억해야 함!
K : 정전유지
K는 비트 메모리이면서 래치임. 워드 메모리인 것은 R(파일 레지스터)가 있음. 즉, 전원을 껐다 켜도... 이전 값을 계속 유지함!
주의할 점은 K1000~K2047은 PID기능을 위해 할당된 것이기 때문에 직접 쓰지 않도록 하자!
F : 특수 접점
시스템 플래그이다. 이미 설정되 플래그로, 필요할 때 사용할 수 있음. 가령 RUN 상태인지 확인하려면 F00000을 보면 됨. 20ms 주기로 뭔가 동작시켜야할 필요가 있다면 F00090을 보면 되는 것임.
D: 데이터 레지스터
M과 함께 내부 메모리 중 하나임. M과 다른 건 워 단위임. 워드는 비트와 다르게 워드번호 자체를 다 쓰게 되고. 비트 번호를 쓰려면 점(.)과 비트번호를 붙여야 함.
U: 특수 레지스터
아날로그 고속카운터, 온도, 위치결정 등 이런 특수 모듈들은 모두 U라는 디바이스를 가지게 됨.
Base와 Slot이 있는데 이것은 해당 모듈이 가지고 있는것이 아니라 I/O파라미터에 특수 모듈을 등록하고 모듈 변수 불러오기를 하면 그 꽂힌 위치에 따라서 할당이 됨.
아래처럼 XG5000 에서 모듈 변수 자동 등록을 하면 각 모듈이 꽂힌 위치에 따라서 자동으로 할당된다.
T : 타이머 현재값
타이머는 특정 시간이 되었을 때 ON하도록 함.
XG5000에 기본파라미터 설정-디바이스 영역 설정에 가면 타이머 경계치가 나옴.
T0000~T3999까지는 100ms임. TON T200 100은 T200이므로 100ms이다. 그런데 뒤에 숫자가 100이므로 총 10초가 되는거임.
그래서 아래처럼 레더 다이어그램을 만들면 M00000에 비트가 ON도면 타이머가 동작해 10초가 되면 T0023 값이 ON이 되어 결국 P00020이 ON이 됨.
C: 카운터 현재값
카운터는 신호가 정해진 수만큼 되었을 때 ON됨.
Z: 인덱스 레지스터
인덱스는 Z에 있는 값만큼 더한 주소를 바꾸는 식으로 사용할 수 있음. 많이 사용하는 기능임
D000020[Z001]이고 Z001 = 5이면 5만큼 더한 D000025가 되는 식임.
주의할 사항은 비트인 경우는 비트 단위로 더해야 하고 워드인 경우는 워드 단위로 더해야 한다!
워드 디바이스에 비트 단위에서는 못쓰고 D000009[Z001].1 식으로는 사용가능!
'자동화설비' 카테고리의 다른 글
LS Electric | PLC CPU (0) | 2024.02.29 |
---|---|
CimonD Scada 홍보용 데모 프로젝트 간단하게 살펴보기 (0) | 2024.02.28 |
CimonX Scada 실행화면 (0) | 2024.02.28 |