56
Navigating the world of automation 2011 Automation Summit Orlando, FL Navigating the world of automation

Top Ten Siemens S7 Tips and Tricks

  • Upload
    dmc-inc

  • View
    67.570

  • Download
    20

Embed Size (px)

DESCRIPTION

DMC, a Siemens Solution Partner with the most S7 Certified Engineers in the United States, recently shared some insights to people new to Siemens to help avoid common mistakes at the 2011 Siemens Automation Summit. Over the years we have encountered numerous applications written by novices and seen first-hand some of the more common errors made.

Citation preview

Page 1: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

2011 Automation Summit Orlando, FL

Navigating the world of automation

Page 2: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 2

2011 Automation Summit

Title: Top Ten S7 Tips and Tricks

Track: NAPR

Topic: S7 PLCs

Presenter: Nick Shea

Company: DMC

Page 3: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 3

DMC Company Profile

Established in 1996, based in Chicago, IL Service Companies Nationally & Globally Siemens Solution Partner

Global Reach: CanadaChinaGeorgiaCzech Rep.RussiaPhilippinesMexicoIndia

Page 4: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 4

Bio

Nick Shea

Senior Project Engineer at DMC

Engineering Physics (University of Kansas)

With DMC since 2006

Page 5: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Top Ten S7 Tips and Tricks

You already know the fundamentals of S7 PLC programming…

And the mistakes to avoid (thanks, Tim)

Now, how do you develop, commission and troubleshoot most efficiently?

Page 5

Page 6: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 6

Top Ten S7 Tips and Tricks

If you are an…

External Developer:

How do you work most efficiently to provide the highest value for your customer while increasing project profitability?

Page 7: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 7

Top Ten S7 Tips and Tricks

If you are an…

Internal Programmer:

How do you reduce start-up time for new equipment and decrease production downtime while making modifications or troubleshooting controls problems?

Page 8: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 8

Top Ten S7 Tips and Tricks

Now… take your development to the next Level!

Page 9: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 9

Top Ten S7 Tips and Tricks

Tips and Tricks for:

1.Rapid Diagnostics / Troubleshooting

2.Rapid Development

3.Advanced Tools

Page 10: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Modular, Object-Oriented Architecture with FBs and UDTs

#1

Page 11: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Best Practices for Controls Design – Generally Accepted

•Consistent Design and Documentation• Mechanical Design• Electrical Schematics• P&IDs• Software

Page 12: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Best Practices for Controls Design… also includes:

•PLC and HMI Projects•Naming conventions•Hardware architecture

•Modular Software Architecture•Function Blocks•UDTs

Page 13: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

System Architecture

Page 14: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Program Architecture(similar to system architecture!)

Page 15: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Example of High-Level Function Block:

Page 16: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Example of Device Level Function Block utilizing UDTs:

Page 17: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Variables encapsulated by udtHMI_VFD_Control

Page 18: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Variables encapsulated by udtErrors_VFD

Page 19: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Modular, Object-Oriented Architecture with FBs and UDTs

Page 19

Motor Command Function Block

Start

Stop

Speed SP

Engage Brake

Reset Error

Acceleration

Motor I/O Function Block

Start

Stop

Speed SP

Engage Brake

Reset Error

Acceleration

Outputs Inputs

One variable is used to pass multiple pieces of information

StartStopSpeed SPEngage BrakeReset ErrorAcceleration

Motor Command Function Block

CommandMotor I/O Function

Block

Command

Page 20: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Monitoring Instances of Function Blocks

#2

Page 21: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Monitoring Instances of Function Blocks

There are two PLC modes and they are toggled in the CPU Properties on the “Protection” tab: Process Mode and Test Mode.

Page 21

Default is Process mode.

Switch to Test Mode.

Download the hardware configuration.

Page 22: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Monitoring Instances of Function Blocks

This option is also shown in the Debug -> Operation dropdown menu from the Ladder Editor

Page 22

Page 23: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Monitoring Instances of Function Blocks

Right-click on the block and select “Monitor with Call-Up Path”

Process Mode Test Mode

Page 23

Page 24: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Monitoring Instances of Function Blocks

Note! As you probably expect, this does slow down the CPU cycle time so this should

only be used when necessary and always leave the final system with “Process Mode” checked.

Page 24

Page 25: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Report System Error

#3

Page 26: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Report System Error

Siemens Support Website

FAQ: How can you report S7 system errors in WinCC?

FAQ: How can you have system error messages from a SIMATIC S7-300 / 400 displayed in WinCC flexible?

Page 26

Page 27: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Report System Error

End Result:

No (0) programming required!

Page 27

Page 28: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Report System Error

10 easy steps: (website has screenshots and full instructions)

1. Create S7 and HMI stations. 2. Add languages. Set “English” as default 3. Open the "Report System Error..." dialog in hardware configuration.4. Activate the entries. Choose the OB blocks that will generate messages5. Transfer blocks to the CPU. Download the generated blocks to the CPU.6. Add a connection to the CPU from the WinCC flexible project (if needed)7. Configure alarm settings. Activate Simatic SFM in the alarm procedure.8. Configure alarm viewer to include “S7 Alarms”9. Activate the check boxes in CPU Messages from Simatic Manager10.Start WinCC flexible and enjoy your diagnostic messages!

