본문으로 바로가기

변수와 데이터 타입

category Programming/PLC 2024. 5. 14. 12:11
반응형

자동화 설비의 개발자들은 PLC와 같은 로직 컨트롤러를 이용해서 자동화 시스템을 개발합니다.
여기에는 시스템이 돌아가는 동안 처리해야 하는 작업들을 결정하고,
이러한 작업들을 컨트롤러가 이해할 수 있도록 프로그래밍 언어를 이용해서 작성하는데요.
이렇게 완성된 작업물을 프로그램 또는 어플리케이션이라고 부릅니다.

컨트롤러가 실행되는 동안 처리해야 하는 작업들은 설비의 복잡한 정도에 따라 차이가 있겠지만,
꽤 많은 연산 처리 과정을 거치게 되는데요. 
이 과정에서 수많은 데이터들이 참조되기 때문에, 새로운 데이터들이 만들어지기도 하고, 또 수정되기도 합니다. 
이런 데이터들은 컨트롤러가 동작하는 동안 내부의 메모리 풀 (Memory Pool)에 임시든, 반영구적이든 기록이 되므로,
연산을 처리하는 과정에서 메모리 풀에 기록된 데이터를 참조하거나 새로운 데이터로 덮어쓰게 됩니다.

컨트롤러의 메모리 풀은 직접적으로 참조가 가능한 메모리와 그렇지 않은 메모리로 보통 구분됩니다. 
여기서, 직접적으로 참조가 가능한 메모리라 함은,
메모리 위치를 정의하는 고유의 주소 체계에 따라 프로그램에서 직접 접근할 수 있는 메모리를 의미하구요. 
메모리의 주소값만 정확하다면, 메모리에 자유롭게 접근할 수 있고
관련된 데이터를 상황에 따라 가공할 수 있다는 장점을 가집니다. 

반대로, 그렇지 않은 메모리라 함은 컨트롤러로부터 접근 권한을 허가받는 그런 메모리를 의미하는데요. 
프로그램이 실행되는 동안 얼마만큼의 메모리를 사용할 것인지를 컨트롤러로부터 먼저 할당받는 작업이 필요합니다. 
이것을 선언이라고 부르고, 이 과정에서 할당받는 메모리들을 변수라고 부르는데요. 
메모리의 주소값을 통해 접근하는 방식은 프로그램 어디서나 접근할 수 있기 때문에
사용의 측면에서는 편리할 수 있으나,
메모리의 잘못된 참조로 인해 데이터가 오염되는 경우도 발생할 수 있어서
IEC 표준에서는 크게 권하고 있지 않는 방식이구요. 
변수를 통해 간접적으로 접근하는 방식은
선언하는 어떤 권한을 변수에 부여하는지에 따라 접근을 제한할 수도 있고,
변수를 선언하는 과정에서 데이터 타입이 결정되기 때문에
타입에 맞지 않는 데이터가 기록되는 것도 어느 정도 차단해 줄 수 있습니다.

 

이번 글의 주제에 관한 더욱 자세한 내용은 전자책을 통해 확인하실 수 있습니다.
아래 Link를 클릭하면 전자책에 대한 소새글로 이동하오니,
전자책 구매에 관심 있으신 분들은 참고하시기 바랍니다.

[EBook] - EPUB3] ESME - 기본편

 

EPUB3] ESME - 기본편

슈나이더 일렉트릭에서 출시한 장비 제어용 컨트롤러인 M2XX 컨트롤러의 어플리케이션을 개발하는EcoStruxure Machine Expert (줄여서 ESME)에 관한 내용을 다루는 전자책입니다.현재 Machine Expert와 관련

sw-eng.tistory.com

 

반응형

'Programming > PLC' 카테고리의 다른 글

Structured Text  (2) 2024.05.14
FBD와 CFC  (0) 2024.05.14
래더 다이어그램  (2) 2024.05.14
변수의 종류  (0) 2024.05.14
Task와 POU  (0) 2024.05.14