0% found this document useful (0 votes)
155 views673 pages

Total Openness OPC

Uploaded by

adrianbotez.ab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
155 views673 pages

Total Openness OPC

Uploaded by

adrianbotez.ab
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 673

G

Digitalization
SITRAIN © Siemens AG 2018 Course: DI-AUTOEN

Content Page
Objectives……………………....................................................................................................................................... 2
New business models in the Internet age are replacing entire markets………………………................................... 5
Key challenges in the manufacturing industry………………………............................................................................ 6
Digital Enterprise – Our solution portfolio for digital transformation………………………........................................ 7
Integration and digitalization of the entire value chain are crucial to remain competitive in the future .......... 8
Digital Enterprise Suite – The Siemens answer to the requirements of discrete manufacturing....................... 9
With Totally Integrated Automation for machine operators … …
we are setting new productivity standards in Digital Enterprise!………………………………....................................... 10
Horizontal and vertical TIA value chain – User scenarios for experiencing digitalization with the TIA Portal..... 11
.........
Digi demo machine ………………………...................................................................................................................... 12

SITRAIN DI-AUTOEN
Training for Industry Page 1
Objectives

At the end of the chapter the participant will ...

... Be familiar with the word „digitalization“

... Be able to name the advantages that digitalization can bring within
industrial appliances

... Be familiar with the UseCases Siemens introduced

SITRAIN © Siemens AG 2018 Proximo ppt = video de motivação DI-AUTOEN


Page 2 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 2
Digitalization
changes
everything
AG

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 4 Digitalization – Introduction and Overview

Digitalization is currently changing every aspect of our lives: how we get informed, how we travel,
how we shop – and, of course, how we make products.

SITRAIN DI-AUTOEN
Training for Industry Page 4
New business models in the Internet age are replacing entire markets

From bookstores From the CD business


to e-books to streaming

From the From taxis


yellow pages to the to car sharing
market place

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 5 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 5
Key challenges in the manufacturing industry

Time-to-market Flexibility Quality Efficiency

Security
rity
DR
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 6 Digitalization – Introduction and Overview

It goes without saying that digitalization also influences how we manufacture


products. A manufacturing company has to face key challenges:

1. Shorter time-to-market
Manufacturers have to bring their products to market increasingly faster, even
though they are becoming more and more complex.

2. Increased flexibility
Consumers want individualized products – but at a price they would pay for a
mass product. This is only possible if production is more flexible than ever before.

3. Higher quality
Consumers reward high quality by recommending products on the Internet – and
they punish qualityty deficiencies
deficienc in the same way. In order to ensure high quality
and comply withith legal
lega requirements at the same time, companies have to
establish closedd quality circuits – and the products must be traceable.

4. More efficiency
Today, not only does the product itself have to be sustainable and environmentally
friendly – energy efficiency also has become a competitive advantage in
production.

5. Security
The topic of security is also on the agenda. Digitalization means that
manufacturing facilities have become more vulnerable. All the more reason why
companies need adequate security measures.

SITRAIN DI-AUTOEN
Training for Industry Page 6
Digital Enterprise – Our solution portfolio for digital transformation

Digital Enterprise
Process industries Discrete industries
Process
Product Production Production Production
Product design and plant Engineering Operation Services Services
design planning engineering execution
design

Industrial software and automation Industrial Industrial software and automation


for process industries communication for discrete industries

Industrial
Security
Digital
Enterprise
Industrial Suite
services

S PL
A
TIA
A in the Dig
Digital Enterprise

DR
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 7 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 7
Integration and digitalization of the entire value chain
are crucial to remain competitive in the future

Third-party applications

Cloud-based, open IoT operating system: MindSphere

Product Production Production Production Services


design planning engineering execution

Collaboration platform: Teamcenter

Suppliers and logistics

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 8 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 8
Digital Enterprise Suite – The Siemens answer to the requirements
of discrete manufacturing

MindSphere

Totally Integrated
Automation
Product Lifecycle
Management

Manufacturing
operations management

Teamcenter

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 9 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 9
With Totally Integrated Automation for machine operators …
… we are setting new productivity standards in Digital Enterprise!

Totally Integrated
Automation Cloud

»TIA in Digital Enterprise« MOM/SCADA

Integrated engineering Digital workflow Transparent operation

Mechanical system
Electronics
Automation
Simulation and Production
Prod Maintenance and
commissioningg optimization

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 10 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 10
Horizontal and vertical TIA value chain –
User scenarios for experiencing digitalization with the TIA Portal

1 Automatic execution of engineering tasks


2 PLM integration of automation
3 Efficient cloud-based engineering
4 Virtual commissioning
5 Integrated energy management
6 Protection of machines and plants
Cloud 7
7 Data acquisition for cloud services
MOM/SCADA

Integrated engineering Digital workflow Transparent operation


Mechanical system
Electrical system
Automation

AG
1 3 Simulation and
4 5 Production
roduction
6 Maintenanceand
Maintenance and
commissioning optimization
Optimization

2
Data backbone

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 11 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 11
Digi demo machine

Digi Demo machine Video (long version)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 12 Digitalization – Introduction and Overview

SITRAIN DI-AUTOEN
Training for Industry Page 12
Automated Digital Workflow

ES

PLC Block HMI Generation


Generation Test Generating HMI
Generating the PLC Automatic testing of screens
Program blocks

TAG
PLC
Standardization

Creating a standard

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 2 Introduction Standardization
Digital Enterprise G
Padronização
SITRAIN © Siemens AG 2018 Course: DI-STAND

Conteúdo Pág.
Visão geral do Capítulo…............................................................................................................................
3
Objetivos …......................................................................................................................................... 5
O que é a Padronização?….................................................................................................................. 6
Padrões Familiares…............................................................................................................................ 7
Por que Padronização?…....................................................................................................................... 8
Quem está envolvido em uma Padronização?…................................................................................... 9
PLCopen - Uma série de especificações…...............................................................................................10
Benefícios da padronização do software PLC …………………………................................................
11
.................
Objetivos …......................................................................................................................................... 12
.................
Padronizar - Como?…........................................................................................................................... 13
..................
Abordagem da solução - Padronização ….......................................................................................... 14
..................
Por que Padronizar? – Benefícios……................................................................................................... 15
Digi-Usecase – Geração Automática de e Pr
Projetos com TIA Openness ............................................. 17
Benefícios adicionais com um olhar para o futuro …........................................................................... 18
Ferramentas para a Geração Automática de Projetos …..................................................................... 19
Links para Suporte…............................................................................................................................... 20
Conceito de biblioteca no TIA Portal .....................................................................................................21
Objetivos …......................................................................................................................................... 22
Conceito de biblioteca no TIA Portal - the Key Data…......................................................................... 23
Type versus Master Copy…................................................................................................................. 24
Bibliotecas – Quais elementos podem ser utilizados?…....................................................................... 25
Padronizando com as bibliotecas…........................................................................................................ 26
Links para Suporte……........................................................................................................................... 28
Oportunidades para implementar um padrão .....................................................................................29
Objetivos …......................................................................................................................................... 30

SITRAIN DI-STAND
Training for Industry Page 1 Standardization
De "0" a "Padronizado" nos desafios e riscos do PLC ..............................................................
31

SITRAIN DI-STAND
Training for Industry Page ‹nº› Standardization
Conteúdo Pág.
Do “0” a “Padronizado” no PLC usando uma máquina de demonstração como exemplo…….....................
32
Seção Transversal Funcional da Análise da Máquina de Demonstração da Estrutura da Máquina……..............
33
Seção Transversal Funcional da Máquina de Demonstração
Batch-oriented (DIN EN 61512-1 baseado em ISA 88) …………………………………………...................37
Seção Transversal Funcional da Análise da Máquina de Demonstração da Estrutura da Máquina
………................. 38
Seção Transversal Funcional do Planejamento de Máquinas de Demonstração - Interconexões em Unidades
Funcionais ... 41
Implementação de Linguagens de Programação……....................................................................................
43
Instância Única de Local de Armazenamento versus Instância Múltipla…….........................................................
44
Diferenças de Local de Armazenamento Entre Blocos de Dados Globais e de Várias Instâncias……......................
45
Opções de Padronização com o STEP 7 V5.x até TIA Portal al ……...…….................................................. 46
Níveis de Padronização ……..............................................................................................................
................. 47
1º Nível de Padronização …….........................................................................................................
................ 48
1º Nível de Padronização - Identificador……........................................................................................
or……...... 49
1º Nível de Padronização - Declaração de Tag ……............................................................................ 51
1º Nível de Padronização - Comentários …….................................................................................... 52
1º Nível de Padronização - Matrizes e Tipos de Dados do PLC…….................................................... 53
1º Nível de Padronização - Agrupamento de Blocos……….................................................................... 54
1º Nível de Padronização - Agrupamento de dispositivos I/O............................................................55
1º Nível de Padronização - Gerenciamento de Perfis de Hardware ……............................................ 56
1º Nível de Padronização - Estruturação em SCL……........................................................................ 57
Links e Ferramentas para Puporte……..........................................................................................................
58
Exercício – Nível 1…….......................................................................................................................... 59
2º Nível de Padronização ……........................................................................................................ 61
Interfaces - Uso e Definição ……................................................................................................. 62
2º Nível de Padronização - Blocos …….......................................................................................... 63
2º Nível de Padronização - Armazenamento de Dados......................................................................... 65
........
2º Nível de Padronização - Bibliotecas ……....................................................................................... 66
2º Nível de Padronização - Controle de Versão de Objetos s na Bibliote
Biblioteca .................................. 67
2º Nível de Padronização - Placas IHM …................
……........................................................................... 68
2º Nível de Padronização - Biblioteca com Funções Ge Gerais ………................................................ 69
................
Links para Suporte……............................................................................................................................ 70
Exercício – Nível 2…….......................................................................................................................... 71
3º Nível de Padronização ……......................................................................................................... 73
3º Nível de Padronização – Estrutura de Programa……........................................................................ 74
3º Nível de Padronização - Estrutura de Programa……........................................................................ 75
3º Nível de Padronização - Tipos de dados do PLC............................................................................... 76
3º Nível de Padronização - Exemplo de tipos de dados do PLC ……................................................ 77
3º Nível de Padronização – Padronização de Blocos ………....................................................... 78
3º Nível de Padronização - Programação Independente de Hardware ……................................... 79
Implementação do Resumo do Padrão de Programação ………......................................................... 80
Links para Suporte……........................................................................................................................... 81
Exercício - Nível 3…............................................................................................................................. 81
Conclusão ……..................................................................................................................................... 84

SITRAIN DI-STAND
Training for Industry Page 2 Standardization
Treinamento e Suporte
…….....................................................................................................................
85
Cursos Adicionais
…….............................................................................................................................
86
Quaisquer perguntas sobre nossos cursos de treinamento oferecidos?.........................................87

SITRAIN DI-STAND
Training for Industry Page ‹nº› Standardization
Visão Geral do Capítulo

ponto de vista …
Às vezes você tem que mudar seu

1 Padronização - a caminho da digitalização

2 Benefícios da padronização do software PLC

3 Conceito de biblioteca no TIA Portal

4 Oportunidades para implementar um padrão

SITRAIN © Siemens AG 2018 DI-STAND


Page 3 Standardization

SITRAIN DI-STAND
Training for Industry Page 3 Standardization
Visão Geral do Capítulo

1 Padronização - a caminho da digitalização

2 Benefícios da padronização do software PLC

3 Conceito de biblioteca no TIA Portal

4 Oportunidades para implementar um padrão

SITRAIN © Siemens AG 2018 DI-STAND


Page 4 Standardization

SITRAIN DI-STAND
Training for Industry Page 4 Standardization
Objetivos

Ao final deste capitulo o participante vai ...

... Conhecer a definição da palavra "padronização"

... Familiarize-se com a motivação de padronizar

... Familiarize-se com onde os padrões são usados na vida cotidiana

... Conheça a padronização em engenharia de instalações

SITRAIN © Siemens AG 2018 DI-STAND


Page 5 Standardization

SITRAIN DI-STAND
Training for Industry Page 5 Standardization
O que é Padronização?

A padronização tem como objetivo definir especificações técnicas que


auxiliem na maximização da compatibilidade, reprodutibilidade,
segurança ou qualidade de determinado processo, produto ou
serviço.

Source: Wikipedia

SITRAIN © Siemens AG 2018 DI-STAND


Page 6 Standardization

SITRAIN DI-STAND
Training for Industry Page 6 Standardization
Padrões Familiares

? ƒ DIN 476 (Proporção da tela =




, por exemplo, A4 210 mm x
297 mm)
ƒ Tubos KG DN 110 (Diâmetros nominais para tubulações de
esgoto com Ø104 mm, por exemplo)
ƒ PLCopen (Organização que desenvolve padrões internacionais,
independente de fabricantes e produtos)
ƒ IEC 61131 (aplicável em tecnologia de automação, por
exemplo, Parte 3 “Sintaxe e Semântica de Linguagens de
Programação[…]”)
ƒ …
ƒ …

SITRAIN © Siemens AG 2018 DI-STAND


Page 7 Standardization

SITRAIN DI-STAND
Training for Industry Page 7 Standardization
Por que Padronização?

[…] Do lado do usuário, ou seja, no nível do programa, as opções de


padronização raramente são usadas hoje. A programação padronizada e
estruturada ainda não penetrou na consciência dos usuários. A variedade
de estilos de programação e dialetos é imensurável. Isso leva à
declaração infelizmente ouvida com muita frequência:

“Antes de ler o presente programa, eu preferi reescreve-lo !” […]

G
Source: Computerwoche (Computer Week)

SITRAIN © Siemens AG 2018 DI-STAND


Page 8 Standardization

SITRAIN DI-STAND
Training for Industry Page 8 Standardization
Quem está envolvido em uma Padronização?

Padronizado é …
… Mecânico … Planejamento elétrico

ƒ Por exemplo, ƒ Por exemplo,


organização do dispositivo fiação de sinal

… IT
… Documentação
ƒ Por exemplo,

TA
ƒ Por exemplo, o que endereços Ethernet
C
está documentado … PLC e HM
HMI
P+
e como
S
ƒ Por exemplo,

RA
configuração
configura
programação
pro

SITRAIN © Siemens AG 2018 DI-STAND


Page 9 Standardization

SITRAIN DI-STAND
Training for Industry Page 9 Standardization
PLCopen - Uma Série de Especificações

A especificação PLCopen provavelmente mais


conhecida é IEC 61131-3 que lida com programação e
tudo o que tem a ver com isso.
Junto com a OPC Foundation, O PLCopen
desenvolveu, nos últimos anos (2009), uma interface de

G
omuni
comunicação padronizada – OPC UA
p
(open platform communications – arquitetura unificada).

SITRAIN © Siemens AG 2018 DI-STAND


Page 10 Standardization

Source: www.plcopen.org

SITRAIN DI-STAND
Training for Industry Page 10 Standardization
Visão Geral do Capítulo

1 Padronização - a caminho da digitalização

2 Benefícios da padronização do software PLC

3 Conceito de biblioteca no TIA Portal

4 Oportunidades para implementar um padrão

SITRAIN © Siemens AG 2018 DI-STAND


Page 11 Standardization

SITRAIN DI-STAND
Training for Industry Page 11 Standardization
Objetivos

Ao final deste capitulo o participante vai ...

... Esteja ciente dos fatos pelos quais a padronização é importante


em aplicações industriais

... Familiarizar-se com os objetivos da padronização

... Familiarizar-se com os produtos que a Siemens oferece para


padronização

SITRAIN © Siemens AG 2018 DI-STAND


Page 12 Standardization

SITRAIN DI-STAND
Training for Industry Page 12 Standardization
Padronizar - Como?

Padronização
Análise da estrutura da
Design das interfaces Implementação
máquina

Reengenharia

Arquitetura de software
padronizada + aprimorada
SITRAIN © Siemens AG 2018 DI-STAND
Page 13 Standardization

SITRAIN DI-STAND
Training for Industry Page 13 Standardization
Abordagem da Solução - Padronização

Objetivos da Padronização
Padronização contribui para redução de custos

Redução de custos Melhore a eficiência Padronização / Regras

Benefícios
Modularidade
ƒ Tempo de engenharia Reutilização
ƒ Módulos encapsulados
reduzido ƒ Pode ser gerado
CT
ƒ Módulos podem ser testados
ƒ Maior qualidade de software ão de código
ƒ Evitar duplicação códig
ƒ Flexibilidade
ƒ Comissionamento mais
ƒ Parâmetros atribuíveis
rápido

SITRAIN © Siemens AG 2018 DI-STAND


Page 14 Standardization

SITRAIN DI-STAND
Training for Industry Page 14 Standardization
Por que Padronizar? – Benefícios…

… Para o fabricante

ƒ Já solicitadas de clientes existentes (por exemplo, indústria


automobilística)
ƒ Mantem a competitividade ou ganho de vantagem
ƒ Aumentar a eficiência da engenharia
ƒ Simplifica o gerenciamento de variantes de máquinas
(flexibilidade)
ƒ Work packages

CT
ƒ Comissionamento virtual / “Digital
Digital Twin”

SITRAIN © Siemens AG 2018 DI-STAND


Page 15 Standardization

SITRAIN DI-STAND
Training for Industry Page 15 Standardization
Por que Padronizar? – Benefícios…

… para o cliente final

ƒ O software se torna mais transparente para o usuário futuro e,


consequentemente, mais fácil de usar
ƒ Redução significativa de fontes de erro devido ao uso de
módulos de programa já comprovados
ƒ Minimizar o tempo e o esforço para criação e
comissionamento de programas
ƒ O diagnóstico / solução de problemas é simplificado
por
ƒ Documentação clara do módulo com comportamento definido

C TA
ƒ Evitar "engenharia paralela" da mesma taref
tarefa
bém P Loutros departamentos
S
ƒ Interfaces definidas também com

SITRAIN © Siemens AG 2018 DI-STAND


Page 16 Standardization

SITRAIN DI-STAND
Training for Industry Page 16 Standardization
Digi-Usecase – Geração automática de projetos com TIA Openness

SITRAIN © Siemens AG 2018 DI-STAND


Page 17 Standardization

SITRAIN DI-STAND
Training for Industry Page 17 Standardization
Benefícios Adicionais com um Olhar para o Futuro

(Elétrica) PLC HMI Conclusão


Planejamento Programação Programação Soluções
escalonáveis são
Banco de dados comum e padronizado possíveis com o
TIA Portal
Geração do programa do PLC
Adote Pacotes de
completa ou Gerar HMI
a configuração de HW
parcial/preparação opções:
• Da simples
adoção de
dados
• Para geração
semi-
automática
• Até a geração
Quando são feitas … os elementos … através de um completa do
alterações no início da
DR
ntes são
subsequentes Automated Digital
S
projeto
cadeia de ferramentas …
SITRAIN © Siemens AG 2018
E
os com um
ajustados u clique … Workflow
DI-STAND
Page 18 Standardization

SITRAIN DI-STAND
Training for Industry Page 18 Standardization
Ferramentas para o Automatic Project Generation

TIA Portal Openness SiVArc


para gerar blocos para geração simplificada de telas

Vantagens:
Vantagens : - Definição simples de regras
- Geração de projetos / blocos SiVArc
- Ações rastreáveis a cada execução - Geração rápida de telas e
objetos de tela
Exigências:
- Existência de blocos padronizados Exigências:

AG
- Existência de programa de geração TEP 7 e WinCC
- Uso do STEP

T
(conhecimento de linguagem de alto - Existência de faceplates
nível)
LCpadronizados
padron

SITRAIN © Siemens AG 2018 DI-STAND


Page 19 Standardization

SITRAIN DI-STAND
Training for Industry Page 19 Standardization
Links para Suporte

Digitalização com TIA Portal:


Integration of planning data from TIA Selection Tool to TIA Portal or EPLAN
Electric P8 (Entry ID: 109748223)
Integração (importar e exportar configurações) entre EPLAN, TIA e TIA Sel. Tool
Virtual commissioning by basic behavior modeling with SIMATIC S7-PLCSIM
Advanced (Entry ID: 109754823)
Uso de PLCSIM Advanced para simulação de IO de campo
Digitalization with TIA Portal: PLM integration of automation engineering
(Entry ID: 109749107)
Integração entre Teamcenter e TIA (via Teamcenter gateway)
TIA Openness + TIA SiVArc:
SIMATIC Automating projects with scripts (Entry ID: 109755218)
Geração de programas através de scripts

PLC
enness Scripter)
Tool for easier use of the TIA Portal Openness interface (Openness Scrip
(Entry ID: 109742322) Facilitador para geração de scripts
pts

SIMATIC Visualization Architect (Entry ID: 109755214)


09755214)
Geração automática de HMI/SCADA
SITRAIN © Siemens AG 2018 DI-STAND
Page 20 Standardization

SITRAIN DI-STAND
Training for Industry Page 20 Standardization
Visão Geral do Capítulo

1 Padronização - a caminho da digitalização

2 Benefícios da padronização do software PLC

3 Conceito de biblioteca no TIA Portal

4 Oportunidades para implementar um padrão

SITRAIN © Siemens AG 2018 DI-STAND


Page 22 Standardization

SITRAIN DI-STAND
Training for Industry Page 22 Standardization
Objetivos

Ao final deste capitulo o participante vai ...

... Estar familiarizado com o conceito de biblioteca no TIA Portal

... Estar ciente das diferenças entre Types e Master copies

... Estar ciente dos objetos que podem ser padronizados com o TIA-
Portal

SITRAIN © Siemens AG 2018 DI-STAND


Page 23 Standardization

SITRAIN DI-STAND
Training for Industry Page 23 Standardization
Conceito de biblioteca no TIA Portal - Key Data

ƒ Armazenamento simples no “Master copies” para os dados


configurados no TIA Portal :
• Dispositivos completos (controlador, HMI, drive, etc.)
• Blocos, tag tables, PLC-data types, Watch tables, etc.
• Telas de HMI, HMI tags, scripts, etc.

ƒ Cross-project exchange via bibliotecas

ƒ Função de atualização central de elementos da biblioteca

ƒ Controle de versão de certos elementos da biblioteca (por


exemplo, blocos)

ƒ Menos fontes de erro ao usar blocos de controle através da


consideração de dependências suportada pelo sistema m

SITRAIN © Siemens AG 2018 DI-STAND


Page 24 Standardization

SITRAIN DI-STAND
Training for Industry Page 24 Standardization
Type versus Master Copy

Biblioteca do usuário Projeto


Use

Use
Master copy
Use

Type V1 Instance
Update V2
V1
Instance
Type V2 Atualização central V1
V2
para uma versão mais
Instance V2
V1
recente

SITRAIN © Siemens AG 2018 DI-STAND


Page 25 Standardization

SITRAIN DI-STAND
Training for Industry Page 25 Standardization
Bibliotecas - Quais Elementos podem ser usados?

Element Type Master Copies Element Type Master Copies


SIMATIC Controller SIMATIC HMI
OB - x Screens x x
FB x x Faceplates x -
FC x x Templates (of screens) - x
DB (Global) - x Pop-up screens - x
Technology objects - x Slide-in screens - -
PLC tags - x HMI tags - x
PLC-data types x x Scripts x x
Watch and Force tables - x Protocols (Logs) - x
Traces - x HMI UDT x -
Text lists - x HMI Style x -
Devices with device - x HMI Format template x -
configuration User administration: User - x
Common Data User administration: Groups - x
Instruction profiles - x Alarm classes - x
Documentation Settings SiVArc rules x x
Document information - x
Framework - x
Cover sheets - x

Nota: Os objetos type


e depen
dependem da versão do TIA Portal.
SITRAIN © Siemens AG 2018 DI-STAND
Page 26 Standardization

SITRAIN DI-STAND
Training for Industry Page 26 Standardization
Padronizando com as bibliotecas

Develop Standardize Re-use

Library Read only

Main

Types
Version 1.0

Main Read only

Main
Version 1.0
Version 1.0

Salvar função na Use a instância protegida


biblioteca como

S P
o Type e contra gravação do Type

A
“versionização”
ionização nos projetos

SITRAIN © Siemens AG 2018 DI-STAND


Page 27 Standardization

SITRAIN DI-STAND
Training for Industry Page 27 Standardization
Padronizando com as bibliotecas

A reutilização de types no
… Expand Standard Update Instances
projeto pode ser reconhecida
imediatamente
Library
Read only
O uso do padrão é garantido
Types Main por instâncias somente leitura

Version 2.0
Instâncias podem ser
atualizadas automaticamente
Read only
Version 1.0
Main Tipo versionizado garante que
Version 2.0
as alterações possam ser
Expanda / modifique a rastreadas
função e atribua nova
versão

P
Reduza o tempo de
Version 2.0
Atualiz instâncias com
Atualizar desenvolvimento
operação em massa
Aumentar a qualidade

SITRAIN © Siemens AG 2018 DI-STAND


Page 28 Standardization

SITRAIN DI-STAND
Training for Industry Page 28 Standardization
Links para Suporte

Guideline on Library Handling in TIA Portal (Entry ID: 109747503)

Artigo trata de como manusear as bibliotecas.


Monta senários de desenvolvedor, integrador e
cliente final e dentro de cada um, aborda o melhor
uso dos recurso.

SITRAIN © Siemens AG 2018 Demo: abrir PDF, mostrar conteúdo DI-STAND


Page 29 8min Standardization

SITRAIN DI-STAND
Training for Industry Page 29 Standardization
Visão Geral do Capítulo

1 Padronização - a caminho da digitalização

2 Benefícios da padronização do software PLC

3 Conceito de biblioteca no TIA Portal

4 Oportunidades para implementar um padrão

SITRAIN © Siemens AG 2018 DI-STAND


Page 30 Standardization

SITRAIN DI-STAND
Training for Industry Page 30 Standardization
Objetivos

Ao final deste capitulo o participante vai ...

... Conhecer as etapas de padronização de um projeto.

... Estar familiarizado com uso do Digi-Demo-Machine para testes de


conceito.

SITRAIN © Siemens AG 2018 DI-STAND


Page 31 Standardization

SITRAIN DI-STAND
Training for Industry Page 31 Standardization
Do “Zero” ao “Padronizado” no CLP
Desafios e riscos

Desafios Riscos Fatores de influência

ƒ Análise da estrutura da ƒ Aceitação ƒ Tamanho da corporação


máquina ƒ Disposição de compromisso ƒ Qualificações dos empregados
ƒ Reengenharia do software ƒ Possivel perda do ƒ Processos de negócios
ƒ Documentação e manutenção conhecimento sobre ƒ Produtos, quantidades
ƒ Custos de desenvolvimento arquitetura de software, ƒ Exigências do cliente final
mais altos no início possibilidades / opções de ƒ Tipo de cliente :
(desenvolvimento do Padrão) ferramentas de engenharia, • Fabricante de máquinas
padronização… para fins especiais
• Fabricante de máquinas
em série
• Integração de processos

SITRAIN © Siemens AG 2018 DI-STAND


Page 32 Standardization

SITRAIN DI-STAND
Training for Industry Page 32 Standardization
De “0” a “Padronizado” no CLP
Usando uma máquina de demonstração como exemplo

Padronização
Análise da estrutura
Planejamento Implementação
da máquina
ƒ Componentes usados várias vezes ƒ Blocos padrão para ƒ Treinamento de funcionário
(acionamentos, sensores, válvulas, processamento de atuadores e ƒ Distribuição de tarefas
atuadores, módulos, opções) sensores / codificadores ƒ Implementação de SW
ƒ Combinar as peças da máquina em ƒ Blocos padrão para módulos ƒ Documentação
módulos reutilizáveis (alimentação padronizados ƒ …
da peça, dispositivo de fixação, ƒ Interfaces Æ Encapsulamento de
medição da peça …) funções (dados relevantes para
ƒ Padronização e automação de blocos ou outros módulos…)
processos (por exemplo, ƒ Conceito de manutenção
enção de
configuração da máquina) software, definindo
indo desenvolvimento
desenv
e distribuição
ão
ƒ Usando
ando ferramentas
ferram e auxiliares
do sistema
sistem de engenharia
ƒ Documentação
Doc e revisão
SITRAIN © Siemens AG 2018 DI-STAND
Page 33 Standardization

SITRAIN DI-STAND
Training for Industry Page 33 Standardization
Seção transversal funcional da máquina de demonstração
Análise da estrutura da máquina

Empty
Box 1 Tray Picker Tray
Handler 2 Handler 1

Empty
Box 2

Precision Robot
Unit
Belt Belt Belt
Conveyor 1 Conveyor 2 Conveyor 3

SITRAIN © Siemens AG 2018 DI-STAND


Page 35 Standardization

SITRAIN DI-STAND
Training for Industry Page 35 Standardization
Seção transversal funcional da máquina de demonstração
Análise da estrutura da máquina

SITRAIN © Siemens AG 2018 DI-STAND


Page 36 Standardization

SITRAIN DI-STAND
Training for Industry Page 36 Standardization
Seção transversal funcional da máquina de demonstração
Análise da estrutura da máquina

Empty
Box 1 Tray Picker Tray
Handler 2 Handler 1

Empty
Box 2

Precision Robot
Unit

Belt Belt Belt


Conveyor 1 Conveyor 2 Conveyor 3

SITRAIN © Siemens AG 2018 DI-STAND


Page 37 Standardization

SITRAIN DI-STAND
Training for Industry Page 37 Standardization
Seção transversal funcional da máquina de demonstração
Batch-oriented (DIN EN 61512-1 baseado no ISA 88)

Batch-oriented: Modelos e Terminologia

Unidade: O nível mais alto do agrupamento. Unidade


Inclui os módulos de controle relacionados e de equipamentos, com os quais as
atividades mais amplas de processamento são executadas
pode conter

Módulo de equipamento :
Módulo de pode conter
Uma combinação funcional de módulos de controle que podem executar um
equipamento
número finito de atividades de processamento menores específicas

T AG pode conter
Módulo de controle: O nível mais baixo do agrupamento
Æ A automação básica C
nto de módulos
módu
Módulo de controle
pode conter

SITRAIN © Siemens AG 2018 DI-STAND


Page 38 Standardization

As extensões funcionais podem ser funções de posicionamento, funções da câmera ou do seletor, por exemplo.

SITRAIN DI-STAND
Training for Industry Page 38 Standardization
Seção transversal funcional da máquina de demonstração
Análise da estrutura da máquina

Abstração do modelo
real para análise

TAG
Nome da identificação do

PLC
equipamento
(Projeto
eto elétrico)

SITRAIN © Siemens AG 2018 DI-STAND


Page 39 Standardization

SITRAIN DI-STAND
Training for Industry Page 39 Standardization
Seção transversal funcional da máquina de demonstração
Planejamento – Batch-oriented (DIN EN 61512-1)

Unidade

2
Pode conter

Módulo de Pode conter


EmMove EmDrive
equipamento

Pode conter

Pode conter
Módulo de controle

Sensor
SD
Drive Sensor
SITRAIN © Siemens AG 2018 DI-STAND
Page 40 Standardization

SITRAIN DI-STAND
Training for Industry Page 40 Standardization
Seção transversal funcional da máquina de demonstração
Planejamento – Batch-oriented (DIN EN 61512-1)

Unidade

Pode conter

Módulo de Pode conter


EmMove EmDrive
equipamento

Pode conter
2

Pode conter
Módulo de controle

Sensor
SD
Drive Sensor
SITRAIN © Siemens AG 2018 DI-STAND
Page 41 Standardization

SITRAIN DI-STAND
Training for Industry Page 41 Standardization
Seção transversal funcional da máquina de demonstração
Planejamento - interconexões em unidades funcionais

Como uma padronização da máquina pode ser realizada? Soluções


Æ Mapeando o hardware no software • Interconexão sensível
das unidades técnicas
Sensor Transport logic Transport conveyor
em unidades lógicas e
em unidades
• Cada unidade cuida de
Sensor sua própria função
• Modularidade em caso
de ajustes (por exemplo,
substituição da unidade)
Drive Drive logic

S120
V90

Módulo de Controle Módulo de Equipamento


to Unidade

UDT Faceplate Block


SITRAIN © Siemens AG 2018 DI-STAND
Page 42 Standardization

SITRAIN DI-STAND
Training for Industry Page 42 Standardization
Seção transversal funcional da máquina de demonstração
Planejamento - interconexões em unidades funcionais

Como uma padronização da máquina pode ser realizada? Soluções


Æ Mapeando o hardware no software • Interconexão sensível
das unidades técnicas
Sensor Transport logic Transport conveyor
em unidades lógicas e
em unidades
• Cada unidade cuida de
Sensor sua própria função
• Modularidade em caso
de ajustes (por exemplo,
V90
substituição do drive)
Drive Drive logic

S120

Módulo de controle Módulo de equipamento


to Unidade

UDT Faceplate Block


SITRAIN © Siemens AG 2018 DI-STAND
Page 43 Standardization

SITRAIN DI-STAND
Training for Industry Page 43 Standardization
Linguagens de programação
Implementação

Tarefa Linguagem

Ambiente de
chamada
Ambiente de chamada do sistema ĺ FBD

Chamada e interconexão dos vários blocos de uma


Unidade unidade ĺ SCL/FBD

Bloco lógico para o controle de uma unidade


Módulo de
equipamento funcional ĺ SCL/FBD

Bloco de drive para


a sensores / encoders ou ĺ
Módulo de controle SCL/FBD
atuadores com
om interface padronizada

SITRAIN © Siemens AG 2018 DI-STAND


Page 44 Standardization

SITRAIN DI-STAND
Training for Industry Page 44 Standardization
Local de armazenamento
Instância única versus instância múltipla

Blocos de dados de instância única Blocos de dados de várias instâncias

Unidade com DB’s individuais


Unidade com DB’s instânciados

Unidade Unidade
Informação
Interface DB
geral
DB de instância
única EM

Informação
EM EM
geral
DB de instância
única CM

CM CM

SITRAIN © Siemens AG 2018 DI-STAND


Page 45 Standardization

Os dados que devem estar disponíveis globalmente podem


1. ser colocado em DBs globais.
2. ser criado na área estática de um FB e pode ser "transmitido" pelas instâncias.

Os dados da instância podem ser armazenados globalmente ou "agrupados". Com armazenamento global, as
informações estão disponíveis para todos os outros blocos. Com o armazenamento "agrupado", o programa
fica mais fácil de ler, manter e reutilizar. A desvantagem, no entanto, é que as informações possivelmente
precisam ser transmitidas através das diferentes instâncias.

SITRAIN DI-STAND
Training for Industry Page 45 Standardization
Local de armazenamento
Diferenças entre blocos de dados globais e de várias instâncias

Global DBs Multiple Instance Data Blocks


FB
OB FC

FB-Parameter
DB OB

FC

FB-Statics
FB

Vantagens : Vantagens:
• Armazenamento central de dados • A cópia do programa é simplificada (sem
acessos
cesso cruzados)
Desvantagens :
• Podem ocorrer acessos cruzados Desvantagens:
Des
não gerenciáveis • A interface do FB se torna mais complexa (a
• Inconsistências de dados podem passagem de informações)
ocorrer
SITRAIN © Siemens AG 2018 DI-STAND
Page 46 Standardization

SITRAIN DI-STAND
Training for Industry Page 46 Standardization
Opções de padronização com o STEP 7 V5.x até o TIA Portal

Uso de guias de estilo, identificadores de tags e blocos (símbolo. Programação), comentários


Grau crescente de padronização

STEP 7 V5.x
(and TIA Portal)

Troca de dados via interfaces, DBs globais, uso de tipos de dados UDTs / PLC (encapsulamento
permite reutilização)

Trabalho com bibliotecas e controle de versão, uso de faceplates (HMI), trabalho colaborativo via
bibliotecas/ TIA multiuser
TIA Portal

Criação dinâmica de software com arrays de várias instâncias,


nst arrays [*], atribuindo instâncias

AG
balhando com constantes
(parameter instance), trabalhando

Geração automática de projetos


RA
etos com Openness
Ope / SiVArc, comissionamento virtual com PLC Sim Adv.

SITRAIN © Siemens AG 2018 DI-STAND


Page 47 Standardization

SITRAIN DI-STAND
Training for Industry Page 47 Standardization
Níveis de padronização

Uso Esforço vs. Benefícios


ƒ Uso de guias de estilo
ƒ Identificadores para tags / blocos /… ƒ Pouco esforço
ƒ Comentários ƒ Mais fácil de ler o código do
ƒ Estruturas de dados 1 programa

ƒ “do programador ao parametrizador” ƒ Grau de esforço médio


ƒ Interfaces de bloco (padronizadas) ƒ Blocos podem ser reutilizados
ƒ
ƒ
Armazenamento de dados
Bibliotecas (biblioteca central da empresa)
2 ƒ
ƒ
Parâmetros atribuíveis
Redução de fontes de erro
ƒ Faceplate (HMI)

ƒ Estrutura do programa (completamente ƒ Alto grau de esforço


padronizada) ƒ Grande flexibilidade
ƒ Simplificação de blocos ou funções ƒ Blocos universais
ƒ Transferência de instância via parâmetros 3 ƒ Estrutura complexa
ƒ Estruturas de dados

ESD
IEC 61131-3 ƒ Requer compreensão mais profunda
IEC 81346

Foundation: IEC 61131–3, IEC 81346


SITRAIN © Siemens AG 2018 DI-STAND
Page 48 Standardization

SITRAIN DI-STAND
Training for Industry Page 48 Standardization
1º Nível de padronização

ƒ Usando um Guia de Estilo


ƒ Identificadores para tags/blocos/…
ƒ Comentários 1
ƒ Estruturas de dados

O primeiro nível de padronização diz respeito essencialmente aos identificadores de tags, blocos,
instâncias, etc..
Além disso, é determinada a estruturação dos projetos, ou seja, são utilizados grupos para blocos, tags
/ variáveis etc., e é definido o local de armazenamento e a identificação do projeto.

Para isso, é oferecido um Programming Styleguide S7-1200 / S7-1500,


500 no qual são sugeridas regras
sobre os identificadores, estruturas e design do programa..

SITRAIN © Siemens AG 2018 DI-STAND


Page 49 Standardization

SITRAIN DI-STAND
Training for Industry Page 49 Standardization
1º Nível de Padronização - Identificador

Identificadores devem sempre …


Abreviações recomendadas:
… ser escrito em Inglês
1
… ser único

… ser criado na notação “camelCasing“ / “PascalCasing”

… exceder um comprimento máximo de 24 caracteres

… não conter caracteres especiais

… não conter separadores

SITRAIN © Siemens AG 2018 DI-STAND


Page 50 Standardization

SITRAIN DI-STAND
Training for Industry Page 50 Standardization
1º Nível de Padronização - Identificador

ƒ O identificador de blocos deve ser funcional e curto.

ƒ O identificador de blocos deve sempre começar com uma letra maiúscula.


1
ƒ A numeração automática de blocos deve estar ativa.

ƒ A troca de sinal entre o programa do usuário e os blocos individuais deve sempre ocorrer através das interfaces do
bloco.

ƒ Global tags não devem ser usadas em blocos.

ƒ Os identificadores de interface devem ser selecionados de forma que


ue os sinais
sin e sua padronização sejam únicos. Nos
comentários da interface, o intervalo de valores válido também deve declarado.
eve ser d

ƒ Os identificadores de instâncias únicas devem começar


omeçar com ""Inst", os identificadores de multi instâncias devem
começar com "inst".

SITRAIN © Siemens AG 2018 DI-STAND


Page 51 Standardization

SITRAIN DI-STAND
Training for Industry Page 51 Standardization
1º Nível de Padronização - Declaração de tags

Static e Temp

ƒ Tags estáticas são usadas apenas dentro do bloco


1
ƒ As tags estáticas recebem o prefixo “stat”
ƒ Tags temporárias recebem o prefixo "temp”

Constantes

ƒ Os identificadores para constantes são sempre compostos inteiramente por LETRAS MAIÚSCULAS
ƒ Identificadores para constantes contêm sublinhados como separadores de palavras “_”
ƒ Somente constantes locais são usadas em blocos

SITRAIN © Siemens AG 2018 DI-STAND


Page 52 Standardization

SITRAIN DI-STAND
Training for Industry Page 52 Standardization
1º Nível de Padronização - Comentários

Comentários de blocos (uniformes em relação ao idioma)

Comentários de blocos
1
ƒ Descreve o que uma função ou seção de código faz
ƒ Uma ou várias linhas na frente da respectiva seção de código

Comentário de linha
ƒ Descreve o que uma linha de código individual faz
ƒ É usado no final da linha de código ou na frente da linha de código

Identificando linhas de código como comentário


ƒ Apenas comentários de linha com os caracteres "//" devem ser usadoss para id
identificar linhas como comentário

SITRAIN © Siemens AG 2018 DI-STAND


Page 53 Standardization

SITRAIN DI-STAND
Training for Industry Page 53 Standardization
1º Nível de Padronização - Matrizes e tipos de dados PLC

Matrizes

ƒ O nome de uma Matriz está sempre no plural


1
ƒ O índice da matriz começa com“0”
ƒ O limite superior do índice de matriz é definido através de uma constante

Tipos de dados PLC

ƒ Identificadores para tipos de dados recebem o prefixo “type”


ƒ Tipos de dados do PLC do usuário em vez de estruturas

SITRAIN © Siemens AG 2018 DI-STAND


Page 54 Standardization

SITRAIN DI-STAND
Training for Industry Page 54 Standardization
1º Nível de Padronização - Agrupamento de Blocos

Melhore a clareza usando a função de agrupamento para os blocos do programa


Sem grupos Grupos abertos

1
Grupos fechados

SITRAIN © Siemens AG 2018 DI-STAND


Page 55 Standardization

SITRAIN DI-STAND
Training for Industry Page 55 Standardization
1º Nível de Padronização - Agrupamento de Dispositivos IO

Agrupando elementos de hardware na Árvore do Projeto

ƒ Os dispositivos IO e DP-Slaves também podem ser


agrupados, bem como PLCs, HMIs e unidades. 1
ƒ Usando “arrastar e soltar” facilmente do catálogo de
hardware, mesmo para iniciantes

ƒ Copie rapidamente módulos inteiros com o mouse e a


tecla Ctrl pressionada (padrão do Windows)

ƒ Especialista e iniciante criam igualmente a configuração


do dispositivo de maneira rápida e eficiente.

ƒ Localização rápida de dispositivos para grandes


aplicações

SITRAIN © Siemens AG 2018 DI-STAND


Page 56 Standardization

SITRAIN DI-STAND
Training for Industry Page 56 Standardization
1º Nível de padronização - Gerenciamento de Perfil de Hardware

Gerenciamento de Perfil no Catálogo de Hardware

ƒ Os perfis de catálogo de hardware definidos


pelo usuário permitem acesso rápido aos
1
módulos mais usados

ƒ Visão geral dos perfis estabelecidos em


“Hardware configuration” nas configurações
do TIA Portal

SITRAIN © Siemens AG 2018 DI-STAND


Page 57 Standardization

SITRAIN DI-STAND
Training for Industry Page 57 Standardization
1º Nível de Padronização - Estruturação em SCL

Melhore a clareza usando a função “REGION”

SITRAIN © Siemens AG 2018 DI-STAND


Page 58 Standardization

SITRAIN DI-STAND
Training for Industry Page 58 Standardization
Links e Ferramentas para Suporte

Programming Guidelines and Programming Styleguide for SIMATIC S7-1200 and S7-
1500 (Entry ID: 81318674, incl. Templates and Styleguide Checklist)

“Styleguide Checker” (TIA Portal Openness required)


1
Você pode solicitar esta ferramenta ao seu representante de vendas.

Nota: Site original compreende três guias separados e o checklist para estilo.
Hoje existem links separados para cada um
• Programação https://support.industry.siemens.com/cs/br/pt/view/90885040
• Safety https://support.industry.siemens.com/cs/br/pt/view/109750255
• Estilo https://support.industry.siemens.com/cs/br/pt/view/109478084
• "Styleguide Checker“ https://support.industry.siemens.com/cs/br/pt/view/109741418 (V15.1 e V16)

O Styleguide Checker foi incorporado ao pacote adicional TIA Portal Test Suite Advanced V16:
6
Aviso de lançamento: https://support.industry.siemens.com/cs/br/pt/view/109775720

PLC
Download: https://support.industry.siemens.com/cs/br/pt/view/109775719
75719 Checklist

SITRAIN © Siemens AG 2018 Demo: abrir PDF, mostrar conteúdo DI-STAND


Page 59 20 min Standardization

SITRAIN DI-STAND
Training for Industry Page 59 Standardization
Exercício – Nível 1

ƒ Abrir projeto inicial


ƒ Analisar projeto
ƒ Verificar com Styleguide Checker

SITRAIN © Siemens AG 2018 DI-STAND


Page 60 Standardization

Task Description You are to retrieve the Start project “ExerciseStart.zap15_1”.


You will find it under:
“C:\02 _Archives\TIA-Portal\DI-STAND\Exercise”
You are to become familiar with the project.
Using the Styleguide Checker, you are then to check the project to see whether
the rules/recommendations from the Programming Styleguide have been adhered
to.

You will find a detailed description of what to do on the following page!

SITRAIN DI-STAND
Training for Industry Page 60 Standardization
O que fazer 1. Recupere (descompacte) o projeto inicial “ExerciseStart.zap15_1”. Você o encontrará
em:
“C:\02_Archives\TIA_Portal\DI-STAND\Exercise”

2. Analise o projeto usando o Programming Styleguide

3. Inicie o Styleguide Checker (”C:\02_Archives\TIA_Portal\DI-


STAND\Exercise\ProgrammingStyleguideChecker_v15”)

4. Inicie o teste (verificação) clicando no botão“> > run checker”

5. Confirme a caixa de diálogo “Openness Access” no TIA Portal com “Yes, all”.

6. Verifique o resultado no Styleguide Checker.

abr o bloco para corrigi-lo.


7. Através do menu de contexto “Edit type”, abra

8. Corrija o bloco e solte-o com a entrada do menu de contexto “Release version”.

PL
9. Compile os blocos no seu PLC.

apas 4 a 9 até que não haja mais problemas


10. Repita as etapas

11. Salve seu projeto.

SITRAIN DI-STAND
Training for Industry Page 61 Standardization
O que fazer 1. Recupere (descompacte) o projeto inicial “ExerciseStart.zap15_1”. Você o encontrará
em:
“C:\02_Archives\TIA_Portal\DI-STAND\Exercise”

2. Analise o projeto usando o Programming Styleguide

3. Inicie o Styleguide Checker (”C:\02_Archives\TIA_Portal\DI-


STAND\Exercise\ProgrammingStyleguideChecker_v15”)

4. Inicie o teste (verificação) clicando no botão“> > run checker”

5. Confirme a caixa de diálogo “Openness Access” no TIA Portal com “Yes, all”.

6. Verifique o resultado no Styleguide Checker.

abr o bloco para corrigi-lo.


7. Através do menu de contexto “Edit type”, abra

8. Corrija o bloco e solte-o com a entrada do menu de contexto “Release version”.

PL
9. Compile os blocos no seu PLC.

apas 4 a 9 até que não haja mais problemas


10. Repita as etapas

11. Salve seu projeto.

SITRAIN DI-STAND
Training for Industry Page 62 Standardization
2º Nível de Padronização

2
ƒ Blocos e suas interfaces
ƒ Bibliotecas
ƒ Faceplate (HMI)

O segundo nível de padronização diz respeito à interfaces doss programação


pr de blocos,
gerenciamento de objetos em bibliotecas, e, o uso de faceplates.
faceplates

SITRAIN © Siemens AG 2018 DI-STAND


Page 63 Standardization

SITRAIN DI-STAND
Training for Industry Page 63 Standardization
Interfaces - Uso e Definição

Unidade
• Troca de dados simplificada através de 2
interfaces de bloco (as informações podem
ser compactadas)
Matriz Bool [0 ..9]
• Evitar interconexões não intencionais
incorretas de interfaces PLC-data type …

• Pode ser parametrizado String

• Alta transparência

• Diagnóstico simples EM

SITRAIN © Siemens AG 2018 DI-STAND


Page 64 Standardization

SITRAIN DI-STAND
Training for Industry Page 64 Standardization
2º Nível de Padronização - Blocos

Transport logic Transport conveyor

Sensor 2

Drive Drive logic

V90

A
CT
Vantagens: Restrições:
ƒ alta parametrização ƒ estr
estrutura de software mais complexa
ƒ alta reutilização ƒ requer compreensão mais profunda
da
ƒ mudança centralizada

SITRAIN © Siemens AG 2018 DI-STAND


Page 65 Standardization

SITRAIN DI-STAND
Training for Industry Page 65 Standardization
2º Nível de Padronização - Blocos

Interface de bloco

Nenhum prefixo para parâmetros formais


2
Troca de dados somente via interface, é proibido o acesso externo a tags STAT!

Se possível, use apenas tipos de dados elementares como Input ou Output, InOut somente se necessário

Sempre use tags estruturadas como InOut

Sempre escreva tags de saída, mas apenas uma vez por ciclo

Tags separadas para HMI (read/write ՜ input/output)

Outros
ƒ Se um bloco for parametrizado incorretamente, o bloco deve
ve assumir
um estado definido e sinalizar isso de acordo.
ƒ Os blocos protegidos pelo know-how devem m primeiro ser
s verificados
quanto a “Library conformance”
SITRAIN © Siemens AG 2018 DI-STAND
Page 66 Standardization

SITRAIN DI-STAND
Training for Industry Page 66 Standardization
2º Nível de Padronização - Armazenamento de Dados

Use Global DBs quando os dados forem usados por várias partes ou blocos
do programa.
Bits de Memórias são o ontem, o hoje são blocos de dados globais! 2
Cada CLP possui áreas de memória de tamanhos diferentes (por exemplo,
system and clock memories). Isso garante que o programa possa ser usado
universalmente.

Se possível, use blocos otimizados; isso oferece ao programa um


desempenho superior. O CLP S7-1200 cria os dados como otimizados para
memória e o S7-1500 como otimizados para acesso (figura à direita).
Uma "operação mista" de blocos otimizados e não otimizados deve ser
evitada.

Para evitar inconsistências de dados entre o


programa padrão e o programa de segurança,
você deve usar buffers de dados na forma de
Global DBs usados para a troca de dados.

SITRAIN © Siemens AG 2018 DI-STAND


Page 67 Standardization

SITRAIN DI-STAND
Training for Industry Page 67 Standardization
2º Nível de Padronização - Bibliotecas

ƒ Existem duas bibliotecas diferentes :


• Project library é armazenado com o projeto do TIA Portal e também está disponível apenas neste
projeto 2
• Global library é armazenado externamente (disco rígido local, unidade de rede,…) e está disponível
em todos os projetos
ƒ O nome da biblioteca recebe o prefixo "L" (Library) e um nome com no máximo 8 caracteres

ƒ Todos os elementos de uma biblioteca recebem o nome da biblioteca como prefixo


Exemplos:

SITRAIN © Siemens AG 2018 DI-STAND


Page 68 Standardization

SITRAIN DI-STAND
Training for Industry Page 68 Standardization
2º Nível de Padronização - Controle de Versão de Objetos na Biblioteca

ƒ Objetos em desenvolvimento possuem um número de versão <1.0.0

ƒ A primeira versão lançada possui o número da versão 1.0.0 2


ƒ O terceiro dígito do número da versão identifica pequenas alterações que não afetam a documentação
(exemplo - solução de problemas, melhorias de desempenho, etc.)

ƒ Para expansões da funcionalidade existente, o segundo dígito do número da versão é incrementado

ƒ Para alterações que resultam em novas funções ou que tornam o bloco incompatível com versões mais
antigas, o primeiro dígito do número da versão é incrementado

ƒ Alterações e número da versão estão documentados no cabeçalho do bloco

SITRAIN © Siemens AG 2018 DI-STAND


Page 69 Standardization

SITRAIN DI-STAND
Training for Industry Page 69 Standardization
2º Nível de Padronização - HMI Faceplates

Um faceplate é um grupo configurado de exibição e objetos operacionais.


A "troca de dados" com a tela e os objetos contidos no faceplate ocorre através de
uma interface.
Os faceplates podem ser gerenciadas e modificadas centralmente em uma
biblioteca (reutilização).
Em conjunto com PLC data types, pode-se usar todo o potencial doss faceplates.
O uso faceplates facilita a engenharia e economiza tempo.

SITRAIN © Siemens AG 2018 DI-STAND


Page 70 Standardization

SITRAIN DI-STAND
Training for Industry Page 70 Standardization
2º Nível de Padronização - Biblioteca com Funções Gerais

A Biblioteca de Funções Gerais “LGF” é oferecida no SIOS, license-free.


Esta biblioteca expande o escopo funcional já existente do TIA Portal com blocos úteis adicionais.
2

SITRAIN © Siemens AG 2018 DI-STAND


Page 71 Detalhes na página seguinte Standardization

SITRAIN DI-STAND
Training for Industry Page 71 Standardization
Links para Suporte

2
Creating Faceplates with WinCC Runtime Advanced and Comfort Panels
(Entry ID: 68014632)

Library of General Functions (LGF) for STEP 7 (TIA Portal) and S7-1200 / S7-1500
(Entry ID: 109479728)

Libraries with PLC Data Types (LPD) for STEP 7 (TIA Portal) and S7-1200 / S7-1500
(Entry ID: 109482396)

Checklist

SITRAIN © Siemens AG 2018 DI-STAND


Page 72 Standardization

SITRAIN DI-STAND
Training for Industry Page 72 Standardization
Exercício – Nível 2

ƒ Usando o LGF
ƒ Expandindo a interface no bloco
ƒ Execução de controle de versão em
bloco

SITRAIN © Siemens AG 2018 DI-STAND


Page 73 Standardization

Task Description You are to open the LGF “LGF_V15.1.al15_1” in the Global libraries.
You will find it under:
“C:\02 _Archives\TIA-Portal\DI-STAND\Exercise”
From it, you are to use the “LGF_Frequency” block in your project as a flashing
frequency sensor/encoder for the error message in the “Sensor” block and you
are to adjust the blocks concerned.
After you make the adjustment, the relevant blocks are to be given a new version
that you will then release.

You will find a detailed description of what to do on the following page!

SITRAIN DI-STAND
Training for Industry Page 73 Standardization
O que fazer? 1. Abra o LGF “LGF_V15.1.al15_1” em Global libraries.
Você o encontrará em:
“C:\02 _Archives\TIA_Portal\DI-STAND\Exercise”

2. Adicione o bloco “LGF_Frequency” da biblioteca para o bloco “Sensor”. Para isso, você
precisará editar o tipo, caso contrário, nenhuma alteração seria possível.

3. Atribua uma instância múltipla como área de dados e dê um nome a ela de acordo com
o Programming Styleguide.

4. Atribua os parâmetros ao bloco de forma que a taxa de pausa de pulso seja 1:1 e a
frequência seja 2 Hz. (consulte a documentação LGF)

5. O ciclo gerado deve ser produzido como uma saída adicional chamada
“FlashFrequency” no bloco em caso de erro.

ecessário liberar os blocos em questão.


6. Devido às alterações até agora, é necessário
ect library” para todos os tipos ou para cada tipo
Você pode fazer isso na “Project
individualmente.
Através do menu de contexto no objeto relevante, você pode chamar a função “Release
all”.

7. Na caixa de diálogo exibida, desative todas as marcas de seleção e confirme com “OK”.

8. Analise o que acontece no seu projeto e na “Project library” devido à ação anterior.

9. Salve seu projeto.

SITRAIN DI-STAND
Training for Industry Page 74 Standardization
O que fazer? 1. Abra o LGF “LGF_V15.1.al15_1” em Global libraries.
Você o encontrará em:
“C:\02 _Archives\TIA_Portal\DI-STAND\Exercise”

2. Adicione o bloco “LGF_Frequency” da biblioteca para o bloco “Sensor”. Para isso, você
precisará editar o tipo, caso contrário, nenhuma alteração seria possível.

3. Atribua uma instância múltipla como área de dados e dê um nome a ela de acordo com
o Programming Styleguide.

4. Atribua os parâmetros ao bloco de forma que a taxa de pausa de pulso seja 1:1 e a
frequência seja 2 Hz. (consulte a documentação LGF)

5. O ciclo gerado deve ser produzido como uma saída adicional chamada
“FlashFrequency” no bloco em caso de erro.

ecessário liberar os blocos em questão.


6. Devido às alterações até agora, é necessário
ect library” para todos os tipos ou para cada tipo
Você pode fazer isso na “Project
individualmente.
Através do menu de contexto no objeto relevante, você pode chamar a função “Release
all”.

7. Na caixa de diálogo exibida, desative todas as marcas de seleção e confirme com “OK”.

8. Analise o que acontece no seu projeto e na “Project library” devido à ação anterior.

9. Salve seu projeto.

SITRAIN DI-STAND
Training for Industry Page 75 Standardization
3º Nível de Padronização

Estrutura de programa e estrutura de dados totalmente padronizada 3


Simplificação de blocos / funções

Transferência de parâmetro através de Array instances / parameter instances - blocos universais

Uso de funções do sistema, como Array [*] / Array of Multiinstance / Parameter instance / REF_TO, para
economizar recursos e facilitar a leitura do programa

O terceiro nível de padronização lida com a estrutura do program


programa, a programação de funções
simplificadas, o uso de estruturas e tipos de dados
dos de PLC nas interfaces de bloco e o uso de
funções do sistema.

SITRAIN © Siemens AG 2018 DI-STAND


Page 76 Standardization

SITRAIN DI-STAND
Training for Industry Page 76 Standardization
3º Nível de Padronização - Estrutura do Programa

Uma estrutura de programa totalmente padronizada determina essencialmente a estrutura de chamada


do programa.
3
Vantagens:
melhor clareza
definição mais simples de interfaces de bloco e escopo da função
permite a geração automática de partes do programa (por exemplo, com TIA Openness)
permite uma engenharia automática para outros sistemas de dentro do programa (por exemplo, SiVArc)

Restrições:
os blocos criados existentes teriam que ser ajustados à nova estrutura do programa e ao escopo
correspondente da função
no início, maior esforço no desenvolvimento dos blocos

SITRAIN © Siemens AG 2018 DI-STAND


Page 77 Standardization

SITRAIN DI-STAND
Training for Industry Page 77 Standardization
3º Nível de Padronização - Estrutura do Programa

Apresentação simplificada de uma estrutura de programa (também para programas de segurança)


Program structure

3. Level
3
PLC-Types HMI-Types

2. Level
(Function group) Faceplate
FB (Motor)
(Motor)

1. Level
(Module) FB (Valve) Faceplate
FB (Motor) FB (Motor) FB (Valve) FB (Valve) FB (Valve) (Valve)

SITRAIN © Siemens AG 2018 DI-STAND


Page 78 Standardization

SITRAIN DI-STAND
Training for Industry Page 78 Standardization
3º Nível de Padronização - PLC Data Types

Se conjuntos de dados com certas propriedades devem ser utilizados no programa, recomenda-se o
uso de PLC data types.
Os PLC data types são estruturas de dados definidas pelo usuário que podem consistir em diferentes 3
tipos de dados.
Vantages:
Acesso a áreas de I/O com PLC data types.
As variáveis (tags) baseadas em PLC data types, recebem todas as propriedades PLC data
types
A modificação do PLC data type resulta em um ajuste automático de todas as
variáveis referenciadas.
Com a ajuda dos símbolos consistentes, o programa se torna mais fácil de ler, pois os
nomes dos elementos individuais de um PLC data type são exibidos no programa.
Maior desempenho desde que o código do programa otimizado izado é gerado.
Durante a chamada em bloco, o PLC data type pode ser transferido
transfe como uma
estrutura inteira.
Interface de chamada simplificada devido ao menor número de parâmetros a serem
fornecidos.
Comparação de estruturas inteiras com um comando.
SITRAIN © Siemens AG 2018 DI-STAND
Page 79 Standardization

SITRAIN DI-STAND
Training for Industry Page 79 Standardization
3º Nível de Padronização - Exemplo de Tipos de PLC Data Types

Através do uso de PLC data types, os


faceplates da HMI podem ser
interconectadas rápida e claramente.
A interface dos faceplates podem ser
criadas a partir de um ou mais tipos de
dados.

Uma geração automatizada de telas


com faceplates a partir do programa
STEP 7 pode ser alcançada com a
opção de software SiVArc.

SITRAIN © Siemens AG 2018 DI-STAND


Page 80 Standardization

SITRAIN DI-STAND
Training for Industry Page 80 Standardization
3º Nível de Padronização - Padronização de Blocos

Uso de tipos de dados do PLC e Matrizes

Loop (n…n+x)
3
#instConveyors[n].Mode #instConveyors[n].Diag

Vantagens :
#instConveyors[n].Enable #instConveyors[n].Position ƒ alta capacidade de parametrização
ƒ alta reutilização
#instConveyors[n].Config ƒ mutabilidade central
ƒ menos código de programa

Restrições:
ƒ estrutura de software mais
complexa
ƒ requer compreensão mais
profunda

SITRAIN © Siemens AG 2018 DI-STAND


Page 81 Standardization

SITRAIN DI-STAND
Training for Industry Page 81 Standardization
3º Nível de Padronização - Programação Independente de Hardware

Para garantir que um bloco possa ser usado sem problemas em todos os PLCs sem ajustes adicionais, é
importante não usar funções e propriedades dependentes de hardware.
Use apenas os tipos de dados e parâmetros suportados pelos PLCs nos quais o programa será executado. 3
(consulte Programming Guidelines)

SITRAIN © Siemens AG 2018 DI-STAND


Page 82 Standardization

SITRAIN DI-STAND
Training for Industry Page 82 Standardization
Implementação do padrão de programação
Sumário

3
Flexibilidade e Definição de interface
Programming Styleguide
Legibilidade • Estruturas
• Identificador de tag Confiabilidade
• Transferência de parâmetros

Padrão

Linguagem de programação Local de armazenamento


• Linguagem gráfica
Manutenção • Global DB
Reutilização
iliz
• Idioma do texto fácil • Instância múltipla

RAe Master copies


DTypes
Biblioteca
• T
SITRAIN © Siemens AG 2018 DI-STAND
Page 83 Standardization

SITRAIN DI-STAND
Training for Industry Page 83 Standardization
Links para Suporte

TIA Portal - An Overview of the Most Important Documents and Links – Communication
(Entry ID: 90940081)
3
Programming Guidelines and Programming Styleguide for SIMATIC S7-1200 and S7-
1500 (Entry ID: 81318674, incl. Templates and Styleguide Checklist)
(já apresentado nas páginas anteriores)

Programming Guideline Safety for SIMATIC S7-1200/1500


(Entry ID: 109750255)
(já apresentado nas páginas anteriores)

TAG
PLC
RAS
SITRAIN © Siemens AG 2018
ESD DI-STAND
Page 84 Standardization

TAG
PLC
RAS
ESD

SITRAIN DI-STAND
Training for Industry Page 84 Standardization
Exercício - Nível 3

ƒ Expansão envolvendo mais dois


transportadores
ƒ Preparação de dados para o HMI
ƒ Execução de controle de versão dos
blocos

ƒ Implementação na sua empresa?

SITRAIN © Siemens AG 2018 DI-STAND


Page 85 Standardization

Task Description Two further transport conveyors are now to be added to the system. Change the
block so that it provides the data for an HMI.
After you make the adjustment, release the relevant blocks and assign a new
version.

You will find a detailed description of what to do on the following page!

SITRAIN DI-STAND
Training for Industry Page 85 Standardization
O que fazer? 1. Adicione mais duas chamadas do bloco “Conveyor” no bloco “Machine”.

2. Como área de dados, atribua uma única instância cada e nomeie-as de acordo com o
Programming Styleguide.

3. Arraste o tipo de dados do PLC "LStand_typeAxisHMI" da “Project library” para os tipos


de dados do PLC do seu PLC utilizando arraste e solte.

4. Corrija o nome deste tipo de dados PLC em relação ao Programming Styleguide.

5. Abra o bloco “Axis” e adicione uma saída do tipo de dados “LStand_typeAxisHMI”.

6. Adicione “REGION” no bloco em que você copia os dados para a HMI.

7. Devido às alterações, é necessário liberar os blocos em questão. Você pode fazer isso
ra cada tipo individualmente. Através do menu
na “Project library” para todos os tipos ou para
cham a função “Release all”.
de contexto no objeto relevante, você pode chamar

bida, desative
8. Na caixa de diálogo exibida, desativ todas as marcas de seleção e confirme com “OK”.

e acontece no
9. Analise o que n seu projeto e na “Project library” devido à ação anterior.

10. Salve seu projeto.

Think about how or what you could standardize in your company / plant?

Present your ideas to the group and discuss them.

SITRAIN DI-STAND
Training for Industry Page 86 Standardization
O que fazer? 1. Adicione mais duas chamadas do bloco “Conveyor” no bloco “Machine”.

2. Como área de dados, atribua uma única instância cada e nomeie-as de acordo com o
Programming Styleguide.

3. Arraste o tipo de dados do PLC "LStand_typeAxisHMI" da “Project library” para os tipos


de dados do PLC do seu PLC utilizando arraste e solte.

4. Corrija o nome deste tipo de dados PLC em relação ao Programming Styleguide.

5. Abra o bloco “Axis” e adicione uma saída do tipo de dados “LStand_typeAxisHMI”.

6. Adicione “REGION” no bloco em que você copia os dados para a HMI.

7. Devido às alterações, é necessário liberar os blocos em questão. Você pode fazer isso
ra cada tipo individualmente. Através do menu
na “Project library” para todos os tipos ou para
cham a função “Release all”.
de contexto no objeto relevante, você pode chamar

bida, desative
8. Na caixa de diálogo exibida, desativ todas as marcas de seleção e confirme com “OK”.

e acontece no
9. Analise o que n seu projeto e na “Project library” devido à ação anterior.

10. Salve seu projeto.

Think about how or what you could standardize in your company / plant?

Present your ideas to the group and discuss them.

SITRAIN DI-STAND
Training for Industry Page 87 Standardization
Conclusão

Padronização é um processo contínuo e vive através de sua aplicação e desenvolvimento.


Um padrão cresce ao longo de meses ou anos e não pode ser criado em apenas alguns dias.
Um padrão não é universalmente aplicável, mas sempre específico do cliente.
Como resultado, somente aqui podem ser feitas recomendações que devem ser levadas em
consideração.

SITRAIN © Siemens AG 2018 DI-STAND


Page 88 Standardization

SITRAIN DI-STAND
Training for Industry Page 88 Standardization
G
T
Introdução ao Openness
ness
P LC
S
SITRAIN © Siemens AG 2018 Course: TIA-AUTOEN

Content Page
Training objectives.................................................................................................................... 2
Automated Digital Workflow.................................................................................................... 3
Agenda……………………………………………………………………………………………………………………………….. 4
Project generation…………………................................................................................................. 6
TIA Portal Openness……………………………………………………………………………………………………………. 18
Openness and software generation ........................................................................................ 25
Openness and hardware configuration ………........................................................................... 28
Exercise 1: Import AML from the ECAD in the TIA Portal.........................................................
........ 32
Exercise 2: Data exchange between the TIA Selection on Tool & the th TIA Portal........................... 34
Openness and hardware configuration ………………..................................................................
………........ 37
Conclusion ................................................................................................................................
............... 39
Checkpoint................................................................................................................................ 40

SITRAIN TIA-AUTOEN
Training for Industry Page 1 Openness Introduction
Objetivo

Ao final deste capítulo o aluno irá ...

... conhecer o princípio de geração de projetos

... conhecer os termos algoritmo de geração, base de dados e interface


de importação, dentro do contexto do Openness

... conhecer as possiblidade de geração de hardware e software

... ser capaz de explicar os conceitos de Openness API do TIA Portal

... c
ser capaz de importar e exportar configurações de hardware

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 2 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 2 Openness Introduction
Automated Digital Workflow

Block HMI Generation


test Gerando telas de
Teste automático de HMI
blocos

Padronização PLC
Generation
Criando um padrão Gerando o programa
PLC

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 3 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 3 Openness Introduction
Agenda

1 Review e agenda

2 Geração de projeto

3 TIA Portal Openness

4 Openness e geração de software

5 Openness e configuração de hardware

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 4 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 4 Openness Introduction
Agenda

1 Review e agenda

2 Geração de projeto

2.1 Motivação

2.2 Exigências

2.3 Componentes

2.4 Variantes

2.5 Métodos de geração

3 TIA Portal Openness

4 Openness e geração de software

5 Openness e configuração de hardware

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 5 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 5 Openness Introduction
Geração de projeto
Motivação

ECAD TIA Portal


Overhead
Planejamento de Configuração de
HW HW
4 MD Tempo necessário para o projeto
Planejamento de Configuração de completo :
rede Rede
I/O tags
9 semanas
Electr. device ID1)
Æ Propenso a erros devido a muitas
Electr. layout etapas manuais

Projetos antigos 8 MW Objetivos


Programa Programa PLC
• Reduzindo despesas gerais individuais
Visualização
• Reduzindo a taxa de erro
• A consistência dos dados

SITRAIN © Siemens AG 2018


1) Device ID
D MW = Week; MD = Day DI-AUTOEN
Page 6 Openness Introduction

Initial situation:
• Complete electrical planning
• Completed projects

Work involved:
• Manual transfer of the configuration from ECAD to the TIA Portal (4 days)
• The blocks that can be copied from completed projects can be derived from the layout
• Subsequent adaptation of the blocks for a new project (8 weeks)

This sums up to total of approximately 13 weeks of work.

Many manual steps make this process prone to errors, ors, e.g.: writing
w down a list of 100 tags manually, in
which case it is easy to lose your place within
n a line and
an to make typing errors.

For this reason, our objective is to reduce the individual efforts expended as well as the error rate
during configuration and to avoid additional
d effort through integrated use of data.

SITRAIN TIA-AUTOEN
Training for Industry Page 6 Openness Introduction
Geração de projeto
Motivação

ECAD TIA Portal


Planejamento de Configuração de
HW Gerador de projeto HW
Planejamento de Configuração de
rede rede

Openness
Electr. device ID1) I/O tags

Electr. layout

Biblioteca
Programa Programa PLC

Visualização

SITRAIN © Siemens AG 2018


1) Device ID
D DI-AUTOEN
Page 7 Openness Introduction

The following procedure is an example:


Same initial situation as before.

But instead of transferring data manually, this time we use a project generator, which makes use of
already existing data and imports this data to the TIA Project with the help of Openness.

In this case, the work of the employee would consist of starting the generator and
waiting until it is finished.

But what is this project generator? And where can you get such a thing?

SITRAIN TIA-AUTOEN
Training for Industry Page 7 Openness Introduction
Geração de projeto
Exigências

Lógica de geração
• Como os blocos são interconectados para
criar um programa?

Database Interface de importação


• Coleta de blocos testados, padronizados, • Opção para importar dados para o projeto
UDTs, etc.
• Informações sobre dependências

S P
RA
Padronização
Padron
D
S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 8 Openness Introduction

At the beginning, we want to examine the basis for the requirements of a generator.

First, we need an import interface via which we receive the data for our project.

In addition, we need a database that we can rely on. A collection of tested blocks, UDTs, etc.

As the third aspect, we need logic that defines how our program blocks must be interconnected.

And as the cornerstone on which all these aspects rest, we need integrated standardization.

You have already become familiar with standardization.

mport interface,
Next, we want to examine the three blocks (Import int Database and Generation logic) in more
detail.

SITRAIN TIA-AUTOEN
Training for Industry Page 8 Openness Introduction
Geração de projeto
Componentes

Interface de importação

Tarefa
• Transfira dados para o TIA Portal por
• Importando arquivos ou
• Mudanças diretamente no projeto
Importar/Exportar

Implementação
• TIA Portal Openness

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 9 Openness Introduction

The import interface:

The tasks of the import interface consist of transferring data/information to the TIA Portal project.
This is done either by
• Importing files
• By adapting data directly in the project.

Possible implementation for the TIA Portal: TIA Portal Openness.

SITRAIN TIA-AUTOEN
Training for Industry Page 9 Openness Introduction
Geração de projeto
Componentes

Database

Tarefa
Forneça informações sobre :
• Código fonte dos blocos, UDTs, etc.
• Dependências necessárias
• Como o bloco do programa é usado (por exemplo, chamada de
função)
• Configuração
Implementação
• Opções diferentes, por exemplo SQL database ou estrutura
tura de pastas
pas
com arquivos de informações
• Pode ser personalizado

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 10 Openness Introduction

The database:

The task of the database is to hold data.

This can range from the source code of the blocks in various formats and necessary dependencies
and information about the call all the way to various configurations.

During the implementation, the creator has a free hand because there are various possibilities
for storing data.

For example:
•Based on an SQL database
•As files in a special folder
er structure
structu

The database is freely adaptable to


o the customer
cu and only depends on the particular information
the customer needs for his generator.

SITRAIN TIA-AUTOEN
Training for Industry Page 10 Openness Introduction
Geração de projeto
Componentes

Lógica de geração

Tarefa
• Leia a configuração
• Combinação de elementos
Programa 1
• Considerando dependências

Implementação
• Recuperando as informações do banco de dados
• Criando arquivos de importação
Programa 2
ão
• Transferir para a interface de importação

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 11 Openness Introduction

The last component is the most time-consuming part – the generation logic.

The logic is used to specify how the blocks are interconnected in the project and how the
configurations are to be interpreted.

The tasks range from reading out the configuration and the combining of elements to
the consideration of dependencies.

This is done by retrieving information from the database, creating/updating


import files and then transferring them to the import interface.

SITRAIN TIA-AUTOEN
Training for Industry Page 11 Openness Introduction
Geração de projeto
Variantes

Um gerador de projeto pode ser criado em diferentes variantes.

Preparação do projeto Geração parcial Geração completa

• Cria elementos básicos • Interconexão dos blocos • Gera um projeto completo


(HWCN, IO tags, etc.) • Parametrizando os blocos • Não são necessárias
• Reduz trabalho adicional e adaptações manuais
etapas propensas a erros
• Implementação muito rápida

 Menos tempo economizado  Requer uma compreensão  Muito tempo consumindo


em relação ao tempo total a
mais profunda da máquina  Altos requisitos em padrão
devido ao alto componente de  Sobrecarga manual média
trabalho manual A
Transição de
A S
e fluxo entre
en as variantes

DR
e seleciona o escopo correspondente
O cliente

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 12 Openness Introduction

The next aspect of a generator is the degree of completeness of the generated project.

We differentiate three levels of project generation here:

Project preparation

• This type of generation generates only the most basic elements of a project, but it offers the
advantage that it is very fast and easy to implement.
• As an example: copying the HWCN or standard blocks into the project.

Partial generation

• Here, previously extended interconnectionsns are generated


gen in the project, e.g.: inserting the calls of
the previously copied blocks in the main OB. This
T requires correspondingly greater insight into the
configuration of the project but also leaves
lea less work for manual adaption.
• Used at BMW for example.

Full generation

• With full generation, the objective is to have a finished project after generation, in other words a
project in which no further manual intervention is needed.
• Creation of such a generator requires disproportionately more effort, because all the possible
particularities of the project must be taken into account.
• Used at SPPAL for example.

SITRAIN TIA-AUTOEN
Training for Industry Page 12 Openness Introduction
Geração de projetos
Métodos de geração

Processos de fabricação na indústria:


• Subtrativo (A)
• Aditivo (B)

Ambos os processos podem ser adaptados à


geração do projeto.

Ambos os processos são possíveis para as variantes


introduzidas:
• Preparação do projeto
• Geração parcial
• Geração completa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 13 Openness Introduction

Can be used for any variant.

There are various methods available for generating a project.

Two basic methods are presented here:

• Subtractive generation
• Additive generation

Both methods have their own applications in which the advantages of the respective method can be
exploited.

SITRAIN TIA-AUTOEN
Training for Industry Page 13 Openness Introduction
Geração de projeto
Métodos de geração

Geração subtrativa
Situação inicial :
• Projeto em configuração máxima

Procedimento :
• As partes do programa não utilizadas são removidas

Pontos fortes:
• Fácil de implementar
guraç
• Muito adequado para máquinas com diferentes níveis de configuração

Pontos fracos:
master project”
• As adaptações devem ser mantidas no “master projec
e implementar
• Módulos substituíveis são difíceis de impleme
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 14 Openness Introduction

Subtractive generation

In subtractive generation, you start with a maximum project scope and gradually remove the parts that
are not needed.

This method is very well suited for machines with different expansion levels, e.g.: a machine with one
to three machining stations.

SITRAIN TIA-AUTOEN
Training for Industry Page 14 Openness Introduction
Geração de projeto
Métodos de geração

Geração de aditivos
Situação inicial :
• Projeto vazio

Procedimento:
• Os módulos da planta são adicionados um após o outro

Vantagens:
• Facilmente adaptável/expansível
• Muito adequado para máquinas com uma seleção de módulos

Ponto fracos:
• Alta sobrecarga de implementação

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 15 Openness Introduction

Additive generation

In additive generation, you start with an empty project and gradually add elements.

An example where an additive generation is more suitable compared to a subtractive method would
be a machine that holds one of three machining tools.

SITRAIN TIA-AUTOEN
Training for Industry Page 15 Openness Introduction
Geração de projeto
Métodos de geração

Métodos de geração

Exemplo para

• Subtrativo

• Aditivo

CTA
PL
Live
S D R AS d
demo
SITRAIN © Siemens AG 2018 Ch1_LD1_Generator_V15_1, mostrar projeto vazio, fechar, rodar, aditivo, escolher opções DI-AUTOEN
Page 16 Mostar duas CPU’s criadas, rodar subtrative. (Sair sem salvar) Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 16 Openness Introduction
Agenda

1 Review e agenda

2 Geração de projeto

3 TIA Portal Openness

3.1 Geral

3.2 Escopo de funções

3.3 Opções de aplicação

3.4 Suporte

4 Openness e geração de software

5 Openness e configuração de hardware

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 17 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 17 Openness Introduction
TIA Portal Openness
Geral

Em vez de
operação manual
do TIA Portal

TIA Portal Openness


Public API 1
Execução Project.Open() Open project
automática de
ações
Device.Compile() Compile device

Crie um aplicação com a TIA Portal Openness usa


sa
funcionalidade desejada, por
S P
DLLs para fornecer acesso a
TIA Portal é controlado

RA
remotamente pelo aplicativo
exemplo com Microsoft nções do T
objetos e funções TIA
D
através do Openness
Visual Studio
S
Portal
Porta

SITRAIN © Siemens AG 2018 1 Application Programming Interface DI-AUTOEN


Page 18 Openness Introduction

The basic function of TIA Portal Openness is to take tasks that previously had to be performed
manually in the TIA Portal and have them performed automatically by a custom application.

SITRAIN TIA-AUTOEN
Training for Industry Page 18 Openness Introduction
TIA Portal Openness
Geral

Funcionalidade da interface do Openness


• A funcionalidade do TIA Portal é armazenada nas Pasta Bin:
TIA Portal
bibliotecas de programas (DLL) no diretório de
DLLs/Funcionalidade
instalação do TIA Portal. …
• Openness é uma interface pública que usa essas Pasta PublicAPI:
bibliotecas e encaminha comandos. Openness
DLLs/Funcionalidade
Vantagens:
• Interface documentada As DLLs de abertura são
• Consistência mesmo quando as funções das interfaces públicas que
bibliotecas de programa do TIA Portal mudam encaminham comandos para

AEXEG
Seu DLLs do TIA Portal
próprio
programa
pr

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 19 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 19 Openness Introduction
TIA Portal Openness
Escopo das funções

TIA Portal Openness oferece


• As funções API1 permitem que os programas
• Criar/modificar projetos/dados do projeto
• Controlar remotamente as funções do TIA Portal
Public API 1

• Exportar/Importar funcionalidade para Seu


Execução Importar/
• Trocar, modificar e armazenar dados do projeto próprio
Exportar
totalmente programa
XML
automática de EXE
ações

T
Operação
Operaç
L
simplificada
simplif usando
interface de usuário
1 Application Programming Interface
personalizada

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 20 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 20 Openness Introduction
TIA Portal Openness
Opções de aplicação

Produção Serviços
Engenharia
Planejamento de produção

Design de produto Aplicativos durante o serviço :


• Criando documentação aprimorada

Aplicações durante a produção:


• Verificando as plantas de produção quanto a
mudanças
• Criando estatísticas do programa

G
Aplicações durante a engenharia :
Ap
Entre planejamento e • Gerando
G o programa de visualização/controle
engenharia: • Verificando o programa para obter diretrizes
• Aplicar/importar símbolos
mbolos de I/O • Sincronização automática de programas, bibliotecas,
• Criando objetos
jetos básicos do programa bancos de dados (textos, programas)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 21 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 21 Openness Introduction
TIA Portal Openness
Possíveis aplicações

Primeira execução Cada execução repetida

160 min
160 min
160 min
Manual 180 min ~-10% 160 min

Com TIA Portal


Openness 7575
75 min
min
min
360 min 75 min
AG
Mais tempo devido à criação do ~-80%
~-8
aplicativo

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 22 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 22 Openness Introduction
Links para Suporte

TIA Portal Openness

Automating projects with scripts (Entry-ID 109477163)

TIA Portal Openness: Introduction and Demo Application (Entry-ID 108716692)

Tips and tricks for working with TIA Portal Openness (Entry-ID 109251656)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 23 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 23 Openness Introduction
Agenda

1 Review e agenda

2 Geração de projeto

3 TIA Portal Openness

4 Openness e geração de software

4.1 Opções

4.2 Bibliotecas, arquivos de origem e XML

5 Abertura e configuração de hardware

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 24 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 24 Openness Introduction
Openness e geração de software
Possibilidades

Criando, modificando e excluindo dados do projeto com TIA Portal Openness

Por exemplo:
• Tags
• Tabelas de tags
• Tipos de dados do usuário (UDTs)
• Blocos

Possibilidades de criação:
• Instanciando tipos de uma biblioteca do TIA Portal
• Inserindo “master copies” de uma biblioteca do TIA Portal
• Importando arquivos XML
• Adicionando arquivos de origem externos

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 25 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 25 Openness Introduction
Openness e geração de software
Bibliotecas, arquivos de origem e XML

Bibliotecas Arquivos fonte & XML

+ Armazenando blocos/UDTs como “types” + Arquivos livremente adaptáveis


+ As dependências são automaticamente levadas em + Blocos podem ser criados completamente novos
consideração
+ Fácil de adicionar
+ Master copies para elementos que não podem ser
“versionados” - Difícil de implementar
- Dependências devem ser levadas em consideração
- Os elementos não podem ser adaptados com TIA
Portal Openness
- As chamadas em bloco devem ser armazenadas
previamente

T
LC
Beneficie da combinação dos
os dois méto
métodos :
• Bibliotecas para blocos
S P
os padrão

DR
• Arquivos de origem e XML
XM para elementos variáveis do programa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 26 Openness Introduction

Openness offers two possibilities for copying blocks/UDTs/tag tables to a project.

Libraries

• You have the option of storing blocks/UDTs as types in a library.


• The blocks can then be easily copied to a project. The same also applies to master copies, which
offer the advantage for elements that cannot be typified can be stored, but have no versioning for
this.
• For a library, the fact that library elements cannot be changed by Openness must likewise be taken
into account.

Sources and XML

• In comparison, sources and XML offer


ffer the advantage
adv that the content of the files can be revised at
any time or can be created from
m the ground
gro up.
• However, this approach requires more effort to implement because the structure of the
sources/XML has to be reproduced.

Benefit from the combination of both methods

• Libraries and types for standard blocks that are always the same.
• And sources/XML for blocks that vary in each project, such as calls of blocks or data blocks with
parameter sets.

SITRAIN TIA-AUTOEN
Training for Industry Page 26 Openness Introduction
Agenda

1 Review e agenda

2 Geração de Projeto

3 TIA Portal Openness

4 Openness e geração de software

5 Openness e configuração de hardware

5.1 Opções

5.2 Usando funções da API

5.3 AML para importação de hardware

5.4 Comparação

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 27 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 27 Openness Introduction
Openness e configuração de hardware
Possibilidades

No V14 SP1, o Openness oferece a possibilidade de criar a


configuração de hardware automaticamente.

As seguintes ações podem ser executadas com Openness:


• Insira um novo dispositivo do hardware catalog (exceção : HMI)
• Copie o dispositivo existente, também do “master copies”
• Inserir novos módulos em uma estação
• Copie/mova os módulos existentes, também do “master copies”
• Defina endereços de entrada/saída, incluindo “F-address”
mas de I/O e
• Defina a configuração de rede, incluindo sub-redes, sistemas
topologia, como definir endereços IP/DP

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 28 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 28 Openness Introduction
Openness e configuração de hardware
Usando funções API

Configuração de hardware com Openness

Exemplo para configuração

TAG
PLC
Live
S D R AS d
demo
SITRAIN © Siemens AG 2018
Ch1_LD2_HWCN_V15_1
WC 6ES7 214-1AG40-0XB0 fw 4.1 slot 1 DI-AUTOEN
Page 29 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 29 Openness Introduction
Openness e configuração de hardware
AML para importação de hardware

Como os dados das ferramentas de planejamento podem ser aplicados à configuração do PLC?

ECAD Formato de dados Configuração do PLC

Planejamento de HW
4 MT
Troca de dados1) via arquivo em Configuração do HW
Automation Markup Language
Planejamento de rede Configuração da rede

Nomes de IO I/O tags

• AutomationML é padrão
internacional e gratuito

CT
• Troca consistente de dados entre
vários programas

P8 V2.72) AS V15.1
• EPLAN P8 V2.7 + V
V15

1) Para PLC, I/O distribuído, componentes de rede, dispositivos


S
os GSD; 2) Market share GER: >60%, segundo lugar no mundo (link)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 30 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 30 Openness Introduction
Pausa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 31 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 31 Openness Introduction
Openness e configuração de hardware
AML para importação de hardware

Configuração de hardware com exportação/importação


de EPLAN e AML

Exemplo de
procedimento

T AG
PLC
Live d
SD
Rdemo
AS
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 32 CH1_LD3_EPLAN_V15_1 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 32 Openness Introduction
Exercício 1: Importar AML do ECAD no diretório TIA Portal

Entry ID: 109748224

TIA Portal V15.1


(TIA Openness V15.1)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 33 Openness Introduction

Tarefa Você recebeu um arquivo AML para importação no TIA Portal do seu engenheiro
elétrico. Faça o download do arquivo AML no Online Support (Entry-ID:
109748224). Se você não tiver acesso à Internet, poderá encontrar o arquivo
necessário em:
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Projektgenerator”

Importe a AML para o TIA Portal e veja o resultado.

Responda as seguintes questões:


Quais são as limitações atuais da importação de AML para o TIA Portal? (consulte
a documentação com Entry-ID 109748224)
48224)

Como o TIA Portal


ortal se comporta com produtos que não são da Siemens?

Você pode encontrar instruções passo a passo na página a seguir!

SITRAIN TIA-AUTOEN
Training for Industry Page 33 Openness Introduction
Procedimento 1. Abra o TIA Portal e crie um projeto.

2. Faça o download do arquivo AML da entrada 109748224 no Online Support, ou


use o arquivo armazenado em:
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Projektgenerator”

3. Execute a importação para o TIA Portal.

4. Verifique o resultado.

5. Responda às perguntas na página anterior.

SITRAIN TIA-AUTOEN
Training for Industry Page 34 Openness Introduction
Procedimento 1. Abra o TIA Portal e crie um projeto.

2. Faça o download do arquivo AML da entrada 109748224 no Online Support, ou


use o arquivo armazenado em:
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Projektgenerator”

3. Execute a importação para o TIA Portal.

4. Verifique o resultado.

5. Responda às perguntas na página anterior.

SITRAIN TIA-AUTOEN
Training for Industry Page 35 Openness Introduction
Procedimento 1. Abra o TIA Portal e crie um projeto.

2. Faça o download do arquivo AML da entrada 109748224 no Online Support, ou


use o arquivo armazenado em:
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Projektgenerator”

3. Execute a importação para o TIA Portal.

4. Verifique o resultado.

5. Responda às perguntas na página anterior.

SITRAIN TIA-AUTOEN
Training for Industry Page 36 Openness Introduction
Exercício 2: Troca de dados entre o TIA Selection Tool & e TIA Portal

TIA Portal V15.1


(TIA Openness V15.1)

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 37 Openness Introduction

Tarefa No TIA Selection Tool, crie uma configuração de hardware e exporte-a para um
arquivo AML. Importe esse arquivo no TIA Portal. Agora você pode mudar a
configuração de hardware, por exemplo adicionar um módulo.
Exporte a configuração de hardware do TIA Portal para importá-lo novamente no
TIA Selection Tool. Verifique o resultado.

Você pode encontrar instruções passo a passo na página a seguir!

SITRAIN TIA-AUTOEN
Training for Industry Page 37 Openness Introduction
Procedimento 1. Abra o TIA Selection Tool.
2. Crie um controlador como um novo dispositivo.

AG
aste um
3. Crie uma configuração básica. Arraste uma CPU 1513F-1 PN para o rack.

4. Exporte sua configuração criada.

SITRAIN TIA-AUTOEN
Training for Industry Page 38 Openness Introduction
Procedimento 1. Abra o TIA Selection Tool.
2. Crie um controlador como um novo dispositivo.

AG
aste um
3. Crie uma configuração básica. Arraste uma CPU 1513F-1 PN para o rack.

4. Exporte sua configuração criada.

SITRAIN TIA-AUTOEN
Training for Industry Page 39 Openness Introduction
Procedimento 5. Importe a configuração para o TIA Portal.

6. Faça alterações no TIA Portal, como inserir um módulo DI ou DQ na sua CPU.

7. Exporte a configuração de hardware do TIA Portal e importe para o TIA


Selection Tool.

SITRAIN TIA-AUTOEN
Training for Industry Page 40 Openness Introduction
Openness e configuração de hardware
Comparação

Funções API Importar AML

+ Pode ser adaptado às ferramentas do cliente + Nenhuma sobrecarga adicional

- Sobrecarga adicional para implementação


- Só pode ser usado se as ferramentas suportarem o
formato AML

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 41 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 41 Openness Introduction
Agenda

1 Review e agenda

2 Geração de Projeto

3 TIA Portal Openness

4 Openness e geração de software

5 Openness e configuração de hardware

6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 42 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 42 Openness Introduction
Conclusão
A solução certa para todos

Geradores de projetos em diferentes


Preparação do projeto Geração parcial Geração completa
variantes
Transição fluida entre as variantes
O cliente seleciona o escopo certo para ele

Métodos diferentes para geradores de projeto

Uso do TIA Portal Openness

Importação de AML Bibliotecas Fontes e XML

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 43 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 43 Openness Introduction
Checkpoint

Vamos pensar no seguinte…


x O que o Openness significa?

x Que possibilidades você vê em sua planta de preparação de projetos /


geração parcial / geração completa com Openness?

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 44 Openness Introduction

SITRAIN TIA-AUTOEN
Training for Industry Page 44 Openness Introduction
Openness - operação
S
SITRAIN © Siemens AG 2018 Course: DI-AUTOEN

Content Page
Training objectives................................................................................................................... 2
Agenda..................................................................................................................................... 4
Programming applications....................................................................................................... 6
Exercise 1: StartOpenness....................................................................................................... 20
Agenda..................................................................................................................................... 22
Writing scripts.......................................................................................................................... 23
Writing scripts.......................................................................................................................... 29
Agenda.....................................................................................................................................
........ 36
Exercise 2: OpennessScripter...................................................................................................
................. 37
Conclusion................................................................................................................................
.............. 42
Agenda......................................................................................................................................
................. 43
Concept..................................................................................................................................... 44
Agenda...................................................................................................................................... 45
Sequence.................................................................................................................................. 46
Agenda..................................................................................................................................... 47
Work involved up to the generation........................................................................................ 48
Agenda..................................................................................................................................... 50
Live Demo Project generator “DigiDemo”............................................................................... 55
Agenda..................................................................................................................................... 56
Conclusion................................................................................................................................ 59

SITRAIN TIA-AUTOEN
Training for Industry Page 1 Openness Operate
Objetivos

Ao final deste capítulo o aluno será ...

... Capaz de escrever um script simples

... Conhecerá como um gerador de projetos pode operar

... Compreenderá a mecânica geral do Openness API do TIA Portal

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 2 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 2 Openness Operate
Automated Digital Workflow

Block HMI Generation


Test Geração de telas
Teste automatizado HMI
de blocos

Padronização PLC
Generation
Criação de uma Geração do
padronização programa do PLC

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 3 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 3 Openness Operate
Agenda

1 Usando TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 4 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 4 Openness Operate
Agenda

1 Usando TIA Portal Openness

1.1 Exemplos de aplicação

1.2 Exemplo de “StartOpenness”

1.3 Escrevendo scripts

1.4 Hands on

1.5 Conclusão

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 5 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 5 Openness Operate
Exemplos de aplicação

Software requerido

• TIA Portal V13 SP1 ou acima


por exemplo STEP 7 Professional / WinCC
Professional
• TIA Portal Openness pacote adicional (gratuito1)
• Microsoft Visual Studio 2015 ou anterior (sujeito a
cobrança2)

Know-how

• Conhecimento básico de TIA Portal (nível baixo)


• Conhecimento de programção em .NET Framework ork
(nível alto)

ESD
1 Instalação conjunta
onjunta com STEP
S 7
2 Express edition
on (gratuito)
(gratu com funcionalidade limitada
SITRAIN © Siemens AG 2018
Community edition
dit (gratuito) com restrições relacionadas ao uso comercial DI-AUTOEN
Page 6 Openness Operate

Requisitos para usar TIA Portal Openness

• A TIA Portal based product V13 SP1 or higher, such as STEP 7 Professional or WinCC
Professional
• TIA Portal Openness add-on package of TIA Portal (free of charge1)

Requirements for programming Openness applications

• Software for high-level language development, e.g. Microsoft Visual Studio 2015 (subject
to charge for companies)

Know-how

• Advanced knowledge of Microsoft


crosoft Visual Studio and .NET development (4.6.1)
• User knowledge of the TIA Portal

SITRAIN TIA-AUTOEN
Training for Industry Page 6 Openness Operate
Exemplos de aplicação

Publicar API

Seu
Execução próprio
Importar/
Exportar
totalmente programa
XML
EXE
automática de
ações

Controle
simplificado do
operador com sua
própria interface de
e
usuário
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 7 Openness Operate

Programming applications

TIA Portal Openness supports a selection of TIA Portal functions for defined tasks. These can
be called outside of the TIA Portal via the public API. The engineering in the TIA Portal is
automated through external control of the TIA Portal by a custom application.

Examples of actions are


• Generate project data
• Modify projects and project data
• Delete project data
• Read in project data
• Make projects and project data available
able for other
ot applications

SITRAIN TIA-AUTOEN
Training for Industry Page 7 Openness Operate
Exemplos de aplicação

Comunicação de aplicativo

• Duas dll (dynamic program libraries)


• Siemens.Engineering.dll
• Siemens.Engineering.Hmi.dll
• Acesso ao processo do Windows
Siemens.Automation.Portal.exe

Partes acessíveis do TIA Portal

• Dados do projeto
• Dados PLC
• Dados HMI

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 8 Openness Operate

How does the application communication take place in detail?

Your own application links two dynamic program libraries


(Siemens.Engineering.dll, Siemens.Engineering.Hmi.dll). The Windows
process of the TIA Portal is accessed via these interfaces.

SITRAIN TIA-AUTOEN
Training for Industry Page 8 Openness Operate
Exemplos de aplicação

Razões para o TIA Portal Openness

• Aplicar especificações do planejamento


• Forneça dados do projeto externamente
• Executar operações em massa
• Garanta vantagens competitivas TIA Portal
• …

Sua propria
Variações de trabalho
aplicação

• Seu próprio aplicativo e TIA Portal no mesmo


computador

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 9 Openness Operate

Why should you use Openness?

Make use of specifications from preparation of the automation engineering


• Import externally generated data
• Generate projects via the remote control of the TIA Portal

Provide project data of the TIA Portal for external applications


• Export project data

Perform bulk operations


• Test routines and bulk data processing can take place in parallel with the ongoing
configuration.

Ensure competitive advantages through


throug efficient engineering
• Existing engineering data does not have to be configured in the TIA Portal
• Automated engineering processes replace manual engineering
• Less engineering effort strengthens the competitive position of the product offer

Two work variations are possible with TIA Portal Openness

Application and TIA Portal are on the same computer


• The TIA Portal and the project are opened, modified and closed in the application via the
public API.
Application and TIA Portal are on two different computers
• See next page

SITRAIN TIA-AUTOEN
Training for Industry Page 9 Openness Operate
Exemplos de aplicação

Razões para o TIA Portal Openness


TIA Portal
• Aplicar especificações planejadas
• Exportar dados do projeto
• Executar operações em massa Própria aplicação 1
• Garantir vantagens competitivas
• …

Variações de trabalho
Excel
• Sua própria aplicação e TIA Portal no mesmo
SAP
computador
• Duas aplicações próprias e o TIA Portal em Própria aplicação 2
computadores separados

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 10 Openness Operate

Application and TIA Portal are on different computers:

Application computer – Project computer

• Data exchange takes place using a defined format.


• Application 1 exports and imports files via the public API of the TIA Portal.
• Application 2 supplies the data for Application 1.

For example, an employee has assembled the configuration in Application 2 for the DigiDemo
machine. A developer has used the configuration in Application
pplica 1 in order to generate the TIA
Portal project.

SITRAIN TIA-AUTOEN
Training for Industry Page 10 Openness Operate
Exemplos de aplicação

Trabalhando com XML e sources External source

Openness oferece funções para trabalhar com


sources no formato ASCII, bem como para exportar e
importar blocos em XML.

Sources XML
STL X X
FBD -- X XML file

LAD -- X
GRAPH -- X
SCL X X
DB X X
UDT X X

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 11 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 11 Openness Operate
Exemplos de aplicação

Manipulação de XML e sources Fonte externa

• Para avaliação de sources, um analisador separado L #Input_1;


deve ser criado para extrair informações.
As fontes contêm apenas dados.
Arquivo XML

• As funções .NET existem para XML para acessar <StlStatement>


elementos e propriedades efetivamente. <StlToken Text="L">
XML consiste em markup1 e dados. </StlToken>
<Access Scope="LocalVariable" Type="Int">
<Symbol>
<Component
mpon Name="Input_1" />
<Address
<Addres Area="LocalC" BitOffset="0"
Informative="true"
I />
</Symbol>
</Access>
</StlStatement>

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 12 1 Markups são marcações e definem o significado dos dados Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 12 Openness Operate
Exemplos de aplicação

Etapas para um aplicativo

• Pensar na sequência operacional


• Vincular bibliotecas de programas
• Acessar à interface do programa
• Aplicar teste

Exemplo: Estatísticas de Blocos

• Abrir o TIA Portal e o projeto


• Selecionar o PLC
• Avaliar cada bloco individualmente
• Fechar projeto
• Gererar estatísticas
• Exibir estatísticas
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 13 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 13 Openness Operate
Exemplos de aplicação

Bibliotecas de programas

• Siemens.Engineering.dll
Siemens.Engineering.Hmi.dll
• Não vincule localmente
• Resolver durante Runtime1

SITRAIN © Siemens AG 2018


1 Veja exemplos de aplicação : DI-AUTOEN
Page 14 1 https://support.industry.siemens.com/cs/ww/en/view/108716692 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 14 Openness Operate
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 15 Openness Operate
14.08.2020
Page 15 DF FA S SUP E&C

SITRAIN TIA-AUTOEN
Training for Industry Page 15 Openness Operate
Exemplos de aplicação

Acessos à interface

• Usar modelo de objeto1


• Divida em funções

SITRAIN © Siemens AG 2018


1 Consulte o manual do sistema "Automating Projects with Scripts": DI-AUTOEN
Page 16 1 https://support.industry.siemens.com/cs/ww/en/view/109477163 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 16 Openness Operate
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 17 Openness Operate
14.08.2020
Page 17 DF FA S SUP E&C

Separation of hardware and software

Interface for software container


• PLC (PlcSoftware)
• HMI (HmiTarget)

SITRAIN TIA-AUTOEN
Training for Industry Page 17 Openness Operate
Pausa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 18 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 18 Openness Operate
Live demo
Exemplo de programação

Será criado seu próprio aplicativo que gera e exibe


estatísticas de bloco para um projeto do TIA Portal.

Um novo aplicativo será desenvolvido com Microsoft Visual


Studio. Os seguintes estão disponíveis :

• TIA Portal

• TIA Portal Openness

• TIA Portal project

• Microsoft Visual Studio

T
P LC

Ch2_LD1_CodeApp_V15_1
Live
S D RA demo
d S
5 -> Rodar Statistics.csproj -> >Start
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 19
Mostrar >arvore da esquerda, Statistics – Siemens…Services -> Analizer … ou pdf Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 19 Openness Operate
Agenda

1 Usando TIA Portal Openness

1.1 Aplicação de programação

1.2 Amostra de código “StartOpenness”

1.3 Escrevendo scripts

1.4 Hands on

1.5 Conclusão

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 20 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 20 Openness Operate
Exercício 3: StartOpenness – explorando aplicação exemplo

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 21 Dia2 Ex3 Openness Operate

Tarefa Para simplificar o início com Openness, no SIOS, você pode encontrar a entrada
“TIA Portal Openness: Introduction and Demo application“ (Entry-ID 108716692).
O programa que pode ser encontrado lá também e está localizado em
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Openness\StartOpenness“. Agora
você deve usar esse programa. Teste as diferentes funções que a ferramenta
fornece e verifique o respectivo código.
Responda também às seguintes perguntas.
Dê uma olhada na função “StartTIA“. Lá, um novo TIA Portal é iniciado com modos
diferentes. Qual poderia ser a diferença entre os dois? Qual aplicativo poderia
existir para a primeira opção (WihoutUserInterface)?
serIn

Abra a função “btn_AddHW_Click“. Que distinções são feitas aqui? Por que o
programa passa por todos os dispositivos do projeto?

Sugestão A função do programa está localizada no arquivo “Form1.cs“. Para visualizar o


código, selecione o arquivo no “Project Explorer” e escolha “View Code“no menu
de contexto do arquivo.

Você pode encontrar uma descrição detalhada na próxima página!

SITRAIN TIA-AUTOEN
Training for Industry Page 21 Openness Operate
Procedimento 1. Abra a solução do Visual Studio “StartOpenness“. Você pode encontrar a
solução em
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Openness\StartOpenness“

2. Compile o código do programa para obter um arquivo executável. Você pode


fazer isso por exemplo pressionando “F5“.

3. Experimente as diferentes funções que a ferramenta “Openness Start“


fornece(Opening TIA Portal, Open Project, …).

4. No explorador de projeto, selecione o arquivo “Form1.cs“. Abra o menu de


contexto e selecione “View code“. Agora, você pode ver o código do programa
que fornece as funcionalidades por trás das
da diferentes funções.

Sugestão Se você deseja saber qual parte do programa


p pertence a qual botão, também é
possível abrir o arquivo
uivo "Form1.cs"
"Form através de um clique duplo no explorador de
projetos. Isso abrirá a visualização
vi de design do arquivo. Lá, você pode ver todos
os elementos daa interface. Execute um clique duplo em um botão para ver qual
local do programa pertence ao controle específico.

5. Agora você pode responder à primeira pergunta na página antes.

6. Abra a função que pertence ao botão legendado com “Add device“. Lá, você
pode encontrar várias condições se, onde é feita uma distinção. Para responder à
segunda pergunta da página anterior, analise este trecho de código.
7. Nesta função, todos os elementos localizados no seu projeto são verificados.
Você pode descobrir por que isso é feito?

SITRAIN TIA-AUTOEN
Training for Industry Page 22 Openness Operate
Procedimento 1. Abra a solução do Visual Studio “StartOpenness“. Você pode encontrar a
solução em
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Openness\StartOpenness“

2. Compile o código do programa para obter um arquivo executável. Você pode


fazer isso por exemplo pressionando “F5“.

3. Experimente as diferentes funções que a ferramenta “Openness Start“


fornece(Opening TIA Portal, Open Project, …).

4. No explorador de projeto, selecione o arquivo “Form1.cs“. Abra o menu de


contexto e selecione “View code“. Agora, você pode ver o código do programa
que fornece as funcionalidades por trás das
da diferentes funções.

Sugestão Se você deseja saber qual parte do programa


p pertence a qual botão, também é
possível abrir o arquivo
uivo "Form1.cs"
"Form através de um clique duplo no explorador de
projetos. Isso abrirá a visualização
vi de design do arquivo. Lá, você pode ver todos
os elementos daa interface. Execute um clique duplo em um botão para ver qual
local do programa pertence ao controle específico.

5. Agora você pode responder à primeira pergunta na página antes.

6. Abra a função que pertence ao botão legendado com “Add device“. Lá, você
pode encontrar várias condições se, onde é feita uma distinção. Para responder à
segunda pergunta da página anterior, analise este trecho de código.
7. Nesta função, todos os elementos localizados no seu projeto são verificados.
Você pode descobrir por que isso é feito?

SITRAIN TIA-AUTOEN
Training for Industry Page 23 Openness Operate
Procedimento 1. Abra a solução do Visual Studio “StartOpenness“. Você pode encontrar a
solução em
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Openness\StartOpenness“

2. Compile o código do programa para obter um arquivo executável. Você pode


fazer isso por exemplo pressionando “F5“.

3. Experimente as diferentes funções que a ferramenta “Openness Start“


fornece(Opening TIA Portal, Open Project, …).

4. No explorador de projeto, selecione o arquivo “Form1.cs“. Abra o menu de


contexto e selecione “View code“. Agora, você pode ver o código do programa
que fornece as funcionalidades por trás das
da diferentes funções.

Sugestão Se você deseja saber qual parte do programa


p pertence a qual botão, também é
possível abrir o arquivo
uivo "Form1.cs"
"Form através de um clique duplo no explorador de
projetos. Isso abrirá a visualização
vi de design do arquivo. Lá, você pode ver todos
os elementos daa interface. Execute um clique duplo em um botão para ver qual
local do programa pertence ao controle específico.

5. Agora você pode responder à primeira pergunta na página antes.

6. Abra a função que pertence ao botão legendado com “Add device“. Lá, você
pode encontrar várias condições se, onde é feita uma distinção. Para responder à
segunda pergunta da página anterior, analise este trecho de código.
7. Nesta função, todos os elementos localizados no seu projeto são verificados.
Você pode descobrir por que isso é feito?

SITRAIN TIA-AUTOEN
Training for Industry Page 24 Openness Operate
Procedimento 1. Abra a solução do Visual Studio “StartOpenness“. Você pode encontrar a
solução em
“C:\02_Archives\TIA-Portal\DI-AUTOEN\02_Openness\StartOpenness“

2. Compile o código do programa para obter um arquivo executável. Você pode


fazer isso por exemplo pressionando “F5“.

3. Experimente as diferentes funções que a ferramenta “Openness Start“


fornece(Opening TIA Portal, Open Project, …).

4. No explorador de projeto, selecione o arquivo “Form1.cs“. Abra o menu de


contexto e selecione “View code“. Agora, você pode ver o código do programa
que fornece as funcionalidades por trás das
da diferentes funções.

Sugestão Se você deseja saber qual parte do programa


p pertence a qual botão, também é
possível abrir o arquivo
uivo "Form1.cs"
"Form através de um clique duplo no explorador de
projetos. Isso abrirá a visualização
vi de design do arquivo. Lá, você pode ver todos
os elementos daa interface. Execute um clique duplo em um botão para ver qual
local do programa pertence ao controle específico.

5. Agora você pode responder à primeira pergunta na página antes.

6. Abra a função que pertence ao botão legendado com “Add device“. Lá, você
pode encontrar várias condições se, onde é feita uma distinção. Para responder à
segunda pergunta da página anterior, analise este trecho de código.
7. Nesta função, todos os elementos localizados no seu projeto são verificados.
Você pode descobrir por que isso é feito?

SITRAIN TIA-AUTOEN
Training for Industry Page 25 Openness Operate
Agenda

1 Usando TIA Portal Openness

1.1 Exemplos de aplicação

1.2 Amostra de Código “StartOpenness”

1.3 Escrevendo scripts

1.4 Hands on

1.5 Conclusão

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 26 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 26 Openness Operate
Escrevendo scripts

Problema Ideia Solução

• Obstáculo inicial alto • Tornar a interface mais • Exemplo de aplicação :


• Usar Openness = Desenvolver facilmente acessível a um grande OpennessScripter*
seu próprio aplicativo em grupo de pessoas • Metalinguagem simples com
linguagem de alto nível • Crie nível entre a linguagem software fácil de usar
• Usuários especializados com humana e de alto nível 1) • Documentação com exemplos
foco em programação de CLP

1) https://support.industry.siemens.com/cs/document/109742322
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 27 Openness Operate

Problem

"TIA Portal Openness" has been available on the market since September
2015. In order to work with the TIA Portal via this interface, the user must
develop his own software in a high-level language such as C# and with the
.NET Framework. This represents a hurdle for specialized engineers, whose
expertise focuses primarily on programming industrial controllers.

Idea

To make this interface and itss capabilities


capabilit more easily accessible to the
specialized engineers and a large group of persons, a level between human
and high-level language
anguage was
w created with an application example.

Solution

Thanks to a simple metalanguage, the user can control the TIA Portal and
automate tasks using simple commands. The customer can write and
execute its scripts in an easy-to-use software with a user interface.
Documentation with examples rounds out the application example. This
lowers the level of expertise needed to get started in the engineering
process.

SITRAIN TIA-AUTOEN
Training for Industry Page 27 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C#


vs.
Script em metalinguagem

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 28 Openness Operate

A figura superior no lado direito mostra um exemplo de um aplicativo simples escrito pelo usuário em
C #, que apenas inicia a operação de compilação em um projeto.
Comandos de script simples orientados para o idioma inglês agora devem substituir blocos de código
inteiro.

SITRAIN TIA-AUTOEN
Training for Industry Page 28 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C#


vs.
Script em metalinguagem

connect Portal "D:\Demo\Project\Project.ap15"

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 29 Openness Operate

Um comando da linguagem de script é composto por uma ação (por exemplo, "connect") e
um elemento (por exemplo, "Portal").
Opcionalmente, os comandos também possuem parâmetros (por exemplo, o arquivo do
projeto)

Para se conectar a um Portal aberto, escrevemos: “connect Portal”

Esse tipo de comando é fácil de entender e especialmente fácil de ler.

scrit linha a linha.


Por conseguinte, os pedidos a serem executados são escritos

ra o modelo
Os comandos de script são orientados para mode de objeto Openness.

SITRAIN TIA-AUTOEN
Training for Industry Page 29 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C#


vs.
Script em metalinguagem

connect Portal "D:\Demo\Project\Project.ap15"


select PLC "PLC_1"

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 30 Openness Operate

O próximo passo é selecionar um controlador lógico programável que deve ser compilado.

No TIA Portal, o PLC seria clicado na árvore do projeto.

SITRAIN TIA-AUTOEN
Training for Industry Page 30 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C#


vs.
Script em metalinguagem

connect Portal "D:\Demo\Project\Project.ap15"


select PLC "PLC_1"
compile PLC SoftAndHardware

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 31 Openness Operate

A operação de compilação é então iniciada com a opções switches

O comando de script é, portanto: “compile PLC” com parâmetro “SoftAndHardware”

SITRAIN TIA-AUTOEN
Training for Industry Page 31 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C#


vs.
Script em metalinguagem

connect Portal "D:\Demo\Project\Project.ap15"


select PLC "PLC_1"
compile PLC SoftAndHardware
disconnect Portal

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 32 Openness Operate

A conexão com o TIA Portal é desconectada no final. Isso é feito com “disconnect Portal”

SITRAIN TIA-AUTOEN
Training for Industry Page 32 Openness Operate
Escrevendo scripts

Exemplo

Seu próprio aplicativo em C #


vs.
Script em metalinguagem

connect Portal "D:\Demo\Project\Project.ap15"


select PLC "PLC_1"
compile PLC SoftAndHardware
disconnect Portal

Economias de cerca de 95% do código

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 33 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 33 Openness Operate
Escrevendo scripts

Etapas para um script

• Pense na sequência operacional


• Escrever script
• Teste o script

Exemplo: Gerar Fontes

• Abra o TIA Portal


• Abra o projeto
• Selecione o PLC
• Gere uma fonte de cada bloco
individual
• Fechar projeto
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 34 Openness Operate

Steps for a script that generates sources from all program blocks

• Think about operational sequence


• Write script
• Test script

Let's do the first step to define the operational sequence:

• Open TIA Portal


• Open project
• Select PLC
• Generate a source from each individuall block
• Close project

SITRAIN TIA-AUTOEN
Training for Industry Page 34 Openness Operate
Hands on

User interface

• Página inicial
• Área de trabalho

Comandos de script

• Ação + elemento ("open Project")


• Formulário de comando
• Modelo de objeto de abertura
• Agrupamento hierárquico

Documentos

• Introdução
• Documentação
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 35 Openness Operate

Using OpennessScripter

When the OpennessScripter is started, a start page opens initially. Recently


used scripts are displayed on the left. Scripts can also be fixed there with a
pin. On the right are a few script templates with which a user can build his
script. An empty script template is also available.

The work view is divided into three parts: an editor that takes up most of
the view, a script list and an output area.

After a new script is created or opened or a template is selected, the script


editor starts in the same
me window of the OpennessScripter. Most of the area
is taken up by a text box where
w the commands of the script are written line-
by-line. Theree is a sidebar
si for recently used files on the left. An output bar
for is at the bottom. The sidebars as well as the output bar can be resized,
collapsed and hidden.

SITRAIN TIA-AUTOEN
Training for Industry Page 35 Openness Operate
Comandos de script

Um comando da linguagem de script é composto por uma ação (por exemplo,


“open") e um elemento (por exemplo "project"). Opcionalmente, os comandos
também possuem parâmetros (por exemplo, o projeto a ser aberto)
"D:\Demo\Projekt\Projekt.ap15_1"). Isso produz o seguinte comando: open
project "D:\Demo\Projekt\Projekt.ap15_1“.

Este formulário de comando é fácil de entender e especialmente fácil de ler pelo


usuário. Assim, os pedidos a serem executados são escritos linha a linha.

Os comandos de script são orientados no modelo de objeto Openness. Os


comandos são agrupados hierarquicamente
nt em Output, TIA Portal, Project, PLC e
HMI, com subelementos associados.
os.

O conjunto de comandos
ndos é explicado
expli na documentação para o OpennessScripter.
Um documento o adicional fornece uma introdução ao OpennessScripter.

SITRAIN TIA-AUTOEN
Training for Industry Page 36 Openness Operate
Comandos de script

Um comando da linguagem de script é composto por uma ação (por exemplo,


“open") e um elemento (por exemplo "project"). Opcionalmente, os comandos
também possuem parâmetros (por exemplo, o projeto a ser aberto)
"D:\Demo\Projekt\Projekt.ap15_1"). Isso produz o seguinte comando: open
project "D:\Demo\Projekt\Projekt.ap15_1“.

Este formulário de comando é fácil de entender e especialmente fácil de ler pelo


usuário. Assim, os pedidos a serem executados são escritos linha a linha.

Os comandos de script são orientados no modelo de objeto Openness. Os


comandos são agrupados hierarquicamente
nt em Output, TIA Portal, Project, PLC e
HMI, com subelementos associados.
os.

O conjunto de comandos
ndos é explicado
expli na documentação para o OpennessScripter.
Um documento o adicional fornece uma introdução ao OpennessScripter.

SITRAIN TIA-AUTOEN
Training for Industry Page 37 Openness Operate
Live Demo
Escrevendo scripts

Será criado um script que gere um source de todos os


blocos em um projeto do TIA Portal.

O script será escrito com o OpennessScripter. Os seguintes


recursos estão disponíveis:

• TIA Portal

• TIA Portal Openness

• TIA Portal project

• OpennessScripter

T
P LC
Live
S D RA demo
d
Ch2_LD2_WriteScript_V15_1
Scri
S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 38 Openness Operate

Tarefa

Crie um script que gere uma fonte externa de cada bloco no projeto do TIA Portal.

Procedimento

Escreva um novo script com o OpennessScripter

Solução de exemplo

open Portal
open Project "D:\Demo\Projekt\Projekt.ap15_1"
jekt.ap15_
select Plc "PLC_1"
select ProgramBlocks
sourcegen ProgramBlocks "D:\Demo\Sources\"
close Project
disconnect Portal

SITRAIN TIA-AUTOEN
Training for Industry Page 38 Openness Operate
Live Demo
Escrevendo scripts

Será criado um script que gere um source de todos os


blocos em um projeto do TIA Portal.

Solução de exemplo

open Portal
open Project "D:\Demo\Projekt\Projekt.ap15_1"
select Plc "PLC_1"
select ProgramBlocks
sourcegen ProgramBlocks "D:\Demo\Sources\"
close Project
disconnect Portal

T
P LC
Live
S D RA demo
d
Ch2_LD2_WriteScript_V15_1
Scri
S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 39 Openness Operate

Tarefa

Crie um script que gere uma fonte externa de cada bloco no projeto do TIA Portal.

Procedimento

Escreva um novo script com o OpennessScripter

Solução de exemplo

open Portal
open Project "D:\Demo\Projekt\Projekt.ap15_1"
jekt.ap15_
select Plc "PLC_1"
select ProgramBlocks
sourcegen ProgramBlocks "D:\Demo\Sources\"
close Project
disconnect Portal

SITRAIN TIA-AUTOEN
Training for Industry Page 39 Openness Operate
Hands on

Três regras simples

Cada comando de script possui sua própria linha.

open Portal

Um comentário começa com um sinal de hash (#) e pode estar no início ou no final da linha.

open Portal # opens the TIA Portal

T
LC
O uso de letras maiúsculas e minúsculas ou uma identificação
entificação de comando é irrelevante.

oPeN pOrTaL

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 40 Openness Operate

There are three simple rules for the script commands

Each command has its own line.

A comment starts with a hash sign (#) and can be at the beginning or end of the line.

Use of upper and lower case letters or indentation of commands is irrelevant.

SITRAIN TIA-AUTOEN
Training for Industry Page 40 Openness Operate
Hands on

Pontos de interrupção Batch file


set exe="C:\Program Files
• Marcações em linhas
(x86)\Siemens\Automation\OpennessScripter\
• Parando a execução do script OpennessScripter.exe"
• Continuação manual
set script="D:\Demo\Scripts\Skript.opns"

set log="D:\Demo\Logs\Protokoll.txt"
Processamento em lotes (batelada)
echo "Working..."
• Automação forte
rta Openness" /wait %exe%
start "TIA Portal
• Modo de console
G
TA
/silent /file:%s
/file:%script% /log:%log%
• Exibição de progresso

SP
echo "D
"Done!"

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 41 Openness Operate

Breakpoints

Breakpoints are markings within the script. They cause the script to stop
running at the marked line. The script does not resume running until the
user manually initiates its continuation. Set break points are visualized with
a dark red filled circle to the left of the line number.

Breakpoints in empty lines and in comment lines have no effect.

Batch processing

To give the user even more automation


auto possibilities, the OpennessScripter
also has a console le mode. The
T user transfers additional command
arguments, suchuch as the script file to be executed and a memory location for
the log file, to the OpennessScripter in the command line.

A Windows batch files can have the following appearance (see slide above)

When Windows batch files are executed, the OpennessScripter is started


minimized in the Windows taskbar and ended automatically when the
script execution is finished. By clicking the icon in the taskbar, the user
interface opens, where the progress can be observed and the script
execution can be stopped early.

SITRAIN TIA-AUTOEN
Training for Industry Page 41 Openness Operate
Agenda

1 Usando o TIA Portal Openness

1.1 Exemplos de aplicação

1.2 Amostra de Código “StartOpenness”

1.3 Escrevendo scripts

1.4 Hands on

1.5 Conclusão

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 42 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 42 Openness Operate
Procedimento 1. Inicie o TIA Portal e abra o projeto DigiTest.
2. Certifique-se de que o bloco "CConv_Unit1Zone1Drv90" não está presente no
PLC.
3. Inicie o OpennessScripter e crie seu primeiro script.
4. Continue passo a passo para escrever o script:
- Inicie o TIA Portal
- Abra o projeto apropriado
- Selecione o PLC
- Importar a fonte externa
- Selecione a fonte importada
- Iniciar a geração de blocos
- Selecione o bloco gerado
- Compile o bloco
- Compile todo o software
softwar do PLC
- Salvee o projeto
- Encerre
erre a conexão com o projeto
5. Agora, comece a executar seu script.
6. Veja o bloco no projeto DigiTest para ver como ele foi gerado. O status da
operação de compilação também está documentado na Inspetor window.

Você pode encontrar uma solução de exemplo para o script correspondente na próxima página!

SITRAIN TIA-AUTOEN
Training for Industry Page 43 Openness Operate
Exercício 4: OpennessScripter

Origem SCL na estrutura de O bloco é gerado a partir da fonte


pastas SCL e, em seguida, tudo é
compilado

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 44 Openness Operate

Tarefa Os desenvolvedores da sua empresa criaram um novo bloco no SCL. Esse bloco é
gerenciado em seu próprio sistema de versão para fontes (banco de dados) e
agora será integrado ao projeto do TIA Portal.
Adicione a fonte externa do SCL "CConv_Unit1Zone1Drv90" ao projeto existente
do TIA Portal "DigiTest" e gere um bloco de programa a partir dele. O bloco e o
projeto serão compilados posteriormente.
Você pode encontrar o projeto e a fonte SCL em:
“C:\01 Archive\TIA-AUTOEN\02_OpennessScripter”

Usando o OpennessScripter, escreva um apropriado


p que execute a tarefa descrita
acima.

Nota Você pode encontrar a documentação


ocument para o OpennessScripter no menu Help.
Você pode encontrar
ntrar ajuda para os comandos de script apropriados nas seções
3.8.2 e 3.8.3.

Assim que você tiver gerado o bloco a partir da origem do SCL, exclua-o do projeto
para uma nova geração. Caso contrário, o nome não é exclusivo no projeto.

You can find step-by-step instructions on the following page!

SITRAIN TIA-AUTOEN
Training for Industry Page 44 Openness Operate
Procedimento 1. Inicie o TIA Portal e abra o projeto DigiTest.
2. Certifique-se de que o bloco "CConv_Unit1Zone1Drv90" não está presente no
PLC.
3. Inicie o OpennessScripter e crie seu primeiro script.
4. Continue passo a passo para escrever o script:
- Inicie o TIA Portal
- Abra o projeto apropriado
- Selecione o PLC
- Importar a fonte externa
- Selecione a fonte importada
- Iniciar a geração de blocos
- Selecione o bloco gerado
- Compile o bloco
- Compile todo o software
softwar do PLC
- Salvee o projeto
- Encerre
erre a conexão com o projeto
5. Agora, comece a executar seu script.
6. Veja o bloco no projeto DigiTest para ver como ele foi gerado. O status da
operação de compilação também está documentado na Inspetor window.

Você pode encontrar uma solução de exemplo para o script correspondente na próxima página!

SITRAIN TIA-AUTOEN
Training for Industry Page 45 Openness Operate
Solução de exemplo

Open Portal
Open Project"C:\01_Archive\TIA_Portal\DI-AUTOEN\02_OpennessScripter\DigiTest\DigiTest.ap15_1"
select Plc "PLC_1516F"
import ExternalSources "C:\01_Archive\TIA_Portal\DI-
AUTOEN\02_OpennessScripter\CConv_Unit1Zone1Drv90.scl"
select ExternalSources "CConv_Unit1Zone1Drv90.scl"
blockgen ExternalSources
select ProgramBlocks "CConv_Unit1Zone1Drv90"
compile ProgramBlocks # Compiles only the created block
compile Plc Software # The calls of the block will then function again
save Project
disconnect Portal

SITRAIN TIA-AUTOEN
Training for Industry Page 46 Openness Operate
Procedimento 1. Inicie o TIA Portal e abra o projeto DigiTest.
2. Certifique-se de que o bloco "CConv_Unit1Zone1Drv90" não está presente no
PLC.
3. Inicie o OpennessScripter e crie seu primeiro script.
4. Continue passo a passo para escrever o script:
- Inicie o TIA Portal
- Abra o projeto apropriado
- Selecione o PLC
- Importar a fonte externa
- Selecione a fonte importada
- Iniciar a geração de blocos
- Selecione o bloco gerado
- Compile o bloco
- Compile todo o software
softwar do PLC
- Salvee o projeto
- Encerre
erre a conexão com o projeto
5. Agora, comece a executar seu script.
6. Veja o bloco no projeto DigiTest para ver como ele foi gerado. O status da
operação de compilação também está documentado na Inspetor window.

Você pode encontrar uma solução de exemplo para o script correspondente na próxima página!

SITRAIN TIA-AUTOEN
Training for Industry Page 47 Openness Operate
Solução de exemplo

Open Portal
Open Project"C:\01_Archive\TIA_Portal\DI-AUTOEN\02_OpennessScripter\DigiTest\DigiTest.ap15_1"
select Plc "PLC_1516F"
import ExternalSources "C:\01_Archive\TIA_Portal\DI-
AUTOEN\02_OpennessScripter\CConv_Unit1Zone1Drv90.scl"
select ExternalSources "CConv_Unit1Zone1Drv90.scl"
blockgen ExternalSources
select ProgramBlocks "CConv_Unit1Zone1Drv90"
compile ProgramBlocks # Compiles only the created block
compile Plc Software # The calls of the block will then function again
save Project
disconnect Portal

SITRAIN TIA-AUTOEN
Training for Industry Page 48 Openness Operate
Agenda

1 Usando o TIA Portal Openness

1.1 Exemplos de aplicação

1.2 Amostra de Código “StartOpenness“

1.3 Escrevendo scripts

1.4 Hands on

1.5 Conclusão

2 Usando "DigiDemo" gerador de projeto

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 49 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 49 Openness Operate
A solução certa para todos

Linguagem de alto nível OpennessScripter

• Flexibilidade • Scripts pequenos


• Funcionalidade total • Tarefas simples
• Aplicações abrangentes e complexas • Funcionalidades básicas
• Treinamento mínimo necessário

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 50 Openness Operate

The right solution for everyone

The full functionality of Openness can be used very flexibly by employing a


high-level language. Very extensive and complex applications can be
programmed.

A script created using the OpennessScripter lends itself to simple and


recurring tasks. The OpennessScripter provides the basic functionality of
Openness without a high-level language tool. The writing of pages of
source code is eliminated. The amount
unt of
o training needed is much less, and
only basic knowledge is required.
uired.

SITRAIN TIA-AUTOEN
Training for Industry Page 50 Openness Operate
Conclusão

Qualquer um pode usar o Openness

Os engenheiros são apresentados à interface com o


exemplo de aplicativo "OpennessScripter".
No entanto, é necessária uma linguagem de alto Próprio
nível para aplicativos mais complexos. script

Comparação
• Live demo: Levantar estatísticas dos blocos por Próprio Interface Openness
meio do próprio aplicativo do usuário em aplicativo Openness Scripter
linguagem de alto nível – não é possível com
OpennessScripter
TIA Portal Projeto para
• Hands on: Gerar bloco a partir de um source Process a máquina
usando o OpennessScripter – tarefa simples
ples para
a qual pode não valer a pena criar seu próprio
aplicativo DI-AUTOEN
SITRAIN © Siemens AG 2018
Page 51 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 51 Openness Operate
Agenda

1 Usando o TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

2.1 Conceito

2.2 Sequência

2.3 Trabalho envolvido até a geração

2.5 Hands on

2.6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 52 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 52 Openness Operate
Conceito

Problema Ideia Solução

• Vários projetos antigos • Padronização da arquitetura do • Exemplo de aplicação: Gerador


• Combinação manual através de programa PLC de projeto
cópia • Importação de dados (por • TIA Portal libraries
• Adaptação manual exemplo. ECAD; Configuração • TIA Portal Openness
• Trabalho árduo de hardware)
• Criação automática do programa
PLC

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 53 Openness Operate

How did you create projects before Openess was available? How can you handle it now by
using Openess on the DigiDemo machine?

Using the project generator

The objective is to have the PLC program generated.

Currently, the challenge is to create a new combined project by copying from multiple old
projects. This manual adaptation is prone to errors and is laborious.

The idea is to create the PLC program automatically


cally using a project generator. The basis for a
generator is the standardization of the PLC
LC program architecture.

The PLC program for a TIA Portall proje


project is produced from ECAD and TIA Portal library with a
generator using Openness.

SITRAIN TIA-AUTOEN
Training for Industry Page 53 Openness Operate
Agenda

1 Usando o TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

2.1 Conceito

2.2 Sequência

2.3 Trabalho envolvido até a geração

2.5 Hands on

2.6 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 54 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 54 Openness Operate
Sequência

Transfira a configuração Crie os blocos de módulos do Crie e adapte as chamadas do


desejada do programa do PLC programa a partir de um banco módulo de programa e as
para o gerador de dados no TIA Portal conexões no TIA Portal

Configuração usando uma planilha Biblioteca do TIA Portal como TIA Portal Openness com
do Excel ou interface do usuário ou banco de dados, incluindo importação e exportação XML
com base na configuração de dependências
hardware

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 55 Openness Operate

Sequence

• The desired configuration of the PLC program is transferred to a generator


• The configuration is performed, for example, using a user interface, an Excel spreadsheet
or a hardware configuration.

• The blocks of the program modules are generated from a database in the TIA Portal
project.
• The advantage of using a library as a database is that dependencies are retained and
automatically copied.
• The library contains, for example, standard blocks fo
for conveyor belt, transport logic,
sensor, drive logic and motor.

• The program module calls are created


crea with TIA Portal Openness using an XML import and
adapted as necessary using an XML export and XML import.

SITRAIN TIA-AUTOEN
Training for Industry Page 55 Openness Operate
Agenda

1 Usando o TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

2.1 Conceito

2.2 Sequência

2.3 Trabalho envolvido até a geração

2.4 Hands on

2.5 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 56 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 56 Openness Operate
Trabalho envolvido até a geração

Crie o projeto do TIA Portal de maneira padronizada usando STEP 7


1. Cerca de 4 semanas de esforço adicional

Crie um gerador de projetos usando o TIA Portal Openness com Visual Studio
2. Aproximadamente 3 semanas de trabalho, dependendo do conhecimento e da complexidade

Definir métodos de configuração e interfaces para o gerador


3. Aproximadamente 1 semana de trabalho

Resultado: biblioteca padronizada, projeto finalizado


ado bem cocomo gerador
Vantagens: Menos erros, menor tempo de geração,
ção, projeto de acompanhamento pode ser criado em
= cerca de meio dia

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 57 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 57 Openness Operate
Trabalho envolvido até a geração

Primeira configuração Cada configuração repetida de uma variante de


projeto

2 semanas
2 weeks
Ontem 8 semanas 2 weeks
2 weeks
Manualmente - 75% 2 weeks
Mais tempo necessário na primeira
vez 4 semanas Menos erros
Benefício do cliente: Menos Nenhum “trabalho árduo"
esforço para a primeira criação, 4 semanas Quick payoff
graças aos exemplos de aplicação
no SIOS ½½daydia
½ day
Hoje com o 8 semanas
as ½ day

TIA Portal Openness


A - 99%
½ day

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 58
Padronização Gerador de projeto Criação de programa Openness Operate

This effort is incurred because we want full generation.

While the first configuration requires more time, advantages arise for each repeated
configuration of a project variant:

• Reduced errors
• No laborious work
• Quick payoff through time savings

Customers have less work with the first configuration because


beca they are supported by
application examples in SIOS.

SITRAIN TIA-AUTOEN
Training for Industry Page 58 Openness Operate
Agenda

1 Usando o TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

2.1 Conceito

2.2 Sequência

2.3 Trabalho envolvido até a geração

2.4 Hands on

2.5 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 59 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 59 Openness Operate
Hands on

"DigiDemo" gerador de projeto Biblioteca do TIA Portal


• Conveyor belt
Para a máquina DigiDemo • …
• Standard: nosso “conceito SUP"
• Database: SQL database, global TIA Portal
TIA Portal project
biblioteca 1 e arquivos XML 2
1 Call OB
Conveyor belt
Passos Generator
Transport logic
Sensor
Com base na biblioteca e nos
arquivos XML Sensor
1. Preparando o gerador 2 Drive logic
2. Configurando o projeto
Motor
3. Gerando o projeto do TIA Portal

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 60 Openness Operate

Operating a project generator

A project generator has been developed by way of example for the DigiDemo machine. The
project generator is based on our standard with the Unit concept.

The generator operates with an SQL database, a global TIA Portal library and
XML files. Blocks and user data types have interdependencies.

SITRAIN TIA-AUTOEN
Training for Industry Page 60 Openness Operate
Hands on
Preparing the generator

Criando banco de dados pela primeira vez


AddOnTypes Blocks UnitTypes
Classes como Transportador, Painel UnitClasses
Variantes de uma classe como
UnitTypes
CConv_UnitBox, CConv_UnitPicker
Módulos de controle, Módulos de
UDTs Parameters UnitClasses
equipamentos, Unidades, Extensões Blocks
funcionais (= AddOn)
Tags de interface Parameters
Tipos de dados do usuário das interfaces UDTs

AG
AddOns
AddOn ParameterOverrides Configurations
Extensões de uma classe como
AddOnTypes
FExt_Positioning, FExt_BrickCamera

1. 2. RA
3.
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 61 Openness Operate

Preparing the generator

Create database for the first time. It contains the following (references to TIA Portal library
and XMLs)

• UnitClasses (classes, e.g. Conveyor, Panel, OperatingArea)

• UnitTypes (variants of a UnitClass, e.g. CConv_UnitBox, CConv_UnitPicker)

• Blocks (e.g. Control module, Equipment module, Unit, Functional extension (= AddOn)

• Parameters (all interface tags)

• UDTs (that are used in the interfaces)


nterfac

SITRAIN TIA-AUTOEN
Training for Industry Page 61 Openness Operate
Hands on

Configuring the project

Componentes de configuração
• Ambientes de chamada dos UnitTypes, como
FBU102_BC102, para a correia transportadora
central (Configurations)
• Extensões nos ambientes de chamada (chamadas
dos AddOnTypes), como instBrickCamera, para a
câmera acima da correia (AddOns)
• Interconexões dos tags de interface, como o eixo
do motor V90 TO_Pos_102 (ParameterOverrides)

1. 2. RA
3. The configuration components for a new TIA Portal project are
Configurations (call environment of a UnitType, thus the FBUs)
AddOns (a Unit can have multiple Functional Extensions = AddOns)
SITRAIN © Siemens AG 2018 ParameterOverrides (interconnections / assignments of the interface tags) DI-AUTOEN
Page 62 Openness Operate

Configuring the project

What do I do?

The generator can then be used. The configuration components for a new TIA Portal project
are

• Configurations (call environment of a UnitType, thus the FBUs)

• AddOns (a Unit can have multiple Functional Extensions


nsion = AddOns)

• ParameterOverrides (interconnections assignments of the interface tags)


ns / assignm

SITRAIN TIA-AUTOEN
Training for Industry Page 62 Openness Operate
Hands on

Gerando o projeto do TIA Portal

Geração do projeto TIA Portal com o gerador de


projetos "DigiDemo" com base em um projeto vazio e
na configuração.

Vantagens:
• Nenhum TIA Portal no PC de configuração
• As adaptações também são possíveis sem o TIA
Portal

1. 2. RA
3.
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 63 Openness Operate

Generating the TIA Portal project

The "DigiDemo" project generator generates the TIA Portal project using on an empty
project and the configuration.

The TIA Portal is not required on the configuration PC. For this reason, the configuration can also be
adapted without the TIA Portal.

SITRAIN TIA-AUTOEN
Training for Industry Page 63 Openness Operate
Live Demo
Gerador de projeto “DigiDemo”

Com a ajuda do gerador do projeto DigiDemo, uma


alteração no programa e uma geração completa devem
ser feitas.

No terceiro transportador da máquina DigiDemo, no


momento, não há interconexão. Isso deve ser alterado agora
sem fazer nada dentro do TIA Portal, mas com a ajuda do
configurador.

T
P LC
Live
S D RA demo
d S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 64 Openness Operate

Tarefa

No terceiro transportador da máquina DigiDemo no projeto atual, no momento, uma interconexão


não funcional com um “dummy” pode ser encontrada. Agora este “dummy” deve ser alterado com
uma interconexão correta. Para fins deexemplo, o projeto não deve ser adaptado manualmente. Em
vez disso, a alteração deve ser feita via TIA Portal Openness e gerador de projeto.

Procedimento

A alteração será feita no gerador do projeto. Para isso, o espaço de trabalho que corresponde à
configuração atual é aberta. Dentro desse espaço o de trabalho,
trabalh a configuração do “conveyour 3”
(“FBU103_BC103”) é carregada. Os símbolos os são alterados
alter lá. Depois disso, a geração de todo o
programa é iniciada pelo gerador doo projeto.

SITRAIN TIA-AUTOEN
Training for Industry Page 64 Openness Operate
Agenda

1 Usando o TIA Portal Openness

2 Usando "DigiDemo" gerador de projeto

2.1 Conceito

2.2 Sequência

2.3 Trabalho envolvido até a geração

2.4 Hands on

2.5 Conclusão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 65 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 65 Openness Operate
Checkpoint

Vamos pensar no seguinte …


x Como o OpennessScripter pode ser usado para começar?

x Quais são as vantagens de usar o Openness?

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 66 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 66 Openness Operate
A solução certa para todos

Quando? O que?

Recomendado quando Geradores de projeto para


• O programa do PLC é padronizado • Configuração de hardware
• Projetos possuem funcionalidades recorrentes • Geração de software

Variantes:
• Preparação do projeto
Quem? • Geração parcial
• Geração completa
De interesse de 70 a 80% do setor de automação
Processo:o
• Subtrativo
Adit
• Aditivo

São possíveis combinações e variantes adicionais.


SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 67 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 67 Openness Operate
Conclusão

Digitalização

Qualidade do

Competitivi-
Engenharia

software
eficiente

dade
Geração

AS
Padronização
Padroniz

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 68 Openness Operate

Conseguimos melhorar significativamente nossos processos e estamos usando isso para


construir a casa da digitalização.

Conclusão
• Processos digitais automatizados aprimorados com a ajuda da
• Padronização
• Geração de programa do PLC

Para
• Adaptação mais rápida da planta
• Maior qualidade do software
• Menos erros durante a configuração
uração
• Tempo de colocação no mercado
rcado mais
m rápido

Mas
• Não é "este" gerador para tudo
• Abordagem individual
• Métodos apresentados

SITRAIN TIA-AUTOEN
Training for Industry Page 68 Openness Operate
Automated Digital Workflow

HMI Generation
Geração de telas
HMI

Padronização PLC Block


Generation Te
Test
Criação de um padrão Geração do Teste automatizado
Te
programa do PLC de blocos

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 69 Openness Operate

SITRAIN TIA-AUTOEN
Training for Industry Page 69 Openness Operate
Teste de Software
Automatizado com PLCSIM G
Advanced
SITRAIN © Siemens AG 2018 Course: DI-AUTOEN

Content Page
Learning objectives................................................................................................................... 3
Automated digital workflow..................................................................................................... 4
Agenda...................................................................................................................................... 5
Automated digital workflow - Testing...................................................................................... 6
Automated digital workflow - Testing Six Sigma/Quality rule – Rule of ten............................ 7
Automated digital workflow –
Testing Comparison TIA Portal development <> PLC program……………….............................. 8
Automated digital workflow – Testing Unit test in relation to o Digi
Dig Demonstrator................. 9
Automated digital workflow - Testing Comparison TIA Portal development d <> PLC program 10
Automated digital workflow – Testing Integration tion test in relation to Digi Demonstrator....... 11
Automated digital workflow - Testing ng Comparison
Compar TIA Portal development <> PLC program 12
Automated digital workflow - Testing ng Comparison
C TIA Portal development <> PLC program 13
Automated digital workflow – Testing Process of test creation............................................... 14
Automated digital workflow – Testing What are the requirements?....................................... 15
Automated digital workflow – Testing Description and archiving of the tests........................ 16
Agenda...................................................................................................................................... 17
Automated digital workflow – Testing What are the requirements?....................................... 18
PLCSIM Advanced Completely virtual S7-1500 controller for simulation................................ 19
PLCSIM Advanced Basis for software in the loop..................................................................... 20
PLCSIM vs. PLCSIM Advanced What are the differences in functionality?............................... 21
PLCSIM Advanced Differences in function compared to PLCSIM V15.1......................................22

SITRAIN TIA-AUTOEN
Training for Industry Page 1 PLCSim Advanced
Content Page
PLCSIM Advanced Configuration settings................................................................................. 23
PLCSIM Advanced Virtual time................................................................................................. 24
PLCSIM Advanced API interface............................................................................................... 25
PLCSIM Advanced Code example............................................................................................. 26
PLCSIM Advanced License concept......................................................................................... 27
PLCSIM Advanced Live demo .......................................................................................... 28
PLCSIM Advanced Use cases................................................................................................... 29
PLCSIM Advanced Workflow ................................................................................................... 30
PLCSIM Advanced Use case: Automated block test................................................................ 31
PLCSIM Advanced Use case: Automated block test................................................................ 32
Effort/Benefit Automated block test....................................................................................... 33
Introduction Procedure...........................................................................................................
........ 34
PLCSIM Advanced Use case: Automated testing off software modules.................................. 35
Effort/Benefit Automated testing of software are modules.........................................................
module 36
Introduction Procedure........................
........................................................................................
........... 37
PLCSIM Advanced Use case: Virtual commissioning...............................................................
co 38
Effort/Benefits Virtual commissioning .................................................................................... 39
Introduction Procedure........................................................................................................... 40
Automated digital workflow – Testing What are the requirements?...................................... 41
Agenda..................................................................................................................................... 42
S7 unit test tool Concept......................................................................................................... 43
S7 unit test tool Overview of test case editor......................................................................... 44
S7 unit test tool Live demo...................................................................................................... 45
S7 unit test tool Automated execution of test........................................................................ 46
S7 unit test tool Live demo...................................................................................................... 47
Automated digital workflow – Testing What are the requirements?...................................... 48
Agenda.....................................................................................................................................
... 49
Exercise 1: S7UnitTest..............................................................................................................
............... 50
Checkpoint...............................................................................................................................
................ 55
Automated digital workflow – Testing Conclusion..................................................................
Conclusion 56

SITRAIN TIA-AUTOEN
Training for Industry Page 2 PLCSim Advanced
Objetivos

Ao final deste módulo o aluno irá ...

... Conhecer o processo de desenvolvimento de software


e de desenvolvimento de programas de controladores

... Saber a diferença entre PLCSIM e PLCSIM Advanced.

... Ser capaz de trabalhar com o PLCSIM Advanced

... Ser capaz de testar blocos automaticamente


utomatic

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 3 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 3 PLCSim Advanced
Automated digital workflow

HMI
generation
Geração de telas HMI

Padronização PLC generation Block


Criando um padrão Geração do programa do test
t
PLC
Teste automatizado
T
de blocos

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 4 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 4 PLCSim Advanced
Agenda

1 Desenvolvimento de software vs. desenvolvimento de programa do PLC

2 PLCSIM Advanced

3 S7 unit test

4 Hands-on

5 Sumário

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 5 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 5 PLCSim Advanced
Automated digital workflow - Testing

...
declare Ariane 5 desastre
vertical_veloc_sensor: float;
horizontal_veloc_sensor: float;
vertical_veloc_bias: integer; ƒ Autodestruição após 42 segundos
horizontal_veloc_bias: integer;
... ƒ Razão: Parada do sistema de
begin navegação inercial
declare
pragma suppress(numeric_error, ƒ Razão técnica:
horizontal_veloc_bias); Falta proteção durante a conversão
begin
sensor_get(vertical_veloc_sensor); de um valor de ponto flutuante em um
sensor_get(horizontal_veloc_sensor); valor inteiro
vertical_veloc_bias := integer(vertical_veloc_sensor);
horizontal_veloc_bias := ƒ A especificação da solução de
integer(horizontal_veloc_sensor); problemas não era suficientemente
...
exception
precisa
when numeric_error => calculate_vertical_veloc();
rtical_veloc(); ƒ Teste insuficiente do sistema de
when others => use_irs1();
end; navegação
end irs2;

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 6 PLCSIM Advanced

The error in the navigation system had now been found, but the question
was how such an error could happen at all.
The primary technical reason for the error was the missing protection
during conversion of the data by a sensor (horizontal_veloc_sensor:float) to
a integer value (horizontal_veloc_bias:integer).
This was why the navigation system shut down and therefore, the rocket
was left disorientated. This caused the self-destruction mode to start and
the rocket exploded.

SITRAIN TIA-AUTOEN
Training for Industry Page 6 PLCSim Advanced
Automated digital workflow - Testing
Six Sigma/Quality rule – Regra dos 10

Custo Desenvolvimento Operação Padronização é o


" A regra dos dez afirma por Comissionamento primeiro passo
Planejamento
que os custos erro
• Idealmente: melhore
relacionados a um erro a qualidade e garanta
não identificado €1,000
a manutenção do
aumentam em um fator €100 nível de qualidade
de 10 de um nível de
valor agregado para o €10
próximo. Quanto mais €1
• Como?
cedo um erro for Æ Através de testes
identificado e corrigido, automatizados.
Product life cycle
mais barato será para a
organização(…)"

Conclusão :
S
RA
Os erros devem encontrados e corrigidos o mais cedo possível!
evem ser e

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 7 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 7 PLCSim Advanced
Automated digital workflow - Testing
Comparação de desenvolvimento TIA Portal <> programa do PLC

Usando o desenvolvimento de aplicativos


de linguagem de alto nível como exemplo

Requerimento Especificação Código Prototype Product

Teste de unidade Integration test System test


Automatizado Automated Partly automated

Usando a criação do programa do PLC Manual Manual


como exemplo Teste de bloco Interface test Commissioning

Software
Requerimento Especificação Bloco
o PLC program
module

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 8 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 8 PLCSim Advanced
Automated digital workflow – Testing
Teste de unidade em relação ao Digi Demonstrator

Unidade técnica
Sensores
Teste de unidade Standard block/
Standard types
Nível de teste Módulos individuais

Funcionalidade dentro dos Standard block/


Abrangência módulos Standard types
Prova de capacidade técnica em
Objetivo operação Motor
Frequência A cada mudança (diariamente) Standard block/
Standard types

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 9 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 9 PLCSim Advanced
Automated digital workflow - Testing
Comparação de desenvolvimento TIA Portal <> programa do PLC

Usando o desenvolvimento de aplicativos


de linguagem de alto nível como exemplo

Requerimento Especificação Código Protótipo Product

Teste de unidade Teste de integração System test


Automatizado Automatizado Partly automated

Usando a criação do programa PLC como Manual Manual


exemplo Teste de bloco Teste de interface Commissioning

GMódulo de
Requerimento Espacificação Bloco
o PLC program
programa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 10 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 10 PLCSim Advanced
Automated digital workflow – Testing
Teste de integração em relação ao Digi Demonstrator

Unidade lógica
Lógica de transporte
Teste de integração
Módulos dependendo um do
Nível de teste outro

Colaboração dos módulos


Abrangência envolvidos nas interfaces

Prova de capacidade técnica para


Objetivo executar sequências completas

AG
Lógica de drive
Lóg
Frequência A cada mudança

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 11 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 11 PLCSim Advanced
Automated digital workflow - Testing
Comparação de desenvolvimento TIA Portal <> programa do PLC

Usando o desenvolvimento de aplicativos


de linguagem de alto nível como exemplo

Protótipo /
Requerimento Especificação Código Produto
Incremento

Teste de unidade Teste de integração Teste do sistema


Automated Automated Partly automated

Usando a criação do programa PLC Manual Manual


como exemplo Teste do bloco Teste de interface Comissionamento

Módulo de Programa do
Requerimento Especificação Bloco
o
programa PLC

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 12 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 12 PLCSim Advanced
Automated digital workflow - Testing
Comparação de desenvolvimento TIA Portal <> programa do PLC

Quais são os fatores comuns no desenvolvimento de uma biblioteca padrão?

Requerimento Especificação Código Prototype Product

Teste de unidade Integration test System test


Automatizado Automated

Manual Usando o desenvolvimento padrão


Lógica de transporte Teste do bloco como um exemplo

Biblioteca
Bloco
o
padrão

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 13 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 13 PLCSim Advanced
Automated digital workflow – Testing
Processo de criação de teste

Quais são os requisitos para planejar, criar e executar um teste automatizado?

Especificação Descrição do “test case” Criação do teste Execução do teste

ƒ Descrição geral
ƒ Implementação da ƒ Execução
ƒ Pré-requisitos
descrição em um “test automática dos “test
ƒ Valores de entrada
case” que possa ser cases”
ƒ Valores esperados de
executado ƒ Criação de um
Especificação saída
automaticamente relatório de teste
ƒ Pós-condição

TA
Por exemplo Microsoft
Por exemplo TifLib* Por exemplo NUnit
Test Manager

Os testadores baseiam seu trabalho


lho em casos de
d teste (test cases).
Eles descrevem etapas de teste que precisam
prec ser executadas individualmente, bem como etapas para validar os resultados
Microsoft Test Manager
ger é uma plataforma
plat de gerenciamento de testes de programas
NUnit é uma estrutura
a de teste
tes de unidade de código aberto para o .NET Framework e Mono.
SITRAIN © Siemens AG 2018 *Test interface library (Siemens development) DI-AUTOEN
PLCSIM Advanced
Page 14

The testers base their work on test cases. They describe test steps that have to be
executed individually as well as steps to validate the results

SITRAIN TIA-AUTOEN
Training for Industry Page 14 PLCSim Advanced
Automated digital workflow – Testing
Quais são os requisitos?

Quais são os requisitos?

Programa para descrever e arquivar “test


cases”

Possibilidade de acessar diretamente os dados


do sistema a ser testado

Aplicação para criação do teste

Aplicação para executar o teste


L
SP
automaticamente e gerarr relatório

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 15 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 15 PLCSim Advanced
Automated digital workflow – Testing
Descrição e arquivamento dos testes

Microsoft Test Manager


Tarefas (MTM)

ƒ Planejamento e manutenção dos


casos de teste
ƒ Documentação / arquivamento
dos resultados dos testes
ƒ Gerenciamento de alterações e Test Management
versões System (TMS)
ƒ Edição de resultados (relatórios)
ƒ Rastreamento de erro
ƒ Conexão com o gerenciamento
de requisitos

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 16 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 16 PLCSim Advanced
Agenda

1 Desenvolvimento de software vs. desenvolvimento de programa do PLC

2 PLCSIM Advanced

3 S7 unit test

4 Hands-on

5 Sumário

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 17 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 17 PLCSim Advanced
Automated digital workflow – Testing
Quais são os requisitos?

Quais são os requisitos? Solução

Programa para descrever e arquivar “test Microsoft Test Manager


cases”

Possibilidade de acessar diretamente os dados


do sistema a ser testado

Aplicação para criação do teste

Aplicação para executar o teste


L
SP
automaticamente e gerarr relatório

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 18 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 18 PLCSim Advanced
PLCSIM Advanced
Controlador S7-1500 completamente virtual para simulação

Controlador virtual S7-1500


(F / T)
PLCSIM Advanced

• Mapeamento de funções reais


do CLP
• Não são necessários ajustes
específicos da simulação no
código do programa

PLC
S7-1500
150
rtual controller
Virtual contro

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 19 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 19 PLCSim Advanced
PLCSIM Advanced
Base para o software no loop

Mundo real Sistema simulado

S7-1500 hardware controller PLCSIM Advanced


Virtual S7-1500 controller
Controller

PLCSIM
Advanced
as basis for
"Software
API 1
in the Loop"
Process

Co-simulation
G
External application
Exter

1 Application Programming Interface


SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 20 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 20 PLCSim Advanced
PLCSIM vs. PLCSIM Advanced
Quais são as diferenças de funcionalidade?

Mundo real Sistema simulado

Controlador real PLCSIM


Simulação da
lógica do
programa do Simulação de I/O Simulação de I/O
controlador Botão / Painel do operador
Simulador LEDs PLCSIM

Simulação do Controlador real PLCSIM Advanced


controlador

T
no contexto
NEW
NE
da
planta/máqui Protótipo/
na Co-simulação
Planta real

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 21 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 21 PLCSim Advanced
PLCSIM Advanced
Diferenças de função em comparação com PLCSIM V15.1

PLCSIM V15.1 S7-1200 (F) PLCSIM Advanced V2.0 SP1

S7-1500 (F/T)
API
OPC UA
S7 Comm.
OUC 2 Virtual S7-1500 controller
PLC simulation no TIA Portal
Profinet/bus Aplicações:
Applicação: Engenharia & Suporte ao
Validação manual do programa desenvolvimento

CT
PLC KHP 1 blocks
ocks Comissionamento virtual
ErrorPOBs
Serviço

A S OB Migração
Treinamento
Virtual time
1 Know-how protected DI-AUTOEN
SITRAIN © Siemens AG 2018
Page 22
2 Open User Communication Citar OB’s de tratamento de erro mais comuns. PLCSIM Advanced

Available error OBs are


OB82: Diagnostic error interrupt Is called with the Occurrence of a diagnostic error
OB83: Pull/plug event Is called when a module is pulled or plugged
OB55: Status event Is called when a Status event happens
OB56: Update event Is called when an update event happens
OB57: Manufacturer-specific event Is called when a manufacturer-specific event occurs

OB121: Programming error Error detected during program run


OB122: I/O access error: Direct access to deactivated peripheral I/O address

SITRAIN TIA-AUTOEN
Training for Industry Page 22 PLCSim Advanced
PLCSIM Advanced
Definições de configuração

Configurações
PC 1 PC 2
PLCSIM Adv. PLCSIM Adv. PLCSIM Adv.
Instance 1 Instance 1 Instance 2 ƒ Suporte de várias instâncias
(até 16 instâncias são possíveis
localmente)
ƒ Suporte de instâncias distribuídas
ƒ Para distribuição de carga
Network ƒ Comunicação via TCP / IP
PC 3 ƒ É possível conectar dispositivos reais
TIA Portal (HMIs / controladores)
ƒ Conexão com co-simulações
ƒ A conexão de I/Os reais não é
Co-simulation possível.

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 23 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 23 PLCSim Advanced
PLCSIM Advanced
Tempo virtual

Tempo virtual
PC 1 PLCSIM Adv. PLCSIM Adv.
Instance 1 Instance 2

Software ƒ O tempo virtual afeta apenas o tempo


in the de chamada dos OBs cíclicos
Loop ƒ "Debugging" cíclico do programa STEP
7, interrompendo o PLC virtual (modo
"Freeze")
PC 4
TIA Portal ƒ O tempo virtual está parado
ƒ Conexão cronológica das instâncias do
G PLCSIM Advanced com a co-
simulação
Co-simulation

Tempo virtual

lento Virtual time rápido

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 24 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 24 PLCSim Advanced
PLCSIM Advanced
Interface API

Mundo real Sistema simulado API

ƒ Funcionalidade abrangente para


programação C ++ / C # com o Visual
Studio
Controlador

ƒ Aplicativos externos podem se


conectar ao Runtime Manager com a
interface API fornecida
ƒ Acesso aos dados da CPU
(I/Os, DBs, bit memory, timers,
counters)
Processo

ƒ Configuração e controle de instâncias


do PLCSIM Advanced

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 25 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 25 PLCSim Advanced
PLCSIM Advanced
Exemplo de código

Registrar instância no SimulationRuntimeManager:

IInstance myInstance = SimulationRuntimeManager.RegisterInstance("MyVirtualController");

Iniciar instância do PLCSIM : myInstance.PowerOn();


Defina a CPU para RUN : myInstance.Run();

Gravar tag de bloco de dados : SDataValue writeTag = new SDataValue();


writeTag.Type = EPrimitiveDataType.Bool;
se;
writeTag.Bool = false;
G
TA
Write("my
myInstance.Write("myDataBlock.req", writeTag );

S
RA
Ler tag de bloco de dados : readTag = myInstance.Read("myDataBlock.error");

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 26 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 26 PLCSim Advanced
PLCSIM Advanced
Conceito de licença

Instance 1 Instance 2
Conceito de licença

ƒ Floating license
ƒ Enterprise license (EPL)
Instance 3 Instance 4 ƒ Æ Uma licença para duas
instâncias!

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 27 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 27 PLCSim Advanced
PLCSIM Advanced
Live demo

"Primeira impressão"
• Crie e inicie uma instância

• Recursos especiais de rede

T
P LC
Live
S D RA demo
d S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 28 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 28 PLCSim Advanced
PLCSIM Advanced
Casos de uso

Como o PLCSIM Advanced pode apoiá-lo em seu

trabalho diário por todo caminho até


TA
comissionamento virtual?
irtual?

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 29 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 29 PLCSim Advanced
Pausa

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 30 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 30 PLCSim Advanced
Exercício 1 - PLCSIM Advanced + página WEB

1. Criar projeto no TIA


2. Propriedades do projeto, aba protection, marcar “Support simulation during blcok compilation”
3. Adicionar CPU S7-1500 1511-1 PN (6ES7 511 1AK02 0AB0), nome PLC_1
4. Propriedades da CPU, Ethernet Address 192.168.111.1
5. Propriedades da CPU, Web Server, General:
1. Marcar Activate web server on this module
2. Desmarcar Permit access only HTTPS
3. Em user management, clicar sobre “minimal” e marcar todas as opções.
6. Compilar HW e SW, salvar
7. Abrir PLCSim Advanced
8. Ajustar Para PLCSIM Virtual Eth. Adapter
9. Clicar em Start Virutal S7-1500 PLC
10. Preencher:
1. Instance name: PLC_1
2. IP 192.168.111.1, Submask 255.255.255.0, PLC type CPU 1500
3. Clicar em Start
4. Aguardar ele entrar em operação
11. Fazer download do TIA, escolher adaptador Siemens PLCSIM Virtual Ethernet
hernet Adapter
Adapte
12. Entrar online
13. Abrir navegador web, digitar endereço de navegação 192.168.111.1
68.111

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 31 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 31 PLCSim Advanced
Exercício 2 - Partida direta

1. Criar um bloco FB (nome Motor)


2. Programar conforme ilustração
3. Criar as seguintes variáveis
4. Chamar o bloco no programa principal
5. Atribuir memorias as entradas e saídas do bloco..
6. Compilar projeto e fazer download no simulador
7. Testar funções do bloco usando o botão direito do mouse, modify

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 32 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 32 PLCSim Advanced
Exercicio 3 - PLCSIM Advanced + GET

1. Propriedades da CPU PLC_1, propriedades, Protection&Security,


Connection mechanisms, clicar em Permir access with PUT/GET
2. Adicionar CPU S7-1500 1511-1 PN (6ES7 511 1AK02 0AB0), nome PLC_2
3. Propriedades da CPU, Ethernet Address 192.168.111.2
4. Propriedades da CPU, System and Clock memory, ativar ambas
5. Network view, interligar as duas portas da CPU’s
6. OB1, chamar bloco GET
7. GET: Caixa de ferramenta, Partner = PLC_1
8. GET: ADDR_1 = P#M4.0 BYTE 1
9. GET: RD_1 = P#M4.0 BYTE 1
10. Criar lista de símbolos e whach table a semelhança do PLC_1
11. Compilar e fazer download
12. Monitorar online os dois PLC’s,
13. Acionar o motor pelo PLC_1 e monitorar os valores no PLC_2

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 33 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 33 PLCSim Advanced
Exercicio 4 - PLCSIM Advanced + GET + PUT

1. PLC_2: Acrescentar no programa principal o bloco de PUT


2. PUT: Caixa de ferramenta, Partner = PLC_1
3. PUT: ADDR_1 = P#M2.0 BYTE 1
4. PUT: RD_1 = P#M2.0 BYTE 1
5. Compilar e fazer download
6. Operar o motor do PLC_1 através da whacht table do PLC_2

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 34 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 34 PLCSim Advanced
Exercício 5 - Simulador de partida direta

1. PLC_2: Acrescentar FB1, MotorSimulator


2. Programar o bloco conforme indicado
3. Chamar novo bloco no OB1 e interligar com variáveis
4. Operar o motor do PLC_1 através da whacht table do PLC_2

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 35 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 35 PLCSim Advanced
PLCSIM Advanced
Workflow

TIA Portal Commissioning

Library
Units
Erro na lógica do Erro nos módulos do Erro na função
Equipment modules programa da máquina
bloco
Control modules

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 36 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 36 PLCSim Advanced
PLCSIM Advanced
Caso de uso: Teste de bloco automatizado

Biblioteca TIA Portal Test application Problema


Test case 1
Integrator
Nome Tipo de Valor • Consome muito tempo
dado
devido ao teste manual de
V1.0.0 Inputs Ramp Real 0.0
0.0 novas versões de blocos
Output Error Bool false • Blocos defeituosos devido à
s PLCSIM Adv. API * baixa cobertura de teste

PLCSIM Advanced Solução


• Aplicativo Windows para
teste automatizado de novos
V1.0.0 blocos de biblioteca com a
ajuda do PLCSIM Advanced
ffalse

* Interface to PLCSIM Advanced

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 37 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 37 PLCSim Advanced
PLCSIM Advanced
Caso de uso: Teste de bloco automatizado

Library TIA Portal Test application Problema


Test case 1
Integrator
Nome Tipo de Valor • Consome muito tempo
dado
Integrator devido ao teste manual de
V1.0.0 Inputs Ramp Real 0.0
0.0 novas versões de blocos
V2.0.0 Output Error Bool true • Blocos defeituosos devido à
s PLCSIM Adv. API * baixa cobertura de teste

PLCSIM Advanced Solução


• Aplicativo Windows para
teste automatizado de novos
V1.0.0
V2.0.0 blocos de biblioteca com a
ajuda do PLCSIM Advanced
ffalse

* Interface to PLCSIM Advanced

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 38 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 38 PLCSim Advanced
Esforço/Benefício
Teste de bloco automatizado

Benefícios para o cliente


Planejamento de Executando o teste
• Qualidade aprimorada no nível do
teste bloco
4h
Manual 2h Manual • Economia de tempo e custo
Ontem graças ao processo automatizado
• Reprodutibilidade dos testes
Automático 7510min
min • Arquivamento dos resultados dos
2h 75 min
Futuro testes

Grupo alvo
Definição de: Atividades : Clientes que desejam garantir de
o Estratégia de teste o Criar ambiente de teste forma consistente e reprodutível
o Valores de entrada o Execute o teste a funcionalidade de seu software

PLC
o Pré-requisitos o Verifique e registre o desde o início.
o Valores de saída resultado
ado
A
DR
esperados necess
o Se necessário, repita o 90-95% de todos os
teste
tes engenheiros de automação
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 39 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 39 PLCSim Advanced
Introdução
Procedimento

TIA Portal Comissionamento

Biblioteca
Units
Erro nos módulos do Erro na função
Equipment
Erro modules
na lógica do bloco
programa da máquina
Control modules

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 40 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 40 PLCSim Advanced
PLCSIM Advanced
Caso de uso: Teste automatizado de módulos de software

TIA Portal Aplicação do teste Problema


Plant start • Interfaces de bloco com
Operating
defeito devido à baixa
modes cobertura de teste
Error state
Biblioteca • Atribuição incorreta de
PLCSIM Adv. API * parâmetros do software
CM_Drive_V90
EM_Move

CConv_HmiAdapter PLCSIM Advanced Solução


• Aplicativo Windows para
teste automatizado de partes
do programa do PLC com a
ajuda do PLCSIM Advanced

* Interface to PLCSIM Advanced

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 41 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 41 PLCSim Advanced
Esforço / Benefício
Teste automatizado de módulos de software

Benefícios para o cliente


Planejamento de Executando o teste
• Qualidade aprimorada no nível do
teste bloco
8h
4h Manual • Economia de tempo e custo
Ontem graças ao processo automatizado
• Reprodutibilidade dos testes
Automático 7520min
min • Arquivamento dos resultados dos
4h 75 min
Futuro testes

Grupo alvo
Definição de: Atividades: Clientes que desejam garantir de
o Estratégia de teste o Criar ambiente de teste forma consistente e reprodutível
o Valores de entrada o Execute o teste a funcionalidade dos módulos do
o Pré-requisitos o Verifique e registre o programa.
o Valores de saída resultado
tado
esperados neces
o Se necessário, repita o 60 - 70% de todos os
teste
te engenheiros de automação
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 42 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 42 PLCSim Advanced
Introdução
Procedimento

TIA Portal Comissionamento

Biblioteca
Units Erro na
Erro nos módulos do
Equipment
Erro modules
na lógica do bloco função da
programa
Control modules máquina

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 43 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 43 PLCSim Advanced
PLCSIM Advanced
Caso de uso: Comissionamento virtual

TIA Portal Problema


Biblioteca
• O comportamento da planta
Blocos
Symbol table
em combinação com o
programa PLC não pode ser
Visualização testado sem software
adicional

Solução:
HMI PLCSIM Advanced Virtual model
• Modelo virtual da planta em
combinação com PLCSIM

PLCSIM Adv. API


Advanced para
G comissionamento virtual
TA
Comportamento
PL

Visualização Programa
R
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 44 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 44 PLCSim Advanced
Esforço/Benefício
Comissionamento virtual

Benefícios para o cliente


• Qualidade aprimorada no
Conhecimento em MCD nível do programa do PLC
exigido + testes • Economia de tempo e custo
durante medidas reais de
Criação de : comissionamento e
modernização

Cinemático • Risco minimizado para


pessoas e máquinas
modelo com 1 MW
MCD • Verificação antecipada do
conceito de automação
• Treinamento do operador em
Ligação ao: uma HMI real
Grupo alvo
PLCSIM
• 5-10% de todos os
SIMIT Advanced 1 MD engenheiros de
automação
SITRAIN © Siemens AG 2018 SIMIT permite simular processos e ser usado para fins de testes e treinamentos. DI-AUTOEN
Page 45 SIMIT/MCD - Virtual commissioning in machine building https://support.industry.siemens.com/cs/br/en/view/109777165 PLCSIM Advanced

SIMIT makes it possible to train people in situations that can also appear in reality. SIMIT allows you to
simulate e.g. processes.

SITRAIN TIA-AUTOEN
Training for Industry Page 45 PLCSim Advanced
Introdução
Procedimento

TIA Portal Comissionamento

Biblioteca
Units Erro na
Erro nos módulos do
Equipment
Erro modules
na lógica do bloco função da
programa
Control modules máquina

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 46 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 46 PLCSim Advanced
Automated digital workflow – Testing
Quais são os requisitos?

Quais são os requisites? Solução

Programa para descrever e arquivar “test


Microsoft Test Manager
cases”

Possibilidade de acessar diretamente os dados


PLCSIM Advanced
do sistema a ser testado
API

Aplicação para criação do teste

Aplicação para executar o teste


PL
automaticamente e gerar relatório

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 47 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 47 PLCSim Advanced
Agenda

1 Desenvolvimento de software vs. desenvolvimento de programa do PLC

2 PLCSIM Advanced

3 S7 unit test

4 Hands-on

5 Sumário

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 48 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 48 PLCSim Advanced
S7 unit test tool
Conceito

Definindo / Escrevendo (automático) execução de


“Test cases“ S7UnitTest “test cases” Resultados do teste
XML-File como XML

Origem do bloco S7UnitTest S7UnitTest


SCL
de importação Editor Program
XML XML
XML

Creating
SCL- / SimaticML-
source
Path of
Documentação Virtual
virtual MC
MC
do bloco

TIA Portal
CTA
Carregando
rregando
g o PLCSIM
L
program
programa do PLC Advanced

DI-AUTOEN
SITRAIN © Siemens AG 2018 1 XML export via Openness
Page 49 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 49 PLCSim Advanced
S7 unit test tool
Visão geral do editor de “test cases”

Editor

ƒ A criação e gerenciamento bloco a


bloco de todos os casos de teste
promove clareza
ƒ A importação da interface do bloco
facilita a criação de casos de teste
ƒ Atribuição de versões e descrições
ƒ Arquivamento de casos de teste
salvando-os como arquivo XML

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 50 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 50 PLCSim Advanced
S7 unit test tool
Live demo

" Criação de case test"


• Criando um caso de teste

• Definições

T
P LC
Live
S D RA demo
d S
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 51 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 51 PLCSim Advanced
S7 unit test tool
Execução automatizada de teste

GUI

ƒ Leitura de casos de teste criados


anteriormente
ƒ Teste automatizado através do acesso
direto aos dados da CPU virtual com
o PLCSIM Advanced API
ƒ Criação automática do arquivo de
resultados
ƒ Isso significa que os resultados
podem ser arquivados

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 52 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 52 PLCSim Advanced
S7 unit test tool
Live demo

" Execução de case test"


• Handling

T
P LC
Live
S D RA demo
dS
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 53 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 53 PLCSim Advanced
Automated digital workflow – Testing
Quais são os requisitos?

Quais são os requisitos? Solução

Programa para descrever e arquivar casos de


Microsoft Test Manager
teste

Possibilidade de acessar diretamente os dados


PLCSIM Advanced
do sistema a ser testado
API

Aplicação para criação de teste Aplicativo próprio


S7UnitTest tool

Aplicação para executar o teste


L Aplicativo próprio
SP
automaticamente e gerar relatório
S7UnitTest tool

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 54 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 54 PLCSim Advanced
Agenda

1 Desenvolvimento de software vs. desenvolvimento de programa do PLC

2 PLCSIM Advanced

3 S7 unit test

4 Hands-on

5 Sumário

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 55 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 55 PLCSim Advanced
Exercício 6: S7UnitTest

Testando blocos automaticamente


com o aplicativo S7UnitTest e
documentando o teste
Aplicativo de teste do
Windows

L
Exe
Exemplo de
aplicação
Entry ID:
109746405

SITRAIN © Siemens AG 2018 DI-AUTOEN


Mostrar conteúdo do site / manual https://support.industry.siemens.com/cs/br/en/view/109746405
Page 56 PLCSIM Advanced

Descrição da tarefa
Os desenvolvedores da equipe de padronização da empresa XY testaram os blocos
recém-desenvolvidos manualmente com a ajuda do PLCSIM no passado.
Devido a restrições de tempo, nem todos os cenários de teste possíveis foram
levados em consideração durante o teste. Repetidas vezes, os blocos defeituosos
foram integrados ao padrão, causando atrasos durante o comissionamento.
Para obter maior cobertura de teste e melhor qualidade de software, os testes
deverão ser realizados automaticamente no futuro.
Crie um teste de bloco automatizado paraara o bloco "LStd_Integrator" com base na
especificação disponível "Block_description_LStd_EN.pdf".
escription Use apenas o exemplo
de aplicativo introduzido "S7UnitTest".
S7UnitTes

Use apenas o exemplo


exempl de aplicativo introduzido:
“C:\02_Archives\TIA-Portal\DI-AUTOEN\03_BlockTest”

Nota Você pode encontrar o exemplo de aplicativo "S7UnitTest" na Entry ID 109746405


ou no caminho listado acima.

A próxima página contém instruções passo a passo para execução.

SITRAIN TIA-AUTOEN
Training for Industry Page 56 PLCSim Advanced
Execução 1. Crie um ambiente de teste no TIA Portal para o bloco que você deseja testar. É
suficiente apenas chamar o bloco; a atribuição de parâmetros não é necessária,
pois será feita automaticamente pelo S7 UnitTest.

ojeto via botão


2. Abra as configurações do projeto bo direito do mouse no nome do
projeto na navegação doo projeto. Selecione a guia “Protection” e ative o suporte à
simulação.

3. Leia a especificação do bloco "LStd_Integrator". O primeiro case testjá foi


documentado aqui. Para esse caso de teste, crie um ambiente de teste completo
no editor de casos de teste (Siemens.DigitalEngineering.S7UnitTest.Editor.Exe).
Você pode encontrar alguns dos detalhes na seguinte captura de tela.

The description of execution continues on the next page.

SITRAIN TIA-AUTOEN
Training for Industry Page 57 PLCSim Advanced
Execução 1. Crie um ambiente de teste no TIA Portal para o bloco que você deseja testar. É
suficiente apenas chamar o bloco; a atribuição de parâmetros não é necessária,
pois será feita automaticamente pelo S7 UnitTest.

ojeto via botão


2. Abra as configurações do projeto bo direito do mouse no nome do
projeto na navegação doo projeto. Selecione a guia “Protection” e ative o suporte à
simulação.

3. Leia a especificação do bloco "LStd_Integrator". O primeiro case testjá foi


documentado aqui. Para esse caso de teste, crie um ambiente de teste completo
no editor de casos de teste (Siemens.DigitalEngineering.S7UnitTest.Editor.Exe).
Você pode encontrar alguns dos detalhes na seguinte captura de tela.

The description of execution continues on the next page.

SITRAIN TIA-AUTOEN
Training for Industry Page 58 PLCSim Advanced
Execução 1. Crie um ambiente de teste no TIA Portal para o bloco que você deseja testar. É
suficiente apenas chamar o bloco; a atribuição de parâmetros não é necessária,
pois será feita automaticamente pelo S7 UnitTest.

ojeto via botão


2. Abra as configurações do projeto bo direito do mouse no nome do
projeto na navegação doo projeto. Selecione a guia “Protection” e ative o suporte à
simulação.

3. Leia a especificação do bloco "LStd_Integrator". O primeiro case testjá foi


documentado aqui. Para esse caso de teste, crie um ambiente de teste completo
no editor de casos de teste (Siemens.DigitalEngineering.S7UnitTest.Editor.Exe).
Você pode encontrar alguns dos detalhes na seguinte captura de tela.

The description of execution continues on the next page.

SITRAIN TIA-AUTOEN
Training for Industry Page 59 PLCSim Advanced
Execução 4. Use o modelo de interface de bloco (com uma borda vermelha na imagem na
etapa 3) para preencher o formulário para as etapas individuais mais rapidamente.
Para isso, é necessário criar uma fonte do bloco pressionando a entrada
“Generate source from blocks" no menu de contexto do bloco. Depois, importe a
interface usando a fonte SCL do bloco.

5. Para acesso direto à interfacee (que significa


sign acessar o DB da instância), insira o
nome do banco de dadoss da instância
instâ como prefixo durante a importação da
interface
DR
ES

6. Save your entries.

7. Open the S7UnitTest GUI. Select the path for your test case.

SITRAIN TIA-AUTOEN
Training for Industry Page 60 PLCSim Advanced
Execução 4. Use o modelo de interface de bloco (com uma borda vermelha na imagem na
etapa 3) para preencher o formulário para as etapas individuais mais rapidamente.
Para isso, é necessário criar uma fonte do bloco pressionando a entrada
“Generate source from blocks" no menu de contexto do bloco. Depois, importe a
interface usando a fonte SCL do bloco.

5. Para acesso direto à interfacee (que significa


sign acessar o DB da instância), insira o
nome do banco de dadoss da instância
instâ como prefixo durante a importação da
interface
DR
ES

6. Save your entries.

7. Open the S7UnitTest GUI. Select the path for your test case.

SITRAIN TIA-AUTOEN
Training for Industry Page 61 PLCSim Advanced
Execução 8. Inicie o PLCSimAdvanced, através do menu inicial do Windows.

9. Use o botão “PowerOnPLC” para criar uma nova instância do PLCSIM Advanced
no local de armazenamento especificado (você especificou o local de
armazenamento no “test case editor”).

10. Assim que a instância do PLCSIM Advanced for iniciada, faça o download do
seu programa para o PLC virtual no TIA Portal.

11. Depois de baixar o PLC, você pode pressionar “PowerOffPLC” no S7Unittest e


iniciar o teste usando o botão “Start Test”.

12. Wait until S7UnitTest shows a result. If you entered all values correctly, the
result should look as above.

xml" file for


13. Also review the "_Result.xml" fo your test.

me more test
14. Create some te cases for the test scenarios 2 and 3. Please rememver
ful names etc. in order to make the tests more maintainable.
using meaningful
Especially read the paragraph on cycle times for the PLC and set up the respective
parameter correctly in TIA Portal. After that, you have to load you PLC once again,
of course!

On the next page, you will find some hints that help you find the solution!

SITRAIN TIA-AUTOEN
Training for Industry Page 62 PLCSim Advanced
Sugestões
• Você deve sempre começar com o valor do ciclo da CPU 1 – caso contrário, os
valores serão transferidos para a CPU no modo STOP. Isso pode levar a uma
execução incorreta dos blocos.

• A função do bloco está funcionando corretamente – portanto, se a execução do


teste estiver mostrando erros, não será necessário procurá-los dentro do bloco.

• Se seus valores não corresponderem aos resultados esperados, pense no


seguinte: Se você definir RAMP para 2.0 e o setpoint para o mesmo valor – quanto
tempo levará para a saída atingir o setpoint (A resposta é 4 segundos!)

SITRAIN TIA-AUTOEN
Training for Industry Page 63 PLCSim Advanced
Execução 1. Crie um ambiente de teste no TIA Portal para o bloco que você deseja testar. É
suficiente apenas chamar o bloco; a atribuição de parâmetros não é necessária,
pois será feita automaticamente pelo S7 UnitTest.

ojeto via botão


2. Abra as configurações do projeto bo direito do mouse no nome do
projeto na navegação doo projeto. Selecione a guia “Protection” e ative o suporte à
simulação.

3. Leia a especificação do bloco "LStd_Integrator". O primeiro case testjá foi


documentado aqui. Para esse caso de teste, crie um ambiente de teste completo
no editor de casos de teste (Siemens.DigitalEngineering.S7UnitTest.Editor.Exe).
Você pode encontrar alguns dos detalhes na seguinte captura de tela.

The description of execution continues on the next page.

SITRAIN TIA-AUTOEN
Training for Industry Page 64 PLCSim Advanced
Execução 4. Use o modelo de interface de bloco (com uma borda vermelha na imagem na
etapa 3) para preencher o formulário para as etapas individuais mais rapidamente.
Para isso, é necessário criar uma fonte do bloco pressionando a entrada
“Generate source from blocks" no menu de contexto do bloco. Depois, importe a
interface usando a fonte SCL do bloco.

5. Para acesso direto à interfacee (que significa


sign acessar o DB da instância), insira o
nome do banco de dadoss da instância
instâ como prefixo durante a importação da
interface
DR
ES

6. Save your entries.

7. Open the S7UnitTest GUI. Select the path for your test case.

SITRAIN TIA-AUTOEN
Training for Industry Page 65 PLCSim Advanced
Execução 8. Inicie o PLCSimAdvanced, através do menu inicial do Windows.

9. Use o botão “PowerOnPLC” para criar uma nova instância do PLCSIM Advanced
no local de armazenamento especificado (você especificou o local de
armazenamento no “test case editor”).

10. Assim que a instância do PLCSIM Advanced for iniciada, faça o download do
seu programa para o PLC virtual no TIA Portal.

11. Depois de baixar o PLC, você pode pressionar “PowerOffPLC” no S7Unittest e


iniciar o teste usando o botão “Start Test”.

12. Wait until S7UnitTest shows a result. If you entered all values correctly, the
result should look as above.

xml" file for


13. Also review the "_Result.xml" fo your test.

me more test
14. Create some te cases for the test scenarios 2 and 3. Please rememver
ful names etc. in order to make the tests more maintainable.
using meaningful
Especially read the paragraph on cycle times for the PLC and set up the respective
parameter correctly in TIA Portal. After that, you have to load you PLC once again,
of course!

On the next page, you will find some hints that help you find the solution!

SITRAIN TIA-AUTOEN
Training for Industry Page 66 PLCSim Advanced
Sugestões
• Você deve sempre começar com o valor do ciclo da CPU 1 – caso contrário, os
valores serão transferidos para a CPU no modo STOP. Isso pode levar a uma
execução incorreta dos blocos.

• A função do bloco está funcionando corretamente – portanto, se a execução do


teste estiver mostrando erros, não será necessário procurá-los dentro do bloco.

• Se seus valores não corresponderem aos resultados esperados, pense no


seguinte: Se você definir RAMP para 2.0 e o setpoint para o mesmo valor – quanto
tempo levará para a saída atingir o setpoint (A resposta é 4 segundos!)

SITRAIN TIA-AUTOEN
Training for Industry Page 67 PLCSim Advanced
Checkpoint

Vamos pensar no seguinte...


x Como você tem testado seus blocos escritos até agora?

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 68 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 68 PLCSim Advanced
Automated digital workflow – Testing
Conclusão

Digitalização
o PLCSIM Advanced interface (API) oferece
aos nossos clientes uma ampla gama de

Qualidade do

Competitivi-
Engenharia

software
eficiente
aplicações:

dade
oDo teste de bloco automatizado até a
conexão com sistemas de simulação,
como o MCD
o A qualidade do software pode ser aprimorada Teste e simulação
e garantida desde o início com testes
Geração
automáticos de blocos
Padronização

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 69 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 69 PLCSim Advanced
(Opcional) TIA Portal Test Suite Advanced V16 trial download

TIA Portal V16 – Test Suite


x Engloba controle de estética e testes de programa

x "Styleguide"
x Type
x Casing (upper case, camel case, pascal case)
x Name Contains, checa se o nome contem ou não alguma sequencia de caractere
x Metadata, checa s as características de alguma propriedade (por exemplo se há autor definido)
x Name Lenght, comprimento mínimo / máximo (2-127 caracteres)
x Prefix Sulfix, confere se algum objeto é precedido ou terminado por conjunto de caracteres.
x Object selector, define qual objeto será checado pela regra (block, block interfece, type, tag table, etc.)
x Traget, define qual propriedade do objeto será checada.
x TIPs:
x Do lado esquerdo existe um triangulo que expande a linha ha mostrando
mostran as opções de preenchimento
x Regras de estilo padrão estão disponíveis no SIOS
L
SP
(https://support.industry.siemens.com/cs/br/pt/view/109779806/en)
/view/10977

SITRAIN © Siemens AG 2018 DI-AUTOEN


Page 70 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 70 PLCSim Advanced
(Opcional) TIA Portal Test Suite Advanced V16 trial download

TIA Portal V16 – Test Suite


x Engloba controle de estética e testes de programa

x "Application test" (teste de lógica)


x Baseado em “Test Cases”, cada um com um ou mais passos. Cada passo contém:
x Atribuição: sintaxe semelhante a SCL (x := y;)
x Espera: comando “RUN” (define tempo corrido ou ciclos de programa)
x Conferência: comando “Assert”
x Acesso integrado a variáveis (intelicense), podem ser criadas referências simbólicas internas (VAR)
x Exemplo:
VAR
myInput : "on";
myOutput : "motor";
END_VAR

STEP: "Step test true"


myInput := TRUE;
RUN(CYCLES := 1);
ASSERT.Equal (myOutput, TRUE);
END_STEP

x TIPs: PLCSim Advanced deve estar disponível,


vel, mas projeto
proj não deve estar carregado (o próprio Test Suite faz isso para
você)
SITRAIN © Siemens AG 2018 DI-AUTOEN
Page 71 PLCSIM Advanced

SITRAIN TIA-AUTOEN
Training for Industry Page 71 PLCSim Advanced
TAG
Gerando telas de HMI PLC
RAS
ESD
SITRAIN © Siemens AG 2018 Course: TIA-SIVARC

Content Page
Objectives……………………....................................................................................................................................... 4
Task Automatic project generation……………………................................................................................................ 5
Task Automatic project generation……………………................................................................................................ 6
SiVArc in the TIA Portal …………………….................................................................................................................. 7
Task – Create visualization based on existing data………………………..................................................................... 8
Solution – SiVArc……………………............................................................................................................................ 9
Objectives……………………....................................................................................................................................... 11
Result to Digi Demo machine……………………......................................................................................................... 12
SIMATIC Visualization Architect Modular design………………………........................................................................ 13
.............
Exercise 1: Generate screen and object in screen………………………....................................................................... 14
……............
Exercise 1: Generate screen and object in screen……….………………...................................................................... 15
..................
Objectives……………………....................................................................................................................................... 17
SiVArc properties and pre-defined tags Generating rating screens………………………......................................................
screen 18
Retrieving information from the PLC program ram ……………………………………………….………………………........................
…… 19
Pre-defined tags Accessing information of higher-level blocks ……………………….................................................. 20
Exercise 2: Generating multiple instances of the faceplate………………………........................................................ 21
Exercise 2: SiVArc parameters on the instance level ……………………….................................................................. 22
Exercise 2: PLC block overview with instances ………………………........................................................................... 23
Generating process tags Tag generation.............................................................................................................. 24
Interconnect tags to objects Generate complete project ……………………….......................................................... 25
Exercise 3: Interconnecting tags to the generated objects ………………………........................................................ 26
Objectives ……………………...................................................................................................................................... 28
Layout fields Positioning of generated objects in the screen ………………………..................................................... 29
Layout fields Positioning of generated objects in the screen ………………………..................................................... 30
Layout fields Positioning of generated objects in the screen ………………………..................................................... 31

SITRAIN TIA-SiVArc
Training for Industry Page 1 SIMATIC Visualization Architect
Content Page
Exercise 4: Positioning objects……………………....................................................................................................... 32
Objectives …………………......................................................................................................................................... 34
Copy rules Copy library objects into the project………………………......................................................................... 35
Tag generation – rule editor Tag generation....................................................................................................... 36
Exercise 5: Generate tag tables & copy visualization layout into the project……………………............................... 37
Conditions in SiVArc rules Generation of a complete project ……………………....................................................... 38
Exercise 6: Conditional generation ……………………................................................................................................ 39
Dynamic Layout Fields Positioning of generated Objects in the screen………………………..................................... 40
Exercise 7: Dynamic layouts …………………….......................................................................................................... 41
Hands-on 7 Dynamic layouts…………………….......................................................................................................... 42
Generating of textlists based on PLC-Tag list ……………………………………................................................................ 43
Exercise 8: Generating text lists……………………..................................................................................................... 44
Exercise 8: Generating text lists……………………..................................................................................................... 45
.....
Objectives …………………......................................................................................................................................... 47
….................
SIMATIC Visualization Architect Scope of functions ………………………................................................................... 48
SIMATIC Visualization Architect Advantages of automation visualization visualizatio generation………………………............... 49
belts…………
Exercise 9: Generate the control for the conveyor belts……………………............................................................... 50

SITRAIN TIA-SiVArc
Training for Industry Page 2 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 3 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 3 SIMATIC Visualization Architect
Objetivos

Ao final do capítulo, o participante irá ...

... conhecer os desafios de trabalhar com a HMI como construtor de máquinas modulares

… conhecer a solução que a Siemens fornece para esse problema

… estar familiarizado com as tarefas em que ele pode usar o SiVArc

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 4 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 4 SIMATIC Visualization Architect
Tarefa
Geração automática de projeto

Caso de aplicação:
Um equipamento em empresa deve ser criado várias vezes em diferentes configurações.
O equipamento tem como objetivo configurar a placa mãe de um telefone celular. Agora
máquinas adicionais devem ser criadas para executar outras etapas de produção.

Etapa de produção 1 Etapa de produção 2 Etapa de produção… …

Máquina - PCB Máquina - Display


Contém os seguintes módulos: Contém os seguintes módulos :

Biblioteca Biblioteca
3x Conveyor belts 5x Conveyor belts
7x Motors 9x Motors
1x Tray handler full 2x Tray handler full
1x Tray handler empty 2x Tray handler
G empty
andler e

T
1x Picker 1x Picke
Picker
1x Delivery 1xx Delivery
elivery
6x Sensors L Sensors
10x S

Our DigiDemo machine

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 5 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 5 SIMATIC Visualization Architect
Tarefa
Geração automática de projeto

Problema:
O projeto HMI existente ainda pode ser usado. No entanto, a estrutura do equipamento
difere dos projetos. Isso significa que as tags e as telas não correspondem mais e devem ser
reconectadas e adaptadas.

HMI Copiar & colar HMI


PCB Adaptação Display
Faceplate Faceplate
Estrutura de layout (Valve1) (Valve2)
Faceplate Estrutura de tela
Programa do PLC (Valve1) Programa do PLC
Coexões
Faceplate
Nomes de objetos Faceplate
(Motor1)
Nomes de tags (Motor1)

FB (Valve1) FB (Motor1) FB (Valve1) FB (Motor1) FB (Valve2)

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 6 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 6 SIMATIC Visualization Architect
SiVArc no TIA Portal

• Geração automática de telas HMI, dependendo do


do programa do PLC

• Engenharia eficiente, reduzindo a configuração manual com


pouca sobrecarga adicional para a definição de regras

• Menos erros através da automação de etapas de trabalho


repetitivas Si V Arc
• Sincronização automática em caso de adaptações no
programa do PLC SIMATIC Visualização Architect

• Suporte de padrões através do uso de bibliotecas

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 7 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 7 SIMATIC Visualization Architect
Tarefa
Crie visualização com base nos dados existentes

Biblioteca
PLC blocks HMI faceplates

Equivalence

Motor Conveyor belt Sensor Motor Conveyor beltSensor

Equivalence
Programa de PLC HMI Tarefa
FB 1 – Motors Motors screen Criando HMI
Mesma
estrutura • Criando telas
• Criando faceplate sem telas
Motor1 Motor1
Motor2 Motor2 • Criando tags HMI
Motor3 Motor3
• Interconectando objetos de tela
Motor4
r4 com tags HMI
Motor4
Motor5 Motor5
Moto
Motor6 Motor6
• Nomeando objetos
FB 1 – Belts screen ...
Conveyor belts …

O que nós temos? Bibliotecas com FBs


Bs e Faceplates. São equivalentes e têm uma relação direta entre si
SITRAIN © Siemens AG 2018 TIA-SIVARC
Programa do PLC com uma certa estrutura
Page 8 O que nós queremos? HMI com a mesma estrutura que no PLC Options of Automatic Visualization Generation

O que nós temos?


Bibliotecas com FBs e Faceplates. São equivalentes e têm uma relação direta entre si
Æ Programa do PLC com uma certa estrutura

O que nós queremos?


HMI com a mesma estrutura que no PLC

SITRAIN TIA-SiVArc
Training for Industry Page 8 SIMATIC Visualization Architect
Solução
SiVArc

Biblioteca Gerar tag (tabelas)


PLC blocks HMI faceplates Tabela de
tags (insira
Equivalence tag, se
IDB IDB necessário)
Motor Conveyor belt Sensor Motor Conveyor beltSensor
(Motor_1) (Motor_7)

Programa do PLC HMI Dinamizando objetos


FB 1 – Motors Tela de motores
SiVArc Propriedades SiVArc

Motor1 Motor1
Motor2 Motor Motor
Motor2
Motor3 Motor3
Propriedades Propriedades

Motor4 Estrutura de ligação Motor4


r4 • Nome da instância • Nome do objeto
Motor5 Motor5
Moto • Nome do elemento • Interconexão de
Motor6 Regra SiVArc Motor6 tags
FB 1 – Belts screen ...
Copiar regras
Conveyor belts … Motor
A
Motor

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 9 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 9 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 10 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 10 SIMATIC Visualization Architect
Objetivos

Ao final do capítulo, o participante irá ...

... familiarize-se com a geração de telas da HMI baseada em regras


do SiVArc

… crie algumas regras para a geração de tela HMI como um exercício

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 11 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 11 SIMATIC Visualization Architect
Resultado para a máquina Digi Demo

Resultado
Máquina de digitalização HMI

4 telas da planta geradas com SiVArc

SiVArc

Nesse curso …
SITRAIN © Siemens AG 2018 Gerando duas telas da planta com o SiVArc TIA-SIVARC
Page 12 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 12 SIMATIC Visualization Architect
SIMATIC Visualization Architect
Design modular

Equivalência - Programa de controle / HMI Atribuição usando regras SiVArc

PLC block HMI (Screen)


Performance

Faceplate HMI screen (master copy)


IDB (Motor_1) (Motor_1)

Faceplate
FB (Motor) (Motor)

FB (Motor) Faceplate
Resultado:
IDB (Motor_2) (Motor_2)

HMI screen

T
PLC
Faceplate
(Motor) Faceplate
IDB
DB (Motor_1)
( _ )
(Motor)

Faceplate Faceplate Faceplate


IDB (Motor_2)
IDB (Motor_3) (Motor_3) (Motor) (Motor)
IDB (Motor_3) Faceplate
Faceplate (Motor)
(Motor)

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 13 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 13 SIMATIC Visualization Architect
Exercício 1: Gerar tela e objeto na tela

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 14 Options of Automatic Visualization Generation

Task description Retrieve the start project "ExerciseStart.zap15_1". It is located under:


C:\02 _Archives\TIA_Portal\TIA-SIVARC
Use SiVArc to generate a screen with a faceplate.
Create a screen rule for this. The screen rule should be executed with the program
block "CBas_CmAxisV90". When the rule is executed, SiVArc creates a screen on
which the "FP_Motor" faceplate is placed. The screen must be selected from the
master copies. To do this, create a screen with the following properties:
Name: "Template_Motor_Overview"
Size 1366x648;
Background 45,45,47;
Text field with the text "Motors"
Now generate your visualization and take a look at the result.

Now move the "FP_Motor" faceplate in i the screen to the center of the screen.
Also create a text field.
d. Generate the visualization again.
What has changedged in the screen?
s What conclusion can you draw from this?

…………………………………………………………………………………………………………………………

Delete the generated screen. Generate the visualization again.


What do you see?

…………………………………………………………………………………………………………………………

Disable the created screen rule and generate the visualization.


What has changed in the visualization?

…………………………………………………………………………………………………………………………
You will find a detailed description of the procedure on the next page.

SITRAIN TIA-SiVArc
Training for Industry Page 14 SIMATIC Visualization Architect
Procedimento 1. Recuperar o projeto inicial "ExerciseStart.zap15_1". Está localizado em:
C:\02_Archives\TIA_Portal\TIA-SIVARC

2. Crie uma nova tela na HMI com as seguintes propriedades:


Nome: "Template_Motor_Overview"
Tamanho 1366x648;
Background 45,45,47;
Campo de texto com o texto "Motors"

3. Salve a tela na biblioteca de projetos nas “master copies”.

4. Crie uma nova regra SiVArc (Você pode encontrar o editor para as regras do
SiVArc na árvore do projeto em "Common data").

5. Use o bloco de funções "CBas_CmAxisV90"


as_CmAxis como o bloco do programa e o
faceplate "FP_Motor" como
omo um objeto
o de tela. Você pode encontrar os dois na
biblioteca do projeto
eto em Types
Typ > Workshop_SiVArc.

6. Gere sua visualização. Para isso, pode ser necessário compilar seu CLP. A senha
do PLC é “SITRAIN”. Veja o resultado.

7. Responda às perguntas na descrição da tarefa.

SITRAIN TIA-SiVArc
Training for Industry Page 15 SIMATIC Visualization Architect
Procedimento 1. Recuperar o projeto inicial "ExerciseStart.zap15_1". Está localizado em:
C:\02_Archives\TIA_Portal\TIA-SIVARC

2. Crie uma nova tela na HMI com as seguintes propriedades:


Nome: "Template_Motor_Overview"
Tamanho 1366x648;
Background 45,45,47;
Campo de texto com o texto "Motors"

3. Salve a tela na biblioteca de projetos nas “master copies”.

4. Crie uma nova regra SiVArc (Você pode encontrar o editor para as regras do
SiVArc na árvore do projeto em "Common data").

5. Use o bloco de funções "CBas_CmAxisV90"


as_CmAxis como o bloco do programa e o
faceplate "FP_Motor" como
omo um objeto
o de tela. Você pode encontrar os dois na
biblioteca do projeto
eto em Types
Typ > Workshop_SiVArc.

6. Gere sua visualização. Para isso, pode ser necessário compilar seu CLP. A senha
do PLC é “SITRAIN”. Veja o resultado.

7. Responda às perguntas na descrição da tarefa.

SITRAIN TIA-SiVArc
Training for Industry Page 16 SIMATIC Visualization Architect
Procedimento 1. Recuperar o projeto inicial "ExerciseStart.zap15_1". Está localizado em:
C:\02_Archives\TIA_Portal\TIA-SIVARC

2. Crie uma nova tela na HMI com as seguintes propriedades:


Nome: "Template_Motor_Overview"
Tamanho 1366x648;
Background 45,45,47;
Campo de texto com o texto "Motors"

3. Salve a tela na biblioteca de projetos nas “master copies”.

4. Crie uma nova regra SiVArc (Você pode encontrar o editor para as regras do
SiVArc na árvore do projeto em "Common data").

5. Use o bloco de funções "CBas_CmAxisV90"


as_CmAxis como o bloco do programa e o
faceplate "FP_Motor" como
omo um objeto
o de tela. Você pode encontrar os dois na
biblioteca do projeto
eto em Types
Typ > Workshop_SiVArc.

6. Gere sua visualização. Para isso, pode ser necessário compilar seu CLP. A senha
do PLC é “SITRAIN”. Veja o resultado.

7. Responda às perguntas na descrição da tarefa.

SITRAIN TIA-SiVArc
Training for Industry Page 17 SIMATIC Visualization Architect
Procedimento 1. Recuperar o projeto inicial "ExerciseStart.zap15_1". Está localizado em:
C:\02_Archives\TIA_Portal\TIA-SIVARC

2. Crie uma nova tela na HMI com as seguintes propriedades:


Nome: "Template_Motor_Overview"
Tamanho 1366x648;
Background 45,45,47;
Campo de texto com o texto "Motors"

3. Salve a tela na biblioteca de projetos nas “master copies”.

4. Crie uma nova regra SiVArc (Você pode encontrar o editor para as regras do
SiVArc na árvore do projeto em "Common data").

5. Use o bloco de funções "CBas_CmAxisV90"


as_CmAxis como o bloco do programa e o
faceplate "FP_Motor" como
omo um objeto
o de tela. Você pode encontrar os dois na
biblioteca do projeto
eto em Types
Typ > Workshop_SiVArc.

6. Gere sua visualização. Para isso, pode ser necessário compilar seu CLP. A senha
do PLC é “SITRAIN”. Veja o resultado.

7. Responda às perguntas na descrição da tarefa.

SITRAIN TIA-SiVArc
Training for Industry Page 18 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 19 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 19 SIMATIC Visualization Architect
Objetivos

No final do capítulo, o participante irá ...

... familiarize-se com as possibilidades de dinamizar telas de HMI

… familiarizar-se com as possibilidades de recuperar dados de blocos


de chamada

… criar faceplates de HMI dinâmicas em um exercício

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 20 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 20 SIMATIC Visualization Architect
Propriedades do SiVArc e tags predefinidas
Gerando telas

Biblioteca
Tela HMI

Programa do
PLC
Propriedades do Objeto do HMI
Objeto de HMI SiVArc properties objeto

Name Tag Nome

Trigger block Process value Tag Valor do processo


Propriedades do Propriedades do
Script parameter Tag Parâmetro de script
objeto objeto

Propriedades do IDB
SiVArc Tag predefinida

Geração
PL
- Nas propriedades do SiVArc,
VArc, é possível
poss definir qual propriedade do objeto deve ser atribuída
dinamicamente
SITRAIN © Siemens AG 2018 - A propriedade do objeto é especificada com variáveis predefinidas TIA-SIVARC
Page 21 - As variáveis predefinidas nos dizem qual propriedade do PLC é usada Options of Automatic Visualization Generation

SiVArc properties:
- In the properties of SiVArc, one can set which object property should be assigned dynamically
- The object property is specified with pre-defined variables
- The pre-defined variables tell us which property of the PLC is used

SITRAIN TIA-SiVArc
Training for Industry Page 21 SIMATIC Visualization Architect
Recuperando informações do programa do PLC

Resultado

Tags predefinidas
Fonte de informação
Programa do PLC

Título do network Faceplate


Block.NetworkTitle

Comentário do netw. Block.Comment


Propriedades
Nome do FB SiVArc
Block.SymbolicName
Nome do objeto
Instance DB Block.DB.SymbolicName
Valor do processo

A
Parâmetros do bloco Propriedades do objeto
"Color")
Block.Parameter("Color") Campo de texto
Nome do objeto Tank_Blue

Valor do processo Fill level

Campo de texto Blue

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 22 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 22 SIMATIC Visualization Architect
Tags predefinidas
Acessando informações de blocos de nível superior

Tag predefinida:
Acesso ao nível mais
FB1
StructureBlock.SymbolicName
alto da hierarquia Ou:
..DB.SymbolicName

Acesso a um
nível hierárquico
acima
FB2 FB4 FB3 Tag predefinida:
.DB.SymbolicName

Acesso ao
A G
bloco de
gatilho
FB4 FB5
5 PLCTFB
FB5 Tag predefinida:
Block.DB.SymbolicName

SITRAIN © Siemens AG 2018


Access to Information above
E
e the level of the trigger block
tsel with variable Block.DB.SymbolicName
-Access to the trigger block itself
-Access to one level above the trigger block with variable .DB.SymbolicName
TIA-SIVARC
Page 23 Options of Automatic Visualization Generation
-Access to the highest hierarchical level with variable StructureBlock.SymbolicName

Access to Information above the level of the trigger block

-Access to the trigger block itself with variable Block.DB.SymbolicName


-Access to one level above the trigger block with variable .DB.SymbolicName
-Access to the highest hierarchical level with variable StructureBlock.SymbolicName

SITRAIN TIA-SiVArc
Training for Industry Page 23 SIMATIC Visualization Architect
Exercício 2: Gerando várias instâncias do faceplate

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 24 Options of Automatic Visualization Generation

Descrição da tarefa
Adapte o SiVArc a propriedade "Name" do faceplate "FP_Motor" para que todas
as instâncias do motor sejam geradas na tela. Um total de sete objetos devem ser
gerados. Se menos objetos forem gerados, leia os avisos emitidos durante a
geração do SiVArc. No “Help” do TIA Portal, você também pode ler sobre quais
propriedades do objeto você pode acessar para gerar um nome exclusivo para o
objeto.

Além disso, a placa frontal deve mostrar qual motor está envolvido. Os nomes
necessários estão emoldurados em vermelho na parte superior da tela. O nome
consiste no nome da instância mais alta e parte
p do nome da próxima instância
mais alta do bloco acionador. (veja
veja as páginas
pág seguintes para esclarecimentos)

Nota Os nomes de instância


ância ou blo
bloco podem ser combinados com o operador '&’. Por
exemplo Block.DB.SymbolicName
k.DB.Sy & .DB.SymbolicName
Nesse caso, o nome da instância do bloco acionador e o nome da instância de
nível superior são combinados.

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 24 SIMATIC Visualization Architect
Exercício 2:
Visão geral do bloco do PLC com instâncias

Para que o nome correspondente seja exibido na placa do motor,


deve ser derivado do programa do PLC.
Instance name, Você pode ver a estrutura do programa PLC em que o bloco de
Block name referência "Cbas_CmAxisV90" é chamado.
ConveyorCall

Inst101_BC101, Inst102_BC102, Inst103_BC103, Inst201_TH201, Inst202_PU202, Inst203_TH203,


FBU_101_BC101 FBU_102_BC102 FBU_103_BC103 FBU_201_TH201 FBU_202_PU202 FBU_203_TH203

Unit, Unit, Unit, Unit, Unit,


Unit,
Cconv_Unit1 Cconv_Unit1 Cconv_Unit1 CConv_UnitFull CConv_UnitEmpty
Cconv_UnitPicker
Zone1Drv90 Zone1Drv90 Zone1Drv90 TrayHandler TrayHandler

instEmDrive, instEmDrive, instEmDrive, instEmAxisZ, instEmAxisX,


instEm instEmAxisY, instEmAxisZ,
Cconv_Em1DrvV90 Cconv_Em1DrvV90 Cconv_Em1DrvV90 CConv_EmAxis CConv_EmAxis
CC Cconv_EmAxis CConv_EmAxis

instMotor; instMotor; instMotor; instCmMotorV90,


instC instCmMotorV90, instCmMotorV90, instCmMotorV90,
CBas_CmAxisV90 CBas_CmAxisV90
S
CBas_CmAxisV90
mAxisV90 Cbas_CmAxisV90 Cbas_CmAxisV90 Cbas_CmAxisV90 Cbas_CmAxisV90

SITRAIN © Siemens AG 2018 Cuidado! Os nomes não são únicos TIA-SIVARC


Page 25 Options of Automatic Visualization Generation

Para que o nome correspondente seja exibido na placa do motor,


deve ser derivado do programa do PLC.
Você pode ver a estrutura do programa PLC na figura acima
em que o bloco de gatilho "Cbas_CmAxisV90" é chamado.

Procedimento 1. Defina o faceplate "FP_Motor“para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspector window”, em Plug-

AG
ins. Adapte a propriedade para a interface
erface "Text".
"

3. You need the "Replace" function to generate the text as desired. Learn more
about this in the TIA Portal Help.

4. Generate your visualization and take a look at the result.

SITRAIN TIA-SiVArc
Training for Industry Page 25 SIMATIC Visualization Architect
Exercício 2:
Parâmetros SiVArc no nível da instância

Ambiente de chamada ConveyorCall


Parâmetro
(Conveyors)
SiVArc
Ambiente de chamada Inst101_BC101, Inst201_TH201,
(Units) FBU_101_BC101 FBU_201_TH201 ...DB

Unit, Unit,
Unit Cconv_Unit1
Zone1Drv90
CConv_UnitFull
TrayHandler
..DB

Módulo de instEmDrive, instEmAxisX,


xisX instEmAxisZ,
.DB
equipamento Cconv_Em1DrvV90
T
CConv_EmAxis
nv_EmAxis CConv_EmAxis

instMotor; instCmMotorV90, instCmMotorV90,


Módulo de controle CBas_CmAxisV90 Cbas_CmAxisV90 Cbas_CmAxisV90 Block.DB
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 26 Options of Automatic Visualization Generation

Procedimento 1. Defina o bloco "FP_Motor" para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspetor window”, em Plug-


ins. Aqui você pode adaptar a propriedade ao nome do faceplate.

3. Libere o “type” e gere a visualização.

4. Quantos objetos foram gerados? Nem todos foram gerados com menos de sete
objetos motores. O motivo é que o nome não é exclusivo. Você pode ler sobre
isso nos avisos.

5. Informe-se
nforme-se vvia “Help” do TIA Portal, por exemplo,
sobre os objetos e propriedades
iedades SiVArc
S que você pode endereçar.

6. Adapte a propriedade SiVArc ao nome para obter


sete motores com a geração.

7. Gere sua visualização e veja o resultado.

8. Continue lendo na página seguinte.

SITRAIN TIA-SiVArc
Training for Industry Page 26 SIMATIC Visualization Architect
Exercício 2: Gerando várias instâncias do faceplate - Descrição da tarefa

Adapte o SiVArc a propriedade "Name" do faceplate "FP_Motor" para que todas as


instâncias do motor sejam geradas na tela. Um total de sete objetos devem ser gerados.
Se menos objetos forem gerados, leia os avisos emitidos durante a geração do SiVArc.

No “Help” do TIA Portal, você também pode ler sobre quais propriedades do objeto você pode
acessar para gerar um nome exclusivo para o objeto.

Além disso, o faceplate deve mostrar qual motor está envolvido. Os nomes necessários estão
emoldurados em vermelho na parte superior da tela.

O nome (text) consiste no nome da instância mais alta e parte do nome da próxima
seguin
instância mais alta do bloco acionador. (veja as páginas seguintes para esclarecimentos)

Nota Os nomes de instância ou bloco podem m ser combinados


combi com o operador '&’. Por
.SymbolicN
exemplo Block.DB.SymbolicName & .DB.SymbolicName
acio
Nesse caso, o nome da instância do bloco acionador e o nome da instância de nível superior
são combinados.
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 27 Options of Automatic Visualization Generation

Descrição da tarefa
Adapte o SiVArc a propriedade "Name" do faceplate "FP_Motor" para que todas
as instâncias do motor sejam geradas na tela. Um total de sete objetos devem ser
gerados. Se menos objetos forem gerados, leia os avisos emitidos durante a
geração do SiVArc. No “Help” do TIA Portal, você também pode ler sobre quais
propriedades do objeto você pode acessar para gerar um nome exclusivo para o
objeto.

Além disso, a placa frontal deve mostrar qual motor está envolvido. Os nomes
necessários estão emoldurados em vermelho na parte superior da tela. O nome
consiste no nome da instância mais alta e parte
p do nome da próxima instância
mais alta do bloco acionador. (veja
veja as páginas
pág seguintes para esclarecimentos)

Nota Os nomes de instância


ância ou blo
bloco podem ser combinados com o operador '&’. Por
exemplo Block.DB.SymbolicName
k.DB.Sy & .DB.SymbolicName
Nesse caso, o nome da instância do bloco acionador e o nome da instância de
nível superior são combinados.

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 27 SIMATIC Visualization Architect
Exercício 2:
Nome do faceplate no nível da instância

1. Ative novamente a regra e gere a visualização.

2. Quantos objetos foram gerados?


Nem todos os sete objetos motores foram gerados?
Veja os avisos do log de geração. O motivo é que o nome não é exclusivo.
Você pode ler sobre isso nos avisos.
Informe-se via “Help” do TIA Portal, por exemplo, sobre os objetos e
propriedades SiVArc que você pode endereçar.

3. Você pode encontrar as propriedades SiVArc na “Inspetor window”, em


Plug-ins do faceplate FB_Motor. Aqui você pode adaptar a propriedade ao
nome do faceplate. Por exemplo, combine instance DB e instance DB do
bloco que o chama.

4. Libere o “type” e gere a visualização


5. Adapte a propriedade SiVArc ao nome para obter sete motores com a
geração.
6. Gere sua visualização e veja o resultado.
7. Continue lendo na página seguinte.
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 28 Options of Automatic Visualization Generation

Procedimento 1. Defina o bloco "FP_Motor" para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspetor window”, em Plug-


ins. Aqui você pode adaptar a propriedade ao nome do faceplate.

3. Libere o “type” e gere a visualização.

4. Quantos objetos foram gerados? Nem todos foram gerados com menos de sete
objetos motores. O motivo é que o nome não é exclusivo. Você pode ler sobre
isso nos avisos.

T A
C
5. Informe-se
nforme-se via
v “Help” do TIA Portal, por exemplo,
SP
sobre os objetos e propriedades
iedades SiVArc
S que você pode endereçar.

6. Adapte a propriedade SiVArc ao nome para obter


sete motores com a geração.

7. Gere sua visualização e veja o resultado.

8. Continue lendo na página seguinte.

SITRAIN TIA-SiVArc
Training for Industry Page 28 SIMATIC Visualization Architect
Exercício 2:
Visão geral do bloco do PLC com instâncias - Procedimento

1. Defina o faceplate "FP_Motor“para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspector window”, em Plug-ins. Adapte a propriedade
para a interface "Text". (você vai precisar da função “Replace” para compor o nome como desejado).
Aprenda mais sobre isto no help do TIA Portal

3. Gere os objetos e veja o resultado.

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 29 Options of Automatic Visualization Generation

Para que o nome correspondente seja exibido na placa do motor,


deve ser derivado do programa do PLC.
Você pode ver a estrutura do programa PLC na figura acima
em que o bloco de gatilho "Cbas_CmAxisV90" é chamado.

Procedimento 1. Defina o faceplate "FP_Motor“para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspector window”, em Plug-

AG
ins. Adapte a propriedade para a interface
erface "Text".
"

3. You need the "Replace" function to generate the text as desired. Learn more
about this in the TIA Portal Help.

4. Generate your visualization and take a look at the result.

SITRAIN TIA-SiVArc
Training for Industry Page 29 SIMATIC Visualization Architect
Gerando Tags de Processo
Geração de tags

Requirement
Requisito Tag de HMI gerada Opções de geração adicionais

O atributo deve ser ativado para Configurações para tags


Nome da tag
cada tag do PLC.
Composição
Exemplo
(Instance) DB name + Separator + Element name

Example
Exemplo Example
Exemplo

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 30 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 30 SIMATIC Visualization Architect
Interconectar tags a objetos

PLC HMI

Block.DB.SymbolicName & "_Speed_act“

G
Generated tag

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 31 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 31 SIMATIC Visualization Architect
Exercício 3: Interconectando tags aos objetos gerados

RAS
O PLC type "cmHmiStatus" do bloco PLC passa o status
stat do motor para a HMI. Adapte as propriedades

ESD
SiVArc do faceplate "FP_Motor" para que os tags do bloco PLC sejam interconectados durante a geração.
Os tags usados devem ser criados da HMI.
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 32 Options of Automatic Visualization Generation

Descrição da tarefa
As tags do bloco equivalente devem ser geradas no painel frontal. O PLC type
"cmHmiStatus" foi criado no bloco PLC; que passa o status do motor para a HMI.
Adapte as propriedades SiVArc do faceplate "FP_Motor" para que o tag do bloco
PLC seja interconectado durante a geração.

Nota: O comando "Block.DB.HMITagPrefix" retorna o total, nome simbólico do bloco e


a estrutura de chamada de nível superior.

Procedimento m
1. Defina o faceplate "FP_Motor" para o modo de edição.

2. Você pode encontrar as propriedades


propriedad SiVArc na “Inspector window” em Plug-
ins. Adapte a propriedade
dade aqui "HMIData".
"

3. Libere o typee e gere


g a visualização.

4. Verifique se a tag correspondente foi gerada nas interfaces das faceplates


geradas.

SITRAIN TIA-SiVArc
Training for Industry Page 32 SIMATIC Visualization Architect
Exercício 3: Interconectando tags aos objetos gerados - Descrição da tarefa

Nota:
O comando "Block.DB.HMITagPrefix" retorna o nome simbólico do bloco e a estrutura de chamada de
nível superior.

Procedimento
1. Defina o faceplate "FP_Motor" para o modo de edição.

2. Você pode encontrar as propriedades SiVArc na “Inspector window” em Plug-ins. Adapte a propriedade
aqui "HMIData".

3. Libere o type e gere a visualização.

ES
gerad nas interfaces das faceplates geradas.
4. Verifique se a tag correspondente foi gerada
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 33 Options of Automatic Visualization Generation

Descrição da tarefa
As tags do bloco equivalente devem ser geradas no painel frontal. O PLC type
"cmHmiStatus" foi criado no bloco PLC; que passa o status do motor para a HMI.
Adapte as propriedades SiVArc do faceplate "FP_Motor" para que o tag do bloco
PLC seja interconectado durante a geração.

Nota: O comando "Block.DB.HMITagPrefix" retorna o total, nome simbólico do bloco e


a estrutura de chamada de nível superior.

Procedimento m
1. Defina o faceplate "FP_Motor" para o modo de edição.

2. Você pode encontrar as propriedades


propriedad SiVArc na “Inspector window” em Plug-
ins. Adapte a propriedade
dade aqui "HMIData".
"

3. Libere o typee e gere


g a visualização.

4. Verifique se a tag correspondente foi gerada nas interfaces das faceplates


geradas.

SITRAIN TIA-SiVArc
Training for Industry Page 33 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 34 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 34 SIMATIC Visualization Architect
Objetivos

Ao final do capítulo, o participante irá ...

... familiarize-se com como colocar as faceplates automaticamente

… criar regras para colocar as faceplates da HMI automaticamente


em um exercício

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 35 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 35 SIMATIC Visualization Architect
Campos de layout
Posicionamento de objetos gerados na tela

Etapa 1: Considere como você deseja que o layout seja

Grupo 1

Onde é que
objeto será
colocado? Object1 Object2 Object3
- Type1 - Type1 - Type1

Object4
ject4 Object5 Object6
A
CT
– Type2 – Type2 – Type2

Grupo 2 TIA-SIVARC
SITRAIN © Siemens AG 2018
Page 36 Options of Automatic Visualization Generation

Thoughts:
- Which Objects do belong to which group? Æ Most of the time, a certain object type is set to a
certain group
- Where should be objects of a group be placed?

SITRAIN TIA-SiVArc
Training for Industry Page 36 SIMATIC Visualization Architect
Campos de layout
Posicionamento de objetos gerados na tela

Etapa 2:
Step 2: Configurar retângulo como campo de layout

1. Ativar retângulo como campo de layout 2. Atribuir nome do grupo

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 37 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 37 SIMATIC Visualization Architect
Campo de layout
Posicionamento de objetos gerados na tela

Step 2:
Etapa 3: Criar layout com campos de layout

Tela HMI
concluída

Etapa 4: Atribuir nomes de grupos em regras de tela

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 38 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 38 SIMATIC Visualization Architect
Exercício 4: Posicionando objetos

Especifique o posicionamento da seguinte


maneira :

SITRAIN © Siemens AG 2018


ES
As faceplates do motor geradas
gera
geração. Para fazerr isso,
is
devem ser posicionadas em lugar determinado durante a
adapte o modelo de geração "Template_Motor_Overview" e a TIA-SIVARC
Page 39 regra de tela de acordo. Options of Automatic Visualization Generation

Descrição da tarefa
As faceplates do motor geradas devem ser posicionadas imediatamente durante a
geração. Para fazer isso, adapte o modelo de geração
"Template_Motor_Overview" e a regra de tela de acordo.

Nota: Como o SiVArc gera as faceplates com base na estrutura de chamada do PLC, a
estrutura de chamada não deve ser alterada posteriormente.

Procedimento 1. Arraste o modelo da tela "Template_Motor_Overview" da sua biblioteca para


o seu projeto.

2. Abra uma tela e arraste um retângulo


retângu para dentro da tela. Declarar isso como
um campo de layout.

3. Nomeie o campo
amp de posição "Motor". Adapte o tamanho do campo de posição
ao tamanho da faceplate (dica: O tamanho do faceplate é 270x200).

4. Duplique o campo de posição e distribua-o no modelo conforme mostrado na


tela acima. Preste atenção na ordem em que os objetos são gerados.
Para fazer isso, você pode obter a visão geral do bloco PLC desde o último
exercício.

5. Gere sua visualização e verifique o resultado.

SITRAIN TIA-SiVArc
Training for Industry Page 39 SIMATIC Visualization Architect
Exercício 4: Posicionando objetos - Procedimento

Nota: Como o SiVArc gera as faceplates com base na estrutura de chamada do PLC, a estrutura de
chamada não deve ser alterada posteriormente.

1. Arraste o modelo da tela "Template_Motor_Overview" da sua biblioteca para o seu projeto.

2. Abra uma tela e arraste um retângulo para dentro da tela. Declarar isso como um campo de layout.

3. Nomeie o campo de posição "Motor". Adapte o tamanho do campo de posição ao tamanho da faceplate
(dica: O tamanho do faceplate é 270x200).

4. Duplique o campo de posição e distribua-o no modelo conforme mostrado na tela acima. Preste atenção
na ordem em que os objetos são gerados (baseie-se na imagem da pagina anterior).

a editada.
5. Apague o original da library e arraste de volta a tela

les, para associá-la


6. Adapte as propriedades da Screen_Rules, a ao grupo Motor

res
5. Gere sua visualização e verifique o resultado.
TIA-SIVARC
Page 40 Opcional: diminua o nr. de retângulos e veja o resultado.
SITRAIN © Siemens AG 2018
Options of Automatic Visualization Generation

Descrição da tarefa
As faceplates do motor geradas devem ser posicionadas imediatamente durante a
geração. Para fazer isso, adapte o modelo de geração
"Template_Motor_Overview" e a regra de tela de acordo.

Nota: Como o SiVArc gera as faceplates com base na estrutura de chamada do PLC, a
estrutura de chamada não deve ser alterada posteriormente.

Procedimento 1. Arraste o modelo da tela "Template_Motor_Overview" da sua biblioteca para


o seu projeto.

2. Abra uma tela e arraste um retângulo


retângu para dentro da tela. Declarar isso como
um campo de layout.

3. Nomeie o campo
amp de posição "Motor". Adapte o tamanho do campo de posição
ao tamanho da faceplate (dica: O tamanho do faceplate é 270x200).

4. Duplique o campo de posição e distribua-o no modelo conforme mostrado na


tela acima. Preste atenção na ordem em que os objetos são gerados.
Para fazer isso, você pode obter a visão geral do bloco PLC desde o último
exercício.

5. Gere sua visualização e verifique o resultado.

SITRAIN TIA-SiVArc
Training for Industry Page 40 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 41 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 41 SIMATIC Visualization Architect
Objetivos

Ao final do capítulo, o participante irá...

… saber copiar elementos que são frequentemente usados pelo uso


da “Copy rule”

… estar familiarizado com regras condicionais

… familiarizar-se com o uso de layouts com base no nome da CPU

… poder gerar listas de texto com o SiVArc

… copiar elementos de uma biblioteca e criar listas de texto


automaticamente em um exercício

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 42 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 42 SIMATIC Visualization Architect
Copy rules
Copiar objetos da biblioteca para o projeto

Biblioteca Projeto

Copy rules

LC
Propriedades Os objetos são copiados para o projeto independentemente do programa do PLC.

Aplicações
R
Exemplo: Telas raiz sempre
se necessárias, independentemente do projeto do PLC

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 43 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 43 SIMATIC Visualization Architect
Tag generation – editor de regras
Tag generation

Como as tags geradas pelo SiVArc devem ser armazenadas?

Tabela de tags Hierarquia do grupo de tags

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 44 Options of Automatic Visualization Generation

Tag group hierarchy


Æ Folder shall be created similar to the PLC
Tag tables
Æ Tags shall be created similar to the PLC

Condition: Should a rule be performed?

SITRAIN TIA-SiVArc
Training for Industry Page 44 SIMATIC Visualization Architect
Exercício 5: Gerar tabelas de tags & copiar o layout de
visualização no projeto

a) Resultado: b)

DR
a) Salve as tags do PLC usadas estruturadas
estrutura na tabela de tags da HMI.
Use uma regra de tag
ES
g que simule estrutura
b) Geralmente, é necessário
e de pastas do PLC.
ssário copiar um layout central da biblioteca para a visualização recém-
SITRAIN © Siemens AG 2018 criada. Isso pode ser feito com uma regra de cópia. Use uma regra de cópia para copiar a pasta TIA-SIVARC
Page 45 de layout pronto para sua visualização. Options of Automatic Visualization Generation

Descrição da tarefa
a) Salve as tags do PLC usadas estruturadas na tabela de tags da HMI. Perceba
isso usando uma regra de tag. A regra da tag é simular a estrutura de pastas do
PLC.

Nota: A ajuda online lista os comandos disponíveis para uma regra de tag.

Descrição da Tarefa
b) Geralmente, é necessário copiar um layout central da biblioteca para a
visualização recém-criada. Isso pode ser
er feito
feit com uma regra de cópia. Use uma
regra de cópia para copiar a pasta
sta de layout
layo pronto para sua visualização.

Gere sua visualização e verifique seu


eu resultado.
resu

SITRAIN TIA-SiVArc
Training for Industry Page 45 SIMATIC Visualization Architect
Exercício 5: Gerar tabelas de tags & copiar o layout de
visualização no projeto

a) Salve as tags do PLC usadas estruturadas na tabela de tags da HMI. Perceba isso usando uma regra
de tag. A regra da tag é simular a estrutura de pastas do PLC.

Nota: A ajuda online lista os comandos disponíveis para uma regra de tag.
Na hora de executar o SiVArc, você pode escolher entre gerar todos os Tags ou só os em
uso no HMI (recomendado !!!).
b) Geralmente, é necessário copiar um layout central da biblioteca para a visualização recém-criada. Isso
pode ser feito com uma regra de cópia. Use uma regra de cópia para copiar a pasta de layout pronto para
sua visualização.

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 46 Options of Automatic Visualization Generation

Descrição da tarefa
a) Salve as tags do PLC usadas estruturadas na tabela de tags da HMI. Perceba
isso usando uma regra de tag. A regra da tag é simular a estrutura de pastas do
PLC.

Nota: A ajuda online lista os comandos disponíveis para uma regra de tag.

Descrição da Tarefa
b) Geralmente, é necessário copiar um layout central da biblioteca para a
visualização recém-criada. Isso pode ser
er feito
feit com uma regra de cópia. Use uma
regra de cópia para copiar a pasta
sta de layout
layo pronto para sua visualização.

Gere sua visualização e verifique seu


eu resultado.
resu

SITRAIN TIA-SiVArc
Training for Industry Page 46 SIMATIC Visualization Architect
Condições nas regras do SiVArc
Geração de um projeto completo

Regra com condição

solicitação Exemplo
True, False,
Regra inteira IF Executar regra? Block.SymbolicName = „xy“

IF Executar geração?

IF Executar geração?
HMI
Screen
Instanz
IF Executar geração?
HMI
Screen
Cada geração Block.DB.SymbolicName= „xy“

G
Instanz
Bildobjekt
HMI
Screen
Scree
Instance
Bildobjekt

Screenobject

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 47 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 47 SIMATIC Visualization Architect
Exercício 6: Geração condicional

Dois tipos diferentes de motores são instalados na


máquina.
No PLC, o mesmo bloco (FB) é usado para controlar os
dois tipos de motores.
Relação :
O tipo de controle é indicado pelo nome da instância:
"instMotor" para correias transportadoras e
"instCmMotorV90" para eixos.

No entanto, deve haver uma distinção na HMI.


Para esse fim, dois tipos diferentes faceplate devem ser
gerados na tela "Template_Motor_Overview":
"FP_Motor" para as correias transportadoras e
"FP_MotorV90" para os eixos.
Resultado:
Cum
Cumpra esse requisito usando uma condição para a regra
de tela.

Nota  Uma segunda regra de tela é necessária.


 Pode ser que a adaptação do faceplate
FP_MotorV90 seja necessário!

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 48 Options of Automatic Visualization Generation

Descrição da tarefa
Dois tipos diferentes de motores são instalados na máquina. No PLC, o mesmo
bloco (FB) é usado para controlar os dois tipos de motores. O tipo de controle é
indicado pelo nome da instância:
"instMotor" para as correias transportadoras e
"instCmMotorV90" para os eixos.

No entanto, deve haver uma distinção na HMI. Para esse fim, dois tipos diferentes
de placas de motor devem ser gerados na tela "Template_Motor_Overview":
"FP_Motor" para as correias transportadoras e
"FP_MotorV90" para os eixos.

Cumpra esse requisito uma condição para a regra de tela.


o usando u

Nota ͼ Uma segunda reregra de tela é necessária.


ͼ Pode ser que a adaptação do faceplate FP_MotorV90 seja necessário!

SITRAIN TIA-SiVArc
Training for Industry Page 48 SIMATIC Visualization Architect
Exercício 6: Geração condicional

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 49 Options of Automatic Visualization Generation

Descrição da tarefa
Dois tipos diferentes de motores são instalados na máquina. No PLC, o mesmo
bloco (FB) é usado para controlar os dois tipos de motores. O tipo de controle é
indicado pelo nome da instância:
"instMotor" para as correias transportadoras e
"instCmMotorV90" para os eixos.

No entanto, deve haver uma distinção na HMI. Para esse fim, dois tipos diferentes
de placas de motor devem ser gerados na tela "Template_Motor_Overview":
"FP_Motor" para as correias transportadoras e
"FP_MotorV90" para os eixos.

Cumpra esse requisito uma condição para a regra de tela.


o usando u

Nota ͼ Uma segunda reregra de tela é necessária.


ͼ Pode ser que a adaptação do faceplate FP_MotorV90 seja necessário!

SITRAIN TIA-SiVArc
Training for Industry Page 49 SIMATIC Visualization Architect
Dynamic Layout Fields
Posicionamento de objetos gerados na tela

Propriedades SiVarc (Mastercopy screen) Project Library

Seleção de Pasta Seleção de layout: Dinâmico


Declaração de quais layouts de
pasta serão selecionados.

Expression de Layout screen


Seleção de qual screen deve
ser usada como layout
SiVARc property
Exemplo: ..DB.SymbolicName = Machine1

Seleção de layout Resultado


Layout_Machine1 Layout_Machine2

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 50 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 50 SIMATIC Visualization Architect
Exercício 7:
Layouts dinâmicos

Layout PCB:
Layout display:

SITRAIN © Siemens AG 2018 Descrição da tarefa


a no próximo slide TIA-SIVARC
Page 51 Options of Automatic Visualization Generation

Descrição da tarefa
O padrão da planta e as regras SiVArc agora também devem ser usadas para
outras máquinas. Como outras máquinas possuem uma estrutura diferente, suas
HMIs devem ser entregues com layouts diferentes.
Um layout diferente deve ser utilizado, dependendo do nome da estação do PLC
(nome da máquina).
Para teste, a função de layouts dinâmicos deve ser implementada para a tela
"Template_Motors_Overview". O layout correspondente deve ser usado
dependendo do nome da planta.
Para fazer isso, crie os layouts apropriados
dos para
p o PCB da máquina e exiba e altere
o modelo dos motores para quee o layout seja usado dependendo do nome da
estação.

Além disso, a tela gerada


gerad não deve mais ser gerada com o nome
"Template_Motors_Overview",
to mas em vez disso com o nome
"Motors_Overview", o que melhora a nitidez e a clareza.

Nota Safety PW: SITRAIN

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 51 SIMATIC Visualization Architect
Exercício 7:
Layouts dinâmicos - Descrição da tarefa

O padrão da planta e as regras SiVArc agora também devem ser usadas para outras máquinas.
Como outras máquinas possuem uma estrutura diferente, suas HMIs devem ser entregues com layouts
diferentes.

Um layout diferente deve ser utilizado, dependendo do nome do PLC ( = nome da máquina).

Para teste, a função de layouts dinâmicos deve ser implementada para a tela "Template_Motors_Overview".
O layout correspondente deve ser usado dependendo do nome da planta.

Para fazer isso, crie os layouts apropriados para cada tipo de máquina e de modo que o layout correto seja
usado dependendo do nome da estação.

"T
Além disso, a tela gerada não deve mais ser gerada com o nome "Template_Motors_Overview", mas em vez
disso com o nome "Motors_Overview", o que melhora a a nitidez e a clareza.

Nota senha safety: SITRAIN

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 52 Options of Automatic Visualization Generation

Descrição da tarefa
O padrão da planta e as regras SiVArc agora também devem ser usadas para
outras máquinas. Como outras máquinas possuem uma estrutura diferente, suas
HMIs devem ser entregues com layouts diferentes.
Um layout diferente deve ser utilizado, dependendo do nome da estação do PLC
(nome da máquina).
Para teste, a função de layouts dinâmicos deve ser implementada para a tela
"Template_Motors_Overview". O layout correspondente deve ser usado
dependendo do nome da planta.
Para fazer isso, crie os layouts apropriados
dos para
p o PCB da máquina e exiba e altere
o modelo dos motores para quee o layout seja usado dependendo do nome da
estação.

Além disso, a tela gerada


gerad não deve mais ser gerada com o nome
"Template_Motors_Overview",
to mas em vez disso com o nome
"Motors_Overview", o que melhora a nitidez e a clareza.

Nota Safety PW: SITRAIN

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 52 SIMATIC Visualization Architect
Procedimento 1. Arraste o template "Template_Motor_Overview" da sua biblioteca para a sua
HMI.

2. Copie o template "Template_Motor_Overview" e insira duas vezes. Renomeie


as telas inseridas para "Layout_PCB" e "Layout_Display".

3. Organize os campos de posição para se adequar à tarefa. O campo de texto


com o rótulo "Motors" pode ser excluído agora.

4. Salve as duas telas de layout nas cópias principais em uma nova pasta. Nome
da pasta: "LayoutMachines"

5. Exclua os campos de posição na tela "Template_Motor_Overview" e altere as


propriedades SiVArc para a exibição:

6. Mude o nome do PLC para "Display", compile e gere sua visualização. Confira o
resultado.

SITRAIN TIA-SiVArc
Training for Industry Page 53 SIMATIC Visualization Architect
Procedimento 1. Arraste o template "Template_Motor_Overview" da sua biblioteca para a sua
HMI.

2. Copie o template "Template_Motor_Overview" e insira duas vezes. Renomeie


as telas inseridas para "Layout_PCB" e "Layout_Display".

3. Organize os campos de posição para se adequar à tarefa. O campo de texto


com o rótulo "Motors" pode ser excluído agora.

4. Salve as duas telas de layout nas cópias principais em uma nova pasta. Nome
da pasta: "LayoutMachines"

5. Exclua os campos de posição na tela "Template_Motor_Overview" e altere as


propriedades SiVArc para a exibição:

6. Mude o nome do PLC para "Display", compile e gere sua visualização. Confira o
resultado.

SITRAIN TIA-SiVArc
Training for Industry Page 54 SIMATIC Visualization Architect
Geração de listas de texto com base na lista de tags do PLC

Textlist template
Fonte Resultado
Definição da fonte dos textos

ES
Text List é gerado tendo como referência
referên a variável ligada a um parâmetro de um bloco.
Lengh indica quantas variáveis
áveis em
e sequencia da apontada devem ser acrescidas no text list.
SITRAIN © Siemens AG 2018 O comentário das variáveis são usadas como texto de referência. TIA-SIVARC
Page 55 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 55 SIMATIC Visualization Architect
Exercício 8: Gerando listas de texto

Relação da instância do bloco / tag do PLC :

Lista de texto do
resultado :

Sensor

Campo simbólico de I/O


Informações do resultado :
sobre qual
sensor está ativo

SITRAIN © Siemens AG 2018 Descrição da tarefa no proximo slide TIA-SIVARC


Options of Automatic Visualization Generation
Page 56

Descrição da tarefa
Na tela gerada "Motor_Overview", um display deve ser gerado para mostrar o
sensor atualmente ativo. Isso deve informar ao operador em qual transportador a
peça está.
O visor representa um campo simbólico de I/O. O campo de texto deve então ser
configurado com uma lista de texto contendo as entradas sobre as posições do
sensor. Durante o tempo de execução, as entradas da lista de texto são
selecionadas com a process tag "mSensorValue". O bloco de gatilho é
"sensor_assignment".
Primeiro, crie uma lista de texto vazia com m o nome "Template_Textlist". Nas
propriedades SiVArc, especifique que a lista deve ser gerada com o nome do bloco
e quais entradas devem ser er inseridas na lista. (em: Usar parâmetro de bloco e
tabela de símbolos, o parâmetro
parâmetr a ser usado é "In_Value")
Crie a regra dee lista de texto
t apropriada.
Agora crie o campo de texto simbólico com o nome "Template_Textfield". Adapte
as propriedades SiVArc para que a lista de texto correspondente e a process tag
"mSensorValue" são geradas com o nome do bloco acionador.

Note A lista de texto é criada a partir dos comentários das tags do PLC definidas. O
SiVArc obtém a referência a essas tags PLC através do bloco do PLC
"sensor_assignment".
O tag PLC relevante é anexado à respectiva instância do bloco na entrada
"In_Value".

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 56 SIMATIC Visualization Architect
Exercício 8: Gerando listas de texto - Descrição da tarefa

O sensor atualmente ativo deve ser indicado na tela "Motor_Overview", Isso deve informar ao operador em qual
transportador a peça está.

Esta indicação é feita através de um Simbolic IO field. O campo de texto deve então ser configurado com uma lista de
texto contendo as entradas sobre as posições do sensor. Durante o tempo de execução, as entradas da lista de texto
são selecionadas com a process tag "mSensorValue". O bloco de referência é "sensor_assignment".

Primeiro, crie uma lista de texto vazia com o nome "Template_Textlist". Nas propriedades SiVArc, especifique que a
lista deve ser gerada com o nome do bloco e quais entradas devem ser inseridas na lista. (em: User Block parameter
and relevant PLC tag, o parâmetro a ser usado é "In_Value")

Crie a regra de lista de texto apropriada.

pte as propriedades
Agora crie symbolic IO field com o nome "Template_Textfield". Adapte p SiVArc para que a lista de texto
correspondente e a process tag "mSensorValue" sejam geradass com o nome
n do bloco acionador.

Note mentários das


A lista de texto é criada a partir dos comentários da tags do PLC definidas.
O SiVArc obtém a referência a essas tags PLC P através do bloco do PLC "sensor_assignment".
O tag PLC relevante é anexado o à respectiva
resp instância do bloco na entrada "In_Value".
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 57 Options of Automatic Visualization Generation

Descrição da tarefa
Na tela gerada "Motor_Overview", um display deve ser gerado para mostrar o
sensor atualmente ativo. Isso deve informar ao operador em qual transportador a
peça está.
O visor representa um campo simbólico de I/O. O campo de texto deve então ser
configurado com uma lista de texto contendo as entradas sobre as posições do
sensor. Durante o tempo de execução, as entradas da lista de texto são
selecionadas com a process tag "mSensorValue". O bloco de gatilho é
"sensor_assignment".
Primeiro, crie uma lista de texto vazia com m o nome "Template_Textlist". Nas
propriedades SiVArc, especifique que a lista deve ser gerada com o nome do bloco
e quais entradas devem ser er inseridas na lista. (em: Usar parâmetro de bloco e
tabela de símbolos, o parâmetro
parâmetr a ser usado é "In_Value")
Crie a regra dee lista de texto
t apropriada.
Agora crie o campo de texto simbólico com o nome "Template_Textfield". Adapte
as propriedades SiVArc para que a lista de texto correspondente e a process tag
"mSensorValue" são geradas com o nome do bloco acionador.

Note A lista de texto é criada a partir dos comentários das tags do PLC definidas. O
SiVArc obtém a referência a essas tags PLC através do bloco do PLC
"sensor_assignment".
O tag PLC relevante é anexado à respectiva instância do bloco na entrada
"In_Value".

Você encontrará uma descrição detalhada do procedimento na próxima página.

SITRAIN TIA-SiVArc
Training for Industry Page 57 SIMATIC Visualization Architect
Criando e gerando listas de texto
Procedimento 1. Crie uma nova lista de texto com o nome "Template_Textlist".

2. Na lista de texto recém-criada, defina as propriedades do SiVArc.

3. Salve a lista de texto na biblioteca


eca do projeto
pro nas cópias principais.

4. Crie uma regra de lista de texto


te que é acionada com o bloco de gatilho
"sensor_assignment"
nment" e gere
g a lista de texto.

5. Gere sua visualização e verifique a lista de texto gerada.

Ter um campo de E / S simbólico criado e gerado


Procedimento 1. Crie um campo simbólico de I/O com o nome "Template_symbolic I/O field".

2. No campo de I/O recém-criado, defina as propriedades do SiVArc.

DR
E
3. Salve o campoS
mpo de I/O na biblioteca do projeto, no diretório “master copies”.

4. Crie uma regra de tela que é acionada com o bloco de gatilho


"sensor_assignment" e gera o campo simbólico de I/O na tela
"Template_Motor_Overview".

5. Gere sua visualização e verifique a lista de texto gerada.

Nota A tag "mSensorValue" deve ser criada manualmente.

SITRAIN TIA-SiVArc
Training for Industry Page 58 SIMATIC Visualization Architect
Criando e gerando listas de texto
Procedimento 1. Crie uma nova lista de texto com o nome "Template_Textlist".

2. Na lista de texto recém-criada, defina as propriedades do SiVArc.

3. Salve a lista de texto na biblioteca


eca do projeto
pro nas cópias principais.

4. Crie uma regra de lista de texto


te que é acionada com o bloco de gatilho
"sensor_assignment"
nment" e gere
g a lista de texto.

5. Gere sua visualização e verifique a lista de texto gerada.

Ter um campo de E / S simbólico criado e gerado


Procedimento 1. Crie um campo simbólico de I/O com o nome "Template_symbolic I/O field".

2. No campo de I/O recém-criado, defina as propriedades do SiVArc.

DR
E
3. Salve o campoS
mpo de I/O na biblioteca do projeto, no diretório “master copies”.

4. Crie uma regra de tela que é acionada com o bloco de gatilho


"sensor_assignment" e gera o campo simbólico de I/O na tela
"Template_Motor_Overview".

5. Gere sua visualização e verifique a lista de texto gerada.

Nota A tag "mSensorValue" deve ser criada manualmente.

SITRAIN TIA-SiVArc
Training for Industry Page 59 SIMATIC Visualization Architect
Criando e gerando listas de texto
Procedimento 1. Crie uma nova lista de texto com o nome "Template_Textlist".

2. Na lista de texto recém-criada, defina as propriedades do SiVArc.

3. Salve a lista de texto na biblioteca


eca do projeto
pro nas cópias principais.

4. Crie uma regra de lista de texto


te que é acionada com o bloco de gatilho
"sensor_assignment"
nment" e gere
g a lista de texto.

5. Gere sua visualização e verifique a lista de texto gerada.

Ter um campo de E / S simbólico criado e gerado


Procedimento 1. Crie um campo simbólico de I/O com o nome "Template_symbolic I/O field".

2. No campo de I/O recém-criado, defina as propriedades do SiVArc.

DR
E
3. Salve o campoS
mpo de I/O na biblioteca do projeto, no diretório “master copies”.

4. Crie uma regra de tela que é acionada com o bloco de gatilho


"sensor_assignment" e gera o campo simbólico de I/O na tela
"Template_Motor_Overview".

5. Gere sua visualização e verifique a lista de texto gerada.

Nota A tag "mSensorValue" deve ser criada manualmente.

SITRAIN TIA-SiVArc
Training for Industry Page 60 SIMATIC Visualization Architect
Criando e gerando listas de texto
Procedimento 1. Crie uma nova lista de texto com o nome "Template_Textlist".

2. Na lista de texto recém-criada, defina as propriedades do SiVArc.

3. Salve a lista de texto na biblioteca


eca do projeto
pro nas cópias principais.

4. Crie uma regra de lista de texto


te que é acionada com o bloco de gatilho
"sensor_assignment"
nment" e gere
g a lista de texto.

5. Gere sua visualização e verifique a lista de texto gerada.

Ter um campo de E / S simbólico criado e gerado


Procedimento 1. Crie um campo simbólico de I/O com o nome "Template_symbolic I/O field".

2. No campo de I/O recém-criado, defina as propriedades do SiVArc.

DR
E
3. Salve o campoS
mpo de I/O na biblioteca do projeto, no diretório “master copies”.

4. Crie uma regra de tela que é acionada com o bloco de gatilho


"sensor_assignment" e gera o campo simbólico de I/O na tela
"Template_Motor_Overview".

5. Gere sua visualização e verifique a lista de texto gerada.

Nota A tag "mSensorValue" deve ser criada manualmente.

SITRAIN TIA-SiVArc
Training for Industry Page 61 SIMATIC Visualization Architect
SIMATIC Visualization Architect

1 Introdução

2 Gerando objetos e telas

3 Dinamizando objetos

4 Posicionando objetos

5 Reutilizando objetos de biblioteca

6 Conclusão

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 62 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 62 SIMATIC Visualization Architect
Objetivos

Ao final do capítulo, o participante irá ...

… conhecer os limites do uso do SiVArc

… tirar uma conclusão sobre o SiVArc

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 63 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 63 SIMATIC Visualization Architect
SIMATIC Visualization Architect
Escopo de funções

Sistemas suportados Supported HMI objects

Controlador Telas HMI tags


S7-1200 Screens PLC UDT
S7-1500 Pop-ups Objects as type
ET200SP
Objects as master copy Faceplates
HMI Text fields screen as screen window
Comfort Panel V14 and higher I/O fields and symbolic I/O fields
Mobile Panel 2nd Generation Buttons
Basic Panels Screen windows
S7-Graph overview,
verv ProDiag
PC system
Text lists

LC
S7-1500 Software Controller
Alarms ((including alarm classes and alarm groups)
Runtime Advanced
TrendControl F(t)
Runtime Professional
Usage of screen templates

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 64 Options of Automatic Visualization Generation

O SiVArc permite economizar tempo durante a engenharia devido a


- Perda de etapas de configuração
- Criação e estruturação de tags
- Criação de telas e objetos de tela
- Redução de erros
- Tarefas repetidas são automatizadas (por exemplo, conexão com o processo)
- Alterações no CLP são sincronizadas automaticamente

Exemplos para repetir tarefas


• 1 símbolo é usado em 250 telas e precisa ser conectado novamente e novamente
• Criação de tags HMI para cada DB

SITRAIN TIA-SiVArc
Training for Industry Page 64 SIMATIC Visualization Architect
SIMATIC Visualization Architect
Vantagens da geração de visualização de automação

Geração de telas HMI com


SiVArc Digitalização

Capacidade de
Qualidade do
Engenharia
• Redução da configuração manual

competir
software
Eficiente
• Redução de erros devido à
automação

• Sincronização automática com o


programa do PLC Teste e Simulação

• Suporte de padrões Geração

Padronização

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 65 Options of Automatic Visualization Generation

SITRAIN TIA-SiVArc
Training for Industry Page 65 SIMATIC Visualization Architect
Exercício 9: Gere o controle para as correias transportadoras

Como exercício final, uma tela de controle deve ser


gerada para as correias transportadoras.

Cada correia transportadora possui um motor


controlado com o bloco "CConv_Unit1Zone1Drv90".

Use o SiVArc para gerar as três faceplates, um para


cada motor em uma nova tela "Control_Conveyor"
(use o template "Template_Control_Conveyor");

Os Faceplates devem ser dispostos conforme


mostrado na tela acima:
• "FP_control_name"
• "FP_control_move"
• "FP_control_drv_module"

As interfaces dos faceplate devem ser interconectadas


com os tags corretos durante a geração.

Você pode encontrar as tags na interface do bloco


"CConv_Unit1Zone1Drv90“.

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 66 Options of Automatic Visualization Generation

Descrição da tarefa
Como exercício final, a tela de controle deve ser gerada para as correias
transportadoras. Cada correia transportadora possui um motor controlado com o
bloco "CConv_Unit1Zone1Drv90". Use o SiVArc para gerar as três placas para cada
motor em uma nova tela "Control_Conveyor"
(use o modelo de geração "Template_Control_Conveyor" para esse); os painéis
frontais devem ser dispostos conforme mostrado na tela acima:
• "FP_control_name"
• "FP_control_move"
• "FP_control_drv_module"
As interfaces dos painéis frontais
tais devem ser interconectadas com as tags corretas
durante a geração. Você pode encontrar
enc as tags na interface do bloco
"CConv_Unit1Zone1Drv90“.
ne1Drv90“

Procedimento 1. Crie uma tela de modelo de geração"Template_Control_Conveyor" e crie os


campos de posição apropriados para os painéis frontais a serem gerados. Mova a
tela para as cópias principais da biblioteca do projeto.

2. Crie as regras de tela correspondentes para os painéis frontais a serem


gerados.

3. Adapte os painéis frontais para que sejam gerados com nomes exclusivos e tag
de interface correspondente.

4. Gere sua visualização e verifique a tela gerada.

SITRAIN TIA-SiVArc
Training for Industry Page 66 SIMATIC Visualization Architect
Exercício 9: Gere o controle para as correias transportadoras

1 Crie uma tela de modelo "Template_Control_Conveyor" (1366x648, preta) e crie os campos de


posicionamento apropriados para os faceplates a serem gerados.
• "FP_control_name“ (307 x 87)
• "FP_control_move“ (307 x 162)
• "FP_control_drv_module“ (307 x 237)

2 Mova a tela para o master copies do projeto.


3. Crie as regras de tela correspondentes para faceplates a serem gerados.

SITRAIN © Siemens AG 2018 TIA-SIVARC


Page 67 Options of Automatic Visualization Generation

Descrição da tarefa
Como exercício final, a tela de controle deve ser gerada para as correias
transportadoras. Cada correia transportadora possui um motor controlado com o
bloco "CConv_Unit1Zone1Drv90". Use o SiVArc para gerar as três placas para cada
motor em uma nova tela "Control_Conveyor"
(use o modelo de geração "Template_Control_Conveyor" para esse); os painéis
frontais devem ser dispostos conforme mostrado na tela acima:
• "FP_control_name"
• "FP_control_move"
• "FP_control_drv_module"
As interfaces dos painéis frontais
tais devem ser interconectadas com as tags corretas
durante a geração. Você pode encontrar
enc as tags na interface do bloco
"CConv_Unit1Zone1Drv90“.
ne1Drv90“

Procedimento 1. Crie uma tela de modelo de geração"Template_Control_Conveyor" e crie os


campos de posição apropriados para os painéis frontais a serem gerados. Mova a
tela para as cópias principais da biblioteca do projeto.

2. Crie as regras de tela correspondentes para os painéis frontais a serem


gerados.

3. Adapte os painéis frontais para que sejam gerados com nomes exclusivos e tag
de interface correspondente.

4. Gere sua visualização e verifique a tela gerada.

SITRAIN TIA-SiVArc
Training for Industry Page 67 SIMATIC Visualization Architect
Exercício 9: Gere o controle para as correias transportadoras

4. Adapte os painéis frontais para que sejam gerados com nomes exclusivos e tag de interface
correspondente.

G
TA
5. Gere sua visualização e verifique a tela gerada.
gerad
SITRAIN © Siemens AG 2018 TIA-SIVARC
Page 68 Options of Automatic Visualization Generation

Descrição da tarefa
Como exercício final, a tela de controle deve ser gerada para as correias
transportadoras. Cada correia transportadora possui um motor controlado com o
bloco "CConv_Unit1Zone1Drv90". Use o SiVArc para gerar as três placas para cada
motor em uma nova tela "Control_Conveyor"
(use o modelo de geração "Template_Control_Conveyor" para esse); os painéis
frontais devem ser dispostos conforme mostrado na tela acima:
• "FP_control_name"
• "FP_control_move"
• "FP_control_drv_module"
As interfaces dos painéis frontais
tais devem ser interconectadas com as tags corretas
durante a geração. Você pode encontrar
enc as tags na interface do bloco
"CConv_Unit1Zone1Drv90“.
ne1Drv90“

Procedimento 1. Crie uma tela de modelo de geração"Template_Control_Conveyor" e crie os


campos de posição apropriados para os painéis frontais a serem gerados. Mova a
tela para as cópias principais da biblioteca do projeto.

2. Crie as regras de tela correspondentes para os painéis frontais a serem


gerados.

3. Adapte os painéis frontais para que sejam gerados com nomes exclusivos e tag
de interface correspondente.

4. Gere sua visualização e verifique a tela gerada.

SITRAIN TIA-SiVArc
Training for Industry Page 68 SIMATIC Visualization Architect
Section 1

G
Introdução e Visão
Geral
© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Objetivos do aprendizado

Nesta seção, você irá aprender…

… o que é o OPC UA

… como o OPC UA é diferente do OPC Classic

… as vantagens oferecidas pelo OPC UA

… servidores e clientes OPC UA oferecidos pela Siemens


em seu portfólio de produtos

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Informações gerais sobre OPC

OPC:
• OLE for Process Control (sigla antiga para o padrão OPC Classic)
• Openness, Productivity and Connectivity
• Open Platform Communications (em uso desde OPC Unified Architecture (UA))

Serviço para acessar as seguintes informações do processo de produção:


• Variáveis
• Alarmes
• Dados históricos
• Métodos Logo of the OPC
i
Foundation for OPC UA:
¾ Interface de dados para tecnologia
ologia de automação
aut
¾ Padronizado pela OPC Foundation
t

This section describes what is behind the expression "OPC" and the reason for the development and
dissemination of OPC.

OPC is short for Open Platform Communications. OPC specifies various services for accessing production
process information, such as variables, alarms and archive data.

OPC is thus the specification of a data interface for automation technology. With OPC, a powerful interface is
available for the first time that has been specified by manufacturers of automation technology specifically for their
common needs.

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy Introduction and Overview
The challenge

Cloud

Aplicação
remota
Sistema de controle, por exemplo WinCC Professional
Driver A
Driver A
Interface A

Interface A

A
Interfaces
B C D E F G

Interface B Interface C Interface D Interface E Interface F Interface G

Driver B Driver C Driver D Driver E Driver F Driver G

PROFINET
PROFIBUS

L
Ethernet

Fieldbus X
Modbus
FIN
• Técnicas e interfaces proprietárias para

S7
acesso dos equipamentos.
E

• Cada equipamento requer adaptações dos


drives
• Opções de conexão limitadas
• 25-30% do custo de desenvolvimento é
destinado ao desenvolvimento do drives

Dispositivos de campo I/O Distribuído Controladores

In many industrial enterprises, process data is acquired, collected and further processed across various levels.
These activities are made more difficult by the lack of a uniform interface standard between the field level and
process control level and the use of proprietary data exchange methods and protocols by manufacturers of
automation devices. This lack of standardization of communication interfaces results in various challenges and
disadvantages:
• Proprietary techniques and interfaces for accessing automation devices
• Each new device requires driver modifications
• Options for users are limited by the available connection options
• 25-30% of the development costs for control systems must be dedicated to driver development

Significant effort is needed to integrate automation devices from different manufacturers into a single functional
system. As a consequence, many customers buy their entire automation on system including the operating software
from a single manufacturer. This means customers are tied to one manufacturer
manuf and cannot assemble their own
systems according to the strengths of individual providers.
s.
You can compare the situation in the field level and
nd process level
l with the early days of the computer industry
when it was very complicated to establish communication
ommunicat between computers and operating systems from
different manufacturers. Today, data cann be exchanged
exch between different computers without major difficulties
thanks to standardized protocols and interfaces.
rfa

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy Introduction and Overview
The solution Office SCADA

Cloud

Aplicação
remota
Interface A

OPC UA

Comunicação OPC UA

OPC UA OPC UA OPC UA OPC UA OPC UA OPC UA


Driver B Driver C Driver D Driver E Driver F Driver G

PROFINET
PROFIBUS

L
Ethernet

Fieldbus X
Modbus
FIN

S7
E

Dispositivos de campo I/O Distribuído Controladores

With the help of OPC, this evolution is also taking place in the area of process data processing. The initiative for
OPC was launched in order to implement a uniform access method and interface for automation devices and to
establish a single communication approach across all levels.

The use of this uniform interface allows industrial and office applications to read and further process data from any
process unit. Developers no longer have to concern themselves with the specifications of a manufacturer. Based
on the OPC interface, they can develop applications and read and modify data from devices made by different
companies.

As a further consequence of this standard, customers can assemble their automation system based on the
individual strengths and weaknesses of specific providers. It is possible,
e, for
f example, to use hardware from
manufacturer X and operating software from manufacturer Y. In n this way, OPC promotes a broad interoperability in
the automation industry.
Interoperability refers to the ability of heterogeneouss systems to interact with one another.

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Objetivos do OPC

• Acesso a dados flexível e eficiente Æ Muitos aplicativos e hardware suportam OPC


• Fácil de usar Æ Pode ser utilizado após apenas pouco treinamento
• Fácil de implementar Æ Exemplos de programação, bibliotecas
• Especificação pública Æ Disponível através da OPC Foundation, IEC standard
• Uso de dispositivos universais e independentes de plataforma
• Integração em dispositivos em todos os níveis da pirâmide de automação
Æ Com o OPC UA, os dispositivos de campo podem ser conectados
conectad diretamente como servidores
• Segurança abrangente Æ por exemplo autorização,
ão, autenticação,
autenti criptografia
O que o OPC não faz:
• O OPC não substitui os protocolos
olos de campo
ca
• Atualmente, não há comunicação com capacidade em tempo real no nível do campo, por exemplo PLC,
drives, válvulas, módulos I/O.

What OPC is not:


• OPC is not a replacement for fieldbus protocols:
OPC is not a fieldbus protocol. Rather, it is a communication standard that can build on different transport
protocols. In this regard, OPC Classic only encapsulates access to the PC interfaces of fieldbuses and field
devices. OPC UA additionally allows comprehensive machine-to-machine (M2M) communication.
• There is currently no real-time-capable communication at the field level:
At present, field devices cannot yet be connected via real-time-capable communication using OPC UA. For this,
real-time-capable fieldbus systems such as PROFINET or other communication connections are still required.

Note:
As of 2018, work is underway on a real-time-capable extension of the IEEE
IEE Ethernet standard using TSN (Time
Sensitive Networking). By basing OPC UA on Ethernet with TSN,
SN, real-time-capable
real-tim communication using OPC UA
will also be possible in the future.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Vantagens do OPC

Para clientes finais

• Eliminação da dependência de uma combinação especícia de hardware e


software
i
• Fácil conexão de dispositivos e aplicações de diferentes fabricantes
Logos da OPC Foundation
Servidores OPC diretamente do fabricante do hardware que são concedidos quando
Integração de vários sistemas de barramento de campo se passa no teste de conformidade
Certificação e compatibilidade

Advantages for end customers:


• Elimination of dependency on exactly one suitable combination of hardware and software:
Any software with OPC client capability now has access to any hardware connection that comes with an OPC
server. The number of available OPC servers is rapidly increasing. Today, practically all common hardware
connections are supported by OPC servers.
• Easy connection of devices and applications of different manufacturers:
After installation of an OPC server on a PC, any OPC client can access this OPC server.
• OPC servers come directly from the hardware manufacturer:
This ensures optimum hardware support. In the past, hardware connections for different HMI/SCADA
applications had to be implemented by the manufacturer of these software packages, which often resulted in
incompatibility and other problems.
• Integration of various fieldbus systems:
OPC allows various fieldbuses to be brought together on one PC. Data can then be accessed via a uniform
interface.
• Certification and compatibility:
Compatibility is ensured through official
al compatibility
compa tests and certifications that are provided by the OPC
Foundation.

Products certified by the OPC Foundation: http://bit.ly/2tbhv5g

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Vantagens do OPC

Para fabricantes de software :

Uma infinidade de drivers de hardware especiais não precisa mais ser desenvolvida
Implementação de uma interface OPC com funcionalidade de cliente ou servidor
Nenhuma modificação de driver após alterações de hardware
Exemplos de código e pilha de comunicação disponíveis como código aberto

Advantages for software manufacturers:


• A myriad of special hardware drivers no longer have to be developed
Valuable development resources no longer have to be devoted to the development of many different hardware
drivers. They can be used instead for the development of an optimized OPC connection and for actual product
development.
• Implementation of an OPC interface with client or server functionality
Software packages can collect their data via the OPC standard interface and can make their own data available
again using an OPC server.
• No driver modifications are necessary after hardware changes
Drivers no longer have to be redesigned for new hardware versions because the necessary changes to the OPC
server are made by the hardware manufacturer.
• Code examples and communication stack available as open sourc source
The OPC Foundation provides code examples and the e communication
communic stack of OPC UA for various platforms
(.NET, Java, C++) on the GitHub open source platform.
tform. In addition,
a further open source implementations by
companies and private developers (e.g. JavaScript)
avaScript) are
ar available.

OPC Foundation on GitHub: https://github.com/OPCFoundation


Node-OPCUA – OPC UA with JavaScript and NodeJS: http://node-opcua.github.io

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Vantagens do OPC

Para fabricantes de hardware :

Apenas um driver de software deve ser desenvolvido como interface para um


servidor OPC
O hardware pode ser integrado imediatamente em todos os aplicativos
compatíveis com OPC
A função do servidor pode ser integrada ao hardware através de kits de
desenvolvedor

Advantages for hardware manufacturers:


• Only one software driver has to be developed as the interface for an OPC server
Different drivers no longer have to be developed for different requirements. This saves resources, which can
now be used elsewhere.
• The hardware can be integrated immediately in all OPC-capable applications
New hardware can be used immediately. Its use no longer depends on support by the software manufacturer.
This means new hardware products can be used more quickly and independently.
• The server function can be integrated in hardware through developer kits
The OPC Foundation offers comprehensive develop kits for integrating the OPC communication stack in a wide
range of devices. Thus, for example, the resource-saving basic profile for embedded devices enables quick and
easy integration of OPC UA for quick and easy data access (e.g. OPC
PC UA Embedded Server).

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Destaques do OPC

Interface conveniente (informações adicionais aos tags lidos)


Conjunto abrangente de operações (por exemplo, leituras múltiplas)
Operações de leitura e gravação assíncronas (performance)

… OPC UA em detalhes
Especificações complementares para padronizações específicas
Independência da plataforma
Interoperabilidade entre fornecedores
uturada
Funcionalidade compacta e claramente estruturada

• Convenient interface
In addition to read and write operations, the OPC interface provides a lot of information to the OPC client via the
OPC server, thereby allowing the OPC server to be dynamically adapted to the needs of the client.
• Comprehensive set operations
In contrast to the server adaptations for which performance does not matter, calls associated with process
variables are implemented as set operations. This means that multiple variables can be read simultaneously
with one call.
The advantage of set operations is that they limit the number of process changes. This improves the execution
speed.
• Asynchronous read and write operations
In addition to a synchronous interface for read and write operations, the OPC interface also offers an
asynchronous interface. In the case of time-consuming processes, es, synchronous
sync calls can lead to logjams in the
client (many parallel queries, high number of process values,
s, etc.). This
Th can be remedied by asynchronous
client calls and server responses. Applications include
de the monitoring
monit of variables. The system load of the client
can be significantly reduced in this way.
• Companion Specifications
The standardized Companion Specifications
ations enable configurations that are adapted to different industry sectors
through use of standard industry sector-dependent templates for data access, function calls and predefined
semantics.
• Platform independence
This is achieved by turning away from the COM-based OPC Classic standard and by opening up to other
operating systems besides Windows.
• Cross-vendor interoperability
This is achieved with the platform independence and through use of Companion Specifications because simple
replacement of devices with the same functionality is thus possible.
• Compact and clearly-structured functionality
With implementation of all data access operations in a single server and harmonization of the specification parts
from OPC Classic to OPC UA, the functionality remains compact and clearly structured despite the expanded
capabilities.

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy Introduction and Overview
• Interoperabilidade
É a capacidade de um sistema (informatizado ou não) de se comunicar de forma transparente (ou o
mais próximo disso) com outro sistema (semelhante ou não). Para um sistema ser considerado
interoperável, é muito importante que ele trabalhe com padrões abertos

SITRAIN Page ‹nº› IK-OPCUA1


Digital Industry Academy Introduction and Overview
OPC Foundation

• Colaboração com os padrões da indústria


• Surgiu de uma força-tarefa
• Organização sem fins lucrativos
• Os colaboradores são funcionários
nários das empresas
e participantes
• Cerca de 600 empresas são o membros
mem da OPC Foundation

Collaborations
• Close collaboration with companies and organizations from a wide range of industry sectors
• Specified information models from other standardized organizations are correlated to OPC UA
• Standardization of the OPC UA Specification in IEC 62541

OPC Foundation
The OPC Foundation originated in 1995 from a task force of 5 participating companies from the automation
industry. The goal of the OPC Foundation then, like today, was to create and maintain a uniform communication
standard for data exchange in the field of industrial automation. The OPC Foundation grew steadily over time and
now has 600 members that support their stated goal.

Website of the OPC Foundation: http://opcfoundation.org

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Timeline
Evolução histórica do OPC Classic para o OPC UA hoje

ESPECIFICAÇÃO
Publicação da primeira A&E OPC UA IEC 62541 PUBSUB
especificação OPC Classic Alarms & Liberação do OPC UA Conclusão da Especificação PubSub
Estabelecimento da Events specification como especificação padronização IEC para para comunicação IoT
OPC Foundation harmonizada OPC UA

INÍCIO DA HDA IEC STANDARD OPEN SOURCE TSN


Força-tarefa OPC é Liberação da Liberação da OPC UA enviado como Pilhas de comunicação Conclusão da
formada especificação OPC especificação OPC IEC standard se tornam código padronização IEEE para
Classic para Data Classic para Historical aberto comunicação em tempo
Access Data Access real com TSN Ethernet

1995 1996 1998 1999 2001 2006 2009 2014 2015 2018 2019

The timeline shows the major milestones in the evolution from OPC Classic to the current OPC UA standard.
The many further developments of the OPC standard also reflect historical conditions:
• At the beginning, Windows PCs were predominant and the COM standard was therefore widely used.
Nowadays, however, there is a wide-open landscape of operation systems in the industrial sector.
• With the further development and platform independence of OPC, clients/servers in embedded devices are now
also possible. Accordingly, the architecture continues to evolve from a centralized client/server model to a
decentralized model.
• In terms of products, many of the original servers within the automation pyramid were used in the SCADA
environment. Now, servers can be found on all levels of the automation pyramid.
• To further encourage widespread use of OPC UA, application examples are freely available and the source
code of the main communication stacks is published as open source code on GitHub.
• The goal of establishing OPC UA as the communication standard forr datad transfer from field devices to the cloud
and between field devices led to the development of PubSub as a communication
comm extension of OPC UA.
• The vertical penetration of the automation pyramid by OPC PC UA calls for real-time-capable communication within
the field level so that uniform communication can take
ke place across
ac all levels and devices. OPC UA will meet
this requirement with the support of TSN.

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Principio do OPC UA

Uniform access

O OPC UA integra as especificações existentes do OPC Classic– DA, A&E, HA, Programs – em uma
única especificação.
A base compartilhada única para acesso a informações reduz os custos de integração do sistema.

OPC UA

COM Client
OPC DA Data Access
UA Client

• Data Access OPC OPC HDA


A Historical Data Access
• Historical Access
Client OPC A&E
E Alarms & Events
• Alarms & Conditions
• Programs

i Os inúmeros servidores COM para as especificações clássicas:

Optimization and merging of the specifications


Today's plants often need different combinations of OPC servers at the same time, such as OPC A&E (Alarms and
Events) and OPC DA (Data Access) servers. With the "old" specifications, this required additional effort at various
points (addressing of items, multiple OPC servers, etc.).
OPC UA harmonizes the various services such as A&E, DA and HDA (Historical Data Access). As a result, a
common address space exists under OPC UA for all objects. All the required properties, e.g. alarms, real-time
values, etc., are contained and connected therein. This also entails harmonization of the different browse
interfaces for the individual object types that existed previously.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Comparação do OPC Classic e OPC UA

OPC Classic OPC UA


Comunicação Comunicação
• COM/DCOM • TCP/IP ou XML
• Arquitetura orientada a componentes (CoA) • Arquitetura Orientada a Serviços (SoA)

Sistema operacional Sistema operacional


• Windows • Plataforma independente

Segurança Segurança
• Nome de usuário / Senha • Baseado em certificado
• Administração do usuário
AG
• Conexão crip
criptografada

• A
C
• Nome dde usuário / Senha
Administração do usuário

Performance Performance

E
vidor
• Cada tipo de acesso requer um servidor
• Transferência de dados sem descriçãoo semântica
• Um único servidor é possível
• Transferência de dados e descrição semântica

Operating system
OPC Classic is based on the DCOM technology from Microsoft. This dependency arose during the time that
Windows operating systems were in widespread use in industrial environments, in order to ensure compatibility
with as many devices and industrial PCs as possible. With the availability of a wider variety of operating systems
and their use on different levels of the automation pyramid, as well as the availability of more powerful actuators
and sensors at the field level, the demand for a platform-independent communication interface emerged.

Security
To guarantee that the increased requirements for access security are met, OPC UA has a scalable security
concept. If the user and application security is insufficient in an application, data on the transport layer can be
encrypted with the help of SSL/TLS. In addition, authorization of the client
ien and server applications is ensured using
X.509 certificates.

Semantic description
The semantic description, or semantic data
ata model, is
i a formal description of the data, which is standardized by the
OPC Foundation and sent along as information.
matio

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Arquitetura Client/server
Comparison of OPC Classic and OPC UA

OPC Client OPC UA Client


Client Client

OPC UA
OPC

OPC Server OPC UA Server


Data broker Server Data supplier Server
PC industrial Data broker
com Windows embutido
PN

Servidor possível

PN
Data supplier
PLC
Embedded
mbbedde
ed Server
por exemplo
e e leitor RFID
S7-1500
Data supplier
S7-300 S7-1200

OPC Classic OPC UA

Commonalities of the client/server architecture


The architectures of OPC Classic and OPC UA are generally based on a similar client/server architecture. With
this architecture, the server provides data to the client. The client has extensive functionality for reading and
writing data but also for subscribing to events of the server.

OPC Classic
In OPC Classic, the OPC server acts mainly as a gateway and thus as a data broker between the client and the
actual data supplier. This is due to the COM dependency and thus also to the tie to Windows operating systems.
This can often be found on industrial PCs (IPCs) and offers the possibility of installation of OPC Classic servers.

OPC UA
In OPC UA, on the other hand, this dependency has been eliminated.
eliminated Here, the communication standard is
independent of the operating system and platform. Consequently,
Consequen OPC UA servers are no longer used only on
IPCs, but can also be directly integrated in devices
vices with a wide variety of operating systems. This new
independence also has a critical influence
ce on the architecture
arc of OPC UA communication networks. The OPC UA
clients can now directly access OPC UA servers
serve that are integrated in the data suppliers.

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy Introduction and Overview
OPC UA na pirâmide de automação
Distinção de PROFINET

Pontos fortes de OPC UA Pontos fortes do PROFINET

Plataforma independente Cloud Determinístico

Management
Conexão direta de

OPC UA
dispositivos em todos os level Capacidade em tempo real
níveis Operator
level Comunicação C2C em

PROFINET
NET
Autenticação e criptografia
AG
Controller tempo real
level
el
C T
Serviços de semântica PL
SFiel
Field
Perfis padronizados

level
Vantagens nos níveis de Vantagens nos níveis de
dados e gerenciamento controle e campo

Besides the "classic", often PC-based devices with OPC UA implementation such as MES, SCADA and HMI, more
and more devices on the control level and sometimes even on the field level have also implemented OPC UA.
The advantages of OPC UA are most apparent on the data and management levels, namely platform
independence, direct device connection, authentication, encryption and semantics services.
PROFINET, on the other hand, tends to be classified with respect to deterministics and real-time capability on the
control and field levels, where the two communication options may overlap in the various applications.

In addition, OPC UA with its future real-time-capable Ethernet TSN support is increasingly moving into the control
and field levels.

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Especificação do OPC UA

Modelos de informação Especificações complementares


AutoID Field Device Integration

Tipos de acesso
Part 8 – Data Access Part 10 – Programs

Part 9 – Alarms and Conditions Part 11 – Historical Access

Infraestrutura Básico
Part 1 – Concepts Part 5 – Information Model

Part 2 – Security
AG
Part 6 – Service M
T
Mapping

Part 3 – Address Space

Part 4 – Services
LC
Part 7 – Profiles

Part 14 – PubSub

DR
ES
Part 12 – Discovery
Di
Utilidade
Part 13 – Aggregate

Based on the IEC 62541 standardization, the OPC UA specifications are divided into different parts.
The OPC Foundation has divided the standard into an infrastructure and an information model.

• Infrastructure
• Basic: Parts 1 through 7 form the basis of the technology and the implementation of OPC UA applications.
Parts 3 through 5, in particular, form the core of the standard. The newest part, Part 14 PubSub, concerns
itself with an IoT protocol-based connection alternative to the server/client architecture, which belongs to the
basic technology.
• Utility: Supplementary resources are defined in Parts 12 and 13.
• Information models
mation models for provision of classic OPC
• Access types: Parts 8 through 11 define OPC-specific information
information such as current process data or alarms.
• Companion Specifications: Furthermore, there re are Com
Companion Specifications that define additional OPC
ation with other
UA-based information models in collaboration o standardization organizations. In this case, the
models and information standards form the babasis, and the Companion Specification defines how this
porte with OPC UA. AutoID and Field Device Integration are given as
information is described and transported
examples here.

The OPC UA Specification can be found here: http://bit.ly/2INRpMg

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Portfólio de produtos da Siemens Industry
Classificação dos servidores OPC UA

sistema de Execução de Manufatura


OPC UA

SIMATIC NET, WinCC RT Professional,


WinCC V7.5, PCS 7, SINEMA Server, SINEC
Sistema Gerenciamento
NMS, TeleControl Server Basic, SIMATIC
SCADA de energia
Estrutura de Energy Manager PRO, WinCC OA
engenharia

S7-1500, HMI Comfort/Mobile Panel,


WinCC RT Advanced, S7-400 with CP 443-1,
PROFINET

Controlador HMI IPC Comunicação Motion NC


CNC SIMOTION, SINUMERIK, CC7
Industrial control
A RF600, RF18xC, PSU8600/UPS1600,

AS
SIMOCODE, 3RW44
Fonte e distribuição Identificação I/O stemas de
Sistemas Controles
de energia industrial Distribuído Driv
Drives industriais

The continuously expanding product portfolio of OPC UA servers of Siemens AG can be classified as follows
within the automation pyramid:

Management level:
SIMATIC NET, SIMATIC WinCC RT Professional, SIMATIC WinCC V7.5, PCS 7, SINEMA Server, TeleControl
Server Basic, SIMATIC Energy Manager PRO, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC RT Advanced, MindConnect Nano,
SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1, SIMOTION, SINUMERIK
UM

Field level:
SIMATIC RF600, SITOP PSU8600/UPS1600, SIMOCODE
SIMOCODE, SIRIUS 3RW44

Note: The OPC UA servers covered in this course are indicated in bold type.

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Portfólio de produtos da Siemens Industry
Classificação de clientes OPC UA

sistema de Execução de Manufatura


OPC UA

WinCC RT Professional, WinCC V7.5,


Sistema Gerenciamento de
WinCC OA
SCADA energia
Estrutura de
engenharia

S7-1500, HMI Comfort/Mobile Panel,


WinCC RT Advanced, MindConnect Nano,

AG
PROFINET

Controlador HMI IPC Comunicação Motion MindConnect


Connect IOT2000, S7-400 with CP 443-1
Industrial control ano
Nano

Nenhum cliente no nível do campo

AS
Fonte e distribuição Identificação I/O stemas de
Sistemas Controles
de energia industrial Distribuído Driv
Drives industriais

The product portfolio of OPC UA clients of Siemens AG can be classified as follows within the automation pyramid:

Management level:
SIMATIC WinCC Runtime Professional, WinCC V7.5, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC Runtime Advanced, MindConnent
Nano, SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1

Field level:
No client on field level

in
Note: The OPC UA clients covered in this course are indicated in bold type.

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Conceito de exercício de depósito vertical
Diretriz para os exercícios práticos

TIA Portal
Engenharia

RFID reader S7-1500


AG
UaExpert WinCC RT Advanced
Ad
Cliente Servidor Cliente
Clien Cliente/Servidor
OPC UA

Client
DR
ES

Este curso de treinamento abrange a automação de um sistema de depósito verticalcomo um conceito de


exercício integrado.
Isso será gradualmente expandido em vários exercícios na conclusão das seções teóricas.

O hardware do exercício consiste nos seguintes dispositivos a serem configurados:


• Leitor RFID
• WinCC visualization
• S7-1500

Antes de comissionar o WinCC visualization, UaExpert será usado para


ra controlar o rack de alto compartimento.
G
Device
TA
IP address

VM (PC station/WinCC RT) 19


192.168.111.1

SIMATIC S7-1500 192.168.111.11

SIMATIC S7-1200 192.168.111.12

Leuze 2D code reader 192.168.111.13

SIMATIC RF600 RFID Reader 192.168.111.14

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Conceito de exercício em detalhe

Recebimento de pacotes
RFID reader
Server • Digitalização de uma embalagem com o leitor RFID
• Fornecimento do ID do pacote varrido

Ordenagem/gerenciamento do sistema de estantes


S7-1500 • Fornecimento de variáveis e métodos para avaliação e controle do sistema de
Client & Server
estantes
• Leitura de variáveis do leitor RFID
• Chamada de métodos do leitor RFID

WinCC RT Advanced
Controle e visualização
zação do pr
processo
Client
• Leitura/gravação de variáveis do S7-1500 de um HMI
gravação d

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Exercícios independentes
Diretriz para os exercícios práticos

SIMATIC NET TIA Portal UaExpert


Servidor Engenharia Cliente

Server
Client

S7-1200 S7-1500
2D code reader AnsiC
Fornecedor
ece de dados Cliente/Servidor
AG
Servidor Servidor
para SIMATIC
S NET
OPC UA

A
Server
S
Serve
PROFINET

Além dos exercícios de estantes altas, as seções individuais também contêm exercícios independentes para
examinar na prática o conteúdo específico do treinamento.

O hardware independente do exercício consiste nos seguintes dispositivos a serem configurados:


• SIMATIC NET Server
• 2D code reader
• AnsiC (demo server for Windows)
• S7-1200
• S7-1500

T
LC
Device IP address
addres

VM (PC station/WinCC RT) 192.168.111.1

SIMATIC S7-1500 192.168.111.11

SIMATIC S7-1200 192.168.111.12

Leuze 2D code reader 192.168.111.13

SIMATIC RF600 RFID reader 192.168.111.14

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Conceito de exercício em detalhe

Troca básica de dados do OPC UA


AnsiC S7-1500
server Server • Estabelecendo uma conexão
• Leitura/Escrita de variáveis e historical data
• Chamada de métodos
• Familiarizando-se com o espaço de endereço

2D code reader OPC UA server de um fabricante de dispositivo de terceiros


Server
• Estabelecendo uma conexão
• Controlando um sensor via OPC UA
• Familiarizando-se com a Especificação
ificação Complementar
Co

Conexão de dispositivos
ositivos não compatíveis com OPC-UA e Alarms & Conditions
S7-1200 SIMATIC NET
Data SERVER • Leitura/Escrita
Escrita de variáveis do S7-1200 via SIMATIC NET Server
• Recebimento
en de mensagens e eventos do S7-1500 via SIMATIC NET Server

SITRAIN Page 24 IK-OPCUA1


Digital Industry Academy Introduction and Overview
Capítulo 2

Infraestrutura G
Serviços e mecanismos básicos paraS P
ara troca de
dados RA
© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy Infrastructure
Objetivos do aprendizado

Nesta seção, você aprenderá ...

… do que a infraestrutura é composta

… como é o modelo de dados básico e quais serviços de


base estão disponíveis

… como você pode testar seu aplicativo OPC UA com o


programa "UaExpert".

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy Infrastructure
Infraestrutura
Visão geral do esquema da infraestrutura

Modelos de informação
Modelos de informações específicas do fabricante

Modelos de informação padrão da indústria


(Especificações complementares: IDE, PLCopen, ISA 95, AutoID, …)

Modelos de informações básicas

DA HA
H AC PROG

Infraestrutura
Acesso à informação
A

Estabilidade
Segurança
Segurança

Robustez
Mo
Modelo de dados e serviços de base

Transporte Discovery
Atribuições de protocolo Descoberta de servidores

The infrastructure of OPC UA is divided into five main components:


• Information access
Information access is split into base services and the data model, which describes the underlying data
structure in OPC UA (e.g. objects, nodes, variables, variable types, etc.). The base services define, for example,
the possibilities for retrieving data from the data model or modifying it (reading, writing, aggregating, etc.).
• Transport
Following the definitions in the ISO-OSI layer model, the transport layer defines the protocols and their layers on
which the OPC UA protocols are based. A hierarchical structuring describes the data flow from the physical
layer all the way to the application layer.
• Discovery
The discovery service is an important base service for the registration
on and authentication of available servers by
a discovery server.

Cross-sectional functions: Robustness and security


• Robustness
Robustness describes mechanisms for
or ensuring
ens stable, robust and reliable communication between
communication partners.
• Security
Security is a very important cross-sectional function within the infrastructure, and a separate section is devoted
to it. Security covers anything that contributes to the security of communication (e.g. authorization with
certificates, encryption, etc.).

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy Infrastructure
Modelo de dados

O modelamento corresponde a um resumo das principais definições do OPC


Ele organiza como as informações são armazenadas e apresentadas, à semelhança dos dados no HDD
Implicitamente ele garante a universalidade do OPC
Modelos de informação
Definição
• Modelo orientado a objetos para estruturação de dados Acesso à informação

Estabilidade
Segurança
Segurança

Robustez
• Descrição universal para dispositivos e funções Modelo de dados e serviços de base

Estrutura Transporte Discovery


• Um objeto é a menor unidade na orientação do objeto Atribuições de protocolo Descoberta de servidores

• Objetos contêm variáveis, eventos e métodos


• No OPC UA, os objetos são mapeados no espaço de endereço s
dereço do servidor como nós
• Nós são interconectados por referências
• Uma conexão de nós é conhecida como NodeSet eSet
• Classes de nós definem os nós
• Há uma classe básica de nó e oito o classes derivadas dela
• Classes de nós não podem ser adicionadas
on
• Objetos específicos do usuário e tipos de dados surgem através da conexão das classes de nós
Exemplificação nos slides seguintes

The data model is based on the address space of the OPC UA server. It defines the object-oriented structuring of
the data. The address space can be searched by the OPC UA client in order to read the values of the server data.

The address space represents all nodes and the connection between the nodes.

Terms: The nodes that the server makes available are its address space.

There are various structures for the address space of the server (tree structure, node structure). To understand the
address space more easily, we compare it to a computer hard disk with files in Windows:
• The files are displayed hierarchically in Windows Explorer (e.g. hierarchical
rar arrangement in a tree structure).
• However, the data is physically located one after the other on the hard disk (e.g. fragmentation,
defragmentation).
• The relationships and dependencies of the files
es on the hard
h disk are again different (representation in a node
structure).
• Files can even be hidden from certain users in order to change their view of the data (e.g. View).

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço

Gatilho de evento
Notificação
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço
Um objeto é a menor
unidade na orientação do
objeto
Gatilho de evento
Notificação
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço Um Objeto pode ter várias
“facetas”, como variáveis,
eventos, métodos, e
Gatilho de evento referências
Notificação
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço
Tudo que podemos “ver”
dentro do OPC é tido como
Gatilho de evento Address space
Notificação
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço
Um objeto dentro do address
space, continua sendo um
Gatilho de evento
objeto, mas tem nome de
Notificação
“nó” Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy Infrastructure
Objeto, nó e espaço de endereço

Os Nós podem estar


Gatilho de evento interrelacionados. A isso
Notificação chamamos de Referências
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy Infrastructure
Vista é um subconjunto do
Objeto, nó e espaço de endereço
Address space, disponível
para acesso do usuário em
uma determinada situação
Gatilho de evento
Notificação
Vista
ÆEventos
Æ Event1
Æ Event2

Referência
Objeto
para outro objeto Chamadas de método
odo
Variáveis Métodos
+ Var1 + Method1()
thod1() Referência
Ler + Method2(x,y)
Method2(x,
+ Var2
Escrever Method3(a,b,c)
+ Metho Nós
- Var3

Espaço de endereço (representação do nó)


Alteração de dados
Notificação

OPC UA uses the familiar terms and definitions from object orientation.
An object is the smallest unit. It can contain variables, trigger events or be manipulated by method calls.

In OPC UA, the objects are represented by nodes.


In the address space of the OPC UA server, the objects are referred to as nodes because they form a network
that interconnects individual objects. The nodes are interconnected and describe their interdependencies in this
way.

A node is thus an object in the address space. Besides the nodes themselves, the address space also describes
the relationship between the nodes.

A view is a portion of an address space that the server makes available


avai to a client. It contains only the nodes that
were marked as visible for this view.

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA

Tipos de dados
Root
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA
O OPC pode se apresentar
como uma estrutura de Tipos de dados
Root diretórios
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA
Existe sempre um diretório
“raiz” Tipos de dados
Root
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA
Além dos objetos também
existem diretórios para types Tipos de dados
Root
e views
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA

No Types estão contidas as


Tipos de dados
Root definições dos objetos
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA

Tipos de dados
Root
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
ObjectTypes
ReferenceTypes Nós
VariableTypes Objetos (instâncias) Podemos dizer que os Nós
Views são instancias dos Types
Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy Infrastructure
Estrutura do nó no servidor OPC UA

Tipos de dados
Root
Objects
<Own data structure>

Server Æ NamespaceArray
Types Referências
DataTypes
EventTypes
References types expressam
ObjectTypes as relações entre objetos e
ReferenceTypes Nós
entre suas variáveis e os
VariableTypes Objetos (instâncias) diretórios (e.g. contido)
Views Tipos de referência (seleção)
Subclasses (herança)
Espaço de endereço (representação em árvore)
Instanciação
Relações (contidos, operados, controles, …)

The node structure in the address space of the OPC UA server is set up the same in every server.
The nodes are hierarchically arranged in a tree structure starting from the Root.

The Objects containing the data structure defined by the user can be found there initially. This data structure is
defined, for example, by selecting process values in the HMI or values from a controller. It contains data that the
server can provide to clients and that was configured as OPC UA variables in the server.
The Types are arranged at the same level as the objects. All types (data, events, objects, references and
variables) that are contained in the server and used by the objects of the server are listed here. DataTypes and
ReferenceTypes are described in more detail below.

The relationship of how the data is modeled in the server is now establish
established on the left side. What the data types
look like is defined in the server initially. These have a hierarchical
archical dependency.
dep The references between the data
type nodes are thus inheritance relationships.
If the nodes then appear as a data structure under Objects, they are instances of data types. The reference is
nder Objec
thus an instantiation here. Each node is instance of a data type.
s an instanc
To relate the object nodes to one another, there
th are further reference types, e.g. "contained" to describe the
relationship of a variable to a directory.

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy Infrastructure
Classes de nós

BaseNode
Atributo Tipo

+ NodeId NodeId

+ NodeClass NodeClass
Definir
+ BrowseName QualifiedName
classe de nó Nós
+ DisplayName LocalizedText

Objeto Método Vista DataType


Atributo Tipo Atributo Tipo Atributo Tipo Atributo Tipo
+ EventNotifier Byte + Executable Boolean + ContainsNoLoops Boolean + UserDefined
+ UserExecutable Boolean + EventNotifier Byte
B

ObjectType VariableType C
ReferenceType
Refer
Atributo
A Type Atributo
Variável
Tipo
Atributo Tipo Atributo Tipo

+ IsAbstract Boolean + Value + IsAbstract Boolean + Value

+ DataType

+ ArraySize
S
NodeId

Int32
I
+ Symmetric

+ InverseName
Boolean

LocalizedText
+ DataType

+ ArraySize
NodeId

Int32

+ IsAbstract Boolean + AccessLevel Byte


+ UserAccessLevel Byte
+ MinSampingInt Int32

The node classes define each node of the address space of OPC UA.
There is one basic node, from which eight other node classes are derived.
The derived node classes inherit the properties of the base node.
This structuring allows the creation of user-defined types that are derived from the node classes.
It is not possible to declare additional node classes.

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy Infrastructure
Tipos de referência

ReferenceType
Atributo Tipo

+ IsAbstract Boolean

+ Symmetric Boolean Define Referência


+ InverseName LocalizedText referências
Nós

Referência

<<Organizes>> <<HasComponent>> <<HasTypeDefinition>>


>>
Nós

DR
<<HasNotifier>>
S
<<HasSubType>>
Type>>
E

The reference types define the interrelationship of nodes in the address space. The reference types are also
objects.
• Organizes: Nodes that contain other nodes as directories and containers.
• HasComponent: Nodes that contain variables as containers.
• HasTypeDefinition: Nodes that define a data type.
• HasSubType: Nodes that define a data type containing a sub-data type.
• HasNotifier: Nodes that can trigger an event.
• HasProperty: Node that contains a property.
• HasModellingRule: Node that follows an implementation rule, e.g. whether it is required or optional.

struc
Note: Although the nodes are represented hierarchically in a tree structure in the client, the correct representation
form is actually web-like because the nodes can also mutually reference each other across hierarchies. An
ences an object
example here is the server node that also references ob node.

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy Infrastructure
Tipos de dados

DataType
Atributo Tipo

+ UserDefined

Definir
BaseDataType tipos de dados
Nós

SubType
• Boolean • DiagnosticInfo
• ByteString
eString • StatusCode
• DateTime • NodeId
• Number
Num • SessionAuthenticationToken
UserType • Double • …
Atributo Tipo • Float
• Integer
+ UserDefined
• …
SubUserType

Data types define the structure of the data in the nodes of the address space.
The data types are also objects.
• Basic data types: There are basic data types that can be used directly. These are based on the data types
used in many high-level languages or automation systems, e.g. Boolean, DateTime, Number, and data types
derived from these, e.g. Double, Float, Integer. In addition, OPC UA defines its own reusable data types in the
basic data types, including DiagnosticInfo, StatusCode and the all-important NodeId.
• User-defined data types: The basic data types can be assembled into user-defined data types.
• Derived data types: New data types can be created by deriving them from other data types.

The data types are a component of the Types node in the server, which contains all the types.
The types are defined via the namespaces that the server uses. The server
erv must always support the namespace
of the OPC Foundation and thus the basic data types.

Note: The Companion Specifications also bring their own namespaces


na and thus also define their own types. To
clearly define a type, an unambiguous assignment
signment to a namespace is therefore always required. The namespaces
are unique.

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy Infrastructure
Exemplo de tipos de referência
UaExpert

Root
Objects
<Own data structure>

Server Æ NamespaceArray
Types
DataTypes
EventTypes
ObjectTypes
ReferenceTypes
VariableTypes
Views

Type nodes Value nodes

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy Infrastructure
Mapeamento de tipos de dados
SIMATIC para OPC UA

Tipo de dados SIMATIC Tipo de dados OPC UA


BOOL Boolean
SINT SByte
BYTE, CHAR, DT Byte
INT Int16
DINT, TIME Int32
LINT, LTIME Int64
USINT Byte
UINT, WORD, S5TIME, DATE, WCHAR, TIMER, COUNTER UInt16
UDINT, DWORD, TOD UInt32
ULINT, LWORD, LTOD UInt64
Int64
REAL Float
LREAL Double
LDT DateTime
STRING, WSTRING String

The table shows the mapping of SIMATIC data types to OPC UA data types.
You can find additional information on OPC UA and Siemens products in the available online help documents.

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy Infrastructure
Exemplo de espaço de endereço

Objects
Attribute Type
TemperatureSensor + NodeId Demo
NS0|Numeric|85
+ NodeClass
Attribute Object
Type
Boiler1 + NodeId
+ BrowseName 009_BoilerDemo
NS4|String|Demo
0,"Objects"
+ DisplayName
+ NodeClass
Attribute "","Objects"
Object
Type
+ WriteMask
+ BrowseName
+ NodeId Boiler1
0 0,"Demo"
NS4|String|Demo.
+ UserWriteMask 0 BoilerDemo
+ DisplayName
Attribute "","Demo"
Type
Boiler2 + NodeClass None
+ EventNotifier
+ WriteMask
+ NodeId 0
Object
TemperatureSensor
NS4|String|Demo.
009_BoilerDemo + BrowseName FolderType
+ HasTypeDef
+ UserWriteMask
Attribute
but 0
0,"BoilerDemo"
BoilerDemo.
Type

AG
Boiler1
+ DisplayName
+ EventNotifier "","009_BoilerDemo"
+ NodeId None NS4|String|Demo.

T +NNodeClass Object

LC
+WWriteMask
+ HasTypeDef 0
FolderType BoilerDemo.
+BBrowseName Boiler1.
+UUserWriteMask 0 0,"Boiler1"
TemperatureSensor
Demo + DisplayName
+ EventNotifier
+ NodeClass
None"","Boiler1"
Object
+ WriteMask
+ HasTypeDef 0
FolderType
+ BrowseName 0,"TemperatureSensor"
+ UserWriteMask 0
Objects + DisplayName
+ EventNotifier None
"","TemperatureSensor"
+ WriteMask 0
Espaço de endereço (representação do nó)
+ UserWriteMask 0
+ EventNotifier None

Um exemplo da dependência e da estrutura do espaço de endereço é fornecido pelo nó de temperatura do ANSI


C demo server do Unified Automation, que você usará em um exercício posterior.
A estrutura das classes de nós e o espaço de endereço é ilustrada por este exemplo. As classes de nós dos nós
individuais são definidas no atributo NodeClass.
Cada servidor possui um nó raiz. Abaixo dele, estão o diretório de objetos e o nó do servidor que deve existir para
todos os OPC UA server compatíveis.
O nó do servidor contém todos os nós de dados com informações no próprio servidor, como os recursos e o
intervalo de funções (ServerCapabilities) ou os namespaces utilizados da OPC Foundation (NamespaceArray) e
os perfis suportados (ServerProfileArray).

A partir do “Objects directory”, a árvore pode ser atravessada até o sensor


senso de temperatura.
Ao fazer isso, observe que Objects, Demo e 009_BoilerDemo
emo são do tipo FolderType e referenciem-se de
acordo com ReferenceType "Organizes".
O objeto Boiler1 contém TemperatureSensor como referência
ref e referencia-o com "HasComponent".
O sensor de temperatura é do tipo TemperatureSensorType.
peratureS
O valor da temperatura agora pode ser encontrado como AnalogItemType na hierarquia abaixo do
TemperatureSensor.
Ele contém o valor da temperatura e pode ser monitorado.

SITRAIN Page 24 IK-OPCUA1


Digital Industry Academy Infrastructure
Exemplo de espaço de endereço

Objects
Attribute Type
TemperatureSensor + NodeId Demo
NS0|Numeric|85
+ NodeClass
Attribute Object
Type
Boiler1 + NodeId
+ BrowseName 009_BoilerDemo
NS4|String|Demo
0,"Objects"
+ DisplayName
+ NodeClass
Attribute "","Objects"
Object
Type
+ WriteMask
+ BrowseName
+ NodeId Boiler1
0 0,"Demo"
NS4|String|Demo.
+ UserWriteMask 0 BoilerDemo
+ DisplayName
Attribute "","Demo"
Type
Boiler2 + NodeClass None
+ EventNotifier Object
TemperatureSensor
Tipo FolderType + WriteMask
+ NodeId 0 NS4|String|Demo.
009_BoilerDemo ReferenceType "Organizes".
+ BrowseName FolderType
+ HasTypeDef
+ UserWriteMask
Attribute
but 0
0,"BoilerDemo"
BoilerDemo.
Type

AG
Boiler1
+ DisplayName
+ EventNotifier "","009_BoilerDemo"
+ NodeId None NS4|String|Demo.
+N
T
NodeClass Object

LC
+WWriteMask
+ HasTypeDef 0
FolderType BoilerDemo.
+BBrowseName Boiler1.
+UUserWriteMask 0 0,"Boiler1"
TemperatureSensor
Demo + DisplayName
+ EventNotifier
+ NodeClass
None"","Boiler1"
Object
+ WriteMask
+ HasTypeDef 0
FolderType
+ BrowseName 0,"TemperatureSensor"
+ UserWriteMask 0
Objects + DisplayName
+ EventNotifier None
"","TemperatureSensor"
+ WriteMask 0
Espaço de endereço (representação do nó)
+ UserWriteMask 0
+ EventNotifier None

Um exemplo da dependência e da estrutura do espaço de endereço é fornecido pelo nó de temperatura do ANSI


C demo server do Unified Automation, que você usará em um exercício posterior.
A estrutura das classes de nós e o espaço de endereço é ilustrada por este exemplo. As classes de nós dos nós
individuais são definidas no atributo NodeClass.
Cada servidor possui um nó raiz. Abaixo dele, estão o diretório de objetos e o nó do servidor que deve existir para
todos os OPC UA server compatíveis.
O nó do servidor contém todos os nós de dados com informações no próprio servidor, como os recursos e o
intervalo de funções (ServerCapabilities) ou os namespaces utilizados da OPC Foundation (NamespaceArray) e
os perfis suportados (ServerProfileArray).

A partir do “Objects directory”, a árvore pode ser atravessada até o sensor


senso de temperatura.
Ao fazer isso, observe que Objects, Demo e 009_BoilerDemo TAG
emo são do tipo FolderType e referenciem-se de
acordo com ReferenceType "Organizes". C
R AS
O objeto Boiler1 contém TemperatureSensor como referência
ref e referencia-o com "HasComponent".

E SD
O sensor de temperatura é do tipo TemperatureSensorType.
peratureS
O valor da temperatura agora pode ser encontrado como AnalogItemType na hierarquia abaixo do
TemperatureSensor.
Ele contém o valor da temperatura e pode ser monitorado.

SITRAIN Page 25 IK-OPCUA1


Digital Industry Academy Infrastructure
Exemplo de espaço de endereço
O servidor possui o próprio objeto (a temperatura como valor) e o tipo de dados associado
(captura de tela central). Isso garante total independência da plataforma.
Temperatura
Attribute Type
+ NodeId NS4|String|Demo.
BoilerDemo.
Boiler1.
TemperatureSensor.
Temperature
+ NodeClass Variable
+ BrowseName 0,"Temperature"
+ DisplayName "","Temperature"
+ WriteMask 0
+ UserWriteMask 0
+ EventNotifier None
+ Value
+ DataType
+ ValueRank
+ AccessLevel
+ UserAccessLevel
+ MinimumSamplingInterval
Espaço de endereço (UaExpert) + Historizing

Um exemplo de uma estrutura hierárquica do espaço de endereço é ilustrado na captura de tela do cliente
UaExpert à esquerda.

O servidor possui o próprio objeto (a temperatura como valor) e o tipo de dados associado (captura de tela
central). O nó de temperatura com suas classes de nós também é mostrado à direita como exemplo.

Isso garante total independência da plataforma. O cliente pode determinar as estruturas e, portanto, os tipos de
dados básicos subjacentes no servidor para tipos de dados individuais também.

SITRAIN Page 26 IK-OPCUA1


Digital Industry Academy Infrastructure
Serviços de base e conjuntos de serviços

Discovery View MonitoredItem


• FindServers • Browse • CreateMonitoredItem
• GetEndpoints • BrowseNext • ModifyMonitoredItem
• RegisterServer • TranslateToNodeIds • SetMonitoringMode
SecureChannel • RegisterNodes • SetTriggering
• OpenSecureChannel • UnregisterNodes • DeleteMonitoredItem
• CloseSecureChannel Query Subscription
Session • QueryViews • CreateSubscription
• CreateSession • QueryFirst • ModifySubscription
• ActivateSession • QueryNext • SetPublishingMode
• CloseSession Attributes • Publish
• Cancel • Read • Republish
NodeManagement • HistoryRead • TransferSubscriptions
• AddNodes • Write • DeleteSubscriptions
• AddReferences HistoryUpdate
• HistoryUpdat
• DeleteNodes Method
• DeleteReferences • Call
Os serviços mais usados estão marcados em azul.
i

Conjuntos de serviços, que agrupam os serviços básicos em categorias, estão listados aqui.
Se um cliente ou servidor oferece um serviço ou um conjunto de serviços depende se ele suporta um perfil que
contém o serviço.

Category Description
SecureChannel Endpoint and security configuration for secure connection establishment and data
transfer
Session Setup and administration of the user-specific connection
NodeManagement Modification of the server address space
View Navigation and hierarchical traversing
TA
rsing of the references in the address space
Attributes
PL
Reading and writing of attributes
ttributes of nodes such as Value, Historical or Event
S
Method Method calls for R offered by the server in the address space
or methods
D
MonitoredItem Attributes of E
nodes
nod that are monitored by the client
Subscription Creating, modifying and deleting MonitoredItems
Query Filtered searching and querying within the server address space
Discovery Defines the discovery of servers in a system by clients

SITRAIN Page 27 IK-OPCUA1


Digital Industry Academy Infrastructure
Namespaces
Caminhos exclusivos para nós OPC UA

• O ID do nó de um servidor OPC UA deve ser exclusivo


• Se existir mais de um nó com o mesmo nome (identificador), o espaço para nome é o critério distintivo
• Os espaços para nome são criados no NamespaceArray do servidor
• Namespace com ID 0 Æ http://opcfoundation.org/UA
• O ID do nó é composto por
• NamespaceIndex
• IdentifierType
• Identifier
NS0|Numeric|2255 Æ NameSpaceArray

SITRAIN Page 28 IK-OPCUA1


Digital Industry Academy Infrastructure
Transporte
Protocolos e transporte usando o exemplo de uma
assinatura
UA Stack Secure Channel UA Stack

Client Server API Server

Conjunto de serviços de canal seguro


Cliente API Serialização Transporte Servidor API

Session 1 Session 2 … Session


ion n Conjunto de serviços de sessão

AG
Subscription 1 Subscription 2 … L
Subscription
Subs n Conjunto de serviços de assinatura

DR
MonitoredItem 1
ES
MonitoredItem 2
… MonitoredItem n Conjunto de serviços MonitoredItem

This schematic shows the relationship between the service sets and the communication stack using the
example of a subscription.
In addition, the way in which the levels are passed through is shown in a transmission path from the client to the
server.
First of all, the client API is controlled and the data transport to the server is set up via the UA stack. The secure
channel is established within the transport channel. The data is contained there in serialized form as coded data.
The secure channel has 1 to n sessions, which can each contain 1 to n subscriptions. A subscription may contain
1 to n MonitoredItems.

A separate service set is responsible for each of these levels.

On the server side, the data transport via the OPC UA stack
ck encounters
encount the server API, which executes functions
according to the commands and the requested data on the server
ser for handling the client requests.

SITRAIN Page 29 IK-OPCUA1


Digital Industry Academy Infrastructure
Transporte
Atribuições de protocolo e pilha de comunicação

Servidor / Cliente Modelos de informação


Publisher / Subscriber (PubSub)
Acesso à informação

Estabilidade
Aplicação UA

Segurança
Ambientes de desenvolvimento

Segurança

Robustez
Modelo de dados e serviços de base
NET Framework, C++/ANSI C, Java
Pilha API Transporte Discovery
Atribuições de protocolo Descoberta de servidores
Codificação
Serialização
UA Binary, UA XML, UA JSON
Mensagem codificada
Transformação de segurança
Signing, Encryption Canal seguro

Protocolos de segurança Mensagem segura


UA SC Camada de
transporte
rte i Legenda da cor:
Protocolos de transporte Mensagem de transferência
Mens Protocolo de transporte
TCP, HTTPS = HTTP + TLS, AMQP
Protocolo de segurança
Físico
Esquemas Codificação
WSDL, XML, Binary

The transport layer is responsible for the data transfer. During transport, the data passes through the
communication stack from the bottommost physical network layer to the topmost application layer.
The data access using OPC UA resides in the topmost layer of the communication stack. Therefore, OPC UA
resides in the application layer (Layer 7).
In order to support a large number of different networks, bus systems and standards on the underlying layers,
OPC UA has corresponding stack profiles. These stack profiles form the interface of OPC UA on the application
layer to lower layers.
The communication stack includes the development environments, basic libraries, security transformations and
protocols, data encodings and transport protocols.

Term Description
UA SC
PLC
UA Secure Conversation,, encryption functionality of OPC UA
AMQP Advanced Message
sage Queuing
RA
Queuin Protocol, a lightweight IoT communication protocol
UADP UA Datagram ES
am Protocol
Pro
JSON JavaScript Object Notation
ISO / OSI Classic layer model of network communication according to the ISO standard
DoD Department of Defense model, basis of Internet layer model
Encoding Character encoding of data
TSN Time Sensitive Networking uses time synchronization and the VLAN tag for
message prioritization for real-time-capable communication

SITRAIN Page 30 IK-OPCUA1


Digital Industry Academy Infrastructure
Pilha de comunicação
Relação entre modelos e perfis de pilha

Modelos clássicos Perfis de pilha disponíveis


ISO OSI DoD OPC UA Servidor/cliente PubSub
• HTTPS UA Binary • UDP UADP

PubSub
Server/client
7 Aplicação • HTTPS UA XML • AMQP UADP
• HTTPS UA JSON • AMQP JSON
6 Apresentação Aplicação
• WSS UA SC UA Binary • MQTT UADP
5 Sessão • UA TCP UA SC UA Binary • MQTT JSON
• WSS UA JSON
4 Transporte Transporte

3 Rede Internet

2 Link de dados
Acesso à rede
1 Físico

i Legenda de cor :
Protocolo de transporte
Protocolo de segurança
Codificação

Available encodings are:


• OPC UA Binary
• OPC UA XML
• OPC UA JSON

Usage depends on the underlying transport protocol.

Stack profiles are composed of:


• Transport protocol
• Security protocol
• Encodings: Binary, XML, JSON

Only servers/clients or publishers/subscribers that support


ort the same stack profile can communicate with one
another.
The network layers for the different stack profiles are shown based on the classic models. The ISO OSI layer
model divides the communication into 7 layers, while the Department of Defense (DoD) model includes four
network layers.
The server/client and PubSub stack profiles are fundamentally different. That is because the former is based on
traditional Internet protocols (HTTPS, WebSockets) and the latter on IoT-based protocols.
Each stack profile resides in Layer 7 (Application layer) and is based on the underlying layers 4 to 6.

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy Infrastructure
Perfis de pilha do OPC UA
Servidor/cliente em detalhe

ISO OSI DoD OPC UA server/client


7 Aplicação UA Bin. UA JSON UA XML UA Bin.

6 Apresentação Aplicação WebSockets HTTP(S)

5 Sessão UA SC SSL/TLS

4 Transporte Transporte TCP

3 Rede Internet IP

2 Link de dados
Acesso à rede T A
TSN

1 Físico
SP
Ethernet
thernet IEEE
IE 802.1 + IEEE 802.3

i Legenda de cor :
Protocolo de transporte
Protocolo de segurança
Codificação

Server/client stack profiles


The Ethernet network access layer and the TSN belonging to Ethernet form the basis of all stack profiles of the
server/client. Above this, they are based on IP and TCP. In the session layer, two layers are possible for the binary
data transport (UA Binary): The OPC UA's own UA Secure Conversation layer for encrypted transmission and
SSL/TLS for encrypted HTTPS connections. In the case of unencrypted HTTP connections, SSL/TLS is not active
as session layer.
The server/client-based stack profiles also offer three encodings.

Term Description
Middleware Communication agent between two
AG
o or more partners, in contrast to direct
T
C
connection establishment in peer-to-peer
peer-to-pee (P2P) communication

AS
(Message) Broker Agent and gateway (intermediary)
(intermedia in a communication protocol, which can also
R
translate messages
sages from a publisher to a subscriber.
MoM E DMiddleware
Message-oriented
rient
IoT Internet of Things, approach in which every device can be accessed independently
on the Internet and reached via its IP address.

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy Infrastructure
Exemplos de codificação

Definição Binário
struct Type2
{
Int32 A;
Int32 B;
Char* C; JSON
}; {
struct Type1 "X":1234,
{ "Y":[ { "A":1, "B":2, "C":"Hello" }, { "A":3, "B":4 } ],
Int32 X; "Z":5678
Int32 NoOfY; }
Type2* Y;
Int32 Z; Esquema XML
};

Esquemas
• Binário: Codificação de caracteres binários e transmissão não formatada como um fluxo de bytes direto.
• JSON: Conversão de informações para um formato JSON seguido de transmissão como um fluxo de bytes. O
JSON é auto-descritivo e mais enxuto que o XML. Os objetos podem ser desserializados diretamente do JSON.
• XML: Combinação de um arquivo de esquema XSD definido pelo tipo e uma conversão de informações para o
formato XML correspondente ao esquema. O arquivo de esquema deve estar disponível para os dois parceiros
de informações. A serialização/desserialização ocorre com base no arquivo de esquema. Os dados são
transmitidos como um fluxo de bytes.

Descrições de serviço
Eles contêm a descrição para os pontos de acesso e os métodos disponíveis
on (API).
WSDL: Web Services Description Language é uma descrição baseada em XML usada para descrição da interface
e declaração de tipo de dados.

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy Infrastructure
Serialização e desserialização

Objeto Eventos
Serialização
10001101 01101001
Referências
11001011 10011001
Variáveis Métodos Desserialização

Matriz JSON JSON XSD


D A
XML
C arquivo
arq
esquema
de

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy Infrastructure
Discovery

- Descobrindo servidores OPC UA na rede


Modelos de informação
- Identificando servidores confiáveis (certificados)
- A diferenciação é feita com base no domínio Acesso à informação

Estabilidade
Segurança
Segurança
- LocalDiscoveryServer (LDS)

Robustez
Modelo de dados e serviços de base

- LocalDiscoveryServer com Multicast Extension


Transporte Discovery
(LDS-ME) Atribuições de protocolo Descoberta de servidores
- GlobalDiscoveryServer (GDS)

- Os aplicativos/servidores registrados no servidor de descoberta


coberta podem
po ser chamados a partir dele.
- Alternativo: Nenhum registro de descoberta Æ acessibilidade
essibilidade por meio do próprio URL de descoberta
- Para dispositivos (dispositivos incorporados)) com apenas
apena um servidor UA (por exemplo, leitor RFID, S7-
1500, etc.), o LDS não é necessário, mas os serviços
serv FindServers e GetEndpoints devem ser
implementados

The discovery service is needed in order to find OPC UA servers.


The following important and essential discovery mechanisms must be implemented.

1. Client
• Specification of a DiscoveryUrl under which servers can be looked for
• Use of the FindServers service for discovering local or remote servers
• Use of FindServersOnNetwork for identification of DiscoveryUrls of servers in the same subnet
• Discovery and connection to available ServerEndpoints

2. UA servers
UA servers must also provide discovery endpoints for the following g functions:
functio
• Localization of local UA servers (Local Discovery): Clientss can find UA
U servers locally via their endpoints
• Localization on known remote devices (Remote Discovery):
covery): Clients
Cl can also address UA servers there through
a known remote URL.

Additional discovery capabilities


• Automatic identification of servers in the subnet
• Filtering by ServerCapabilities node
• LDS with Multicast Extension is required for identifying servers in subnets

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy Infrastructure
Discovery
Global

Global Discovery Server

Server

Server

Embedded Server
Client Discovery Server

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy Infrastructure
Discovery
Local

Discovery Server

Server

Local

Embedded Server
Client Discovery Server

SITRAIN Page 37 IK-OPCUA1


Digital Industry Academy Infrastructure
Discovery process
Servidor padrão e servidor de descoberta

PC1
Descoberta SIMATIC NET WinCC
opc.tcp://pc1:4840 opc.tcp://pc1:55101 opc.tcp://pc1:4862
Client • Basic128Rsa15 • Basic128Rsa15
• Sign • Sign&Encrypt
opc.tcp://pc1:55101
• None / None

RegisterServer()

RegisterServer()

FindServers()

ApplicationDescription[]

GetEndpoints()
ts()

E
EndpointDescription[]
Descript

CreateSecureChannel()

Discovery process: Standard server and discovery server


Up to now, a Local Discovery Service (LDS) is defined for OPC UA Discovery, which is comparable to the OPC
Enum of OPC Classic in terms of the basic functionality.
An LDS supplies a list of OPC UA servers that are locally available on the network node. The LDS runs by default
on Port 4840, the port registered for OPC UA.
As a result, the LDS can always be addressed as a URL via opc.tcp://<Node>:4840. The servers on a PC are
registered with the LDS. A client can select a server and establish a connection with the following steps:
1. Connection establishment without security with Port 4840 and call-up of FindServers. This call returns the list
of available servers and their discovery URL.
2. Connection establishment without security to the discovery URL of the desired server and call-up of
GetEndpoints. This call returns the list of endpoints with the endpoint
ndpoin URLs and the security settings of the
endpoints of the UA servers.
3. Connection establishment with the endpoint URL of the desired
desir UA server and with the required security
settings, e.g. signed or encrypted. Afterwards,
ds, an application
applic session with the UA server can be opened with
CreateSession.

Example: During configuration of the servers, for the purpose of connecting OPC UA variables, the TIA Portal
establishes a connection without security via the discovery services in order to find the servers with variables. The
server must temporarily activate the security profile None for this. None can then be deactivated again and an
encrypted connection can be configured.

SITRAIN Page 38 IK-OPCUA1


Digital Industry Academy Infrastructure
Discovery process
Servidor incorporado

Device: RF600
UA server
opc.tcp://rf600:4840
Client

FindServers()

T
ApplicationDescription[]
ption[]

PL
GetEndpoints()
etEndpoints()

EndpointDescription[]
Endpo

CreateSecureChannel()

Server discovery on embedded server


If only one OPC UA server is available on a system, this can run on the standard port 4840 because each server
must also implement FindServers and then only return itself. The endpoints use Port 4840 in this case as well.
As a result, the UA server can always be addressed as a URL via opc.tcp://<Node>:4840.
The FindServers service returns only the current UA server of the device.
A client can then establish a connection in the same way as during server discovery with a discovery server.

SITRAIN Page 39 IK-OPCUA1


Digital Industry Academy Infrastructure
Robustez

• Conceito para fortalecer a comunicação do OPC UA


Modelos de informação
• Inclui:
• Detecção e tratamento de erros Acesso à informação

Estabilidade
Segurança
Segurança
• Buffer de dados

Robustez
Modelo de dados e serviços de base

• Buffer de interrupções de conexão


Transporte Discovery
• Auditoria Atribuições de protocolo Descoberta de servidores
• Traces: Gravação da execução do programa
• Logs: Gravação de alterações de usuário/cliente
• Security Trails: Rastreamento de acesso do cliente com foco na segurança
• Funções de diagnóstico

This section explains which automatic mechanisms must take effect in the event of communication problems with
OPC UA connections.
The hardening of the OPC UA communication is implemented based on various services. These services are
described in Part 4 of the OPC UA Specification.

SITRAIN Page 40 IK-OPCUA1


Digital Industry Academy Infrastructure
Robustez
Capacidades necessárias

Servidor
Server
• Se um ou mais clientes usam muitos recursos, isso é reconhecido com
códigos de erro e informações de status.
• Após interrupções de conexão, a conexão é restabelecida autonomamente.
• O número de conexões, assinaturas e chamadas de serviço do cliente é
adaptado aos recursos disponíveis.
• Para solicitações que não podem ser respondidas em uma única resposta,
pontos de continuação são adicionados para distribuir a solicitação por várias
respostas.
• Os prazos para sessões e assinaturas são respeitados com base em
cronômetros configurados, independentemente dos protocolos
rotocolos de transporte e
da conexão.
• Sessões expiradas e inatividade do cliente
nte levam automaticamente
a ao
encerramento das sessões.

SITRAIN Page 41 IK-OPCUA1


Digital Industry Academy Infrastructure
Robustez
Capacidades necessárias

Cliente
• Clientes manipulam códigos de erro e respondem a códigos de erro do Client
servidor.
• Após interrupções de conexão, a conexão é restabelecida autonomamente.
• Os clientes enviam solicitações cíclicas para manter a sessão ativa, para
verificar se o servidor ainda está acessível e para comunicar sua própria
atividade ao servidor.

Additional robustness capabilities


The following capabilities can be optionally implemented by clients and servers:
• Data buffering for prevention of data loss in case of connection interruptions
• Auditing of the client (Traces, Logs, Security Trails)
• Audit events Æ Event notifications of the server in case of security-relevant events
• Diagnostics data acquisition for identification of load, security attacks, usage scenarios (access types),
communication bottlenecks, inefficient and incorrect access types (e.g. Read instead of Registered Read)

SITRAIN Page 42 IK-OPCUA1


Digital Industry Academy Infrastructure
UaExpert
Cliente OPC UA de freewareE
e para
pa fins de teste

SITRAIN Page 43 IK-OPCUA1


Digital Industry Academy Infrastructure
UaExpert

UaExpert é um cliente OPC UA gratuito da Unified


Automation para fins de teste.

A versão gratuita do UaExpert possui os seguintes


plugins:
• OPC UA Data Access View
• OPC UA Alarms&Conditions View
• OPC UA Historical Trend View
• DI Information Model Plugin
• OPC UA Performance Plugin

O UaExpert está disponível para Windows e Linux..

Download OPC UA client UaExpert:


https://www.unified-automation.com/downloads/opc-ua-clients.html

SITRAIN Page 44 IK-OPCUA1


Digital Industry Academy Infrastructure
Classificação do OPC UA client

Sistema de Execução de Manufatura


OPC UA

WinCC RT Professional, WinCC V7.5,


Sistema Gerenciamento de
WinCC OA
SCADA energia
Estrutura de
engenharia

S7-1500, HMI Comfort/Mobile Panel,


WinCC RT Advanced, MindConnect Nano,
PROFINET

Controlador HMI IPC Comunicação Motion Mind Conn


Connect IOT2000, S7-400 with CP 443-1
industrial control
trol Nano
N

Nenhum cliente no nível do campo


Fonte e distribuição Identificação I/O Sistemas de
Si Controles
de energia industrial distribuído
buído Drives industriais

UaExpert can be classified between the control level and management level. As a commissioning tool, it is used
exclusively for testing and commissioning the OPC UA servers.
The client has all the access variants of OPC UA and is available for free download from Unified Automation.

SITRAIN Page 45 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Project window
Attributes window

Document window

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 46 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Pode ser usado para


gerenciar várias conexões a
servidores.

Project window
Attributes window

Document window

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 47 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Exibe o espaço de endereço


Project window
do servidor
atualmente Attributes window
selecionado na Project
window.

Document window

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 48 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Pode exibir vários modos de


visualização. A visualização
Project window de acesso a dados é
Attributes window
selecionada por padrão.

Document window

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 49 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Exibe os atributos do nó
atualmente selecionado no
diretório Address Space
window.
Project window
Attributes window

Document window

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 50 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Project window
Attributes window
Exibe as referências do nó
atualmente selecionado no
diretório Address
Document windowSpace
window.

Address Space window


References window

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 51 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral das janelas

Project window
Attributes window

Document window

Address Space window


References window

Exibe status e mensagens


ns de
erro.

Log window

Project window
Pode ser usado para gerenciar várias conexões de servidor.

Address Space window


Exibe o espaço de endereço do servidor atualmente selecionado na Project window.

Document window
Pode exibir vários modos de visualização. A visualização de acesso a dados é selecionada por padrão.

Attributes window
Exibe os atributos do nó atualmente selecionado no diretório
io Address Space window.

References window
Exibe as referências do nó atualmente selecionado
elecion no diretório Address Space window.

Log window
Exibe status e mensagens de erro.

SITRAIN Page 52 IK-OPCUA1


Digital Industry Academy Infrastructure
Address Space window

1 2
Em negrito, nomes padrão do
OPC fundation.

Depois que a conexão com um servidor é estabelecida, o espaço de endereço do servidor OPC UA é exibido
hierarquicamente em uma estrutura em árvore na visualização do Address Space.

1. Depois que a conexão com um servidor é estabelecida, o espaço de endereço do servidor OPC UA é exibido
hierarquicamente em uma estrutura em árvore na visualização.
2. A captura de tela à direita mostra os nós destacados do espaço para nome padrão da OPC Foundation, que
deve ser incluído em todos os servidores.

SITRAIN Page 53 IK-OPCUA1


Digital Industry Academy Infrastructure
Janelas de Atributos e Referências

4
TemperatureSensorType
Attribute Type
+ NodeId NS4|Numeric|1001
+ NodeClass ObjectType
+ BrowseName Temperature
SensorType
+ DisplayName Temperature
SensorType
+ WriteMask 0 4
+ UserWriteMask TemperatureSensor
0

1 + EventNotifier Attri
Attribute None

AG
Type
+ HasTypeDef
sTypeDe FolderType

T
NodeId
+ No NS4|String|Demo.

C
BoilerDemo.
Boiler1.
TemperatureSensor
+ NodeClass Object
+ BrowseName TemperatureSensor
+ DisplayName TemperatureSensor
+ WriteMask 0
3 + UserWriteMask 0
2
+ EventNotifier None

1. The Attributes window displays the attributes of the currently selected node.
2. All references of the node are listed in the References window. Thus, for example, it is possible to trace back
the instantiated data types of a variable.
3. By right-clicking a reference, you can trace it in the address space.

SITRAIN Page 54 IK-OPCUA1


Digital Industry Academy Infrastructure
Exercício 1
UaExpert & OPC UA ANSI C
servidor de demonstração

SITRAIN Page 55 IK-OPCUA1


Digital Industry Academy Infrastructure
Visão Geral

OPC UA

Servidor de demonstração OPC UA ANSI C Cliente OPC UA UaExpert

xpES
Neste exercício, você usará o servidor de demonstração
stração OPC UA ANSI C da Unified Automation, que fornece dados, métodos, eventos e dados históricos.
Acessaremos o servidor com o OPC UA client UaExpert, também do Unified Automation.
Download OPC UA ANSI C demo server:
https://www.unified-automation.com/downloads/opc-ua-servers.html

Neste exercício, você usará o servidor de demonstração OPC UA ANSI C da Unified Automation, que fornece
dados, métodos, eventos e dados históricos.

Acessaremos o servidor com o OPC UA client UaExpert, também do Unified Automation.

Download OPC UA ANSI C demo server:


https://www.unified-automation.com/downloads/opc-ua-servers.html

SITRAIN Page 56 IK-OPCUA1


Digital Industry Academy Infrastructure
Iniciando e conectando o servidor

(mensagem de firewall > permitir acesso). E


Inicie o servidor de demonstração via "Start > Unified Automation > UaAnsiCServer"
UaAns

Copie o terminal URL.


Inicie o UaExpert via "Start > Unified Automation > UaExpert".
Clique no botão "+" na barra de ferramentas para adicionar um novo servidor.

1. Inicie o servidor de demonstração via "Start > Unified Automation > UaAnsiCServer" (mensagem de
firewall > permitir acesso).
2. Copie o terminal URL.
3. Inicie o UaExpert via "Start > Unified Automation > UaExpert".
4. Clique no botão "+" na barra de ferramentas para adicionar um novo servidor.

SITRAIN Page 57 IK-OPCUA1


Digital Industry Academy Infrastructure
Iniciando e conectando o servidor

1. Duplo clique em "< Double


click to Add Server… >" e
cole o URL do terminal
copiado do servidor de
demonstração.
2. Selecione o nível de
segurança "None – None
1
(uatcp-uasc-uabinary)" e
2 confirme com "OK".

1. Duplo clique em "< Double click to Add Server… >" e cole o URL do terminal copiado do servidor de
demonstração.
2. Selecione o nível de segurança "None – None (uatcp-uasc-uabinary)" e confirme com "OK".

SITRAIN Page 58 IK-OPCUA1


Digital Industry Academy Infrastructure
Iniciando e conectando o servidor

Conecte-se ao servidor
de demonstração.
Clique no botão "Trust
Server Certificate“ para
1 confiar permanentemente
no certificado.

Nota:
Mais informações sobre
troca de certificados
seguirão nas seções
subsequentes.

1. Conecte-se ao servidor de demonstração.


2. Clique no botão "Trust Server Certificate“ para confiar permanentemente no certificado.

Nota:
Mais informações sobre troca de certificados seguirão nas seções subsequentes.

SITRAIN Page 59 IK-OPCUA1


Digital Industry Academy Infrastructure
Compreendendo o espaço de endereço, atributos e
referências

Responda as seguintes questões:


• A qual namespace o objeto "TemperatureSensor" (Root > Objects > Demo > 009_BoilerDemo > Boiler1) está
atribuído?
• De que tipo de objeto é derivado o objeto "TemperatureSensor"?
• Quais variáveis o tipo de objeto contém?
• Quais propriedades as variáveis contêm?
• Quais propriedades são obrigatórias durante a instanciação e quais são opcionais?
• Quais dessas propriedades são instanciadas pelo objeto "TemperatureSensor"?

SITRAIN Page 60 IK-OPCUA1


Digital Industry Academy Infrastructure
Compreendendo o espaço de endereço, atributos e
referências

Arraste a variável temperature (Root > Objects > Demo > 009_BoilerDemo > Boiler1
>TemperatureSensor) para a área central da tela e responda as seguintes questões:
Qual valores são apresentados?
A qual namespace o objeto "TemperatureSensor" (Root > Objects > Demo > 009_BoilerDemo > Boiler1)
está atribuído?
De que tipo de objeto é derivado o objeto "TemperatureSensor"?
Quais variáveis o tipo de objeto contém?
Quais propriedades as variáveis contêm?
Quais dessas propriedades são instanciadas pelo objeto
bjeto "TemperatureSensor"?
"Temp

Responda as seguintes questões:


• A qual namespace o objeto "TemperatureSensor" (Root > Objects > Demo > 009_BoilerDemo > Boiler1) está
atribuído?
• De que tipo de objeto é derivado o objeto "TemperatureSensor"?
• Quais variáveis o tipo de objeto contém?
• Quais propriedades as variáveis contêm?
• Quais propriedades são obrigatórias durante a instanciação e quais são opcionais?
• Quais dessas propriedades são instanciadas pelo objeto "TemperatureSensor"?

SITRAIN Page 61 IK-OPCUA1


Digital Industry Academy Infrastructure
Compreendendo o espaço de endereço, atributos e
referências

Qual o valor aproximado e o status da variável?


R ~ 91,5
A qual namespace o objeto "TemperatureSensor" (Root > Objects > Demo > 009_BoilerDemo > Boiler1)
está atribuído?
R ns=4;s=Demo.BoilerDemo.Boiler1.TemperatureSensor
De que tipo de objeto é derivado o objeto "TemperatureSensor"?
R Boiler1
Quais variáveis o tipo de objeto contém?
R FillLevel, FillleveSetpoint, Temperature, TemperatureSetpoint
ratureSetpo
Quais propriedades as variáveis contêm?
R NodeId, NodeClass, BrrowseName,
ame, Description,
Desc WriteMask, etc.
Quais dessas propriedades são instanciadas pelo objeto "TemperatureSensor"?
R as que estão em preto (não estão em cinza claro)

Responda as seguintes questões:


• A qual namespace o objeto "TemperatureSensor" (Root > Objects > Demo > 009_BoilerDemo > Boiler1) está
atribuído?
• De que tipo de objeto é derivado o objeto "TemperatureSensor"?
• Quais variáveis o tipo de objeto contém?
• Quais propriedades as variáveis contêm?
• Quais propriedades são obrigatórias durante a instanciação e quais são opcionais?
• Quais dessas propriedades são instanciadas pelo objeto "TemperatureSensor"?

SITRAIN Page 62 IK-OPCUA1


Digital Industry Academy Infrastructure
Apêndice
E
Se você quiser saber mais …

SITRAIN Page 63 IK-OPCUA1


Digital Industry Academy Infrastructure
Perfis de pilha do OPC UA
PubSub em detalhe

ISO OSI DoD OPC UA PubSub


7 Applicação UADP JSON UADP
Protocolo
6 Apresentação Aplicação MQTT AMQP
UADP IoT
5 Sessão SSL/TLS

4 Transporte Transporte TCP UDP

3 Rede Rede IP

2 Link de dados
Acesso à rede T A
TSN

1 Físico
SP
Ethernet
thernet IEEE
IE 802.1 + IEEE 802.3

i Legenda de cor :
Protocolo de transporte
Protocolo de segurança
Codificação

PubSub stack profiles


The Ethernet network access layer and the TSN belonging to Ethernet form the basis of the PubSub stack profiles
also. Above this, they are based on IP and TCP or UDP.
For IoT-based network protocols, it is important for data to be disseminated in a broadcast manner.
The confirmation of data receipt plays a subordinate role in this case.
The OPC UA PubSub stack profiles are thus based on either MQTT or AMQP.
AMQP can be used for device-to-device (D2D), device-to-cloud (D2C) and cloud-to-cloud (C2C) communication,
but MQTT tends to be used for D2C. AMQP is point-to-point communication, and MQTT is a traditional
Publish/Subscribe method.
Both protocols provide the possibility of broker-based and brokerless communication.

SITRAIN Page 64 IK-OPCUA1


Digital Industry Academy Infrastructure
Servidor/cliente e PubSub

Client

Sub
Sub 1,2 Sub
Client 1 2

Broker Without
Broker
Server Server Server
1 2 3 S2
Pub
P1 2
Server
Server Server

i Legenda de cor:
Servidor/cliente PubSub
Pu Menssagem 1
Menssagem 2
Both

Overview of differences between server/client and PubSub:

Server/client PubSub

Coupling Role does not change Role is flexible


Æ Server remains a server Æ Publish and Subscribe alternate
Middleware Discovery Server Message-oriented Middleware (MoM),
Broker (MQTT, AMQP), Brokerless (UDP)

Authentication Discovery / Server MoM / direct / session certificates

Communication XML / Binary MQT G


MQTT / AMQP

Protocols • artners
Fixed connection partners • Dynamic connection partners (IoT-
• mized
Integrity optimized based)
• ust with res
Not robust respect to data • Energy-optimized (no ACK)
loss • Robust against data loss

Connection Peer-2-Peer Broadcast / Multicast

Distribution Registration, Subscription Subscription

Data flow Server Æ Client Publisher Æ (Broker Æ) Subscriber

Objective Secure data transmission, receipt IoT-based, information distribution, receipt


confirmation important confirmation of secondary importance

SITRAIN Page 65 IK-OPCUA1


Digital Industry Academy Infrastructure
Servidor/cliente e PubSub
Assinatura em comparação com o DataSet

Client

Sub
Client Sub Sub

Broker

Servidor Publisher
Sessão G
DataSetWriter
Data
Subscription
SubscriptionN1 DataSet

Nós
Espaço de endereço

Uma comparação entre servidor/cliente e PubSub com relação ao fornecimento de dados mostra que os métodos
diferem na assinatura.
O lado esquerdo mostra o fornecimento de dados por um servidor OPC UA. À direita, o fornecimento de dados é
implementado como um editor do OPC UA.
Na variante servidor/cliente, a assinatura de dados é possível na sessão usando assinaturas. No PubSub, um
DataSet com um DataSetWriter é necessário.
O acesso ocorre em cada caso ao espaço de endereço e aos nós nele contidos.
O cliente OPC UA não pode mais selecionar dados relevantes para a assinatura. No PubSub, por outro lado, a
distribuição do DataSet via broker (como Middleware orientado a mensagens) baseia-se inicialmente em uma
transmissão anônima da qual os assinantes individuais assinam os nós relevantes para eles.
Nesse contexto, anônimo significa que o publisher conhece seus assinantes
ssinan apenas indiretamente.

SITRAIN Page 66 IK-OPCUA1


Digital Industry Academy Infrastructure
Chapter 4

Information Models,
AG
rofiles
Access Types and Profiles
T
C P L
Modelling and data assignments basedS
ased on the
A th
infrastructure

© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Learning objectives

In this section, you will learn ...

… how the information model is structured

… the access types offered by OPC UA

… the access types supported by UaExpert and how they


are used

… what profiles are

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Information models
Overview of information models

Information models
Vendor-specific information models

Industry standard information models


(Companion Specifications: FDI, PLCopen, ISA 95, AutoID, …)

Base information models

DA HA AC PROG
G
Infrastructure
C
LInformation access

Robustness
Data model and base services
Security
Security

Stability
Transport Discovery
Protocol assignments Discovery of servers

Information models
The information models make use of the underlying infrastructure and describe the modeling and structuring of
the data, i.e. the data, the relations between the data and the semantics. They are divided into three levels:

• Base information models


These models are defined by the OPC Foundation in the OPC UA Specification for generally applicable
information (Data Access (DA), Historical Data Access (HA), Alarms and Conditions (AC), Programs). They are
included in the OPC UA standard.
• Industry standard information models
pa
Industry standard information models are defined in so-called Companion Specifications and either build on
C
the base information models or define their own information models. Companion Specifications are OPC UA
PLCOpen, etc.) onto the data model and base
DI, PLCOpe
specifications that map other industry standards (e.g. FDI,
services of OPC UA.
• Vendor-specific information models
ecific OPC
These involve modeling of vendor-specific OP UA communication between products of a manufacturer with
d modeling. These can be created with complete freedom and are not
proprietary functionality or user-defined
defined by an open standard.

In general, anyone, including end users, can create information models.

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Base information models

• Data Access
Vendor-specific information models
• e.g. sensors, control units, position encoders
• Analog values, digital values Industry standard information models
• Alarms & Conditions
• e.g. safety limits of devices, stacking process with user Base information models
agreement
DA HA AC PROG
• Historical Access
• Data Infrastructure

• Events
• Programs

Base information models included in the OPC UA standard define those objects that are common to all application
domains.
Definitions are included for alarms, analog/digital data, historical data and events. These can all be integrated in a
server.

• Data Access (DA) [OPC UA Specification 8] is an information model for process data representing the current
state and behavior of the underlying industrial or business process.
• Alarms and Conditions (AC) [OPC UA Specification 9]
• Alarms are specific conditions that represent abnormal states of a process or system.
• Conditions define a state in a system that requires an interaction
on with an operator or user.
• Historical Access (HA) [OPC UA Specification 11]
• Historical Data Access (HDA) deals with the handling historical time series data. The address space of
andling of h
HDA servers contains historical nodes representing
presenting the
t history of variables and properties.
• Historical Event Access (HEA) deals with th
the handling of historical time series events.
• Programs [OPC UA Specification 10] rep
represent long running, often complex and stateful functions in a server
or underlying system.

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Base information models

Historical Data Access:


Aggregates
Read() • Average()
• …
Historical Event Access
t t
Data Access Historical Access

Start Run

Init() Do() End()


DR
Error
ESStop

t
Alarms & Conditions Programs

Data Access
• Process values (e.g. AnalogItemType)
• Unit and value range

Historical Access
• Historical analysis
• Data and events
• Aggregate functions

Alarms & Conditions


• Alarms, status values
• State machines
• Events at transitions
ACK
• Callbacks e.g. acknowledgment of receipt (ACK)

Programs
• More complex processes
• Influencing of programs (start, stop)
• Status information for program execution
• Methods

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Data Access
Process value

Sample()

Value
Read()

Time

Data Access (DA) is an information model for real-time data, i.e. data representing the current state and behavior
of the underlying industrial or business process.
Access takes place via Read, Write and Subscription services. Typical sources are sensors, control units, position
encoders, etc.

Such information is typically used by an OPC UA client for user displays or for monitoring and controlling the
process.

Examples:
• Device data such as sensor measurement or actuator status
• Energy consumption, energy price
• Calculated data
• Enterprise data
e.g. share prices)
• Dynamically changing system data (e.g. p
• Diagnostics data

In automation systems, the data is often located on I/O modules, distributed I/O devices, controllers and
input/output modules that communicate with one another over serial connections, fieldbuses or other connections.
This communication may be interrupted in industrial processes. That is why the DA model also defines status
codes that indicate the quality of the physical connection.

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Alarms & Conditions

Specification part on the triggering of hardware interrupts and events and the
monitoring of conditions by the OPC UA server:
• Recognition of events (Event)
• Determination of states by monitoring conditions (Condition)
• Acknowledgment of events (Acknowledgment)
• Monitoring of acknowledgment (Confirmation)

Conditions define a state in a system that requires an interaction with an operator or user.
An example is a dialog that is displayed when something happens that an operator must respond to.

Alarms are specific conditions representing abnormal states of a process or system. This also includes unsolicited
notifications when the alarm state changes.
Common examples are:
• Temperature exceeding a configured limit
• Violation of the safety limits of plants
• Device needing maintenance
ss before
• Batch process in which a user must confirm a step in the process befor it can continue

es in large systems
State-driven notifications have significant advantages s with hundreds or even millions of
conditions. OPC UA clients monitor the alarms ms and can subscribe
s to alarms for certain areas of a plant. They
receive notifications when the status of a condition changes and each notification contains sufficient information to
identify the type and source.
Such notifications are typically used to identify faulty devices, create maintenance orders and improve the
effectiveness of the operator.
Some status changes require actions to be taken, such as acknowledging the status change. An example is an
alarm that is activated when a process value exceeds a configured limit.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Alarms & Conditions
Timeline example
Process value

Normal Unconfirmed Confirmed Normal

Response time

Problems occur

Alarm limit
Alarm deadband

Time

Delays: Confirmation Response Process Switch-off

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Programs
State machine

Stop

Reset() Stop() Stop()

Ready
Stop()

Start()

Running
nnin
L
DR
Interrupt()
Interrupt Resume()

Idle

OPC UA programs represent long running, often complex and stateful functions in an OPC UA server or
underlying system.
Comparison of methods and programs
• A method can be used, for example, to perform a calculation or reset a counter.
• Examples of programs include
o Executing and controlling a batch process
o Executing a subprogram in a machine tool
o Administering a domain download.

tem or process in which control or


Programs can represent any level of the functionality within a system
intervention by the OPC UA client is required and progresss monitoring
monitorin is desired. The execution time of a
program is not tied to the duration of a session.

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Historical Access

- Data acquisition (HDA) over a defined period Node


- Event recording (HEA) over a defined period
- Reference of a node to itself at different times
Æ Reference type
Time
- Enables aggregate functions
tX t1 t2 t3

Aggregate functions
Functions that can be run on the history
- Efficient data processing
- Resource reduction for network and client

Aggregate functions
• Interpolative • DurationBad
• Average • PercentGood
• TimeAverage • PercentBad
• Total • WorstQuality
• Minimum • StandardDeviation
• Maximum • Variance
• MinimumActualTime
• MaximumActualTime
• DurationStateZero
• DurationStateNonZero
• NumberOfTransitions
• Count
• Range
• Start
• End
• StartBound
• EndBound
• Delta
• DurationGood

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Historical Access
Timeline example
Process value

MaxTimeInterval

MinTimeInterval
AGGREGATE_AVG
AGGREGATE_MAX

Historical Events

AGGREGATE_MIN

Time

Historical Data Access (HDA)


Historical Data Access deals with the handling of historical time series data. The address space of OPC UA HDA
servers contains a chain of historical nodes representing the history of variables and properties.
OPC UA HDA clients work with historical data by accessing these nodes using the HistoryRead and HistoryUpdate
services. There are different types of historian servers. Application areas of OPC UA HDA servers are:
• Simple trend data servers that provide only basic raw data storage. Data is typically the data types available
from a Data Access server.
• Complex data compression and analysis servers that offer both data compression and raw data storage. They
are able to provide summary data or data analysis functions (so-called aggregates) such as average values,
minimum values and maximum values. They can support data updates and the history of these updates.
Besides the actual historical data storage, they can also support storage
ora of user information.

Historical Event Access (HEA)


Historical Event Access deals with the handling
ing of historical
histori time series events. The address space of OPC UA
HEA servers contains a chain of historical
al nodes representing
re the history of the event sources (objects or views).
OPC UA HEA clients process historical events
ven by accessing these nodes using the HistoryRead and
HistoryUpdate services.
Examples of historical events are notifications, system alarms, user activities and triggers (e.g. orders to be
processed).

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Industry standard information models
Companion Specifications

Selection of specifications of known industry


Vendor-specific information models
associations and consortia
• Device Integration Model (DI) Industry standard information models
• Analyzer Device Integration (ADI)
• Field Device Integration (FDI) OPC UA base information models

• PLCopen Model (IEC 61131-3) DA HA AC PROG

• BACnet OPC UA Information Model Infrastructure


• Auto-ID Automatic identification systems (AIM)
• MTConnect Model
Machine

• Enterprise-Control System Integration Model - ISA-95 PLC1 PLC2

• Engineering Data for Production Systems - Motor1 Motor 2 Sensors IO

AutomationML Temperature Speed RFID

ion
• MDIS - MCS-DCS Interface Standardization Min Min

• CNC Systems Information Model


• SERCOS Information Model
Max Max

• POWERLINK Information Model

The industry standard models that are brought into OPC UA through so-called Companion Specifications map the
OPC UA data model onto existing industry standards:
• Reference to logical or physical structure of production systems (AutomationML, etc.)
• Structures for describing devices with a specified range of functions, e.g. AutoID (RFID reader)

In this case, a Companion Specification signifies an extension of the standard specification of the OPC Foundation
with an additional specification part that is typically developed through cooperation between a consortium or
association with the OPC Foundation.
Companion Specifications are always based on the OPC UA data model and base services. They can be derived
from the OPC UA base information models (DA, AC, HA, PROG).
The domain- and sector-specific semantics simplifies the connection
tion of devices
de or parts of a plant to an existing
plant.
Technically, Companion Specifications are brought in by defining
defini XML and schema files that map the industry
model to an existing data structure in the server.
er.

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Companion Specifications
AutoID

2D code reader RFID reader

Excerpt from AutoID Companion Specification (ScanResult)

Companion Specifications are function-related and not device-related. This means that they semantically describe
models and plants without having to define a dependency on specific device properties.
The AutoID specification, which was published jointly by the Association for Automatic Data Capture, Identification
and Mobility (AIM) and the OPC Foundation, will be discussed in detail with the help of the devices covered in this
course (barcode reader and RFID reader).

Both devices support the AutoID specification. It provides methods, data types and data as well as events in the
address space of the server.
One example is the ScanStart() method, which returns a ScanResult and thus the digitized scan data. For the
barcode reader, the method triggers the start of optical recording by the camera, processing of the recorded
information and recognition of the ID.
The RFID reader, on the other hand, captures the RFID tags in
n its antenna
antenn radius at the conclusion of the
ScanStart() method and returns their IDs.
Companion Specifications are defined in their own
wn namespaces.
namesp They can thus define their own data types and
references independent of the global OPC
C UA namespace.
names The supported Companion Specifications of an OPC
UA server can be determined in the OPCC UA client
cli by browsing the namespace.

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Vendor-specific information models
SIMATIC NET address space

1
4

Structuring of the address space


The basic structure of the OPC UA address space is defined in Part 5. The figure shows a portion of this structure
using the example of the SIMATIC NET OPC UA server. The different areas are described in the table below.

No. Description

1 The Objects directory contains instances, such as objects and variables. A Data Access client finds the
variables for data access in this directory. Besides the SIMATIC NET-specific directories, the Server
object defined by OPC UA can also be found here. It contains information about the range of
functionalities and status of the server.
2
LC
The two directories – S7: and SYM: – under Objects
jects are specifically
P
s for the SIMATIC NET OPC UA

the project can be found. S


server. Under S7: the configured S7 connections
ctions are listed as objects. Under SYM: the symbols from

3 The Types directory contains the


VariableTypes.
E
e various
vario type nodes for DataTypes, ObjectTypes, ReferenceTypes and

4 An S7 connection object provides a variety of status information and methods. For example, data blocks
in the S7 CPU can be processed or read out using methods. In addition to the methods, properties
provide information about the configuration of the S7 connection.
5 The S7ConnectionType associated with the S7 connection object can be found in the ObjectTypes
directory. It describes the minimum methods and variables that the instance must have.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Vendor-specific information models
Namespaces and NodeId

Namespace Description
http://opcfoundation.org/UA/ This is used for nodes that are defined in OPC UA Part 5. These
are nodes that form the basic structure of the address space and
nodes that represent the types defined by OPC UA.
S7: Namespace for direct addressing of S7 tags with an optimized
syntax.
S7COM: Namespace for direct addressing of S7 tags with a syntax
compatible with the OPC Data Access server.
SYM: ssing of S7 tags. The symbol
Namespace for symbolic addressing
om the STEP
information is exported from STE 7 project.

Each node in the OPC UA address space is uniquely identified by a NodeId. This NodeId consists of a namespace
for distinguishing identifiers from different subsystems and an identifier, which can be a numeric value, a string or
a GUID.

Strings are typically used for the identifier. This is similar to OPC Data Access, where the ItemId as identifier is
also a string. Numerical values are used for static namespaces, such as type system.
OPC UA defines a namespace for the nodes defined by OPC. The OPC UA servers also define one or more
namespaces. The following table shows the relevant namespaces for the SIMATIC NET OPC UA server.

Namespace Description

http://opcfoundation.org/UA/ or nodes that


This is used for tha are defined in OPC UA Part 5. These are nodes that
form the structure of the address space and nodes that represent the
e basic struc
types defined
efined by OPC UA.
S7: Namespace for direct addressing of S7 tags with an optimized syntax.

S7COM: Namespace for direct addressing of S7 tags with a syntax compatible with the
OPC Data Access server.
SYM: Namespace for symbolic addressing of S7 tags. The symbol information is
exported from the project.

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Access types

Client Client Client Client Client Client Client

Status changes of the A&C Var


Reg. nodes response
Publishing
Browse response

Reg. nodes request

Data response
R/W response

R/W response

Call response
Browse request

Node request
Data request
R/W request

R/W request

Call request
Sampling

RA
Server Server Server Server
ver Server Server Server

Registered
d Historical Alarms and
Browse Read/Write Subscription Methods
Read/Write Access Conditions

This overview describes all the current OPC UA-supported access types of clients to a server, which represent the
information access to the infrastructure:
• Browse
• Read/Write
• Registered Read/Write
• Subscription
• Methods
• Historical Access
• Alarms and Conditions

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Browse

Client
Client OPC UA server

View
Browse response

BrowseRequest()
Browse request

Server P
BrowseResponse()
owseRespon
Reference
Node
Browse
Address space (node representation)

Use this service to determine the references of a specific node. You can limit the browse operation by using a
view.
In some cases, browsing takes longer than the client timeout. If this happens, the server returns zero results for
the relevant nodes before the time limit expires.

You can browse forward (FORWARD_O), backward (INVERSE_1) or in both directions (BOTH_2).
You can also limit the browse function to specific node classes (0 = Object, 1 = Variable, 2 = Method, etc.).

The client can also specify which references of the respective node will be returned (resultMask:
0 = ReferenceType, 1 = IsForward, 2 = NodeClass, etc.).

i
Information:
You can look up the exact transfer and return parameters as well as the specification description in the "Services"
specification, section 5.8.2 "Browse".

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Read

Client
Client OPC UA server

OPC UA
x y Read address space
R/W response

ReadRequest()
NodesToRead[]
R/W request

Node
X=1
y=3

ReadResponse()
e()
Results[] z=5

1 3
Server

Read/Write

This service is used to read one or more attributes of one or more nodes. For an array, this service allows the
clients to read either the entire set of indexed values as a composite, individual elements or ranges of elements of
the composite.
The "maxAge" parameter is used to instruct the server to access the value from the underlying data source if the
current copy of the data is older than the age specified by "maxAge". If the server cannot achieve the requested
maximum age, it returns its "Best Effort" value instead of refusing the request.

The transferred TimestampsToReturn variable indicates which time stamp(s) will be transferred: timestamp of
sources (SOURCE_0), server (SERVER_1), both (BOTH_2) or neither (NEITHER_3).

i
Information:
You can look up the exact transfer and return
eturn parameters
pa as well as the specification description in the "Services"
specification, section 5.10.2 "Read".

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Write

Client
Client OPC UA server

OPC UA
address space
R/W response
R/W request

Node
0 8 Write X=1
WriteRequest()
NodesToWrite[] y=3

X=0
Results[]

Server P
WriteResponse()
riteResponse y=8

0 8
Read/Write

This service is used to write values to one or more attributes of one or more nodes. For an array, this service
allows the clients to write either the entire set of indexed values as a composite, individual elements or ranges of
elements of the composite.
The values are written to the data source, e.g. a device, and the service does not return until it writes the values or
determines that the value cannot be written.
The order in which the operations are processed in the server is not defined and depends on the various data
sources and the internal server logic. If a combination of attribute and node is contained in more than one
operation, the order of the processing is not defined. If a client requires sequential processing, separate service
calls are needed.

i
Information:
You can look up the exact transfer and return
eturn parameters
para as well as the specification description in the "Services"
specification, section 5.10.4 "Write".

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Registered Read/Write

Client
Client OPC UA server

x y Register
RegisterNodesRequest()
NodesToRegister[] OPC UA
Reg. nodes response
Reg. nodes request

address space
R/W response
R/W request

Node
X=1
y=3
registeredNodeIds[]
re
RegisterNodesResponse()
se() z=5

Value change
Server
x y Read
ReadRequest() NodesToRead[]
Registered
Read/Write Registration
Results[]
ReadResponse() e.g. memory
0 8 X=0 y=8

The server often has no direct access to the information it manages. Variables or services may be in underlying
systems to which establishment of a connection requires additional effort. The RegisterNodes service can be used
by clients to register the nodes they know they will access repeatedly but not cyclically (e.g. write, method call).
The servers are able to set up everything needed to make access operations more efficient (e.g. write variables to
the work memory).
A client can expect performance improvements when using registered nodes. The optimization measures are
vendor-specific, however, and left up to the server developers themselves.

Once the registered nodes are successfully created, the variables are called in the normal way using the
Read/Write service or methods.

If the nodes are no longer needed, these registrations must be


e canceled using the "UnregisterNodes" command in
order to avoid unnecessary server load.

i
Information:
You can look up the exact transfer and return parameters as well as the specification description in the "Services"
specification, section 5.8.5 "RegisterNodes".

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Subscription
Monitored Item

Client
Client OPC UA server PLC

OPC UA User program


Publishing Subscription
y address space
CreateMonitoredItemsRequest()

Cycle time
itemsToCreate[] Node
y=3
y

Monitored
results[] Items y=1
CreateMonitoredItemsResponse()
y Sampling
RequestedPublishingInterval()
()

TA
Sampling y=1
RequestedPublishingInterval()
ingInterval()

SamplingInterval
PL
hRequest()
q
PublishRequest() y=7

AS
PublishResponse()
blishRespon
Server y=1
Publis
PublishRequest()
PublishResponse()
y=1 y=2
Subscription E
Publishing
hing
Intervall
PublishRequest()
PublishResponse()
y=2 Sampling
y=2

Clients define MonitoredItems in order to subscribe to data and events. Each MonitoredItem object identifies the
element to be monitored and the subscription for sending of notifications. The element to be monitored can be any
node attribute.
The subscription sends the data periodically in a user-defined publishing interval. The cycle in which these
notifications are sent is referred to as the publishing interval. The publishing interval for a subscription is initiated
by polling (publishing request) of the client.
Four primary parameters are defined for MonitoredItems that tell the server how the element is to be sampled,
evaluated and reported. These are the sampling interval, monitoring mode, filter and queue parameters.

i
Information:
You can look up the exact transfer and returnn parameters
parameter as well as the specification description in the "Services"
specification, section 5.12.1 "MonitoredItem
tem model".
mode

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
MonitoredItem
Monitored attribute of a node in the client

Server
Client

Node: Temperature MonitoredItem: Temperature


Attribute Type Value
+ NodeId NS4|String|Demo. Sampling
BoilerDemo.
Boiler1. Notification
TemperatureSensor. SamplingInterval 50
Temperature
Filter DataChange
+ Value
Queue 2
Hidden attributes PublishingInterval 100
TriggerModel false

Address space on the server MonitoredItems on the client

MonitoredItem
The MonitoredItem specifies the attributes of a node that are monitored in a subscription on the client.

• MonitoringMode:
• Sampling: Time-driven query of values
• Notification: Notification by server

• SamplingInterval:
• PublishingInterval, 0 = Event, Value
• MinimumSamplingInterval is an attribute of the node

• Filter: Criterion for notification (DataChangeFilter, AggregateFilter, EventFilter,


Eve etc.)

• Queue: discardOldest, sampling fills the queue until the


e next notification
notifi
• Oversampling: QueueSize = 1, SamplingIntervalval < PublishingInterval
Publis

• PublishingInterval: Time interval for sending the


th MonitoredItem to the client

• TriggerModel: Transfer of a MonitoredItem initiated by another MonitoredItem

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Settings of MonitoredItem

Variable value
MonitoredItem data

Event Notification
Client
MonitoredItem events
Publishing
Interval
Variable value
MonitoredItem aggregates
i Legend:
Filter
Subscription
Sampling
Queue
Active/Inactive

A client can subscribe to three change types by monitoring MonitoredItems:


• Data changes (DataChange)
• Events and object changes (EventNotifier)
• Historical aggregates (Aggregate)

Sampling interval
The sampling interval determines the time range in which the server queries
the data source for changes. The sampling interval can be less than the
interval for notification of clients. The values that accumulate as a result are
buffered in a queue and published collectively for the client.
Filter
Filters are used to differentiate between change types in orderr to hide events
eve based on selected criteria, e.g.
deadzone, trigger.
Queue
The length of the queue determines whether
ther data will
w be buffered, updated or discarded when the sampling and
publishing intervals are different.
This is the case, for example, when a queue overflow occurs.
Activation
Activation/deactivation allows MonitoredItems that are temporarily not needed to be hidden without having to
delete the associated subscription.
Publishing interval
The publishing interval determines the time range in which the server communicates the changes to the client. In
the absence of a data change, the notification by the server can be held off and replaced by an empty message in
order to maintain the connection.

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Subscription
Queue

Client
Client OPC UA server PLC
Monitored Items
Subscription y
y--1
Publishing QueueSize = 4
1 F 1 Sampling
DiscardOldest = TRUE
y--2

Cycle time
2 1 2 1 F 2
y--3
3 2 1 F 3
y--4
Sampling
4 3 2 1 4 3 2 1 F 4
y--5
Server
Publishing 5 4 3 2 F 5

Sampling
Interval
Interval
y--6
Subscription
6 5 4 3 6 5 4 3 F 6

Filter

If the variable of the controller satisfies the filter criteria, a notification is generated and put in the queue for transfer
by the subscription. The QueueSize is defined when the MonitoredItem is created.
If the queue is full and a new notification is received, the server either discards the oldest notification and adds the
new one to the queue or it replaces the last value added to the queue with the new one.
One of these discard policies is configured for the MonitoredItem when the MonitoredItem object is created. If
"discardOldest" = TRUE, the oldest value is deleted from the queue. If "discardOldest" = FALSE, the latest value
added to the queue is replaced by the new value.

i
Note:
Clients such as WinCC with a QueueSize of 1 always ys bear the risk of data loss. The developer of the particular
system must pay attention to this when selecting
ng the client
clie for the application.

i
Information:
You can look up the exact transfer and return parameters as well as the specification description in the "Services"
specification, section 5.13.1 "Subscription model".

SITRAIN Page 24 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Methods

Client
Client OPC UA server PLC

x=1 User
OPC UA
y=3 address program
Call CallRequest()
Call response

space
Call request

methodsToCall[]
Node x=1
Input[]

y=3

z=x+y

results[] Output[]
z=4
Server diagnosticInfo[]
CallResponse()
Call
z=4
Status
Methods

Methods are called and are returned only after completion (successful or unsuccessful). The execution times for
methods can vary according to the function that they perform.
Clients find out which methods are supported by a server by searching for the owning object references that
identify their supported methods.
Because methods can control some aspects of plant operations, method calls may depend on environmental or
other conditions. This may be the case, in particular, when you attempt to call a method again immediately after it
has finished executing. Conditions required for calling the method may not yet be returned to the status in which
the method can be started again.

The Call service allows the transfer of input and output arguments to and from a method. These arguments are
defined by properties of the method.
The order in which the operations are processed in the server is not defined
defin and depends on the various tasks and
the internal server logic. If a method is contained in more
e than one operation,
o the order of the processing is not
defined. If a client requires sequential processing, separate
eparate service
se calls are needed.

i
Information:
You can look up the exact transfer and return parameters as well as the specification description in the "Services"
specification, section 5.11 "Method Service Set".

SITRAIN Page 25 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Historical Access

Client
Client OPC UA server

OPC UA
address space
Data response
Data request

Node
t1 y=3
t2 y=4
y t2 HistoricalRead t3 y=5
T
HistoryReadRequest()
quest()
nodesToRead[]
t4 y=6

SP
results[]
HistoryReadResponse()
toryReadRes
Server t5 y=7
4 t2
t6 y=8
Historical
Access

This service is used to read historical values or events of one or more nodes. Servers can provide historical values
to clients that use this service, although the historical values themselves are not visible in the address space.
The AccessLevel attribute defined in Specification 3 specifies that a node supports historical values. Several
request parameters specify how the server is to access values from the underlying history data source. The
EventNotifier attribute defined in Specification 3 specifies that a node supports historical events.

i
Information:
You can look up the exact transfer and return parameters as well
ell as the specification
s description in the "Historical
Access" specification.

SITRAIN Page 26 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Alarms and Conditions

Client OPC UA server


Client

Subscription Alarm
CreateMonitoredItemsRequest() itemsToCreate[] Monitored
Status changes of the A&C Var

y > 10 results[] Items


CreateMonitoredItemsResponse()
Node request

CreateSubscriptionRequest() itemsToCreate[] Node


CreateSubscriptionResponse() results[]
PublishRequest() y=3 1
PublishResponse()
y=8 1
PublishRequest() y=11 1
PublishResponse()
onse()

LC
Alarm y=15 1
CallRequest(Acknowledge)
st(Acknowle
(

Server
Acknowledge
0
S P
WriteRequest()
riteRequest
q
y=12 0
y=8 0
Alarms and
Conditions

The Alarms and Conditions model extends the OPC UA base event model by defining various event types based
on the BaseEventType. All event types defined in this standard can be expanded into domain- or server-specific
alarm and condition types.
Instances of alarm and condition types can optionally be made available in the address space so that direct access
to the status of an alarm or condition is possible.
Various methods are available for the Alarms and Conditions model for acknowledging these alarms and
conditions (individually, collectively, with or without a comment), setting limits, setting the level, etc.

i
Information:
You can look up the exact transfer and return parameters
meters as well
w as the specification description in the "Alarms &
Conditions" specification.

SITRAIN Page 27 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Access types in UaExpert

Client Client Client Client Client Client Client

Status changes of the A&C Var


Reg. nodes response
Publishing
Browse response

Reg. nodes request

Data response
R/W response

R/W response

Call response
Browse request

Node request
Data request
R/W request
R/W request

Call request
Sampling

RA
Server Server Server Serverr Server Server Server

Registered Historical Alarms and


Browse Read/Write Subscription Methods
Read/Write Access Conditions

UaExpert supports all access possibilities specified by OPC UA:


• Browse
• Read/Write
• Registered Read/Write
• Subscription
• Methods
• Historical Access
• Alarms and Conditions

In the following slides, the access types are described in detail using the OPC UA client UaExpert.

SITRAIN Page 28 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Browse – Read/Write

Client Client
Browse response

R/W response
Browse request

R/W request

Server Server

Browse Read/Write

You can browse the respective nodes as well as variables in the Address Space window. When you click on a
variable, the Attribute window displays all the necessary functions as well as the values of the variable, which can
be read and even written here. To obtain the current value, you must initiate the "Read" function here using the
"Refresh" button.

SITRAIN Page 29 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Registered Read/Write

Client
Reg. nodes response
Reg. nodes request

R/W response
R/W request

Server

Registered
Read/Write

The Registered Read/Write function means that registering of variables on the server in UaExpert can be
implemented only in the Performance View.
The measurements for Registered Read/Write can be compared with the normal Read/Write here (see Section 11
"Performance").

SITRAIN Page 30 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Subscription

Client

Publishing
1 4

3
Sampling

Server

Subscription

1. To create a subscription, use drag-and-drop to move the individual variables to the Data Access View.
The client then automatically creates a subscription to the variable.
2. You can then set the sampling interval using the Monitored Item Settings.
In addition, you can configure the "Queue Size" and the "Discard Oldest" function here.
3. Publishing Mode must be enabled in order for the subscription to be active.
4. The Subscription Settings are used to set the publishing interval and other settings on the server end.

Once the variable is dragged into the Data Access View, the log window for the item shows the returned sampling
rate and queue size. These can be limited by the server.

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Methods

Client
Call response
Call request

Server

Methods

The available methods of the server are indicated by the method system in the address space. You call the
respective methods by right-clicking and selecting the "Call…" command. A popup window then appears where
you must specify the input arguments. After issuing the "Call" command again, the output arguments are output.

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Historical Access

Client
Data response
Data request

Server

Historical
Access

The authorization of the client for the respective variables can be read out in the "Attributes" window under
"DataType > AccessLevel".
In the above example, the client has access rights for reading, writing and reading historical data. The Historizing
bit indicates whether historical data for the corresponding variable will also be gathered.

The data can be queried once or cyclically in the History Trend View.

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
History Trend View

History Trend View


The view for historical data is divided into two areas:
• Configuration area
• Area containing a chart of the historical data.
Nodes with the History-Readable bit set in the (User) Access Level attribute can be moved to the configuration
area using drag-and-drop. The display color can be selected here if, for example, multiple data sources exist.

Single Update and Cyclic Update are supported.


With Single Update the displayed range is defined with the start time and end time. When the Update button is
clicked, UaExpert executes a Historical Read Raw.
In Cyclic Update mode, the time range to be displayed is specified
cified directly
direct as a duration and the data is retrieved
at a selectable interval once the Start button has been pressed.
ressed. A data
d recorder application is implemented by
displaying the data of a certain time period up to the present.

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Alarms and Conditions

Client
Status changes of the A&C Var
Node request

Server

Alarms and
Conditions

For Alarms and Conditions, nodes having the SubscribeToEvents state for the EventNotifier attribute can be
dragged to the Event View. The current events and alarms can then be monitored and edited there.

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Event View

Event View
The Event view is divided into three areas: Configuration area, Events/Alarms view and Details area for the
structured display of an individually selected item.
If you a drag a node with set EventNotifier attribute to the Configuration area, you can select the desired Event
Fields. Some fields are selected by default. Each time the object triggers an event, it is displayed in the Events
view. Toggle the Events and Alarms view to watch the continuous list of incoming events and the status of pending
alarms. If you select an event from the list, the details of the event are displayed in the view underneath according
to the above-selected Event Fields.

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
OPC UA profiles

The profiles in OPC UA are the basis for reliable interoperability of a wide range of applications, irrespective of the
manufacturer and platform.

Profiles are specified for the purpose of organizing the complete set of OPC UA features into smaller and,
above all, measurable/testable units, on the basis of which OPC UA applications can be tested and validated.
A compliance test tool is available for testing your own server or client applications. It tests for compliance with
the OPC UA Specification.

Definitions:
• Profile: A full-featured profile bundles a number of OPC UA features of an application and is defined by the sum
of several conformance units and/or other smaller profiles.
• Facet: Definition of a subfunction.
• Conformance Group: A collection of conformance units. s.
• Conformance Unit: Specific function (conformance ce unit).
unit)

While the facet refers to a specific aspect


ct of the OPC UA application, the full-featured profile defines a complete
set of performance features of a functioning OPC UA application. OPC UA applications support one or more
profiles at the same time; the sum of all the supported profiles yields the range of functionalities and the
performance capability of this application from an OPC UA point of view. Profiles are therefore the means of
evaluating applications from an OPC UA point of view.
You can find a detailed description of the individual conformance units on the OPC Foundation website:
https://opcfoundation-onlineapplications.org/profilereporting/

SITRAIN Page 37 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Structure of the smallest complete server profile

Nano Embedded Device Server


Core Server
UserToken – UserName Pwd
Security:
• Security User Name Password
• Security Invalid user token

SecurityPolicy - None
Security:
• Security None CreateSession ActivateSession
• Symmetric SignatureAlgorithm_None
• …
Address Space Model
• Address Space Base
….

UA-TCP UA-SC UA Binary


Protocol and Encoding:
• Protocol UA TCP
• UA Secure Conversation
• Ua Binary Encoding

Example:
Profile: Nano Embedded Device Server
Facet: UA-TCP UA-SC UA Binary
Conformance Group: Protocol and Encoding
Conformance Units: Protocol UA TCP, UA Secure Conversation

The Nano Embedded Device Server server profile essentially supports the following mechanisms:
• The Core Server facet defines the basic functionality of an OPC UA server: the establishment of secure
communication channels, the discovery of supported endpoints, the creation of (at least) one session, the server
object, the browsing of the address space, read access and optionally also write access to elements of the
address space.
• The UserToken – UserName Password facet requires identification of the user of the client application with the
tification o
User Name / Password mechanism.
• The SecurityPolicy – None facet defines the exchange
hange of uunsecured messages.
• The UA-TCP UA-SC UA Binary facet requires support of the OPC UA TCP network protocol and security
ires suppor
mechanisms of OPC UA Secure Conversation
versation 1.0
1 and the binary encoding of messages.

SITRAIN Page 38 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Server profiles and facets

The left side of the figure shows the address space of a server in which the respective profiles and facets of the
server can be read under "Server > ServerCapabilities > ServerProfileArray".

You can find a detailed description of the individual profiles and conformance units on the OPC Foundation
website:
https://opcfoundation-onlineapplications.org/profilereporting/

SITRAIN Page 39 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Server profile

The respective OPC UA profiles of a server can be read under "Root > Objects > Controller name (e.g. PLC_1)
> Server > ServerCapabilities > ServerProfileArray".

In the example, S7-1500:


• http://opcfoundation.org/UAProfile/Server/StandardUA
• http://opcfoundation.org/UAProfile/Server/Methods
• http://opcfoundation.org/UAProfile/Server/EventSubscription

SITRAIN Page 40 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Standard UA server profile

Associated URL: https://apps.opcfoundation.org/profilereporting/

The Standard UA Server profile is a full-featured profile that defines a minimum set of functionalities required for
PC-based OPC UA servers. Such a server must provide the base AddressSpace structure with type nodes,
instance nodes and diagnostic information. The server must provide the connection establishment with security via
the OPC UA TCP binary protocol and the creation of at least 50 parallel sessions. It includes view services like
browsing and the attribute services for reading and writing of current values. In addition, the monitoring of data
changes is included with a minimum of 5 subscriptions for half of the required sessions (225 in total) and a
minimum of 500 monitored items for half of the subscriptions (56250 in total).

SITRAIN Page 41 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Client profiles and facets

SITRAIN Page 42 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Standard UA client profile

Standard UA client 2017 profile:


The Standard UA Client Profile is a full-featured profile that defines a minimum set of functionalities required for
generic OPC UA clients. Such a client must be able to use local, subnet and global discovery. It should be able to
maintain a connection with a single session, as is required, for example, for a nano embedded server. If
subscriptions are used, the customer must adhere to the limitations of servers with limited resources. If a server
does not support subscriptions, the client must provide read access as a substitute. The client must provide the
connection establishment via the OPC UA TCP binary protocol with and without security. This profile replaces the
Standard UA Client Profile.

When the "Show relationship of Conformance Units with Units and Profiles for Clients / Server" option is selected
(see figure), you can have the relationships of conformance units with units
un and profiles for clients and server
displayed.

SITRAIN Page 43 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Overview of server profiles

SIMATIC WinCC RT WinCC V7 SIMATIC WinCC SIMATIC 2D code


NET Prof SCADA S7-1500 RT Adv RF600 reader

Standard UA X X X X

Method X X

Event
X X
Subscription

The table shows the profiles that are supported by the OPC UA servers from the exercises of this course.
This information is not so straightforward for the clients because they are usually programmed without taking the
specifications of user-specific cases into account.

SITRAIN Page 44 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Relationship between server/client profiles

C C
B B B M
Core Client Facet (C)

OPC UA client Basic128Rsa15 (B) Client Client Client


Profiles/Facets

Methods (M)
Mapping

Standard UA (A)

Embedded (E)
OPC UA server
Profiles/Facets Basic128Rsa15 (B)
B)

Methods (M) A E
E M B M B

When users know the server and client profiles and facets, they can weigh up the possible security policies,
access types and functions for the server-client communication.

Example between a fully compatible server and client:


Server profiles/facets:
• Standard UA profile
• Embedded UA Profile
• Facet SecurityPolicy - Basic128Rsa15
• Facet Methods

Client profiles/facets:
• Core Client Facet
• Facet SecurityPolicy - Basic128Rsa15
• Facet Methods

The Standard UA Server Profile is compatible


atible with the Core Client Facet, which means it supports all
functionalities of the Core Client Facet.
The identically named facets are also compatible with one another.

On the right side of the figure, the profiles and facets are allocated to the servers and clients by way of example.
The connections show which functionalities can be used by the server-client combinations.

SITRAIN Page 45 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Exercise 2
Access types in UaExpert

SITRAIN Page 46 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Data Access – Demo Boiler

OPC UA

FillLevelSensor

Method: Fill

Method: Heat

TemperatureSensor

ESD
OPC UA ANSI C demo server – BoilerDemo
BoilerDem OPC UA UaExpert client

In the following exercise, a boiler is simulated in the demo server. The boiler can be filled or emptied to a certain
level with the "Fill" method. The "FillLevelSensor" displays the current level. In addition, the boiler can be heated
or cooled to a certain temperature with the "Heat" method. The "TemperatureSensor" displays the current
temperature.

SITRAIN Page 47 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Data Access View

2/3

1. Open the "Objects > Demo" folder in the address space.

2. Using drag-and-drop, move the "SimulationActive" and "SimulationSpeed" variables to the Data Access
View.

3. Open the object "Objects > Demo > 009_BoilerDemo > Boiler1" in Address Space and also drag the
"FillLevel", "FillLevelSetPoint", "HeaterStatus", "Temperature" and "TemperatureSetPoint" variables to
the Data Access View.

4. Check that the simulation is started "SimulationActive" = true. If not, start the simulation by right-clicking the
"StartSimulation" method and selecting "Call…".

5. Call the "SetSimulationSpeed" method and set the desired simulation


lati speed (default: 50). Monitor the
associated "SimulationSpeed" variable.

ing the corresponding


6. Fill the boiler to 100 and heat it to 100 degrees using cor methods.

SITRAIN Page 48 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Events – DemoMachine

OPC UA

HeaterSwitch

Heating

Cooling

TemperatureSensor

ESD
OPC UA ANSI C demo server – Machine OPC UA UaExpert client

For the events, a machine that can heat and cool is simulated in the Demo server. The current temperature is
measured and displayed with "TemperatureSensor". "HeaterSwitch" allows you to change between heating and
cooling. The machine triggers a "HighAlarm" when the temperature exceeds 100 ºC and a "LowAlarm" when
the temperature falls below 0 ºC.

SITRAIN Page 49 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Event View

1. Delete all variables from the Data Access View, and instead drag the "HeaterSwitch" and "Temperature"
variables to there (Root > Objects > Demo > 004_Events > Machine).

2. Add a new document of type "Event View" in the Project window.

3. Drag the "Machine" node to the "Configuration" area of the Event View.

4. Open the "Alarms" tab in the "Events" area and observe the "LowAlarm".

5. Set "HeaterSwitch" in the Data Access View bits und observe how a "HighAlarm" is triggered after the
temperature exceeds 100 ºC.

SITRAIN Page 50 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
History Trend View

4 5
2

1. Add a new document of type "History Trend View" in the Project window.

2. Drag the "ByteWithHistory" and "DoubleWithHistory" variables from the "002_History" folder to the
History Trend View.

3. Start the data logger with the "StartLogging" method.

4. Set a time interval of one minute after activation of the data logger under "Single Update".

5. Activate "Cyclic Update" with a timespan of one minute and a polling interval of one second.

SITRAIN Page 51 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Exercise 2
E
Access types with Leuze 2D code
cod reader

SITRAIN Page 52 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Leuze 2D code reader

OPC UA

ES
Scanning of packages with Providing data
er
Leuze 2D code reader via OPC UA

In these exercises, you will learn about an OPC UA server from a third-party vendor that can scan 2D codes.
The 2D code reader from Leuze implements the "AutoID" Companion Specification and because of this it can
be replaced by other devices that support this specification.

SITRAIN Page 53 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Connection of Leuze OPC UA server to UaExpert

1. Switch on the training device.


2. Open UaExpert and add the Leuze 2D code reader as a new server (opc.tcp://192.168.111.13:4840).
3. Set the security level to "None".
4. Connect to the 2D code reader and trust the certificate permanently.

SITRAIN Page 54 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Reading 2D code

1. Drag the "DeviceStatus" and "LastScanData" variables of the "Root > Objects > DeviceSet > DCR200 >
AutoID" node to the Data Access View.
2. Now capture a package ID in the receiving of packages by calling the "ScanStart" method of the same node.
3. Check the captured package ID using the "LastScanData" variable

SITRAIN Page 55 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Resetting 2D code reader to factory settings

3
2 5

If the 2D codes are not correctly captured, follow the steps below to reset the 2D code reader to factory settings:

1. Open the web server of the 2D code reader (192.168.111.13).


2. Set the operating mode to "SERVICE" and confirm the dialog.
3. Open the "MAINTENANCE" tab.
4. Open the "Backup/Restore" area.
5. Click on "Reset to factory settings" in the toolbar and confirm the dialog.

SITRAIN Page 56 IK-OPCUA1


Digital Industry Academy Information Models, Access Types and Profiles
Capítulo 6

TAG
SIMATIC S7-1500 PLC
OPC UA server e client RAS
© Siemens 2019
ESD siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Objetivos do aprendizado

Nesta seção, você aprenderá …

… as propriedades do controlador S7-1500 como um servidor

… como configurar um controlador S7-1500 como servidor

… como programar métodos em um controlador S7-1500

… as propriedades do controlador S7-1500 como um cliente

7-1500
… como programar um cliente no controlador S7-1500

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Siemens Industry portfólio de produto
Classificação do OPC UA server/client

Sistema de Execução de Manufatura


OPC UA

SCADA Energy
system management
Engineering
framework

AG
PROFINET

Controller HMI IPC Comunicação Motion MindConnect


Connect
industrial control Nano
ano

AS
Fonte e distribuição Identificação I/O Distribuído Dirigir Controles industriais
de energia Industrial sistemas
siste

The figure shows the field of application of the OPC UA server/client.


SIMATIC S7-1500 is classified in the controller level in the product portfolio of Siemens AG.

The figure shows the field of application of the OPC UA server/client.

SIMATIC S7-1500 is classified in the controller level in the product portfolio of Siemens AG.

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Mecanismos de segurança
O S7-1500 como OPC UA server ou OPC UA client, prove os seguintes mecanismos de seguraça:

X.509 X.509
Troca de certificados

Client

OPC UA server OPC UA client


Basic 128 RSA15 Sign & Encrypt
ncrypt
T A
PLC
Basic 256 n & Encrypt
Sign Encryp
Basic 256 SHA En
Sign & Encrypt

Autenticação de usuário

As an OPC UA server or OPC UA client, SIMATIC S7-1500 provides the following security mechanisms:
• Encryption
• Basic 128 RSA15 (Sign, Sign & Encrypt)
• Basic 256 (Sign, Sign & Encrypt)
• Basic 256 SHA (Sign, Sign & Encrypt)
• User authentication

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
SIMATIC S7-1500 como
mo T
PLC
OPC UA server
ES
Propriedades, configuração e acesso
ac a dados

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
SIMATIC S7-1500 suporta as seguintes formas de acesso:
Browse
Opções de acesso ao servidor Read/W rite
Registered Read/W rite
Subscription
Methods

Client Client Client Client Client Client Client

Reg. nodes response


Publishing
Browse response

Reg. nodes request

R/W response
R/W response

Call response
Browse request

R/W request
R/W request

Call request
Sampling

Server Server

Leitura/Escri
Registrado
do E Historical Alarmes e
Browse Leitura/Escri Inscrição Métodos
ta Access condições
ta

SIMATIC S7-1500 supports the following access types:


• Browse
• Read/Write
• Registered Read/Write
• Subscription
• Methods

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Perfis de servidor

Vide notas

Os três perfis de servidor a seguir são suportados pelo controlador S7-1500:

• Standard 2017 UA Server Profile


Esse perfil é um perfil completo que define um conjunto mínimo de funcionalidades necessárias para os OPC
UA server baseados em PC. Esse servidor deve fornecer a estrutura base “AddressSpace” dos nós de tipo, nós
de instância e informações de diagnóstico. O servidor deve fornecer o estabelecimento de uma conexão com
segurança via protocolo binário OPC UA TCP e a criação de pelo menos 50 sessões paralelas. Inclui serviços
de exibição como navegação e os serviços de atributo para leitura e gravação de valores atuais. Além disso,
inclui o monitoramento das alterações de dados com um mínimo de 5 assinaturas para metade das sessões
necessárias (225 no total) e um mínimo de 500 itens monitorados para metade das assinaturas (56250 no
total).
• Method Server Facet
Essa faceta especifica o suporte de chamadas de método por or meio
mei o do serviço de chamada. Métodos são
funções "lightweight" que são semelhantes aos métodos os de uma clas
c se em qualquer linguagem de
programação orientada a objetos. O escopo de um m mét odo pode ser restringido por um objeto proprietário ou
método
um tipo de objeto proprietário. Métodos com m um Objec tType como seu escopo são semelhantes aos métodos
estáticos em uma classe.
• Standard Event Subscription Server Facet
Essa faceta especifica o suporte padrão para inscrições em eventos e destina-se a complementar qualquer um
dos perfis com todos os recursos. Para suporte a essa faceta, os tipos de eventos que representam eventos
que o servidor pode relatar e seus campos específicos devem ser implementados. Requer pelo menos o objeto
do servidor para especificar o atributo EventNotifier. Inclui os serviços para criar, modificar e excluir
assinaturas, bem como adicionar, modificar e remover itens monitorados para nós de objeto com um
"EventNotifier attribute". A criação de um item de monitoramento pode incluir um filtro que inclui SimpleAttribute,
FilterOperands e uma lista suspensa de operadores. Os operadores incluem: "Equals", "IsNull", "GreaterThan",
"LessThan", "GreaterThanOrEqual", "LessThanOrEqual", "Like", "Not", "Between", "InList", "And", "Or", "Cast",
"BitwiseAnd", "BitwiseOr" e "OfType". O suporte a filtros mais complexos é opcional. Essa faceta foi expandida
para incluir várias unidades opcionais de conformidade de informações básicas. Essas unidades de
conformidade são opcionais para permitir compatibilidade com versões anteriores. Essas unidades opcionais de
conformidade serão necessárias no futuro. Portanto, é altamente recomendável que todos os servidores os
suportem.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração
Ativando o OPC UA server

No menu "Device configuration > Properties > General", você pode ativar o OPC UA
server na aba "OPC UA > Server".
1. Propriedades do servidor:
1
Protocol ID: "opc.tcp://"
IP address: Endereço IP no qual o OPC UA server pode ser acessado
TCP port number: Configuração padrão: 4840 (porta padrão)
O número da porta pode ser alterado em "OPC UA >
Server > Settings > Port".
Standard interface – interface “padrão” do controlador

2. Configuração para sessões:


Máx. sessão expirada:
Nesse campo, você especifica o período máximo antes do OPC UA server fechar
uma sessão sem troca de dados.
Æ Valores entre
tre 1 e 600.000 segundos são possíveis
2 Máx. número de sessões
s do OPC UA:
Neste campo, vvocê especifica o número máximo de sessões que o OPC UA server
da CPU inicia e opera simultaneamente.
Æ O número máximo de sessões depende do desempenho da CPU. Cada sessão
vincula recursos.
Máx. número de nós registrados:
Nesse campo, você especifica o número máximo de nós que o OPC UA server
registra.
Æ O número máximo de nós registrados depende do desempenho da CPU e é
exibido quando você configura o conteúdo do campo (coloque o cursor no campo).
Cada registro vincula recursos. Quando o número é excedido, uma leitura Read
standard é executada.

Ativando o OPC UA server

No menu "Device configuration > Properties > General", você pode ativar o OPC UA server na aba "OPC UA >
Server".
1. Propriedades do servidor:

Protocol ID: "opc.tcp://"


IP address:Endereço IP no qual o OPC UA server pode ser acessado a partir do Ethernet subnet 192.168.1.
TCP port number: Configuração padrão: 4840 (porta padrão)
O número da porta pode ser alterado em "OPC UA > Server > Settings > Port".

2. Configuração para sessões:

Máx. sessão expirada:


Nesse campo, você especifica o período
o máximo antes
an do OPC UA server fechar uma sessão sem troca de
dados.
Æ Valores entre 1 e 600.000 segundos
os são
s possíveis
Máx. número de sessões do OPC UA:
Neste campo, você especifica o número máximo de sessões que o OPC UA server da CPU inicia e opera
simultaneamente.
Æ O número máximo de sessões depende do desempenho da CPU. Cada sessão vincula recursos.
Máx. número de nós registrados:
Nesse campo, você especifica o número máximo de nós que o OPC UA server registra.
Æ O número máximo de nós registrados depende do desempenho da CPU e é exibido quando você
configura o conteúdo do campo (coloque o cursor no campo). Cada registro vincula recursos. Quando o
número é excedido, uma leitura padrão é executada.

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configurações de assinatura
Minimum publishing interval:
No campo "Minimum publishing interval", você define os intervalos mínimos de
tempo nos quais o servidor envia uma notificação ao cliente com os novos valores
no caso de uma alteração de valor.
No exemplo, o OPC UA server envia uma nova mensagem a cada 1000 ms no caso
de uma alteração de valor, desde que o OPC UA client solicite uma atualização.
Se o OPC UA client solicita uma atualização a cada 2000 ms, por exemplo, o
OPC UA server só enviará uma notificação com os novos valores uma vez em 2000
ms.
Se o cliente solicitar uma atualização a cada 100 ms, o servidor ainda enviará uma
mensagem apenas a cada 1000 ms (intervalo mínimo de publicação).

Minimum sampling interval:


No campo "Minimum sampling interval", você define os intervalos de tempo nos
quais o OPC UA server adquire o valor de uma variável da CPU e o compara com o
valor anterior para identificar uma alteração de valor.
Se o intervalo dee amostragem
a selecionado for menor (mais frequente) que o

AG
publicaç
intervalo de publicação, e um OPC UA client solicitar essa alta taxa de amostragem

T
para a determinadas variáveis da CPU, dois ou mais valores poderão acumular-se

LC
rante cada intervalo de publicação.
durante
Neste c caso, o OPC UA server grava as alterações de valor na fila e envia todas as
al
alterações de valor para o cliente após o final do intervalo de publicação. Se mais
3 alterações de valor forem acumuladas no intervalo de publicação do que caberão na
fila, o OPC UA server substituirá os valores mais antigos. Os valores mais recentes
são enviados ao cliente.

Maximum number of monitored items:


Nesse campo, você especifica o número máximo de nós que o OPC UA server da
CPU monitora simultaneamente uma alteração de valor.
O monitoramento vincula recursos. O número máximo de nós monitorados depende
da CPU usada.

3. Configurações para assinaturas

Minimum publishing interval:


No campo "Minimum publishing interval", você define os intervalos mínimos de tempo nos quais o servidor
envia uma notificação ao cliente com os novos valores no caso de uma alteração de valor.
No exemplo, o OPC UA server envia uma nova mensagem a cada 1000 ms no caso de uma alteração de
valor, desde que o OPC UA client solicite uma atualização.
Se o OPC UA client solicita uma atualização a cada 2000 ms, por exemplo, o OPC UA server só enviará uma
notificação com os novos valores uma vez em 2000 ms.
Se o cliente solicitar uma atualização a cada 100 ms, o servidor ainda enviará uma mensagem apenas a cada
1000 ms (intervalo mínimo de publicação).

Minimum sampling interval:


No campo "Minimum sampling interval", você define oss intervalos de tempo nos quais o OPC UA server
adquire o valor de uma variável da CPU e o compara para com o valor anterior para identificar uma alteração de
valor.
Se o intervalo de amostragem selecionado
onado for menor
m (mais frequente) que o intervalo de publicação, e um
OPC UA client solicitar essa alta taxaa de amostragem
a para determinadas variáveis do CP, dois ou mais
valores poderão acumular-se durante cada intervalo de publicação.
Neste caso, o OPC UA server grava as alterações de valor na fila e envia todas as alterações de valor para o
cliente após o final do intervalo de publicação. Se mais alterações de valor forem acumuladas no intervalo de
publicação do que caberão na fila, o OPC UA server substituirá os valores mais antigos. Os valores mais
recentes são enviados ao cliente.

Maximum number of monitored items:


Nesse campo, você especifica o número máximo de nós que o OPC UA server da CPU monitora
simultaneamente uma alteração de valor.
O monitoramento vincula recursos. O número máximo de nós monitorados depende da CPU usada.

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configurações de segurança

O S7-1500 suporta todas as políticas de segurança


definidas por OPC UA.
Você pode os definir na configuração do dispositivo
da CPU em "General > OPC UA > Server >
Security".

Para obter informações sobre as configurações de


segurança, consulte a seção "Security".

Recomendação:
Defina o nível de segurança mais alto possível e
desative todos os outros níveis de segurança
quando possível.

O S7-1500 suporta todas as políticas de segurança definidas por OPC UA.


Você pode os definir na configuração do dispositivo da CPU em "General > OPC UA > Server > Security".

Para obter informações sobre as configurações de segurança, consulte a seção "Security".

Recomendação:
Defina o nível de segurança mais alto possível e desative todos os outros níveis de segurança quando possível.

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Autenticação de usuário

Definições de como o cliente OPC UA vai se autenticar no servidor.


"OPC UA > Server > Security > User authentication".
Enable gest autentication
Usuário não provê autorização (acesso anônimo). O OPC UA
server não checa a autorização do cliente.
Authentication via user name and password:
Usuários devem prover sua autorização (não são mais anônimos).
O OPC UA server checa se o cliente está autorizado ou não.
Usuário / senha são levados em conta.

Caso se queira definir usuário / senha centralmente no projeto,


deve-se ativar respectiva função de segurança em "Security
settings > Settings > Protect this project".

With the OPC UA server of the S7-1500 controller, you can set how a user of the OPC UA client must be
authenticated if he wants to access the server.

Guest authentication
Users do not have to prove their authorization (anonymous access). The OPC UA server does not check the
authorization of the client user.
If you want to use this type of user authentication, select the "Enable guest authentication" option under
"OPC UA > Server > Security > User authentication".

Authentication via user name and password


Users must prove their authorization (no anonymous access). The OPC UAU server checks whether the client user
is authorized to access the server. The user name and correct
orrect password
passw is considered to be proof.
n, select the "Enable user name and password authentication"
If you want to use this type of user authentication,
option under "OPC UA > Server > Security y > User authentication",
au disable the guest authorization and enter the
user in the "User management" table. You can add a maximum of 21 users.

Enable additional user management via project security settings


If you select this option, the user administration of the open project will also be used for the user authentication of
the OPC UA server: The same user names and passwords are then valid in OPC UA as in the current project.
To enable the user management of the project, follow these steps:
In the "Project tree", click on "Security settings > Settings > Protect this project". Enter your user name and
password.
Enter additional users under "Security settings > Users and roles".

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Runtime licenses

O tipo de licença necessária depende do


desempenho da respectiva CPU:

• SIMATIC OPC UA S7-1500 small


CPU 1511, CPU 1512, CPU 1513,
ET 200SP CPUs, CPU 1515SP PC

• SIMATIC OPC UA S7-1500 medium


CPU 1515, CPU 1516,
Software controller CPU 1507,
CPU 1516pro-2PN

• SIMATIC OPC UA S7-1500 large


CPU 1517, CPU 1518

A license is required to operate the OPC UA server of the S7-1500 CPU. The type of license required depends on
the performance of the respective CPU.

The required license type is displayed in the properties of the CPU under "General > Runtime licenses >
OPC UA".

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Definindo direitos de acesso para variáveis

As opções de acesso a variáveis via OPC UA podem Possível acesso de gravação


ser especificadas individualmente para cada variável.
Possível acesso de leitura (Procurar/Ler)

OPC UA clients OPC UA server

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Definindo direitos de acesso para variáveis

Exemplo da atribuição de direitos de leitura e gravação:

• No bloco:

• No modelo de informação (OPC UA XML):

AccessLevel = 0: No access
AccessLevel = 1: Read only
AccessLevel = 2: W rite only
AccessLevel = 3: Read+Write

Definição é feita nas propriedades das variáveis e pode ser importada como XML
Se houver diferença entre o XML e o que está dentro da CPU, será adotada o ajuste mais restritivo.

Definition of write and read rights in the block editor:


When you define variables, you specify the access rights using the properties "Accessible from HMI/OPC UA" and
"Writable from HMI/OPC UA".

Definition of write and read rights in the information model (OPC UA XML):
In the OPC UA information model, the "AccessLevel" attribute regulates access to variables.
AccessLevel is defined bit by bit:
Bit 0 = CurrentRead and Bit 1 = CurrentWrite. The meaning of the bit combinations is as follows:
• AccessLevel = 0: No access
• AccessLevel = 1: Read only
• AccessLevel = 2: Write only
• AccessLevel = 3: Read+Write

Interaction between write and read rights


If you have imported an OPC UA server interface
interfac and AccessLevel attributes are set in this OPC UA XML file, the
write and read rights are defined by the following
l rule: "Of the two settings, the one with the lowest access
privileges is active".
Example:
AccessLevel = 1 (read only) in the OPC UA XML server interface definition
AND
"Accessible from HMI/OPC UA" and "Writable from HMI/OPC UA" is selected in the PLC variable table.
Æ Result: This variable can only be read.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Coordenando direitos de acesso para blocos

O TIA Portal também permite que os direitos de acesso sejam definidos para um
bloco inteiro nas propriedades do bloco:

Se a caixa de verificação "DB


accessible from OPC UA" não
está selecionada, a configuração
para as variáveis individuais afeta
apenas o acesso através de uma
HMI.

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Exercício 3
E
Variáveis de fornecimento via
a OPC
O UA

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa deste exercício

Neste exercício
UaExpert as
• Configure o S7-1500 como um OPC UA server OPC UA client
Client

• Forneça variáveis no S7-1500 via OPC UA e defina direitos de


acesso

SIMATIC S7-1500 as
OPC UA server

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Formatar um cartão de memória SIMATIC e redefinir a CPU

Formatando um cartão de memória SIMATIC


1. Na tela da CPU, selecione o menu "Settings" > "Card functions" > "Format card".
2. Confirme com OK.

Redefinindo a CPU para as configurações de fábrica


1. Na tela da CPU, selecione o menu "Settings" > "Reset" > "Factory settings".
2. Confirme com OK.

Resultados:
PU
• O cartão de memória SIMATIC está formatado para uso na CPU.
• Os dados na CPU são excluídos.

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Criando um projeto e a CPU

Abra o TIA Portal e crie um novo projeto.


Ajuste as propriedades para permitir simução
Em "Languages & Resources > Project languages",
selecione a linguagem do projeto "German
(Germany)"
e "English (USA)".
Crie uma CPU S7-1500, modelo mais recente.
Vá para "PROFINET interface [X1] > Ethernet
2 addresses" e atribua à CPU o endereço de IP
"192.168.111.11".

1. Abra o TIA Portal e crie um novo projeto.


2. Em "Languages & Resources > Project languages", selecione a linguagem do projeto "German (Germany)"
e "English (USA)".
3. Crie a CPU S7-1500 do seu dispositivo de treinamento com o respectivo firmware.
4. Abra as propriedades da CPU, vá para "Fail-safe" e desativar a capacidade F.
5. Vá para "PROFINET interface [X1] > Ethernet addresses" e atribua à CPU o endereço de IP
"192.168.111.11".

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Ativando o OPC UA server e criando um bloco de dados

Vá para "OPC UA > Server > General" e selecione a caixa de


verificação "Activate OPC UA server".
Vá para "Runtime licenses > OPC UA" e selecione a licença
"SIMATIC OPC UA S7-1500 small“ na lista suspensa
"Type of purchased license".
1
Crie um bloco de dados com várias variáveis de diferentes
tipos de dados.
Carregue a CPU no PLCSim Advanced e coloque-a em RUN.

1. Vá para "OPC UA > Server > General" e selecione a caixa de verificação "Activate OPC UA server".
2. Vá para "Runtime licenses > OPC UA" e selecione a licença "SIMATIC OPC UA S7-1500 small“ na lista
suspensa
"Type of purchased license".
3. Crie um bloco de dados com várias variáveis de diferentes tipos de dados.
4. Carregue a CPU e coloque-a em RUN.

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Estabelecendo a conexão do UaExpert com o servidor

1. Abra UaExpert.
2. Adicione o S7-1500
como servidor com o
ponto final "None".
3. Conecte-se ao servidor
2 e confie o certificado
permanentemente.

1. Abra UaExpert.
2. Adicione o S7-1500 como servidor com o ponto final "None".
3. Conecte-se ao servidor e confie o certificado permanentemente.

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Monitorando/escrevendo variáveis

2
1. Expanda sua CPU no painel “Address Space” e
examine os objetos fornecidos pela interface do
servidor SIMATIC padrão.

A
2. Navegue G
avegue no ppainel “Address Space” para o DB criado

L CT
anteriormente
nteriorm (<PLC Name> > DataBlocksGlobal) e
arraste as variáveis do DB do “Address Space” para o
ar
“Data Access View”.
3. Para escrever um valor, clique duas vezes nele.
4. Altere os valores de várias variáveis e verifique as
alterações de valor no TIA Portal.

1. Expanda sua CPU no painel “Address Space” e examine os objetos fornecidos pela interface do servidor
SIMATIC padrão.
2. Navegue no painel “Address Space” para o DB criado anteriormente (<PLC Name> > DataBlocksGlobal) e
arraste as variáveis do DB do “Address Space” para o “Data Access View”.
3. Para escrever um valor, clique duas vezes nele.
4. Altere os valores de várias variáveis e verifique as alterações de valor no TIA Portal.

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Adaptando direitos de acesso

Volte para o DB no TIA Portal e limpe a caixa de seleção


"Accessible from HMI/OPC UA" para uma variável.
Limpar a caixa de seleção "Writable from HMI/OPC UA"
para qualquer variável.
1

4
.
Carregue a CPU.
Em UaExpert, selecione o DB e clique em "Rebrowse“: a
variável para a qual você limpou a caixa de seleção
"Accessible from HMI/OPC UA" não está mais visível e
foi removido do “Data Access View”.
Tente escrever a variável para a qual você limpou o caixa
de seleção "Writable from HMI/OPC UA" e observe o log.
5

1. Volte para o DB no TIA Portal e limpe a caixa de seleção "Accessible from HMI/OPC UA" para uma variável.
2. Limpar a caixa de seleção "Writable from HMI/OPC UA" para qualquer variável.
3. Carregue a CPU.
4. Em UaExpert, selecione o DB e clique em "Rebrowse" Æ a variável para a qual você limpou a caixa de
seleção "Accessible from HMI/OPC UA" não está mais visível e foi removido do “Data Access View”.
5. Tente escrever a variável para a qual você limpou o caixa de seleção "Writable from HMI/OPC UA" e observe
o log.

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Adaptando direitos de acesso

Altere as propriedades do DB para que ele não seja


acessível via OPC UA e carregue a CPU.
Observe o log e a “Data Access View” em UaExpert.
Selecione "DataBlocksGlobal" no painel “Address Space”
e clique Rebrowse: o banco de dados não está mais
1
visível.
Exclua o banco de dados no TIA Portal.

1. Altere as propriedades do DB para que ele não seja acessível via OPC UA e carregue a CPU.
2. Observe o log e a “Data Access View” em UaExpert.
3. Selecione "DataBlocksGlobal" no painel “Address Space” e clique Rebrowse Æ o banco de dados não está
mais visível.
4. Exclua o banco de dados no TIA Portal.

SITRAIN Page 24 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
SIMATIC S7-15000
D R
como OPC UA S
AE cli
client

SITRAIN Page 25 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
The client functionality of the S7-1500 controller has the following
Tipos de acesso do cliente OPC UA-specified access options:
Registered Read/Write
Methods

Client Client Client Client Client Client

Reg. nodes response


Reg. nodes request

R/W response

Call response
R/W request

Call request
Server Server Server
RServer
Ser Server Server Server

Registrado
ado
Leitura/Escri Historical Alarmes e
Browse Leitura/Escri Inscrição Métodos
ta Access Condições
ta

The client functionality of the S7-1500 controller has the following OPC UA-specified access options:
• Registered Read/Write
• Methods

SITRAIN Page 26 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Comissionamento do cliente

Ative o OPC UA Configure a Programar


client, selecione a interface do funções do Server
licença cliente cliente

The client functionality of the S7-1500 controller is commissioned in three steps:


1. You must activate the client and select the appropriate license in the hardware configuration of the CPU.
2. You configure the client using the "Client interfaces" function of TIA Portal. Here, you specify which variables
of the server are to be read or written and which methods are to be called. In addition, you configure the
properties of the connection to the server: Connection information (IP address, port), security parameters and
user authentication.
3. You program the client functionality using system function blocks of TIA Portal. For this purpose, after the CPU
is compiled, the client interface provides you with two data blocks containing all the parameters needed for the
system function blocks.

Note: The OPC UA client is only supported as of firmware V2.6.

SITRAIN Page 27 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Ativando o OPC UA client

Você encontrará a caixa de seleção para ativar o OPC UA client nas propriedades da sua CPU em
"Properties > OPC UA > Client > General".

Você também confirma a compra do seu OPC UA license nas propriedades da sua CPU em
"Properties > Runtime licenses > OPC UA".

SITRAIN Page 28 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configurando a Interface do cliente

Na área "Client interfaces", você configura quais variáveis


v seu cliente deve ler ou gravar e quais métodos devem ser chamados.

• Importar um
DRA
Para configurar os nós OPC UA correspondentes,
correspo
m espaço de endereço
ende
TIA Portal fornece duas opções para acessar uma interface do servidor:
do OPC UA server como um arquivo XML

E
• Conexão online direta
Nas duas opções,
õ
diret do TIA Portal a um OPC UA server
você pode arrastar e soltar para mover os nós da janela da interface do OPC UA server para as listas correspondentes:
Read lists: Arraste as variáveis que devem ser lidas pelo servidor para uma lista de leitura.
Write lists: Arraste as variáveis que devem ser gravadas no servidor para uma lista de gravação.
Method lists: Arraste os métodos que devem ser chamados para uma lista de métodos.

Na área "Client interfaces", você configura quais variáveis seu cliente deve ler ou gravar e quais métodos devem
ser chamados.
Para configurar os nós OPC UA correspondentes, TIA Portal fornece duas opções para acessar uma interface do
servidor:
1. Importar um espaço de endereço do OPC UA server como um arquivo XML
2. Conexão online direta do TIA Portal a um OPC UA server

Nas duas opções, você pode arrastar e soltar para mover os nós da janela da interface do OPC UA server para as
listas correspondentes:
• Read lists: Arraste as variáveis que devem ser lidas pelo servidor para uma lista de leitura.
• Write lists: Arraste as variáveis que devem ser gravadas no servidor
dor para
pa uma lista de gravação.
• Method lists: Arraste os métodos que devem ser chamados para uma lista de métodos.

SITRAIN Page 29 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configurando a Interface do cliente

Configurações da conexão e segurança em "Properties > Configuration" da


interface do cliente.

Connection parameters:
Em "Connection parameters" você atribui um nome de sessão ao cliente do
controlador S7-1500, o endereço IP e a porta à qual o cliente deve se conectar.
Além disso, você seleciona um "Session timeout" e um "Monitoring time".

Security:
Em "Security" você define o "Security mode", o "Security policy" e o "User
authentication". Além disso, você gerencia o certificado do cliente e decide se o
certificado do servidor deve ser avaliado.

Você encontrará a configuração da conexão e segurança em "Properties > Configuration" da interface do


cliente.

Connection parameters:
Em "Connection parameters" você atribui um nome de sessão ao cliente do controlador S7-1500, o endereço IP e
a porta à qual o cliente deve se conectar. Além disso, você seleciona um "Session timeout" e um "Monitoring
time".

Security:
Em "Security" você define o "Security mode", o "Security policy" e o "User authentication". Além disso, você
gerencia o certificado do cliente e decide se o certificado do servidor
idor deve
dev ser avaliado.

SITRAIN Page 30 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configurando a Interface do cliente

Uma vez compilado o software, dois DB’s ficam


disponíveis:
O DB contém os dados do processo "<Interface name>_Data"
para a troca de dados de uma "<Interface name>_Configuration"
interface do cliente via OPC UA
Estes DB’s são usados no programa. Eles contêm os
parâmetros usados nos blocos.
Após mudar a interface do cliente, é necessário recompilar
e recarregar o software.

O DB contém as informações de
conexão e endereço para troca de
dados da interface do cliente

RAS
D
Interface OPC
O UA client

Once you have compiled the CPU, a data block for data and configuration is then available:
• "<Interface name>_Data"
• "<Interface name>_Configuration"

The two data blocks are needed for programming the OPC UA client functions. They contain the needed
parameters for the OPC UA system function blocks. After any change of your client interface, you must recompile
your CPU so that the data blocks are updated.

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente
Instruções do TIA Portal

Instruções do OPC UA client em


"Communication > OPC UA >
OPC UA client"

Overview of system function blocks:

• OPC_UA_Connect: Establishes a connection/session


• OPC_UA_NamespaceGetIndexList: Returns the indexes for the specified namespace URIs
• OPC_UA_NodeGetHandleList: Registers nodes to be read or written on the server and returns associated
handles
• OPC_UA_MethodGetHandleList: Registers methods to be called and returns associated handles
• OPC_UA_TranslatePathList: Requests Node IDs from the server (only needed if the IDs are not known in
advance or no client interface is used)
• OPC_UA_ReadList: Reads the registered nodes from the server
• OPC_UA_WriteList: Writes the registered nodes to the server
• OPC_UA_MethodCall: Calls a registered method
• OPC_UA_NodeReleaseHandleList: Releases the handles of the he registration
registr of the nodes to be read or written
• OPC_UA_MethodReleaseHandleList: Releases the handles dles of the registration
r of the methods to be called
• OPC_UA_Disconnect: Terminates a session/connection
ction
• OPC_UA_ConnectionGetStatus: Returns OPC PC UA connection
conn information

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente
Instruções do TIA Portal

OPC_UA_Connect: Estabelece conexão


OPC_UA_NamespaceGetIndexList: Retorna os índices para um URL namespace
OPC_UA_NodeGetHandleList: Registra os nós a serem lidos/escritos no servidor e retorna os handles
OPC_UA_MethodGetHandleList: Registra os métodos a serem chamados e retorna os handles
OPC_UA_TranslatePathList: Solicita o Node ID do servidor (somente necessário se o ID não é conhecido
previamente ou o cliente interface não é usado)
OPC_UA_ReadList: Le os nós registrados no servidor
OPC_UA_WriteList: Escreve nos nós registados no servidor
rvid
OPC_UA_MethodCall: Chama um método
OPC_UA_NodeReleaseHandleList: Libera os handless de um registro
regis de leitura /escrita
OPC_UA_MethodReleaseHandleList: Libera os handles de um registro de método
OPC_UA_Disconnect: Finaliza a seção/conexão
se
OPC_UA_ConnectionGetStatus: Retorna
Re informação da conexão OPC UA

Overview of system function blocks:

• OPC_UA_Connect: Establishes a connection/session


• OPC_UA_NamespaceGetIndexList: Returns the indexes for the specified namespace URIs
• OPC_UA_NodeGetHandleList: Registers nodes to be read or written on the server and returns associated
handles
• OPC_UA_MethodGetHandleList: Registers methods to be called and returns associated handles
• OPC_UA_TranslatePathList: Requests Node IDs from the server (only needed if the IDs are not known in
advance or no client interface is used)
• OPC_UA_ReadList: Reads the registered nodes from the server
• OPC_UA_WriteList: Writes the registered nodes to the server
• OPC_UA_MethodCall: Calls a registered method
• OPC_UA_NodeReleaseHandleList: Releases the handles of the he registration
registr of the nodes to be read or written
• OPC_UA_MethodReleaseHandleList: Releases the handles dles of the registration
r of the methods to be called
• OPC_UA_Disconnect: Terminates a session/connection
ction
• OPC_UA_ConnectionGetStatus: Returns OPC PC UA connection
conn information

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente

the registered nodes are released again


the establishment of the connection to the server

a query of the namespace indexes


S
the registration of the nodes
d to be read or written
ode
the session is then closed and the connection is terminated

Preparação Ação Limpar

The client programming is carried out in three steps, which you must perform in the following order:
• Preparation
• Action
• Cleanup

Preparation:
In the preparation step, you program
• the establishment of the connection to the server ("OPC_UA_Connect")
• a query of the namespace indexes ("OPC_UA_NamespaceGetIndexList")
• the registration of the nodes to be read or written ("OPC_UA_NodeGetHandleList")

Action:
The action consists of
• Reading ("OPC_UA_ReadList") of variables
riables
• Writing ("OPC_UA_WriteList") of variables
ble

Cleanup:
In the cleanup step
• the registered nodes are released again ("OPC_UA_NodeReleseHandleList")
• the session is then closed and the connection is terminated ("OPC_UA_Disconnect")

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente

Preparação Ação Limpar

Method calls involve the same three steps:

Preparation:
In the preparation step, you program
• the establishment of the connection to the server ("OPC_UA_Connect")
• a query of the namespace indexes ("OPC_UA_NamespaceGetIndexList")
• the registration of the nodes to be read or written ("OPC_UA_MethodGetHandleList")

Action:
The action consists of the call ("OPC_UA_MethodCall") of methods.
ds.

Cleanup:
In the cleanup step
• the registered nodes are released again
ain ("OPC_UA_MethodReleseHandleList")
("O
• the session is closed and the connection is terminated ("OPC_UA_Disconnect")

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente

Alguns blocos precisam de configurações extras, feitas em :


"Properties > Configuration > Data access":
OPC_UA_NodeGetHandleList
OPC_UA_MethodGetHandleList
OPC_UA_ReadList
OPC_UA_WriteList
OPC_UA_MethodCall
OPC_UA_NodeReleaseHandleList
OPC_UA_MethodReleaseHandleLis
Seleção da lista de read, write ou method conforme o bloco / tarefa.
Parâmetros adicionais deste blocos são conectados aos DB’s da
interface do cliente.

Parameter assignment of the OPC UA system function blocks:


Navigate to "Properties > Configuration > Client interface" and select a client interface you created. The
parameters of the respective system function block are then automatically connected to the variables of the data
blocks of the selected client interface.

The following system function blocks also need an additional configuration under "Properties > Configuration >
Data access":
• OPC_UA_NodeGetHandleList
• OPC_UA_MethodGetHandleList
• OPC_UA_ReadList
• OPC_UA_WriteList
• OPC_UA_MethodCall
• OPC_UA_NodeReleaseHandleList
• OPC_UA_MethodReleaseHandleList

Select a read, write or method list contained


ned in the client interface, depending on the block. The additional
parameters of these blocks are then also automatically
au connected to the variables of the data blocks of the
selected client interface.

Then connect suitable variables to the control parameters "REQ", "Done", "Busy", "Error" and "Status" of the
blocks.

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Exercício 4
E
Configurar e programar o cliente
ente

SITRAIN Page 37 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa deste exercício

Neste exercício
SIMATIC S7-1500 como
• Configure uma interface do OPC UA client no TIA Portal para OPC UA client
um SIMATIC S7-1500

• Programe a troca de dados OPC UA entre um SIMATIC


S7-1500 como cliente e e outro como server

• Teste a troca de dados por meio de uma tabela de observação


no TIA Portal SIMATIC S7-1500 como
OPC UA Server

SITRAIN Page 38 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente

ESD
Abra a global library "C:\01_Archive\IK-OPCUA_Vxxxxxx\Exercises_Lib\Exercises_Lib
xxxxxx\Exercise V1.0.0.alxx" no TIA Portal.
Arraste o controlador da pasta "Master copies > Section_
Section_6 > Exercises_2A" para seu projeto.

1. Abra a global library "C:\01_Archive\IK-OPCUA_Vxxxxxx\Exercises_Lib\Exercises_Lib.alxx" no TIA Portal.


2. Arraste os seguintes elementos da pasta "Master copies > Section_6 > Exercises_2" para seu projeto:
• "OpcUaClientAnsiC" e "ControllingClientAnsiC" Æ Blocos de programa
• "ControllingOpcUaClientAnsiC" Æ Watch and force tables
• "typeControllingClientInputs" and "typeControllingClientOutputs" Æ Tipos de dados do PLC

SITRAIN Page 39 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

Abra o configuração do dispositivo da CPU.


Selecione a caixa de seleção "Activate OPC client" em "Properties > OPC UA > Client > General".
Ative também a licença ”SIMATIC OPC UA S7-1500 small”

1. Abra o configuração do dispositivo da CPU.


2. Selecione a caixa de seleção "Activate OPC client" em "Properties > OPC UA > Client > General".

SITRAIN Page 40 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

1. Navegue na árvore do projeto


para "OPC UA communication
3 > Client interfaces" da CPU e
clique duas vezes "Add new
client interface". Atribua o
nome à interface do cliente
"OpcUaClient".
2. Na área de trabalho, crie uma
lista de leitura (nome:
2 "ReadList"), uma lista de
escrita (nome: "WriteList")

1 3. Para "Source of server data",


selecione "Online [ ]" e clique
"Online access".

1. Navegue na árvore do projeto para "OPC UA communication > Client interfaces" da CPU e clique duas
vezes "Add new client interface". Atribua o nome à interface do cliente "OpcUaClientAnsiC".
2. Na área de trabalho, crie uma lista de leitura (nome: "ReadList"), uma lista de escrita (nome: "WriteList") e
uma lista de método (nome: "MethodList").
3. Para "Source of server data", selecione "Online [ ]" e clique "Online access".

SITRAIN Page 41 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

opc.tcp:192.168.111.11:4840 .

1. Carregue o projeto do OPCServer no PLCSIM Advanced.


2. Copie o URL PLC server para a área de transferência.
3. Insira o URL na linha "OPC UA server address“ e clique em "Find
selected server".
4. Selecione o ponto final "No security".
5. Clique em "Connect".
6. Na caixa de diálogo exibida, confirme que deseja confiar no certificado 5
do PLC server e clique em "Yes".

1. Inicie o UaAnsiC server do Unified Automation.


2. Copie o URL do servidor do AnsiC server para a área de transferência.
3. Insira o URL na linha "OPC UA server address“ e clique em "Find selected server".
4. Selecione o ponto final "No security".
5. Clique em "Connect".
6. Na caixa de diálogo exibida, confirme que deseja confiar no certificado do AnsiC server e clique em "Yes".

SITRAIN Page 42 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

1. Navegue no "OPC UA server interface"" para "Objects > ‘nome do PLC’ > DataBlockGlobal> ‘Nome do DB’"
2. Arraste as variáveis “bool", “byte", “int", “real" e “string" para a "ReadList".
3. Repita esta ação com as mesmas variáveis para o "WriteList".

1. Navegue no "OPC UA server interface" para "Objects > Demo > 000_Static > Scalar" e arraste as variáveis
"Boolean", "Byte", "Float", "Int16" e "String" para a"ReadList".
2. Navegue mais no mesmo nó para "Structures" e arraste a variável "Vector" ao "ReadList".
3. Repita esta ação com as mesmas variáveis para o "WriteList".

SITRAIN Page 43 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

G
192.168.111.11
11.11 . 3

TA
4840 .

server. E
1. Em "Properties > Configuration > Connection parameters",
rameter digite o endereço IP da sua interface de rede e a porta do PLC

2. Compile o controlador.
3. Verifique se os dois blocos de dados "OpcUaClien_Configuration" e "OpcUaClient_Data" foram criados após a compilação.

1. Em "Properties > Configuration > Connection parameters", digite o endereço IP da sua interface de rede e
a porta do AnsiC server.
2. Compile o controlador.
3. Verifique se os dois blocos de dados "OpcUaClientAnsiC_Configuration" e "OpcUaClientAnsiC_Data"
foram criados após a compilação.

SITRAIN Page 44 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

DRA
ES
Abra o bloco
oco de funções "OpcUaClientAnsiC".
Navegue naa lista
list de instruções no TIA Portal para "Communication > OPC UA > OPC UA client" e arraste o bloco de
função do sistema "OPC_UA_Connect" para "Network 1" do bloco de função.
Escolha a opção de chamada "Multi instance" na próxima caixa de diálogo e atribua à instância o nome "instConnect".

1. Chame o bloco de funções "OpcUaClientAnsiC" no OB1.


2. Abra o bloco de funções "OpcUaClientAnsiC".
3. Navegue na lista de instruções no TIA Portal para "Communication > OPC UA > OPC UA client" e arraste o
bloco de função do sistema "OPC_UA_Connect" para "Network 1" do bloco de função.
4. Escolha a opção de chamada "Multi instance" na próxima caixa de diálogo e atribua à instância o nome
"instConnect".

SITRAIN Page 45 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

1
2

1. Abra o bloco de funções "OpcUaClient". Clique no símbolo da caixa de ferramentas


entas do
bloco OPC_UA_Connect e selecione a interface do cliente "OpcUaClient"" que você criou
crio
em "Configuration > Client interface". Os parâmetros do bloco são automaticamente
interconectados com as variáveis criadas a partir da interface do
o cliente.
2. Nota: alguns parâmetros do bloco ("REQ", "Done", "Busy", "Error" e "S"Status") já estão
ligadas a variáveis de um DB global, apenas para facilitar a monitoração / modificação de
valores online, durante os testes.

1. Clique no símbolo da caixa de ferramentas do bloco e selecione a interface do cliente "OpcUaClientAnsiC"


você criou em "Configuration > Client interface". Os parâmetros do bloco são automaticamente
interconectados com as variáveis criadas a partir da interface do cliente.
2. Interconecte os demais parâmetros do bloco ("REQ", "Done", "Busy", "Error" e "Status") com as
variáveis pré-configuradas do bloco de dados "ControllingClientAnsicC".
A variável "inputs" contém todos os parâmetros de entrada necessários e a variável "outputsXYZ" contém
todos os parâmetros de saída necessários. Preste atenção aos nomes das variáveis para a atribuição aos
blocos de funções do sistema OPC UA.
3. Repita a chamada do bloco e a interconexão do parâmetro nas redes correspondentes para os seguintes
blocos funcionais do sistema:
• OPC_UA_NamespaceGetIndexList
• OPC_UA_NodeGetHandleList (para a lista de leitura e lista a de gravação,
g respectivamente)
• OPC_UA_ReadList
• OPC_UA_WriteList
• OPC_UA_NodeReleaseHandleList (para leitura e lista de gravação, respectivamente)
a a lista de le
• OPC_UA_Disconnect
4. Faça o download do programa para o cont
controlador.

SITRAIN Page 46 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Configuração no TIA Portal

1
2

Repita a chamada do bloco e a interconexão do parâmetro nas redes correspondentes


seguintes blocos funcionais do sistema: A
ondentes para os

ES
OPC_UA_NamespaceGetIndexList
OPC_UA_NodeGetHandleList (para a lista de leitura e lista de gravação, respectivamente)
resp
OPC_UA_ReadList
OPC_UA_WriteList
OPC_UA_NodeReleaseHandleList (para a lista de leitura e lista de gravação, respectivamente)
OPC_UA_Disconnect
Faça o download do programa para o controlador.

1. Clique no símbolo da caixa de ferramentas do bloco e selecione a interface do cliente "OpcUaClientAnsiC"


você criou em "Configuration > Client interface". Os parâmetros do bloco são automaticamente
interconectados com as variáveis criadas a partir da interface do cliente.
2. Interconecte os demais parâmetros do bloco ("REQ", "Done", "Busy", "Error" e "Status") com as
variáveis pré-configuradas do bloco de dados "ControllingClientAnsicC".
A variável "inputs" contém todos os parâmetros de entrada necessários e a variável "outputsXYZ" contém
todos os parâmetros de saída necessários. Preste atenção aos nomes das variáveis para a atribuição aos
blocos de funções do sistema OPC UA.
3. Repita a chamada do bloco e a interconexão do parâmetro nas redes correspondentes para os seguintes
blocos funcionais do sistema:
• OPC_UA_NamespaceGetIndexList
• OPC_UA_NodeGetHandleList (para a lista de leitura e lista a de gravação,
g respectivamente)
• OPC_UA_ReadList
• OPC_UA_WriteList
• OPC_UA_NodeReleaseHandleList (para leitura e lista de gravação, respectivamente)
a a lista de le
• OPC_UA_Disconnect
4. Faça o download do programa para o cont
controlador.

SITRAIN Page 47 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
1. Abra a watch table
"ControllingOpcUaClient".

Estabelecendo a conexão OPC UA e preparando a troca de 2. Conecte o controlador clicando o


botão "Monitor all“.

dados 3. Primeiro, modifique a variável


"inputs.connect" (atribuído ao bloco
"OPC_UA_Connect") para "1", para
estabelecer uma conexão OPC UA do
controlador server. Para fazer isso,
clique com o botão direito do mouse
2 na linha da variável e navegue no
menu de atalho para "Modify" e
depois clique "Modify to 1".
4. Depois que uma conexão é
estabelecida com sucesso, você
recebe um identificador de conexão
3 ("Connection.ConnectionHdl").
5. Use o mesmo procedimento para
modificar sucessivamente as
seguintes variáveis para "1" e observe
seus resultados:
• "inputs.getNamespceIndex" (>
"Namespaces.ServerNamespaceInde
xes[0]"), para determinar o indice
namespace do especificado
namespace URI
• "inputs.getNodeHdlsRead" (>
"ReadLists.NodeHdls[x]"), para
registrar as variáveis a serem lidas
• "inputs.getNodeHdlsWrite" (>
"Writelist.NodeHdls[x]"), para registrar
as variáveis a serem escritas

4 Depois de receber todos os


identificadores e índices do servidor, os
preparativos para a troca de dados estão
completos.

1. Abra a watch table "ControllingOpcUaClientAnsiC".


2. Conecte o controlador clicanco o botaõ "Monitor all“.
3. Primeiro, modifique a variável "inputs.connect" (atribuído ao bloco "OPC_UA_Connect") para "1", para
estabelecer uma conexão OPC UA do controlador para o AnsiC server. Para fazer isso, clique com o botão
direito do mouse na linha da variável e navegue no menu de atalho para "Modify" e depois clique "Modify to
1".
4. Depois que uma conexão é estabelecida com sucesso, você recebe um identificador de conexão
("Connection.ConnectionHdl").
5. Use o mesmo procedimento para modificar sucessivamente as seguintes variáveis para "1" e observe seus
resultados:
• "inputs.getNamespceIndex" (> "Namespaces.ServerNamespaceIndexes[0]"),
ceIn para determinar o indice
namespace do especificado namespace URI
• "inputs.getNodeHdlsRead" (> "ReadLists.NodeHdls[x]"),
ls[x]"), para registrar as variáveis a serem lidas
• "inputs.getNodeHdlsWrite" (> "Writelist.NodeHdls[x]"),
Hdls[x]"), para
p registrar as variáveis a serem escritas

Depois de receber todos os identificadores


res e índices
índice do servidor, os preparativos para a troca de dados estão
completos.

SITRAIN Page 48 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Executando a troca de dados

Digite quaisquer valores na coluna "Modify


2 value" das variáveis na área "W riteList“, e
transfira esses valores para a CPU com o
botão "Modify now" no menu de atalho em
"Modify".
Escreva os valores no OPC UA server
modificando a variável "inputs.writeList" para
"1".
Leia os valores do OPC UA server modificando
1 a variável "inputs.readList" na "ReadList"
area to "1".

Os valores de leitura correspondem aos


valores escritos?

1. Digite quaisquer valores na coluna "Modify value" das variáveis na área "WriteList“, e transfira esses valores
para a CPU com o botão "Modify now" no menu de atalho em "Modify".
2. Escreva os valores no OPC UA server modificando a variável "inputs.writeList" para "1".
3. Leia os valores do OPC UA server modificando a variável "inputs.readList" na "ReadList"
area to "1".

Os valores de leitura correspondem aos valores escritos?

SITRAIN Page 49 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Libere os handles e encerrando a conexão

3
1. Abra o "Devices & networks", e abra a área da tabela
verifique se a atual conexão OPC UA é exibida ("Programmed S
a da “network view”.
vi Na aba "Connections",
rammed Open User Communication_192.168.111.1").
2. Volte à “watch table” e libere os handles das listas de leitura e gravação novamente. Modifique as variáveis "inputs.releaseNodeHdlsRead" e "inputs.releaseNodeHdlsWrite" um
após o outro para "1".
3. Em seguida, encerre a conexão modificando a variável "inputs.disconnect" para "1".
4. Retornar à “network view”. A conexão descrita no Item 1 ainda está presente?

1. Abra o "Devices & networks", e abra a área da tabela da “network view”. Na aba "Connections",
verifique se a atual conexão OPC UA é exibido ("Programmed Open User Communication_192.168.111.1").
2. Volte à “watch table” e libere os handles das listas de leitura e gravação novamente. Modifique as variáveis
"inputs.releaseNodeHdlsRead" e "inputs.releaseNodeHdlsWrite" um após o outro para "1".
3. Em seguida, encerre a conexão modificando a variável "inputs.disconnect" para "1".
4. Retornar à “network view”. A conexão descrita no Item 1 ainda está presente?

SITRAIN Page 50 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Exercício 3
Programar o recebimento deE
e pacotes
pa

SITRAIN Page 51 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa deste exercício

Neste exercício
SIMATIC S7-1500 como
• Configure uma interface OPC UA client no TIA Portal OPC UA client

• Programe a troca de dados OPC UA entre um SIMATIC S7-


1500 como cliente e um SIMATIC RF680R como servidor
usando um bloco pré-configurado

• Teste a troca de dados através de uma “watch table” no SIMATIC RF680R como
TIA Portal OPC UA server

SITRAIN Page 52 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Descrição do rack de alto compartimento

1
Scan the
RFID tag

Output
Buffer the ID the scan
result (ID)

DataHigh
BayRacking

G
2
Choose
oo a
bay

3
Set the bay
y
occupation
Save the ID/ Store the
pation

D
status
statu time stamp package

O bloco de dados "DataHighBayRacking" contém todas as variáveis de controle e informações sobre os pacotes e
baias armazenados do rack de alto compartimento.

Explicação das variáveis do bloco de dados:


• "scanNewPackage": Variável de controle para digitalizar um pacote (ID de um transponder RFID / TAG) com o
leitor RFID.
• "storeNewPackage": Variável de controle para armazenar um pacote digitalizado.
• "currPackageID": Contém o último ID do pacote escaneado.
• "currBay": Seleção do compartimento no rack alto em que o pacote atual deve ser armazenado.
• "packages": Banco de dados de pacotes armazenados. Para cada pacote, o ID do pacote digitalizado e a data
em que o pacote foi recebido são salvos.
• "bayStatus": Status de ocupação das baías (para avaliação simples
es do status das baías na HMI, isso é criado
como uma matriz separada).

Sequência:
A variável "scanNewPackage" do rack de e alto compartimento
com controla um bloco OPC UA client que chama um
método de digitalização do leitor RFID via
a OPC
OP UA e depois lê o resultado da digitalização. O resultado da
digitalização é armazenado em buffer e emitido em "currPackageID".
A variável "storeNewPackage" salva o resultado da digitalização e um carimbo de hora em "packages" no local
especificado ("currBay"). Ao mesmo tempo, um bit é definido em "bayStatus" para sinalizar que o compartimento
correspondente está ocupado.

SITRAIN Page 53 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Controlando o OPC UA client por meio de um bloco de
cápsulas

OPC_UA_ OPC_UA_
OPC_UA_ WriteList ReadList
Connect

OPC_UA_
OPC_UA_ OPC_UA_ Connection
OPC_UA_ GetStatus
MethodCall Namespace
S7-1500 RF600 NodeGet
GetIndexList
HandleList OPC_UA_
Method
OPC_UA_ Release
OPC UA HandleList
MethodGet
OPC_UA_
HandleList
ndleL

G
OPC_UA_ Disconnect
NodeRelease
HandleList

OPC UA client OPC UA server

OpcUa
Client

Capsule block

Neste exercício, você usará o bloco de cápsulas "OpcUaClient". Este bloco contém todos os blocos funcionais do
sistema OPC UA client. O bloco é integrado em um seqüenciador (in FB "OpcUaClientRF600"). Este
sequenciador primeiro chama o método "ScanStart" do RF680R e, em seguida, o método "ScanStop". O resultado
da digitalização é então lido usando a variável "LastScanData".

Você pode encontrar uma descrição detalhada do bloco de cápsulas no seguinte link:
https://support.industry.siemens.com/cs/ww/en/view/109762770

SITRAIN Page 54 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o cliente

1. Abra a global library "C:\01_Archive\IK-OPCUA_Vxxxxxx\Exercises_Lib\Exercises_Lib.alxx" no TIA Portal.


2. Arraste os seguintes elementos da pasta "Master copies > Section_6 > Exercises_3" para o seu projeto:
• "OpcUaClientRF600", "OpcUaClient" e "DataHighBayRacking" Æ Blocos de programa
• "ControllingOpcUaClientRF600" Æ Watch and force tables
• "ScanSettings" e "typePackage" Æ Tipos de dados do PLC

SITRAIN Page 55 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Criando uma interface do cliente

1
2

1. Crie uma nova interface do cliente e atribua a ele o nome "OpcUaClientRF600".


2. Conecte ao RF680R (opc.tcp://192.168.111.14:4840) e crie uma lista de leitura chamada "ReadList". Arraste a
variável "LastScanData" do espaço de endereço do leitor à lista de leitura. Você encontrará o nó variável no
painel “Address Space” em "Objects > DeviceSet > Read_point_1".
3. Crie uma lista de métodos chamada "MethodList" e arraste os dois métodos "ScanStart" e "ScanStop", que
também pode ser encontrado em "Objects > DeviceSet > Read_point_1", para a lista.
4. Defina os parâmetros de conexão da interface conforme mostrado na captura de tela (inicialmente sem
segurança).
5. Compile o controlador.
6. Verifique se os dois blocos de dados "OpcUaClientRF600_Configuration" e "OpcUaClientRF600_Data"
foram criados após a compilação.

SITRAIN Page 56 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Chamando e configurando um bloco

1. Chame o bloco "OpcUaClientRF600" no OB1 (bloco já está interconectado).


2. Chame a instrução "S_MOVE" dentro do bloco de funções para armazenar em buffer os dados lidos pelo
leitor no banco de dados do rack de alto compartimento ("LastScanData" to "currPackageId").

SITRAIN Page 57 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Programando o armazenamento

Insira uma nova rede e programe a lógica para armazenar um pacote (ID).

Implemente a seguinte funcionalidade para este:


Se o comando para armazenar ("DataHighBayRacking".storeNewPackage) é dado, o ID em buffer
("DataHighBayRacking".currPackageID") e um carimbo de hora atual são copiados para o local de
armazenamento especificado ("DataHighBayRacking".packages[x]). A especificação do local de armazenamento
("DataHighBayRacking".currBay) corresponde ao índice da matriz “"DataHighBayRacking".packages". Cada
elemento da matriz contém uma variável para o ID ("id") e o carimbo de hora ("dateIncoming").
Além disso, defina um bit na matriz ""DataHighBayRacking".bayStatus" dependendo do local de armazenamento
("DataHighBayRacking".currBay) para determinar posteriormente qual local de armazenamento está ocupado.
No final, o comando para armazenar ("DataHighBayRacking".storeNewPackage)
wP deve ser redefinido novamente
porque os dados serão gravados em todos os ciclos OB1.

Carregue o controlador.

SITRAIN Page 58 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Testando a funcionalidade

1. Abra a watch table "ControllingOpcUaClientRF600" e clique "Monitor all".


2. Inicie a operação de digitalização modificando a variável "scanNewPackage" para "TRUE".
3. Aguarde até a variável "currPackageID" exibe um resultado do escaneamento.
4. Especifique um local de armazenamento usando a variável "currBay" (1-15).
5. Armazene o pacote no local de armazenamento desejado, modificando a variável "storeNewPackage" para
"TRUE". Observe que o bit é redefinido imediatamente novamente após o armazenamento bem-sucedido.
6. Abra o bloco de dados "DataHighBayRacking" e verifique se o seu pacote foi armazenado corretamente em
"packages" (no exemplo, no local de armazenamento 1).

SITRAIN Page 59 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
SIMATIC S7-1500
S P
como OPC UA server
RA
Métodos
SD

SITRAIN Page 60 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos OPC UA de um SIMATIC S7-1500

Vantagens dos métodos de um controlador S7-1500 :


• Uma função encapsulada
Client
• Parâmetros de transferência definidos
Método • Tratamento e diagnóstico de erros
OPC UA
• A consistência dos dados
Call response
Call request

Server

Métodos

O OPC UA server pode fornecer métodos que podem chamar o OPC UA client para iniciar funcionalidades
complexas de um controlador SIMATIC S7-1500, como ordens de produção.

• Do ponto de vista do programador PLC, um método no espaço de endereço da CPU é apenas um bloco
funcional (FB) com chamadas específicas de blocos funcionais do sistema e pode conter qualquer código PLC
para executar uma funcionalidade. Por outro lado, isso permite que um OPC UA client chame um bloco de
função do PLC.
• Um método também permite que o OPC UA client transfira parâmetros de transferência predefinidos para o
programa do usuário e receba-os de volta do programa do usuário.
• Por definição, os métodos fornecem a implementação de tratamento e diagnóstico de erros para o OPC UA
client.
• A transferência dos parâmetros de entrada e saída de um método é consistente
co com os dados (ao contrário de
Leitura/Escrita, Assinatura).

SITRAIN Page 61 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos OPC UA de um SIMATIC S7-1500

• O OPC UA server pode fornecer métodos que podem chamar o OPC UA client
para iniciar funcionalidades complexas de um controlador SIMATIC S7-1500, como
ordens de produção.
Client
• Do ponto de vista do programador PLC, um método no espaço de endereço da
CPU é apenas um bloco funcional (FB) com chamadas específicas de blocos
Método funcionais do sistema e pode conter qualquer código PLC para executar uma
OPC UA tarefa. Por outro lado, isso permite que um OPC UA client chame um bloco de
função do PLC.
Call response
Call request

• Um método também permite que o OPC UA client transfira parâmetros de


transferência predefinidos para o programa do usuário e receba-os de volta do
programa do usuário.

AG
método fornecem a implementação de tratamento e diagnóstico
• Por definição, os métodos
ra o OPC UA client.
de erros para

C
ransferência do
• A transferência
com os dado
dos parâmetros de entrada e saída de um método é consistente
dados (ao contrário de Leitura/Escrita, Assinatura).

Server

Métodos

O OPC UA server pode fornecer métodos que podem chamar o OPC UA client para iniciar funcionalidades
complexas de um controlador SIMATIC S7-1500, como ordens de produção.

• Do ponto de vista do programador PLC, um método no espaço de endereço da CPU é apenas um bloco
funcional (FB) com chamadas específicas de blocos funcionais do sistema e pode conter qualquer código PLC
para executar uma funcionalidade. Por outro lado, isso permite que um OPC UA client chame um bloco de
função do PLC.
• Um método também permite que o OPC UA client transfira parâmetros de transferência predefinidos para o
programa do usuário e receba-os de volta do programa do usuário.
• Por definição, os métodos fornecem a implementação de tratamento e diagnóstico de erros para o OPC UA
client.
• A transferência dos parâmetros de entrada e saída de um método é consistente
co com os dados (ao contrário de
Leitura/Escrita, Assinatura).

SITRAIN Page 62 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Princípio de funcionamento dos métodos OPC UA de um
controlador SIMATIC S7-1500

Os métodos OPC UA de um SIMATIC S7-1500 são programados usando os blocos funcionais do sistema do TIA Portal. Você deve chamar
os blocos de funções do sistema e atribuir os parâmetros em um bloco de funções. O bloco de dados da instância pertencente ao FB
implementa o método no espaço de endereço do OPC UA server do S7-1500. O firmware da CPU serve como interface entre o bloco de
dados da instância e o espaço de endereço do OPC UA.

Você precisa dos dois blocos de função do sistema a seguir para implementar um método:
OPC_UA_ServerMethodPre
OPC_UA_ServerMethodPost
Você encontrará esses SFBs na biblioteca do TIA Portal em "Communication> OPC UA> OPC UA server".

ário que o método


O SFB "OPC_UA_ServerMethodPre" envia um sinal para o programa do usuário mé foi chamado por um cliente e transfere os
erverMethodPo conclui a chamada do método e retorna os
parâmetros de entrada para o FB, se necessário. O SFB "OPC_UA_ServerMethodPost"
parâmetros de saída e um código de status para o cliente.

d OPC UA server (incluindo códigos de status) no seguinte link:


Você encontrará um exemplo de aplicativo para os métodos do
w/en/109
http://support.automation.siemens.com/WW/view/en/109756885

Os métodos OPC UA de um SIMATIC S7-1500 são programados usando os blocos funcionais do sistema do TIA
Portal. Você deve chamar os blocos de funções do sistema e atribuir os parâmetros em um bloco de funções. O
bloco de dados da instância pertencente ao FB implementa o método no espaço de endereço do OPC UA server
do S7-1500. O firmware da CPU serve como interface entre o bloco de dados da instância e o espaço de
endereço do OPC UA.

Você precisa dos dois blocos de função do sistema a seguir para implementar um método:
• OPC_UA_ServerMethodPre
• OPC_UA_ServerMethodPost
Você encontrará esses SFBs na biblioteca do TIA Portal em "Communication> OPC UA> OPC UA server".

O SFB "OPC_UA_ServerMethodPre" envia um sinal para o programarograma do usuário que o método foi chamado por
um cliente e transfere os parâmetros de entrada para o FB, se necessário.
nece O SFB "OPC_UA_ServerMethodPost"
conclui a chamada do método e retorna os parâmetrosros de saída
sa e um código de status para o cliente.

Você encontrará um exemplo de aplicativo


vo para
pa os métodos do OPC UA server (incluindo códigos de status) no
seguinte link:
http://support.automation.siemens.com/WW/view/en/109756885

SITRAIN Page 63 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Princípio de funcionamento dos métodos OPC UA de um
controlador SIMATIC S7-1500

instGetIdByPositionMethod

S7-1500
1
2
Transferência de parâmetros de
entrada
OPC_UA_ServerMethodPre
Method call

Código de função individual OPC UA method

CT
OPC_UA_ServerMethodPost Transferência de código de
Transferênc
status e parâmetros de saída
3
4

Bloco de funções no programa do usuário


rio OPC UA address space/firmware

Os métodos OPC UA de um SIMATIC S7-1500 são programados usando os blocos funcionais do sistema do TIA
Portal. Você deve chamar os blocos de funções do sistema e atribuir os parâmetros em um bloco de funções. O
bloco de dados da instância pertencente ao FB implementa o método no espaço de endereço do OPC UA server
do S7-1500. O firmware da CPU serve como interface entre o bloco de dados da instância e o espaço de
endereço do OPC UA.

Você precisa dos dois blocos de função do sistema a seguir para implementar um método:
• OPC_UA_ServerMethodPre
• OPC_UA_ServerMethodPost
Você encontrará esses SFBs na biblioteca do TIA Portal em "Communication> OPC UA> OPC UA server".

O SFB "OPC_UA_ServerMethodPre" envia um sinal para o programarograma do usuário que o método foi chamado por
um cliente e transfere os parâmetros de entrada para o FB, se necessário.
nece O SFB "OPC_UA_ServerMethodPost"
conclui a chamada do método e retorna os parâmetrosros de saída
sa e um código de status para o cliente.

Você encontrará um exemplo de aplicativo


vo para
pa os métodos do OPC UA server (incluindo códigos de status) no
seguinte link:
http://support.automation.siemens.com/WW/view/en/109756885

SITRAIN Page 64 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos do OPC UA no programa do usuário

Instâncias de pré
e pós-instruções
Parâmetros de entrada e
saída do método:
devem ter nomes
1 específicos para funcionar
(UAMethod_InParameters
UAMethod_OutParameters)

Chamada de pré-
instrução

Chamada de pós-
instrução 2

The method function block must be created according to the pattern presented above:

For each OPC UA method, you must create a separate function block and call the two system function blocks as
follows:
1. The system function "OPC_UA_ServerMethodPre" must be called in your function block and created as a
multi-instance. The multi-instance must be named "OPC_UA_ServerMethodPre_Instance".
2. The system function "OPC_UA_ServerMethodPost" must be called in your function block and also created as
a multi-instance. The multi-instance must be named "OPC_UA_ServerMethodPost_Instance".

If a method requires input and output parameters, you must create them as follows:
• The input parameters of the method are defined by a structure or a PLC data type. This structure must be
created as a static variable in the block interface and named
med "UAMethod_InParameters".
"UAMet The structure is then
assigned to the "UAMethod_InParameters" input of the pre-function.
pre-fun
• The output parameters of the method are defined ned by a structure
str or a PLC data type. This structure must be
created as a static variable in the block interface and
an named "UAMethod_OutParameters". The parameter is
then assigned to the "UAMethod_OutParameters"
Parame input of the post-function.

You can define up to 20 input and output parameters for the method within the structures or UDTs.

SITRAIN Page 65 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos do OPC UA no programa do usuário

O método foi chamado

Código de função

Resultado e
conclusão da
chamada do
método

The function code of your method is executed between the pre-function and post-function. If the pre-function
outputs "TRUE" at your "UAMethod_Called" and "Done" outputs, the OPC UA method was called by a client and
the input parameters are provided via the "UAMethod_InParameters" parameter.

Depending on "UAMethod_Called" and "Done", you can then execute your function code.

You complete the method call for the OPC UA client by setting the "UAMethod_Finished" input of the post-function
to "TRUE". You also have the option of outputting an OPC UA status to the client using the "UAMethod_Result"
input (e.g. 16#0000_0000 "Good") and setting the output parameters ("UAMethod_OutParameters") if required.

SITRAIN Page 66 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tipos de dados permitidos para os parâmetros de entrada e
saída

SIMATIC data types OPC UA data types


BOOL Boolean
SINT SByte
INT Int16
DINT Int32
LINT Int64
USINT Byte
UINT Uint16
UDINT Uint32
ULINT Uint64
REAL FLOAT
LREAL Double
LDT DateTime
Dat
WString String
DINT Enum

Tipos de dados não permitidos não são exibidos no espaço de endereço e não podem ser lidos ou gravados.

Outros tipos de dados permitidos:


• OPC_UA_NodeId
• OPC_UA_QualifiedName
• OPCUA_Guid (UDT)
• OPCUA_LocalizedText (UDT)
• OPCUA_ByteString (UDT)
• OPCUA_XmlElement (UDT)
• OPCUA_EUInformation (UDT)
• Union_myDataType (Union)

SITRAIN Page 67 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Limites de configuração do método UA do OPC

ET 200SP CPU up to CPU-1515 / CPU-1517 /


Tipos de CPU
CPU-1513 (F)) CPU-1516 (F) CPU-1518 (F/T)

P
Número máximo de métodos do servidor 20 50 100

Número máximo de parâmetros de entrada e saída


da 20 20 20

In addition to the configuration limits, note the following:


• A called method also affects the cycle time of your user program because execution takes place within
the PLC cycles.
• An increased cycle time of your PLC also affects the execution time of the OPC UA method.

SITRAIN Page 68 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Exercício 5
ESD
Programe um método para gerenciar o depósito
vertical

SITRAIN Page 69 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa deste exercício

Neste exercício
UaExpert como
• Programe um método OPC UA no controlador S7-1500 para ler OPC UA client
Client
dados sobre o depósito vertical.

SIMATIC S7-1500 como


OPC UA server

SITRAIN Page 70 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa
Método "GetPackageInfo"

OPC UA client UaExpert OPC UA server S7-1500

Método "GetPackageInfo"

Package ID or bay number

Package ID, bay number, date the package was received

Um método deve ser usado para coletar informações sobre um pacote armazenado num depósito vertical. Como parâmetros de busca, pode ser especificado
o ID do pacote ou o número da baia onde ele está armazenado. Como resposta teremos
mos o ID, o número
núm da baia e a data que o pacote foi recebido.
O método é implementado no controlador S7-1500 e chamado pelo UaExpert..

Será usada a função "GetPackageInfo“, que lê as informações


ções do banco de dados do rack de alto compartimento, (já pronta para uso). Neste exercício, você
programa o bloco de funções que fornece essa funcionalidade
dade como um método via OPC UA.

Um método deve ser usado para gerar as seguintes informações sobre um pacote, especificando o ID do pacote
ou o número do compartimento do banco de dados de rack de alto compartimento:
• Package ID
• Bay number
• Date the package was received

O método é implementado no controlador S7-1500 e chamado UaExpert.

A função "GetPackageInfo“, que lê as informações do banco de dados do rack de alto compartimento, já foi
criado. Neste exercício, você programa o bloco de funções que fornece essa funcionalidade como um método via
OPC UA.

SITRAIN Page 71 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

Crie um novo FB chamado "GetPackageInfoMethod“, chame-o no OB1 e abra-o para edição.


Abra o cartão de tarefas "Instructions", arraste o "OPC_UA_ServerMethodPre" e
"OPC_UA_ServerMethodPost" (instruções em "Communication > OPC UA > OPC UA server“) para uma
network vazia e crie uma multi-instância cada, sem alterar o nome.

Nota: As instâncias devem ser nomeadas exatamente dessa maneira para que o FB seja reconhecido
como um método por OPC UA clients.

1. Crie um novo FB chamado "GetPackageInfoMethod" e abra-o.


2. Abra o cartão de tarefas "Instructions", arrastar o "OPC_UA_ServerMethodPre" e
"OPC_UA_ServerMethodPost" instruções em "Communication > OPC UA > OPC UA server" esvaziar redes e
criar uma multi-instância cada, sem alterar o nome.

Nota: As instâncias devem ser nomeadas exatamente dessa maneira para que o FB seja reconhecido como
um método por OPC UA clients.

3. Na área estática da interface do bloco, crie uma estrutura "UAMethod_InParameters" para os parâmetros de
entrada do método e uma estrutura "UAMethod_OutParameters" para os parâmetros de saída do método.

Nota: As estruturas devem ser nomeadas exatamente dessa maneira


aneira para que sejam reconhecidas como
parâmetros de entrada e saída do método por OPC UA clients.
ients

4. Crie os respectivos parâmetros de entrada


da e saída do
d método dentro das estruturas com base na tarefa.
5. Interconecte as estruturas criadas com
om os parâmetros
pa de entrada/saída das instruções pré e pós.

SITRAIN Page 72 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

Na área estática da interface do bloco, crie uma estrutura "UAMethod_InParameters" para os parâmetros de entrada do método e
uma estrutura "UAMethod_OutParameters" para os parâmetros de saída do método.

Nota: As estruturas devem ser nomeadas exatamente dessa maneira para que sejam reconhecidas como parâmetros de entrada e
saída do método por OPC UA clients.
Estas variáveis devem ser sempre do tipo struct. Em nosso exercício, vamos usar as seguintes referências:
"UAMethod_InParameters“ Struct
• id WString
• bay USint
"UAMethod_OutParameters“
• id WString
• bay USint
• dateIncoming DTL

Crie os respectivos parâmetros de entrada e saída do método dentro das estruturas com base na tarefa.
â
Interconecte as estruturas criadas com os parâmetros de entrada/saída das instruções pré e pós.

1. Crie um novo FB chamado "GetPackageInfoMethod" e abra-o.


2. Abra o cartão de tarefas "Instructions", arrastar o "OPC_UA_ServerMethodPre" e
"OPC_UA_ServerMethodPost" instruções em "Communication > OPC UA > OPC UA server" esvaziar redes e
criar uma multi-instância cada, sem alterar o nome.

Nota: As instâncias devem ser nomeadas exatamente dessa maneira para que o FB seja reconhecido como
um método por OPC UA clients.

3. Na área estática da interface do bloco, crie uma estrutura "UAMethod_InParameters" para os parâmetros de
entrada do método e uma estrutura "UAMethod_OutParameters" para os parâmetros de saída do método.

Nota: As estruturas devem ser nomeadas exatamente dessa maneira


aneira para que sejam reconhecidas como
parâmetros de entrada e saída do método por OPC UA clients.
ients

4. Crie os respectivos parâmetros de entrada


da e saída do
d método dentro das estruturas com base na tarefa.
5. Interconecte as estruturas criadas com
om os parâmetros
pa de entrada/saída das instruções pré e pós.

SITRAIN Page 73 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

1. Crie um novo FB chamado "GetPackageInfoMethod" e abra-o.


2. Abra o cartão de tarefas "Instructions", arrastar o "OPC_UA_ServerMethodPre" e
"OPC_UA_ServerMethodPost" instruções em "Communication > OPC UA > OPC UA server" esvaziar redes e
criar uma multi-instância cada, sem alterar o nome.

Nota: As instâncias devem ser nomeadas exatamente dessa maneira para que o FB seja reconhecido como
um método por OPC UA clients.

3. Na área estática da interface do bloco, crie uma estrutura "UAMethod_InParameters" para os parâmetros de
entrada do método e uma estrutura "UAMethod_OutParameters" para os parâmetros de saída do método.

Nota: As estruturas devem ser nomeadas exatamente dessa maneira


aneira para que sejam reconhecidas como
parâmetros de entrada e saída do método por OPC UA clients.
ients

4. Crie os respectivos parâmetros de entrada


da e saída do
d método dentro das estruturas com base na tarefa.
5. Interconecte as estruturas criadas com
om os parâmetros
pa de entrada/saída das instruções pré e pós.

SITRAIN Page 74 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

Copie o conteúdo da biblioteca Exercices_Lib, pasta Master Copies \ Chapter 6 \ Exercice 4A para o projeto
Insira um network entre as duas instruções "OPC_UA_ServerMethodPre" e "OPC_UA_ServerMethodPost"
Chame o FC pré-configurado "GetPackageInfo" da biblioteca de exercícios.
Interligue as entradas e saídas deste bloco:
• EN contato aberto, ligado à saída do “UAMethodCalled” do bloco OPC_UA_ServerMethodPre
• Parâmetros de entrada com as variáveis do UAMethod_InParameters
• Parâmetros de saída com as variáveis do UAMethod_OutParameters
• Parâmetro de saída Error, ligado a variável temporária (para
a uso posterior)
pos
• Parâmetro InOut “packages” da variável “DataHighBayPackaing”.packages
BayPackaing” (da biblioteca)

1. Insira uma rede vazia entre as duas instruções. Nesta rede, chame o FC pré-configurado "GetPackageInfo"
da biblioteca de exercícios.
2. Use a saída correspondente da pré-instrução como condição para que o FC "GetPackageInfo" seja executado
(entrada de bloco "EN") quando o método é chamado.
3. Interconecte as entradas e saídas do FC "GetPackageInfo" com os respectivos parâmetros de entrada e
saída do método.
4. Interconecte o banco de dados de rack de alto compartimento "DataHighBayRacking.packages" com o
parâmetro in/out "packages" do FC "GetPackageInfo".

SITRAIN Page 75 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

ID do pacote e número do
compartimento solicitados ID do pacote, número do
compartimento e data em
que o pacote solicitado foi
recebido

Banco de dados de rack Indica que ocorreu um erro


elevado
"DataHighBayRacking.
packages"

1. Insira uma rede vazia entre as duas instruções. Nesta rede, chame o FC pré-configurado "GetPackageInfo"
da biblioteca de exercícios.
2. Use a saída correspondente da pré-instrução como condição para que o FC "GetPackageInfo" seja executado
(entrada de bloco "EN") quando o método é chamado.
3. Interconecte as entradas e saídas do FC "GetPackageInfo" com os respectivos parâmetros de entrada e
saída do método.
4. Interconecte o banco de dados de rack de alto compartimento "DataHighBayRacking.packages" com o
parâmetro in/out "packages" do FC "GetPackageInfo".

SITRAIN Page 76 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

O bloco OPC_UA_ServerMethodPost precisa de um sinal de status da operação.


Se o método foi executado com sucesso, o código de status "16#00000000" (Good)
deve ser enviado. Caso contrário deve ser enviado "16#803E0000" (BadNotFound).

Monte uma lógica através da saída error do bloco "GetPackageInfo" para gerar esta
informação (e.g. blocos MOVE com contatos aberto/fechado ligados ao EN).
Programe a saída do resultado e a conclusão do método.
Chame o FB em OB "Main", crie uma instância.
Carregue o programa no PLCSIM Advanced e teste seu método com
c UaExpert.

Se o método foi executado com sucesso, o código de status "16#00000000" (Good) deve ser saída.

O método não pode ser executado com êxito se, por exemplo, um número de baía desconhecido ou ID do pacote
for solicitado ou a baía solicitada estiver vazia. Nesses casos, o FC "GetPackageInfo" gera um erro na saída
"error". Então, por exemplo, o código de status "16#803E0000" (BadNotFound) pode ser produzido como
resultado do método.

1. Programe a saída do resultado e a conclusão do método.


2. Chame o FB em OB "Main", crie uma instância e interconecte-a, se necessário.
3. Carregue a CPU e teste seu método com UaExpert.

SITRAIN Page 77 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Métodos de programação

Resultado da
chamada do
método

Conclusão da
chamada do
método

Se o método foi executado com sucesso, o código de status "16#00000000" (Good) deve ser saída.

O método não pode ser executado com êxito se, por exemplo, um número de baía desconhecido ou ID do pacote
for solicitado ou a baía solicitada estiver vazia. Nesses casos, o FC "GetPackageInfo" gera um erro na saída
"error". Então, por exemplo, o código de status "16#803E0000" (BadNotFound) pode ser produzido como
resultado do método.

1. Programe a saída do resultado e a conclusão do método.


2. Chame o FB em OB "Main", crie uma instância e interconecte-a, se necessário.
3. Carregue a CPU e teste seu método com UaExpert.

SITRAIN Page 78 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Exercício adicional
alS
A
ESD
Métodos de programa para gerenciar o rack de
alto compartimento

SITRAIN Page 79 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Tarefa
Método "RemovePackage"

OPC UA client UaExpert OPC UA server S7-1500

Método "RemovePackage"

ID do pacote ou número do compartimento


nto
G

A remoção de um pacote do rack alto (exclusão do registro de dados no banco de dados de rack elevado)
especificando um ID do pacote ou o número do compartimento deve ser ativado com um segundo método.

1. Crie uma cópia do FC "GetPackageInfo" e adapte-o para que as entradas no "packages" e "bayStatus"
matrizes do respectivo pacote são redefinidas.
2. Crie o FB de chamada que fornece a função como um método OPC UA para este.
3. Teste o método com UaExpert.

SITRAIN Page 80 IK-OPCUA1


Digital Industry Academy SIMATIC S7-1500
Capítulo 8

SIMATIC HMI
R
Painéis Comfort/Mobile & WinCC
CC Runtime
Runti
SD
© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Learning objectives

Nesta seção, você aprenderá …

… quais produtos SIMATIC HMI suportam OPC UA

… as propriedades dos painéis Comfort/Mobile e WinCC Runtime como


cliente

… como configurar os painéis Comfort/Mobile e WinCC Runtime como


cliente

me como
… as propriedades dos painéis Comfort/Mobile e WinCC Runtime
servidor

R
… como configurar os painéis Comfort/Mobile e WinCC Runtime como
servidor

m um
… como armazenar certificados em u painel Comfort/Mobile e em uma
estação de PC

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
SIMATIC HMI como
OPC UA client
Painéis Comfort/Mobile,
E
Pr
WinCC Runtime Advanced & Professional

The following information applies to SIMATIC HMI Comfort/Mobile Panels and the SIMATIC WinCC Runtime
Advanced and Runtime Professional software as OPC UA clients.

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Portfólio de produtos da Siemens Industry
Classificação de clientes OPC UA

Sistema de Execução de Manufatura


OPC UA

WinCC RT Professional, WinCC V7.5,


Sistema Gerenciamento de
WinCC OA
SCADA energia
Estrutura de
engenharia

S7-1500, HMI Comfort/Mobile Panel,


WinCC RT Advanced, MindConnect Nano,

AG
PROFINET

Controlador HMI IPC Comunicação Motion MindConnect


Connect IOT2000, S7-400 com CP 443-1
Industrial control Nano
ano

Nenhum cliente no nível do campo

AS
Fonte e distribuição Industrial I/O stemas de
Sistemas Controles
de energia identification Distribuído Drives
Driv Industriais

The product portfolio of OPC UA clients of Siemens AG can be classified as follows within the automation pyramid:

Management level:
SIMATIC WinCC Runtime Professional, WinCC V7.5, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC Runtime Advanced, MindConnent
Nano, SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1

Field level:
No client on field level

Note:
The SIMATIC HMI Comfort Panel and the e SIMATIC
SIM WinCC Runtime Advanced software belong to the controller
level of the automation pyramid. However, because of the lack of real-time capability of the OPC UA connection up
to now, control signals and commands should not be exchanged.

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Mecanismos de segurança do OPC UA clients

X.509 X.509
Troca de certificados

Server

OPC UA server OPC UA client


Basic128Rsa15 Sign & Encrypt*
ncrypt*
Basic256 Encryp *
n & Encrypt
Sign

Autenticação de usuário (apenas RT


Professional)

The following table shows the security policies that are supported by the individual SIMATIC HMI products:

None Basic128Rsa15 Basic256 Basic256Sha256

None Sign Sign & Sign Sign & Sign Sign &
Encrypt Encrypt Encrypt
Comfort/Mobile ‫ض‬ ‫ض‬ ‫ض‬
Panel
WinCC Runtime ‫ض‬ ‫ض‬ ‫ض‬
Advanced
WinCC Runtime ‫ض‬ ‫ض‬ ‫ض‬ ‫ض‬ ‫ض‬
Professional

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tipos de acesso do OPC UA clients

Client Client Client Client Client


Browse response

R/W response
Browse request

R/W request

Server Server Server Server


Serve Server Server Server

Registrado
ado
Leitura/Escri Historical Alarms and
Browse Leitura/Escri Subscrição Métodos
ta Access Conditions
ta

Comfort/Mobile Panels and WinCC Runtime (Advanced and Professional) support the following access types
as OPC UA clients:
• Browse
• Read/Write

Notice
Although you can set an acquisition cycle for each HMI variable, this will be converted to a cyclic OPC UA Read
command. No OPC UA subscriptions are created!

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Configurando uma conexão

Nota:
Pode-se entrar com o URL ou navegar online nos diretórios

You create OPC UA connections under "Connections" in the project tree of the Comfort Panel or WinCC Runtime.
Select "OPC UA" as the communication driver. Under "OPC Server", enter the discovery URL of the OPC UA
server and select the security policy or endpoint.

Note:
Instead of entering the server URL of the desired server, you can also select it via the discovery function
of TIA Portal.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Criando variáveis

Duas alternativas para endereçamento: ou navegando online ou entrando com o edereço (node ID) do tag
Nota: A ferramenta de engenharia (WinCC) não tem opção de navegação através de certificados. Isto significa que o server de permitir
acesso via security policy “None” durante a configuração.

Under "HMI variables", create the variables and select the respective connection.

If the OPC UA server is accessible and the security policy "None" is configured, you can browse the server and
select the respective variables.

Alternatively, specify the Node ID of the respective variable under "Address".

Note: The WinCC Engineering software (not WinCC Runtime) provides no option for a certificate exchange.
This means you can only browse an OPC UA server if the security policy "None" is activated in the server and
configured in the client. After configuring the variables, you can adjust the security policy.

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Troca de certificados do OPC UA clients
Local de armazenamento

WinCC RT Advanced

Os certificados
ertificados dos HMI são
nciados nas pastas de sistema.
gerenciados

Para OPC UA Client:


WinCC RT Professional
Comfort/Mobile Panel:
\flash\simatic\SystemRoot\OPC\PKI\CA\default
WinCC Runtime Advanced:
C:\ProgramData\Siemens\CoRtHmiRTm\OPC\PKI\CA\default
WinCC Runtime Professional:
C:\ProgramData\Siemens\SCADA-RT_V1x\WinCC\OPC\UAClient\PKI

The certificates for all SIMATIC HMI products are managed using file system folders. The storage location is
dependent on the respective product and the role it assumes (server or client). For the OPC UA client, the
certificates are managed at the following storage locations:

Comfort/Mobile Panel:
\flash\simatic\SystemRoot\OPC\PKI\CA\default

WinCC Runtime Advanced:


C:\ProgramData\Siemens\CoRtHmiRTm\OPC\PKI\CA\default

WinCC Runtime Professional:


UAClient
C:\ProgramData\Siemens\SCADA-RT_V1x\WinCC\OPC\UAClient\PKI

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Troca de certificados do OPC UA clients
Confiando em um certificado

Todos HMI sempre rejeitam novos certificados movendo-os para


a pasta rejeitados.
Para aceitar o certificado, mova-o da pasta rejeitado para a pasta
trusted.

Estrutura de subdiretórios:
Comfort/Mobile Panel and WinCC Runtime Advanced:
certs: Trusted certificates and own certificate
private: Private keys
rejected: Rejected certificates

WinCC Runtime Professional:


Issuers: Trusted certificate authorities
OPCUA\certs: Own certificate
Rejected\certs: Rejected certificates
Trusted\certs: Trusted certificates

The underlying folder structures are as follows:


• Comfort/Mobile Panel and WinCC Runtime Advanced:
• certs: Trusted certificates and own certificate
• private: Private keys
• rejected: Rejected certificates

• WinCC Runtime Professional:


• Issuers: Trusted certificate authorities
• OPCUA\certs: Own certificate
• Rejected\certs: Rejected certificates
• Trusted\certs: Trusted certificates

All SIMATIC HMI products always reject received certificates


ates the first
fir time and file them in the "rejected" folder.
To trust a certificate, move it from the "rejected" folder to the folder for trusted certificates.

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
SIMATIC HMI como
OPC UA server
Painéis Comfort/Mobile &
WinCC Runtime Advanced

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Portfólio de produtos da Siemens Industry
Classificação dos OPC UA servers

Sistema de Execução de Manufatura


OPC UA

SIMATIC NET, WinCC RT Professional,


WinCC V7.5, PCS 7, SINEMA Server,
Sistema Gerenciamento de
TeleControl Server Basic, SIMATIC Energy
SCADA energia
Estrutura de Manager PRO, WinCC OA
engenharia
S7-1500, HMI Comfort/Mobile Panel,
WinCC RT Advanced, MindConnect Nano,

AG
IOT2000, S7-400 com CP 443-1, SIMOTION,
PROFINET

Controlador HMI IPC Comunicação Motion MindConnect


Connect
Industrial control ano
Nano SINUMERIK

RF600, PSU8600/UPS1600, SIMOCODE,

AS
3RW44
Fonte e distribuição Identificação I/O stemas de
Sistemas Controles
de energia industrial Distribuído Driv
Drives Industriais

The product portfolio of OPC UA servers of Siemens AG can be classified as follows within the automation
pyramid:

Management level:
SIMATIC NET, SIMATIC WinCC RT Professional, SIMATIC WinCC V7.5, PCS 7, SINEMA Server, TeleControl
Server Basic, SIMATIC Energy Manager PRO, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC RT Advanced, MindConnent Nano,
SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1, SIMOTION, SINUMERIK
UM

Field level:
SIMATIC RF600, SITOP PSU8600/UPS1600,, SIMOCOD
SIMOCODE, SIRIUS 3RW44

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Mecanismos de segurança dos OPC UA servers

X.509 X.509
Troca de certificados

Client

OPC UA server OPC UA client


Basic128Rsa15
Rsa15 Sign & Encrypt

Comfort/Mobile Panels and WinCC Runtime Advanced provide the following security mechanisms as OPC UA
servers:
• Encryption
• None
• Basic 128Rsa15 (Sign, Sign & Encrypt)

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tipos de acesso aos OPC UA servers

Client Client Client Client Client Client Client

Publicação
Browse response

R/W response
Browse request

R/W request

Amostragem

Server Server Server A


Server
Serv Server Server Server

Registrado
ado
Leitura/Escri Historical Alarms and
Browse Leitura/Escri Subscrição Métodos
ta Access Conditions
ta

Comfort/Mobile Panels and WinCC Runtime Advanced support the following access types as OPC UA servers:
• Browse
• Read/Write
• Subscription

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Configuração

The OPC UA server of the Comfort/Mobile Panel and WinCC Runtime Advanced can be activated in the runtime
settings under "Services".
The security policies and the port number can then be set under "OPC settings".

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Troca de Certificado dos OPC UA servers
Local de armazenamento
Todos HMI sempre rejeitam novos certificados movendo-os para a pasta
rejeitados.
Para aceitar o certificado, mova-o da pasta rejeitado para a pasta trusted.

Os certificados dos HMI são gerenciados nas pastas de sistema.


Comfort/Mobile Panel:
\flash\simatic\SystemRoot\SSL

WinCC Runtime Advanced:


C:\ProgramData\Siemens\CoRtHmiRTm\MiniWeb1X.X.X\SystemRoot\SSL

Subdiretórios:
certs: Trusted certificates
OPCUACerts: Own certificate and own private key
rejected: Rejected certificates

The certificates for all SIMATIC HMI products are managed using file system folders. The storage location is
dependent on the respective product and the role it assumes (server or client). For the OPC UA server, the
certificates are managed at the following storage locations:

Comfort/Mobile Panel:
\flash\simatic\SystemRoot\SSL

WinCC Runtime Advanced:


C:\ProgramData\Siemens\CoRtHmiRTm\MiniWeb1X.X.X\SystemRoot\SSL

The underlying folder structures are as follows:


• certs: Trusted certificates
• OPCUACerts: Own certificate and own private keyy
• rejected: Rejected certificates

All SIMATIC HMI products always reject received


rece certificates the first time and file them in the "rejected" folder.
To trust a certificate, move it from the "rejected" folder to the folder for trusted certificates.

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
SIMATIC HMI como
OPC UA serverr
ES
WinCC Runtime Professional
al

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Portfólio de produtos da Siemens Industry
Classificação do OPC UA server

Sistema de Execução de Manufatura


OPC UA

SIMATIC NET, WinCC RT Professional,


WinCC V7.5, PCS 7, SINEMA Server,
Sistema Energy
TeleControl Server Basic, SIMATIC Energy
SCADA management
Estrutura de Manager PRO, WinCC OA
engenharia
S7-1500, HMI Comfort/Mobile Panel,
WinCC RT Advanced, MindConnect Nano,

AG
IOT2000, S7-400 com CP 443-1, SIMOTION,
PROFINET

Controlador HMI IPC Comunicação Motion MindConnect


Connect
Industrial control ano
Nano SINUMERIK

RF600, PSU8600/UPS1600, SIMOCODE,

AS
3RW44
Fonte e distribuição Identificação I/O stemas de
Sistemas Controles
de energia industrial Distribuído Driv
Drives Industriais

The product portfolio of OPC UA servers of Siemens AG can be classified as follows within the automation
pyramid:

Management level:
SIMATIC NET, SIMATIC WinCC RT Professional, SIMATIC WinCC V7.5, PCS 7, SINEMA Server, TeleControl
Server Basic, SIMATIC Energy Manager PRO, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC RT Advanced, MindConnect Nano,
SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1, SIMOTION, SINUMERIK
UM

Field level:
SIMATIC RF600, SITOP PSU8600/UPS1600, SIMOCODE,
IMOCODE SIRIUS 3RW44

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Mecanismos de segurança do OPC UA server

X.509 X.509
Troca de certificado

Client

OPC UA server OPC UA client


Basic128Rsa15 Sign & Encrypt
Basic256
CTA
ign & Encrypt
Sign Encryp
6
Basic256Sha256
PL E
Sign & Encrypt

Autenticação de usuário

WinCC Runtime Professional provides the following security mechanisms as an OPC UA server:
• User authentication
• Encryption
• None
• Basic128Rsa15 (Sign, Sign & Encrypt)
• Basic256 (Sign, Sign & Encrypt)
• Basic256Sha256 (Sign, Sign & Encrypt)1)

1) TIA Portal V15.1 or higher

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tipos de acesso ao OPC UA server

Client Client Client Client Client Client Client

Publicação

Reg. nodes response


Browse response

Reg. nodes request

Data response
R/W response

R/W response
Browse request

Data request
R/W request
R/W request

Amostragem

A
Server
Serve Server Server

Browse
Leitura/Escri
Registrado
do
Leitura/Escri
E Subscrição Métodos
Historical Alarms and
ta Access Conditions
ta

WinCC Runtime Professional supports the following access types as an OPC UA server:
• Browse
• Read/Write
• Registered Read/Write
• Historical Access

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Instalação

O servidor OPC UA é opcional


e deve ser selecionado
durante a instalação.

O
OPC UA server é uma opção durante a
instalação do WinCC Runtime Professional e
não é selecionado por default.
O ajuste para instalação fica sob divisão Tools.

The OPC UA server is an option during installation of WinCC Runtime Professional and is not selected by default.
In order to use WinCC Runtime Professional as an OPC UA server, you must select the "WinCC OPC UA Server"
check box under "Tools".

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Configurações do OPC
Em "OPC settings“, pode-se ajista o número da porta usada e as políticas de segurança.

G
Necessário para
Historical Access

Nota:
Para Historical Access, deve-se ativar a opção "Data logging in runtime"

Under "OPC settings", you can change the port number of the OPC UA server and select the security policies.

i
Note:
For Historical Access, you must activate the "Data logging in runtime" service.

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Criando variáveis de log para Historical Access

Selecione "Memory"
para local de
armazenamento

Selecione "On
change“ para o tipo de
aquisição

Para tornar vaiáveis disponíveis no Historical


storical Access,
Acce criar um data log e selecionar o local como “Memory”.
Criar logging variables e conectá-lass com as variáveis de processo. Ajustar o tipo de aquisição como "On
change".

To make variables available via Historical Access, create a data log and select the storage location "Memory".
Then create logging variables and connect your process variables. Set the acquisition type to "On change".

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Exercício 1
ESD
Visualize as variáveis do controlador
ntrolador a
através de
comunicação OPC UA

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tarefa deste exercício

Neste exercício HMI como


OPC UA client
Configurar um HMI TP700 Comfort com cliente OPC UA

Ler as variáveis do S7-1500 (rodando no PLC SIM Advanced)


rodando como servidor OPC UA S7-1500 como
OPC UA server

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tarefa deste exercício

Neste exercício HMI como


OPC UA client
Carregar S7-1500 no PLC SIM Advanced
Criar HMI usando wizard.
Criar conexão OPC lincando com URL do S7-1500 Server
Criar variáveis navegando online nas variáveis do S7-1500 S7-1500 como
Mover as variáveis para tela inicial OPC UA server
Alterar valores e monitorar valores no HMI e no controlador.

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Exercício 2
E
Visualize as variáveis do HMI
MI através
at de OPC UA

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tarefa deste exercício

Neste exercício
UA Expert
Configurar um HMI TP700 Comfort com Sevidor OPC UA OPC UA client

Ler as variáveis através do UA Expert

HMI como
OPC UA server
OPC UA client

S7-1500 como
OPC UA server

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Tarefa deste exercício

Neste exercício
UA Expert
Configurar um HMI TP700 Comfort com Sevidor OPC UA OPC UA client
Habilitar nível de segurança “none”

Ler as variáveis do HMI através do UA Expert


Ler as variáveis do controlador através do UA Expert
Alterar valores no controlador e monitorar alterações HMI como
OPC UA server
OPC UA client

S7-1500 como
OPC UA server

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy SIMATIC HMI
Capítulo 10

SIMATIC NET
G
OPC Server e
OPC Scout
© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Objetivos do aprendizado

Nesta seção você irá aprender…

… como classificar o OPC UA server do SIMATIC NET e quais recursos


ele oferece

… como configurar o SIMATIC NET OPC UA server e atribuir seus


parâmetros

… como classificar o OPC Scout OPC client e quais recursos ele oferece

arece em
… qual o modelo de função por trás “Alarms & Conditions” aparece
conjunto com o SIMATIC NET OPC Server

releva
… o que são eventos e quais tipos de eventos são relevantes para a S7
connection otimizada

a para
… como o modelo de filtro funciona p A&C

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
SIMATIC NET G
OPC Server
E
Gateway OPC UA baseado em software
s

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
SIMATIC NET

SIMATIC NET • SIMATIC NET é um componente de comunicação instalado


Server e configurado em um PC ou IPC.
• A configuração no TIA Portal é realizado em uma PC station.
Server • Em relação ao OPC UA, SIMATIC NET é conectado ao
controlador através de uma S7 connection e então fornece
dados via OPC UA.

O programa central "Communication


Settings" suporta as seguintes tarefas para
o sistema de comunicação de um SIMATIC
PC station :
• Configuração
• Comissionamento
• Diagnósticos

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Portfólio de produtos da Siemens Industry
Classificação do OPC UA server

Sistema de Execução de Manufatura


OPC UA

SIMATIC NET, WinCC RT Professional,


WinCC V7.5, PCS 7, SINEMA Server, TeleControl
Sistema Gerenciamento de
Server Basic, SIMATIC Energy Manager PRO,
SCADA energia
Estrutura de WinCC OA
Engenharia
S7-1500, HMI Comfort/Mobile Panel,
WinCC RT Advanced, MindConnect Nano,
IOT2000, S7-400 com CP 443-1, SIMOTION,
PROFINET

Controlador HMI IPC Comunicação Motion CNC


Industrial trol
control SINUMERIK

RF600, PSU8600/UPS1600, SIMOCODE, 3RW44


Fonte e distribuição Identificação I/O Si
Sistemas de Controles
de energia industrial ibuído
Distribuído Drives Industriais

The product portfolio of OPC UA servers of Siemens AG can be classified as follows within the automation
pyramid:

Management level:
SIMATIC NET, SIMATIC WinCC RT Professional, SIMATIC WinCC V7.5, PCS 7, SINEMA Server, TeleControl
Server Basic, SIMATIC Energy Manager PRO, SIMATIC WinCC OA

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC RT Advanced, MindConnect Nano,
SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1, SIMOTION, SINUMERIK

Field level:
SIMATIC RF600, SITOP PSU8600/UPS1600, SIMOCODE,
MOCODE, SIRIUS 3RW44

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Mecanismos de segurança de OPC UA

X.50 X.50
9 Troca de certificados 9

Server
Client

OPC UA server OPC UA client


Basic 128 RSA15 rypt
Sign & Encrypt
Basic 256 Sign & Encrypt
T
Basic 256 SHA
PLC
gn & Encrypt
Sign Enc

Autenticação de usuário

SIMATIC Net provides the following security mechanisms as an OPC UA server:


• User authentication
• Encryption
• None
• Basic128Rsa15 (Sign, Sign & Encrypt)
• Basic256 (Sign, Sign & Encrypt)
• Basic256Sha256 (Sign, Sign & Encrypt)

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Acessar tipos de servidores

Client Client Client Client Client Client Client

Status changes of the A&C Var


Reg. nodes response
Publicação
Browse response

Reg. nodes request

R/W response
R/W response
Browse request

Node request
R/W request
R/W request

Amostragem

RA
Server Server Server Server Server Server Server

Browse
Escrita/Leitu
Registrado
ado
Escrita/Leitu
E Subscrição Métodos
Historical Alarms and
ra Access Conditions
ra

SIMATIC NET supports the following access types as an OPC UA server:


• Browse
• Read/Write
• Registered Read/Write
• Subscription
• Alarms and Conditions

Note:
The access type "Alarms and Conditions" is currently possible with TIA Portal for the SIMATIC NET OPC Server
only in combination with the S7-1500 and programmed alarms.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configuração do SIMATIC NET OPC Server com as
configurações de comunicação Siemens

The "Communication Settings" configuration program is used for configuration and diagnostics of the PC hardware
components and the PC user programs. You can use it to make the settings of the SIMATIC NET OPC Server.

The program is installed with the PC programs on the SIMATIC NET Installation DVD on your PC.

You call the program from the Windows Start menu "Siemens Automation > Communication Settings".

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configurações de Comunicação Siemens
Desligando o SIMATIC NET OPC Server

4. Stop & Start


When you click the "Stop" button, the activated notification text is sent to the clients and the OPC server is
shut down after the delay time elapses. In this case, the OPC server is reset to a defined state without having
to restart the system. The OPC server disconnects all the communication connections.
An active Data Access Server and an OPC Alarms and Events Server are shut down as are all OPC UA
servers.
The "Start" button is used to start the configured OPC UA servers and the Data Access Server. If there are no
clients, the Data Access Server is immediately shut down again.

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configurações de Comunicação Siemens
“OPC protocol selection”

Functionality for selecting the OPC protocol


The SIMATIC NET OPC server supports various protocols. You can configure properties for all OPC protocols on
this properties page. All protocols are activated in the initial configuration. Clear the check boxes of all protocols
that you do not want to use.

Name:
DP DP master, DP slave via PROFIBUS
DP master class 2 DP master class 2 via PROFIBUS
FDL S5-compatible communication Send/ Receive via PROFIBUS
Fieldbus Data Link (FDL)
S7 SIMATIC S7 communication via PROFIBUS and Industrial
a PROFIB
Ethernet
S7-optimized SIMATIC S7 communication
munication with S7-1200 (V4 or higher) and S7-1500
via Industrial
al Ethernet (access
( to optimized data blocks)
SR S5-compatible
mpatible communication
c Send/ Receive ISO, ISO-on-TCP
and TCP/IP
/ via Industrial Ethernet
SNMP Simple Network Management Protocol via Industrial Ethernet
PROFINET IO Component-based communication according to PROFINET IO
standard via Industrial Ethernet

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configurações de Comunicação Siemens
“OPC protocol selection”

1 2

Activation of OPC UA

1. OPC UA
OPC UA can be selected for the "S7" and "S7 optimized" protocols.

2. Overview of settings
An overview of the detailed settings for the individual protocols is shown here in abbreviated form.

3. Details
If you click the arrow symbol, the expanded parameter list for the protocol is displayed.

4. XML
If the XML OPC server is to be used in parallel with
h the OPC servers, this option must be selected.

Note:
After changes are made to the communication
ati settings, you must restart the server in order for the settings to take
effect.

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configurações de Comunicação Siemens
Configurações possíveis para OPC UA

Detailed setting options for OPC UA

1. Port settings
C: If this check box is selected, the default setting is used for the indicated port. If the check box is not
selected, you can edit the input field for the port.

2. Security policies
U: accepts unsecured connections based on security policy "None"
W: accepts secured connections based on security policy "Basic128Rsa15"
X: accepts secured connections based on security policy "Basic256"
Y: accepts secured connections based on security policy "Basic256Sha256"

3. Check of the client certificates


V: If this check box is selected, the certificates are
re always cchecked. If the check box is not selected, the
certificates are not checked. In this case,e, the settings
settin of the L and O check boxes are irrelevant.
L: If this check box is selected, certain
ain checks ofo certificates are ignored (CertificateRevocationUnknown,
CertificateIssuerRevocationUnknown,
nown, NonceLengthCheck,
N TokenPolicyIdCheck). If this check box is not
selected, certificates undergo a full check.
O: If this check box is selected, certificates are accepted even if the time stamp of the certificate is invalid.
Invalid means that the certificate is not yet valid or has already expired. If this check box is not selected,
certificates are only accepted if the time stamp is valid.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Editor “Station Configuration”

Funcionalidades para configuração de um PC station


• Atribuindo o nome da estação
• Criando novos componentes (configuração inicial)
• Aplicando uma configuração de componente e dados Slots (índices) do rack
de configuração (modo online ou offline) virtual do PC
• Definir o modo (online ou offline)
• Verificações e diagnósticos
Stationmanager

OPC Server

User Appl
Modelo de uma

HMI RT
PC station
Index Index Index Index Index
1 2 3 4 5
Virtual rack da PC station

With the "Station Configurator" (Station Configuration Editor), you can access the component management of the
Station Manager in the PC station. You require the Station Configuration Editor for the initial configuration (as an
alternative to remote configuration) and maintenance of a PC station.
You have the following options for configuring the Station Configuration Editor:

• Manually:
With this option you manually insert the components in the slots of the Station Configuration Editor. These must
be entered in the same order as in the component image you created in the SIMATIC PC station using the HW
configuration in TIA Portal.
The configuration in TIA Portal is then downloaded to the Station Configuration Editor (Station Manager).

• Using TIA Portal:


The "Configure PC station online" functionality fills the Station
on Configuration
Configu Editor with the hardware
configuration from the PC station configured in TIA Portal.
The configuration in TIA Portal can then be downloaded
wnloaded to the Station Configuration Editor (Station Manager).

• Using an XDB file:


The configuration and the project engineering
ee can be simultaneously imported to the Station Configuration Editor
using an XDB file, which is optionally created by TIA Portal when the PC station is compiled.

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configuração básica de uma PC station no TIA Portal

Inserir uma PC Station


com
• Módulo de comunicação
"IE General"
• Aplicativo do usuário
"OPC Server"

2
Índice de slot

The configuration of the SIMATIC NET OPC Server takes place in TIA Portal in a PC station.

1. In the "Devices & networks" view, the following components must be inserted from the hardware catalog:
• A "PC station" from "PC general"
• An "IE General" PC interface from "Communications modules > PROFINET/Ethernet"
• An "OPC server" from "User applications"

2. Here, in example 1, the slot index for the "IE General" interface is the slot index of "OPC server" 2.

For a basic configuration, the IP address of the "IE General" interface must then also be configured and this
interface must be assigned to a subnet.

Note:
The indexes (slots in the rack of the PC station)
on) can be assigned
a individually but, in the event of manual
configuration of the Station Configuration
n Editor, the
th same order must be followed!

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configuração básica de um PC station no TIA Portal

In order to access variables of a PLC, an S7 connection must be established between the OPC server of the PC
station and a SIMATIC S7 controller (here in the example, a CPU 1214C).

1. In the "Network view", change from "Network" mode to "Connections" mode with an "S7 connection" and
use drag-and-drop to draw an S7 connection between the OPC server and CPU 1214C.

2. TIA Portal creates an "S7_Connection_1" between the two endpoints under "Connections".

The basic configuration for this theoretical minimum system is now complete.

The configuration and parameter assignment of the PC station must now be downloaded to the Station
Configuration Editor and Station Manager. There are three
e possible ways
w to do this:

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Editor “Station Configuration”
Fazendo o download da configuração usando o TIA Portal

A busca só
funciona para
equipamentos
em rede, para
download
para o próprio
micro, digitar
3 o IP
manualmente

5 4

Transfer of the configuration from TIA Portal to the Station Manager of the Station Configuration Editor.

1. Compile the PC station and call the menu item "Online > Extended download to device...".

2. Check that the PG/PC interface and the type of the PG/PC interface are correct, and start a search for
available target devices.

3. Because the system only finds devices outside its own engineering station in this dialog and your PC station
may also simultaneously contain the engineering system, you must select the entry "Destination address" in
the "Address" column of the table of the target devices and enter the IP address of your PG/PC (in this
example, 192.168.111.1). The system now searches for the corresponding
spo access point (here: IE General_1)
on its own device.

4. Select the found device and download the configuration


guration to the Station Configuration Editor.

5. Call the Station Configuration Editor and check


chec the entries. All components at the slots of the Station
Configuration Editor now show the status
atu (component present and configured) and state (component
in Run state). The OPC server shows an active connection to its configured partner.

SITRAIN Page 25 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Editor “Station Configuration”
Configuração manual

1 3

2
4

Manual configuration of the Station Configuration Editor.


Example: Ethernet interface (slot 1); SIMATIC NET OPC Server (slot 2)

1. Add a component of type IE General at Index 1 (= slot 1 of the virtual PC rack).


The interface card and its parameter assignment can be checked in the subsequent dialog.
2. When all the dialogs are acknowledged, the IE General interface is virtually loaded (inserted) into the PC rack
at Index 1.
The status changes to (component inserted, but no configuration data) and the state changes to
(component in Run state).
When the next index is selected (in this case, Index 2), another component can be added.
3. Add a component of type OPC Server at Index 2 (= slot 2 of the virtual
rtu PC rack).

T A
4. When the "Add component" dialog is acknowledged, the OPC server is virtually loaded onto Index 2.
5. The status of the OPC server also changes to C
and L. Th
P The dialog of the Station Configuration Editor can
now be exited with "OK".

Note:
The order and the slot numbers of the components must be the same as in the configuration of the PC station in
TIA Portal.
You can now download the PC station to the Station Configuration Editor (Station Manager) in TIA Portal.

SITRAIN Page 26 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Editor “Station Configuration”
Configuração usando o arquivo XDB
3

AG
1

4 5

Configuration and project engineering via import of the XDB file from the TIA Portal

1. In the project tree in TIA Portal, select the PC station und change to the "XDB configuration" menu item on the
"General" tab in the properties dialog of the PC station.
Select the "Generate XDB file" check box. By default, the system stores the file in the .\XDB folder of your
TIA Portal project with the name of the PC station.

2. The XDB file will be stored in the corresponding path when the project is next compiled.

3. This XDB file can be loaded in the Station Configuration Editor using "Import station …".

4. The Station Configuration Editor verifies the configuration and imports


import it after acknowledgment of the dialog.

5. The configuration is now downloaded in a single


ngle operation.
operat After error-free import, all components have the
status (component present and configured) and state
onfigured) a (component in Run state). The OPC server
shows an active connection to its configured
nfigured partner.

SITRAIN Page 27 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
OPC Scout
ESD
OPC client para comissionamento
mento e diagnóstico
d
de sistemas OPC

SITRAIN Page 28 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Portfólio de produtos da Siemens Industry
Classificação de OPC UA client

Sistema de Execução de Manufatura


OPC UA

WinCC RT Professional, WinCC V7.5,


Sistema Gerenciamento de
WinCC OA, OPC Scout
SCADA energia
Estrutura de
engenharia

S7-1500, HMI Comfort/Mobile Panel,


WinCC RT Advanced, MindConnect Nano,

AG
PROFINET

Controlador HMI IPC Comunicação Motion MindConnect


Connect IOT2000, S7-400 com CP 443-1
Industrial control Nano
ano

No client on field level

AS
Fonte e distribuição Identificação I/O stemas de
Sistemas Controles
de energia industrial Distribuído Drives
Driv Industriais

The product portfolio of OPC UA clients of Siemens AG can be classified as follows within the automation pyramid:

Management level:
SIMATIC WinCC RT Professional, WinCC V7.5, SIMATIC WinCC OA, OPC Scout

Control level:
SIMATIC S7-1500, SIMATIC HMI Comfort/Mobile Panel, SIMATIC WinCC RT Advanced, MindConnect Nano,
SIMATIC IOT2000, SIMATIC S7-400 with CP 443-1

Field level:
No client on field level

SITRAIN Page 29 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Mecanismos de segurança do cliente

X.50 X.50
9 Troca de certifciado 9

Client
Server

OPC UA server OPC UA client


Basic 128 RSA15 Sign & Encrypt
ncrypt
A
Basic 256
CT
n & Encrypt
Sign Encryp

Autenticação do usuário

OPC Scout acts as a commissioning tool and is made available free of charge by Siemens. For this reason, OPC
Scout foregoes certificate exchange and trusts all servers. It provides only one client certificate to the servers.

OPC Scout supports the following security mechanisms as an OPC UA client:


• User authentication
• Encryption
• None
• Basic128Rsa15 (Sign, Sign & Encrypt)
• Basic256 (Sign, Sign & Encrypt)

The certificate of OPC Scout can be exported from the configuration program
rog "Communication Settings" of
SIMATIC NET.

SITRAIN Page 30 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Chamada e interface do usuário

Área de informação
Área de navegação
(servidor, conexão,
(lista os servers)
2 Atributos, etc.)
1

Workbook Ver área


(Servidor (mostra conteúdo
3 E vistas das vistas

ES
Selecionadas)
adas) 4 Selecionadas)

You call the program from the Windows Start menu "Siemens Automation > Communication Settings".

1. Navigation area:
The navigation area lists the registered OPC COM servers and UA servers that can be accessed from your
PG/PC. All locally installed UA servers that were registered by the Discovery service or with which a
connection has been established at least once are displayed.
2. Information area:
The information area shows information regarding the status and functionalities for the server selected in the
navigation area as well as connection information. Items and attributes with additional properties such as
name, value, type and, if applicable, access right and item name are displayed for each object selected in the
navigation area.
3. Workbook:
The workbook shows your current project with the servers
rvers used in
i it and your individually created views.
4. View area:
The view area displays the views createded in the workbook
wo with their respective objects. The following types of
views are available:
• DA views: for displaying the data off COM
C and UA servers
• AE views: for displaying events (Alarms & Events)
• Diagnostics views: for displaying the S7 connection diagnostics for COM and UA servers

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configuração do OPC Scout: Adicionando um servidor

1. Double-click the menu item "Add Server" in the navigation area to open the "Find endpoints of the UA
server" dialog.
2. Here, the URL of the desired server or a Discovery server can be entered. When you click the "Discovery"
button, the available endpoints of this OPC UA server are displayed.
3. After selecting the desired server endpoint, you can specify the security mode and the security policy.

Note
The "Security policy" drop-down list contains all the security policies that the OPC UA server provides for the
selected endpoint. However, security policies not supported by OPC Scout V10 cannot be selected for the
navigation area.

4. Click "OK" to add the server to the Server Explorer.


5. Alternatively, you can right-click on the "Local UA servers"
rvers" item in the "Server Explorer" to start the "Update
browsing" functionality. This functionality lists all available OPC UA servers installed on the PC and found
using the Discovery server installed with SIMATIC NET.

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Configuração do OPC Scout: Conectando um servidor

1. If you right-click on the OPC UA server, you can:


• Connect to the server.
• Disconnect from a connected server or remove a created server.
• Update the server.
• Change the user authentication
Here, the possibility exists to choose between a configured user (user name and password) or an
anonymous user.

If a connection was not able to be established to the server, this is indicated by corresponding error messages.

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Acessar tipos de OPC Scout

Client Client Client Client Client Client Client

Status changes of the A&C Var


Publicação
Browse response

R/W response
Browse request

Node request
R/W request

Amostragem

A
Server Server Server Server
rver Server Server Server

Browse Leitura/Escrita
Registrado
do
ES
rita
Leitura/Escrita
Subscrição Métodos
Historical
Access
Alarms and
Conditions

The OPC Scout supports the following types of access to OPC UA servers:
• Browse
• Read/Write
• Subscription
• Alarms and Conditions

This means that OPC Scout is suitable as a commissioning tool for most OPC UA servers of the Siemens product
portfolio.

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Tipo de acesso OPC UA: Browse

Client
Browse response
Browse request

Server

Browse

Once the connection to an OPC UA server is successfully established, the nodes of the connected server can now
be browsed in the navigation area. When you click on one of the variables in the navigation area, the attributes and
values of this node are displayed in the information area.

Æ Folders

Æ Nodes

Æ Variables

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Tipo de acesso OPC UA: Leitura/Escrita

Client
R/W response
R/W request

A
OPC UA Read
ead OPC UA Write
2

Server
1

3 4
Leitura/Escrita

1. Click the "Create and add new DA view" button to create a new DA view in the view area.
2. Select the variable in the Server Explorer window and use drag-and-drop to move it to the DA view in the view
area. You can then execute the OPC UA "Read" and "Write" commands by clicking the "Read" and "Write"
buttons.
3. The value of the variable is displayed in the "Value" column of the table. Status information in the "Result"
column indicates whether the reading or writing was successful.
4. In the "New value" column, a value can be entered that will be written to the corresponding variable on the
OPC UA server by clicking the "Write" button.

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Tipo de acesso OPC UA: Subscrição

Client

Publicação

Amostragem

AS
Server

Subscrição

1. The "Monitoring ON" button in the DA view of the view area causes OPC Scout to create a subscription.
2. The update interval set in the properties is requested and the actual update interval is returned by the server.
In the example shown, an update interval of 500 ms was requested, but an update interval of only 1000 ms is
allowed by the server.
Further settings for the respective subscription to the OPC UA server can be made in this properties window of
the DA view.

Note:
If various subscriptions to different variables of a server are necessary, different DA views must be created in OPC
Scout.

In the "Generate mode" column in the DA view, variables can be automatically


auto incremented or a string list can be
added for testing purposes. If this was set for the respective
ective variable,
varia you can write the variables in Generate
mode after clicking the "Generate values ON" button.

SITRAIN Page 37 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Tipo de acesso OPC UA: Alarms and Conditions

Client
Status changes of the A&C Var
Node request

Server
3
2

Alarms and
Conditions
Note:
The status of the alarm type (incoming, outgoing and acknowledged) and a status code is shown in
Status.

1. Click the "Create and add new AE view" button to create a new AE view in the view area.
2. The following buttons are used to display the alarms and conditions.

Buttons:
• Server
Selects a compatible server from the workbook.
• Monitor
Enables or disables monitoring of all objects (attributes) of the view.
• Update
Only current events whose status indicates that they still exist at the time this function is called are retrieved
from the AE server again and displayed.
• Filter conditions
The filter conditions are transferred to the A&C Server. The server then reports only alarms that correspond
to the filter conditions to OPC Scout.
• Attributes/Properties
attribu
Opens the dialog for selecting the attributes and properties.

3. After selecting an OPC UA Alarms & Conditions Server, you can change between the "Alarm list" and
"Conditions" tabs.

Note:
The status of the alarm type (incoming, outgoing and acknowledged) and a status code is shown in Status.

SITRAIN Page 38 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
“Diagnostics view”

1
4 2

Selecionar um servidor (2) antes de monitorar (4).


Configuração (3) é opcional

1. Click the "Create and add new Diagnostics view" button to create a new Diagnostics view in the view area.
2. The "Server" button opens the "Select server" dialog. The servers contained in the workbook are listed.
Select at least one server and transfer it to the Diagnostics view with "OK".
3. In the Diagnostics view, you can make settings by selecting the respective view in the workbook and opening
the "Properties of the Diagnostics view" dialog from the shortcut menu.
The properties dialog allows the following settings to be made:
• Update interval: The update interval requested by the server in milliseconds (ms).
• Selection of the respective diagnostics variables from the OPC UA server.
• Test timeout interval: Timeout interval for testing of connections whose connection is established with
the option "Active, on demand".
• "Default" button: Customized settings for the width, visibility and arrangement of the individual columns in
the Diagnostics view.
4. Click the "Monitoring ON" button to display the selected
ed diagnostic
diagnost variables.

SITRAIN Page 39 IK-OPCUA1


Digital Industry Academy SIMATIC NET OPC Server & OPC Scout
Capítulo 12

TA
Resolução de Problemas
blemas
PL
e Diagnóstico
© Siemens 2019 siemens.com/sitrain

SITRAIN Page 1 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Objetivos do aprendizado

Nesta seção, você aprenderá …

… as fontes de erros no ambiente OPC

… os erros que ocorrem com mais frequência

… as ferramentas disponíveis para diagnóstico

… os recursos de diagnóstico especificados no OPC UA

co em
… como obter mais informações sobre diagnóstico
caso de erros

SITRAIN Page 2 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Possíveis fontes de erros

Office SCADA
Exemplos de possíveis fontes de erro

1.
1 1 Conexão entre cliente e servidor
Aplicação
Certificados inválidos
remota
Os certificados expiraram
Notificação de certificado não feita
OPC UA
Interface

1 OPC UA communication
2.
1 Conexão entre servidor e AS

OPC UA Notificação da conexão nos dois lados

1 Quebra de cabo
Driver B
S7
2 3 Sobrecarga do AS

2 3.
Falha no servidor
4 Configuração incorreta (direitos de
acesso, mecanismos de segurança)
2

Controladores

Exemplos de possíveis fontes de erro

1.
• Conexão entre cliente e servidor
• Certificados inválidos
• Os certificados expiraram
• Notificação de certificado não feita

2.
• Conexão entre servidor e AS
• Notificação da conexão nos dois lados
• Quebra de cabo
• Sobrecarga do AS

3.
• Falha no servidor
• Configuração incorreta (direitos de acess
acesso, mecanismos de segurança)
• Sobrecarga de servidor

4.
• Falha no AS
• O sistema não está no modo de execução, mas o servidor causa acessos/chamadas de método

SITRAIN Page 3 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Erros de configuração vs. Erros operacionais

Erros de configuração
… são erros causados por configurações incorretas para o cliente ou servidor.

Erros operacionais
… são erros que ocorrem apenas durante a operação e possivelmente apenas
em situações especiais.

Common configuration errors

• Certificates
In order to work with OPC UA in the productive environment, the use of security mechanisms with certificates is
recommended. This requires valid certificates, which the server and client must be notified about. If one of the
configuration steps is missing, secure OPC UA communication cannot take place.

• Date/time in connection with certificates


Components often have their own date/time settings, which are not necessarily synchronized across systems.
In the context of validity periods of certificates, this generally leads to problems because every certificate always
has a validity period.
Example: A certificate is valid on System A with Date/Time A, but on Sy System B with a different date/time, the
point in time lies ahead in the future (common scenario with SIMATIC S7 CPUs: default date/time setting after
memory reset of PLC).

Common operating errors

• Overload
Overloading of the server may cause a slowdown in the processing of requests, but also to a loss of data (value
changes). Possible causes for this are the overloading of the server by its clients or a shortage of resources on
the system of the server.

SITRAIN Page 4 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
PRONETA – Analisador de rede PROFINET

A análise de rede do PRONETA fornece


uma rápida visão geral dos dispositivos
instalados na sua rede PROFINET e como
eles estão interconectados.

Também permite visualizar e alterar vários


parâmetros de rede dos dispositivos, como
endereço IP, nome do dispositivo, etc.

Download PRONETA: https://sie.ag/2ILypOg

SITRAIN Page 5 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
PRONETA – Analisador de rede PROFINET

SITRAIN Page 6 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
PRONETA – Analisador de rede PROFINET

Start Flashing LED


1
Causes the LEDs on the real device to flash for identification purposes.

Open Web Browser


2
Opens the web browser of your PC and attempts to establish a connection to the web server of the
corresponding device.

Set Network Parameters


3
Opens the "Set Network Parameters" dialog where
ere you can
ca set the network parameters of the device.

Reset Network Parameters


4
Resets the IP address and device name of the selected device to the factory settings.

SITRAIN Page 7 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Wireshark

Wireshark é um programa gratuito para análise e processamento gráfico de protocolos de dados na rede
(sniffer). A gravação da comunicação pode ser útil para solucionar problemas ou avaliar o conteúdo da
comunicação.
O Wireshark exibe o cabeçalho do protocolo e o conteúdo transportado
nsportad para uma gravação.

Download Wireshark: http://bit.ly/2t9rE27

SITRAIN Page 8 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Wireshark

1. Depois de iniciar o Wireshark, o primeiro passo é selecionar o adaptador de rede que você deseja.
2. A gravação pode ser iniciada com este botão e os pacotes são exibidos em uma lista.

SITRAIN Page 9 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Wireshark

1. Os filtros atualmente
selecionados estão
listados aqui.
5
2. Lista dos pacotes
ouvidos, classificados por
1
ordem de
2 envio/recebimento.
3 3. Vista detalhada do pacote
atualmente selecionado.
4
4. Representação
hexadecimal do pacote
atualmente selecionado.
5. Um ou mais filtros podem
ser selecionados com
este botão.

1. Os filtros atualmente selecionados estão listados aqui.


2. Lista dos pacotes ouvidos, classificados por ordem de envio/recebimento.
3. Vista detalhada do pacote atualmente selecionado.
4. Representação hexadecimal do pacote atualmente selecionado.
5. Um ou mais filtros podem ser selecionados com este botão.

SITRAIN Page 10 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Wireshark

O Wireshark vem com um grande número de filtros


predefinidos. Para facilitar a seleção, você pode usar o
campo de entrada "Localizar" para reduzir os filtros
disponíveis para os que são importantes para você.

Para encontrar os filtros relevantes para o OPC UA, você


pode digitar "opcua" no campo de entrada “Find”.
Selecione o filtro encontrado e confirme com "OK".

O Wireshark vem com um grande número de filtros predefinidos. Para facilitar a seleção, você pode usar o campo
de entrada "Localizar" para reduzir os filtros disponíveis para os que são importantes para você.

1. Para encontrar os filtros relevantes para o OPC UA, você pode digitar "opcua" no campo de entrada “Find”.
2. Selecione o filtro encontrado e confirme com "OK".

SITRAIN Page 11 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Wireshark
Exemplo de trace
Configurações de
filtros

Pacotes da
transferência de
dados

Conteúdo de um
pacote selecionado

Conteúdo de campos
individuais de um
pacote

Exemplo:
Após a ativação do filtro, a lista de pacotes contém apenas os pacotes que correspondem ao filtro.

A seção superior da captura de tela mostra o estabelecimento da conexão com um OPC UA server. Você vê
solicitações do cliente (origem: 192.168.111.1) para o servidor (destino: 192.168.111.14) para abrir um canal não
seguro e iniciar uma sessão ("OpenSecureChannelRequest", "ActivateSessionRequest"), bem como as respostas
correspondentes do servidor. Além disso, você vê solicitações para ler variáveis ("ReadRequest") e para criar
uma assinatura ("CreateSubscriptionRequest").

Na seção do meio, você vê os campos individuais de um pacote selecionado (exemplo: "ReadResponse"). Os


campos exibem todas as “meta information” para os respectivos pacotes.
cotes Isso inclui os IDs dos nós, dados do
usuário, token de segurança e tamanho dos dados do usuário..

Na seção inferior, você vê o conteúdo do campo


po "ReadResponse"
"ReadR na representação hexadecimal e de string.
"Symbolic name of the device location" pode ser lido aqui. A partir disso, pode-se derivar que a solicitação era
para a "Description" do nó.

Nota:
Se você diagnosticar uma conexão criptografada, o conteúdo dos campos individuais não fornecerá nenhuma
informação valiosa.

SITRAIN Page 12 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
OPC UA – ServerDiagnostics

Na parte 5 da OPC UA Specification, a OPC Foundation


especifica que todo servidor deve fornecer informações sobre seu
status.

Os diagnósticos do OPC UA server são divididos em:

• ServerDiagnosticsSummary

• SessionsDiagnosticsSummary

• SubscriptionDiagnosticsArray

UA server de um S7-1500. SD
t, que está conectado
A captura de tela mostra o UaExpert, c ao OPC

ServerDiagnosticsSummary
Contém informações gerais de diagnóstico do servidor, como o número de sessões e assinaturas ativas no
momento ou o número de solicitações rejeitadas devido a regras de segurança.

SessionsDiagnosticsSummary
Informações sobre sessões individuais, como estatísticas das solicitações de Read/Write e o horário da última
solicitação.

SubscriptionDiagnosticsArray
Semelhante ao SessionsDiagnosticsSummary, esta lista contém informações
ma sobre as assinaturas existentes.

SITRAIN Page 13 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
UaExpert – Server Diagnostics View

O Server Diagnostics View da


UaExpert fornece esses dados
ao usuário como dados
compilados e facilita a
avaliação.

With the Server Diagnostics View of UaExpert, specific information on the server, session and subscription can
be queried and displayed.

This is merely a representation of the information from the ServerDiagnostics node that has been prepared for the
user.

SITRAIN Page 14 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
UaExpert – Server Diagnostics View
Server Information
Dados gerais do servidor, como fabricante, versão, status, perfis e limites do servidor (por exemplo,
intervalo de amostragem mínimo suportado, limites de configuração).

Endpoints
Exibição dos pontos de extremidade disponíveis do servidor,
or, de
acordo com as informações sobre os mecanismos de
segurança oferecidos.

Endpoints
Exibição dos pontos de extremidade disponíveis do servidor, de acordo com as informações sobre os
mecanismos de segurança oferecidos.

Server Information
Dados gerais do servidor, como fabricante, versão, status, perfis e limites do servidor (por exemplo, intervalo de
amostragem mínimo suportado, limites de configuração).

SITRAIN Page 15 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
UaExpert – Server Diagnostics View
Session Diagnostics
As informações sobre as sessões são abertas no servidor, por exemplo lista de estatísticas de uso
(performed operations/faulty operation) e especificação do atualmente monitorado “Monitored Items”.

Subscription Diagnostics
Dados semelhantes são fornecidos aqui como na aba "Session
Diagnostics", mas dividido para as assinaturas individuais de uma
sessão.

Session Diagnostics
As informações sobre as sessões são abertas no servidor, por exemplo lista de estatísticas de uso (performed
operations/faulty operation) e especificação do atualmente monitorado “Monitored Items”.

Subscription Diagnostics
Dados semelhantes são fornecidos aqui como na aba "Session Diagnostics", mas dividido para as assinaturas
individuais de uma sessão.

SITRAIN Page 16 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Mensagem de erro de um aplicativo

Aplicativos diferentes lidam com erros de maneira diferente. A documentação do aplicativo deve ser
consultada para a análise.

Exemplo: Monitoramento de um nó inexistente

UaExpert exibe apenas nós válidos no “Data Access View”. Quando é feita uma tentativa de monitorar um
nó inválido, isso é comunicado por uma mensagem (incluindo código de erro) na área de log.

S
RA
No OPC Scout V10, a área de entrada do NodeID fica
fic vermelha e o código de erro é gerado como resultado
da operação.

SITRAIN Page 17 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Códigos de erro no cliente

Os códigos de erro são retornados em dois níveis no OPC UA. Um reflete o status da chamada
geral e o outro reflete o resultado das operações individuais da chamada.

Service Result – Resultado da chamada


Status Code – Resultado das operações individuais

Os códigos de erro são indicados por quatro bytes e frequentemente representados com texto.
A análise rápida pode ser feita avaliando o primeiro byte do código de erro.

0x00… – "Good"
0x40… – "Uncertain"
0x80… – "Bad"

Os códigos especificados devem ser em sua aplicação. Responda adequadamente a


er avaliado e
este!

SITRAIN Page 18 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Códigos de erro - Resultado do Serviço

O resultado do serviço fornece informações sobre a execução da chamada geral.


Chamada foi executada com sucesso
Æ "Good"

A chamada foi executada parcialmente com sucesso


Æ "Good", parâmetros adicionais (Status Code) também são retornados, que devem ser
verificados.

A chamada não foi executada com sucesso.


Æ "Bad_...", o código de erro fornece informações sobre erro que ocorreu
obre o er

por exemplo, "Bad_CertificateInvalid" – certificado transferido é inválido e foi


O certif
0x80120000 rejeitado.

"Bad_Shutdown" – A consulta não será processada porque a


0x800C0000 aplicativo está sendo desligado.

A listing of all valid service results can be found in the OPC UA Specification Part 4 "Services".

SITRAIN Page 19 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Códigos de erro – Código de status

Um código de status representa o resultado de uma operação individual.

Exemplos:

Código de status Descrição


Bad_NodeIdUnknown Durante uma operação, um NodeId que não pode ser
0x80340000 encontrado no espaço de endereço do servidor foi transferido.
Bad_NotWritable Durante uma operação, foi feita uma tentativa de gravar um nó
0x803B0000 que não pode ser gravado com o nível
nív de acesso atual.

TA
Uncertain_InitialValue O valor fornecido é um valor
alor inicial de
d uma variável que
0x40920000 normalmente obtém
L C
m seus dados
dado de outra variável.
Good_Overload A amostragem
S
gem foi mais lenta devido a uma escassez de
A sobrecarga do servidor).
DR
0x002F0000 recursos
sos (possível
(possíve

Recomendação:
Use os códigos de status especificados pelo OPC UA em seu aplicativo, por exemplo quando programar
métodos.

Uma lista de todos os códigos de status válidos pode ser encontrada na parte 4 da especificação do OPC UA
"Serviços" e está disponível para download na versão mais recente:
http://bit.ly/2yb6EOf

SITRAIN Page 20 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Códigos de erro – Especificações Complementares

Além dos códigos de erro gerais do OPC UA, mensagens de erro adicionais são
definidas nas especificações complementares individuais.

Esses códigos de erro fornecem informações adicionais ajustadas à


especificação complementar correspondente.

Em alguns casos, códigos de erro separados são especificados para métodos


individuais nas especificações complementares.

SITRAIN Page 21 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Códigos de erro – Especificações Complementares

Usando o exemplo da especificação complementar do AutoID :

SITRAIN Page 22 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Diagnóstico S7-1500

Online & Diagnose -> log específico para OPC

SITRAIN Page 23 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Diagnóstico do leitor SIMATIC RF600 RFID

Muitos sistemas e componentes contêm seus próprios servidores da web


usados para configuração e diagnóstico.

Exemplo: O leitor RFID usado no curso possui um servidor da web integrado


que pode ser acessado no navegador da web com o endereço IP configurado.

SITRAIN Page 24 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Diagnóstico do leitor SIMATIC RF600 RFID

No menu "Diagnostics", você encontrará o Logbook com as mensagens de status e erro do leitor RFID.

As informações sobre a funcionalidade do OPC UA do sistema também são exibidas lá.

SITRAIN Page 25 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Configurações de comunicação (PC station/SIMATIC NET)

The configuration console "Communication Settings" is used for configuration, commissioning and diagnostics of a
SIMATIC PC station.

During configuration you can do the following, for example:


• Change the mode of the module and set the index
• Set the PROFIBUS DP slave mode
• Set the Industrial Ethernet network parameters
• Set the Industrial Ethernet station addresses for the CP
• Set the symbol files for OPC
• Assign the application access points to the individual modules

During commissioning you can do the following, for example:


• Configure and set the traces for OPC and protocols
• Deactivate the configured OPC protocols in order to commission
commis the system step by step
• Force the OPC server to shut down (e.g. when
hen an OPC application is no longer reacting)
• Trigger a restart of the module

During diagnostics you can do the following, for example:


• Display the operational readiness of the modules
• Display the PROFIBUS network parameters
• Display the available network nodes
• Display and set the Industrial Ethernet network parameters
• Display the version information of hardware and software

SITRAIN Page 26 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Station Configurator (SIMATIC NET)

Os símbolos "Status" e "Run/Stop" no Station


Configurator dar uma rápida visão geral da operação
do PC station.

You can find a complete list of all symbols in the help of the Station Configurator.

SITRAIN Page 27 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Station Configurator (SIMATIC NET)

O Station Configurator fornece seu próprio buffer de


diagnóstico no qual as mensagens dos componentes
configurados são coletadas. As informações do
evento listadas podem ser úteis na análise de
estados de erro.

SITRAIN Page 28 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Trace do SIMATIC NET

Um programa registra as ações que ele executou


com a ajuda de saídas de rastreio.
A lista mostra a configuração atual dos rastreios para
OPC e conexões de protocolo de nível inferior.

For troubleshooting your own applications, it is often beneficial to be able to evaluate the correct behavior of the
lower-level components.
In particular, errors in communication activity patterns can be more easily traced in this way. A program logs the
actions it has executed with the help of trace outputs.

DP – Protocol connection for PROFIBUS DP


S7 – Protocol connection for S7 communication
S7 optimized – Protocol connection for S7 communication (S7-1200 / 1500)
SR – Protocol connection for S5-compatible S/R communication
PROFINET IO – Protocol connection for PROFINET IO
SNMP – Protocol connection for SNMP
MP
DP Master Class 2 – Protocol connection for DP master
ma class 2
Data XML – OPC XML server
rver for data
da access via the Internet
Event – OPC server for Alarm&Events
Event S7 – OPC server
er for Alarm&Events S7

SITRAIN Page 29 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Configurações de Trace

Trace file
Name of trace file.
All trace files are stored in the "LogFiles" directory of SIMATIC.NET by default.

Number of entries in a trace file


The maximum number of lines in the trace file. If this number is exceeded, a new trace file is created.

Maximum number of trace files


To prevent entries in the trace file from being lost when the maximum number of entries is reached, the created file
is renamed and a new file is created with the specified name. By specifying
ifyi the maximum number of trace files,
you define the number of renamed files that will be created. If this
is number
numbe is exceeded, the oldest trace file is
deleted.

Trace depth
By setting the trace depth, you specify the
e degree
deg of detail and thus the set of generated information.

Trace groups
The trace group defines the range of functionalities to be logged.

SITRAIN Page 30 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
Avaliação do Trace

Pesquisando e compreendendo arquivos de rastreamento


completos pode demorar muito tempo.

Exemplo
A leitura de um nó específico falha

Procedimento
Crie um arquivo de rastreamento para o caso de erro
Crie um arquivo de rastreamento para um caso sem erros –
Leitura de um valor diferente / semelhante que não falha
Le

Avaliação
Comparação dos dois arquivos de rastreio – Analisar diferenças

Aplicativo usado para comparar os arquivos de teste: "Beyond


Compare"
http://www.beyondcompare.de

Pesquisando e compreendendo arquivos de rastreamento completos pode demorar muito tempo.

Exemplo
• A leitura de um nó específico falha

Procedimento
• Crie um arquivo de rastreamento para o caso de erro
• Crie um arquivo de rastreamento para um caso sem erros – Leitura de um valor diferente / semelhante que não
falha

Avaliação
• Comparação dos dois arquivos de rastreio – Analisar diferenças
erenças

Aplicativo usado para comparar os arquivos de teste: "Beyond


"B Compare"
http://www.beyondcompare.de

SITRAIN Page 31 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
OPC Scout – Diagnostics view

2 1

A S
A “Diagnostics view” do OPC Scout fornece informações
informaçõe sobre o servidor SIMATIC NET e uma lista das

DR
conexões e parceiros S7 configuradoss para o servidor.
ser

Setting options of the Diagnostics view:


You open the properties by right-clicking the view in the workbook.
This contains the following setting options:
• Update interval: The update interval requested of the server in ms.
• Test timeout interval: Timeout interval for testing of connections whose connection is established with the
option "Active, on demand".
• "Default" button: Customized settings for the width, visibility and arrangement of the individual columns in the
Diagnostics view. Click the "Default" button to load the default values.

1. Click the "Server" button. The "Select server" dialog box opens. The servers contained in the workbook are
listed. Select at least one server and close the dialog with "OK".

2. Click the "Monitoring ON" button.

Note:
The "Monitoring ON" button is not operable until you have performed the indicated steps.

SITRAIN Page 32 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
S7 connection diagnostics (PC station/SIMATIC NET)

O "S7 connection diagnostics" fornece informações sobre o status da conexão das conexões S7
configuradas da PC station.

Você recebe o status e informações sobre o parceiro de conexão e a interface utilizada.

SITRAIN Page 33 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
SIMATIC Assessment Suite – Data Collector (SAS-DC)

A aplicação SAS-DC (anteriormente SIMATIC Diagnostic Tool) permite ao usuário coletar


informações de diagnóstico e sistema de um local e armazená-las como um pacote.

Os dados podem ser obtidos localmente ou pela rede. Ao fazer isso, o aplicativo copia as
informações desejadas do sistema de arquivos do PC de destino.

Além dos dados para o sistema operacional, os dados para os seguintes produtos podem ser
obtidos :
• STEP 7
• WinCC
• PCS 7
• SIMATIC NET
• WinCC flexible
• STARTER/SCOUT
• S7-1500 Software Controller

Os dados coletados são salvos como um arquivo morto em um diretório especificado


anteriormente.

SAS-DC automatically protects the created archives with a password. If you want to access the result, the
password 12345678 must be entered.

Download SAS-DC: https://sie.ag/2yh4yMG

SITRAIN Page 34 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
SIMATIC Assessment Suite – Data Collector (SAS-DC)

O Collector é usado para processar perfis criados anteriormente com o SettingsManager.

Start Collecting inicia o processo de coleta e fornece feedback por meio de uma barra de progresso e o status é
exibido na parte inferior da janela.

Status from Collection pode ser usado para carregar e exibir o status de um arquivo coletado anteriormente
novamente.

SITRAIN Page 35 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics
SIMATIC Assessment Suite – Data Collector (SAS-DC)

Um ou mais perfis podem ser configurados na aba "SettingsManager":

1. Select Task
Uma configuração predefinida pode ser selecionada aqui. Dependendo da seleção, as opções para executar
a tarefa desejada são definidas automaticamente para o item 3.

2. Enter Login Credentials and Profile Settings


Opção de entrada para um ID do usuário ao usar outras contas de usuário ou coletar dados pela rede.

3. Specify Settings (optional)


Especificação de dados que devem ser coletados pelo aplicativo.
ativo. Se uma seleção foi feita no Item 1, as
opções correspondentes foram automaticamente definidas
das aqui.

4. General Settings (optional)


Além das metainformações (por exemplo,
emplo, comentário,
com dados de contato etc.), o local de armazenamento para
os dados coletados pode ser configurado.
rad Se um destino de salvamento explícito não for especificado, o
archive será armazenado em um novo subdiretório do aplicativo.

SITRAIN Page 36 IK-OPCUA1


Digital Industry Academy Troubleshooting and Diagnostics

You might also like