본문 바로가기
PLC 전기제어 기술자료/PLC를 함수화 해보자!

[MELSEC] PLC 프로그램을 함수화 해보자 -4- (범위지정 랜덤값 생성)

by 위치결정 2022. 4. 25.
반응형

< XCALL을 활용한 랜덤 생성 함수 예제 >

 

PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다.

하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다.

PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다.

 

이번에는 네번째로 다뤄볼 기능으로 각종 테스트 하다보면  간간히 필요한 랜덤값 생성 입니다.

미츠비시 PLC에서 제공하는 랜덤명령어는 0 ~ 32767 의 정수형 값만 생성을 하기때문에 내가 원하는 값을 얻을려면 많은 연산을 해야합니다.

 

특히나 내가 원하는 영역의 값 (예를들어 -5 ~ 10) 을 지정하기가 생각보다 간단하지 않죠

하지만 이러한 랜덤값 생성을 콜문형 함수화하여 편리하게 사용할수있습니다.

아주 편리합니다.

random()_220427.gxw
0.92MB

 

< 함수 활용법 >

CALL을 통해 함수를 호출하고, 인수 파라미터로는 랜덤값으로 얻을 최소값, 최대값, 저장할 데이터레지스터 어드레스 를 지정하면됩니다. 

 

기본적인 구현 방법은 기존에 이미 포스팅했던 스케일 변환과 음수랜덤값 생성 을 합친 것입니다.

혹시라도 이해가 안되신다면 과거의 글을 보고 오시는것도 좋을것 같네요.

랜덤으로 생성된 값을 원하는 최소값과 맥스값으로 스케일 변환 하는것이 이번 기능의 큰 맥락입니다.

 

 

[MELSEC Q] PLC프로그램을 함수화 해보자 -1- (SCALE 변환)

< XCALL을 활용한 SCALE 함수화 예제 > PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞

plcman.tistory.com

 

< 결과 >

굉장히 편리합니다.

반응형

댓글