Вы находитесь на странице: 1из 57

Automation

Programming
Convergence
Jeff Brown
Siemens
Sales Specialist Automation

Booth 813
Topics

• Automation Programming Perspectives


• Siemens Introduction
• Example Automation Systems
• Automation Technology Convergence
• Industry 4.0/Digitalization

• Automation Programming Convergence


• Systems Engineering Approach
• TIA Portal Overview
• Automated Generation
• Improved Diagnostics

Programming Methodologies
• Traditional Approach
• More Advanced Structured Programming/Object Based
• Most Advanced SDK C++ Integration
Digital Factory
Siemens Organizational Structure
9 Divisions are working
Customer
Go-to-market

on the global trends

Middle Europe, Asia, Global


Americas
East, CIS1) Africa
Market Australia Healthcare
Separately
managed

Healthcare
Power Wind Energy Building Mobility Digital Process Financial
Divisions

and Gas Power and Manage- Technolo- Factory Industries Services


Renewables ment gies and Drives

PG WP
Power Generation Services

PS EM BT MO DF PD HC SFS

Corporate Services Managing Board Corporate Core


The Totally Integrated Automation Portfolio
Enterprise Level
ERP
NX TEAMCENTER TECNOMATIX
Product Collaborative Digital
ERP PLM Development PDM Manufacturing PLM

Management Level

SIMATIC IT SIMATIC IT SIMATIC IT COMOS


MES Plant Engineering Production Suite R&D Suite Intelligence Suite Plant Engineering
Totally Integrated

Operator Level
Automation

SIMATIC WinCC
SCADA System

PCS 7 SCADA

Control Level

TIA PORTAL
SIMATIC SIMATIC SINUMERIK SIMOTION Engineering
Controllers HMI CNC Motion Control
Framework for
Automation Tasks
Field Level SIMATIC NET
Industrial
Communication
SIMATIC IDENT SIMATIC Distributed SINAMICS
Motor Control Industrial I/O Drive Systems
Identification
Example Systems For Manufacturing

Complex Machinery Automation


ƒ Demanding For Specific Tasks • PC-Based Control
• VB.NET HMI
ƒ Tightly Integrated Motion Control
• IEC1131 Programming Languages
ƒ Customized User Interface • G-Code Interpreters
ƒ Purpose Built Machinery • Embedded Systems
ƒ High Engineering Value Add
ƒ OEM supported

General Machine/Skid Automation


ƒ Repeatable Production Machine • Programmable Automation
ƒ Medium/Low Level Complexity Controllers
• Integrated Automation Systems
ƒ End User Supported • Ladder Logic
ƒ Very Competitive Market • HMI
ƒ Cost Reduction Engineering • Micro PLC Market
• End User Standard Driven
Example Systems For Manufacturing
Production Line/Discrete • PLC Based
ƒ Integration Of Components • Integrated Automation Engineering
• Ladder Logic/Structured Text
ƒ Communications Demands • HMI
ƒ Robotics Integration • Micro PLC Market
• End User Standard Driven
ƒ Cell Configuration • SCADA
ƒ High End User Support • Networking/Information
ƒ Off The Shelf Equipment

Process Manufacturing • DCS Based


ƒ Systems Approach • Vendor Supplied Engineering
• Networking/Information
ƒ Emphasis On • Code Libraries/Re-use
Measurements/Instrumentation • Function Block Programming
ƒ Vendor Supplied Automation Systems –
DCS
ƒ Vendor Supports Automation Systems
Technology Convergence

Hardwired PLC Based Integrated Systems Digitalization

1958 1964 1973 1979 1994 1998 2010 2017


SIMATIC Integrated Systems Digitalization/Industry 4.0/IOT
SIMATIC S3
SIMATIC N
More than 35 years of SIMATIC S5
... Industry Consolidation TIA Portal Simatic S71200/1500
-TI/Moore Process acquired by Siemens
-AB acquired by Rockwell Automation -Digitalization Focus
-Modicon/SquareD acquired by Groupe -B&R acquired by ABB
Schneider -GE spinoff Electrical Assets
-Fisher/Rosemount/Bristol acquired by -Emerson pursuit Rockwell Automation
Emerson
-Bailey acquired by ABB
-Digitalization
Rise Of The PLC -Foxboro/Wonderware acquired by Schneider
-Information/IOT
-Modicon
-Integrated Systems -Embedded Systems
-Siemens
-Motion Control Automation
-TI Rise Of DCS -PC Based Automation -Diverse Programming
-Allen Bradley • Analog/Digital Convergence -Hybrid DCS/PLC Methodologies

