VisiLogic and VFD
Ofir Levi
Sep-13th, 2018 7:46

Unitronics UMIs, or Unitronics Motion Inverters, are VFDs that work seamlessly with Vision and Samba, as well as UniStream controllers.

Communicating via Modbus RTU , they are general purpose VFDs, available as single and three phase, from 0.4 kW up to 110 kW.

Configuring Unitronics VFDs in VisiLogic:

When you add a VFD to your Hardware configuration:

  • VisiLogic automatically adds subroutines and data tables to your application that enable you to run the VFD from your application. These subroutines are hidden as they are intended to run 'as is'. For advanced users that wish to add functionality to the existing subroutine – please contact for further instructions.

  • VisiLogic reserves 'Global' operand vectors of MB, MI, and DW. You may change the start operand of a vector, but you may make no other changes, or use the operands in these vectors in your application. Doing so may cause your application to fail.

  1. In Hardware Configuration, select UMIs from the Hardware Element selection bar, and drag a VFD to the DIN rail; the Configuration window opens.

  2. Select the serial port that is to be connected to the VFD.

  3. Under Global, you can edit the start operands of the Global Vectors; these operand vectors are reserved for use in the VFD subroutines.

  4. Under Motor, enter the parameters of your specific motor model.

  5. Under VFD & Control (1), link operands for Frequency Request and Torque Request; you will use these in your program to control Frequency and Torque. Edit the values in VFD & Control (1) and VFD & Control (2) according to the parameters of your UMI model and application requirements. These parameters will be written to the data table created by VisiLogic, Configuration. Note that in this data table, VisiLogic adds a row to contain the data for each UMI you include in your application.

  1. 6.When you are done, click OK.

Note that VisiLogic has added:


  • Data Tables: - A Configuration table containing the parameters that the controller will write to the VDF - A Status table that you can use to manage and debug your motion control.

  • New net in the  main routine that calls UNI_UMI_Main that will run the VFD logic.


Using Unitronics VFDs in VisiLogic

Sending Commands to the 

1. On the Ladder toolbar, under the Utils menu, select UMI Send Command.

2. Select the Modbus ID of the desired VFD

3.Select the desired command

Command numbers


Run Forward


Run Reverse


Jog Forward


Jog Reverse


Stop Run




Fault Reset


Stop Jogging


Set Frequency


Run Torque


Write Configuration Parameters


Read Configuration Parameters


Read Status


Configuring the VFD

After you download the application, you must write the parameter values in the Configuration and Status data tables, and then write them to the data tables in the PLC.

  1. In the Navigation Tree, Click Data Tables, then the Read Write icon.

  2. Select both table via CTRL + right-click, then select Write Tables.

3.In your Ladder application, write the configuration parameters via UMI Command #11, Write Configuration Parameters, as shown in the rung below.

You can also read the parameters from a VFD into the Configuration data table, via command #12 Read Configuration Parameters.

Controlling the VFD

You can send control commands to the VFD, such as Run Forward, Run Reverse, Stop, etc.

The rung below shows how to sends command 1 – Run Forward.

Reading Status:

You can read the UMI status using command 13.

The VFD statuses values will be written to data table "Status Table".

Checking Errors

In order to check whether a command was successfully executed or failed, you can read the column "Subroutine status" from the Configuration data table.

First find the MODBUS ID of the VFD in the data table and then read the subroutine status.

Note that each time a command is sent to the VFD, the data table column "Subroutine status" is updated).

If the value is negative then there is an error with the last command sent to the VFD.

VFD Error Codes:




No errors


In progress


Failed Reading Speed control mode


Failed Reading Run command channel


Failed Reading Max. output frequency


Failed Reading Upper limit of the running frequency


Failed Reading Lower limit of the running frequency


Failed Reading Frequency command selection A


Failed Reading Acceleration Time


Failed Reading Declaration Time


Failed Reading Running direction selection


Failed Reading Motor power


Failed Reading Motor Frequency


Failed Reading Motor speed


Failed Reading Motor voltage


Failed Reading Motor current


Failed Reading Jog Frequency


Failed Reading Jog Acceleration Time


Failed Reading Jog declaration Time


Failed Reading Torque setting Method


Failed Reading- Source of Forward Rotation


Failed Reading- Source of Reverse Rotation


Failed Writing Speed control mode


Failed Writing Run command channel


Failed Writing Max. output frequency


Failed Writing Upper limit of the running frequency (Please check that the value is not greater than Max output frequency or lower than lower limit of the running frequency)


Failed Writing Lower limit of the running frequency  (Please check that the value is not greater than Max output frequency or greather than upper limit of the running frequency)


Failed Writing Frequency command selection A


Failed Writing Acceleration Time


Failed Writing Deceleration Time


Failed Writing Running direction selection


Failed Writing Motor power


Failed Writing Motor Frequency


Failed Writing Motor speed


Failed Writing Motor voltage


Failed Writing Motor current


Failed Writing Jog Frequency


Failed Writing Jog Acceleration Time


Failed Writing Jog deceleration Time


Failed Writing Torque setting Method


Failed Writing-Source of Forward Rotation


Failed Writing-Source of Reverse Rotation


Failed Writing-Upper limit frequency setting during forward


Failed Writing-Upper limit frequency setting during reverse


General reading status error


Failed to Send Run Forward


Failed to Send Run Reverse


Failed to Send Jog Forward


Failed to Send Jog Reverse


Failed to Send Stop Run


Failed to Send Fault reset


Failed to Send Stop Jogging


Failed to Send Set Frequency


Failed to Send Torque value (Please check that Speed control mode P00.00 is 0 or 1 and Torque setting mode selection should be 7 (MODBUS))


Slave ID (VFD) not found (Please check if the ID exist in Data table column MODBUS ID)


Was this article helpful?
7 out of 11 found this helpful