S7-1200 1500 Webserver DOC v22 en
S7-1200 1500 Webserver DOC v22 en
S7-1200 1500 Webserver DOC v22 en
We do not accept any liability for the information contained in this document.
Any claims against us based on whatever legal reason resulting from the use of
the examples, information, programs, engineering and performance data etc.,
described in this Application Example shall be excluded. Such an exclusion shall
not apply in the case of mandatory liability, e.g. under the German Product Liability
Act (Produkthaftungsgesetz), in case of intent, gross negligence, or injury of life,
body or health, guarantee for the quality of a product, fraudulent concealment of a
deficiency or breach of a condition which goes to the root of the contract
Siemens AG 2017 All rights reserved
Security Siemens provides products and solutions with industrial security functions that
informa- support the secure operation of plants, systems, machines and networks.
tion In order to protect plants, systems, machines and networks against cyber
threats, it is necessary to implement and continuously maintain a holistic,
state-of-the-art industrial security concept. Siemens products and solutions only
form one element of such a concept.
Customer is responsible to prevent unauthorized access to its plants, systems,
machines and networks. Systems, machines and components should only be
connected to the enterprise network or the internet if and to the extent necessary
and with appropriate security measures (e.g. use of firewalls and network
segmentation) in place.
Additionally, Siemens guidance on appropriate security measures should be
taken into account. For more information about industrial security, please visit
http://www.siemens.com/industrialsecurity.
Siemens products and solutions undergo continuous development to make them
more secure. Siemens strongly recommends to apply product updates as soon
as available and to always use the latest product versions. Use of product
versions that are no longer supported, and failure to apply latest updates may
increase customers exposure to cyber threats.
To stay informed about product updates, subscribe to the Siemens Industrial
Security RSS Feed under http://www.siemens.com/industrialsecurity.
Table of Contents
Warranty and Liability ................................................................................................. 2
1 Preface ................................................................................................................ 4
2 Automation Task ................................................................................................ 5
3 Automation Solution ......................................................................................... 6
3.1 General solution overview .................................................................... 6
3.2 Advantages and application options of web server applications.......... 7
3.3 Creating user-defined web pages ........................................................ 8
3.4 Structure of the application................................................................... 9
3.5 Hardware and software components ................................................. 10
4 Principles of Standard Web Pages ................................................................ 12
5 Functional Mechanisms of this Application ................................................. 13
5.1 Functional principle of the S7 program .............................................. 13
5.1.1 Startup (OB100) ................................................................................. 14
5.1.2 Main (OB1) ......................................................................................... 14
5.1.3 TankSimu (FB1) ................................................................................. 15
5.2 Functional principle of the HTML file .................................................. 16
5.2.1 AWP commands ................................................................................. 16
5.2.2 Outputting CPU variables ................................................................... 17
5.2.3 Outputting texts via enumerations ...................................................... 17
Siemens AG 2017 All rights reserved
5.2.4 Setting variables in the CPU with value and button ........................... 17
5.2.5 Setting variables in the CPU via button only ...................................... 18
6 Configuration and Settings............................................................................. 19
6.1 Procedure for creating a web page .................................................... 19
6.2 Configuring the hardware ................................................................... 20
6.3 Creating the variables in the variable table or DB .............................. 23
6.4 Creating the HTML files...................................................................... 23
6.5 Web server settings and generating of the data blocks ..................... 24
6.6 Creating, compiling and loading of the S7 program ........................... 26
7 Installation ........................................................................................................ 28
7.1 Hardware and software installation .................................................... 28
7.2 Installation of the application example ............................................... 29
8 Operating the Application ............................................................................... 30
9 Related Literature ............................................................................................ 33
9.1 Internet link specifications .................................................................. 33
10 History............................................................................................................... 34
1 Preface
Objective of the application
The application on hand shows you how to simply and quickly create your own
user-defined web pages for S7-1500.
Advantages
Integrated web server
The standard web pages for simple display of services and diagnostic
information are activated with a click. Additionally, individually created, user-
defined web pages can be generated.
Location-independent
The web page can be called up world-wide via a standard internet browser.
Application example
Siemens AG 2017 All rights reserved
Benefits
No additional hardware and software required.
The access to the web server is possible across large distances via mobile
communication devices such as tablet PC, smart phone, etc..
Reduced working hours through simple activation of the web server.
Time saving in planning and implementing your automation solution through
simple adaptation of the application on hand.
Note The application example as well as the web server should not and cannot
replace an HMI system.
2 Automation Task
Overview of the automation task
Modern automation technology increasingly integrates internet technologies which
together with an integrated Ethernet-based communication enable, for
example, direct access to the system via the intranet.
During the test and commissioning phase, the commissioning engineer wants to
have flexible access to the CPU; individual data is to be visualized during operation
for diagnostic purposes.
For access mechanisms via the internet or intranet it is reasonable to use already
existing standards, such as, for example, http technology, standard web browsers
and common "languages" such as HTML (Hypertext Markup Language) or
JavaScript.
Tablet
Remote access
Siemens AG 2017 All rights reserved
Industrial Ethernet
Controller 2
Controller 1 Controller 3
3 Automation Solution
3.1 General solution overview
Schematic layout
SIMATIC CPUs with PROFINET interfaces provide the opportunity to access CPU
variables with the help of web pages provided by the system.
Access the integrated web server of the CPU via a web browser.
The web server contains standard web pages, such as start page, identification,
diagnostic buffer, module status, messages, communication, topology and file
browser.
In addition to the standard web pages, you can also design and call the web pages
individually for your application case.
To create your web page (user-defined web page), you can use any tools such as
Microsoft Expression Web, Notepad++, etc.
For designing your web page, you can use all options provided to you by HTML,
CSS (Cascading Style Sheets) and JavaScript.
In addition, there are Automation Web Programming (AWP) commands for directed
communication with the CPU.
The following figure gives an overview of the implemented solution.
Siemens AG 2017 All rights reserved
Client with
webbrowser
Request PROFINET
Website Industrial
Ethernet
S7-Program
-blocks
-
STEP7 HTML-file
(TIA-Portal)
CPU 1511-1 PN
as webserver
HTML-Editor
- HTML-Datei
In this application example, the CPU simulates a tank which can be controlled
through the website.
Table 3-1
No. Instruction
1. With an HTML editor, you create the HTML file for the user-defined web page.
2. The web application can consist of various source files, e.g.: *.html, *.gif, *.js,
3. The HTML files with images etc. are stored in data blocks with SIMATIC STEP 7
V12. Call the WWW instruction in the S7 program.
5. Open the web page of the CPU via a web browser. Accessing the web server of
the CPU can be irrespective of the configuration computer. Every output device
with access to the PN interface of the CPU can display the web page.
Delimitation
This application is an introduction to user-defined web pages for beginners. Shown
are simple methods for accessing the web page of a CPU with HTML and SIMATIC
STEP 7 V12.
This application does not include a complete description of HTML. To gain deeper
knowledge of HTML and JavaScript, please refer to the literature and internet
pages specified in Chapter 9.
Creation of a user-defined web page for the CPU with the following functions:
Displaying CPU variables.
Graphic display of CPU variables.
Setting of CPU variables.
Displaying of texts which are linked with CPU variables.
Displaying of pictures which are linked with CPU variables.
Going to web pages with links in the navigation bar.
Cyclic refreshing of the web page with HTML.
Particularities in the S7 program creation:
Providing variables for the web page.
Further processing of variables from the web page in the S7 program.
Hardware components
Note For this application, you require the current firmware version of the CPU.
Depending on the CPU type, the following entries contain links to the
corresponding downloads:
S7-1500: http://support.automation.siemens.com/WW/view/en/56926947/133200
S7-1200: http://support.automation.siemens.com/WW/view/en/104546617/133200
Table 3-2
Component No. Order number Note
CPU 1516-3 PN 1 6ES7511-1AK01-0AB0 FW 2.0.5
or
CPU 1214C 6ES7214-1AG40-0XB0 FW 4.2
DC/DC/DC
Optional by using 1 6GK7 543-1AX00-0XE0 PROFINET CP with
Siemens AG 2017 All rights reserved
Software components
Table 3-3
Component No. Order number Note
SIMATIC STEP 7 1 6ES7822-1AA04-0YE5 V14.0 (Update 2)
Professional V14
Software tool for 1 - -
creating HTML files,
e.g. Frontpage,
Notepad++,
Web browser, e. g. 1 - Application optimized
Internet Explorer, for
1)
Mozilla Firefox Internet Explorer 11.0.
The following web browsers were explicitly tested for communication with the
1)
CPU:
Internet Explorer (version 11)
Mozilla Firefox (version 50.0)
Note The application is optimized for the Internet Explorer and Firefox.
For the use of other browsers, adjustments may have to be made.
Siemens AG 2017 All rights reserved
Log in
The user with the name "Anybody" is the default setting in the user list. This user is
Siemens AG 2017 All rights reserved
Hinweis Further information about the user handling and the integration of the LogIn
window in the unser defined webpages are described in the Simple examples of
the webserver for SIMATIC S7-1200/S7-1500.
These examples can be downloaded at the same website like this application.
A detailed description of the setup of the standard web pages is available in the
application description 59193560.
Startup [OB100]
The following symbols and variables are used in the Web2Plc data block:
Siemens AG 2017 All rights reserved
In the Startup (OB100) OB, a start value for the Flowrate and the limit values
for the variables are stored.
The status of the Start and Stop buttons are polled by the web page. If one of
the buttons has been clicked, the status is stored in the startStop PLC variable.
In addition the status of the Reset button is polled.
StartStop status
Only when the startStop is set, the tank filling level changes and values are
entered in the ring buffer.
Valve status
Via the statusVentilCPU bit, the button pressed last (OpenValve or CloseValve)
is memorized.
Dependent on this bit, the tank is either emptied or filled.
Alarm status
Subsequently, the tank filling level is compared with the specifications for the limit
values of the tank filling level.
Depending on the filling level reached, the values "0" to "5" are stored in the
alarm variable. With the value of the alarm variable, HTML texts (enumerations)
are stored, which display the filling level of the tank in clear text.
Basics
AWP commands are inserted as HTML comments in HTML files. AWP commands
can be located at any position in the HTML file. However, for reasons of clarity it is
appropriate to list the central AWP commands at the beginning of the HTML file.
Explanations
Table 5-1
Code Explanation
<!-- AWP_In_Variable All variables transferred to the CPU must be
Name='"Web2Plc".start' --> identified as AWP_In_Variable.
Note: Keep in mind that the quotation marks are
nested. The variable is written between
quotation marks and framed by an inverted
comma (' " " ').
<!-- AWP_Enum_Def ENUM types are defined with AWP_Enum_Def.
Name="AlarmValue"
Values='0:"Tank empty!",
1:"Tank level below
minimum!", 2:"Tank level
between minimum and width!",
3:"Tank level between width
and maximum!", 4:"Tank level
over maximum!", 5:"Tank level
overflow!"' -->
<!-- AWP_Enum_Ref The ENUM types are assigned to variables with
Name='"Alarm"' AWP_Enum_Ref.
Enum="AlarmValue" --
>:="Alarm":
Explanations
Variables of the CPU are always displayed via the symbol name:
Figure 5-4 Representation of tags in the HTML file
Instead of :=Web2Plc.tankLevel:, always the current value from the CPU is output
on the web page.
Explanations
Via enumerations, texts can be allocated to the individual values of a CPU variable.
Figure 5-5 Representation of enumerations in the HTML file
Instead of the individual values of "Alarm", the previously assigned texts in HTML
are output. These texts stored as enum-type "AlarmValue" and are transferred to
Siemens AG 2017 All rights reserved
Basics
To be able to transfer variables to the CPU via the web page, you have to work
with forms and, for example, the "POST" method.
Explanations
Abbildung 5-6 Representation of entries in the HTML file
Table 5-2
Code Explanation
<form method="post" action=""> Calling the form with the post method. Under
<input type="number" min=1 max=10 action, no details are required since with
id="wert1" name='"Web2Plc".flowrate' action the current page is called by default.
size="2" style="height: 45px; width: If the input with the type submit is activated the
50px; font-size: 21px; text-align: contant is transfered to the CPU.
center; padding: 8px;">
<input type="submit"
value="Set a new Flowrate"
style="height: 45px; width: 200px">
</form>
Basics
To assign variables in the CPU a predefined value, you have to work with a form,
the "POST" method and a hidden value.
Explanations
Figure 5-7 Representation of buttons in the HTML file
Siemens AG 2017 All rights reserved
Table 5-3
Code Explanation
<form method="post" action=""> Calling the form with the post method. Under
<input type="submit" action, no details are required since with
value="OpenValve"> action the current page is called by default.
<input type="hidden" With input type="hidden", the "OpenValve"
name='"OpenValve"' size="20px" variable is assigned the value 1, the "CloseValve"
value="1"> variable the value 0.
<input type="hidden" With submit, the values of the variables are sent
name='"CloseValve"' size="20px" to the web server of the CPU.
value="0">
</form>
<form method="post" action=""> Reverse action to the row above: calling the form
<input type="submit" to assign the value 1 to "CloseValve" and the
value="CloseValve"> value 0 to "OpenValve".
<input type="hidden"
name='"CloseValve"' size="20px"
value="1">
<input type="hidden"
name='"OpenValve"' size="20px"
value="0">
</form>
Allow HTTP
Allow HTTPS
Siemens AG 2017 All rights reserved
Table 6-3
No. Action Comment
1. Create the HTML files with an Detailed information on the creation of the HTML file can be
editor. Save the HTML files with found in chapter 5.2.
the required images, style sheets
and scripts in the "\html"
directory.
Note:
STEP 7 verifies the project with
regard to the variables, loads the
complementary files, such as, for
example, the enumerations or
images, reads in the variables of
the HTML file, verifies the
fragments, and writes all data in
DB333 and from DB334.
The status of the generation is
displayed in an independent
window or in the inspector
window under info.
Siemens AG 2017 All rights reserved
Table 6-5
No. Action Comment
1. If you are using a CP module,
you have to log on to it first.
(Device configuration -> CP-
Modul -> Properties -> Security -
> User login)
Siemens AG 2017 All rights reserved
2. Compiling -
User the mouse to right-click on
the CPU 1516-3 PN/DP and
select Compile > Hardware and
software (only changes).
Note If you want to use a different CPU, you have to exchange the CPU under
Devices & Networks.
Siemens AG 2017 All rights reserved
7 Installation
7.1 Hardware and software installation
Hardware installation
The figure below shows the hardware configuration of the sample application.
The PC with the web browser must be connected to the CPU via Industrial
Ethernet, e.g.
directly at the PN interface of the CPU.
directly at communication module CP 1543-1.
via a switch.
Industrial Ethernet
Note Please observe the installation and connection guidelines from the
corresponding manuals.
Table 7-1
No. Action Comment
1. Install STEP 7 -
2. Install a tool for creating the web page, e.g. MS Frontpage or -
Notepad++ on the PC with which you want to create the web
page.
3. Install a web browser on the PC, e.g. Firefox or Internet Explorer, -
with which you want to access the website of the CPU.
Table 7-2
No. Action Comment
1. Unzip the -
68011496_S7_1200_S7-1500_Webserver_CODE_v22.zip
file in your project directory.
2. Start SIMATIC STEP 7. -
3. Open the project in SIMATIC STEP 7. -
4. Go to the device view. -
5. If you are using a different CPU, change the device. -
6. In the CPU properties, assign the IP address of your CPU to Information in Section 6.2
the Ethernet interface.
7. Using S7-1500 with CP: Log on in the CP properties at -
Security (User name: admin, Password: Security).
8. Select the S7-1500 and load the entire project in the CPU. -
9. Start a web browser and call the web page of your CPU via Information in Section 8
the IP address.
Siemens AG 2017 All rights reserved
Operation
Table 8-1
No. Action Comment
1. Start a web browser, e.g.
the Internet Explorer. Enter
the IP address of the CPU
as the address, e.g.
http://192.168.0.1
or of the CP
http://192.168.80.1
The intro web page of the
CPU is opened.
Click on "ENTER".
Siemens AG 2017 All rights reserved
9 Related Literature
9.1 Internet link specifications
This table contains a selection of links on further information.
Table 9-1
Topic
/1/ Link to this document
https://support.industry.siemens.com/cs/ww/en/view/68011496
/2/ Siemens Industry Online Support
http://support.automation.siemens.com
/3/ HTML5, JavaScript
http://www.w3schools.com/html/
http://www.w3schools.com/js/
/4/ SIMATIC S7 S7-1200 Programmable controller
https://support.industry.siemens.com/cs/ww/en/view/109741593
/5/ S7-1500 Web server function manual
http://support.automation.siemens.com/WW/view/en/59193560
/6/ S7-1500 System Manual
http://support.automation.siemens.com/WW/view/en/59191792
Siemens AG 2017 All rights reserved
10 History
Table 10-1
Version Date Modifications
V1.0 02/2014 First version
V2.0 06/2015 The applications Creating and using user-defined web pages
on S7-1200 and Creating and using user-defined web pages
on S7-1500 were merged.
V2.1 10/2015 correction
V2.2 10/2016 The application is completely programmed with HTML. HTML5
is used.
Siemens AG 2017 All rights reserved