SIMATIC S7 is and will be the innovative and future-proof Controller system of Siemens Industry
Industry 4.0 represents the next paradigm shift in manufacturing…
and brings huge potential for those whom embrace the concepts

First Second Third Fourth Characteristics


Industrial Revolution Industrial Revolution Industrial Revolution Industrial (R)Evolution

Based on the introduction Based on mass pro- Based on the use of … driven by Digitalization, •• 30-50% improved
of mechanical production duction achieved by electronics and IT to Integration and enhanced Humans, devices and systems
equipment driven
by water and steam
division of labor concept
and the use of electrical
further automate
production (automation)
Flexibility efficiency
are connected along the entire
power energy (electrification) value chain
• All relevant information is
• 20-25%
available inless resource
real-time – across
consumption
suppliers, manufacturers and
customers
• Value chain can constantly
1784: First mechanical loom 1870: First conveyor belt,
Cincinnati slaughterhouse,
1969: First programmable
logic controller (PLC) • 30%
optimizehigher revenues
with respect to different
1908: Ford T-Model Modicon 084,
criteria,
McKinsey,e.g.,
2015cost, resources,
customer needs

Time
1800 1900 2000 2025
Systems Engineering Approach

• Real automation systems involve a lot of Real automation projects require teamwork to succeed
equipment • Multiple specialists working together
ƒ PLCs and distributed I/O • Under a Project manager to organize the effort
ƒ CNC and motion controls • In a coordinated effort
• To deliver an integrated solution
ƒ HMI panels and computers
ƒ Motors and drives
ƒ Safety systems
ƒ Computers
ƒ Communications networks
• Real automation projects require extensive
engineering
ƒ PLC programming HMI configuration and programming
ƒ Drive system parameterization and engineering
ƒ Network design and integration
ƒ Integration of OEM machines into the process
Systems Engineering Approach
Step 1 – Defining the System Architecture
Factors influencing the system architecture:

ƒ Speed of System Response


ƒ Program Size
ƒ I/O Count
ƒ Local I/O versus Remote I/O
ƒ Equipment Environment
ƒ Space
ƒ Cost
ƒ Existing System and possible expansion
capability
ƒ Drive and Motion Control Integration

…and many more.


Systems Engineering Approach
Step 2 – Managing Project Data and Versions/Revisions
ƒ The task of automating a machine or process requires creating and storing all
of the information for each piece of automation equipment.

ƒ While each component has the ability to be programmed and operated


individually, these components are managed as a single entity known as a
“Project.”

ƒ In many cases, this Project may consist of many, many files in multiple
directories on an engineering station, especially if there are multiple
manufacturers supplying equipment.
Systems Engineering Approach
Step 3 - Configuring and Testing PLC System Components
ƒ Configure and parameterize the PLC
» CPU
» I/O modules
» I/O networks
» communications cards
» any special function modules

ƒ Save, compile, download and test the


PLC hardware station
Systems Engineering Approach
Step 4 – Building and Testing a PLC Program
Once the hardware is configured and tested, program creation begins.

ƒ Programs define the operation and response of the system

ƒ Programs can contain main sections, start-up routines, error response routines, time-
based routines, process-initiated routines, and hardware fault routines, all of which need
to be organized logically.

ƒ Programs can be further broken down based on control zones within the machine,
individual function within a zone, and so on.

ƒ In modern automation systems, the potential complexity of the program essentially


requires the organization of a program into logical areas for ease of programming and
fault isolation.
Systems Engineering Approach
Step 5 – Integrating an HMI
• Once the PLC program is defined, an HMI can be added.

• Define the roles to be filled by the HMI


• Operation
• Maintenance
• Diagnostics
• Reporting
• Create the HMI project
• Select the HMI device
• Define connections to the PLCs
• Add Elements to the HMI
• Screens and Navigation
• Users and Security
• Alarms and Messaging
• Recipes
• Tags
• Download and test
Systems Engineering Approach
Step 6 – Maintaining and Operating the System
Once the system is fully operational and accepted by the end user, the project data needs to be
archived and system documents need to be created.

ƒ Assembling project documentation, specifically in the case of multiple suppliers, can be a


massive undertaking.

