© Siemens AG 2011. All Rights Reserved.
SIMOTION
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationThe application examples and the associated documentation contained on
this DVD are made available without cost. The customer receives for the
software the non-exclusive, non transferable, free right to use the
software; this includes the right to change the software, to copy it changed
or unchanged, and to combine it with the customer's own software.
Siemens AG has not subjected the software to the normal system test
otherwise usual for software.
Any liability – irrespective of the legal reason – in particular because of
software errors or the associated documentation or damages resulting
from consulting is excluded, unless, for example, because of
premeditation, gross negligence, risk to life, injury or health, acceptance of
suitability guarantee, malicious concealment of a fault or a violation of
significant contractual obligations, would force liability. A reversal of the
burden of proof to the customer's disadvantage is thus not included.
German legal right applies. Place of jurisdiction is Erlangen.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSome preliminary comments
Before processing the Example for Beginners, it is advisable to study
”Getting Started with SIMOTION SCOUT" (Menu Help
Getting
Started).
In the example, some elements have been extended more than
necessary in order to demonstrate as many different aspects of
SIMOTION as possible (e.g. a virtual axis as master).
Menu- and context menu commands are shown in italic type as well as
the names of dialogs and tabs etc..
Menu
Sub menu are separated by an arrow.
The screenshots were created with SIMOTION Version 4.2 (05/2011).
Under some circumstances there may be minor changes for future
versions.
The firmware version on the SIMOTION D435 should agree with the
SIMOTION SCOUT version.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCarton
erector
P
ro
d
u
c
t f
e
e
d
Palletizer
Sensor
Conveyor belt
Package (full)
Package (empty)
Extractor
- Electrical travel
- Eject pneumatically
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationTask
Task:
Packages with a protruding machine part are used on a conveyor belt (drive 1).
An empty package is detected by a sensor and should be removed with an
extractor (drive 2). The removal itself is performed pneumatically. When an
emergency off switch is pressed, all drives should be stopped immediately. The
current position of the conveyor belt should be displayed on the operator panel.
The machine diagrams show a machine part, the implementation in
SIMOTION is shown in the following slides.
The solution concept shows only one of many possible solutions. This
particular solution was selected to use as many different SIMOTION
functions as possible:
Cam with CamTool
Gearbox synchronism
Camming
Output cams
Virtual master axis
etc.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSIMOTION SCOUT
ET 200 *
MICROMASTER 420 *
Profibus DP
D435
1 FK7
HMI
Carton erector *
Feed *
* Not considered in the example, but part of the complete plant
Transport
Extractor
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationExecution system
Time triggered Tasks Task 1 Task 2 Task 5
Motion Tasks Motion Task 1 Motion Task 2 Motion Task 20 Run
Startup Task Stop Run
Background Task Background Task
Call Motion Tasks
(se-quential tasks)
1
Synchronous Tasks IPO - sync Task 1 IPO - sync Task 2 Monitor the emergency off criteria
2
System Int Tasks System Int Tasks Interrupt Tasks User Int Task 1 User Int Task 2 System Int Tasks
Response to process signals
3
Shutdown Task Run Stop© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCentral topic for SIMOTION: Which job do I solve in which task or which
tasks are particularly suitable for specific jobs.
In the example, the background task is used to start sequential tasks
(MotionTasks).
The sequential tasks are used to implement processes and to start
movements.
The UserInterruptTask initiates an incorrect part handling depending on an
external signal.
The IPOsynchronousTask task monitors a protective door.
Another central question in SIMOTION:
Which program sections are programmed cyclically and which are programmed
sequentially. The same result can often be achieved in both ways. For motion
commands, SIMOTION supports the programming in the cyclical context. The
monitoring of the status of a motion command is performed by the system when
sequential programming is used (nextCommand:=WHEN_MOTION_DONE).
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationComparison of cyclical and sequential programming
To simplify the understanding, the comparison on a sample task follows: ”Pos “ should move
to “Target”; the “Finished“ variable is set to TRUE when the position is reached.
_pos ( axis:= Pos, position:= Ziel,
nextCommand:= WHEN_MOTION_DONE)
Fertig:= TRUE;
Sequential Task:
Cyclical Task:
Program processing stops until
the target position is reached
Pos_status:=
_getStateOfAxisCommand ( Pos,
PosCommandID) IF (Pos_status <> ACTIVE AND
Fertig = FALSE ) THEN _pos ( axis:= Pos,
position:= Ziel, nextCommand:= IMMEDIATELY, commandID:= PosCommandID); END_IF IF Pos.motionstatedata.motioncommand = MOTION_DONE THEN Fertig:= TRUE; END_IF
Cyclical program section
continued
Advance
command
Query status
pos. command
Pos. command
Advance
command
Query position
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSystem variables
Technology objects
SIMOTION device
Global user variables
I/O variables
Device global variables
Unit variables
Local user variables
Program variables
FC variables
FB variables
three types of variable groups:
System variables are automatically provided by
the system or from technological objects and do
not need to be created by the user.
Global user variables are defined by the user and
have a wide scope: device global, project global
or unit global.
Local user variables have a limited scope. They
are always valid only within the defining program
unit (program, function or function block).
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationVariable model
System variables
Technology objects
SIMOTION device
Global user variables
I/O variables
Device global variables
Unit variables
Local user variables
Program variables
FC variables
FB variables
Variable is assigned to a TO (e.g. actual position of an axis) Variable is assigned to the SIMOTION device
(e.g. system clock)
Variable indicates an input/output area (e.g. Startpos -> P10.1)
Variable can be accessed from anywhere on the device
1. A variable can only be used in programs, functions and function blocks.
2. A specially exported variable can also be used in other units.
Variable can only be used within the declaring program Variable can only be used within the declaring function (FC) Variable can only be used in the declaring function block (FB)
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCurrent situation
Task (machine diagram)
Topology concept with
SIMOTION
Program concept
Technology objects
Task structure
Task relationships
Variables
System environment
Create device
Specification of the possible DP
cycle clock
Creation of a hardware
configuration
Drives
Parameterization SINAMICS
Axis configuration
Master axis
Conveyorbelt
Extractor
Output cam configuration
Cam configuration
Form
Parameterization
Programming, parameterization
and test
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationTechnology objects
Virtual master axis
Positioning axis
Rotary axis (modulo)
Real axis - conveyorbelt
Following axis
Rotary axis (modulo)
Gearbox synchronism
Real axis - pusher
Following axis
Linear axis
Camming
Cam - extractor
Not cyclical
Cam controller – pneumatic
extractor
Position-based cams
Interpolator
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInitialization - ST
Background Task
Execution control - FUP
Call the homing task / initial
setting travel - FBD
Call the automatic operation
-FBD
Motion Task 2 (Homing)
Homing (incremental encoder)
and possibly initial setting
travel of the associated axes
-MCC
Motion Task 3 (Automatic
operation)
Start the master axis - MCC
MCC
Trigger the pneumatic valve
-MCC
Motion Task 4
Call the extractor task - MCC
User Interrupt Task 1 (stock outage
detection)
Call the extractor task - MCC
IPO sync Task (Emergency stop
monitoring)
Test protective door - MCC
Tech Fault / Peripheral Fault Task
(fault handling)
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationTask relationship / Program start
User Interrupt
IPO Sync Task
Start program pEject
Motion Task 2
Motion Task 3
Interrupts the Task
Startup
Background
Motion Task 3
Motion Task 4
Motion Task 2
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationDevice-global variables
None
Unit-global variables
Velocity of the leading axis
Open protective door
Program end
Operating mode
Local variables
None
I/O-variables (symbol browser)
Onboard inputs (CU)
ib16DigCU (all inputs)
WORD (DI_0_15)
iboEject (Sensor)
BOOL (DI_2)
iboProtDoor
BOOL (DI_0)
iboStartBelt
BOOL (DI_1)
Onboard outputs (output cam
object)
Onboard outputs (CU)
Extractor active
output cam (DO_8)
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSIMOTION create device
1.
Create new SIMOTION SCOUT project
2.
Create new device (D435 V4.2)
3.
Set the interface for PG to IE2/NET
The networking for PG in NetPro
will be created automatically
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSet system clock for integrated
drive interface
Context menu
SINAMICS_INTEGRATED
Object Properties...
The value of T
dpdetermines
the basic cycle of the
SIMOTION task system
Via each factors the settings
can be fine tuned
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationThe network configuration for PG is created automatically
Use the properties of the PG (Object properties) to
change the access address of the logical PG interface (e.g. IP-address)
(Tab Interfaces) or
change the physical mapping of the logical PG interface
(Tab Assignment)
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationStart drive configuration
The configuration assistant (wizard)
obtained all necessary information
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationUse unregulated Infeed
Create first drive
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSet drive name for conveyorbelt („conveyor“)
No function modules will enabled
in the drive
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSelect Power unit (dual-axis module) according to the rating plate
Wiring operation signal
Note: The drive parameter p0864 at power units with DRIVE-CLiQ have to be wired to the operation signal of the infeed. In all other cases the operating signal have to be wired to a digital input (e.g. CU). The chosen DI is now linked with p0864 via BICO.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationDrive 1 to Connection X1
Drive with DRIVE-CLiQ interface
No further details for motor type
required
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationDrive without holding break
Choose encoder for drive control
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationStandard communication with drive
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert drive
After entering the name of the extractor (“eject”) the configuration wizard
has to be repeated for drive 2. Shown below are just the dialogs that
differ in comparison to drive 1.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSelect the already added dual-axis module
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationMotor with SMC
motor type and speed in accordance with rating plate
Encoder in accordance with rating
plate
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory Information© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationFor the SIMOTION D training case (single phase connection) the drive
parameter p0210 has to be set from 600V to 345V.
Access via expert list.
This must be carried out for both drives.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationThe ratio of bus data cycle clock to servo cycle clock to interpolator
cycle clock (IPO) should be 1 : 1 : 1.
The bus data cycle clock is given
by HW config.
(here: DP cycle T
dp).
The reduction
of interpolator 2
(IPO_2) can be
chosen freely.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCreate a virtual leading axis („MasterAxis“) as positioning axis
Rotary axis
Virtual axis
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCreate a real slave axis („Conveyorbelt“)
Including synchronous operation
Rotary axis
Electrical axis
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationConnect the slave axis („Conveyorbelt“) to drive 1 („conveyor“)
Assign encoder for the
positioning controller
Note for the offline configuration: Encoder type (incremental or absolute) by motors with DRIVE-CLiQ interface have to be determined from the motor order number.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCreate a real slave axis („Ejector“)
Including synchronous operation
Linear axis
Electrical axis
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationConnect the slave axis („Ejector“) to drive 2 („eject“)
Assign encoder for the
positioning controller
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSynchronous operation between leading axis and conveyorbelt
Via the synchronous object of the axis
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSynchronous operation between conveyorbelt and extractor
By real leading axis (e.g. conveyorbelt) you can choose the setpoint or the actual
value as the set value.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationMasterAxis
No modifications
Conveyorbelt
Position control
Speed precontrol
activated
DSC activated; K
v= 50
Ejector
Position control
Speed precontrol
activated
DSC activated; K
v= 50
Automatic controller
setting
Via „Controller setting…“
you can reach the automatic
controller setting
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationConveyorbelt
No homing because absolute encoder
Ejector
Homing mode: Encoder zero mark only
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationSave and compile project
Either via menu Project
Save and compile all or via
the Toolbar.
Detailed view shows the compile results
The tab Compile / check output shows the results of compiling and checking.
The tab Address setup output shows the automatic performed address assignments.
The set standard settings from the drives and axis were evaluated and suitable
message frame types were chosen (Message frame type 105 and 390 for the Control
Unit). Also the associated address ranges were set.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert output cam to the axis Ejector
Before an output cam can be insert, an I/O of the control unit
has to be configured as output. (DO 8)
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert output cam to the axis Ejector
Output cam and track will be added in the directory Output Cam under the relevant
axis (Ejector).
One output cam were created by Insert output cam.
Set name of the output cam and activate Open editor
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationConfigure the output cam
Proc. cycle clock: IPO
Output cam type: Position based
cam (related to the axis Ejector)
Type of output cam values:
Setpoints
Advantage: Symbolic Access
No absolute address entry
Output cam configuration at the ejector valve
Activate output
Set Cam output to: Fast digital output
Set digital output DO 8 at the control unit.
This output won't be added to the symbol
browser.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCreate I/O-Variables at the symbol browser
iboProtDoor
protection door contact
(input 0 on the switch box of the training case)
iboStartBelt
start conveyorbelt
(input 1)
iboEject
sensor detect bad part
(input 2)
ib16DigCU
Image of the onboard-inputs
of the control unit
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationIn the general settings of the project is set,
that programs generally can be observed.
MCC-units can additional be observed in
single step mode.
In the properties of each unit you can
overload this basic settings if necessary.
Programming – Settings for program testing
When you insert a source a
properties dialog displays. In
this you can set the name and
if necessary the compiler
settings.
Later this settings can be
changed by the properties of
the existing source.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationFunction
Definition of all unit global variables in the INTERFACE field only in one
ST-unit.
Ensures easy exportability of global variables.
Prevent confusing cross-references (“links” or “USES”).
Retain variables and HMI variables are also declared on a separate
source.
Programming
Insert ST-unit „pDefInit“
Insert keywords VAR_GLOBAL
and END_VAR
Definition of the variables and
default values
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – variable initialization in ST („pDefInit“)
Programming
Insert keywords PROGRAM
„pInit“ and END_PROGRAM
Initialization of the variables at
STOP – RUN transition
Save and compile
Function
With the program “pInit” in the ST-unit “pDefInit” the variables will be set to
a defined value at startup.
The ST-unit “pInit” is to assign to the StartupTask.
The StartupTask is executed at every change of the operating state of the
SIMOTION control from STOP to RUN.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationBasic Procedure
Always when variables from “pDefInit” are used in an other source (e.g.
“pAuto”), “pDefInit” have to be assign to this source.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert MCC-unit “pTecFault” and add it to the
TechnologicalFaultTask after programming.
All alarms of a technological object can be quit (e.g.
Ejector).
Also you can quit a specific alarm (e.g. 30002) of a
technological object (conveyorbelt).
Programming – TechnologicalFaultTask
Function
For fault handling of technological objects
(e.g. axis).
In principle, an empty program can be used. Thus, the SIMOTION control won’t
STOP if errors occurs.
Note: During the commissioning and troubleshooting, it is advisable to acknowledge
as few alarms directly. These alarms often give clues of misconduct.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationAccess to I/Os of the drives only when the drive components have also
been ramped up (after Power On)
e.g. onboard inputs of the CU
Test in the program for valid accesses of the I/O variables
Is to be done in all cyclic tasks (e.g. via the variable “gboDriveActive”)
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – BackgroundTask in LAD/FBD
Programming of the BackgroundTask
Insert LAD/FBD-unit “pBckFBD”
Insert a LAD/FBD-program “pLADFBD” in the
LAD/FBD-unit
The homing and the automatic operation
are started depending on the contents of the
gi16Mode variable.
gi16Mode = 0
homing
gi16Mode = 1
automatic
This occurs only when
The protection door is closed and
MotionTask_1 or MotionTask_2
Stopped (performed),
Waiting and has been suspended (emergency stop)
Suspended (emergency stop)
In a LAD/FBD-program you can always switch between the
views LAD and FBD. This is done via the menu or the toolbar.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCreate local variables
b32TaskState : State of MotionTask_2 or MotionTask_3
b32RetStart : Return value of the function „_startTaskID“
boResult : Resultbit of the LAD/FBD-Networks
b32ResAnd : Result of the task state evaluation
boGo: Taskstartbit (TRUE if MotionTask_2 or MotionTask_3 have to be restarted)
sTaskSel : Structure that can contain TaskIDs (e.g. MotionTask_2 or MotionTask_3)
Network 1 – Drives ready
Jump to the end if the drives have not
been ramped up yet
No access possibly to
I/O-variables from SINAMICS.
Jump label “end” is created
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationNetwork 2 – query protection door contact
Jump to the end, if protection door is open
Networks 3 and 4 – selection of the task
Depending on the gi16Mode variable, the sTaskSel variable will be assigned the
value “MotionTask_1“ or “MotionTask_2“, respectively.
The task stored in the sTaskSel variable can be started in network 9.
The block “MOVE” is insert via the
command library - LAD/FBD elements.
Alternatively, an empty box is used. Then
the empty box is filled with the module
name.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationNetwork 5 and 6 – query task state
You can query the task state with the system function “_GetStateOfTaskId”
(command library – task system). The reported state is always clearly and
consistently.
This is a significant advantage over an application-locking by using boolean
variables.
The variable “sTaskSel” contains the task whose state is to be queried.
The return value is a DWORD (“b32TaskState”) that can be processed bitwise.
In Network 6 is a bitwise AND link of the return value with the value 16#0022.
This corresponds to the OR link of the two states “TASK_STATE_STOPPED” and
“TASK_STATE_SUSPENDED”.
Note: The different task state information can be
found in the manual SIMOTION SCOUT basic
functions.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationNetwork 7 and 8 – evaluate task state
The result of the bit AND logical operation is evaluated in this network.
If the return value is larger than 16#0000, the associated task must be restarted
(boGo = TRUE).
If the return value matches 16#0000, boGo becomes FALSE. This bypasses
restarting the task. Jump label is “end“ (network 9).
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationNetwork 9 and 10 – start task
This network becomes active as soon as a task needs to be restarted.
To start the task the system function “_restartTaskId” (command library – task
system) is used. This function can only be used to MotionTasks.
The return value is a DWORD (“b32RetStart”), which reports about success or
failure.
In Network 10 is a jump label “end”. This jump label is at the end of the block, so that
jumps to this position will end the block.
A jump label can be switched on or off. To do this you have to select the label and
switch it on or off via the toolbar or the menu.
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming - BackgroundTask (FBD)
The status of the FBD
program can be monitored
in this snapshot (monitor
online).
Network 2: The protection
door is closed.
Network 3 and 4: The
operating mode is
“automatic“ (gi16Mode = 1).
Consequently, Motiontask_3
is stored in the sTaskSel
variable.
Aktueller Wert
zur Laufzeit
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationConnect with “pDefInit”
Declare a local variable
“i32RetResetAxis” (Variable type
VAR, Data type DINT)
Reset axes in the “ST-Zoom” (after
emergency stop):
„i32RetResetAxis := _resetAxis
(Axis := MasterAxis);“
„i32RetResetAxis := _resetAxis
(Axis := Conveyorbelt);“
„i32RetResetAxis := _resetAxis
(Axis := Ejector);“
Alternatively, the axis enable can
also be removed and reapplied.
Set gboProtDoorOpen to “false”
Set gr64VMasterAxisOld to 0
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – Homing (Motion Task 2 MCC) 2/2
Homing:
Zeros on the “MasterAxis”
Enable “Conveyorbelt”
Enable “Ejector”
Deactivate “Valve” output cam
If necessary: active homing conveyorbelt (if an
incremental encoder is used).
Command can be displayed in case of need
again.
Active homing ejector
Use default settings
Optionally, an initial position motion can also
be connected here
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory Informationa double click
Use the arrow buttons to
assign previously created
programs to the execution
levels
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – First Test
Open the “Homing“ program (SCOUT must
be online) and start monitoring
Switch SIMOTION D435 to RUN
Depending on the configuration either both
or only one of these axes perform homing
Optionally, the program can also be run in
single-step mode
The axes are homed after passage through
the program
Note for the execution:
The “pBckFBD” program in the background task starts
the automatic operation as soon as the “gi16Mode”
variable is set to 1.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert MCC Chart “pAuto”
Connect with “pDefInit”
Enable “MasterAxis”
The conveyor belt starts with the positive edge of
the “iboStartBelt“ signal
Synchronize the conveyorbelt
see parameterization (following slides)
Activate the “Valve” output cam
see parameterization (following slides)
If the set velocity changes, switch continue
gr64VMasterAxis <> gr64VMasterAxisOld
Start master axis position-controlled with
“gr64VMasterAxis” velocity
For comparison, save the current velocity in
“gr64VMasterAxisOld := gr64VMasterAxis”
Until-loop with “gboProgEnd” condition
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationParameterization - Automatic (MCC)
Switch on the gearbox
synchronism of the
Conveyorbelt
“Synchronize immediately”
Synchronization length 1
Synchronization reference
master axis
Relative to the start
position (Parameters tab)
Activate the “Valve“ output cam
Switch-on position
0.1 mm
Switch-off position
0.4 mm
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationThe “gr64VMasterAxis” set velocity can
be controlled in the symbol browser or
in a watch table (control immediately)
The automatic program responds only
to a change of the set velocity
execution system
As previously, the monitoring is now activated
Operation:
Once the axes have been homed, the “Conveyorbelt“ starts
to turn as soon as a positive edge of “iboStartBelt“ is
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – Test using trace
Open the trace
Variables from the program
and from technological
objects (e.g. axes) can be
recorded in the trace
Procedure:
Select trace D435
Select variables
Load Trace in the D435
Start D435
Start trace
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory Information3 elements
1 interpolation point
left
1 straight line at 45°
1 interpolation point
right
Note: CAM Tool have to be
installed
Segment 1: Synchronize
to the conveyorbelt
Segment 2: Synchronous
operation with
conveyorbelt
Segment 3:
Desynchronize and return
to the initial position (wait
for the next defect part)
Segment 1
Segment 2
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationCam - Parameterization
Curve elements (straight line, interpolation point)
are selected in the CAMtool function bar.
Properties (right mouse click on the curve
element)
Straight line
x1 = y1 = 0.1
x2 = y2 = 0.4
Interpolation point left (create with symbol)
x = y = 0.0
Interpolation point right (create with symbol)
x = 0.8
y = 0.0
Scaling (Cam – “Target Device Parameter“ menu
Master
Base scaling 360
Slave
Base scaling 10
Note: The mouse pointer must be active in order to move
curve elements with the mouse. A decimal point must be
used for floating point numbers.
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationInsert MCC Chart “pEject”
Synchronize the cam
This motion task is started
with a user interrupt
The cam is processed
acyclically
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – Stock outage detection (user interrupt in MCC)
Stock outage detection:
Insert program “pEject”
Specify condition for user interrupt in the
execution system
Sensor at DI 2 (iboEject) at TRUE means
“eject” is coming (Input 2 on the switch box
of the D435 training case)
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationMonitoring the protection door:
Insert MCC Chart “pProtDoor”
Connect with “pDefInit”
Query whether protection door is
closed (true = closed)
If open , set “gboProtDoorOpen” bit,
because axes must be explicitly
reset after an emergency stop (see
automatic operation (MotionTask 3
in MCC) 1/2)
Query all MotionTasks using
“_GetStateOfTask (MotionTask_x)
<> 16#0002“ (where x = 1 to 3)
(test whether task “stopped”)
© Siemens AG 2011. All Rights Reserved.
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task Introductory InformationProgramming – Protection door (IPO synchronous in MCC) 2/2
Monitoring the protection door:
Query the axes for stoppage using
„MasterAxis.motionstatedata.
motionstate <> standstill“
„Conveyorbelt.motionstatedata.
motionstate <> standstill“
„Ejector.motionstatedata.
motionstate <> standstill“
If the axes are moving
Deactivate “Valve” output cam
Stop axes using “Fast stop with
maximum deceleration”
© Siemens AG 2011. All Rights Reserved.
Industry Sector
SIMOTION -Programming SIMOTION -Configuration SINAMICS -Configuration Create Project Program -Conception SIMOTION - Basic Information Task IntroductoryInformation