본문 바로가기
반응형

PLC 전기제어 기술자료/PLC를 함수화 해보자!7

[MELSEC] PLC 프로그램을 함수화 해보자 -7- (모든 CRC-16 코드 생성) 지난 글에서 CRC-16/MODBUS 를 생성하는 함수를 만들었었습니다. 이를 통해서 시리얼통신을 이용하여 MODBUS RTU 프로토콜로 교신시 CRC-16 체크섬 코드를 생성하여 송수신 할수 있죠. 하지만 CRC-16 코드는 MODBUS만 있는게 아닙니다. MODBUS 프로토콜에서 사용하는 다항식 0x8005 를 사용하는 CRC-16 알고리즘만 살펴봐도 USB, BUYPASS, ARC, MAXIM 등 다양하게 있고 CCITT 로 대표되는 다항식 0x1021 을 사용하는 CRC-16 알고리즘도 CCITT-FALSE, AUG-CCITT, XMODEM, GEN.. 2023. 5. 9.
[MELSEC] PLC 프로그램을 함수화 해보자 -6- (CRC-16/MODBUS 코드 생성) PLC는 손쉽게 그림 그리듯 래더라는 도식화된 독특한 언어체계와 PLC 메이커에서 제공하는 펑션, 명령어들을 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 설비의 규모가 커질수록 같은 동작의 프로세스라고 할지라도 프로그램을 여러 유니트에 맞추어 일일이 어드레스를 변경하거나 복사해가며 번거롭게 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 반복적으로 사용할수 있는 프로그램을 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 이번에는 모드버스RTU 시리얼통신을 할때면 무조건 등장하여 많은 사람들의 골머리를 썩게 만들었던 CRC-.. 2023. 3. 1.
[MELSEC] PLC 프로그램을 함수화 해보자 -5- (랜덤문자열 생성) PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 이번에는 다섯번째로 다뤄볼 기능으로 네번째글에서 다뤘던 것처럼 비슷한 여러가지 테스트를 하다보면 문득 필요한 랜덤한 문자열 생성 입니다. 내가 원하는 문자의 갯수를 지정하여 랜덤한 문자열을 생성합니다. 이 또한 아주 편리합니다. CALL을 통해 함수 호출하고, 파라미터로는 생성할.. 2022. 4. 26.
[MELSEC] PLC 프로그램을 함수화 해보자 -4- (범위지정 랜덤값 생성) PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 이번에는 네번째로 다뤄볼 기능으로 각종 테스트 하다보면 간간히 필요한 랜덤값 생성 입니다. 미츠비시 PLC에서 제공하는 랜덤명령어는 0 ~ 32767 의 정수형 값만 생성을 하기때문에 내가 원하는 값을 얻을려면 많은 연산을 해야합니다. 특히나 내가 원하는 영역의 값 (예를들어 -5 ~ 10) 을 지.. 2022. 4. 25.
[MELSEC] PLC 프로그램을 함수화 해보자 -3- (체크섬 생성) PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 이번에는 세번째로 다뤄볼 기능으로 시리얼통신을 하다보면 은~그으은~히 스트레스가 되는 체크섬 Checksum 입니다. 이 기기, 저 기기 와 통신 프로토콜을 하다보면 가끔씩 튀어 나오는 존재라서 그때그때 프로그램하기 참 귀찮은 친구입니다. 그래서 체크섬 생성을 콜문형 함수화 해놓고 사용하기로 했습.. 2022. 2. 28.
[MELSEC] PLC 프로그램을 함수화 해보자 -2- (문자열 스플릿) PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 이번에는 두번째로 다뤄볼 예문으로 지난번에 다루었던 SCALE 기능과 마찮가지로 과거에 제가 한번 다루었었던 콤마(,)로 문자열을 나누는 스플릿 기능을 XCALL을 활용하여 함수화 해봅니다. 해당 과거글을 참고해보시면 이해에 조금더 도움이 되실것입니다. 2022.01.22 - [PLC .. 2022. 2. 20.
[MELSEC] PLC 프로그램을 함수화 해보자 -1- (스케일 변환) PLC는 손쉽게 그림 그리듯 래더라는 언어를 이용하여 프로그램 할수 있는 뛰어난 자동화 제어장치입니다. 하지만 단점이 있으니 프로그램을 여러 유니트에 맞추어 어드레스를 변경해가며 일일이 복사해서 코딩을 해주어야 한다는 점입니다. PLC에서도 간단한 기능들은 CALL이나 XCALL 문을 이용하여 함수화 할수 있으니 이를 활용하면 보다 프로그램이 간단해 질것입니다. 제가 과거에 한번 다뤄봤었던 입력값의 스케일 변환 출력 프로그램을 샘플로 XCALL을 활용한 펑션화하여 새롭게 업로드합니다. [참고글 : [래더] 스케일 변경 프로그램 [SCL 명령어, 래더시퀀스 2개 버전] https://cafe.naver.com/cplc/245772 [래더] 스케일 변경 프로.. 2022. 2. 19.
반응형