ƒ Accuracy of documentation is vital for ongoing maintenance and for effective engineering
support.

ƒ Managing different revisions of program changes, HMI changes, and other changes is equally as
challenging.

ƒ While this is the “final step,” it is the most important step to the end user.
Totally Integrated Automation –
Discover efficiencies with the TIA Portal

Totally Integrated Automation Portal

STEP 7 V14 Safety V14 WinCC V14 Startdrive V14 Simocode V14

SIMATIC PC & PLC Safety SIMATIC HMI SINAMICS Simocode

Single engineering framework for systems engineering


TIA Portal editor layout

Main Menu Bar

Task Cards –
HW Catalog

Editor view – Device


Project Tree – PLC, HMI
& Networks
and Drive project data

Inspector
Window

Status Bar
TIA Portal
Overview of the functional scope of the products
SIMATIC STEP 7 SIMATIC WinCC SINAMICS Startdrive

Programming languages
Machine-level operator control and monitoring Drive configuration,
ƒ LAD, FBD, SCL, STL*), S7-GRAPH*)
SCADA applications commissioning, diagnostics
Option STEP 7 Safety

WinAC SCADA G120


(incl. Failsafe)

Professional
Professional

Startdrive
S7-1500 PC single user G120D

Advanced
S7-300 / S7-400 Comfort Panels
G120P

Comfort
and x77 (without micro),
ET 200 CPU, (incl. Failsafe) mobile
Basic

Basic

S7-1200 Basic Panels G120C

Communication
ƒ PROFIBUS, PROFINET, network topology, (AS-i, IO-Link, but only SIMATIC products)

Shared functions
ƒ System diagnostics, import/export to/from Excel, undo, … *) Only in Professional for S7-300/400/1500/WinAC
Automation Of Engineering Tasks

Eliminate redundant steps, and programming avoid errors

... by automating identical steps within the work.

… by automatically generating Devices, Network and IO

... by automatically generating program code, screens

... by project development based standards and libraries


TIA Portal V14
TIA Portal Openness
API1) Functions
• Allows automated access to program data
• Allows projects/project data to be generated,
modified and tested
• Allows remote control of TIA Portal functions Public API1)

Own Import /
Fully automatic program export
Export/Import functionality
execution of EXE XML
• Exporting, modifying actions
and importing project data
Simple operator
control with own
user interface

1) Application Programming Interface

T
TIA Portal options
Openness: Standardized exchange between Electro-CAD and
Automation
Electrical CAD tools TIA Portal V14 SP1

PLC_1 HWCN + IO
PLC_2

Export/import
Export/import
XML file
IO-
XML file
Device_1 ƒ Article number
ƒ Article description
AML file ƒ Network connections
ƒ Configured firmware version
ƒ Tag table

Customer benefits

ƒ Replacement of hardware configuration and icons via XML files


ƒ Bidirectional workflow CAD systems ⇒⇓ TIA Portal
ƒ Free tool support thanks to a standardized interface New
ƒ Apply configuration directly from the TIA Selection Tool
TIA Portal Openness Electrical CAD to TIA Portal
Live demonstration
Importing existing engineering data
from Electrical and Selection Tools
into TIA Portal Engineering Software

Live demonstration
TIA Portal options
Openness: Automatic generation of projects, software and
hardware Customer benefits

Project generator
ƒ Generation of the
complete automation
DLL
Project for Machine A project with TIA Portal
openness (hardware &
TIA openness
TIA Portal software)

ƒ Perfect customer workflow


from ordering to the
Project for Machine B finished automated TIA
project.

01.11.2017
Page 23 DF FA AS E&C-PRM
TIA Portal V14
Generating instead of programming
Conveyor 1
Conveyor 2
Automated Conveyor 3

Engineering Drive
generation
Generate

Generating an TIA Portal TIA Portal SiVArc1


application e.g. in openness
MS Visual Studio

PLC/HMI
Programming manually

Manual
Engineering
SiVArc Simatic Visualization Architect

T
TIA Portal V14
What´s SiVArc?
Si V Arc
SIMATIC Visualization Architect

... for system integrators that want to


automatically create in the
TIA Portal an operator control and
monitoring solution that is simple,
quick and flexible!
TIA Portal V14
SiVArc - Functionality
Control SiVArc Visualization
program
FC DB FB
Automatic
FC DB FB generation

Rules regarding the


generation of…
• Pictures & picture
HMI library objects
• Variables & tables
• Text lists

