Hello everyone 2
Today we will continue in next chapter with simotion 3
System and programming course 4
So let's check it out 5
Turn topic and chapter number is 10 6
Technology objects axis and drives measuring input and cam outputs 7
So let's start 8
I will use first simotion sitrain system lecture notes and 9
after that 10
i will switch to simotion programming course notes 11
Okay. 12
So let's start with axes and drives in simotion 13
With this chapter you will learn about how do we connect electrical Drive 14
symbolic assignment between control and thrive 15
Automatic or manual massage frame extension selection 16
Structure of standard message frames 17
Overview of Drive coupling 18
Technology objects 19
Axis technology object creating and configuring and axis 20
Basic configuration of an axis 21
Calling to expert list 22
Position control in simotion 23
And position control with precontrol and so on 24
there are also other topics with next page and the page after the next page 25
So 26
Let's begin 27
Remind before it's possible to connect drive to axis technology 28
Object we are several ways 29
The profinet or via profibus it is also possible 30
For example masterdrives MC units at sinamics 31
Or simodrive 32
For analog drives and stepping motor controls are so special 33
Name is Adi4 and interface module 34
im174 35
So next page 36
After firmware 4.2 we will use 37
As default symbol assignment between control and drive 38
here the advantage 39
Communication between an axis and drive is automatically set up so 40
it's reduces the downtime 41
Message frame extension and interconnections in the drive are dependent on selected technology object 42
For example safety integrated function 43
Depends on our selection 44
axes and drives can be independently configures from 45
One to another correct 46
And so on... 47
You see here IOs or interconnection control screen 48
So this is the new future in 49
4.2 50
It's possible to select the old-fashioned way 51
manual message frame selection 52
That way we can configure or message frame and Communications 53
Structures here 54
It is up to us 55
As Automatically with siemens drives 56
So here you'll see a example of structural standard message frame 57
There are some words 58
For instance message frame 1 message frame 2 without encoder and message frame 59
3 with encoder 60
Standard message frame 4 with 2 encoders 61
here set point control word 62
velocity set point 63
here as actual values 64
It's auf Deutsch steuerwert 65
actual speed 66
status word 67
HW status words 68
Actual speed actual position 69
status word 2 70
and so on... 71
The next page 72
it will with continue and message frame 5 73
standart message frame telegram 5 used by simatic cpu new series s7-1500 tos 74
when you use standart message frame 75
It's possible to connect 76
Another drives 77
For example ABB Servo drives or 78
Rockwell Servo drives to simotion 79
Yep. 80
About drive coupling 81
It's an example table given 82
So you see here the drive 83
consist of Starter 84
The family consists of different kind of drives in siemens world 85
sinamics 86
S120 is the most 87
Commonly used these days and new series drives 88
simodrive 611 universal profibus drives 89
Also 90
continiue 91
This is an example picture about technology objects of simotion 92
You'll see here technology object measuring input there are some alarms 93
Related to cam object and system variables 94
On the right side you see here the axis technology object with 95
Red circle 96
Each object has its own configuration data system. 97
System function 98
And alarms 99
So this is a good 100
Picture is explaining about axis data types that are four different versions 101
speed Controlled axis positioning axis synchronous access and path axes 102
Normally positioning axis extended version of speed control axes 103
Basically 104
there are some common parameters between path interpolation axis and synchronous axis 105
But actually there are some different parameters also when you compare the synchronous axis 106
and path axes 107
with path object it's possible to use ready-to-use packages 108
following kinematics are supported like scara robots 109
Roll picker that's a delta 2d 3D picture and so on... 110
And how do we create and configure an axis you will see here on the left side 111
An example of filler red 112
it's a real electrical axis in mechanics 113
There are some parameters related to Mechanics for example 114
load gear, Number of revolution 115
number of motor Revolution number of Load Revolution 116
On the measuring gear 117
it is Selected the motor encoder for position or so there is an external encoder 118
On the right side is possible to configure 119
When you enter here the lead screw pitch value 120
distance for spinner Revolution 121
That means when do you rotate your motor for one revolution 122
How much distance you will get 123
10 milimeters per rotation for example after you see here the expert list 124
For the basic configuration of an axis 125
We just select 126
Cycle clock for processing the technology object default is IPO 127
Make an assignment on Drive side 128
select an drive actor 129
And it is automatically 130
The drive interface interconnected 131
there are Other options if you want to use for example of Technology object 132
data block 133
Sinamics safety integrated data 134
And so on here you see encoder information 135
Under the functions there isn't a response. It's related with 136
how do we use The axis objects 137
If it is necessary you can select or define specific 138
enables will be removed 139
In any case of error failure or when do you use 140
Emergency stop 141
For example 142
So... 143
Normally 144
Axis will be quickstop with off 3 ramp 145
When it's not possible maybe you are going to use coast to stop with OFF2 146
ramps 147
It depends on your application 148
So basically your motion control comments will be the same 149
But your configuration response the alarm is difference 150
Yep 151
On the export list we have already make an example 152
fore this 153
chapter 154
You were supposed to enter mechanical data 155
enter gear ratio 156
Numerator and denominator 157
it stored in configuration data 158
of Axis 159
Here you'll see the default values 160
for velocity and Acceleration 161
you will see here Hardware and software limit switches 162
in new versions of simotion it's possible to activate and deactivate during run time 163
It's required you can also give some filtering to actual value 164
master value coupling or the encoder value 165
You can activate your PT 1 filter and enter here sometime constants 166
from firmware 4.1 167
for Closed-loop position control in simotion you should select always Dynamics servo control 168
operation is on. 169
You have an KPC Factor controlled via Telegram 170
siemens 105 171
It's default is 20 172
If it's required you can adjust and tune your position control 173
with automatic controller setting 174
You see an example for position control optimization 175
3.3 contoured 176
The Green or here is the velocity set points 177
System variable name is motionstatedata.commandvelocity 178
Can't you see here as a red curve 179
velocity curve like s-curve actual velocity 180
System variable name is motion state data 181
This is unoptimised position controller so 182
Too much for the error in velocity 183
After you properly adjust your servo gain Factor 184
Under the axis technology objects 185
Here you will see Optimized position control 186
Normally you should begin with the drive side because 187
because position control optimization have and 188
Less effects than the other controllers 189
That's why you should begin with current control optimization after that you should do speed control 190
Optimization on the drive side 191
This is the last 192
So... 193
Position control with precontrol with new firmware versions its default selected 194
Here you see the advantages 195
Weigiting factor is default 100% 196
So as default 197
You can select here 198
Balancing filter active external balanced filter is default option 199
with curves it is explained 200
command values and actual values 201
So you see 202
Here with the red circle actual speed 203
overShots and undershots 204
with pt1 filter when you use external balancing filter 205
it is so much better 206
So that's why it's default selected 207
Then it's possible to optimize your balancing time constant 208
These topics are a little bit advanced level so I will suggest you 209
To do 210
Exercises 211
before Go with this topics in later on after you finish the course 212
Use the chart or the diagram between simotion 213
And the drive 214
How do we do the position control with dynamic servo control 215
via profibus profidrive 216
you will see here the position calculation interpolator is running in simotion side 217
Simotion is creating with precontrol set point speeds 218
There is a deceleration ramp on the drive side there's a fine interpolation 219
Because 220
Drive speed controller is running with cycle 221
125 microseconds 222
It is so much less than simotion position servo cycle 223
After that you will see here position controller is calculating 224
On the other hand interpolator is 225
Creating 226
The position set point 227
and there is a 228
actual Position setpoint feedback from the drive site 229
So it's 230
here the position difference or following error 231
after ramp 232
Is calculated together you see here the speed filter 233
There's any device preset what is rpm and drive calculated 234
speed after that speed controller 235
Running to drive 236
So.... 237
This is the idea because the position control cycle is 1 or 2 mili seconds 238
So... 239
simotion taking feedback from Drive actual speed and actual position 240
And the rest of things Drive must handle because 241
Controller cycle PID control loops it's so much faster than simotion 242
This is the main idea then 243
here and example diagram and shows about position 244
Controller optimization with precontrol 245
i will skip this page 246
It's enough for you. you just get the idea 247
so When do you use circularity test ? 248
from version 4.0 simotion Trace to alsp includes a circularity 249
test 250
For this test 2 axes are traversed Circle path and the actual path 251
Is compared with the program path 252
This allows the dynamic response of the synchronous operation Behavior 253
Of the axes to be tested 254
So... 255
if We are using to 2D kinematics for example Cartesian 2D 256
Then should Optimize 257
Our axis with using circular test 258
As you can see on the left side and good Dynamic response at adaptation 259
Should be looks like this 260
If you're having on the right sides similar diagram on the circularity test 261
poor Dynamic response adaptation it's going to be like this 262
So if you do the test 263
You will optimize your controller for both of exes 264
important tging you will see position 265
positioning and Standstill monitoring window under the object 266
It's has also some influences on your programming sites 267
It depends on your kinematics and mechanical limits also 268
Default values are sometimes too low 269
axes will work 270
But sometimes you will get some errors standstill monitoring errors 271
Or positioning monitoring errors so this is the place you should be adjust 272
Some parameters here 273
You can read the explanations later on one of the alarm maybe you will face 274
Is 275
50107 standstill monitoring 276
So... 277
You'll see here horizontal axis is time 278
Vertical axis is s 279
Means the position 280
Blue curve here is the set point and the 281
turquise 282
Is the actual 283
position 284
Your position controller in IPO cycle is ramp down 285
and here 286
Set the end of interpolation bit 287
For instance or there's a system variable servomonitoring.positionState 288
This variable is going to set right here and of interpolation 289
And after that 290
There is a little time here 291
This is the 292
Position tolerence time 293
It's default 1 seconds and positioning window its before 1mm 294
There is a dead band 295
For both sites 296
after you here this hystheresis band or dead band 297
You see here the time expired 298
If your actual 299
Position vlue 300
Does not entered 301
In described time 302
In tolerance window 303
Then you would get a positioning error 304
So... 305
It depends on encoder type it depends on your kinematics 306
If your motor inertia is too high or if you're load is 307
Is too much higher than your motor inertia maybe you will face this kind of problem 308
so 309
... 310
You have to adjust this parameters 311
As you can see here that are some other things 312
deep note 313
First is the actual value leaves the position of window during in minimum dwell time 314
The positioning tolerence time is restarted 315
That means our actual value entered the window right here 316
At the positioning tolerance time counter or timer is started for one second 317
On the other side 318
If it leaves the monitoring window 319
That means the position of window 320
On the other side 321
Timer restarted 322
Then our speed controller tries to rotate the motor 323
and Control the position again 324
You see what's going on 325
The second thing is 326
Start of standstill monitoring you will see here it will be started after positioning 327
Set the motion_done 328
After positional tolerance time exceeded 329
Position state set to motion done 330
So after that standstill window here there's another band 331
dead band 332
It's also same as the positioning window 333
Maybe you will use 334
And lower 335
value for example 336
0.5 337
So similar logic 338
standstill window is specify difference between absolute value and target value 339
so There's also some tolerance time similar to position tolerance time 340
standstill window tolerance time 341
in real world after yor Enable your motor 342
and pulses are enabled on drive side 343
And you just didn't give an velocity set point or positioning comment 344
Motor 345
and drive tries to hold on to current position 346
Is rotating a little bit left or right maybe 347
Depends on your gin 348
And like a PC and PID controller settings 349
If it's okay it's possible to control your drive 350
with 0 speed 351
but on the simotion side 352
if the standstill window it's too low 353
you will get 354
an overshot or there's an overflow 355
And you leave standstill window and you get the standstill monitoring error 356
So maybe you have to just 357
adjust your standstill window a little bit higher 358
For instance 2 millimeter 359
Or you have to give you some tolerance time 360
here 361
Because your actual values are sometimes oscillating 362
From the motor encoder 363
Especially when you are using low-resolution encoders 364
Or sometimes when you're using external encoders and there is a vibration 365
On the material 366
Then you will have to answer hear some higher values as seconds 367
Because you're actual value is being standstill window as position value 368
Five parameters here is really important when you are 369
Programming and commissioning of your system 370
Possible to trace you actual value out of position window available 371
Inside positioning window 372
test motoring is active 373
and you will get the necessary information from 374
Positioning statement 375
motion state data 376
Yes. 377
next page by the way this parameters is 378
Activated only real axid if you are using a virtual axis 379
This will not be used because your actual and 380
Set point position is the same 381
So... 382
Open loop speed control motion standstill signals 383
you will see here timeline actual velocity 384
There is a parameter velocity threshold standstill signal as 50 mm/s 385
It's also 386
Your technology object gets actual value from Drive 387
and calculate the actual velocity sometimes it's required to 388
make some filter pt1 389
Actual value maybe it is oscillating or there is a disturbance 390
So in that case 391
If it's over shots 392
Gets more than 50 mm/s at this case 393
after 20 milliseconds you will get and standstill 394
Yep 395
Following error and velocity error monitoring 396
Dynamic following error monitoring is active 397
According to your actual speed of your axes there is an table 398
You will see here the vertical axis is following error 399
Normally in higher velocities 400
you will get higher following errors 401
You're just enter here two different parameters as milimeter unit 402
and for the horizontal axis 403
That means velocity you will enter here 2 difference 404
parameters 405
on this direct line 406
It is calculated 407
following error 408
Corresponds the actual speed of your axes 409
then it is possible to monitor dynamics following error 410
If it is 411
Activated 412
The similar thing you will see here on the velocity error monitoring 413
You just enter your some value as percent maximum velocity deviation 414
It is calculated between 415
Speed set point and actual speed error 416
It is monitored 417
Yep 418
Then you will get this kind of errors and alarms 419
50102 or 420
If you get this alarm and error messages that you have to adjust your parameters here 421
So next page signal flow representation of the closed loop axis control 422
Axis Control 423
This is the one of the advance topics here i will skip right now 424
You have already looked 425
and 426
These functions 427
Group of axis commands 428
we used enabled and disabled axis in MCC looks like this picture 429
so for follow-up motion 430
No motion comments are executed in the follow-up mode for positioning axes in foloow-up mode 431
The position control is canceled and the position Set Point tracks the position actual values 432
This is the special case 433
After the follow-up mode has been disconnected axis must be re-referenced 434
In some applications 435
And you will need this one 436
That's why there are several features and options for users here 437
there are alot of Possibilities to enable and disable or controlling an axis 438
So how do we simotion process motion comments 439
Let's see 440
This is our motion task there is some user program 441
From start to the end 442
For instance positioning axis 1 access 2 access 1 443
On the background in IPO task 444
4 axis one when we execute this command 445
entered into command buffer there's an interpolator and fine interpolator after that position 446
controller 447
for4 axis 2 448
It's the similar way 449
So question is 450
Which time you need 451
There's a relation or what's the relation between axes? 452
for command buffer in order the several commands can be issued to an axis to 453
Every axis has a command buffer and a motion queue 454
this buffer comprises4 command group specific sub buffers 455
which can buffer command from the one of the following groups 456
emergency stop and stop continiue commands 457
Enable and disable comment / sequential traversing motion / motion and base coordinate system 458
Superimpose traversing motion 459
So interpolator of an axis reads out the command from command buffer. 460
at the command buffer 461
Possibly interpolated clock cycle 462
Yes and process it comes from where is command groups are to 463
What is certain and processed in parallel by the axis TO 464
That means at the same time in the background 465
So we have mentioned before about transitional behavior of mode 466
and motion commands 467
Then we use attach option as you see here 468
Last comment is a traversing or position in command 469
the red curve is the new command 470
when use attach 471
When you select in combobox attach and delete pending comments 472
The last comment 473
Is deleted at the Motion queue you and our new comment will be executed 474
When you use substitute 475
You see here the last motion is common is canceled 476
immediately new comand executed 477
So when you use the blending for positioning an axis 478
You'll see here it's a little bit different than substitute 479
Yep. 480
there is a last one superimpose 481
Your next command is added actually and executed together 482
here you see the details 483
As an technology object alarm aborted, it's in The Interpreter 484
Interpolator 485
trigger a technological alarm 486
30002 487
... 488
Cummins aborted 489
After that we will see that you can set or hide 490
Some of the alarms or in the messages 491
So next page 492
Program Advance for motion comments 493
You see here. delay program execution option and checkbox 494
There are several possibilities here 495
One of them 496
Skip to next comment immediately 497
That means 498
No wait or no delay execution 499
Yep 500
The other one is motion start 501
After the 502
motion started 503
You will go to next command execution if you say acceleration 504
After axis reached to set speed 505
And state changed to constant velocity this command will be 506
Executed 507
If you select start of deceleration phase 508
Right here the next command then will be executed 509
if you're going from upto down 510
On your MCC chart 511
End of the setpoint interpolation it is related as an axis 512
position monitoring starts monitor settings 513
Couple of minutes ago 514
And the last one is motion completed 515
That means position of window reached 516
Yep 517
So deep note 518
When you change your parameters in your axis technology object it's also 519
Some influences 520
will be effect your program 521
Your program is a little bit act 522
Different 523
At this point of view 524
Let's next page synchronous and asynchronous program execution 525
If you're using motion TASK is possible to use delay and transition 526
Options... 527
If you're using in background task you have to use 528
synchronous operation 529
Dynamic settings for position, velocity profile 530
defines 531
Also both of two options 532
Starting an axes position control or speed control 533
we have seen already difference 534
with diagrams in last chapter 535
So stopping an axis 536
there are some other possibilities in Dynamic response for ... 537
Time for deceleration as 1 millisecond 538
Sorry one second so simotion automatically calculates 539
ramp up/down curve 540
with formula 541
it is Decided then you will be sure 542
The access will be stopped in 1 seconds 543
Continiue motion 544
After you stop an axis it is possible to continue 545
homing axis with incremental measuring system 546
In older times 547
Usually the servo Motors comes with incremental encoders 548
Absolute encoders used as 549
Much higher these days 550
So on... 551
we'll use absolute encoders so much more in current systems 552
Because there are some Advantage when you just 553
I adjust absolute encoder offsets once 554
in real working machine 555
That it is not required to make the homing procedure again 556
Given you power off and on 557
So... 558
Anyway if you are using incremental measuring system 559
And if you want to use absolute positioning first of all you have to make homing on your 560
axis 561
In this case you have select active homing 562
for that means 563
Your motor will be rotated and start the search the home cam or switch 564
It's a mechanical cam or limit switch or inductive homing sensor whatever 565
You will Define your homing procedure in your 566
homing 567
Screen here under axis config 568
There are too many possibilities 569
You will start rotate rights 570
with linear Axis or you're going to start rotate left you select here 571
For instance encoder zero mark searching and behind the Homing output cam homing procedures will be started 572
in positive Direction 573
If you 574
Select a different option here your diagram and graphic 575
will be changed curve here 576
Positioning profile of your homing procedure ordering your homing procedure 577
There is an approach velocity and traversed reduced velocity with three different parameters about 578
homing speed 579
here on the right side maximum distance to homing output cam Maximum distance 580
to encoder zeromark 581
So... 582
Let's take a closer look at this page 583
Deep note 584
there is a homing required combo box yes or no 585
If I select no here than 586
For axis jogging 587
Is it possible I can rotate axis in speed control mode position mode 588
And it's possible to make and relative positioning 589
If I select here no 590
First of all I have to do homing procedure 591
if I don't 592
Do homing procedure it is not possible to rotate the axis in anyway 593
Keep in that in your mind 594
So next thing is and 595
homing output cam and encoder zero mark 596
on the encoder side there is a encoder zero mark 597
it's a pulse HTL or TTL pulse 598
only 1 pulse per rotation 599
here we will check 600
Both of the output cam and encoder zero mark 601
So I have to assign the homing cam input here 602
It's going to be our mechanical cam switch 603
and you see here the encoder zero mark with red rectangle 604
And encoder zero mark detection will be behind of outptu cam that means 605
here 606
So... 607
on The left side negative limits and the right side is positive limits 608
and I'm going to start the Homing procedure in the positive direction so 609
I will start here 610
you see and reached my Approach velocity 611
At this point 612
The system is detected output cam 613
assigned here as digital input 614
Usually we will use fast inputs for that 615
System automatically reduces speed 616
you will see here there are 10 milimeter per seconds 617
At the same direction Motor will be running at reduced speeds 618
until technology object detects 619
encoder zero mark right here and after that 620
There are some other parameters here homing 621
Set point and homing offset 622
so if you enter some value Different than zero 623
After 624
The system detects 625
The encoders remark 626
you see here the blue curve and arrows direction of rotation 627
And movement so... 628
At the positive direction at the same motor wheel rotates with entry velocity 629
And after the parameter here 630
homing offset 631
axis will be traveled 632
for instance 633
10 milimeters 634
and right here 635
This is the homing points 636
And if you answer here 637
homing set point or home set point 638
100 or -100 Is possible 639
and your axis actual position is 100 mm right now 640
Sometimes you're servo motor is running too fast or there are some 641
Mechanical problems so that's why it's possible to skip 642
The 643
output cam or home cam switch 644
On the Motor encoder site it's not possible to skip the 645
Encoder zero mark 646
For instance 647
We just missed or mechanical can or homing switch 648
At this case with new versions there is some option use negative 649
reversing cam or use positive reversing cam after you select this option 650
It is possible to answer here some additional input 651
Or if we already defined some negative Hardware limits 652
switchs 653
Or positive Hardware limit switch 654
It's possible to use limits as reversing cam 655
What will happen after we miss 656
This homing switch 657
axis will continue until it hits 658
The hardware limit switch 659
If you select this option 660
motor will be stop this way 661
and rotates opposite sides 662
in this case in our case is the negative Direction 663
After hits the positive limit switch and stops 664
And starts with approach velocity again on the negative Direction 665
If it misses or output cam again in that case 666
it should see the negative limit switch 667
I stopped again 668
And starts 669
Opposite direction 670
Worst case scenario 671
You're connected your limit switches in wrong normally open or normally closed contacts 672
So at this case or your limit switchs is not working 673
So motor will see on Drive side overcurrent 674
And you would get an axis error then stopped 675
Additionally 676
For user requirements with new versions 677
There are two different parameters here maximum distance homing output cam 678
like a watchdog timer in the background procedure 679
Technology object is calculating the actual 680
traveling range 681
if It's exceeds 682
For instance 100 millimeter 683
That means you missed already your output cam 684
Or there is something wrong is going on 685
axis will stops and throws and 686
exception 687
The similar rate distance to encoder zero mark 688
You can calculate 689
One rotation of the motor 690
It is 691
10 mm 692
In our case for instance and to here 693
And if it's not detected maybe your cabling is wrong or defected 694
Only your encoder zero Mark signal is missing for instance 695
for incremental HTL or TTL 696
datatype encoders 697
It is possible to stop your axis and throw an error so 698
In this way 699
you will control in everything 700
According to your application 701
When you take some option you see here the movement procedure 702
It's very useful screen 703
Describing the Homing procedure 704
After that you're just use this function home axis in your program 705
And that's it 706
So... 707
Sometimes it's needed to do passive homing 708
What does that mean 709
You just check the encoder zero Mark or external zero mark 710
and... 711
Somebody as real rotate motor 712
or You just detect the external zero mark 713
By the way 714
When your motor is rotating 715
then during movement you can home your axes 716
in some cases you will use 717
passive homing 718
Here is some information for old versions for sinamics 719
S120 parameter 495 720
Is external zero Mark for encoder and in addition 721
and parameter 490 off the control unit to invert the signal 722
Connected here 723
because for the older versions than 4.1 724
We have to do this assignment and signal interconnection as manual 725
Preferment 4.0 and higher 726
There's a button accept data from Drive 727
It's possible to 728
Set 729
Homing mode as automatic 730
Yep 731
As I said home required to Yes means software limit switchs only 732
Become after homing absolute motion and synchronous motion comments are rejected 733
you will get an error 734
40108 axis is not homed and relative motion is only permissible 735
so for for absolute encoders there's an adjusting feature 736
with Homing you just answer here your absolute homing offset value and that's it 737
No active forming an no rotation is necessary at this case 738
Next page 739
Seting the reference system shifting measuring system is also possible 740
There are some options in combobox absolute actual value reference absolute set 741
Superimpose absolute setpoint reference based coordinate system absolute 742
Set point reference and relative 743
you will see here the details 744
Next 745
Diagnostics of Axis or drives service overview 746
It is a commonly used screen as service Collegues 747
For service engineers 748
To detect the failure 749
Technology object 750
you will click target system service overview 751
It's looks like this 752
Position control status operational status 753
There are some information gathered together at the same page when you click 754
Extended button you see and dialog 755
Consist of 756
System variables 757
Green lamp is Axis is active 758
Red lamp is there is an error yellow lamp is Axis is motion 759
Gray and so on... 760
So of a TO querying a system variable 761
Actual position of axis 762
You can see also at the symbol browser here positioning state at your position is the same thing 763
Yep 764
So significance of the service display name and significance here 765
So technological alarms 766
There's a red light 767
That means there is an technological alarm at the axis 768
For example alarm 769
40106 software limit switch actuated 770
In this example 771
And so and other important topic is configuring alarms 772
First of all 773
You just double-click and execution system and second step 774
You will go to technological fault task there is a button alarm configuration and if 775
You agree 776
it will be in the opening window on your screen 777
The title is configuration technological alarms 778
Here you see your technology objects 779
axes and other things you can configure are your alarms as you wish 780
Let's see 781
Execution system 782
Technological fault task 783
Alarm configuration 784
Now I have couple of Technology objects measuring input and axis Master 785
So 786
in My case if I don't want to see 787
Comment Aborted note 788
It's possible to set Hidden 789
when I click accept 790
After that 791
I will no longer see these alarm number in my outptu window 792
Yep 793
There are some other error type messages 794
Some of them I can change from error to warning is possible 795
So... 796
at This case you need to be careful about that 797
You don't want to miss 798
At the meantime 799
Some information about the axes because you no longer. 800
get Comment aborted message 801
But when your program is not working properly and you want to debug 802
Maybe you're missing something 803
On the other hand that's why you need to be careful 804
Generally alarms occurs in technology object have an impact on the system after creating TO 805
each Alarm certain behavior is present as default 806
by specifying error activation it can be defined where the alarm is still be activated 807
after repeated 808
of an error or after certain period of time example... 809
Yep 810
Acknowledging technology alarms we have already use the this function 811
it is Possible to 812
Acknowledge specific technology objects on 813
Just one information, command aborted for one technology object for instance is 814
also possible 815
Usually after operator presses some button 816
on Rising Edge on HMI or real hardwired bottom 817
we will just acknowledged all the technological arms 818
using technology object trace it is 819
Different trace than the normal standard system Trace 820
So... 821
Here you see technology object trace is on the target system 822
Your settings first your technology objects 823
Settings for axis virtual recording once 824
10 events on the to I can change here the settings 825
event recording 826
Once quantity I think it's limited with 1000 827
No 828
Hundreds 829
yes 100 830
Okay 831
It's possible to start in trigger a variable 832
save in device memory card or we will go online and report to my PC 833
So we use technology object trace for Diagnostics and debug our program do 834
Run system 835
we will select your comments 836
PLC open comments technology object default 837
All comments selected on configuration data 838
When are use some Commands 839
To change the configuration data in my program 840
I receive here in the technology object 841
System error when I read or write some system variables 842
It will be recorded on TO trace and alarms 843
Here you may finds or with related alarms to axis virtual 844
If I want to log or debug or Trace technology 845
Alarms i will select here 846
and It's possible to record in the device 847
Or in my PC 848
We will use this option for debug our system 849
So here is the procedure activate online connection 850
Simotion call window 851
and list selectable trace use the button 852
Parameterize 853
And on the individual tabs parameterize to set things into Target system as stop 854
START to you trace 855
So basically we will go online to real system or simulation 856
Okay 857
i will download my settings for visual axis 858
And starter starter to trace 859
It's switch to recorded data while Trace is active 860
Right now 861
Should reach the 100 events 862
After that it's possible to get some messages 863
There's a button to upload data 864
There's no message right now because no come with execute it there's nothing 865
So 866
Let's try again 867
I would acknowledge some data 868
It was related with the other axis so I've stopped start again 869
Let's use our watch table for Axiss virtual 870
Let's say enable axis virtual to true 871
I made some modifications that's why I have download my program 872
Abortion is possible to download three grown and Technology objects will bo loaded 873
I have to set it permits restart on technology object 874
To activate 875
New configuration. data 876
Yes 877
it will be do this operation in Run mode 878
If it's possible 879
so in that case it is not possible simotion could not create to running States 880
Yeah edits to TOs so let's download in stop mods 881
error during trace 882
No problem 883
Yes 884
Let's try again 885
No 886
Recording 4 887
Recording 1 888
Recording 5 889
Yeah 890
So let's modify 891
Enable axis virtual 892
It's active disabled 893
This disabled 894
Okay 895
now i will see some events 896
here the timestamp technology object and events and current status 897
You'll see here the enabling Act is going to return value is 0 898
Parameters are here in the data grid View 899
All of the details 900
Is 901
it should effective completed or canceled 902
time stamps and you see here in MCC with one in programming 903
MC axis control on block 904
35 line 30 905
called from this position 906
It's an really good detailed information for 907
DEBUG 908
So... 909
If you want to know even more that are couple of pages using axis data sets 910
When you want to your second encoder than you have to create another axis data set 911
In configuration 912
Encoder configuration create a new encoder and Select the encoder 913
You will change 914
The type 915
there is a page related mode of operation and incremental or sin/cos encoder 916
It depends on your machine 917
Sometimes if 918
Your motor is too far away from your drive or sensor module 919
Maybe it's better to use a HTL encoder instead of 5 volts TTL 920
encoders or if the resolution is important 921
Of course the sin/cos encoders 922
Are analog signals in higher frequencies 923
It's 924
For provide 925
Fine resolution 926
Here you see and classical 927
Optical transmitter and receiver here there's a light source 928
There's a scanning plate on other side that are some photo elements 929
Just getting 930
signal here and convert into 931
Fine resolution at the drive site 932
you see Here sinus curve 933
or cosinus curve still together 934
So it depends on your projects and 935
at Field conditions sometimes 936
sin cos encoder is a better way especially if there are some disturbance 937
And other signals in your system 938
Next page 939
settings for incremental encoders and cyclic actual values sometimes 940
You have to enter here your encoder pulse per Revolution and fine reservation 941
with 942
SMC modules or different drive 943
And fine solution is also default is 11 and 9 bits in 944
drive side of sinamics 945
named as 946
GN 947
Geber1 auf deutsch 948
Actual value of encoder meaning 949
mode of operation on absolute encoder here some coded disc 950
Different layers a little bit 951
Produced in advance that are some hall effect elements and coded disc 952
you will see here the multi turn functionality 953
so with this way is possible to calculate the resolution 954
4096 revolutions as mechanical in 955
and endat interface another 956
Common communication interface in automation industry 957
like profibus encoders and profinet encoders that are are so different types 958
drive cliq 959
encoders of siemens or TR electronic 960
So next thing is settings for absolute encoders 961
Enter here pulse per Revolution resolution 962
512 963
Fine resolution of absolute value GN_XIS_1 is to 964
This from drive site should be the same for calculation correct 965
data width of absolute value without finel resolution 966
This is the main formation settings for absolute encoders 967
You should select absolute encoders with cycling surface 968
What's the difference 969
When the Overflow of multi turn information 970
I'm not saved in simotion when switched off with absolute encoder setting. 971
If you want to calculate after the simotion switch off You should set it 972
cyclic absolute 973
Yep 974
Setting for travel to fixed end stop functionality that are some settings here following 975
error Detection 976
Position tolerance after and stop detection 977
here 978
you see here maximum torque variable 979
It's not writable on simotion side that because is interconnected via Telegram 980
Automatic symbolic mode on the drive side 981
when It's not enough or it is not good for you you can just change 982
parameter 1520 on the driver side 983
Yep 984
and... 985
you can call travel to fix a stop function 986
with 987
Different options is possible to 988
Set a clamping volume as percent 989
That is a calculation formula 990
So... 991
So far so good 992
We are here at chapter 993
Technology objects axis and drives 994
We have already talked about the axis and drives 995
So I will switch to programming side and programming 996
motion of axis 997
We will continue with this Topic 998
But first just take it coffee break so see you then 999
So welcome my friends 1000
current chapter number is 10 1001
And we will continue to work with technology objects 1002
Axis and drives and you will learn about how do you use 1003
Axis functions and motion comments in simotion 1004
So let's continue with our sitrain programming 1005
Notes 1006
And are topics 1007
Simotion axis and drives technology objects 1008
Creating and configuring an access 1009
Changing configuration data via Scout 1010
Collecting and activating configuration. 1011
Using restart command to activate configuration data 1012
Programming and traversing 1013
General structure of commands 1014
motion buffers of an axis 1015
Translation of motion comments Blending motion of 1016
asis 1017
superimposed motion commands and so on... 1018
So let's start with first page 1019
Here you see simotion axes and drive chart 1020
basic view 1021
You 1022
We have selected linear or rotary axis type 1023
Default unit as millimeter and degrees 1024
here with green color access one blue code access 2 and red color axis 3 1025
Message frames 1026
Speed set points 1027
encoder actual values and so on. 1028
it is Adopted by System 1029
You see here communication with Drive and simotion 1030
So this is the driver side 1031
drive objects are current control 1032
Speed control power mode motor and encoder and so on 1033
On other sites already examined this chart 1034
Some expert list 1035
Consists of configuration data and system variable different kind of 1036
tech objects 1037
Okay 1038
So we will change 1039
Configuration data 1040
you will see effectiveness 1041
The Columns here there are 3 1042
Let's search for simotion 1043
Where are see right now only offline value column them 1044
with configuration data 1045
Let's go online 1046
I said it first before I have to start the simulation 1047
now we are Online 1048
You see here there is no actual value 1049
This is because we didn't download 1050
our project 1051
To CPU 1052
If there's a conflict or 1053
Difference between online and offline project 1054
So you're not able to see the actual values 1055
Because 1056
Templates or variable list doesn't match so 1057
You will see the same thing on the watch table 1058
Same reason 1059
so i will download with my project 1060
cpu goes to stop mode 1061
This is information I will take notes object trace results are not being saved 1062
How to save 1063
This 1064
It was said at XML file to my folder 1065
Your face 1066
Test 1 1067
All of the traces are exportable and importable 1068
So... 1069
Took long 1070
we see and expert list of Master configuration data 1071
Execution level configured value and next value 1072
for modulo 1073
This parameter change will be activated after TO restart 1074
TO restart is possible 1075
with 1076
This button activity or stopped or via system varible 1077
Or via system command 1078
You see here the variable 1079
if you write from your program 1080
This available activate restart 1081
Technology object will be restarts 1082
You can do it 1083
As default you see here. restart axis condition axis must be disabled in future 1084
if you change this to standstill 1085
You can restart your to while your axis is pulse enabled and Standstill 1086
If you select option with NO_CONSTRAINTS 1087
Restart of axis to be possible whenever you want 1088
It's 1089
Depends on your application 1090
It is necessary 1091
to do restart axis 1092
While motor is running rotating in positive direction for instance more than 1093
1000 rpms 1094
Maybe you have to do that you need to change the modulo 1095
Length for example it's possible 1096
by default You are able to do your restart 1097
When axis is disabled 1098
There are different ways possibilities to do that where user program 1099
You can just right here 1100
This variable 1101
So activate restart or you can use the comment Library technology 1102
drive axis or position axis 1103
You receive here 1104
Library 1105
Let's check 1106
You... 1107
Reset axis 1108
Yep and on the MCC program 1109
There is a command 1110
You have already used 1111
here reset object 1112
And you select 1113
Axis 1114
axis virtual 1115
if you do 1116
initialize system variables 1117
Initialize by default values 1118
when you call this command for reset axis 1119
in your program TO will be restarted 1120
Let's go to continiue with notes 1121
There's an example 1122
I have said that there are three different columns 1123
And one column is configurated value 1124
The other one is current value 1125
This is the set config data structure this is the active 1126
config data This is the 1127
config data as offline 1128
readable and writable 1129
Intermediate area 1130
of TO 1131
So... 1132
it is selected here 1133
Is this actually 100 1134
kv as P controller gain factor 1135
Originally it was 150 1136
Effectiveness is immediately so 1137
This is available for 1138
User variable axis 1 1139
active config data 1140
This column type of axis number of the data set 1 1141
Control structure 1142
kV controller kV 1143
We use this as with data and how do you write the data 1144
Program axis one set config data 1145
we right here 1146
during online run time 1147
Type of axis number of data sets 1148
data set 1 1149
and Set 200 1150
Let's find our kV here 1151
Search 1152
There are several gains 1153
In structure and Array elements 1154
No 1155
So let's check 1156
Oh, by the way I'm using virtual axis names of some parameters are 1157
Not available and in virtual axis 1158
So that's why 1159
you can filter here 1160
Your list 1161
For instance 1162
Yep. 1163
Now I will change the maximum jerk and maximum value for this axis 1164
For instance i enter here 1165
10000 1166
You see it's automatically added to current value 1167
This is active config data 1168
This is the set config data 1169
Actually during run-up 1170
You'll see kid original project it's will be copied 1171
Two intermediate area 1172
This is the on line with you this is the offline values 1173
So... 1174
now I did some changes 1175
in Online mode 1176
so Next time when I download the project old config data offline values 1177
will be written 20000 to new active config data 1178
so what should I do? 1179
First of all I have to do if I want to take all online changes 1180
to Do my offline project I have to do an uploads 1181
Load CPU drive unit to my projects that are several options 1182
you see... 1183
Only load configuration PG selected 1184
that means simotion scout will be take 1185
only the Configuration all of the TO of Technology axis 1186
Go to my PC 1187
note that likely there might be changed current data 1188
in target device this is our case you can transfer this 1189
prior to loading copy current data to ram 1190
I have to select it 1191
To do a proper upload 1192
Okay 1193
copy ram 2 rom executed first than my project 1194
config data changed 1195
now i see when I go to offline States 1196
My maximum jerk available is the new value 1197
10000 mm/s3 1198
Yes. 1199
I'm connected again 1200
Everything's looks 1201
Consistent 1202
Let's see the other choice during load of CPU 2 PG 1203
When I select load target device to PG 1204
For Successfully loading to PG additional data I must have been stored on the target system 1205
that means Settings 1206
We have to download the source codes of our projects 1207
Object in the offline project are overwritten objects that are only present 1208
Offline or deleted so... 1209
If there are several axes 1210
In my offline project and if there other axis 1211
Different than my project in online CPU it will be automatically 1212
arranged By the scout 1213
Doing load 1214
The targets 1215
to pc so this can result in the project can no longer be compiled 1216
after the loading to PG 1217
If there's some mistake or there is something missing 1218
It is therefore recommended its be saved before running 1219
Yeah you have to take your back up 1220
Before you go online and do until such as changes 1221
Is the target device contains dcc charts by the way it's not possible to upload 1222
DCC Charts source 1223
Next time if you want to use this 1224
Available you have to download the source of DCC chart 1225
The project is automatically saved after loading 2 PG in its recovery 1226
That's you create a backup copy of your project 1227
Yes. 1228
Open editors are closed 1229
without saving 1230
Yeah this is so important so before the upload you have to save the project 1231
reCommanded to take a backup 1232
Save before loading to PG will do this job for you 1233
overwrite Available libraries 1234
It's going to be check also index of CF cards in which library is available 1235
Similar to technology package and 1236
Will be overwritten 1237
So.. 1238
in our case we will use only the configuration up. 1239
Yep. 1240
Let's go in here 1241
Collecting and activating changed configuration data 1242
The effectiveness of change can be controlled with the system variable about the technology object system variable 1243
Activation mode change it change 1244
Meant to configuration data are to be activated so... 1245
If it is required 1246
I will change couple of variables more than one 1247
Four or five different variables and after that I don't want to lose time 1248
Or I have to end my function 1249
then 1250
only once Restart my axis to 1251
Otherwise 1252
When I change 1253
Some Parmenter and needs to restart 1254
It should be corrected by the system 1255
So... 1256
There's a system variable for that 1257
For restart 1258
Restart by System variable and command or restart by Command 1259
you can define also restart possibility 1260
So on the restart structure you see system available restart 1261
Activation setting 1262
What is default? 1263
There. 1264
Yes I'm in your system variables activation mode 1265
Activate change config data 1266
With this buttons 1267
Actually you overwrite this parameter changes 1268
now 1269
If I make a modification the system will be collect first all the modifications 1270
And after I click activate changes system will be 1271
Activate all of the changes at once 1272
This is important for 1273
if Effectiveness is immediate 1274
and You see here the system variables there's only one column 1275
and In configuration data there are three different columns 1276
So... 1277
when system variable activation mode change to activate change config data 1278
modified config data becomes Effective immediately 1279
if the system variable is set to this whether data collected up this point also activated 1280
As soon as possible 1281
when the system varible activation 1282
mode changed config data 1283
is Set and activated as together 1284
Activation happens 1285
when 1286
Is data set 1287
Activate changed config data again values of collected configuration data can be delayed 1288
without Activation by calling corresponding TO system 1289
There is a buffer when we change 1290
Config data by online by user program 1291
In any case we are able to 1292
Reset or config data buffer so we can just decide to not todo 1293
config data change 1294
So this is important! 1295
Once the data config modified configuration data item it is written it will take some time for change 1296
take effects even if the setting is activate change config data. 1297
timeout Likely in the task in particular when it would change 1298
Are meant to multiple configuration data item 1299
Simultaneous that means I have to use this kind of comments in my motion task 1300
Not in background task to prevent to overflow 1301
It's not possible to use wait commands in background because there are some more watchdog timers 1302
If you want to change multiple configuration data items simultaneously it's their advisable to collect 1303
First 1304
and then activate as whole 1305
To reduce the time 1306
By the way 1307
Yep. 1308
Using restart to activate configuration. here a button 1309
to activate restart 1310
that calls are function 1311
resetart axis yo 1312
here as orange background color modified data 1313
It just needed to resttart the to when you press this button 1314
your current value will be changed 1315
from yes you can use just restart activation system 1316
variable to set activate restart with two possibilities 1317
So let's make this exercise 1318
I'm going to change a couple of 1319
Configuration data in modulo for instance 1320
mechanics using your modulo is disabled 1321
In the page I cannot 1322
Set a record this here 1323
Because it's a configuration data 1324
it Request axis restart and I can do that in expert list 1325
So let's try 1326
First I will 1327
hit The collect changes 1328
I want the select one 1329
immediate effectiveness variable 1330
it can be 1331
Actual acceleration monitoring maybe 1332
Or maximum velocity as maximum. Okay 1333
let say 1334
22 1335
Thousands 1336
You'll see the orange color 1337
Yep 1338
So 1339
I want to set the modulo 1340
I want to change the length 1341
2000 start value 1342
-2000 1343
State be active 1344
So when I press the 1345
Activate 1346
You see here a message and alarm information axis master 1347
a restart is required to activate the config data 1348
At this point it is possible to detect 1349
When user goes here and do some changes 1350
Set the background I can check in my user program if it is required 1351
The restart of axis 1352
We are able to get ID number of alarm number in my user program 1353
When I hit that button activates your restartt 1354
you see here 1355
The color is white background and current value of configuration. data 1356
The changed 1357
Yep. 1358
Couple of mili seconds at this case 1359
So let's check on Mechanic screen 1360
now we see it is effective 1361
we did this with my hands 1362
In the real machine 1363
Sometimes it's required to activate Modulo and the activity so 1364
You have to program your function to take care of this procedure 1365
Yep 1366
So now what will happen if I go in offline mode? 1367
you will see here the old values before I did not do load to PG procedure so 1368
What would happen if I download my project again 1369
to Real system 1370
Let's try 1371
You see here the same values 1372
last current settings is off active 1373
Let's try to stop and restart CPU 1374
Stop 1375
Restart it 1376
and last values 1377
Still there 1378
It wasn't initialized 1379
Let's try this 1380
Power on off and reset 1381
Yes. 1382
Simulation did the power on procedure that's why you go offline 1383
Let's go online again 1384
So I didn't use the copy ram 2 rom function 1385
That's why off the power off and on I lost the project data let's download again 1386
It takes 1387
A few minutes 1388
You are configuring value 1389
it Is back to project setting so don't forget to load your online configuration 1390
to Your system it's important 1391
So let's continue 1392
Programming traversing that means using different kind of motion comments 1393
to make sequence and step program for axis motion control you see here 1394
The possible MC command 1395
Continue enable disable axis 1396
home move pos stop 1397
In structure text 1398
MC Command looks like this that are some input 1399
inout and output variables need to be connected 1400
As available or as reference 1401
First 1402
you need to describe your to axis 1403
Direction or velocity 1404
and so on... 1405
And there's an Return of the command 1406
This is the dynamic response section there are several parameters for 1407
Acceleration deceleration jerk 1408
Is some parameters for execution control 1409
delay or 1410
For transition 1411
and command ID reader used for identification 1412
System has a function named 1413
Gets command ID or set command ID during runtime there is some double word 1414
variable 1415
when you execute 1416
new motion command a new ID regenerated 1417
So 1418
You can check that way if your motion command is executed 1419
Or cancelled or it's done or if is there is some error 1420
this case it is possible to program 1421
In backgrounds 1422
motion buffer of an axis 1423
This is the main logic all the axis TO works 1424
with motion buffer queue 1425
So we have already talked about the behavior transmission of motion comments 1426
You see more detailed information 1427
As graphically what will happen when we use superimpose 1428
or for 1429
The other choices 1430
Settings for delay program execution 1431
Yeah it's possible to use command tracking 1432
with command id 1433
There's a system function get state of axis command it returns an 1434
enumeration variable there is another command for 1435
get motion state of axes commands 1436
So that way we can program 1437
Cyclic programs 1438
We don't have to use motion tasks 1439
and We can check 1440
If our Command is executed or is in motion buffer queue or it's 1441
Canceled by the user or its substituted by 1442
Any other new command is possible to track 1443
command via command id. 1444
so there is a return value 1445
there active or Existent 1446
not active or executed or aborted depends type of axis, you see here 1447
And buffering and deleting the comment In the TO is also possible 1448
With other system commands 1449
for evaluation of the motion status with command ID 1450
You would use here 1451
Get Motion state of axis commands 1452
There are several return reviews not existence 1453
That means commadn ID is wrong 1454
At least not now 1455
Buffer in execution 1456
In acceleration 1457
in deceleration 1458
Axis homed or axis synchronize or interpolation.done 1459
For positioning comments for instance for homming comments for instance 1460
For move commands for instance 1461
state of current 1462
Motion command 1463
Then this is the another way more advanced way to use 1464
To program sequence of motion 1465
Than like in MCC 1466
You don't have to 1467
Use acyclically the program execution for instance 1468
This way is so much easier 1469
As usual you're just selecting here 1470
in other way you have to use your comments here 1471
For instance 1472
Do you need to create another MCC 1473
asisgn Another Motion task or you need to create A ST program or ladder program whatever 1474
in Your background tasks 1475
You have to use this comments to track your account ID for detect 1476
It is 1477
In execution or 1478
Your axis is in the deceleration and it takes longer time 1479
when you compare but this is a cyclic programming so 1480
This has 1481
Some advantages 1482
Yep. 1483
Evolution of motion status with system variables you see here the system variable 1484
motion state data dat 1485
motion state 1486
And it's the blue curve is for trapezoidal motion profile 1487
And the other one needs 1488
Smooth s curvce accelerated started here 1489
you see 1490
constant move 1491
This here 1492
decelerated started at this point 1493
and end of interpolation 1494
at this area and motion done 1495
From this point 1496
We have already tried in the trace diagram 1497
and you see the difference 1498
For stopping an axis that are several options we talked about 1499
For emergency stop there is another commands stop that are some 1500
Options stop in different time or stop with maximum acceleration 1501
deceleration 1502
And so on 1503
Resuming a stop-motion to last it is possible 1504
with continiue to your comment 1505
Setting and shifting coordinate system or axis position 1506
Redefine is possible 1507
During running even axis 1508
Rotating reset axis to you 1509
With this command is possible to activate configuration data 1510
It's possible to activate 1511
TO restart 1512
So... 1513
If that's what you can change your config data in MCC program or insert 1514
structure text 1515
Reset axis error acknowledge errors in axis to your when operator hits some 1516
Reset button for instance 1517
For reading out of Errors on axis to your there's another function get axis error state 1518
You see here the structure 1519
Return variable function results 1520
error state and number of errors 1521
parameters about error number 1 or error number 2 and so on 1522
It is possible to get 8 different 1523
error or alarm numbers at same time with this function 1524
so get State yes or no number of errors 1525
Enabling axis command, you'll see the parameters 1526
Enable mode 1527
in mcc is easy to do that you just 1528
Use enable function and select 1529
From Combo box whatever you want 1530
Yep. 1531
in ST language you have to 1532
AsSign by writing in your keyboard 1533
so For disabling axis the similar way 1534
That's it for now 1535
now we learn about technology objects axis and a little bit of drives 1536
how do Connect to Drive site. 1537
so Maybe you should follow the exercises in lecture notes and 1538
For to understand 1539
I recommend you to make some exercise and create your own program 1540
and test it with simulation 1541
After a couple of chapters in the next time 1542
We will see us. 1543
Some example projects with simotion 1544
Running machines projects from running machines or process from real automation world 1545
We will go into detail and examine how do we program The Machine 1546
You may see the tips and tricks for better programming 1547
For guidelines 1548
And here if there's another chapter how to use lecture notes and exercises 1549
Exercises if you're confused with 1550
Exercises or lecture notes 1551
I try to explain 1552
How do we use 1553
The Notes 1554
so Step by step we will continue to learn the simotion together 1555
I see you next time