반응형
78M6610이나 78630으로 전력값을 가져오면 CT의 방향에 따라 마이너스( - )값이 나타납니다.
레지스터 테이블을 보면 전압과 전류는 부호가 없지만, 전력은 부호가 있습니다.
즉 CT를 반대로 연결하면 마이너스 값이 발생합니다.
단상인 78M6610의 경우 마이너스 값이 나오면 플러스로 바꿔주면 됩니다.
1 2 3 4 5 6 7 | if (((data >> 23) & 0x01) == 1) { //minus data -= 1; data = (0xffffff - data); data = (data *0.05); }else{ //plus data = (data *0.05); } | cs |
전압과 전류는 플러스값으로만 표현되니 상관이 없고,
전력의 경우 signed 24bit 인데 제일 앞자리는 부호입니다.
Line 1 : 부호가 1이면 마이너스 입니다.
Line 2~4 : 2의 보수방식이라 계산해주면 부호를 뺀 값을 얻을 수 있습니다.
Line 6 : 플러스이므로 그대로 하면 됩니다.
3상의 경우도 마찬가지로 전력값만 마이너스 값이 존재합니다.
1 2 3 4 5 6 7 8 9 | if (((data >> 23) & 0x01) == 1) { //minus data -= 1; data = (0xffffff - data); data = (data * Wscale) / 100.; //because send Wh(1000. ->100.) }else{ //plus data = (data * Wscale) / 100.; //because send Wh(1000. ->100.) } | cs |
Line : 3상도 24bit중 첫 bit로 부호를 판별합니다.
그리고 단상과 마찬가지로 마이너스의 경우 플러스로 만들어 줍니다.
주의 할 점은 CT 3개를 각각 읽어야 합니다.
만약 CT 3개의 평균값으로 읽으면 정확한 값이 나오지 않게 됩니다.
예를들어 CT가 3개중 1~2개가 반대로 연결되어 있는경우
1번 CT가 10Wh, 2번 CT가 -8Wh, 3번 CT가 8Wh인데 WATT_3(평균값)을 읽어오게 되면
26Wh가 10Wh로 표시됩니다.
값은 터무니 없이 낮게 나오게 되죠.
따라서 CT의 방향을 정확하게 연결을 하던지, 각각의 CT값을 읽어 더해줘야 합니다.
다음 포스팅에서 CT를 올바르게 연결할 수 있는 방법에 대해 올리겠습니다.
반응형
'Study > MAXIM 78M661X' 카테고리의 다른 글
ESP8266이용하여 웹으로 CT 바르게 연결하기 (0) | 2019.03.07 |
---|---|
CT값에 따른 burden 저항값 구하기 (0) | 2018.01.09 |
accum 레지스터를 이용한 전력량값 누적값 변경 (0) | 2016.11.17 |
UART baudrate 변경하기 (0) | 2016.07.06 |
MAX78630 SSI ID, Total Watt (0) | 2016.07.05 |