T
TIA Portal V14
SiVArc - Example
Transparent operation with TIA Portal
Diagnostics management

Diagnostics
management
Increased
availability of
machines and
production plants
… reduce
production
Immediately detect errors in the automation system outages
… through integrated system diagnostics across all system USP
components
Efficient diagnostics of process malfunctions
USP
NEWEfficient
… with the standardized
diagnostics of process malfunctions
machine
… through and Trace
integrated plantordiagnostics SIMATIC ProDiag USP
… standardized machine and plant diagnostics ProDiag
NEW
Ensuring Uptime with Integrated systems diagnostics

HMI TIA Portal


Diagnosis can be run
in PLC-STOP as well

Display
Simple configuring
without programming

Webserver

Consistent
diagnostics
TIA Portal V14
SIMATIC ProDiag - Functionality
Analysis of errors in the
manufacturing process – ProDiag
• Efficient diagnostics of process disturbances --
using standardized machine
and plant diagnostics ProDiag PLC code
• Integrated – automatic generation viewer
Automatic
of monitoring systems and visualization code generation
• Eliminate faults and errors quickly – detailed
information about fault/error location, fault/error cause Auto
and information about troubleshooting update
Configure alarm Visualization
• Auto Update – monitoring systems are
independent of the user program

J
Machine and plant diagnostics with SIMATIC ProDiag
… analysis of errors in the manufacturing process
Fast identification of errors
… display of the faulty operands directly
in the message with symbol and
commentary

Fixing errors quickly


… through clear information about fault
location, fault cause and information
about troubleshooting

"Service without PG"


… overview representations and detail
diagnostics directly on the HMI device
Machine and plant diagnostics with SIMATIC ProDiag
… realized rapidly and simply
"Integrated"
… automatic code generation and
visualization of supervisions

"Feedback-free"
… define supervisions independently
of the user program

Always "up-to-date"
… automatic synchronization of the
HMI devices – also after changes
in the user program
Machine and plant diagnostics with SIMATIC ProDiag
… full integration into TIA Portal
DB FB
"independent" PLC Data Function
... of language editors / program code Tag Table block block

"comprehensive"
… also for safety and
know-protected blocks NEW

"consistent"
... Integration in cross-reference
functions with permanent data
consistency
Machine and plant diagnostics with SIMATIC ProDiag
… project-specific specification of the most important settings
"efficient" NEW
… one-off specification of the
alarm structure

"intelligent"
… alarm texts are derived automatically
from the texts existing in the project

"international"
… complete foreign-language handling
of the TIA Portal is available
Machine and plant diagnostics with SIMATIC ProDiag
… automatic update of the operating stations
"interruption-free"
... HMI devices do not have to exit the
runtime mode in case of changes

"time-saving"
… much easier maintenance work
Auto
update

"seamless"
… system guarantees data consistency
Traditional Automation Programming Capabilities

Tasks
Criteria -Create PLC
- Easily Setup Configure -Name I/O
Inputs and Outputs -Program Ladder
- Relay Ladder Logic -Create HMI
Implementation -Create Buttons with Tags
- Hmi Integration
Program Ladder Logic
Add HMI and Logic
Simulate And Test PLC and HMI
More Advanced Programming

Linear Program Partitioned Program Structured Program

Recipe A

Recipe B Pump
Main Main Main
Mixer
Outlet
Outlet

Here, individual functions with fixed Individual functions are created with
All instructions are parameters, whereby each call can be
found in one block, usually addresses are found in individual
blocks, which are called from the made with different addresses. These
in the Main Routine [OB 1]
Main routine [OB 1] one after the functions are thereby reusable, vastly
other. shortening development and commissioning
times and reducing program size and
complexity.
More Advanced Programming
S7 Program Blocks at a Glance
Operating System

Cycle

Time

Process

Error

Legend:
OB = Organization Block
FB = Function Block
FC = Function
DB = Data Block
More Advanced Programming
Anatomy of a “Function”
Local variables
referred to as Local Variable Definition
“formal
parameters”
User program code
That operates on the Output
Input Parameters
Parameters “Local Variables” and calculates
one or more output values

A
125 Add A to B
Put results C Answer = 141
B
16 Into C
More Advanced Programming
Adding Functions (FCs) to the Project
More Advanced Programming
Developing a Function

Block
Interface

