A programmable logic controller based device adapted for controlling a position of an object, the programmable logic controller based device comprising a motor driving module configured to drive a motor to move a movable object, an input module configured to input a position command for determining a target position of the movable object, and a control module configured to output a driving pulse for operating the motor driving module based on the position command, wherein the control module includes: a first interrupt generation unit configured to generate first, second, and third position calculation interrupts; a profile creation unit configured to create position profile information based on the position command when the first position calculation interrupt is generated in a first position control period; a pulse calculation unit configured to calculate a number of output pulses of the driving pulse to be output in a second position control period following the first position control period based on the position profile information; and a driving controller configured to output the driving pulse having the number of outputs calculated by the pulse calculation unit to the motor driving module when the second position calculation interrupt notifying a start time-point of the second position control period is generated, characterized in that the driving controller is configured to: determine whether a generation time-point of the third position calculation interrupt coincides with a start time-point of a third position control period following the second position control period; and when it is determined that the generation time-point of the third position calculation interrupt is earlier than the start time-point of the third position control period, reduce an output rate of the next driving pulse to be output at a fourth position control period after the third position control period; and when it is determined that the generation time-point of the third position calculation interrupt is later than the start time-point of the third position control period, increase the output rate of the next driving pulse to be output at the fourth position control period after the third position period. a first interrupt generation unit configured to generate first, second, and third position calculation interrupts; a profile creation unit configured to create position profile information based on the position command when the first position calculation interrupt is generated in a first position control period; a pulse calculation unit configured to calculate a number of output pulses of the driving pulse to be output in a second position control period following the first position control period based on the position profile information; and a driving controller configured to output the driving pulse having the number of outputs calculated by the pulse calculation unit to the motor driving module when the second position calculation interrupt notifying a start time-point of the second position control period is generated, characterized in that the driving controller is configured to: determine whether a generation time-point of the third position calculation interrupt coincides with a start time-point of a third position control period following the second position control period; and when it is determined that the generation time-point of the third position calculation interrupt is earlier than the start time-point of the third position control period, reduce an output rate of the next driving pulse to be output at a fourth position control period after the third position control period; and when it is determined that the generation time-point of the third position calculation interrupt is later than the start time-point of the third position control period, increase the output rate of the next driving pulse to be output at the fourth position control period after the third position period. determine whether a generation time-point of the third position calculation interrupt coincides with a start time-point of a third position control period following the second position control period; and when it is determined that the generation time-point of the third position calculation interrupt is earlier than the start time-point of the third position control period, reduce an output rate of the next driving pulse to be output at a fourth position control period after the third position control period; and when it is determined that the generation time-point of the third position calculation interrupt is later than the start time-point of the third position control period, increase the output rate of the next driving pulse to be output at the fourth position control period after the third position period.