One or more computer-readable storage media having program instructions stored thereon to facilitate simulating machines used in industrial automation, wherein the program instructions, when executed by a computing system, direct the computing system to at least: process a machine model to generate a simulation of a machine; simulate a load to apply to the simulation of the machine; and execute the simulation of the machine under the load, wherein the program instructions direct the computing system to execute an industrial controller system to control an operation of the simulation of the machine under the load, wherein the industrial controller system comprises an emulated industrial controller implemented in software, wherein the control program is executed by the emulated industrial controller to control the operation of the simulation of the machine, wherein an application programming interface, API, of the emulated industrial controller is utilized to direct control data to the simulation of the machine, characterized in that a motion analyzer generates and outputs configuration data for a control program to be used by the emulated industrial controller, wherein the configuration data includes drive and motor configurations, one or more motion profiles, and one or more models for simulating the load on the drive and the motor. process a machine model to generate a simulation of a machine; simulate a load to apply to the simulation of the machine; and execute the simulation of the machine under the load, wherein the program instructions direct the computing system to execute an industrial controller system to control an operation of the simulation of the machine under the load, wherein the industrial controller system comprises an emulated industrial controller implemented in software, wherein the control program is executed by the emulated industrial controller to control the operation of the simulation of the machine, wherein an application programming interface, API, of the emulated industrial controller is utilized to direct control data to the simulation of the machine, characterized in that a motion analyzer generates and outputs configuration data for a control program to be used by the emulated industrial controller, wherein the configuration data includes drive and motor configurations, one or more motion profiles, and one or more models for simulating the load on the drive and the motor. wherein the program instructions direct the computing system to execute an industrial controller system to control an operation of the simulation of the machine under the load, wherein the industrial controller system comprises an emulated industrial controller implemented in software, wherein the control program is executed by the emulated industrial controller to control the operation of the simulation of the machine, wherein an application programming interface, API, of the emulated industrial controller is utilized to direct control data to the simulation of the machine, characterized in that a motion analyzer generates and outputs configuration data for a control program to be used by the emulated industrial controller, wherein the configuration data includes drive and motor configurations, one or more motion profiles, and one or more models for simulating the load on the drive and the motor.