The drive runs very well in EPOS4's "PPM - Profile Position Mode" or "PVM - Profile Velocity Mode", but when operating with a master (e.g. Beckhoff TwinCAT or maxon's MasterMACS) the motor's motion looks rather jerkily in "CSP - Cyclic Synchronous Position" or "CSV - Cyclic Synchronous Velocity" mode.
- What is the reason for this?
- Have the control parameters not be tuned well?
The "PPM - Profile Position Mode" as well as the "CSP -Cyclic Synchronous Position" mode use internally the same position and current control algorithms and the identical control parameters. The "PVM - Profile Velocity Mode" as well as the "CSV -Cyclic Synchronous Velocity" mode use internally the same velocity and current control algorithms and the identical control parameters. If an unsteady motor run only occurs with CSP or CSV mode, the cause cannot be the controller parameters or the results of the auto-tuning. The cause must be related to the "interaction" or data exchange between master and EPOS4.
The difference between PPM and CSP (resp. PVM and CSV) is that in CSP (resp. CSV) the external master (e.g. Beckhoff TwinCAT + NC-Library or maxon's MasterMACS) performs the motion calculation (or so-called "trajectory generation") and has to provide updated "Target position" (-> object 0x607A) resp. "Target velocity" (0x60FF) values to the EPOS4 based on a precise cyclic clock of the master's SYNC.
More information about the different operating modes and the tasks of the master and EPOS4 for each mode can be found in the following linked Support Center document and the PDF attached there at the end:
-> EPOS4 / IDX: Control design, Operating modes and Bus cycle rates
The EPOS4 position and velocity control loop cycle time is 0.4 ms, i.e. faster than the communication bus cycle rate. Due to this the EPOS4 performs an interpolation in between the cyclic commanded "Target position" resp. "Target velocity" values provided each communication bus cycle. The difference between the last "Target Position" and the new "Target Position" is divided into intermediate positions based on the configured "Interpolation time period value" (-> object 0x60C2/01). These interpolated position (resp. velocity) data values are used as "Position Demand Value" (-> object 0x6062) resp. "Velocity demand value" (0x606B) every 0.4 ms cycle of the position resp. velocity control loop. This ensures that at the at next expected new "Target Position" resp. "Target velocity" (= master's SYNC communication bus cycle), the drive has reached the last "Target position" resp. "Target velocity" value at the exact time and a continuous smooth movement is ensured.
For correct interpolation and a steady continuous smooth movement, the "Interpolation time period value" (-> object 0x60C2/01) must(!) be configured identically to the effective communication bus SYNC cycle of the master (PLC). A missing or faulty configuration leads to the fact that the "Target position" resp. "Target velocity" is wrongly interpolated and the position resp. velocity control loop does not get fitting "Position demand value" resp. "Velocity demand value" at the right time. From the user's point of view, this leads to a visibly and audibly jerky motor movement. In detail, each movement based on an incorrect "Interpolation time period value" consists of a short movement start and subsequent stop within each bus cycle. The "Target Position" resp. "Target velocity" is reached at a wrong (usually too early) time and the EPOS4 has to wait for the next update of the "Target Position" resp. "Target velocity" (= cyclic data transmission).
Main cause of problem:
The most common cause for an unsteady motor movement observed in CSP or CSV mode is the missing or wrong configuration of the "Interpolation time period value" (-> object 0x60C2/01).
The "Interpolation time period value" (-> object 0x60C2/01) must be configured according to the bus cycle time of the EtherCAT master (-> SYNC period).
- Please find the detailed information about the object "Interpolation time period value" (0x60C2/01) by the "EPOS4 Firmware Specification":
- The object "Interpolation time period value" (0x60C2/01) can be configured by a master's application code or manually by EPOS Studio's "Object Dictionary" tool. The following steps have to be processed to do so:
- Default configuration:
- Double-click in the line "Interpolation time period value" and adjust it according to the SYNC period (e.g. 10 ms) in use by your master:
- Right-click somewhere in the "Object Dictionary" after the value had been successfully adapted. Select "Save All Parameters" by the pop-up menu then. This ensures that the updated setting is stored in EPOS4's memory and still valid after power down/up or a reset.
- Default configuration:
Further potential problem causes:
Further potential causes for an unsteady or noisy motor operated in CSP or CSV mode can be:
- A master's bus cycle which is not precisely maintained or even some bus cycles are completely missing.
In EtherCAT based systems the EPOS4 typically reports an "EtherCAT communication cycle time error" (0x8184), "RPDO timeout" (0x8250) or also "EtherCAT PDO communication error" (0x8280) message in case of missing or strongly deviating bus cycles periods.
- A master's "Target position" or "Target velocity" values, which are impossible for the drive train to follow physically or which are completely wrong.
For the correct integration of the EPOS4 in the system manager of a Beckhoff TwinCAT master please refer to the notes in chapter "6.3 Beckhoff TwinCAT Integration" of the "EPOS4 Application Notes Collection".