# Property of PMA Electrical Solutions, LLC. # # Schneider Electric Altivar Soft Starter ATS430, embedded Modbus RTU on the # VP12S RJ45 port. Exact-family source: PKR63401.01 (11/2024), pp.36-40 # serial/defaults/base monitoring, pp.45-55 CiA402 state/command/status, # pp.61-63 extended state, pp.69-73 scanner addresses, pp.75-84 diagnostics. # Logic addresses are direct zero-based PDU addresses (PKR63401 pp.26-30). # # Set ADD @6001 to 1..247. Standard Profile uses CMD @8501; select embedded # Modbus as command channel per pp.47-49. In 3-wire/hardwired mode DI1 must # remain energized. Keep [Term word order] TWO @6006 at its factory ON setting # for the 32-bit monitors below (high word first). ATS430 has no speed or # direction reference. name = "Schneider Altivar Soft Starter ATS430" vendor = "Schneider Electric" device_type = "soft_starter" verified = false probe_register = 3201 [serial] baudrate = 19200 parity = "E" stopbits = 1 [monitor] status_word = { address = 3201, bits = { 0 = "READY_TO_SWITCH_ON", 1 = "SWITCHED_ON", 2 = "RUNNING", 3 = "FAULT", 4 = "VOLTAGE_ENABLED", 5 = "QUICK_STOP_N", 6 = "SWITCH_ON_DISABLED", 7 = "WARNING", 9 = "LOCAL_ACTIVE_N", 14 = "STOP_KEY_N" } } internal_state = { address = 3206 } # LCR's step is 0.1 A or 1 A according to rating; expose raw rather than lie. motor_current_raw = { address = 3204 } motor_thermal_state = { address = 9630, unit = "%" } motor_run_time = { address = 3244, words = 2, unit = "s" } # TWO=ON required energy_consumed = { address = 10652, words = 2, unit = "kWh" } # TWO=ON required [control] command_register = 8501 step_delay = 0.05 stop = [0x0006] run_fwd = [0x0006, 0x0007, 0x000F] reset = [0x0000, 0x0080, 0x0000] [control.watchdog] interval_ms = 50 fault = "SLF1 Modbus Com Interruption" [running_check] register = 3201 bit = 2 [faults] register = 8606 # [faults.codes] is deliberately absent. PKR63401.01 pp.75-84 identifies # ERRD @8606 and names diagnostic mnemonics, but never maps a numeric ERRD # value to them. Schneider's exact-family Communication Parameter Addresses # PKR63400 endpoint currently redirects to the Schneider account sign-in and # cannot be cached without credentials. Do not import ATS480/ATS490 values. [connection] summary = "Connect to the ATS430 embedded Modbus interface; no fieldbus option card is required for the documented serial path." warnings = ["Lock out the drive/starter before opening covers or moving switches.", "Keep communications cable at least 30 cm from line and motor wiring.", "Prove read-only communication with the motor inhibited before enabling network control."] [[connection.methods]] id = "vp12s_rs485" title = "Modbus VP12S RJ45" transport = "serial" hardware = "built_in" port = "Modbus VP12S RJ45 socket" connector = "RJ45; pin 4 D1, pin 5 D0, pin 8 Common; pin 7 is vendor peripheral power" adapter = "Isolated USB-to-RS-485 adapter" cable = "VW3A8306D30 RJ45-to-stripped Modbus lead or equivalently pinned shielded twisted-pair cable" parts = ["Isolated USB-to-RS-485 adapter", "Shielded twisted pair plus common conductor", "End termination for a multidrop bus"] steps = ["Lock out the equipment and verify it is de-energized.", "Locate Modbus VP12S RJ45 socket.", "Wire D1, D0 and Common exactly as shown below; leave the peripheral-power pin unused.", "Route the communications cable at least 30 cm from power conductors and terminate only the two physical ends.", "Restore control power with the motor inhibited and verify a read before enabling control."] setup = ["Set ADD @6001 to a unique 1..247 address.", "Keep TWO @6006 ON for the documented 32-bit word order.", "Select embedded Modbus as the command channel", " in 3-wire mode keep DI1 energized."] warnings = ["Do not connect adapter power to the vendor peripheral-power pin.", "Connect only the documented data and Common conductors."] source = "Schneider PKR63401.01 (11/2024), pp. 16-20 and 36-40." [[connection.methods.wiring]] adapter = "D1 / B / +" device = "RJ45 pin 4 — D1" signal = "RS-485 D1" [[connection.methods.wiring]] adapter = "D0 / A / -" device = "RJ45 pin 5 — D0" signal = "RS-485 D0" [[connection.methods.wiring]] adapter = "COM / signal common" device = "RJ45 pin 8 — Common" signal = "Signal reference" [[connection.methods]] id = "open_style_rs485" title = "Open-style Modbus terminal" transport = "serial" hardware = "built_in" port = "Open-style Modbus communication port" connector = "D1, D0, COM and PE terminals" adapter = "Isolated USB-to-RS-485 adapter" cable = "Shielded twisted pair plus a signal-common conductor" parts = ["Isolated USB-to-RS-485 adapter", "Shielded twisted pair plus common", "Small screwdriver"] steps = ["Lock out and verify zero voltage.", "Locate the red-marked open-style Modbus port.", "Land D1, D0, COM and the shield/PE exactly as shown below.", "Terminate only the physical bus ends, then restore control power with the motor inhibited.", "Verify a read before selecting network control."] setup = ["Set ADD @6001 to a unique 1..247 address.", "Keep TWO @6006 ON for the documented 32-bit word order.", "Select embedded Modbus as the command channel", " in 3-wire mode keep DI1 energized."] warnings = ["Do not use both communication ports with different PLCs; communication interruption may not be detected.", "Use the VP12S port only for a display terminal while the open-style port is connected to an external controller."] source = "Schneider PKR63401.01 (11/2024), pp. 16-20 and 36-40." [[connection.methods.wiring]] adapter = "D1 / B / +" device = "D1" signal = "RS-485 D1" [[connection.methods.wiring]] adapter = "D0 / A / -" device = "D0" signal = "RS-485 D0" [[connection.methods.wiring]] adapter = "COM / signal common" device = "COM" signal = "Signal reference" [[connection.methods.wiring]] adapter = "Cable shield" device = "PE" signal = "Protective-earth shield bond" required = false