TIA Portal Β· Track 09 Β· technology objects

Making it Move

Driving a servo in TIA isn't raw pulses β€” you create a Technology Object (a configured axis) and command it with tidy MC_ blocks: power it on, send it to a position, jog it, home it. The TO handles the messy ramp maths; you just say "go to 350 mm." First rule, though: no motion until the axis is enabled.

⚑ MC_Power🎯 MC_MoveAbsolute🏠 MC_Home
01 Β· The axis

Enable first, then command

Below is a linear axis β€” a carriage on a 500 mm rail. The MC_ buttons are your motion program. Notice they're greyed out until you press MC_Power: an un-enabled axis ignores every move, exactly like the real PLCopen state machine. Enable it, set a target, and send MC_MoveAbsolute β€” the velocity graph draws the accel / cruise / decel ramp the TO generates for you.

target
🏠
πŸ”©
0
250
500 mm

velocity profile (mm/s over time) β€” drawn by the Technology Object

"Axis_1" β€” technology object

StateDisabled
Position0.0 mm
Velocity0.0 mm/s
Enabled (MC_Power)FALSE
HomedFALSE
🎯 target mm

That trapezoid on the graph β€” ramp up, cruise, ramp down β€” is the axis honouring its configured velocity and acceleration. You never wrote that maths; the Technology Object did, from the move command and the axis limits. (An S7-1500T adds cams and gearing on top of this.)

02 Β· The vocabulary

The MC_ blocks you'll meet first

⚑ MC_Power β€” enable / disable the axis. The master switch. Nothing else runs until this says enabled.

🎯 MC_MoveAbsolute β€” go to a position in the axis's coordinate system (e.g. 350 mm). Needs a valid home first.

🏠 MC_Home β€” establish the reference point. Until homed, "absolute" positions have no meaning.

↔️ MC_MoveJog / MC_MoveRelative β€” nudge continuously while a button is held, or step a fixed distance from here.

03 Β· Check yourself

Why won't it move?

You call MC_MoveAbsolute(Position := 350) but the axis sits still and the block reports an error. The drive is healthy. What did you skip?