A method of simulating an axis of motion in an industrial controller, the method comprising the steps of: generating a first reference signal corresponding to a desired operation of the axis of motion with an axis controller; transmitting the first reference signal from the axis controller to a control module, wherein a motor drive contains the control module and the control module is adapted to receive as an input the first reference signal, and, as a second input, a position feedback signal corresponding to the angular position of a motor connectable to and controllable by the motor drive; generating a second reference signal by the control module, as a function of the first reference signal and the position feedback signal, as an output from at least one control loop; providing the second reference signal as an input to a simulation module; and determining, by the simulation module, at least one of an estimated velocity and an estimated position of the motor, wherein the determining comprises feeding back the estimated velocity through a dynamic gain which varies a gain factor (a 1) as a function of the estimated velocity of the motor, wherein, if the motor is disconnected from the motor drive, the simulation module is adapted to generate the estimated position of the motor and the position feedback signal is the estimated position of the motor, and the motor drive is adapted to use the estimated position generated by the simulation module; and if the motor is connected to the motor drive, the position feedback signal is generated by an encoder operatively connected to the motor, and the motor drive is further adapted to use the position feedback signal generated by the encoder. generating a first reference signal corresponding to a desired operation of the axis of motion with an axis controller; transmitting the first reference signal from the axis controller to a control module, wherein a motor drive contains the control module and the control module is adapted to receive as an input the first reference signal, and, as a second input, a position feedback signal corresponding to the angular position of a motor connectable to and controllable by the motor drive; generating a second reference signal by the control module, as a function of the first reference signal and the position feedback signal, as an output from at least one control loop; providing the second reference signal as an input to a simulation module; and determining, by the simulation module, at least one of an estimated velocity and an estimated position of the motor, wherein the determining comprises feeding back the estimated velocity through a dynamic gain which varies a gain factor (a 1) as a function of the estimated velocity of the motor, wherein, if the motor is disconnected from the motor drive, the simulation module is adapted to generate the estimated position of the motor and the position feedback signal is the estimated position of the motor, and the motor drive is adapted to use the estimated position generated by the simulation module; and if the motor is connected to the motor drive, the position feedback signal is generated by an encoder operatively connected to the motor, and the motor drive is further adapted to use the position feedback signal generated by the encoder.