# Property of PMA Electrical Solutions, LLC. # # Schneider Altivar 312, embedded Modbus RTU. Exact-family sources: # BBV52816 (04/2009), serial defaults/timeout pp.7-8 and direct address example # pp.11-14; BBV51701, Communication Variables (04/2009), CiA402 CMD/ETA # pp.19-21, common registers pp.16-24, tFr p.31, SLL p.54. # Setup Fr1=Modbus and Cd1=Modbus; factory serial is 19200 8E1. name = "Schneider Altivar 312" vendor = "Schneider Electric" device_type = "vfd" 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 = "OPERATION_ENABLED", 3 = "FAULT", 4 = "VOLTAGE_ENABLED", 5 = "QUICK_STOP_N", 6 = "SWITCH_ON_DISABLED", 7 = "WARNING", 9 = "REMOTE", 10 = "TARGET_REACHED", 11 = "INTERNAL_LIMIT", 14 = "STOP_KEY", 15 = "REVERSE" } } output_frequency = { address = 3202, signed = true, scale = 0.1, unit = "Hz" } motor_current = { address = 3204, scale = 0.1, unit = "A" } motor_torque = { address = 3205, signed = true, unit = "%" } mains_voltage = { address = 3207, unit = "V" } drive_thermal_state = { address = 3209, unit = "%" } motor_thermal_state = { address = 9630, unit = "%" } [control] command_register = 8501 speed_register = 8502 speed_scale = 0.1 speed_unit = "Hz" max_ref = 500.0 step_delay = 0.05 stop = [0x0006] run_fwd = [0x0006, 0x0007, 0x000F] run_rev = [0x0006, 0x0007, 0x080F] reset = [0x0000, 0x0080, 0x0006] [[control.preconditions]] register = 8504 mask = 0x0200 expected = 0 message = "CMI bit 9 must be clear so LFR/RFR use the documented 0.1 Hz scale" [control.watchdog] interval_ms = 50 fault = "SLF1 Modbus communication fault" [running_check] register = 3201 bit = 2 [direction_check] register = 3201 bit = 15 reverse_when_set = true [faults] register = 7121 history = [7201, 7202, 7203, 7204] [faults.codes] 0 = "nOF no fault saved" 3 = "CFF incorrect configuration" 4 = "CFI invalid configuration" 5 = "SLF Modbus communication interruption" 6 = "ILF internal communication interruption" 7 = "CnF communication option-card fault" 8 = "EPF external fault" 9 = "OCF overcurrent" 10 = "CrF capacitor precharge fault" 13 = "LFF 4-20 mA loss" 16 = "OHF drive overheating" 17 = "OLF motor overload" 18 = "ObF DC bus overvoltage" 19 = "OSF line-supply overvoltage" 20 = "OPF motor phase loss" 21 = "PHF line phase loss" 22 = "USF line-supply undervoltage" 23 = "OCF motor phase-to-phase short circuit" 24 = "SOF motor overspeed" 25 = "tnF unsuccessful autotuning" 26 = "IF1 unknown rating" 27 = "IF2 MMI card fault" 28 = "IF3 MMI communication fault" 29 = "IF4 industrial EEPROM fault" 30 = "EEF EEPROM memory fault" 31 = "OCF impedance short circuit" 32 = "SCF motor ground short circuit" 33 = "OPF three motor phases lost" 34 = "COF CANopen communication interruption" 35 = "bLF brake control fault" 36 = "OCF ATV312 D15 power-module fault" 55 = "SCF power-module or motor short circuit at power-up" [connection] summary = "Connect to the ATV312 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 = "built_in_rs485" title = "Built-in Modbus RJ45" transport = "serial" hardware = "built_in" port = "Built-in Modbus RJ45" 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 Built-in Modbus RJ45.", "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 Fr1 = Modbus and Cd1 = Modbus.", "Match 19200 baud, 8-E-1.", "Configure the communication timeout and SLF response."] warnings = ["Do not connect adapter power to the vendor peripheral-power pin.", "Connect only the documented data and Common conductors."] source = "Schneider BBV52816 (ATV312 Modbus), pp. 8-10; BBV51701 communication variables." [[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"