PDMC Multi-Drive AC4 Demo
AC4 application modifications (compared to the AC1 example) are described at Application Note V4.1.0.0
Field Oriented Control V1.1.0.0.
Prerequisites
Hardware
PLC: SIMATIC S7-1500T CPU S7-1516T-3PN/DP;
Up to three NXHX90-MC boards with NXHX-DH boards each;
One board NIC52-RE;
Up to three motors Maxon EC-i 30.
Software
netX Studio CDT;
TIA Portal V15 or later;
TIA Portal Project for configuring the PLC for the demo;
PROFIdrive application example project to run on the App core of the NXHX90-MC boards.
Demo Setup
Hardware
Figure 1 - Block diagram of the А4 Multi-Drive Simple Demo System
The network will run in Isochronous mode. Do not place any non-IRT devices (like switches) between the devices / PLC. Only industrial switch that supports IRT will work, if needed.
This demo supports up to three NXHX-MC boards and Maxon EC-I 30 motors. Just connect the relevant NXHX-MC board to the “daisy chain” topology.
Software
Load the PLC Demo project in TIA Portal, compile and download it. The GSDML for the NXHX90-MC devices can be found in here.
Load the PROFIdrive example application project in netX Studio CDT and configure it for AC4 and the corresponding motor:
Select Standard Telegram 3 (Process Data format for AC4) in Targets\NXHX90-MC\Sources\main.c. Detailed description provided in the previous link.
Build and download the firmware on the NXHX90-MC board.
Assign (via Ethernet Device Setup) a PN device name to the device that matches the one in the TIA Portal project.
Detailed information about firmware download and configuration of the NIC52-RE board is to be found at PLC Startup Guide - NIC52-RE based PROFIdrive Example / section "Preparing the NIC52-RE Evaluation Board". The relevant resources can also be accessed here.
Demo Behavior
What's New
The AC4 Multi-Drive Simple Demo is similar to the NIC52-RE-based PROFIdrive AC1 demo in terms of functionality but includes conceptual innovations.
PROFIdrive AC4 support - the Motor’s encoder position information is present in the Process Data.
Precise position control is achieved with the Position Feedback (the precision of position control is depends on the motor's architecture and the encoder's resolution).
IRT (Isochronous Real-Time) mode has been activated on the PLC, NIC52-RE and the three NXHX90-MC boards. The minimum Data Cycle time supported is 1 ms.
Motor calibration methodology has changed totally and integrated into the PLC demo:
Motor calibration can now be performed by setting calibration parameters externally (Motor self-calibration can pose a safety risk when the motors are linked to a mechanical mechanism because the drives begin to move);
Motor self-calibration is triggered via writing a specific Hilscher-defined PROFIdrive parameter by the PLC controller;
The calibration parameters acquired after a successful motor self-calibration are stored in the Remanent area on the PLC.
As long as there is valid calibration data in the remanent data on PLC start-up, the calibration will be executed instantly by configuring these parameters (the motor will not move).
Manual Power and Reset operations on DIP switches have been removed. The process is automated by using just the “Start DIP” switch.
In the PLC Tia Portal project, the Speed Axis Technology Objects are replaced with Position Axis Technology Objects (that provide Position Control capabilities).
The demo provides various typed of motion control demonstrations that can be activated by a DIP switch:
Jogging Demo: Similar to the AC1 demo but the 3 motors turn synchronously (because of the IRT mode);
Synchronization Demo: Visual display of synchronized motor rotation of the three motors.
PLC Software Block Diagram
Figure 2 - The block diagram of the PLC Software
Figure 2 presents the simplified PLC software block diagram for better understanding of the PLC program modules. These are are written in Ladder and SCL languages. For details, please review the PLC TIA Portal project.
NIC52-RE Control Module
It converts the DIP switch data read from the NIC52 card into a format that can be understood by other modules. Additionally, it allows the data generated by other modules to be visually displayed through the boards' LEDs.
Motor Calibration Module
Manages the entire motor calibration control process. It checks the Remanent Area in the PLC. If valid calibration parameters are present, the motor will be calibrated accordingly. Otherwise, the motor will start self-calibration. This module directly communicates using Hilscher-defined PROFIdrive custom parameters (PNUs) to initiate self-calibration and set/get calibration parameters. Detailed information can be found at PDMC AC1/4 Motor Calibration.
Motor Control Module
It produces data suitable for Position Axis Technology Object blocks by processing the control parameters (Run/Stop motors, Requested Motor Velocity, Demo mode, etc…) it receives. Additionally, operations for resetting and powering on/off technology objects are also carried out here.
Jogging Mode
In this mode, the motors rotate at the set speed and direction. The ramp-up and ramp-down times are much shorter compared to the synchronization mode. It operates in the velocity range of -100% ÷ 100% (-8840 RPM ÷ 8840 RPM for Maxon EC-I 30). Demonstrated is that the motors are capable of dynamic control at high speeds in IRT mode. The motors move synchronously but it is not visually clear. The Synchronization Mode demo provides better visual evidence of the synchronous operation.
Figure 3, explains the simplified s-curve profile of the "Jogging Mode". This profile is configured from the Position Axis module of the motors' technology objects. It can be modified by the user under the Technology Objects section in the TIA portal. In this mode, the MC_MoveJog motion control instruction is used to provide the motion control.
Figure 4 shows how rise-up and rise-down times are calculated in Jogging Mode. These formulas allow calculation of various values for different velocities within the vmin to vmax range.
Synchronization Mode
In this mode, the motors initially rotate clockwise (CW), pause briefly, then rotate counter-clockwise (CCW) and pause again in a continuous loop. Ramp-up and ramp-down times are longer than in Jogging Mode. The synchronous motion of up to three motors is demonstrated. To visualize more clearly the synchronous movement in this mode, the ramp-up and ramp-down times are extended and maximum motor velocity is restricted. Because of this reason, it operates in the velocity range of -31.25% ÷ 31.25% (-2763 RPM ÷ 2763 RPM for Maxon EC-I 30).
Figure 5, explains the simplified s-curve profile of the "Synchronization Mode". This profile is configured from the position axis module of the motors' Technology Objects and then changed dynamically from the Motor Control Module. It can be modified by the user under the function block FB_MotorCtrl code in the TIA portal. In this mode, the MC_MoveVelocity motion control instruction is used to provide the motion control.
Figure 6 shows how the rise-up and rise-down in Synchronization Mode is calculated. These formulas allow calculation of various values for different velocities within the vmin to vmax range.
NIC52-RE Details
The NIC52-RE board is the interface that provides the interaction between the PLC demo and the end user through DIP switches and LEDs.
DIP Switches
The DIP switches on the NIC52-RE perform PLC Demo control and set the speed of the corresponding demo mode.
Right-side DIP switches - PLC Demo Control
The right-side DIP switches (as in Figure 1) are used in PLC Demo control. The following table describes the PLC Demo control using these switches on the NIC52-RE.
DIP Index | Control | Meaning |
---|---|---|
1 | Start | 0 - Stop motor, 1 - Start motor |
2 | Direction | 0 - CCW / 1 - CW. |
3 | - | - |
4 | - | - |
5 | Demo mode | 0 - Jogging demo, 1 - Sync. demo |
6 | - | - |
7 | - | - |
8 | Delete calibration parameters | 0 - Idle, 1 - Delete |
The primary function of the Start switch is to start or stop the motor motion. Moreover, it also checks and triggers the calibration processes and acknowledges the errors.
The Direction switch is used to determine the motor rotation direction.
When the switch is set to the 0 position, the motors rotate counter-clockwise (CCW).
When the switch is set to the 1 position, the motors rotate clockwise (CW).
The Demo mode switch is used to demonstrate the synchronization capabilities of the IRT-enabled AC4 demo.
When the switch is set to the 0 position, the motors will run in the Jogging Demo Mode.
When the switch is set to the 1 position, the motors will run in the Synchronization Demo mode. This mode performs the predefined motor movement loop. You can find more detailed information above.
The Delete Calibration Parameters switch is removing the calibration parameters from the PLC’s remanent area. It should be used when you want to switch to different motors. To perform this operation, start by switching the relevant control to position 1, then back to position 0. Subsequently, power off all systems before powering them on again. This sequence will initiate the self-calibration of all motors.
Left-side DIP switches - Set the motor speed [%] of the corresponding ”Demo mode”
The left-side DIP switches (as in Figure 1) are used to set the motor speed [%] of the corresponding ”Demo mode”. The reason for using a percentage is that each motor model has a unique reference speed value. This reference value was taken directly from the NXHX90-MC board and calculated by PLC.
The demo mode referred to here is configured with DIP Index 5 of the PLC Demo Control DIP switch group (right-side DIP switches) as outlined earlier. They will be reviewed separately for the two separate Demo modes.
Jogging Demo
DIP Index | Speed[%] | Speed[RPM] | Rise up, down time [sec] | Meaning |
---|---|---|---|---|
All is off | 0% | 0 | 0 | Set motor speed to 0%. |
1 | 12.5% | 1105 | 0.75 | Set motor speed to 12.5%. |
2 | 25.0% | 2210 | 1.5 | Set motor speed to 25%. |
3 | 37.5% | 3315 | 2.25 | Set motor speed to 37.5%. |
4 | 50% | 4420 | 3 | Set motor speed to 50%. |
5 | 62.5% | 5525 | 3.75 | Set motor speed to 62.5%. |
6 | 75% | 6630 | 4.5 | Set motor speed to 75%. |
7 | 87.5% | 7735 | 5.25 | Set motor speed to 87.5%. |
8 | 100% | 8840 | 6 | Set motor speed to 100%. |
Synchronization Demo
DIP Index | Speed[%] | Speed[RPM] | Rise up, down time [sec] | Meaning |
---|---|---|---|---|
All is off | 6% | 530 | 3.2 | Set max. motor speed to 6%. |
1 | 9% | 795 | 4.8 | Set max. motor speed to 9%. |
2 | 12% | 1060 | 6.4 | Set max. motor speed to 12%. |
3 | 15% | 1326 | 8 | Set max. motor speed to 15%. |
4 | 18% | 1591 | 9.6 | Set max. motor speed to 18%. |
5 | 21% | 1856 | 11.2 | Set max. motor speed to 21%. |
6 | 24% | 2121 | 12.8 | Set max. motor speed to 24%. |
7 | 27% | 2386 | 14.4 | Set max. motor speed to 27%. |
8 | 30% | 2652
| 16 | Set max. motor speed to 30%. |
LEDs
The NIC52’s LEDs show the two different things.
Actual motor speed: Every LED shows 12.5% motor speed. 100% indicates the nominal rotation speed of the motor (Maxon: 8840 RPM, Ebm-Papst: 4000 RPM). If both LEDs in the centre are illuminated, it signifies that the motors are at a standstill.
Error status: The blinking of the two LEDs in the centre indicates an error situation.
How to run the AC4 Demo
Prepare the NIC52-RE board and three NXHX90-MC boards for use. You can access the necessary information from this link: PLC Startup Guide - NIC52-RE based PROFIdrive Example
Assign (via Ethernet Device Setup) a PN device name to the device that matches the one in the TIA Portal project. Device names, which you can also access from the TIA portal, are also given in the table.
Board | profiNet Device name |
---|---|
NIC52-RE | nic52pns |
NXHX90-MC Board 1 | netxv5repns-1 |
NXHX90-MC Board 2 | netxv5repns-2 |
NXHX90-MC Board 3 | netxv5repns-3 |
After everything else is ready, download the project to the PLC using the TIA portal.
Set all DPI switches to position 0. Then turn the Start switch to position 1.
Since the Remanent areas of the PLC are empty, wait for the one-time self-calibration process to be completed.
When the calibration is completed, the two LEDs in the middle will stop blinking and turn solid orange.
You can now adjust the motor speed you want using the Speed DIP switches.
If you want, you can activate the position mode, which will set the Demo mode switch to position 1. Please take a look at the "NIC52-RE Details" section to learn what this mode does.
FAQ
Abbreviations
PLC - Programmable Logic Controller
IRT - Isochronous Real-Time
RE - Real-Time Ethernet
SOL - Sign of Life
AC1 - Application Class 1
AC4 - Application Class 4
MC - Motion Control
DIP - Dual Inline Package
LED - Light Emitting Diode
TO - Technology Object
PDRV - profiDrive
RPM - Revolution per Minute
FB - Function block
FC -Function call
CCW - Counter-clockwise
CW - Clockwise
tru - Rise-up time
trd - Rise-down time
twmin - Waiting time when the speed is at the minimum value
twze - Waiting time when the speed is at the zero
twmax - Waiting time when the speed is at the maximum value
vmin - Minimum velocity
vmax - Maximum velocity