안녕하세요.
현재 칠러 장비에 rs-232 포트가 있고 이를 sCAN 컨버터로 연결해 PC에서 데이터를 보려고 합니다.
이때 장비의 통신관련 데이터베이스를 가지고있지 않을 경우 데이터 분석을 하는 방법이 있을까요?
아니면 불가능 한가요?
예를 들면 0 19 21 39 56 05 이런 신호를 받았고 이게 온도에 대한 신호라는 것을 안다면
위 신호를 온도값(예> 25도)으로 해석할수 있을까요?
감사합니다.
해결되었습니다! 솔루션으로 이동.
칠러 장비의 온도 변화시에 통신의 변화값을 비교하여 알아내는 방법이 있습니다.
온도 습도 조절을 통해 25도 50% 로 유지하여 값을 기록
다시 온도 50도 40% 로 유지하여 값을 기록
변확하는 부분을 분석하여 실제값과 비교하여 알아내는 방법입니다.
메이커에 문의하는게 더 빠를테지만 불가능하면 위의 방법을 써 보세요.
여러 통신을 해보면, 몇가지 규칙을 정해 놓고 사용하고 있다는 것을 알 수 있는데요
온도값은 2 WORD 정수로 받은 값을 10으로 나누면 값이 된다는 규칙이 있을 때,
통신으로 00 FA 를 받으면, 정수(U16)로 250 이고, 값은 25.0 이다 와 같이 해석하는 것이 그 예입니다.
CAN 통신에서는
0 19 21 39 56 05 라는 데이터를 받았을 때(8bytes)
여기서 총 몇 바이트(혹은 bit)가 온도 값인지를 알아야 하고, 정수형인지 실수형인지 알아야하고 => 데이터 바이트 정보
그렇게 얻어진 값에서 얼마를 곱하고, 더하면 값이 되는지 => 스케일 정보
알아야 값으로 환산 할 수 있습니다. 이 내용이 db에 기록되어 있습니다.
굉장히 단순하게 되어있다는 가정하에서(스케일 정보는 없음),
RS-232 포트로 일단 먼저 칠러에서 보내는 값을 받아 보고, 이것을 CAN 데이터와 비교해 보면 됩니다.