Page 28

Page 29: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

RAM Disk

#4

Page 30: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

RAM Disk

• When compiling an S7 project, many small files are read and written.• RAM Disk is RAM that is used as a disk drive – via 3rd party software.• RAM Disk is orders of magnitude faster than other forms of storage media.• We’ve reduced >10 min compile times to <3 min.

Page 30

Page 31: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Auto-Generate Symbol Table

#5

Page 32: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Auto-Generate Symbol Table

Page 32

The S7 PLC symbol table allows copy/paste directly from a spreadsheet such as MS Excel.

•If possible, develop your IO list in a compatible format•Alternatively, build a tool to convert it to a compatible format•For example, thousands of IO can be added into the symbol list in a few minutes.

Page 33: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Auto-Generate Symbol Table

Page 33

Page 34: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Using Local Memory to Parse Data

#6

Page 35: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Using Local Memory to Parse Data

Split data types into smaller pieces without using ST or SCL.

1. Assign a variable to TEMP memory.

2. Move data into the TEMP memory variable.

Page 35

Page 36: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Using Local Memory to Parse Data

Split data types into smaller pieces without using ST or SCL.

3. Access the TEMP or Local memory using the “L” prefix.

Page 36

Page 37: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Network Node Activating, Deactivating, and Monitoring

#7

Page 38: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Network Node Activating, Deactivating, and Monitoring

Dynamically activate and Deactivate Profibus and Profinet Nodes

Using “D_ACT_DP” SFC12

Examples: • Modular Machines• Alternate Machine Configurations

Page 38

Page 39: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Network Node Activating, Deactivating, and Monitoring

Monitoring Ethernet Nodes using “RDSYSST” SFC51

Page 39

Page 40: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Safety Programming

#8

Page 41: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Safety Programming

• Leverage Siemens safety blocks

Page 41

Page 42: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Safety Programming

• Safety program can be really simple or really complicated depending on the application.

• Example of implementing simple E-Stop safety functionality:

Page 42

Page 43: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Safety Programming

• Always ON and OFF variables available inside “F_GLOBDB” datablock.

Page 43

Page 44: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Backup DB Data by Generating Source

#9

Page 45: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Backup DB Data by Generating Source

A simple yet common problem when programming a Siemens Simatic S7-300 PLC is losing the data already stored in the PLC after downloading an updated data block.

Page 45

Page 46: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Backup DB Data by Generating Source

In the normal case:

If you are simply adding items to the end of a flat data block (not adding items to a user-defined type (udt) within the data block, for example) then to retain the values of the data block follow these quick steps.

Go online with all of the blocks in Simatic Manager. Copy the online version of the data block whose values you would like to retain into your offline project.Add the items to end of the data block.Download - your values will be retained.

Page 46

Page 47: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Backup DB Data by Generating Source

A more complicated change to the data block such as adding items to a udt used with the data block requires extra steps. Even if you have first saved a copy of your online values prior to making the change, the values will be lost after you save the change.  Therefore, follow these extra steps.

Follow steps 1 and 2 above.Open the datablock and Generate Source for the data block.       File -> Generate Source.  This will save a version of your data block;      and the values in a file in the Sources folder. 

Page 47

Page 48: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Backup DB Data by Generating Source

3. Make all changes that you need to the data block (not source code) then Save and Close the data block.

4. Open the Source file you created and compile it.  This will set all values in the data block equal to the values you see in the Source file. 

5. Download - your values have been retained. 

Page 48

Page 49: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Keyboard Shortcuts

#10

Page 50: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Keyboard Shortcuts

Navigating / Searching

Cross Reference: Ctrl-Alt-Q

Find: Ctrl-F

Find Variables within a FC or FB: Ctrl-Shift-F (search forward)or

Ctrl-Shift-B (search backward)

Jump to Network: Ctrl-E

Reference Data Interface: Ctrl-R

Open an FC or FB: Ctrl-Alt-O

Page 50

Page 51: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Keyboard Shortcuts

Development Shortcuts

New Empty Rung / Network: Ctrl-R

Normally open contact: F2Normally closed contact: F3Coil: F7

Empty Box: Alt-F9

Page 51

Page 52: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Keyboard Shortcuts

Monitoring / Diagnostics / Other Shortcuts

Monitor: Ctrl-F7

Module Information: Ctrl-D

Page 52

Page 53: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Keyboard Shortcuts

Monitoring / Diagnostics / Other Shortcuts

Operating Mode: Ctrl-I

Download: Ctrl-L

Page 53

Page 54: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation

Summary

Page 55: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Page 55

Summary – Top Ten S7 Tips and Tricks

1. Modular, Object-Oriented Architecture with FBs and UDTs

2. Monitoring Instances of Function Blocks

3. Report System Error

4. RAM Disk

5. Auto-Generate Symbol Table

6. Network Node Activating, Deactivating, and Monitoring

7. Safety Programming Basics

8. Using Local Memory to Parse Data

9. Backup DB Data by Generating Source

10. Keyboard Shortcuts

Page 56: Top Ten Siemens S7 Tips and Tricks

Navigating the world of automation Copyright © Siemens Industry, Inc. 2011. All rights reserved.

Thank You

Nick [email protected]

www.dmcinfo.com

Page 56