Control SINAMICS V90 Profinet by X20CP1684 PLC

Hello everyone,

I need to control Sinamics V90 Servo drive via Profinet by using X20CP1684 CPU and X20IF10E1-1 module.

Anybody could help me How to configurate hardware with this solution and which Function blocks (or Libraries) could be used for programming.

Thank you so much for your help!

quite specific topic, not sure how many people have already done this. Anyone pinned, maybe someone can help you. If you will not get any suggestion today, I think you will need to get in touch with local support.

Hello @Lamanh_Kiet

I have never worked with this type of drive but here is what I could find out:

When you import and attach the device to a X20IF10E1-1 and then enter the device configuration you can find this:

When you enhance the “drive object” you can “add subodules” which offer several options:

When you now take a look at the drives manual (sorry for the german screenshots but I did not had much time to investigate further and could only find the german version of the Profinet manaul for this device)you can find what “Standard telegram 1, PZD 2/2 means” (or any other) :

entering this and saving results in a valid IO mapping:

Looking at the above table which shows 4 times “STW” (I would say thats german for “steuerwort” or in english “Controlword”) and 4 times “ZSW” (which could mean “zustandswort” or in english “statusword”)

This would make sense in my opinion as 2x UINT = 4 bytes of Controlword and 4 byte of Statusword

At least this is what I would interpret here

I hope that helps at least a bit to clearify what you need to enter on the “B&R side” and how you can send data to the drive

There is no need for any library as long it is cyclic data which can be attached via variables to the IO datapoints

best regards

Oliver

Hi Oliver,

Thank you so much for your reply.

Last time, I found out that Festo servo drives could be controlled by B&R X20 PLC and they created some Function blocks (libraries) for EtherNet/IP and Modbus communication.

But with Profinet, no Function for this so that I will try to use your recommendation and create a new Function block for this communication.

I think we can send and receive register (control words and status words) for controlling this servo.

If I have some good things for this situation, I will share these in this topic.

Thank you so much for your support once again.

You are very welcome !