{
  "format": "voltrus-modbus-poll-template",
  "version": 1,
  "device": {
    "vendor": "ABB",
    "model": "ACS355",
    "series": "ACS355 machinery drives"
  },
  "page": "https://voltrus.id/registers/abb/acs355/",
  "source": {
    "title": "ACS355 drives user's manual",
    "url": "https://library.e.abb.com/public/805f31a82d524d8aa8a750011e2cd001/EN_ACS355_UM_E_A5.pdf",
    "document": "3AUA0000066143 Rev E, effective 2020-11-02",
    "fetched": "2026-10-24"
  },
  "addressing": "Block addresses are 0-based wire addresses, the ones Modbus Poll shows.",
  "wordOrder": null,
  "blocks": [
    {
      "name": "ControlWord",
      "address": 0,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "Reference1",
      "address": 1,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "Reference2",
      "address": 2,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "StatusWord",
      "address": 3,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "ActualValue1",
      "address": 4,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "ActualValue2",
      "address": 5,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "DCU_ControlWordLSW",
      "address": 30,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "DCU_ControlWordMSW",
      "address": 31,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "DCU_StatusWordLSW",
      "address": 32,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "DCU_StatusWordMSW",
      "address": 33,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "SpeedAndDirection",
      "address": 100,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "Speed",
      "address": 101,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "OutputFrequency",
      "address": 102,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "Current",
      "address": 103,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "Torque",
      "address": 104,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "Power",
      "address": 105,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "DCBusVoltage",
      "address": 106,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "OutputVoltage",
      "address": 108,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "DriveTemperature",
      "address": 109,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "ControlLocation",
      "address": 112,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "RunTime",
      "address": 113,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "kWhCounter",
      "address": 114,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AnalogInput1",
      "address": 119,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AnalogInput2",
      "address": 120,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AnalogOutput1",
      "address": 123,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "PID1Output",
      "address": 125,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "FBCmdWord1",
      "address": 300,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FBCmdWord2",
      "address": 301,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FBStsWord1",
      "address": 302,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FBStsWord2",
      "address": 303,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FaultWord1",
      "address": 304,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FaultWord2",
      "address": 305,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "FaultWord3",
      "address": 306,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AlarmWord1",
      "address": 307,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AlarmWord2",
      "address": 308,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "LastFault",
      "address": 400,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "SpeedAtFault",
      "address": 403,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "FreqAtFault",
      "address": 404,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "MinimumSpeed",
      "address": 2000,
      "quantity": 1,
      "type": "int16",
      "area": "holding"
    },
    {
      "name": "MaximumSpeed",
      "address": 2001,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "AccelTime1",
      "address": 2201,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "DecelTime1",
      "address": 2202,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    },
    {
      "name": "EFB_StationId",
      "address": 5301,
      "quantity": 1,
      "type": "uint16",
      "area": "holding"
    }
  ],
  "registers": [
    {
      "name": "ControlWord",
      "description": "Control word",
      "addressInManual": 40001,
      "address": 0,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "Reference1",
      "description": "External reference REF1",
      "addressInManual": 40002,
      "address": 1,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "Reference2",
      "description": "External reference REF2",
      "addressInManual": 40003,
      "address": 2,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "StatusWord",
      "description": "Status word",
      "addressInManual": 40004,
      "address": 3,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "ActualValue1",
      "description": "Actual value 1",
      "addressInManual": 40005,
      "address": 4,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "ActualValue2",
      "description": "Actual value 2",
      "addressInManual": 40006,
      "address": 5,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "DCU_ControlWordLSW",
      "description": "DCU profile control word, low word",
      "addressInManual": 40031,
      "address": 30,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "DCU_ControlWordMSW",
      "description": "DCU profile control word, high word",
      "addressInManual": 40032,
      "address": 31,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "DCU_StatusWordLSW",
      "description": "DCU profile status word, low word",
      "addressInManual": 40033,
      "address": 32,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "DCU_StatusWordMSW",
      "description": "DCU profile status word, high word",
      "addressInManual": 40034,
      "address": 33,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "SpeedAndDirection",
      "description": "Motor speed with direction (0101)",
      "addressInManual": 40101,
      "address": 100,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "rpm",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "Speed",
      "description": "Motor speed (0102)",
      "addressInManual": 40102,
      "address": 101,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "rpm",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "OutputFrequency",
      "description": "Output frequency (0103)",
      "addressInManual": 40103,
      "address": 102,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "Hz",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "Current",
      "description": "Motor current (0104)",
      "addressInManual": 40104,
      "address": 103,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "A",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "Torque",
      "description": "Motor torque percent of nominal (0105)",
      "addressInManual": 40105,
      "address": 104,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "%",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "Power",
      "description": "Motor power (0106)",
      "addressInManual": 40106,
      "address": 105,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "kW",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "DCBusVoltage",
      "description": "DC bus voltage (0107)",
      "addressInManual": 40107,
      "address": 106,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "V",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "OutputVoltage",
      "description": "Output voltage (0109)",
      "addressInManual": 40109,
      "address": 108,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "V",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "DriveTemperature",
      "description": "Drive IGBT temperature (0110)",
      "addressInManual": 40110,
      "address": 109,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "°C",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "ControlLocation",
      "description": "Active control location (0113)",
      "addressInManual": 40113,
      "address": 112,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "RunTime",
      "description": "Running time counter (0114)",
      "addressInManual": 40114,
      "address": 113,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "h",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "kWhCounter",
      "description": "Energy counter (0115)",
      "addressInManual": 40115,
      "address": 114,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "kWh",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "AnalogInput1",
      "description": "Analog input AI1 relative value (0120)",
      "addressInManual": 40120,
      "address": 119,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "%",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "AnalogInput2",
      "description": "Analog input AI2 relative value (0121)",
      "addressInManual": 40121,
      "address": 120,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "%",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "AnalogOutput1",
      "description": "Analog output AO1 value (0124)",
      "addressInManual": 40124,
      "address": 123,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "mA",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "PID1Output",
      "description": "Process PID1 output (0126)",
      "addressInManual": 40126,
      "address": 125,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "%",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "FBCmdWord1",
      "description": "Fieldbus command word 1 (0301)",
      "addressInManual": 40301,
      "address": 300,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FBCmdWord2",
      "description": "Fieldbus command word 2 (0302)",
      "addressInManual": 40302,
      "address": 301,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FBStsWord1",
      "description": "Fieldbus status word 1 (0303)",
      "addressInManual": 40303,
      "address": 302,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FBStsWord2",
      "description": "Fieldbus status word 2 (0304)",
      "addressInManual": 40304,
      "address": 303,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FaultWord1",
      "description": "Fault word 1 (0305)",
      "addressInManual": 40305,
      "address": 304,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FaultWord2",
      "description": "Fault word 2 (0306)",
      "addressInManual": 40306,
      "address": 305,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FaultWord3",
      "description": "Fault word 3 (0307)",
      "addressInManual": 40307,
      "address": 306,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "AlarmWord1",
      "description": "Alarm word 1 (0308)",
      "addressInManual": 40308,
      "address": 307,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "AlarmWord2",
      "description": "Alarm word 2 (0309)",
      "addressInManual": 40309,
      "address": 308,
      "area": "holding",
      "type": "bitfield16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "LastFault",
      "description": "Code of the latest fault (0401)",
      "addressInManual": 40401,
      "address": 400,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "R"
    },
    {
      "name": "SpeedAtFault",
      "description": "Motor speed at latest fault (0404)",
      "addressInManual": 40404,
      "address": 403,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "rpm",
      "scale": 1,
      "access": "R"
    },
    {
      "name": "FreqAtFault",
      "description": "Output frequency at latest fault (0405)",
      "addressInManual": 40405,
      "address": 404,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "Hz",
      "scale": 0.1,
      "access": "R"
    },
    {
      "name": "MinimumSpeed",
      "description": "Minimum speed (2001)",
      "addressInManual": 42001,
      "address": 2000,
      "area": "holding",
      "type": "int16",
      "registers": 1,
      "unit": "rpm",
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "MaximumSpeed",
      "description": "Maximum speed (2002)",
      "addressInManual": 42002,
      "address": 2001,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "rpm",
      "scale": 1,
      "access": "RW"
    },
    {
      "name": "AccelTime1",
      "description": "Acceleration time 1 (2202)",
      "addressInManual": 42202,
      "address": 2201,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "s",
      "scale": 0.1,
      "access": "RW"
    },
    {
      "name": "DecelTime1",
      "description": "Deceleration time 1 (2203)",
      "addressInManual": 42203,
      "address": 2202,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": "s",
      "scale": 0.1,
      "access": "RW"
    },
    {
      "name": "EFB_StationId",
      "description": "Embedded fieldbus station ID (5302)",
      "addressInManual": 45302,
      "address": 5301,
      "area": "holding",
      "type": "uint16",
      "registers": 1,
      "unit": null,
      "scale": 1,
      "access": "RW"
    }
  ]
}
