카테고리 없음

PLC RAM 메모리 기초 개념

abc0123 2018. 6. 10. 11:34
반응형

PLC RAM 메모리 기초 개념

우리가 컴퓨터에서 어떤 프로그램을 사용할 때 RAM이라는 메모리가 필요하듯이 PLC 역시 이 녀석이 필요한데요. PLC에서 RAM은 우리가 작성한 프로그램을 저장하고 실행하는 RAM과 프로그램이 돌아갈 때 생성되는 데이터들을 저장하는 RAM으로 구분이 됩니다. (오늘은 초보가 LS 산전의 XBC PLC의 메모리 이론을 공부하면서 그 개념을 정리해보려고 하는데 노트 정리라서 그 깊이는 없습니다.^^;)

 

RAM

 

XBC의 데이터 메모리는 0과 1로 표현할 수 있는 '비트'단위와 16비트, 32비트로 표현할 수 있는 '워드' 단위로 구분할 수 있으며 메모리 크기의 기본 단위는 16비트이고요. 이 크기는 기종마다 다를 수 있지만 그 구성면에서는 크게 다르지 않습니다.

 

 

1. PLC 비트 처리 가능 RAM

①입출력 접점 (P)

PLC에서 데이터를 입력하는 푸시버튼, 전환 스위치, 리미트 스위치, 디지털 스위치, 디지털 센서 등의 ON/OFF 상태를 기억하는 입력 메모리와 그 값들을 바탕으로 실행된 프로그램의 결과에 의해서.... 출력에 사용하기 위한 값을 저장하는 비트 데이터 영역은 P0000~P1023이며 1024 X 16 = 16384점의 입출력 릴레이를 사용할 수 있습니다.

 

PLC는 입력값이 들어왔을 때 그 스위치나 센서 등의 ON/OFF 상태를 직접 체크해서 프로그램을 실행하는 게 아니고 이것들의 상태를 저장하고 있는 RAM의 값... 즉, 그 값이 0인지 1인을 체크해서 프로그램을 실행합니다.

 

출력 역시.... 프로그램의 결과로 산출된 값을 저장하고 있는 곳의 메모리의 데이터를 읽어서 그 값에 따라서 출력단에 연결된 램프나 솔레노이드 밸브 등을 ON/OFF 하게 되는 건데요. 이런 데이터들을 저장할 수 있는 메모리 영역이 입출력 메모리입니다. 그리고 여기서 사용되지 않는 부분은 바로 아래에서 알아볼 내부 비트 메모리(M)와 동일한 방법으로 사용할 수 있다고 합니다.

 

PLC

 

②내부 접점 (M)

이 녀석은 프로그램 실행 중에 필요한 비트 정보를 저장하기 위한 메모리인데요. 읽기와 쓰기가 모두 가능하고요. 앞에서 알아본 입출력 메모리와는 달리 외부에서 어떤 값을 받아들이거나 출력을 제어할 수는 없고 프로그램 내에서만 사용되는 전용 메모리로 M0000~M1023 비트 데이터 영역을 갖고 있습니다.

 

③Keep 정전 유지 (K)

K0000~K4095 영역을 갖고 있으며 이 메모리 사용방법은 비트 메모리와 같지만 전원이 OFF 되어도 데이터 보존이 가능한 게 특징입니다. 전원이 OFF 되어도 지워지지 않는 데이터는 프로그램을 통해서 삭제하거나 프로그램 작성 툴에서 메모리를 지울 수 있고 CPU 모듈 자체의 리셋키를 사용하는 방법 등으로 제거할 수 있습니다.

 

 

④통신 접점 (L)

통신 모듈을 사용할 때 사용하는 이 녀석 역시 사용하지 않을 때는 내부 비트 메모리처럼 사용할 수 있고 L0000~L1023의 영역을 갖고 있습니다.

 

⑤특수 접점 (F)

시스템 운영에 필요한 플래그 메모리로 F0000~F1023 영역을 사용합니다.

 

⑥타이머 (T)

T0000~T1023 비트 데이터 영역을 사용하며 프로그램을 작성하면서 설정한 시간이 되었을 때 작동하는 출력용 비트 메모리입니다.

 

⑦카운터 (C)

C0000~C1023 영역으로 입력 조건의 펄스가 ON 되는 횟수를 체크해서 설정한 값에 도달하면 출력이 ON 되는 비트 메모리입니다.

 

그 외에도 스텝 제어용 비트 메모리인 (S)가 있는데 이 녀석은 기초 개념 정리하면서는 잘 이해가 안 돼서 그냥 이런 것도 있다는 정도만 체크하고 넘어가고 해당 부분을 공부할 때 따로 정리할 계획입니다.

 

메모리

 

2. 워드 단위 처리 메모리

16비트 또는 32비트 단위로 사용하는 데이터를 '워드'라고 하는데.... 이 역시 기초 개념을 잡고 있는 이 과정에서는 모두 이해하기 어려울 거 같으니 대표적인 데이터 레지스터(D)와 파일 레지스터(R)에 대해서만 정리를 해봅니다.

 

①데이터 레지스터(D)는 수치 데이터를 저장하는 16비트 메모리로 -32,768~32767 또는 0000h~FFFFh를 저장할 수 있는데요. 상황에 따라서는 이 녀석 두 개를 합쳐서 32비트로 사용할 수 있고 비트 단위로도 표현이 가능하며 그 비트 위치는 16진수로 표현합니다.

 

②파일 레지스터(R)는 플래시 메모리에 데이터를 저장하며 전원의 ON 여부와는 관계없이 그 내용을 보관할 수 있습니다. 하지만 RAM과 달리 데이터를 저장할 때 시간이 약간 소요되기 때문에 바로 접근해서 실시간 데이터 사용은 불가능하다고 합니다. 그래서 이 문제를 해결하기 위한 방법으로 플래시 메모리에서 파일 레지스터로 데이터를 가져와서 사용하다가 저장할 때 다시 플래시 메모리로 보내는 방법을 사용한다고 합니다. (이 부분도 아직 실습 전이라서 그 과정을 정확히 정리할 수 없으니 이 정도 개념 정리만 하고 넘어갑니다.)

반응형