Code
Section
More Advanced Programming
Assigning Parameters to Code Blocks
More Advanced Programming
Calling Functions in the Program
More Advanced Programming
Overview of Data Blocks

Accessible to all blocks


Function
OB1 FC10 Global (shared)
data

Function DB20
FC20

Instance DB for FB1


Function Instance data
Block DB5
FB1
More Advanced Programming
Creating a New Data Block

Double-click
Add new block

Select
Data Block

Data Block as
Block Type
More Advanced Programming
Data Block Element Properties
• Global data blocks contain “data items” for use anywhere in
the program. As such, they require the following Properties:

– Name – a way to identify the data item


– Data type – a way to specify the “type” or format of the data
item
– Default value – Default value of the tag in the interface of a
higher-level code block or in a PLC data type. Determined
either by the data type default value or by the FB variable
default value.
– Start value (Optional) - Value that the tag should assume at
CPU startup or upon new download. If unassigned, it’s the
default value.
– Retain – sets whether the element will retain it’s current
value through a PLC restart.
– Comment – further documentation to explain its use or
meaning
– Setpoint- identifies an element as a setpoint value. Used
with the snapshot feature.
More Advanced Programming
Multi-Instance FBs

FB 100 “My Motors” DB 100


“My Motors Data”
DB 1
“My Logic Data 1”

FB 1 FB 1
“Motor “Motor DB 2
Logic” Logic” “My Logic Data 2”

FB 1 FB 1 DB 3
“Motor “Motor “My Logic Data 3”
Logic” Logic”

DB 4
“My Logic Data 4”
More Advanced Programming
PLC User Defined Data Types
Most Advanced Programming - SIMATIC ODK 1500S
Why should C++ be used for real time applications?

Controlling programs are already available as C++ source code

Migration Embedded • Re-utilization of existing code: many man-years of invest in development,


maintenance and know how
Computer
Program available as • Performance of modern PLC- and bus systems (e.g. PROFINET) sufficient for
this task
C/C++ code

Model-based • Direct use of automatically generated C++ source code for control tasks
software development: • Utilization as black box, preferably without manual rework
Exporting control
codes über C++

Cross-platform programming
• Re-utilization of central functions on several platforms, even in
“Non-PLC-systems”
• Programming with C++ more efficient than with SCL in certain cases
Most Advanced Programming SIMATIC ODK 1500S
Execution of C/C++-Code with a S7-1500 Controller
Controller Execution of functions in loadable libraries at runtime
Windows Real-time
ODK dll OB ODK so Real-time: SO (shared object)
application application • algorithm, closed loop controller, …
FB Load  S7-1500 CPU 1518(F)-4 PN/DP ODK

 S7-1500 Software Controller


Fct1 FB Fct1 Fct1

Windows: DLL (dynamically linked library)


Fct2 FB Fct2 Fct2
• Connection to Windows applications
• Complete Windows functionality usable
FB Unload
 S7-1500 Software Controller

The ODK 1500S enables to develop such applications


Most Advanced Programming SIMATIC ODK 1500S
Typical Development Environment

SIMATIC ODK 1500S Development of


(incl. Eclipse) • ODK application binaries
Engineering

• Real-time: Eclipse
SIMATIC Target 1500S • Windows: Visual Studio
(optional)

Microsoft Visual Studio C++


(optional)

SIMATIC TIA Portal

Execution of
ODK application binaries
Runtime

• Real-time: Shared Object (.so)


• Windows: Dynamical Linked Libraries (.dll)
SIMATIC S7-1500
Software Controller • On target development possible
• No additional runtime licenses
SIMATIC S7-1500
CPU 1518(F)-4 PN/DP ODK
Most Advanced Programming SIMATIC ODK 1500S
Simple Call of C Functions by PLC Program
Automatic generation of function blocks
for use of ODK applications

Real-time ODK applications have a synchronous interface

Windows ODK applications have a asynchronous interface

Import of function blocks using “External source file” feature of STEP7


Conclusion

• TIA Portal Engineering System


Booth 813
• Software Platform for Engineering Automation System
• Converge C++ with TIA structured Code
• Incorporate Ladder for Troubleshooting

• Engineering Efficiency
• Automate Hardware Config
• Automate PLC Code Generation
• Automate HMI/SCADA Generation
• Simulate PLC/HMI

Diagnostics
• Built Into Systems
• Auto Generate Alarms/Diagnostics

Вам также может понравиться