An offline simulation of user programs created with these languages is included. STEP 7 Professional thus replaces the combination of the individual packages STEP 7, S7-GRAPH, S7-SCL and S7-PLCSIM.
A PowerPack (conversion package) is available for customers who use STEP 7 already and wish to change. A valid STEP 7 license is required for purchasing the POWERPACK. A separate Software Update Service can be purchased for STEP 7 Professional.
Note
The STEP 7 (TIA Portal) engineering software is required to program the new generation of S7-1200, S7-1500 and ET 200SP CPU PLCs as well as the S7-1500 Software Controller; it can also be used for programming the S7-300, S7-400 and SIMATIC WinAC.
Siemens offers a combo license for both platforms which enables you to work using both STEP 7 (TIA Portal) as well as traditional engineering software. See "Licensing" for more information.
Licensing
- New installations of STEP 7 Professional 2021 are only available as combo licenses together with STEP 7 Professional V17 (TIA Portal). The software can be installed on multiple computers. The number of existing licenses determines the number of computers on which the software can be used simultaneously (floating license). A 50 h rental license is available for limited use.
- An upgrade to V17/2021 Combo is available for users of the previous STEP 7 Professional 2006...2010 versions.
- The license of the version V16/2017 Combo can also be used for STEP 7 V5.7.
- PowerPack and upgrade enable migration from STEP 7 V5.7 to STEP 7 Professional V17/2021 Combo.
- A trial license is available for testing purposes.
- It is possible to conclude Software Update Service (SUS) contracts.
You can find more information on the Software Update Service, license types, Online Software Delivery and handling your SW licenses with the Automation License Manager under this link.
Application
STEP 7
STEP 7 basic software is the standard tool for the SIMATIC S7, SIMATIC C7 and SIMATIC WinAC automation systems. It enables the user to use the performance capability of these systems easily and conveniently.
STEP 7 contains convenient functions for all phases of an automation project:
- Configuring and parameterizing the hardware.
- Specifying the communication.
- Programming.
- Test, start-up and service.
- Documentation, archiving.
- Operating/diagnostics functions.
All functions are supported by the extensive online help.
STEP 7 is installed as standard on the Field PG M programming device. It is also available as a software package for a PC installation. For use with a PC, a PC module or PC adapter is required. STEP 7 allows several users to work on a project simultaneously. Write access from more than one user is prevented.
S7-SCL
S7-SCL (Structured Control Language) is a PASCAL-type high-level language that is optimized for the programming of programmable logic controllers.
S7-SCL supports:
- The fast and easy creation of programs.
- Improved quality of the PLC program.
- Clarity.
- Easier testing.
The user is then able to formulate time-saving and cost-effective solutions for automation tasks.
S7-SCL can be used in the SIMATIC S7-300 (CPU 314 and CPU 312C and higher are recommended), SIMATIC S7-400,SIMATIC C7 and SIMATIC WinAC automation systems.
S7-SCL has received the PLCopen Base Level certificate.
S7-GRAPH
The engineering software S7-GRAPH is used to configure and program sequences within a process in a standardized presentation format (according to DIN EN 6 1131-3). The sequence (e.g. manufacturing of a component) is subdivided into consecutive or simultaneous steps.
Subdivision makes the PLC program clearer and easier to analyze in the event of a fault. This is particularly helpful in manufacturing industry to prevent costly downtimes.
When working with S7-GRAPH, the user is presented with a modern Windows user interface with pixel graphics, windows technology and zoom functions.
The methodical procedure and clear presentation make S7-GRAPH efficient software for the description of sequential processes.
S7-GRAPH can be used in the SIMATIC S7-300 (CPU 314 and CPU 312C and higher are recommended), SIMATIC S7-400, SIMATIC C7 and SIMATIC WinAC automation systems.
S7-GRAPH has received the PLCopen Base Level certificate.
S7-PLCSIM
The simulation software S7-PLCSIM supports functional testing of the SIMATIC S7 user blocks on the PG/PC, independently of the availability of the target hardware. Program error detection and elimination can therefore be moved to an earlier phase of the project. This supports:
- Faster, less expensive initial start-up.
- Increased program quality.
S7-PLCSIM can be used for all user blocks and a selection of existing system functions.
The field of application ranges from the languages
through to all SIMATIC Engineering Tools:
- S7-GRAPH
- S7-HiGraph
- S7-SCL
- CFC (incl. SFC).
Extended application areas:
- S7-PDIAG
- WinCC (installed locally)
Design
STEP 7
STEP 7 basic software provides users with different tools for carrying out their automation projects:
- SIMATIC Manager:
For the common and orderly management of all tools and data for the SIMATIC S7, SIMATIC C7 and SIMATIC WinAC. - Symbol editor:
For defining symbolic designations, data types and comments of global tags. - Hardware configuration:
For configuration of the automation system and for parameterization of all settable modules. - Communication:
For configuring connections. Cyclic data transmission between automation components via MPI or for event-driven data transmission by means of either MPI, via PROFIBUS or Industrial Ethernet. - Information functions:
For a fast overview of CPU data and the causes of trouble during execution of a user program.
For the creation of a user-written program, STEP 7 offers the following field-proven, standardized PLC programming languages:
- Statement List (STL)
- Ladder (LAD)
- Function Block Diagram (FBD)
Furthermore, for special tasks, additional programming languages or technology-oriented configurations can be employed.
Function
STEP 7
STEP 7 blocks
In STEP 7, all user programs as well as the data required for these are stored in blocks. The possibility to call other blocks within a block – like a subroutine – permits structuring of the user program. This considerably increases the transparency, clarity and maintainability of PLC programs. The following block types are available:
- Organization blocks (OBs) control the program sequence.
- Depending on the triggering event, OBs are divided into classes (e.g. time-controlled, alarm-controlled) which have different priorities. They can interrupt each other, depending on the priority.
- When an OB is started, detailed start information on the triggering event is provided. This information can be evaluated in the user program.
- Function blocks (FBs) contain the actual user program.
- Function blocks can be supplied with different data on each call (the so-called instance). This data, as well as internal tags (e.g. for intermediate values) and results, is stored in the assigned instance data block and automatically managed by the system.
- Instance data blocks (instance DBs) are assigned to the block when an FB/SFB is called. They are generated automatically during compilation.
- The user can access this instance data (also symbolically, of course) from any point of the user program or from an operator control and monitoring system.
- Functions (FCs) contain program routines for frequently used functions.
- Each function has a fixed function value (as an addition to the IEC standard, multiple output parameters are possible). All output parameters must be processed further directly after being called. Therefore, functions do not need an instance data block.
- Data blocks (DBs) are data areas for storing user data.
- In addition to the data assigned to respective function blocks (instance data), global data can be defined and used by any blocks (e.g. for recipes).
- An elementary or structured data type can be assigned to the components of a data block. BOOL, REAL and INTEGER are examples of elementary data types. Structured data types (fields and structures) are composed of elementary data types (e.g. a recipe). The data of a data block can be addressed symbolically. This facilitates the programming and readability of the program.
- System function blocks (SFBs) are function blocks (see above) which are integrated in the operating system of the CPU, e.g. SEND, RECEIVE, controller. The tags of the SFBs are also stored in instance DBs.
- System functions (SFCs) are functions (see above) which are integrated in the operating system of the CPU, e.g. time functions, block transfers.
- System data blocks (SDBs) are data for the operating system of the CPU which contain system settings, e.g. module parameters.
Tools
SIMATIC Manager
The SIMATIC Manager manages all data that belongs to an automation project – regardless of the target system (SIMATIC S7, SIMATIC C7 or SIMATIC WinAC) on which it is realized.
It allows a common introduction to all SIMATIC S7, C7 and WinAC tools. The SIMATIC software tools that are required to edit the selected data are automatically started by the SIMATIC Manager.
Symbol Editor
All global tags (in contrast to the local formal parameters declared during programming of the blocks) are managed with the Symbol Editor tool. The following functions are available:
- Definition of symbolic designations and comments on the process signals (inputs/outputs), bit memories and blocks.
- Sorting functions.
- Data exchange with other Windows programs.
The resulting symbol table is available to all applications. Changes to a symbol parameter are therefore automatically recognized by all tools.
Hardware configuration
The hardware configuration tool is used for configuring and assigning parameters to the hardware of an automation project. The following functions are available:
- Configuration of the automation system:
Racks are selected from an electronic catalog and the selected modules are assigned to the desired slots in the racks. - The distributed I/O is configured in the same way as the centralized I/O. Channel-specific I/O is also supported.
- Assigning CPU parameters:
Properties such as startup behavior and cycle time monitoring can be set guided by menus. Multicomputing is supported. The input data is saved in system data blocks on the CPU. - Assigning module parameters:
The user can set all adjustable parameters of the modules in input screens. Settings by means of DIP switches are not necessary. The module parameters are assigned automatically during CPU startup. In this way, module replacement without reassigning parameters is possible, for example. - Assigning parameters to function modules (FMs) and communications processors (CPs):
Parameter assignment also takes place within the hardware configuration in the same way as parameter assignment of the remaining modules. For this purpose, module-specific screen forms and rules are made available for each FM and CP (in the scope of supply of the FM/CP function package). The system prevents incorrect entries by only offering permissible input options in the parameterization screen forms.
System diagnostics
System diagnostics gives the user an overview of the state of the automation system. This can be represented in two ways:
- Display of text messages that can be read out quickly and directly.
- Fully graphic display in HW Config with the following options:
- Display of general information about the module (e.g. Article No., version, designation) and state of the module (e.g. faulty).
- Indication of module errors (e.g. channel errors) of centralized I/O and DP slaves.
- Display of messages from the diagnostics buffer.
For CPUs, the following additional information is displayed:
- Causes of an error in the user program cycle.
- Indication of the cycle time (longest, shortest and last cycle).
- Display of the occupied and free memory.
- Options and utilization of MPI communication.
- Indication of performance data (number of possible inputs/outputs, bit memories, counters, timers and blocks).
Communication configuration
- Configuring and displaying connections.
- Time-controlled, cyclic data transfer over MPI:
- Selection of the communication devices.
- Entry of data source and data target in a table. Generation of all blocks (SDBs) to be loaded and complete transfer of these blocks to all CPUs takes place automatically.
- Event-driven data transmission:
- Definition of communication connections.
- Selection of communication blocks (CFBs) from the integrated block library.
- Assignment of parameters to the selected communication blocks in the usual programming language (e.g. LAD).
Programming languages
The established programming languages ladder logic (LAD), function block diagram (FBD) and statement list (STL) are available for programming. Programs can be created according to DIN EN 6.1131-3 in the classic PLC programming languages ladder logic (LAD) and function block diagram (FBD).
The user-friendly, fully graphical LAD and FBD editors support the programmer with:
- Simple and intuitive operation:
The ladder/function diagrams are created with the convenient functionality familiar from PC programs, such as drag-and-drop and copy/paste. - Library with preconfigured complex functions (e.g. PID controller) or own standard solutions.
The statement list (STL) textual programming language enables the creation of "hardware-level" runtime- and memory-optimized user programs. The programmer is supported here by convenient editing functions:
- Input possible in incremental mode and free text mode:
The user can either have each input checked for correctness immediately in an "incremental" manner or create the complete program purely symbolically in a text and editor and then compile it with the correct symbol table.
Instruction set
The programming languages of STEP 7 have a comprehensive set of commands based on STEP 5. With these commands, even complex functions can be programmed easily (i.e. without significant programming expertise) and quickly.
The following functions are available:
- Binary logic (incl. edge evaluation).
- Word operations.
- Timers/counters.
- Comparison functions.
- Conversion functions.
- Shifting/rotating.
- Mathematical functions (incl. trigonometry, exponent, logarithm).
- Program control (jumps, jump distributors, calls, master control relays).
Improved test functions and service functions further facilitate programming:
- Setting breakpoints (only S7-400).
- Forcing inputs and outputs (only S7-400).
- Rewiring.
- Display of cross-references.
STEP 7 supports multicomputing with S7-400.
Status functions:
- Downloading and testing blocks directly from the editor.
- Status of multiple blocks at the same time.
- Search functions:
Using search criteria (e.g. symbol name, operand), specific program locations can be found quickly (XRef).
Online help (F1) is available for all functions and blocks.
Note:
Screenshots relating to the individual STEP 7 tools are available for viewing.
S7-SCL
- Integrated user interface with editor, compiler and debugger.
- Symbolic connection in the debugger.
- Language elements from programming in high-level languages, e.g. serial loops, alternative branches and jump distributors.
- PLC-typical language extensions, e.g. addressing of inputs and outputs, or start and scanning of timers and counters.
- Elementary and self-defined data types for clear structuring of the PLC programs. Symbols and comments further improve understandability.
- Source concept that enables fully symbolic programming and saving of the complete program in a source file.
- Generation of an optimized code with low compiler workload.
- Display of cross-references.
- User program test at high-level language standard possible (as known from the other PLC languages).
- Linking to project-wide documentation system (DOCPRO).
S7-GRAPH
- Overview:
The complete sequence structure can be represented. - Single sheet view:
The sequence structure, the step enabling conditions and the step actions can be displayed together on one sheet. - Detailed display:
The actions and transitions (with step enabling conditions) belonging to a step and the interlock and supervision conditions are displayed together. - Flexible sequencer structure:
With simultaneous and alternative branches, jumps within sequencers, step enabling and disabling, the user has a large number of possibilities for describing the task. Any number of sequencers can be configured in the same block. - Languages:
The available languages enable simple programming of conditions and actions for the user. - Online functions:
Display of active steps, status of the interlock, supervision and step enabling conditions, as well as executed actions. - Performance:
Good performance is achieved through the selective processing of the steps. The processing time of a sequencer is independent of the number of steps. - Linking to project-wide documentation system (DOCPRO).
- Memory requirements of the administration part can be adjusted as required;
S7-GRAPH offers different configurable compiler options to integrate the general management part of the sequencer block:
- "Runs standalone" option:
The administration part (approx. 5 KB) is contained in every function block generated by S7-GRAPH. This is the solution for small applications with only one sequencer block. - Option with "standard FC":
The administration part is stored in a separate block which only exists once per project and is used by all sequencer blocks. Depending on the type of this standard FC, the memory requirement is 8 or 10 KB.
- System function "FC 73" (as of V5.1):
The FC 73 enables a lower-memory solution of under 8 KB, which is particularly interesting for the smaller CPUs of S7-300. However, the following restrictions apply when using the FC 73:
- The created blocks are not capable of diagnostics.
- Visualization of the created blocks is limited.
- Synchronization functionality:
Sequencers can be controlled and synchronized with the current state of the plant/machine. In the event of program changes with download of the instance DB, the sequence is automatically reset to the basic setting. By means of the "Control sequence" function, it is now possible to set and reset steps directly from the programming device so that the sequence can be reset to the state of the plant before the program change. Synchronization can also be performed directly from the programming device. All transitions and interlock conditions are automatically acquired in the process and the possible steps are marked. Then, the user only needs to select and activate the step or steps. - User-defined call interface:
For the call interface of the sequence block, there are two possible options:
- Predefined parameters sets, choose between Mini, Standard and Maximum.
- User-defined parameters for flexible adjustment to the requirements of the application.
- Extensive diagnostic functions:
Identification of error causes by displaying or signaling the faulty step. Furthermore, inclusion in the SIMATIC diagnostics concept with SIMATIC ProTool/Pro and SIMATIC ProAgent enables the simple integration of Operator Panels and WinCC for fault display with plain text and for display of the causing signals (criteria analysis). - Advanced printing functions (as of V5.1):
- A page break is always inserted after a "step plus transition".
- A page break can be set at sequence/graph end.
- A separate comment can be entered for each graph.
- Improved window structure (as of V5.1):
The S7-GRAPH work window only contains the sequencer to be edited. All additional information required for programming can be shown and hidden as required by the following windows:
- Information on the interface of the block (block parameters and tags).
- Used operands (including status display for all data types).
- Cross-references to other points of use of operands in the program.
- Used symbols from the symbol table.
- Simultaneous selection of multiple objects with the usual Windows procedure (as of V5.1):
- Lasso function (selection frame around the desired elements) with "cut, copy, paste" for simple and fast copying and deletion of steps and transitions.
- Items that are not next to each other can be selected with the "CTRL" button.
- In parallel structures, individual branches or graphs can be selected and deleted with the lasso function.
Mode of operation
In the sequencers, the individual steps of a process and the transitions to the next steps are displayed as rectangles and lines (picture). In the steps, actions can be triggered and their execution can be controlled by so-called "qualifiers" (e.g. time-delayed or conditional execution). For example, if a drilling process is described with a sequencer, "Sink the drill" is a step and "Actuate the associated motor" is an action.
The conditions under which a transition to the next step should take place are described in the transitions. In the "Drilling process" example, the step-enabling criterion of the sequencer would be met with the "Lower end position reached" condition.
In addition, interlock and supervision conditions can be defined for each step.
The execution of actions can be prevented with an interlock. Supervision conditions serve to identify sequence errors. All conditions (transitions, interlocks and supervisions) can be programmed in either LAD or FBD.
S7-PLCSIM
S7-PLCSIM is fully integrated into STEP 7. This allows the use of additional functions:
- Test and commissioning functions of STEP 7.
- Test functions of the programming languages used (see S7-PLCSIM application area).
Further user-friendly functions are available to the user during the test with S7-PLCSIM:
- Different operating modes:
- Display of accumulators, block register, and nesting stacks.
- Operator interface for monitoring and modifying inputs, outputs, bit memories, timers, counters, and data.
- Triggering error OBs.
Mode of operation
S7-PLCSIM simulates a SIMATIC S7 CPU with the associated process images. The program to be tested is loaded into the simulated S7 CPU in a manner identical to the procedure with real hardware, and is executed there. S7-PLCSIM also supports an interface that allows the exchange of process values between S7-PLCSIM and other Windows applications. Communication is based on ActiveX-Control, for example, for interfaces:
- Reading/writing process values.
- Changing the execution mode (e.g. 1 cycle).
Integration
Components for connecting a PC to MPI and PROFIBUS
The components described below are used to connect programming devices and PCs (incl. notebooks) to PROFIBUS and to the multipoint SIMATIC S7 MPI interface in conjunction with STEP 7.
USB A2 PC adapter
- For the connection of PCs/notebooks and SIMATIC PG/PC to the SIMATIC S7 automation system via USB interface.
- For connection to USB 1.1, 2.0 and 3.0 interfaces
- Power supply from the USB interface
- PROFIBUS connection with up to 12 Mbps
- Support for routing
- Automatic transmission rate and profile search
- Can be used as of Windows XP SP2
- As of Windows 7, can also be used with 64-bit systems
- Scope of supply:
- USB A2 adapter
- CD with drivers for the PC adapter USB A2
- USB cable
- MPI cable, 0.3 m
CP 5612
- For connection of PCs and SIMATIC PG/PC to PROFIBUS at up to 12 Mbps and to the MPI interface of SIMATIC S7.
- PCI card (Universal keyed 5 V/3.3 V).
You will find more information about the online connection of PCs and SIMATIC S7/C7 PLCs under "SIMATIC NET Communication Systems".