{ "$schema": "../schema.json", "schemaVersion": 1, "id": "eastron/sdm120ct-40ma", "manufacturer": { "ko": "이스트론", "en": "Eastron" }, "model": "SDM120CT-40mA", "kind": "power-meter", "title": { "ko": "이스트론 SDM120CT-40mA 단상 DIN 레일 다기능 전력량계(40 mA 2차 CT)", "en": "Eastron SDM120CT-40mA single-phase DIN-rail multifunction meter (40 mA secondary CT)" }, "summary": { "ko": "단상 계측값은 input register(FC04)에 IEEE 754 Float32(상위 워드 먼저), 설정은 holding register(FC03 읽기·FC16 쓰기). 일부 설정(F9xx)은 2바이트 한 칸.", "en": "Single-phase measurements are IEEE 754 Float32 input registers (FC04, high word first); settings are holding registers (FC03 read, FC16 write). Some settings (F9xx) are single 2-byte registers." }, "protocols": [ "rtu" ], "comm": { "baud": 9600, "bauds": [ 1200, 2400, 4800, 9600 ], "parity": "none", "stopBits": 1, "unit": 1, "unitRange": [ 1, 247 ], "order": "ABCD", "addressing": "plc", "notes": [ { "ko": "매뉴얼은 30001·40001 꼴 번호와 Hex 시작 주소 칸을 함께 적는다(30001 ↔ 00 00, 40003 ↔ 00 02). 통신 주소 = 번호 − 30001·− 40001, 6자리(461457·463761 등)는 − 400001 (p.16-19).", "en": "The manual lists 30001/40001-style numbers with a Hex start-address column (30001 ↔ 00 00, 40003 ↔ 00 02). Wire address = number − 30001 / − 40001; 6-digit numbers (461457, 463761 …) use − 400001 (p.16-19)." }, { "ko": "주소 기준은 프레임 예로 확인: 30001 L1 전압 읽기 01 04 00 00 00 02 71 CB → 01 04 04 43 66 00 00 0E 1F(230.0) (p.16-17), 40003 읽기 01 03 00 02 00 02 65 CB → 01 03 04 42 70 00 00 EF 90(60.0), 15분 쓰기 01 10 00 02 00 02 04 41 70 00 00 67 91 → 01 10 00 02 00 02 E0 08 (p.19-20). 여섯 프레임 모두 CRC 를 다시 계산해 맞음.", "en": "Addressing confirmed by frame examples: read 30001 L1 voltage 01 04 00 00 00 02 71 CB → 01 04 04 43 66 00 00 0E 1F (230.0) (p.16-17); read 40003 01 03 00 02 00 02 65 CB → 01 03 04 42 70 00 00 EF 90 (60.0); write 15 min 01 10 00 02 00 02 04 41 70 00 00 67 91 → 01 10 00 02 00 02 E0 08 (p.19-20). CRC recomputed and correct for all six." }, { "ko": "Float 은 빅 엔디언 — 첫 레지스터가 상위 16비트 (p.15 응답 프레임 설명, 위 예 43 66 00 00 = 230).", "en": "Float is big-endian: the first register holds the high 16 bits (p.15 response frame description; example 43 66 00 00 = 230)." }, { "ko": "출하값 9600 bps·패리티 없음·국번 1 (p.6 사양표, p.18 40019·40021·40029). 데이터 비트 수는 매뉴얼에 없다.", "en": "Defaults 9600 bps, no parity, address 1 (p.6 spec table, p.18 40019/40021/40029). Data bits are not stated." } ] }, "registers": [ { "table": "input-registers", "address": 0, "manualAddress": "30001", "type": "f32", "order": "ABCD", "name": { "ko": "전압(L-N)", "en": "Line-to-neutral voltage" }, "unit": "V", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 6, "manualAddress": "30007", "type": "f32", "order": "ABCD", "name": { "ko": "전류", "en": "Current" }, "unit": "A", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 12, "manualAddress": "30013", "type": "f32", "order": "ABCD", "name": { "ko": "유효전력", "en": "Active power" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 18, "manualAddress": "30019", "type": "f32", "order": "ABCD", "name": { "ko": "피상전력", "en": "Apparent power" }, "unit": "VA", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 24, "manualAddress": "30025", "type": "f32", "order": "ABCD", "name": { "ko": "무효전력", "en": "Reactive power" }, "unit": "VAr", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 30, "manualAddress": "30031", "type": "f32", "order": "ABCD", "name": { "ko": "역률", "en": "Power factor" }, "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 70, "manualAddress": "30071", "type": "f32", "order": "ABCD", "name": { "ko": "주파수", "en": "Frequency" }, "unit": "Hz", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 72, "manualAddress": "30073", "type": "f32", "order": "ABCD", "name": { "ko": "수전 유효전력량", "en": "Import active energy" }, "unit": "kWh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 74, "manualAddress": "30075", "type": "f32", "order": "ABCD", "name": { "ko": "송전 유효전력량", "en": "Export active energy" }, "unit": "kWh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 76, "manualAddress": "30077", "type": "f32", "order": "ABCD", "name": { "ko": "수전 무효전력량", "en": "Import reactive energy" }, "unit": "kVArh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 78, "manualAddress": "30079", "type": "f32", "order": "ABCD", "name": { "ko": "송전 무효전력량", "en": "Export reactive energy" }, "unit": "kVArh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 84, "manualAddress": "30085", "type": "f32", "order": "ABCD", "name": { "ko": "총 유효전력 디맨드", "en": "Total active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 86, "manualAddress": "30087", "type": "f32", "order": "ABCD", "name": { "ko": "총 유효전력 최대 디맨드", "en": "Maximum total active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 88, "manualAddress": "30089", "type": "f32", "order": "ABCD", "name": { "ko": "수전 유효전력 디맨드", "en": "Import active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "description": { "ko": "표 이름은 «Import active energy demand» 이나 단위는 W", "en": "Table name says 'Import active energy demand' but unit is W" }, "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 90, "manualAddress": "30091", "type": "f32", "order": "ABCD", "name": { "ko": "수전 유효전력 최대 디맨드", "en": "Maximum import active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 92, "manualAddress": "30093", "type": "f32", "order": "ABCD", "name": { "ko": "송전 유효전력 디맨드", "en": "Export active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 94, "manualAddress": "30095", "type": "f32", "order": "ABCD", "name": { "ko": "송전 유효전력 최대 디맨드", "en": "Maximum export active power demand" }, "unit": "W", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 258, "manualAddress": "30259", "type": "f32", "order": "ABCD", "name": { "ko": "전류 디맨드", "en": "Current demand" }, "unit": "A", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 264, "manualAddress": "30265", "type": "f32", "order": "ABCD", "name": { "ko": "전류 최대 디맨드", "en": "Maximum current demand" }, "unit": "A", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 342, "manualAddress": "30343", "type": "f32", "order": "ABCD", "name": { "ko": "총 유효전력량", "en": "Total active energy" }, "unit": "kWh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "input-registers", "address": 344, "manualAddress": "30345", "type": "f32", "order": "ABCD", "name": { "ko": "총 무효전력량", "en": "Total reactive energy" }, "unit": "kVArh", "access": "r", "fc": [ 4 ], "ref": "p.16 (PDF 19)" }, { "table": "holding-registers", "address": 2, "manualAddress": "40003", "type": "f32", "order": "ABCD", "name": { "ko": "디맨드 주기", "en": "Demand period" }, "unit": "min", "access": "rw", "fc": [ 3, 16 ], "range": { "min": 0, "max": 60 }, "description": { "ko": "출하 60. 0 = 실시간(1초마다 갱신)", "en": "Default 60; 0 = real time (updated every second)" }, "ref": "p.17 (PDF 20)" }, { "table": "holding-registers", "address": 12, "manualAddress": "40013", "type": "f32", "order": "ABCD", "name": { "ko": "펄스 출력 폭", "en": "Relay pulse width" }, "unit": "ms", "access": "rw", "fc": [ 3, 16 ], "values": [ { "value": 60, "ko": "60 ms(출하)", "en": "60 ms (default)" }, { "value": 100, "ko": "100 ms", "en": "100 ms" }, { "value": 200, "ko": "200 ms", "en": "200 ms" } ], "ref": "p.17 (PDF 20)" }, { "table": "holding-registers", "address": 18, "manualAddress": "40019", "type": "f32", "order": "ABCD", "name": { "ko": "패리티·정지 비트", "en": "Parity and stop bits" }, "access": "rw", "fc": [ 3, 16 ], "values": [ { "value": 0, "ko": "정지 1비트·패리티 없음(출하)", "en": "1 stop bit, no parity (default)" }, { "value": 1, "ko": "정지 1비트·짝수 패리티", "en": "1 stop bit, even parity" }, { "value": 2, "ko": "정지 1비트·홀수 패리티", "en": "1 stop bit, odd parity" }, { "value": 3, "ko": "정지 2비트·패리티 없음", "en": "2 stop bits, no parity" } ], "ref": "p.17-18 (PDF 20-21)" }, { "table": "holding-registers", "address": 20, "manualAddress": "40021", "type": "f32", "order": "ABCD", "name": { "ko": "Modbus 국번", "en": "Modbus address" }, "access": "rw", "fc": [ 3, 16 ], "range": { "min": 1, "max": 247 }, "description": { "ko": "출하 1", "en": "Default 1" }, "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 28, "manualAddress": "40029", "type": "f32", "order": "ABCD", "name": { "ko": "통신 속도", "en": "Baud rate" }, "access": "rw", "fc": [ 3, 16 ], "values": [ { "value": 0, "ko": "2400 bps", "en": "2400 bps" }, { "value": 1, "ko": "4800 bps", "en": "4800 bps" }, { "value": 2, "ko": "9600 bps(출하)", "en": "9600 bps (default)" }, { "value": 5, "ko": "1200 bps", "en": "1200 bps" } ], "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 50, "manualAddress": "40051", "type": "f32", "order": "ABCD", "name": { "ko": "CT 1차 전류", "en": "CT primary current" }, "unit": "A", "access": "rw", "fc": [ 3, 16 ], "range": { "min": 5, "max": 9999 }, "description": { "ko": "출하 5", "en": "Default 5" }, "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 60, "manualAddress": "40061", "type": "f32", "order": "ABCD", "name": { "ko": "백라이트 시간", "en": "Backlight time" }, "unit": "min", "access": "rw", "fc": [ 3, 16 ], "range": { "min": 0, "max": 121 }, "description": { "ko": "0 = 늘 켬, 121 = 늘 끔, 출하 60", "en": "0 = always on, 121 = always off, default 60" }, "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 86, "manualAddress": "40087", "type": "f32", "order": "ABCD", "name": { "ko": "펄스 1 출력 대상", "en": "Pulse 1 output mode" }, "access": "rw", "fc": [ 3, 16 ], "values": [ { "value": 1, "ko": "수전 유효전력량", "en": "Import active energy" }, { "value": 2, "ko": "수전 + 송전 유효전력량", "en": "Import + export active energy" }, { "value": 4, "ko": "송전 유효전력량(출하)", "en": "Export active energy (default)" }, { "value": 5, "ko": "수전 무효전력량", "en": "Import reactive energy" }, { "value": 6, "ko": "수전 + 송전 무효전력량", "en": "Import + export reactive energy" }, { "value": 8, "ko": "송전 무효전력량", "en": "Export reactive energy" } ], "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 61456, "manualAddress": "461457", "type": "u16", "name": { "ko": "리셋", "en": "Reset" }, "access": "w", "fc": [ 16 ], "values": [ { "value": 0, "ko": "최대 디맨드 리셋", "en": "Reset maximum demand" } ], "description": { "ko": "2바이트 Hex(F0 10)", "en": "2-byte hex (F0 10)" }, "ref": "p.18 (PDF 21)" }, { "table": "holding-registers", "address": 63760, "manualAddress": "463761", "type": "u16", "name": { "ko": "펄스 1 정수", "en": "Pulse 1 rate" }, "access": "rw", "fc": [ 3, 16 ], "values": [ { "value": 0, "ko": "0.001 kWh/imp(출하)", "en": "0.001 kWh/imp (default)" }, { "value": 1, "ko": "0.01 kWh/imp", "en": "0.01 kWh/imp" }, { "value": 2, "ko": "0.1 kWh/imp", "en": "0.1 kWh/imp" }, { "value": 3, "ko": "1 kWh/imp", "en": "1 kWh/imp" } ], "description": { "ko": "2바이트 Hex(F9 10)", "en": "2-byte hex (F9 10)" }, "ref": "p.19 (PDF 22)" } ], "notes": [ { "ko": "뺀 레지스터: 463779 계량 모드(번호 463779 는 F9 22 인데 Hex 칸은 F9 20 — 어느 쪽이 맞는지 예가 없음, p.19), 463745 화면 자동 넘김 시간(형식 BCD), 464513 일련번호(unsigned int32 — 워드 순서가 매뉴얼에 없음).", "en": "Left out: 463779 metering mode (number 463779 means F9 22 but the Hex column says F9 20; no example decides, p.19), 463745 scroll display time (BCD format), 464513 serial number (unsigned int32 — word order not stated)." }, { "ko": "Float 계측값·설정은 2개씩(짝수 시작) 읽고 쓴다. 이 매뉴얼은 40 mA CT 형만 다룬다 — 다른 SDM120 형번은 각자의 매뉴얼로 확인.", "en": "Read/write Float values as register pairs (even start). This manual covers the 40 mA CT version only; check other SDM120 variants against their own manuals." } ], "sources": [ { "title": "SDM120CT-40mA User Manual", "publisher": "Eastron Electronic Co., Ltd.", "edition": { "ko": "2026 V1.0 (판 이력 1.0 = 2026-07-16 첫 판), 파일명 EastronSDM120CT-M40mAUsermanualV10.pdf (eastrongroup.com 다운로드 센터 2026-07-17 게시)", "en": "2026 V1.0 (version history 1.0 = 2026-07-16 initial issue); file name EastronSDM120CT-M40mAUsermanualV10.pdf (posted 2026-07-17 on the eastrongroup.com download center)" }, "url": "https://www.eastrongroup.com/eastrongroup/2026/07/17/EastronSDM120CT-M40mAUsermanualV10.pdf", "pages": { "ko": "인쇄 p.6 통신 사양, p.14-15 프레임 형식, p.16-17 입력 레지스터·예, p.17-20 홀딩 레지스터·예 (PDF 쪽 = 인쇄 쪽 + 3)", "en": "printed p.6 comm specs, p.14-15 frame format, p.16-17 input registers and example, p.17-20 holding registers and examples (PDF page = printed + 3)" }, "checked": "2026-10-29" } ] }