Motion Control Solutions with Technology Objects in Siemens TIA Portal

Motion Control Solutions with Technology Objects in Siemens TIA Portal

This article goes through setting up and using the Siemens S120 drive inside TIA Portal after configuration in STARTER. While several other Siemens drives can be started with Siemens Startdrive (G120, G120C, G120D, and G120P), performing a hardware configuration of an S120 drive is not yet integrated into TIA Portal. I have heard that the next big release will have this feature!

TIA Portal Setup

In this example project, I’m using an S7-1500 CPU and a CU320 control unit as seen in the below Network view. 


In the Device View of the CU320, I select a DO SERVO Module and select its telegram from the Submodules. This telegram must match the telegram used when configuring the drive in STARTER.




Next, I add a Positioning Axis to the Technology objects.


And now I have a Positioning Axis in my project so that I can continue to do simple configuring.


To compile successfully, the one action I must take is to assign the correct drive to this Technology Object.



TIA Portal’s Configuration tool has many items to customize for your application like Position Limits, Dynamic Limits, and Homing. It is worth exploring all available options to see if this configuration can make programming your application easier.


TIA Portal Commissioning

TIA Portal has several other useful tools to utilize once you download your project to the PLC:

  1. The Commissioning tool allows you to perform jogs, velocity moves, relative moves, absolute moves, and homing routines on your drive. I use this to determine the velocities, accelerations, decelerations, jerks, and homing routines I want to use in my application.


NOTE: If you have programmed the PLC to send commands to the drive. This tool does not let you activate the Axis until you disable those PLC commands. Remember to deactivate the Commissioning tool when finished (I have run into some problems when having an activated Axis when I disconnect from the PLC).

WARNING: You need to be careful when using this so that you don’t harm anything or anybody. 

  1. The Diagnostics tool provides useful information about the servo when you are online with your controller. Use this information in the controller’s logic.


Axis Programming

Accessing the Diagnostics information inside my Ladder code is very helpful when programming axes, so I created a function block to do just that. As seen below, the Axis’s status word is sent into my function block, which is where I organized all its information into a data block that is more user-friendly.


The below screenshot shows the breakdown of the status word.


I assign each bit from the Positioning Axis’s status word into the function block’s corresponding Boolean.


To program the Axis’s movements, I placed all the built-in Siemens Technology Motion Control blocks into another function block as seen below.


Then I used some of the data from the Axis status word breakdown for the motion logic.


I can also use data from the built-in Motion Control blocks for my logic. In this case, the MC_POWER block has a Status bit that is synonymous with the StatusWord.Enabled bit.



Siemens has made motion control applications simple and straightforward with TIA Portal. 

  • The Configuration and Commissioning tools create an easy commissioning process.
  • The Diagnostics tool helps online troubleshooting and programming.
  • The built-in Motion Control blocks are intuitive, and the Siemens help files provide additional information on how to utilize the Motion Control blocks effectively.

Learn more about DMC's motion control services or Contact Us to get started on a project today.


Marco Tulio
# Marco Tulio
thank you so much for your information, was very useful for me.
# Vorapob
Can you give me a manual and Example project for me please my email: Thanks alot
# Achraf
have you some videos of this configuration of motion controle ? , and what if I want controle a servopack of yaskawa it' is the same procedure ? thank you very much

Post a comment

Name (required)

Email (required)

Enter the code shown above:

Related Blog Posts