PLC와 HMI프로그램을 이용해서 업무를 하고있는 오징어입니다.
워드값의 변화를 가지고 비트를 살리려고합니다
스크립트를 이용하면 좀더 다양하게 활용이 가능할것 같아서 질문드립니다.
PLC 내부에서는 충분히 워드를 비트로 변환해서 비트신호 내보내는게 가능하지만 HMI 프로그램이 제한이 많아서 스크립트 도움을 받으려고합니다!
.
워드 A라는 값이 있습니다.
워드 A에 .을 붙이고 0~F를 붙이면 비트가 되는데요
비트 A.0 을 살리면 워드A는 1 값이 들어갑니다.
비트 A.1 을 살리면 워드A는 2 값이 들어갑니다.
비트 A.2 를 살리면 워드A는 4 값이 들어갑니다.
비트 A.4 를 살리면 워드A는 8 값이 들어갑니다.
이런식으로 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 ......A.F 를 입력하면 32768 값이 A 에 입력되죠.
2배씩 값이 올라가지만 해당 비트들이 살았을때 워드에 입력되는 값은 언제나 똑같습니다 .0은 1이 입력되고 4는 8이 입력되구요.
둘다 입력되면 1+8 해서 9가 입력되는 식이죠.
제가 하고 싶은건 A값을 계속 주시하면서 만약 A에 +8이 되었다 싶으면 비트 A.4가 산게 되므로 B.4에 신호를 내보내서 ON시키는겁니다.
비트가 죽을때는 -가 되겠죠.
0~F까지 해당 비트들은 언제나 같은값을 살때는 A에 더하고 죽을때는 A에서 빼는 방식이다보니까 A의 값을 계속 갖고있다가
더해지고 빼지는 값을 캐치해서 '어떤비트가 살았구나' 신호내보내고 '어떤 비트가 죽었구나' 신호 내보내고 이런게 가능한지 알고싶습니다.
물론 살았던 값들은 자기유지를 통해서 유지되고 해당 값이 -될때 깨지는 방식으루요