tag:blogger.com,1999:blog-60632567885238266692023-11-16T07:20:32.593-03:00Exata Sistemas de Automação LtdaSua parceira em Automação. Há quase 30 anos apresentando soluções para os mercados de automação industrial, predial e de sistemas de energia. Distribuidor exclusivo dos produtos Kepware, Cogent, Progea, TMW e Videc.Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.comBlogger33125tag:blogger.com,1999:blog-6063256788523826669.post-14856903675153325102017-10-10T14:55:00.000-03:002017-10-10T15:07:18.068-03:00Princípios de usabilidade da interface de software – Parte 1<div class="MsoNormal" style="margin: 0cm 4.75pt 8pt 14.2pt;">
<div class="MsoNormal">
<span style="font-family: inherit;">Considerando como as pessoas pensam e interagem com um produto de software, os princípios de usabilidade são uma referência importante no desenvolvimento e na avaliação de usabilidade do produto. Os princípios de usabilidade apresentados aqui são uma síntese pequena do que pode ser encontrado na literatura sobre este assunto:</span><br />
<ul>
<li>criar um diálogo simples e natural</li>
<li>simplificar a estrutura das tarefas</li>
<li>facilitar o reconhecimento, e não a memória do usuário</li>
<li>fornecer um feedback adequado do status do sistema de forma claramente visível</li>
<li>evitar erros de interação e facilitar a recuperação</li>
<li>ser consistente</li>
<li>falar o idioma do usuário</li>
<li>facilitar a flexibilidade e a eficiência do usuário</li>
<li>fornecer ajuda e manuais</li>
</ul>
<br />
<span style="color: #073763; font-family: inherit;"><b>Criar um diálogo simples e natural</b></span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">O produto do software deve propor ao usuário um modelo de diálogo consistente com a atividade para qual o usuário pretende usar o sistema. Deve ser fácil de entender para criar uma boa interação entre o usuário e o produto.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">O desenvolvimento de um diálogo simples e natural é facilitado principalmente por dois fatores:</span><br />
<ul>
<li>levar sempre em consideração a maneira de trabalhar do usuário, suas características e necessidades;</li>
<li>escolher soluções de interface que levem em conta principalmente as tarefas, reconhecimento, feedback e erros.</li>
</ul>
<span style="font-family: inherit;">Algumas maneiras de respeitar o princípio do diálogo simples e natural são:</span><br />
<ul>
<li>Tome em consideração como o usuário e seu modelo de negócio funcionam:</li>
</ul>
<ol><ol>
<li>Organização dos conteúdos e estrutura do sistema,</li>
<li>Implementação da lógica de interação,</li>
<li>Definição da ordem do menu,</li>
<li>Definição da ordem da apresentação de janelas ou páginas,</li>
<li>Organização do conteúdo e objetos dentro das janelas ou páginas;</li>
</ol>
</ol>
<ul>
<li>Fornecer um bom modelo conceitual do sistema e deixar claro a organização, lógica de interação e outros, para que o usuário possa antecipar os efeitos de suas ações: interagir com um produto sem ter uma imagem clara sobre como fazer as coisas é como andar às cegas, sem saber o que acontecerá e o que esperar de cada ação;</li>
<li>Tornar evidente a informação que é efetivamente relevante para o usuário fazer o trabalho, evitando o uso de informações desnecessárias ou raramente usadas: informações irrelevantes podem distrair a atenção do usuário e a perspectiva da tarefa em questão;</li>
<li>Antecipar, na medida do possível, informações que o usuário encontrará na próxima página ou o que acontecerá como resultado de uma ação.</li>
</ul>
<br />
<span style="font-family: inherit;"><br /></span>
<span style="color: #073763; font-family: inherit;"><b>Simplificar a estrutura das tarefas</b></span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">As tarefas e atividades onde o usuário tem que interagir com o sistema devem ter uma estrutura simples. Elas devem ser projetadas e implementadas no sistema minimizando a necessidade de processamento de informações humanas, mesmo que possa ser bastante tentador para os engenheiros projetar formas mais elaboradas devido à grande variedade de ferramentas de design deixadas à disposição e à imaginação.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Donald Norman sugere quatro abordagens para simplificar tarefas:</span><br />
<ul>
<li>Manter a tarefa inalterada, mas oferecendo subsídios mentais;</li>
<li>Usar a tecnologia para tornar visível o que de outra forma seria invisível;</li>
<li>Automatizar, mantendo a tarefa substancialmente inalterada;</li>
<li>Alterar a natureza da tarefa.</li>
<li>As primeiras três abordagens consideram substancialmente a importância de não alterar a tarefa que o usuário deve fazer.</li>
</ul>
<span style="font-family: inherit;">O primeiro e o segundo caso sugerem que a ajuda externa precisa ser fornecida (que suporte a capacidade cognitiva do usuário sem forçá-los a confiar em sua própria memória) e feedback (que permite ao usuário controlar os componentes invisíveis do sistema de forma a verificar o seu bom funcionamento). Por exemplo, digitar dados na tela basicamente tem a mesma estrutura de tarefa que a escrita em papel. No entanto, o primeiro tem a ajuda de um corretor automático para alertar erros, permitindo ao usuário melhorar sua qualidade de trabalho. O terceiro caso sugere que, para manter as estruturas de tarefas inalteradas, algumas das suas partes (as mais arriscadas e complicadas) devem ser deixadas nas mãos da tecnologia e não do usuário.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Finalmente, quando a tarefa é intrinsecamente complexa para as habilidades necessárias, envolve um redesenho substancial da tarefa: o objetivo permanece, é claro, o mesmo, mas a maneira como esse objetivo é alcançado é totalmente diferente.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><br /></span>
<span style="color: #073763; font-family: inherit;"><b>Facilitar o reconhecimento, e não a memória do usuário</b></span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">O usuário deve ter uma imagem clara do que e como eles devem fazer seu trabalho apenas olhando a interface. Uma vez realizada uma ação, o usuário deve entender claramente o que aconteceu e saber quais são os resultados.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Uma vez que é mais fácil reconhecer e lembrar de coisas ao vê-las diretamente na tela, menos o usuário precisará recorrer a sua memória. A maneira mais simples de tornar a vida mais fácil para o usuário seria, portanto, tornar as coisas aparentemente visíveis para eles através da interface, ou fornecer aos usuários ajuda externa para ajudá-los a lembrar.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Dizer que as coisas devem ser visíveis parece trivial, mas não é! Aqui estão alguns exemplos de desrespeito deste princípio:</span><br />
<ul>
<li>Ser forçado a memorizar certos comandos ou informações (ou usar o guia operacional ou pedir sugestões para colegas e amigos mais experientes);</li>
<li>Não é claro observando um elemento (um campo de edição, um link, um botão, etc.) se ele é selecionável, editável ou não;</li>
<li>Não é claro se a ação solicitada foi realizada pelo sistema;</li>
<li>Não é claro por que a ação solicitada não foi executada pelo sistema;</li>
<li>Navegando pelas páginas, você não entende mais aonde você está e de onde você saiu.</li>
</ul>
<span style="font-family: inherit;">Algumas sugestões para facilitar o reconhecimento:</span><br />
<ul>
<li>explorar o mapeamento natural, isso significa usar a correlação natural entre duas coisas, efeitos, comandos, suas ações e resultados (um exemplo de mapeamento natural seria a manipulação direta de objetos. Ao usar essas técnicas, o usuário não é obrigado a lembrar como usar os objetos ou descrever as ações a serem executadas: simplesmente executando-os diretamente na tela, movendo, por exemplo, um documento da área de trabalho virtual do seu PC para o lixo, como seria no mundo real);</li>
<li>certifique-se de que as ações permitidas na interface são claramente visíveis;</li>
<li>manter o status do sistema evidente em todos os momentos e em cada ação realizada pelo usuário (resultados da ação tomada e contexto em que você está, etc.);</li>
<li>dar um título às páginas, significando adequadamente o tipo de informação exibida ou as ações a serem executadas na janela ou naquela página;</li>
<li>use um idioma e gráficos corretos e significativos para o usuário, de modo a não forçá-lo a interpretações de significado;</li>
<li>use listas de seleção que tenham escolhas e formatos admissíveis fáceis de lembrar;</li>
<li>fornecer visualização de informações sobre o objeto selecionado;</li>
<li>apresentar balão de ajuda nos ícones e símbolos gráficos descrevendo a funcionalidade associada a eles;</li>
<li>ativar ou desativar comandos com base em seu conteúdo operacional para lembrar ao usuário quais ações são obrigatórias ou têm relações sequenciais com outras;</li>
<li>manter a consistência ao organizar conteúdo e objetos dentro de janelas e páginas, para evitar que o usuário tenha que procurar em toda a janela ou página para encontrar o que está procurando.</li>
</ul>
<br />
<span style="font-family: inherit;">Continua...</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Tradução livre parcial do texto "Usability and Guidelines Designing HMI" de empresa Progea. Todos os direitos reservados.</span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;">Platform.NExT™ e Movicon.NExT™ são tecnologias de software totalmente desenvolvidas, produzidas e distribuídas pela Progea. © 2016 – Todos os direitos reservados</span></div>
</div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-61024799940509506302017-08-11T09:25:00.000-03:002017-08-11T09:25:00.145-03:00Plataforma de Software para o IoT Industrial<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">Um fator a ser considerado, e talvez o mais
importante, que requer uma avaliação criteriosa em um projeto de IIoT é a
escolha da plataforma de software para implementar o acesso e gerenciamento dos
dados. O aplicativo que vai executar esta função deve ter sido desenvolvido
autonomamente escrevendo-se código baseado em necessidades desde que se tenha a
competência para fazê-lo e também o tempo e recursos não só para desenvolver o
software como também para gerenciar os aspectos de desenvolvimento e
manutenção.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">De maneira geral, as empresas tendem a focar no seu
negócio e preferem usar plataformas que obedecem a padrões, abertas e
intuitivas no seu uso. Esta é uma escolha estratégica para qualquer negócio que
quer investir seus recursos, reduzindo o custo inicial e depois gerenciando o
retorno do investimento no médio – longo prazo, para desenvolver seus projetos
uma vez que os dados gerenciados são fonte vital para as escolhas de negócios
estratégicas.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">A escolha ideal é uma solução que obedece padrões,
aberta e intuitiva no seu uso que oferece liberdade para usar os protocolos de
IIoT e qualquer outro protocolo, que seja modular e expansível, e que inclua
todas as funções necessárias para adicionar não somente os sistemas de coleta
mas também análise, visualização, alertas e outros.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">Automation Platform.NExT<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">O Automation Platform.NExT é uma plataforma de software de nova geração
desenvolvida em tecnologias modernas e inovadoras. Foi desenvolvida pela
Progea, uma companhia que tem 25 anos de experiência trabalhando com
tecnologias de software aplicadas a automação industrial, especificamente em
plataformas SCADA/IHM. Seu produto mais popular é o Movicon com mais de 100.000
aplicações pelo mundo.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">O Automation Platform.NExT é uma solução de software modular centrada em
um framework .NET desenvolvido especialmente pela Progea para aplicações de
automação baseadas em arquitetura de computadores pessoais, servidores e também
para sistemas embarcados (embedded). A plataforma usa a tecnologia OPC UA para
a transferência de dados entre os diversos módulos clientes e módulos
servidores que compõe a plataforma em um único framework. O uso da tecnologia
aberta OPC UA, para troca de dados entre os diversos módulos da plataforma,
permite integrar módulos clientes e módulos servidores desenvolvidos por
terceiros que suportem esta tecnologia.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
</div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">Em função da tecnologia e da abordagem modular do produto, ele se torna
uma solução ideal para projetos de IIoT, que precisam ser inerentemente abertos
e flexíveis.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc17wa0tWn8DqzA07kw_yIoIRK7eEuPC5T7LgLcCM_QocsZwYw2gXQKy3M3hcMvhzMEGu5A6sfkte0GjPp9CP_XoVzPmITH4N4TUvlZUnKc-M7FUv0Kzwm2_qgPQ8V3jIhKuC-jlUxUEk/s1600/Figura1-Progea.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="529" data-original-width="730" height="231" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjc17wa0tWn8DqzA07kw_yIoIRK7eEuPC5T7LgLcCM_QocsZwYw2gXQKy3M3hcMvhzMEGu5A6sfkte0GjPp9CP_XoVzPmITH4N4TUvlZUnKc-M7FUv0Kzwm2_qgPQ8V3jIhKuC-jlUxUEk/s320/Figura1-Progea.png" width="320" /></a></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<i><span style="font-family: "segoe ui" , sans-serif; font-size: 10.0pt; line-height: 107%;">Este diagrama mostra um exemplo de coleta de dados de vários
dispositivos de campo, conectados por um único protocolo para IIoT. O banco de dados para armazenamento, neste exemplo está na nuvem (Ms SQL Azure)</span></i></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">Servidor de Dados<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">Qualquer projeto de IIoT começa com a coleta de dados.
De modo que temos que ter um servidor com vários protocolos. Com respeito ao
IIoT, o servidor do Platform.NExT incorpora o OPC UA e pode-se conectar com
qualquer dispositivo ou aplicação compatível com OPC UA. Ele tem também, os
drivers para os protocolos PubNub e MQTT e permite implementações de Azure IoT.<br />
Além disso o servidor inclui vários outros drivers para dispositivos
industriais como: Modbus, Siemens S7 TCP, Ethernet/IP, Omron, Mitsubishi,
Profinet, IEC870, IEC850 e vários outros. Esta flexibilidade permite criar
pequenas estações tipo gateway exclusivamente para coleta de dados com estes
protocolos proprietários e então publicar os dados requisitados usando os
protocolos IIoT no servidor da empresa.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">Win10 IoT<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-left: 14.2pt;">
Um dos destaques do Platform.NExT é sua capacidade de rodar em
dispositivos embarcados, como o Raspberry PI com o Win10 IoT, executando
microprojetos de coleta e gerenciamento de dados. Esta opção permite a criação
de uma rede de pequenos dispositivos com e/s digitais e analógicas, executando
lógica e enviando dados através de PubNub ou OPC UA a um servidor principal
Platform.NExT. Esta capacidade aumenta de forma considerável o potencial de uso
da plataforma oferecendo uma solução abrangente e flexível aos projetistas de
sistemas de IIoT.<o:p></o:p></div>
<div class="MsoNormal" style="margin-left: 14.2pt;">
<br /></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span lang="EN-US" style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">Data Gateway<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">É razoável assumir que sistemas de conectividade e
coleta de dados existentes em dispositivos de campo não estejam preparados para
se conectar com soluções IIoT. Se for este o caso, então torna-se necessário o
uso de uma solução de gateway, isto é, um dispositivo que possa se comunicar
usando o protocolo existente e converter os dados e retransmiti-los através de
um protocolo de IIoT, com segurança e confiabilidade. O Servidor de Dados do
Platform.NExT inclui estas funcionalidades podendo funcionar como uma gateway
local comunicando com vários dispositivos em seus protocolos nativos,
convertendo os dados e retransmitindo em um protocolo IIoT. A Gateway de Dados também
pode operar como um Servidor de Dados OPC UA.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">Historiador, Banco de Dados ou
Nuvem<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">O Servidor Platform.NExT inclui um mecanismo poderoso para armazenamento
de dados através do Historiador ou do Data Logger. Assim sendo o Servidor pode
armazenar dados em bancos de dados – normalmente o SQL Server – por padrão.
Entretanto também são suportados o Oracle ou o My SQL, ou em gerenciadores de
banco de dados na nuvem como o SQL for Microsoft Azure.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">O Platform.NExT inclui todas as ferramentas para transferir, coletar e
armazenar os dados no sistema de banco de dados de sua escolha, usando os
critérios de coleta e armazenamento que atendam às necessidades específicas do
projeto.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
<br /></div>
<div class="MsoNormal" style="margin-right: 4.75pt;">
<span style="color: #2e74b5; font-family: "prometo" , sans-serif; font-size: 16.0pt; line-height: 107%;">SCADA, IHM e Análise de Dados<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">Por sua modularidade, o Platform.NExT oferece a possibilidade
de gerenciar qualquer projeto de IIoT do lado Cliente com capacidade e
flexibilidade. O lado Cliente inclui: Interface Homem-Máquina, Análise de
Dados, Apresentação de Dados em Tempo Real e Dados Históricos, em função de sua
extensa biblioteca de símbolos e do sistema gráfico vetorial de nova geração
baseado no WPF (Windows Presentation Foundation) e XAML.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">O cliente pode ser usado localmente, através de rede
ou por acesso via Web para visualizar objetos animados, tabelas dinâmicas,
alertas, tendência de dados, cartas, análise de dados, dashboards e relatórios.
<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 3.0pt; margin-left: 14.2pt; margin-right: 4.8pt; margin-top: 0cm;">
</div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;">Seu projeto de IIoT pode se transformar em uma
verdadeira estação de trabalho para análise de dados, supervisão, MES com o uso
de todos os módulos disponíveis na plataforma, incluindo Movicon.NExT.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB72y5jaQjr451wd18owGzi5zkAngM_gGKYp5FImbnfkkUnoVUDMJ91apgPJLDnGo-sSuAq1d2I2gWlpHEIAwqo6m1-wWaTN2gB7P8mFs_w5Syfv62i4slqLqW8fNo0HBQ-E9DT7pSwVw/s1600/Figura2-Progea.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" data-original-height="610" data-original-width="944" height="206" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgB72y5jaQjr451wd18owGzi5zkAngM_gGKYp5FImbnfkkUnoVUDMJ91apgPJLDnGo-sSuAq1d2I2gWlpHEIAwqo6m1-wWaTN2gB7P8mFs_w5Syfv62i4slqLqW8fNo0HBQ-E9DT7pSwVw/s320/Figura2-Progea.png" width="320" /></a></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<i><span style="font-family: "segoe ui" , sans-serif; font-size: 10.0pt; line-height: 107%;"><br /></span></i></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<i><span style="font-family: "segoe ui" , sans-serif; font-size: 10.0pt; line-height: 107%;">Este diagrama apresenta outro exemplo de coleta de dados de vários
dispositivos de campo, cada um deles neste caso usa um protocolo diferente.
Neste aspecto a Gateway Platform.NexT é a ferramenta ideal para atender um
projeto de IIoT</span></i></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<i><span style="font-family: "segoe ui" , sans-serif; font-size: 10.0pt; line-height: 107%;"><br /></span></i>
Tradução livre parcial do texto "IIoT: Industrial Internet of Things com Platform.NExT™" de empresa Progea. Todos os direitos reservados.<br />
<i><span style="font-family: "segoe ui" , sans-serif; font-size: 10.0pt; line-height: 107%;"><br /></span></i></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-size: x-small;">Platform.NExT™ e Movicon.NExT™ são tecnologias de software totalmente desenvolvidas, produzidas e distribuídas pela Progea. © 2016 – Todos os direitos reservados</span></div>
<div class="MsoNormal" style="margin-bottom: 8.0pt; margin-left: 14.2pt; margin-right: 4.75pt; margin-top: 0cm;">
<span style="font-family: "segoe ui" , sans-serif; mso-ansi-language: PT-BR;"><br /></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-51722562304051544002017-06-29T16:11:00.000-03:002017-06-29T16:11:16.992-03:00Protocolos de comunicação para o IoT IndustrialUm projeto de IoT Industrial está fundamentado na conectividade entre tipos de sistemas e dispositivos diferentes, que podem estar usando tipos de dados distintos e podem estar espalhados entre si por distâncias consideráveis de forma que a internet (rede pública) possa ser a única opção viável de conexão entre eles. A primeira questão a ser feita, é: como estes dispositivos trocaram dados entre si?<br />
É sabido que para dispositivos e sistemas se comunicarem eles precisam de uma infraestrutura de conexão e um protocolo comuns. Isto, de fato, também é verdadeiro para um projeto de IoT Industrial. Todavia a IoT Industrial não tem um padrão de comunicação estabelecido. Hoje em dia existem algumas maneiras de se implementar um projeto de IoT Industrial. Entretanto, quando existem algumas soluções disponíveis, é crucial fazer a escolha correta uma vez que a seleção do protocolo mais adequado depende dos requisitos do projeto, dispositivos de campo e dos dados a serem processados.<br />
<br />
<span style="font-size: small;"><span style="color: #3d85c6;"><b>O protocolo ideal para o IoT Industrial</b></span></span><br />
<br />
Quando se pensa em solução para IoT Industrial não existe um protocolo padrão ou ideal. Existem soluções diferentes, protocolos distintos e soluções personalizadas. Quando se está definindo uma solução é importante levar em conta que o protocolo escolhido seja aberto, padronizado, seguro e flexível considerando que o projeto de IoT Industrial vai se expandir continuamente, os dados a serem coletados mudam e são expandidos em função da evolução dos processos da empresa. De forma que devem ser evitadas soluções fechadas ou proprietárias. A este respeito as tecnologias de comunicação para IoT de maior sucesso incluem a função Descoberta (Discovery), um valor real para a IoT. De fato, será crucial que qualquer “objeto” adicionado em um projeto de IoT venha a ser parte do projeto sem que haja necessidade de editar a configuração do sistema. Esta função permitiria adicionar um dispositivo IoT o qual seja capaz de unir-se a um grupo e ser “reconhecido” pelos outros dispositivos do grupo. A função Descoberta (Discovery) ainda não está disponível nos protocolos, entretanto a especificação OPC UA define suas propriedades, ainda que sua definição não esteja finalizada.<br />
<b><span style="color: #0b5394;"><br /></span></b>
<span style="color: #3d85c6;"><b>OPC UA</b></span><br />
O OPC UA é a tecnologia mais efetiva, um protocolo de automação industrial padronizado e estabelecido, e perfeitamente adequada para combinação entre TO e TI.<br />
A tecnologia OPC UA não consiste simplesmente na troca de dados entre cliente e servidor, ela tem em sua essência os princípios de interoperabilidade e conectividade para dados relativos ao chão de fábrica, que constitui a base dos conceitos da Indústria 4.0. Um dos pilares desta abordagem é a tecnologia multiplataforma que inclui desempenho e segurança de forma que servidores OPC UA podem até ser embarcados diretamente em dispositivos. Mais ainda, a fundação PLC Open fez uma norma complementar ao OPC UA definindo um modelo de objetos para ser incorporado nas linguagens de programação compatíveis com o padrão IEC 61131-1 resultando em um modelo de objetos que pode ser compartilhado com OPC UA. E tem mais, em Abril de 2014 foram adicionadas funcionalidades do OPC UA em Function Blocks (Blocos de Função) IEC 61131-3, de forma que os controladores propriamente ditos podem se tornar parte como unidades inteligentes da comunicação entre Fábrica e TI, melhorando e simplificando o acesso a dados em todos os níveis, tanto no meio do caminho (Sistemas Supervisórios) quanto no seu ponto mais alto (MES/ERP). Por exemplo, numa rede inteligente cada dispositivo ou serviço tem que ser capaz de iniciar a comunicação e responder a solicitações específicas de outros serviços.<br />
Portanto, um dispositivo (servidor OPC UA) pode trocar até estruturas complexas de dados (informação) tanto vertical como horizontalmente, do nível mais baixo ao nível mais alto da pirâmide do TI, localmente ou através da Internet ou nuvem, de forma a habilitar os critérios da Industria 4.0 da IOT (Internet of Things), os quais são pré-requisitos das próximas arquiteturas da nova geração de sistemas integrados.<br />
Por exemplo, em uma linha de produção composta de várias máquinas fornecidas por diferentes fabricantes, estas máquinas podem ter que se comunicar entre si usando uma arquitetura cliente servidor. E não é só isto. Um sistema de mais alto nível ou um serviço podem chamar um método (um supervisório para máquinas, um sistema de gerenciamento MES para uma unidade supervisória ou para as máquinas diretamente) para ativar uma receita de produção, por exemplo, tão eficientemente quanto uma chamada para troca de parâmetros de entrada e saída. Recursos multiplataforma e de segurança integrados diretamente na especificação asseguram o máximo de interoperabilidade e segurança em todos os níveis, tanto local quanto remotamente.<br />
• Pros: Padrão IEC, multiplataforma, seguro, especificação completa incluindo todos os tipos de dados. Também adequado para soluções de baixo custo, simples usando dispositivos micro controlados.<br />
• Contras: Em função da arquitetura abrangente a implementação pode exigir sofisticação.<br />
<br />
<span style="color: #3d85c6;"><b>MQTT</b></span><br />
MQTT (Message Queuing Telemetry Transport) é um protocolo baseado no TCP/IP que usa o modelo publica / assina. Foi projetado para ser aberto, simples, leve e fácil de implementar. Tais características o tornam adequado para a IoT, isto é, podendo ser usado em sistemas com capacidade de transmissão de dados limitada ou recursos de hardware como memória e CPU também limitados. O protocolo foi desenvolvido por dois pesquisadores ingleses em 1999 e recentemente foi certificado como padrão pela OASIS (Organization for the Advancement of Structured information), que declarou que o protocolo MQTT é particularmente adequado para soluções de IoT.<br />
• Prós: simples, aberto, independente, multiplataforma.<br />
• Contras: não muito comum, não é considerado um padrão no domínio da automação. Pouca segurança.<br />
<br />
<span style="color: #3d85c6;"><b>PubNub</b></span><br />
PubNub é uma infraestrutura global em tempo real, projetado exclusivamente para a criação de soluções web, móveis e de IoT. Estabelecida em 2010 como uma empresa privada nos US, PubNub despertou o interesse de diversas corporações de grande porte que financiaram o seu desenvolvimento tornando esta infraestrutura uma das mais eficientes e confiáveis para troca de dados em tempo real entre aplicações Web. A empresa desenvolveu rapidamente uma solução simples de implementar e econômica, e esta solução se mostrou particularmente eficiente.<br />
A ideia que alavancou o PubNub é uma API de um serviço de mensagens tipo publica/assina dentro de sua rede global que consiste em um conjunto de data centers localizados nos principais continentes (América, Ásia e Europa). A infraestrutura serve atualmente cerca de 300 milhões de dispositivos e envia cerca de 750 milhões de mensagens por mês.<br />
A partir do gerenciamento, ou usando o SDK da PubNub qualquer aplicativo ou dispositivo pode publicar ou assinar dados usando esta infraestrutura. O Modelo de Negócios da PubNub é de Infraestrutura como Serviço (IaaS) e o serviço é acessado a partir de assinatura paga.<br />
• Prós: tempo real, rápida, simples, infraestrutura pronta para uso, multiplataforma.<br />
• Contras: infraestrutura proprietária, serviço por assinatura (por limite de dados transferidos). <br />
<br />
<span style="color: #3d85c6;"><b>Azure IoT</b></span><br />
O Azure IoT é a solução oferecida pela Microsoft para o IoT e IIoT. Ela tem as mesmas características de arquitetura do PubNub, porém usa a infraestrutura de nuvem da Microsoft – a plataforma Azure. Por meio desta infraestrutura usando conectores específicos e simples, aplicações e dispositivos podem compartilhar informações. O principal benefício da arquitetura Microsoft é que com ela é possível integrar com outras soluções de TI – como o banco de dados SQL Server para Azure – e muitas outras soluções de Business Inteligence. De forma que, ao usar uma solução de conectividade baseada no Azure IoT, os dados podem ser compartilhados na nuvem usando uma infraestrutura gerenciada pela própria Microsoft, a qual garante sua confiabilidade. Por ser uma solução mais voltada para TI a Microsoft resolveu colaborar com a OPC Foundation. Foi desenvolvido um conector OPC UA para o Azure permitindo conectividade IoT entre a nuvem Microsoft e o mundo da automação industrial onde o padrão OPC UA é bem conhecido e usado.<br />
• Prós: A infraestrutura Microsoft Azure permite o acesso a diversas aplicações relacionadas ao domínio do TI, além de ser multiplataforma e ter uma infraestrutura de nuvem pronta para ser usada.<br />
• Contras: mais apropriada para TI do que para TO, mais complexa que outras soluções, infraestrutura proprietária, serviço baseado no modelo de assinatura.<br />
<br />
<br />
Tradução livre parcial do texto "IIoT: Industrial Internet of Things
com Platform.NExT™" de empresa Progea. Todos os direitos reservados.<br />
<div class="MsoNormal" style="margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: -4.7pt; margin-top: 0cm;">
<span style="font-family: inherit;"><span style="line-height: 107%;"><br /></span></span></div>
<div class="MsoNormal" style="margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: -4.7pt; margin-top: 0cm;">
<span style="font-family: inherit;"><span style="line-height: 107%;"><span style="font-size: x-small;">Platform.NExT™
e Movicon™ são tecnologias de software totalmente desenvolvidas,
produzidas e distribuídas pela Progea. © 2016 – Todos os direitos
reservados</span></span></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-34267978339760759602017-04-07T09:42:00.004-03:002017-04-07T09:47:02.482-03:00Indústria 4.0, IIoT, M2M<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:RelyOnVML/>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]-->Hoje em dia todo mundo fala sobre conectividade. De fato, no mundo moderno da automação, a comunicação é um fator vital para sistemas – não interessa quão distantes ou diferentes – compartilharem dados, o elemento chave para empresas fazerem escolhas rápidas e efetivas para melhorar a eficiência e qualidade, e desta forma criarem uma vantagem no mercado global de hoje em dia. Entretanto, o tópico de comunicação é extremamente variado, complexo e fragmentado. A maior parte das pessoas fala sobre “Industria 4.0”, ou IIoT (Internet das Coisas Industriais), ou M2M (Máquina à Máquina), Telemetria, Big Data e muito mais. Todos estes termos identificam noções similares embora diferentes, e contextos operacionais extremamente fragmentados, derivados de padrões diferentes de hardware, protocolos e plataformas de software. Sem contar com um vocabulário usado pelo marketing na comunicação que pode ser enganador. Com certeza, algumas destas ideias já existem há algum tempo: como a coleta de dados de campo, mesmo de locais remotos, que hoje é usada por empresas mais avançadas. Por que tem tanta falação sobre IoT e Indústria 4.0? E, é possível desenvolver projetos de conectividade eficientes usando a infraestrutura padrão sem investir uma quantidade enorme de recursos?<br /><br />Primeiramente, vamos examinar a terminologia.<br /><br /><b><span style="color: #0b5394;">Indústria 4.0</span></b><br />O termo Indústria 4.0 foi criado em 2011 a partir de uma estratégia, um projeto tecnológico do governo Alemão, que visava promover a transição e a conectividade digitais na indústria de manufatura como um processo estratégico da quarta revolução industrial. Considera-se que a primeira revolução industrial ocorreu na Inglaterra a partir do uso das máquinas a vapor na manufatura. A segunda revolução industrial foi marcada pelo uso da eletricidade e da produção em massa de bens. A terceira revolução industrial viu a introdução de sistemas computadorizados na produção. De forma que a Industria 4.0 não é uma tecnologia nova, outrossim é um plano estratégico com passos e linhas mestres para implementação da tecnologia mais avançada de conectividade de modo a criar o que se conhece como a Fábrica Inteligente (Smart Factory). Uma ideia tão genérica pode incluir várias tecnologias diferentes, por exemplo: Ethernet, Internet, Nuvens, Bancos de Dados e qualquer outro sistema que assegure o fluxo de dados dos sensores aos sistemas de gerenciamento (MES/ERP).<br /><br /><b><span style="color: #0b5394;">M2M</span></b><br />O termo Machine to Machine (M2M), normalmente é definido com a conexão direta entre dois dispositivos – normalmente por meio de um sistema sem fios – destinado a assegurar o gerenciamento direto entre dispositivos locais, cada um desempenhando suas funções independentemente. Os sistemas ponto a ponto são usados como meio de conectividade, onde dados essenciais são transferidos de uma máquina para a outra por meio de um modem ou outro dispositivo sem fio.<br /><br /><b><span style="color: #0b5394;">Internet of Things</span></b><br />O termo “Internet of Things” (IoT) foi inventado no início dos anos 2000 prevendo uma rede global de objetos ligados uns aos outros, usando a Internet para garantir acesso fácil a cada entidade, superando as limitações do M2M e expandindo o seu potencial, de forma que cada dispositivo conectado pode compartilhar dados com o seu grupo de dispositivos ou receber comandos dele. Este tipo de conectividade abriu as portas para enormes possibilidades, com potencial para redefinir a noção de dispositivos inteligentes, tanto para o uso diário (consumidor) como para o uso industrial (negócios). No que concerne à aplicação na indústria (IIoT), cujo uso é mais valioso e estratégico, têm que se levar em conta alguns critérios extras quando comparado a sistemas comuns, tais como segurança e confiabilidade.<br /><br /><br />Tradução livre parcial do texto "IIoT: Industrial Internet of Things com Platform.NExT™" de empresa Progea. Todos os direitos reservados.<br />
<div class="MsoNormal" style="margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: -4.7pt; margin-top: 0cm;">
<span style="font-family: inherit;"><span style="line-height: 107%;"><br /></span></span></div>
<div class="MsoNormal" style="margin-bottom: .0001pt; margin-bottom: 0cm; margin-left: 0cm; margin-right: -4.7pt; margin-top: 0cm;">
<span style="font-family: inherit;"><span style="line-height: 107%;"><span style="font-size: x-small;">Platform.NExT™ e Movicon™ são tecnologias de software totalmente desenvolvidas, produzidas e distribuídas pela Progea. © 2016 – Todos os direitos reservados</span></span></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-28790008545143990842016-10-07T10:25:00.001-03:002016-10-07T10:25:04.703-03:00Protocolo MQTT e a Internet das Coisas<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><br />
Foi desenvolvido pela IBM / Eurotech no final dos anos 1990
para uso em sistemas SCADA (tele supervisão e telecomando). Em novembro 2014,
após 18 meses de trabalho, a Especificação do MQTT v 3.1.1 foi aprovada como um
padrão homologado pela OASIS (Organization for the Advancement of Structured
Information Standards).<br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
MQTT é um protocolo para troca de mensagens, baseado no
modelo publicar – subscrever. Por ser leve é muito adequado para ser usado em
sistemas embarcados (embedded) na comunicação remota M2M (Machine-to-Machine)
usando o Wi-Fi (wireless) como meio.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Pelo fato do cliente que publica estar desacoplado do
cliente que assina, o broker faz a função de desacoplamento, este protocolo é
muito bom para uso em redes pouco confiáveis e com pouca largura de banda.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
O MQTT define dois componentes: o broker MQTT (servidor) e o
cliente MQTT.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Um cliente MQTT pode criar tópicos no broker, publicar e
assinar os tópicos.<br />
O broker armazena os dados dos tópicos e envia estes dados aos clientes MQTT
que os assinam.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
O cliente MQTT pode ter duas funções: publicar dados ou
assinar dados no broker MQTT, definindo ou usando tópicos.</div>
<div class="MsoNormal">
O broker MQTT tem duas funções: receber os dados de um
cliente MQTT e armazená-los nos tópicos; e publicar dados atualizados dos
tópicos nos clientes MQTT que os subscrevem.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
As mensagens MQTT são transmitidas através do TCP/IP, ou
seja, o cliente e o broker fazem uma conexão TCP para que as mensagens possam
ser transmitidas.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Um único broker MQTT pode suportar milhares de clientes
MQTT. Modelo publicar – subscrever permite a entrega de mensagens
de um – para – muitos. </div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
O MQTT permite implementar QoS (qualidade de serviço), os
protocolos de criptografia TLS/SSL (certificado X509), e também suporta
autenticação através de usuário / senha.</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
O plug-in <b>IoT Gateway do KEPServerEX</b> traz um cliente MQTT
com as capacidades de publicar e assinar. Permitindo disponibilizar acesso aos
dados de dispositivos de automação à aplicativos com suporte ao MQTT. Os dados
são formatados usando o padrão JSON. </div>
<div class="MsoNormal">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7KTUUuMYAxnXm5xP_1giCcdNKru4hZxvdtSI7j9PZDkazRAlkx0VEhHPUpbftwdSxXkAb2rXxPw_4Se8w-Iln6rnjN3Qsm5BcFyWYqh1NJBCZXcXZkyqZLAedY_UUpMjUshkcxgh0J3A/s1600/IoT_Gateway.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="256" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7KTUUuMYAxnXm5xP_1giCcdNKru4hZxvdtSI7j9PZDkazRAlkx0VEhHPUpbftwdSxXkAb2rXxPw_4Se8w-Iln6rnjN3Qsm5BcFyWYqh1NJBCZXcXZkyqZLAedY_UUpMjUshkcxgh0J3A/s320/IoT_Gateway.jpg" width="320" /></a></div>
<div class="MsoNormal">
<br /></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-87300101316708527162016-10-06T16:57:00.000-03:002016-10-07T10:28:46.246-03:00Uso de WPF da Microsoft em aplicações para Automação Industrial<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><span style="font-family: inherit;"></span>
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:HyphenationZone>21</w:HyphenationZone>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>PT-BR</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="371">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Tabela normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}
</style>
<![endif]--><span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;">WPF, "Windows Presentation Foundation", é uma
tecnologia da Microsoft para o desenvolvimento de interface de usuário em aplicações
para ambientes desktop e web. O WPF permite ao desenvolvedor criar interfaces
de usuário com grande riqueza visual, com recursos 3D, animações, gráficos
vetoriais, entre outros.</span></span><br />
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;">O WPF é um componente do .NET Framework e usa a linguagem de
marcação XAML (Extensible Application Markup Language) para criar interfaces
com usuário e representar dados. O XAML é baseado no XML, sendo é muito fácil
criar, inicializar e configurar as propriedades de objetos com relações
hierárquicas.</span></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;">Além disso, o WPF oferece um modelo de programação onde há uma
separação clara entre a parte gráfica e a lógica de negócios. Um outro ponto
importante é que o WFP utiliza o DirectX para renderizar elementos gráficos
permitindo tirar proveito de aceleração de hardware.</span></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;">Atualmente a Exata comercializa dois softwares que usam a
tecnologia WPF:</span></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><br /></span></div>
<div class="MsoNormal">
<span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;"><b>PLUTO Live Report</b> - O PLUTO é um software para desenvolvimento
e apresentação de Relatórios e Dashboards para o mercado de Automação
Industrial. O benefício para os usuários é poder criar relatórios com uma
aparência excelente com uma interface de configuração simples.</span></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEwfuW2oPiRgAqaxUTUILcD61nkWBUkNqe6Yn3X9sz5U7VpKSGQu9606UexmSGjO_CGgc8HAJkZ-RoKftgGnNQv_k0eDpuShepWxblPH8Jk_mGJS9t63F9ekcJp-KMfgDsGcSPFIaio6s/s1600/Reports_menor.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="157" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhEwfuW2oPiRgAqaxUTUILcD61nkWBUkNqe6Yn3X9sz5U7VpKSGQu9606UexmSGjO_CGgc8HAJkZ-RoKftgGnNQv_k0eDpuShepWxblPH8Jk_mGJS9t63F9ekcJp-KMfgDsGcSPFIaio6s/s320/Reports_menor.jpg" width="320" /></a></div>
</div>
<span style="font-family: inherit;"></span><br />
<span style="font-family: inherit;"></span><br />
<span style="font-family: inherit;"><br /></span>
<span style="font-family: inherit;"><span style="font-size: 10.0pt; line-height: 107%;"><b>Movicon.NExT™</b> – O Movicon.NExT™
é uma nova geração de software SCADA/IHM que revoluciona a tecnologia de
sistemas SCADA/IHM de uma forma nunca antes imaginada. O Movicon.NExT™ é
baseado na tecnologia de Automation Platform.NExT ™, uma arquitetura de
software desenvolvida para construir as fundações de softwares de automação modernos.
É uma plataforma aberta e escalável baseada em .NET e WPF/XAML. </span></span><br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1kE5I-axz_IT9HQcDSxWAIBax1hQXKDNgSUdukRNPyfKBTg5hddyPEZnd0nG6MfEfRR0ccMGGwcfdR604FNCXNG4gaH-RvoAmwPH3EN4UMPVs-cDRKeYPDBiDndr8Iciu2UItJQxv74w/s1600/screen-next_10.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi1kE5I-axz_IT9HQcDSxWAIBax1hQXKDNgSUdukRNPyfKBTg5hddyPEZnd0nG6MfEfRR0ccMGGwcfdR604FNCXNG4gaH-RvoAmwPH3EN4UMPVs-cDRKeYPDBiDndr8Iciu2UItJQxv74w/s320/screen-next_10.jpg" width="320" /></a></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-10425491677565959512016-05-03T12:05:00.002-03:002016-05-03T12:05:52.006-03:00Aplicação em Java com interface Cliente e/ou Servidor OPC DAVocê precisa desenvolver uma aplicação em Java com interface Cliente e/ou Servidor OPC DA?<br />
<br />
O Java é atualmente a linguagem mais utilizada em todo o mundo. O Java é mais que uma linguagem, é uma plataforma de desenvolvimento e distribuição de aplicações móveis e incorporadas, jogos, conteúdo baseado na Web e softwares corporativos.<br />
<br />
O Cogent DataHub é uma solução de conectividade que suporta múltiplas intefaces como: OPC DA, OPC A&E, DDE, HTML, ODBC, e-mail, SMS e Tunneling com tecnologia própria. Estas interfaces se conectam em tempo real usando uma base de dados em memória.<br />
<br />
De forma a possibilitar a integração de aplicações em Java com DataHub, a Cogent disponibiliza uma API para Java. A API do DataHub para Java permite escrever programas em Java que se conectam ao DataHub através de TCP, ou seja, LAN, WAN ou Internet.<br />
<br />
Desta forma é muito simples incluir, por exemplo, a interface Cliente OPC à sua aplicação em Java. Basta usar os métodos de conexão, leitura e escrita disponibilizados e você terá acesso a todos os dados obtidos pela interface Cliente OPC do DataHub.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkaqi_UN1LKRncUEtTTjD9VbH8G9rKiUyeFLgHTCLu8iOoB_8odL8honsSNtWKvuzCwJ-FzJDpfG1f3JyL04LGN6k1qDUEld7OYZy1EluAncrhHZi0v_hpidn4adYaT-_B6Kb4SRePIdg/s1600/Cogent+DataHub+API+Java.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="91" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjkaqi_UN1LKRncUEtTTjD9VbH8G9rKiUyeFLgHTCLu8iOoB_8odL8honsSNtWKvuzCwJ-FzJDpfG1f3JyL04LGN6k1qDUEld7OYZy1EluAncrhHZi0v_hpidn4adYaT-_B6Kb4SRePIdg/s400/Cogent+DataHub+API+Java.png" width="400" /></a></div>
<br />
<br />
Caso prefira você pode usar C++ ou .NET, pois a Cogent disponibiliza APIs do DataHub para Java, C++ e .NET no Windows e para C++ e .NET em Linux. Essas APIs são fornecidas com exemplos de códigos que mostram como usar o conjunto de métodos para ler e escrever dados no DataHub.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-AWqWXQpoQMfVpu6ramGYXdy2Uk82H1nV752bmjM8ZsXlo0LOkuR4XJ57XsbTr7lnhgU2JeDFePOE-lZevqzMnwpOLkGlyi-JO2HtB1OcrLpii10PNdPy_E5SynKiKVzMDOok0w4WaQ8/s1600/Cogent+DataHub+API.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi-AWqWXQpoQMfVpu6ramGYXdy2Uk82H1nV752bmjM8ZsXlo0LOkuR4XJ57XsbTr7lnhgU2JeDFePOE-lZevqzMnwpOLkGlyi-JO2HtB1OcrLpii10PNdPy_E5SynKiKVzMDOok0w4WaQ8/s400/Cogent+DataHub+API.png" width="400" /></a></div>
<br />
<div>
<br /></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-29320025555606494372016-04-13T14:59:00.002-03:002016-04-13T14:59:55.057-03:00Solução para a Fronteira da IIoT<div class="MsoNormal" style="text-align: justify;">
A fim de integrar perfeitamente
dados industriais na IIoT, é necessária uma nova plataforma de comunicação.
Esta plataforma requer amplo conhecimento do mundo intrincado da TO e no
estado-da-arte e no domínio em rápida evolução da TI.<o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
Dentro da TO, a plataforma deve
entender as várias topologias de rede e os protocolos de dados que serão encontrados.
Ela deve ser capaz de descobrir e identificar automaticamente as Coisa
industriais e os dados que elas contêm, bem como ser capaz de gerenciar o
armazenamento de atualizações de alta frequência.<o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
Dentro da TI, a plataforma deve
ser capaz de transformar os dados coletados e de publicá-los na nuvem através
de padrões da IIoT. Padrões emergentes incluem Asynchronous Messaging Queuing
Protocol (AMQP), Message Queueing Telemetry Transport (MQTT), Constrained
Application Protocol (COAP) e Data Description Services (DDS). Estes padrões
permitem a retransmissão de dados caso eles não cheguem aos seus destinos.<o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
Com a falta de infra-estrutura de
redes de computadores na TO, esta plataforma deve ser incorporável e rodar em
um aparelho autônomo ou um switch ou roteador na borda onde a TI e a TO
convergem.<o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
A sua flexibilidade vai permitir
que os dados industriais sejam coletados ciclicamente ou com base em algum
evento ou condição e sejam publicados na nuvem, independentemente da coleta de
dados. A filtragem de dados deve estar disponível através de análise básicas. Por
último, a configuração pelo usuário deve ser minimizada através da automação da
configuração tanto quanto possível.<o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
Como a indústria continua a
definir a IIoT, os conceitos e concretização de uma solução ideal de IIoT vão continuar
a evoluir.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="background-color: white; color: #222222; font-family: 'trebuchet ms', sans-serif; font-size: 13.2px; font-style: italic; line-height: 17.12px;">Tradução livre do cap</span><span style="background-color: white; color: #222222; font-family: 'trebuchet ms', sans-serif; font-size: 13.2px; font-style: italic; line-height: 17.12px;">ítulo</span><span style="background-color: white; color: #222222; font-family: 'trebuchet ms', sans-serif; font-size: 13.2px; font-style: italic; line-height: 17.12px;"> </span><span style="background-color: white; color: #222222; font-family: 'trebuchet ms', sans-serif; font-size: 13.2px; font-style: italic; line-height: 17.12px;">IIoT Edge Solution </span><span style="background-color: white; color: #222222; font-family: 'trebuchet ms', sans-serif; font-size: 13.2px; font-style: italic; line-height: 17.12px;">do eBook “Industrial Internet of Things and Communications at the Edge ” do CEO da Kepware, Tony Paine</span></div>
<div class="MsoNormal" style="text-align: justify;">
<o:p></o:p></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-54430378165937569512016-03-08T08:54:00.004-03:002016-03-21T14:17:11.529-03:00A Fronteira da IIoT<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:RelyOnVML/>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><br />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:HyphenationZone>21</w:HyphenationZone>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>PT-BR</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="371">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Tabela normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}
</style>
<![endif]-->
<br />
<div class="MsoNormal" style="text-align: justify;">
<b>Alavancando (Potencializando) o
Poder da Computação em Nuvem</b></div>
<div class="MsoNormal" style="text-align: justify;">
</div>
<div class="MsoNormal" style="text-align: justify;">
A fim de atenuar alguns dos
desafios anteriores, as estratégias da IIoT focarão em forçar uma plataforma centralizada
na nuvem. Esta plataforma e seus serviços correspondentes serão administrados
por especialistas em TI familiarizados com o mundo do IP e serão disponibilizados
para qualquer pessoa com a devida credencial e com conexão à Internet. Ao
alavancar (potencializar) o poder da computação em nuvem e seus inúmeros recursos,
irá disponibilizar o armazenamento e o poder de processamento necessários para
gerenciar os zetabytes de dados que serão coletados, analisados e arquivados.
Além disso, a disponibilidade global destas plataformas continua a evidenciar
uma tendência ascendente à medida que se tornarem mais resistentes à crescente
demanda e expectativas do nosso mundo conectado.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<b>Comunicação com Dispositivos na
Fronteira</b></div>
<div class="MsoNormal" style="text-align: justify;">
</div>
<div class="MsoNormal" style="text-align: justify;">
A verdadeira fonte dos dados
colocados em nuvem está nas Coisas industriais que ficam na borda da rede. A borda
faz a ligação entre a TI e a Tecnologia Operacional (TO), onde os ricos
recursos disponíveis na nuvem não estão diretamente disponíveis. A TO engloba
redes industriais que têm suas próprias nuances e apresentam desafios
adicionais.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<b>Conectando Meios de Comunicação
Distintas</b></div>
<div class="MsoNormal" style="text-align: justify;">
Muitas vezes, as tecnologias de
redes industriais não usam a Ethernet como sua camada de comunicação física.
Dependendo do ambiente e das Coisas que compõem um sistema, qualquer coisa
desde RS232 / 485 a modens a conexões proprietárias podem ser encontradas. Da
mesma forma, os protocolos de dados que são usados nestes meios de comunicação dificilmente
são derivados do IP. Consequentemente, uma miscelânea de redes industriais foi
criada sem levar em consideração a possibilidade futura de ser conectada à
Internet.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<b>Utilizando Métodos de
Identificação Sem Padrão</b></div>
<div class="MsoNormal" style="text-align: justify;">
Ao contrário dos endereços IP no
mundo da TI, muitas Coisas industriais têm seus próprios esquemas de
endereçamento para identificação única na rede. Estes esquemas podem variar de
acordo com fornecedor e tipo, e pode ou não ter um mecanismo próprio de
descoberta. O conhecimento de um especialista em integração é necessário para
interligar as Coisas de uma maneira a fazer com que elas funcionem como um
todo.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<b>Determinando um Modelo de
Solicitação</b></div>
<div class="MsoNormal" style="text-align: justify;">
As Coisas industriais,
historicamente, seguem o modelo de solicitação / resposta. Se uma determinada
Coisa está interessada em um dado contido em outra Coisa, ele vai fazer a devida
conexão, solicitar o dado e esperar por uma resposta contendo o resultado.
Embora este modelo de solicitação seja bom para as Coisas dentro do mesmo
limite digital das TOs, requisitos de segurança e escalabilidade vão fazer com
que este modelo seja inaceitável para o mundo externo da TI tentando acessar os
dados da TOs. Em vez disso, a IIoT prefere um modelo Push, onde o fluxo dos
dados industriais seja de saída para uma plataforma em nuvem.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<b>Permitindo o Armazenamento de
Dados de Curto Prazo</b></div>
<div class="MsoNormal" style="text-align: justify;">
No contexto de uma rede única
industrial, podemos encontrar milhares de Coisas que juntas podem gerar
milhares de pontos de dados. Embora isso pareça um pequeno conjunto de dados,
os requisitos de tempo real encontrados em TO vão exigir que esses pontos sejam
coletados a taxas inferiores a um milissegundo para detecção de mudanças nos
dados. No passado, esses dados de alta frequência seriam simplesmente analisados,
atuados e descartados. À medida que avançamos para disponibilizar estes dados
para IIoT, vamos precisar de um armazenamento de curto prazo para garantir que o
dado possa ser enviado para outras partes quando elas estiverem disponíveis.</div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif; font-style: italic; line-height: 17.12px;">Tradução
livre do cap<span style="font-family: "trebuchet ms" , sans-serif;">ítulo</span> <span style="font-family: "trebuchet ms" , sans-serif;">Borda da IIoT </span>do eBook “Industrial Internet of Things and
Communications at the Edge ” do CEO da Kepware, Tony Paine</span> </div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-72827326359354394962016-01-26T09:38:00.002-02:002016-03-08T09:01:21.167-03:00Desafios da IIoT<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<b><span style="font-family: "trebuchet ms" , sans-serif;">Identificando as Coisas dentro da Internet</span></b></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;">Para que as Coisas possam ser capazes de comunicar umas com as outras, elas
precisam de uma identificação única dentro da Internet. Historicamente, isto foi
conseguido através da atribuição de um endereço Internet Protocol (IP). Como a indústria
preve que trilhões de Coisas serão conectadas, o foco foi para a adoção do
padrão IPv6, que define um endereço de 128 bits capaz de identificar unicamente
340 undecilhão (340 x 10<sup>36</sup>) de itens endereçáveis (em comparação com
apenas 4 bilhões de itens endereçáveis usando o padrão IPv4). Embora esta faixa
seja mais do que suficiente para atender as necessidades da IIoT, será difícil,
se não for impossível, gerenciar isto de forma eficaz na escala global da
Internet. Normalmente gerenciado por Autoridades Reguladoras de Atribuição de
Nomes e Endereços com a ajuda de Administradores de Rede, isto será um impeditivo
a medida que as Coisas são adicionadas a uma taxa sem precedentes.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><b>Descobrindo Coisas e os Dados que Elas Possuem</b><o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;">Uma vez que uma Coisa possa ser identificada, o desafio seguinte é como outras
partes interessadas irão descobrir que ela existe e que dados que ela possui.
Naturalmente, uma Coisa deve ser capaz de restringir descoberta de todos ou de alguns
de seus dados com base em requisitos de segurança. Equilibrar a facilidade de
descoberta com restrições rígidas de segurança será fundamental para o sucesso
da IIoT e deve ser alcaçada sem um PhD em segurança cibernética.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><b>Gerenciando quantidades maciças de dados</b><o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;">Estas trilhões de Coisas vão produzir muito mais do que trilhões de pontos
de dados (atualmente indústria mede isso em zettabytes ou 10<sup>21</sup>
bytes), os quais terão de ser coletados, analisados e possivelmente arquivados.
Trafegar esta quantidade de dados através da Internet irá consumir novos níveis
de largura de banda, o que poderia resultar na degradação do serviço, bem como en
custos mais elevados de operadoras, prestadores de serviços e, finalmente,
usuários finais da Internet. Além disso, arquivar esses dados para análise
futura exigirá enormes quantidades de armazenamento de dados e uma nova geração
de soluções escaláveis para melhorar os pontos de interesse em um tempo hábil.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><b>Lidando com Interrupções de Conectividade</b><o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span lang="PT" style="font-family: "trebuchet ms" , sans-serif;">As Coisas que compõem a IIoT, bem como os meios de comunicação que as
conectam, não estarão disponíveis 100 por cento do tempo. Enquanto que algumas
paradas podem ser programadas, haverá mudanças físicas ou ambientais que
resultarão em paradas intermitentes ou de longo prazo. A gravidade dependerá se
a perda de dados é inaceitável ou se a criticidade de variações nos dados
precisa ser conhecida em tempo real.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif;"><br /></span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif;"><b>Integrando a Infra-estrutura
Existente em Novas Estratégias da IIoT</b><o:p></o:p></span></div>
<span style="font-family: "trebuchet ms" , sans-serif;"><br /></span>
<br />
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif;">Coisas industriais fizeram dados
acessíveis em redes privadas por décadas através da implementação de protocolos
abertos ou proprietários. Para alcançar o sucesso nas áreas de otimização de
rede e integração de terceiros, complexidades como segurança foram largamente
ignoradas. Sendo que o ciclo de vida típico de Coisas industriais excede vinte anos,
haverá uma expectativa de integrar o existente em novas estratégias da IIoT.
Abrindo essas redes privadas e os dados que elas contêm para a Internet vai
exigir avaliações de segurança detalhadas para minimizar o risco de exploração.</span></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "trebuchet ms" , sans-serif;"><o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<br />
<span style="font-family: "trebuchet ms" , sans-serif; font-style: italic; line-height: 17.12px;">Tradução livre d<span style="font-family: "trebuchet ms" , sans-serif;">o cap<span style="font-family: "trebuchet ms" , sans-serif;">ítulo</span></span> <span style="font-family: "trebuchet ms" , sans-serif;">Desafios da IIoT</span> do eBook “Industrial Internet of Things and Communications at the Edge ” do CEO da Kepware, Tony Paine</span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-73315267481565094162015-11-26T11:47:00.001-02:002015-11-26T11:47:23.672-02:00Introdução a IIoT (Industrial Internet of Things)<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
<o:RelyOnVML/>
<o:AllowPNG/>
</o:OfficeDocumentSettings>
</xml><![endif]--><br />
<!--[if gte mso 9]><xml>
<w:WordDocument>
<w:View>Normal</w:View>
<w:Zoom>0</w:Zoom>
<w:TrackMoves/>
<w:TrackFormatting/>
<w:HyphenationZone>21</w:HyphenationZone>
<w:PunctuationKerning/>
<w:ValidateAgainstSchemas/>
<w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
<w:IgnoreMixedContent>false</w:IgnoreMixedContent>
<w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
<w:DoNotPromoteQF/>
<w:LidThemeOther>PT-BR</w:LidThemeOther>
<w:LidThemeAsian>X-NONE</w:LidThemeAsian>
<w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
<w:Compatibility>
<w:BreakWrappedTables/>
<w:SnapToGridInCell/>
<w:WrapTextWithPunct/>
<w:UseAsianBreakRules/>
<w:DontGrowAutofit/>
<w:SplitPgBreakAndParaMark/>
<w:EnableOpenTypeKerning/>
<w:DontFlipMirrorIndents/>
<w:OverrideTableStyleHps/>
</w:Compatibility>
<m:mathPr>
<m:mathFont m:val="Cambria Math"/>
<m:brkBin m:val="before"/>
<m:brkBinSub m:val="--"/>
<m:smallFrac m:val="off"/>
<m:dispDef/>
<m:lMargin m:val="0"/>
<m:rMargin m:val="0"/>
<m:defJc m:val="centerGroup"/>
<m:wrapIndent m:val="1440"/>
<m:intLim m:val="subSup"/>
<m:naryLim m:val="undOvr"/>
</m:mathPr></w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="false"
DefSemiHidden="false" DefQFormat="false" DefPriority="99"
LatentStyleCount="371">
<w:LsdException Locked="false" Priority="0" QFormat="true" Name="Normal"/>
<w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 1"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 2"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 3"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 4"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 5"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 6"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 7"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 8"/>
<w:LsdException Locked="false" Priority="9" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="heading 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index 9"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 1"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 2"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 3"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 4"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 5"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 6"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 7"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 8"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" Name="toc 9"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="header"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footer"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="index heading"/>
<w:LsdException Locked="false" Priority="35" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="caption"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of figures"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="envelope return"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="footnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="line number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="page number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote reference"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="endnote text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="table of authorities"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="macro"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="toa heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Bullet 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Number 5"/>
<w:LsdException Locked="false" Priority="10" QFormat="true" Name="Title"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Closing"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Signature"/>
<w:LsdException Locked="false" Priority="1" SemiHidden="true"
UnhideWhenUsed="true" Name="Default Paragraph Font"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="List Continue 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Message Header"/>
<w:LsdException Locked="false" Priority="11" QFormat="true" Name="Subtitle"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Salutation"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Date"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text First Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Note Heading"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Body Text Indent 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Block Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Hyperlink"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="FollowedHyperlink"/>
<w:LsdException Locked="false" Priority="22" QFormat="true" Name="Strong"/>
<w:LsdException Locked="false" Priority="20" QFormat="true" Name="Emphasis"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Document Map"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Plain Text"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="E-mail Signature"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Top of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Bottom of Form"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal (Web)"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Acronym"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Address"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Cite"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Code"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Definition"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Keyboard"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Preformatted"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Sample"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Typewriter"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="HTML Variable"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Normal Table"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="annotation subject"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="No List"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Outline List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Simple 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Classic 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Colorful 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Columns 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Grid 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 4"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 5"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 6"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 7"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table List 8"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table 3D effects 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Contemporary"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Elegant"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Professional"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Subtle 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 1"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 2"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Web 3"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Balloon Text"/>
<w:LsdException Locked="false" Priority="39" Name="Table Grid"/>
<w:LsdException Locked="false" SemiHidden="true" UnhideWhenUsed="true"
Name="Table Theme"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Placeholder Text"/>
<w:LsdException Locked="false" Priority="1" QFormat="true" Name="No Spacing"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading"/>
<w:LsdException Locked="false" Priority="61" Name="Light List"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 1"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 1"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 1"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 1"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 1"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 1"/>
<w:LsdException Locked="false" SemiHidden="true" Name="Revision"/>
<w:LsdException Locked="false" Priority="34" QFormat="true"
Name="List Paragraph"/>
<w:LsdException Locked="false" Priority="29" QFormat="true" Name="Quote"/>
<w:LsdException Locked="false" Priority="30" QFormat="true"
Name="Intense Quote"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 1"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 1"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 1"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 1"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 1"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 1"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 1"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 1"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 2"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 2"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 2"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 2"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 2"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 2"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 2"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 2"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 2"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 2"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 2"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 2"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 2"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 2"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 3"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 3"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 3"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 3"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 3"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 3"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 3"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 3"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 3"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 3"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 3"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 3"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 3"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 3"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 4"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 4"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 4"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 4"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 4"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 4"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 4"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 4"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 4"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 4"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 4"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 4"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 4"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 4"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 5"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 5"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 5"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 5"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 5"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 5"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 5"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 5"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 5"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 5"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 5"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 5"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 5"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 5"/>
<w:LsdException Locked="false" Priority="60" Name="Light Shading Accent 6"/>
<w:LsdException Locked="false" Priority="61" Name="Light List Accent 6"/>
<w:LsdException Locked="false" Priority="62" Name="Light Grid Accent 6"/>
<w:LsdException Locked="false" Priority="63" Name="Medium Shading 1 Accent 6"/>
<w:LsdException Locked="false" Priority="64" Name="Medium Shading 2 Accent 6"/>
<w:LsdException Locked="false" Priority="65" Name="Medium List 1 Accent 6"/>
<w:LsdException Locked="false" Priority="66" Name="Medium List 2 Accent 6"/>
<w:LsdException Locked="false" Priority="67" Name="Medium Grid 1 Accent 6"/>
<w:LsdException Locked="false" Priority="68" Name="Medium Grid 2 Accent 6"/>
<w:LsdException Locked="false" Priority="69" Name="Medium Grid 3 Accent 6"/>
<w:LsdException Locked="false" Priority="70" Name="Dark List Accent 6"/>
<w:LsdException Locked="false" Priority="71" Name="Colorful Shading Accent 6"/>
<w:LsdException Locked="false" Priority="72" Name="Colorful List Accent 6"/>
<w:LsdException Locked="false" Priority="73" Name="Colorful Grid Accent 6"/>
<w:LsdException Locked="false" Priority="19" QFormat="true"
Name="Subtle Emphasis"/>
<w:LsdException Locked="false" Priority="21" QFormat="true"
Name="Intense Emphasis"/>
<w:LsdException Locked="false" Priority="31" QFormat="true"
Name="Subtle Reference"/>
<w:LsdException Locked="false" Priority="32" QFormat="true"
Name="Intense Reference"/>
<w:LsdException Locked="false" Priority="33" QFormat="true" Name="Book Title"/>
<w:LsdException Locked="false" Priority="37" SemiHidden="true"
UnhideWhenUsed="true" Name="Bibliography"/>
<w:LsdException Locked="false" Priority="39" SemiHidden="true"
UnhideWhenUsed="true" QFormat="true" Name="TOC Heading"/>
<w:LsdException Locked="false" Priority="41" Name="Plain Table 1"/>
<w:LsdException Locked="false" Priority="42" Name="Plain Table 2"/>
<w:LsdException Locked="false" Priority="43" Name="Plain Table 3"/>
<w:LsdException Locked="false" Priority="44" Name="Plain Table 4"/>
<w:LsdException Locked="false" Priority="45" Name="Plain Table 5"/>
<w:LsdException Locked="false" Priority="40" Name="Grid Table Light"/>
<w:LsdException Locked="false" Priority="46" Name="Grid Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="Grid Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="Grid Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="Grid Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="Grid Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="Grid Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="Grid Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="Grid Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="Grid Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="Grid Table 7 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="46" Name="List Table 1 Light"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark"/>
<w:LsdException Locked="false" Priority="51" Name="List Table 6 Colorful"/>
<w:LsdException Locked="false" Priority="52" Name="List Table 7 Colorful"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 1"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 1"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 1"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 1"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 1"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 1"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 2"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 2"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 2"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 2"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 2"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 2"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 3"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 3"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 3"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 3"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 3"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 3"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 4"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 4"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 4"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 4"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 4"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 4"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 5"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 5"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 5"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 5"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 5"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 5"/>
<w:LsdException Locked="false" Priority="46"
Name="List Table 1 Light Accent 6"/>
<w:LsdException Locked="false" Priority="47" Name="List Table 2 Accent 6"/>
<w:LsdException Locked="false" Priority="48" Name="List Table 3 Accent 6"/>
<w:LsdException Locked="false" Priority="49" Name="List Table 4 Accent 6"/>
<w:LsdException Locked="false" Priority="50" Name="List Table 5 Dark Accent 6"/>
<w:LsdException Locked="false" Priority="51"
Name="List Table 6 Colorful Accent 6"/>
<w:LsdException Locked="false" Priority="52"
Name="List Table 7 Colorful Accent 6"/>
</w:LatentStyles>
</xml><![endif]--><!--[if gte mso 10]>
<style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Tabela normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:8.0pt;
mso-para-margin-left:0cm;
line-height:107%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-fareast-language:EN-US;}
</style>
<![endif]-->
<br />
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;">A promessa de conectar tudo dentro de um ambiente industrial para obter visibilidade
completa das operações e permitir que sejam feitas as melhores decisões em
tempo real - com ou sem intervenção humana - irá transformar a forma como fabricamos
produtos nos próximos anos. A premissa para esta próxima evolução industrial é
a Internet das Coisas Industrial (IIoT).</span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<span style="font-family: "Trebuchet MS",sans-serif;">
</span><div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;">A IIoT visa habilitar a Internet em todos componentes de hardware e
software que compõem um sistema de automação (as "Coisas"). Isto irá
permitir uma automação mais inteligente onde as “Coisas” poderão compartilhar informações,
aprender sobre seu ambiente e se auto ajustar para alcançar os melhores
desempenhos e os menores tempos de parada. A equipe responsável pelas operações
do sistema será capaz para avaliar e manipular todos os aspectos remotamente sem
a necessidade de ter especialistas dedicados no local.</span></span></div>
<span style="font-family: "Trebuchet MS",sans-serif;">
</span><div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;">Estes benefícios dependem da resolução de alguns desafios - vários dos
quais a indústria vem resolvendo há anos. Em um processo de automação
industrial existem componentes mecânicos, digitais e humanos. A qualquer instante,
uma destas partes pode ter informações valiosas para outra parte. Ao decidir e
aderir às tecnologias que conectam esses componentes, a Internet das Coisas já
existia dentro de ambientes industriais há algum tempo - apenas em uma escala
muito menor e sob nomes diferentes (como SCADA, M2M, Manutenção Preditiva e Otimização
de Processos).</span></span></div>
<span style="font-family: "Trebuchet MS",sans-serif;">
</span><div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;">Hoje existem várias mudanças que afetam a escala e a velocidade da IIoT.
Novos fornecedores estão entrando no mercado, buscando consolidar dados em
informações úteis, unificar soluções tradicionais e preencher a lacuna entre os
domínios operacionais públicos e privados. Além disso, a nossa sociedade está
cada vez mais dependente da Internet e tem mais do que nunca ferramentas conectadas
disponíveis. O custo da tecnologia não é mais proibitivo: nós podemos conectar qualquer
“Coisa” em rede usando equipamentos com tecnologia de baixo custo, armazenamento
e liberando dados que antes eram indisponíveis. Por fim, a próxima geração de
engenheiros são alunos crescendo com tecnologia, que é rica, fácil de usar e está
em toda parte - criando uma expectativa de que os sistemas de controle
existentes sejam compostos de tecnologia que conecta e interage com pouco
esforço.</span></span></div>
<span style="font-family: "Trebuchet MS",sans-serif;">
</span><div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;">Ao nível corporativo, a conscientização do que acontece em várias plantas
fornecerá uma visão crítica ao planejamento estratégico competitivo, bem como a
oportunidade de integração superando as tradicionais barreiras das empresas alavancando
a prestação de serviços<span style="font-size: small;"> por terceiros.</span></span></span></div>
<span style="font-size: small;"><span style="font-family: "Trebuchet MS",sans-serif;">
</span></span><div class="MsoNormal" style="text-align: justify;">
<span style="font-family: "Trebuchet MS",sans-serif;"><span lang="PT" style="mso-ansi-language: PT;"><span style="font-size: small;">Ao buscar construir a IIoT, o maior desafio da indústria será habilitar a internet
nas “Coisas” que estão na extremidade da rede. Em toda a indústria, esta área
contém trilhões de “Coisas” que contêm um ou vários pontos de dados que precisam
ser analisados e combinados em informações. Lamentavelmente, as “Coisas” nas
extremidades da rede s</span>ão as mais distantes da Tecnologia da Informação (TI), a
qual nos acostumamos a usar sempre que existe a necessidade de conectividade a
internet.</span></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<span style="font-family: "Trebuchet MS",sans-serif;">
<span style="font-size: small;"><i><span lang="EN-US" style="line-height: 107%;">Tradução livre da Introdução do eBook “Industrial
Internet of Things and Communications at the Edge ” do CEO da Kepware, Tony
Paine</span></i></span></span>Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-21449568820896665942015-08-05T14:55:00.000-03:002015-08-05T17:09:48.847-03:00Resolvendo problemas de conectividade em subestações<span style="font-family: "Trebuchet MS",sans-serif;">Sua
subestação tem relês com o protocolo IEC 61850 e o supervisório / SCADA
no seu Centro de Controle trabalha com o driver DNP3. </span><br />
<span style="font-family: "Trebuchet MS",sans-serif;">Você precisa
implantar um supervisório na subestação, porém os seus dispositivos de
subestação trabalham com o protocolo DNP3 e o supervisório só tem o
driver cliente OPC.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;">Como resolver estes problemas de conectividade? O SCADA Data Gateway (SDG) operando como uma aplicação do tipo conversor de protocolo é a solução.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">O
SCADA Data Gateway (SDG) é um aplicativo desenvolvido para o ambiente
Windows e pode ser usado para desenvolver aplicação do tipo Conversor de Protocolos, Servidor OPC, Concentrador de Dados, entre outras.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">O
SDG é usado para fazer a interface entre dispositivos existentes em
estações de geração, subestações, linhas de transmissão e sistemas de
distribuição de energia elétrica e centros de controle, IHMs locais e
remotas e outros dispositivos de controle e transmissão de dados.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">Ele
suporta componentes mestre/cliente e escravo/servidor dos seguintes
protocolos: DNP3, IEC 60870-5-101, IEC 60870-5-103(somente mestre), IEC
60870-5-104, Modbus RTU e TCP, IEC 61850, IEC 60870-6 (TASE.2/ICCP).
Também suporta o padrão OPC incluindo: cliente/servidor OPC Data Access
(DA), Alarms & Events (A&E) e OPC XML DA.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;">E, por fim também
suporta o padrão ODBC incluindo um cliente ODBC, que permite desenvolver
interface com tabelas em bancos de dados para armazenamento e
recuperação de dados do sistema elétrico.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">O SDG é a ferramenta
ideal para interconexão de seus sistemas com o ONS (Operador Nacional do
Sistema) permitindo implementar uma aplicação com todos os requisitos
estabelecidos no sub-módulo 2.7, incluindo o agrupamento de pontos exigido neste sub-módulo.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">Voltemos as questões iniciais:</span><br />
<br />
<i><span style="font-family: "Trebuchet MS",sans-serif;">Sua
subestação tem relês com o protocolo IEC 61850 e o supervisório / SCADA
no seu Centro de Controle trabalha com o driver DNP3.</span></i><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><span style="font-family: "Trebuchet MS",sans-serif;">A
licença SCADA Data Gateway (SDG) deve estar configurada com</span> um driver
cliente 61850 e um driver DNP3 escravo. No SDG o driver cliente 61850 deve ser
configurado para ler os dados dos relês e o driver DNP3 escravo deve ser
configurado para disponibilizar os dados para o centro de Controle. Em seguida deve ser feito o mapeamento dos pontos do 61850 em pontos do DNP3 e a
aplicação estará pronta para testes e comissionamento.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<i><span style="font-family: "Trebuchet MS",sans-serif;">Você
precisa implantar um supervisório na subestação, porém os seus
dispositivos de subestação trabalham com o protocolo DNP3 e o
supervisório só tem o driver cliente OPC.</span></i><br />
<i><span style="font-family: "Trebuchet MS",sans-serif;">Como resolver este problema de conectividade?</span></i><br />
<span style="font-family: "Trebuchet MS",sans-serif;">A
licença SCADA Data Gateway (SDG) deve estar configurada com um servidor
OPC DA e um driver DNP3 mestre. O SDG vai operar como um servidor OPC
DA para o supervisório, convertendo os pontos recebidos do driver DNP3
mestre em itens OPC DA do servidor OPC. Nesta aplicação não é necessário
fazer um mapeamento dos pontos entre o driver e o servidor OPC, porque o
SDG faz automaticamente este mapeamento.</span><br />
<span style="font-family: "Trebuchet MS",sans-serif;"><br /></span>
<span style="font-family: "Trebuchet MS",sans-serif;">Pelos protocolos que
disponibiliza, e a facilidade de mapear pontos de um protocolo mestre em
pontos de um protocolo escravo, o SDG é a ferramenta ideal para
aplicações do tipo conversão de protocolo. O SDG tem também um editor de equações que permite manipular os pontos recebidos criando lógicas e cálculos com estes pontos.</span>Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-32464397800432551102015-06-12T11:48:00.001-03:002015-06-12T11:48:19.650-03:00Troca de dados através de GPRS<span style="font-family: MiloSerifOT-Text; font-size: x-small;"><span style="font-family: MiloSerifOT-Text; font-size: x-small;"><div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">Para aplicações que requerem troca de dados entre sistemas remotos, distribuídos geograficamente, o serviço de comunicação móvel GPRS (General Packet Radio Service) é uma solução acessível, segura e eficiente. Este tipo de transferência de dados opera em uma conexão sempre ativa e a cobrança é feita de acordo com a quantidade de pacotes transmitidos.</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;"></span> </div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">Foi desenvolvida uma plataforma de comunicação de dados em função deste tipo de transferência de dados e serviços associados, que se adapta perfeitamente a esta forma de comunicação, oferecendo máxima segurança e conveniência.</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;"></span> </div>
<span style="font-size: x-small;"><span style="font-size: x-small;"><div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">Com a plataforma ODP (Open Data Port) o usuário é capaz de comunicar com vários CLPs, dispositivos de automação e medição, usando as tecnologias GPRS, DSL e Ethernet. A transferência de dados ocorre online ou os dados podem ser fornecidos com carimbo de tempo (valores históricos).</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;"></span> </div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">O ODP fornece uma nova perspectiva para o gerenciamento de dados aberto, seguro e transparente, garantindo</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">o monitoramento dos custos e das conexões. Os recursos especiais incluem: capacidade de conectar a dispositivos de diferentes fabricantes – mesmo em arquiteturas híbridas – e configuração amigável.</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">
</span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">A plataforma usa a filosofia de projeto “top-down”, isto é, todas as funções principais são gerenciadas pelo Centro de Controle. O objetivo é assegurar uma monitoração ótima da comunicação e dos custos, bem como a otimização dos serviços. </span></div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;"></span> </div>
<div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif; font-size: small;">Como uma solução neutra o OPD pode ser aplicado a projetos de tele controle padrão (ambiental e sistemas de potência) e em áreas de aquisição de dados de energia, engenharia de trânsito, automação predial e sistemas de vigilância, entre outros.</span></div>
</span><div style="text-align: justify;">
<span style="font-family: "Trebuchet MS", sans-serif;"></span> </div>
</span><div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjolpT-412EIQ8SEj2dSXwrgFXWvBfGxnj5duHkwYNy0_9tnOT28U-XwJURJkQZ9zZWx_NShIWiUJ8YZ4B-xXrpSl6ptpPEE-PlBuqkNJqnUEPIBcQkwVCdTCT2A-OKqFK4_Tl39A1N6hU/s1600/ODP.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="157" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjolpT-412EIQ8SEj2dSXwrgFXWvBfGxnj5duHkwYNy0_9tnOT28U-XwJURJkQZ9zZWx_NShIWiUJ8YZ4B-xXrpSl6ptpPEE-PlBuqkNJqnUEPIBcQkwVCdTCT2A-OKqFK4_Tl39A1N6hU/s400/ODP.png" width="400" /></a></div>
<div align="LEFT">
</div>
</span><br /></span><br />Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-51355130334299921132015-04-08T16:07:00.001-03:002015-04-08T16:09:07.971-03:00A importância dos Historiadores (ou PIMS)<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Os Historiadores de Dados do Processo
ou PIMS (Plant Information Management Systems) são soluções que permitem coletar
dados de diversas fontes (sistemas de controle, CLPs, outros softwares, ...) e
armazenar estes dados em um banco de dados temporal, para a análise posterior
de forma a permitir o melhor conhecimento do processo.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Os historiadores são projetados para
terem capacidade no armazenamento e velocidade na recuperação dos dados, e
normalmente conseguem processar milhões de transações por segundo. Este tipo de
desempenho é importante para processos com variáveis que mudam seus valores
diversas vezes por segundo.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Os historiadores registram todas as
alterações de valor de um ponto, armazenando valor, qualidade, data e horário
da alteração, mesmo quando os valores mudam rapidamente. Utilizando algoritmos
de armazenagem altamente eficientes, o conjunto completo de dados pode ser
armazenado por longos períodos de tempo. A capacidade dos historiadores de
gerenciar para um grande volume de dados é útil para detectar tendências sutis
que podem aparecer apenas após um longo período de meses ou anos.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Uma grande vantagem dos historiadores
é a sua capacidade para processar as consultas com base no tempo. Por exemplo,
talvez seja necessário verificar o desvio padrão de um ponto que muda, em
média, 25 vezes por segundo, em janelas de 10 segundos, nos dois últimos
minutos. Um bom historiador irá fornecer uma maneira fácil de apresentar tal consulta,
e retornará os resultados rapidamente, utilizando poucos recursos do sistema. Consultas
pré-construídas normalmente permitem selecionar qualquer período de tempo,
desde de alguns segundos até semanas ou mais, e recuperar médias, correlações
de tempo, regressões, desvios-padrão, e assim por diante. Os historiadores são
capazes de gerenciar consultas rápidas e contínuas para o conjunto de dados permitindo
ao usuário avançar e retroceder no tempo rapidamente.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Os bons historiadores disponibilizam
ferramentas de geração de relatórios integradas, que permitem criar rapidamente
dos relatórios, mesmo complexos, reduzindo significativamente o tempo
necessário para desenvolvimento. Além disso, devem permitir compartilhar as
informações através da web.<o:p></o:p></span></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="background: white; line-height: 13.85pt; margin-bottom: 3.0pt; text-align: justify;">
<span style="color: #222222; font-family: "Trebuchet MS",sans-serif; font-size: 10.0pt; mso-bidi-font-family: Arial; mso-fareast-font-family: "Times New Roman"; mso-fareast-language: PT-BR;">Os historiadores permitem às empresas
coletar, armazenar e analisar grandes volumes de dados dos processos, possibilitando
a melhoria da qualidade, produtividade, lucratividade e segurança. Além disso,
é possível reduzir os custos associados à manutenção e ao cumprimento de normas
legais (regulamentação), bem com agilizar o tempo de resposta da operação.<o:p></o:p></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-8568606453663794042014-10-01T10:18:00.001-03:002014-10-07T10:32:44.011-03:00Disponibilizando dados de TI para TA e TA para TI<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Precisando disponibilizar dados de TI para automação? Precisa apresentar no seu supervisório os dados dos dispositivos de rede? O KEPServerEX com o driver SNMP pode ser a solução ideal.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O Driver para o Protocolo SNMP funciona em conjunto com o servidor OPC KEPServerEX, para proporcionar a troca de dados entre Aplicativos Cliente OPC e dispositivos de rede Ethernet gerenciados ou não gerenciados. Este driver permite executar o monitoramento e análise de dispositivos de rede tais como: hubs, roteadores, switches, computadores / servidores, no-breaks e outros dispositivos gerenciados ou não. Os profissionais de automação agora podem incorporar de forma confiável o status destes dispositivos em seus sistemas de automação. </span></div>
<div style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Agora, se você está precisando disponibilizar dados de aplicativos de automação industrial para TI, o KEPServerEX com o plug-in Agente SNMP pode ser a solução ideal.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O Agente SNMP da Kepware para o KEPServerEX disponibiliza para profissionais de TI, de forma fácil, acesso a sistemas e dispositivos de automação. O Agente SNMP do KEPServerEX é uma única aplicação com mais de 140 drivers de comunicação que permite que a maior parte dos sistemas de gerenciamento de rede (NMS) se comuniquem com dispositivos e sistemas de automação.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O Agente SNMP permite que o profissional de TI para monitore os dispositivos conectados à rede para verificar, evitar e corrigir falhas e eventos inesperados. Para melhorar a confiabilidade e o desempenho das redes de automação industrial a capacidade de monitorar e gerenciar esses dispositivos e sistemas é fundamental.</span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-8468149131412565782014-10-01T10:13:00.001-03:002014-10-03T09:00:14.269-03:00Notificação e-mail e SMS<div style="text-align: justify;">
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O Cogent DataHub pode ser configurado para enviar emails e
mensagens de texto SMS. Você pode usar este recurso, por exemplo, para enviar
relatórios de fim de turno com dados atualizados ou para notificar operadores
de condições de alarme. As mensagens são definidas pelo cliente e podem
incluir o valor de variáveis do DataHub, incluindo dados de servidores OPC,
banco de dados ODBC ou planilhas Excel. As mensagens podem ser enviadas
periodicamente, em uma determinada hora ou na ocorrência de um evento. Você pode
criar facilmente mensagens de texto simples ou criar emails elaborados usando
formatação HTML.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Uma
madeireira no Canadá, recentemente, usou o Cogent Datahub para enviar mensagens
de texto, enviadas por e-mail ou SMS, com alertas a funcionários para notificar
a ocorrência de anormalidades na planta. O Cogent Datahub lê dados de um
servidor OPC e quando uma condição de alarme é detectada, é composta uma
mensagem de texto com os valores atualizados das variáveis críticas. Em seguida
a mensagem de texto é enviada como e-mail para os supervisores de turno, e é
enviada como SMS ao celular da pessoa de manutenção responsável.</span></div>
</div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqWdzzOKaV5ghVNcsC_3SuJhyphenhyphenpgD2pOIm2nOsBd9RRo-d6Dd3X_lYOZLijugcH6r0lk_wO3MynLi_GQn_yllnfJ7_r2BBHr9xsFzL5XUPrhgBVZVTNXc2mQ4CcuPPTBf5s4uq8Ld8cA9k/s1600/e-mail+e+SMS.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhqWdzzOKaV5ghVNcsC_3SuJhyphenhyphenpgD2pOIm2nOsBd9RRo-d6Dd3X_lYOZLijugcH6r0lk_wO3MynLi_GQn_yllnfJ7_r2BBHr9xsFzL5XUPrhgBVZVTNXc2mQ4CcuPPTBf5s4uq8Ld8cA9k/s1600/e-mail+e+SMS.jpg" height="128" width="320" /></a></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-10580991934585691452014-07-31T13:04:00.000-03:002014-07-31T13:05:01.998-03:00Ferramenta de Diagnóstico OPC<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Algumas vezes podem ocorrer problemas na comunicação com o
Servidor OPC que precisam de maior depuração. Para estas situações a Kepware
disponibiliza ferramentas de diagnóstico no <b>KEPServerEX</b>.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Uma desta ferramentas é o <b>Diagnóstico do OPC</b> que fornece
uma visualização, em tempo real e histórico, dos eventos que ocorrem entre o Cliente
OPC e o Servidor OPC. <o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Um evento é uma chamada que um cliente faz ao servidor ou um
retorno de chamada que o servidor faz a um cliente. Os eventos e detalhes capturados por este utilitário são específicos
das especificações OPC Data Access 1.0, 2.0 e 3.0. <o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<br />
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O <b>Diagnóstico do OPC</b> é apresentado em uma janela
separada da janela de configuração principal do servidor, o que permite que ela
seja escondida enquanto o diagnóstico está sendo capturado. O primeiro passo
para usar o <b>Diagnóstico OPC</b> é ter
certeza que o diagnóstico foi habilitado nas propriedades do projeto. Para
apresentar a janela do <b>Diagnóstico OPC</b>,
basta selecionar no configurador do KEPServerEX a opção <b>View>OPC
Diagnostics</b>.</span><o:p></o:p></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-39452617450636543682014-06-03T09:00:00.003-03:002014-06-03T09:02:54.742-03:00Ferramenta para Geração de Relatórios<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A informação é um dos fatores
determinantes no sucesso das empresas. Ela auxilia a tomada de decisões e a
definição de estratégias, que precisam ser rápidas e corretas, de forma a
aumentar a produtividade e a competitividade atendendo as demandas do mercado. <o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">As empresas sabem que as
informações importantes sobre seus processos produtivos estão nos sistemas que
controlam a produção. Sendo assim, cada vez mais é importante disponibilizar
estas informações de forma estruturada e organizada. É fundamental extrair de
seus sistemas de controle relatórios sobre o processo e a produção, que
possibilitem uma análise rápida e eficiente.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A base de um bom relatório é o
conjunto de dados disponíveis que precisam ser confiáveis e exatos. Um sistema
SCADA eficiente deverá coletar as informações dos dispositivos de controle,
armazenar estas informações em um repositório confiável e disponibilizar uma
ferramenta de geração de relatórios flexível e fácil.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O Movicon™ 11 inclui uma
ferramenta extremamente poderosa de geração de relatórios totalmente integrada
chamada Report Designer. Com ele, é possível criar relatórios usando dados
armazenados pelo próprio Movicon em banco de dados relacional, sem ter que
comprar nenhum software adicional.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O relatório pode executar
automaticamente resumos, como totais, contagens, médias, entre outros, em
grupos de dados, sem a necessidade de programação. Além disso, os relatórios
podem ser impressos, exportados (PDF, Excel, CSV, entre outros) e enviados por
e-mail.</span><br />
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj5PZNTMcppgz6WIS4KB33BDzb3Xbylc8rTDjBMlYHFeRZRbOSpsPLfubDpePudMYUpeAoskco2l7ppwIex38-2JEIgTjkFT6XTjam-DT7lpXGFdtF4RbTxlokt_KsbIQSmHUhyphenhyphenXOT9g8/s1600/relat%C3%B3rios.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgj5PZNTMcppgz6WIS4KB33BDzb3Xbylc8rTDjBMlYHFeRZRbOSpsPLfubDpePudMYUpeAoskco2l7ppwIex38-2JEIgTjkFT6XTjam-DT7lpXGFdtF4RbTxlokt_KsbIQSmHUhyphenhyphenXOT9g8/s1600/relat%C3%B3rios.png" height="259" width="320" /></a></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-85075505404821051812014-06-03T08:46:00.003-03:002014-06-03T08:49:25.284-03:00Dados de Produção no Excel<div class="MsoNormal" style="text-align: left;">
<span style="text-align: justify;"><span style="font-family: Trebuchet MS, sans-serif;">Colete dados de várias fontes,
locais ou remotas, arraste e solte no Excel para montar relatórios com dados
atualizados em tempo real. O Cogent DataHub faz atualização contínua dos dados
arrastados para a planilha de Excel, de forma que você tem a informação sempre
atualizada. Salve a planilha e a próxima vez que você abri-la os dados serão
atualizados automaticamente. Conheça o caso da Mirror Controls international
(MCi).</span></span></div>
<div class="MsoNormal" style="text-align: left;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<o:p><span style="font-family: Trebuchet MS, sans-serif;"></span></o:p></div>
<div class="separator" style="clear: both; text-align: center;">
<span style="font-family: Trebuchet MS, sans-serif;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOLofqiaKjrs8y5FJ2gNgnJPoWCQHLbjj3tXfR-1i2b3YilivG9POKel57p7NSsxSj8f0-N3cFRFu7U97R-c2VFAIvFU1w0VwVr5wDrG3DCAoQdRA2idNlP6MMg6fMBMRKXtn3akfAMUI/s1600/dados+de+produ%C3%A7%C3%A3o.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjOLofqiaKjrs8y5FJ2gNgnJPoWCQHLbjj3tXfR-1i2b3YilivG9POKel57p7NSsxSj8f0-N3cFRFu7U97R-c2VFAIvFU1w0VwVr5wDrG3DCAoQdRA2idNlP6MMg6fMBMRKXtn3akfAMUI/s1600/dados+de+produ%C3%A7%C3%A3o.jpg" height="85" width="320" /></a></span></div>
<br />
<span style="font-family: Trebuchet MS, sans-serif;"></span><br />
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<span style="font-family: Trebuchet MS, sans-serif;">
</span><br />
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A Mirror Controls international
(MCi) projeta, desenvolve e fabrica dispositivos de ajuste de espelho elétrico
para carros. Com vendas superiores a 40 milhões de unidades por ano, a fábrica
da MCI, localizada em Manorhamilton na Irlanda, fornece para as grandes
empresas automotivas europeias, como BMW, Volkswagen, Jaguar, Rolls Royce, e
Ford. <o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A equipe de engenharia da planta
de Manorhamilton desenvolveu um sistema para coleta e visualização de dados de
produção. Os dados são coletados do CLP através de um Servidor OPC e são
transferidos para uma planilha de Excel sofisticada. Esta planilha de Excel
compila os dados e apresenta gráficos de produção por hora, o tempo de parada e
qualidade do produto.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O sistema é muito útil, mas tinha
um problema persistente no plug-in do Excel que os obrigava a reiniciar os computadores
periodicamente. Depois de muito esforço em tentar contornar o defeito do
plug-in, a equipe finalmente decidiu buscar uma outra solução.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Foi quando encontraram o Cogent
DataHub, que parecia ser a solução ideal para troca de dados com o Excel. Eles
logo perceberam que o Cogent DataHub não só poderia resolver seu problema, mas que
iria melhorar o sistema de outras formas também. <o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Para substituir o plug-in do
Excel, bastou configurar o Cliente OPC do Cogent DataHub para ler os dados do
Servidor OPC e depois arrastar os pontos para a planilha de Excel.<o:p></o:p></span></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">"Veja como funciona.", informou
o Sr. McDonagh da equipe da MCi. "O Cogent DataHub alimenta os dados em
uma coluna de células na planilha 'RAW_DATA'. Em seguida, uma macro do Excel é disparada
a cada hora, fazendo com que os valores das células sejam movidos uma coluna
para a direita. Após 24 horas, os dados começam a rolar de hora em hora. Como
os contadores no CLP não são reiniciados, uma planilha separada 'CALC_DATA'
calcula a diferença entre cada coluna de hora e, assim, determina o valor real da
contagem a ser apresentado. Todas as outras planilhas são de manipulação dos
dados para serem apresentados em gráficos, tabelas, etc."</span><o:p></o:p></div>
<div class="MsoNormal" style="text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBwrj_OATK-yv7HFnzSyUFcnj2LTMP3xRDZCbIwhyW_C_lEHbsgdKAfCW6y21NSkEAWa4V2gw_JziHPmZCh7x22nFKiEEUo4e3XOCm4HDUlTPP9i1f4kQZ4YiK0sIYGlDfGekMO6aN58k/s1600/dados+de+produ%C3%A7%C3%A3o+2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBwrj_OATK-yv7HFnzSyUFcnj2LTMP3xRDZCbIwhyW_C_lEHbsgdKAfCW6y21NSkEAWa4V2gw_JziHPmZCh7x22nFKiEEUo4e3XOCm4HDUlTPP9i1f4kQZ4YiK0sIYGlDfGekMO6aN58k/s1600/dados+de+produ%C3%A7%C3%A3o+2.png" height="235" width="320" /></a></div>
<br />
<br />
<div style="text-align: justify;">
<br /></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-1944674772348722132014-04-08T10:38:00.004-03:002014-04-09T10:54:23.603-03:00Como ler dados EFM de um computador de vazão?<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><b><u>O que são dados EFM?</u></b></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">O computador de vazão recebe os
dados de medidores de vazão e cromatógrafos. E, através de algoritmos
padronizados, usando os dados de vazão fornecidos pelo medidor, e outras variáveis
tais como pressão estática, temperatura e constantes do medidor; ele calcula a
vazão corrigida.</span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Estes dados são armazenados no
computador de vazão em dois arquivos: um arquivo horário (vinte e quatro
amostras por dia) e um arquivo diário (normalmente 35 amostras por mês).<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Além destes dois arquivos, os
computadores de vazão criam um terceiro arquivo: o arquivo de alarmes e
eventos.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Estes três arquivos formam o
conjunto de dados EFM que queremos ler dos computadores de vazão.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><b><u>Para que servem os dados EFM?</u></b></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">Os dados EFM servem para:
controle da transferência de custódia (quantidade de produto transferida do fornecedor
ao consumidor); definir a qualidade do produto transferido através dos dados da
cromatografia (quantidade de energia); para auditoria e para faturamento.</span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><b><u>Desafio:</u></b></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">O maior desafio é como extrair
estes dados do computador de vazão para um computador, na administração ou no
centro de controle, em um formato tal que eles possam ser usados em programas
de monitoração, controle de qualidade, auditoria e faturamento.</span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<br /></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><b><u>Solução:</u></b></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<b style="font-family: 'Trebuchet MS', sans-serif;"><span style="color: #0099ff;">Suite EFM da Kepware</span></b><span style="color: #0099ff; font-family: 'Trebuchet MS', sans-serif;">.</span><br />
<span style="color: #0099ff; font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A <b><span style="color: #0099ff;">Suite EFM</span></b> é composta pelos <b><span style="color: #0099ff;">EFM Exporters</span></b>
e pelos <b><span style="color: #0099ff;">Drivers
EFM</span></b>. Com ela é possível extrair os dados de computadores de vazão e transferi-los
para um computador, em formato adequado para uso por outros programas já
citados.<o:p></o:p></span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">Na </span><b style="font-family: 'Trebuchet MS', sans-serif;"><span style="color: #0099ff;">Suíte EFM</span></b><span style="font-family: 'Trebuchet MS', sans-serif;"> são oferecidos </span><b style="font-family: 'Trebuchet MS', sans-serif;"><span style="color: #0099ff;">drivers EFM</span></b><span style="font-family: 'Trebuchet MS', sans-serif;">
que permitem extrair dados de computadores de vazão da linha FloBoss da
Emerson, TotalFlow da ABB, XARTU da Eagle, e produtos Omni entre outros.</span></div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
</div>
<div class="MsoNormal" style="margin-right: 7pt; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Com os <b><span style="color: #0099ff;">EFM Exporters</span></b> você pode exportar
os dados EFM lidos dos computadores de vazão para os programas FlowCAL e Quorum
PGas, criar arquivos no formato CSV ou exportar os dados para uma tabela de
banco de dados (SQL Server, Oracle, MySQL e outros) usando o padrão ODBC.</span><o:p></o:p><br />
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span>
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span>
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLRSDK8ZxABYayqzQU0OheGHNOAUKwV07CTXJHzUyAV79Isb6FcK3xeIYfIKx4CU2V1Cbniznk1cvUY2mXf3aHvNvwIScWIgW44C5tKXchmdW7KZBqd41-URIkdRjdZZLv1kbLte5-sn4/s1600/EFM.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjLRSDK8ZxABYayqzQU0OheGHNOAUKwV07CTXJHzUyAV79Isb6FcK3xeIYfIKx4CU2V1Cbniznk1cvUY2mXf3aHvNvwIScWIgW44C5tKXchmdW7KZBqd41-URIkdRjdZZLv1kbLte5-sn4/s1600/EFM.png" height="320" width="307" /></a></div>
<div class="MsoNormal" style="margin-right: 4cm; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-62797538083668699502014-02-07T09:24:00.000-02:002014-02-07T11:20:41.998-02:00Conectividade com os mais diversos aplicativos<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O KEPServerEX dispõe de diversas interfaces para se conectar com inúmeros softwares disponíveis no mercado. Através destas interfaces o KEPServerEX disponibiliza, por meio de seus drivers de comunicação, dados existentes na memória dos equipamentos de automação para os mais diversos aplicativos.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A função do KEPServerEX, como plataforma de comunicação, é disponibilizar dados existentes na memória de equipamentos de automação para os mais diversos softwares aplicativos existentes no mercado. Para acessar os dados na memória de equipamentos de automação o KEPServerEX usa seus drivers de comunicação. Para cada equipamento ou família de equipamento a Kepware disponibiliza um driver de comunicação diferente (são mais de 130 drivers). Para trocar dados com aplicativos de software o KEPServerEX disponibiliza várias interfaces, conforme listado abaixo.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Data Access (DA) Version 1.0a</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Data Access (DA) Version 2.0</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Data Access (DA) Version 2.05a</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Data Access (DA) Version 3.0</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Alarms and Events (AE) Version 1.10</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- OPC Unified Architecture (UA) Version 1.01</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- FastDDE e SuiteLink para InTouch da Wonderware</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- Interface NIO para iFix (ou Fix Proficy)</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- DDE Format: CF_Text e AdvancedDDE</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* Interface OPC Data Access (DA) *</span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: Trebuchet MS, sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta interface é adequada para transferir valores em tempo real entre o KEPServerEX e o software aplicativo que tenha a interface Cliente OPC DA. Em outras palavras, por solicitação do software aplicativo o KEPServerEX, através do driver de comunicação, adquire valores de medição (temperaturas, pressões, corrente, tensão, contagens e etc.) e valores de estado (aberto/fechado, ligado/desligado, emcima/embaixo, contraído/expandido e etc.) diretamente de pontos de memória de equipamentos de automação e transfere estes valores para variáveis (tags) para o software aplicativo periodicamente. Também, por solicitação do software aplicativo o KEPServerEX, através do driver de comunicação, escreve parâmetros de ajuste (temperaturas, pressões, corrente, tensão, contagens e etc.) ou comandos (abrir/fechar, ligar/desligar, subir/descer, contrair/expandir e etc.) diretamente em pontos da memória dos equipamentos de automação.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* OPC Alarms and Events (AE) * </span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: 'Trebuchet MS', sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta interface é adequada para transferir notificação de alarmes e eventos entre o KEPServerEX e o software aplicativo que tenha a interface Cliente OPC AE. O KEPServerEX, através do driver de comunicação, adquire valores diretamente de pontos de memória de equipamentos de automação e verifica se estes valores atendem alguma das situações de alarme ou evento definida pelo usuário. Caso atenda, transfere a notificação o software aplicativo.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* OPC Unified Architecture (UA) *</span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: 'Trebuchet MS', sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta interface é adequada para transferir valores em tempo real entre o KEPServerEX e o software aplicativo que tenha a interface Cliente OPC UA. Ela é uma evolução da interface OPC DA. E da mesma forma que com a Interface OPC Data Access (DA), por solicitação do software aplicativo o KEPServerEX, através do driver de comunicação, adquire valores diretamente de pontos de memória de equipamentos de automação e transfere estes valores para variáveis (tags) para o software aplicativo periodicamente. Também, por solicitação do software aplicativo o KEPServerEX, através do driver de comunicação, escreve diretamente em pontos da memória dos equipamentos de automação.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O OPC UA oferece um método de segurança para a conexão remota entre cliente e servidor OPC sem o uso do DCOM da Microsoft. Ele permite a conexão segura através de firewall e conexões VPN.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* FastDDE e SuiteLink para InTouch da Wonderware *</span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: 'Trebuchet MS', sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta é a interface adequada para fazer com que os drivers de comunicação do KEPServerEX operem como drivers nativos do InTouch. Usando esta interface é possível configurar os drivers de comunicação do KEPServerEX como se eles fossem drivers do Intouch. Com isto o usuário pode usufruir o desempenho e a robustez dos drivers Kepware sem abrir mão no InTouch.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Para que o InTouch reconheça os drivers do KEPServerEX como drivers nativos do InTouch basta instalar os dois softwares no mesmo computador.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* Interface NIO for iFix (ou Fix Proficy) *</span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: 'Trebuchet MS', sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta é a interface adequada para fazer com que os drivers de comunicação do KEPServerEX operem como drivers nativos do iFix. Usando esta interface é possível configurar os drivers de comunicação do KEPServerEX como se eles fossem drivers do Intouch. Com isto o usuário pode usufruir o desempenho e a robustez dos drivers Kepware sem abrir mão no iFix.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Para que o iFix reconheça os drivers do KEPServerEX como drivers nativos do iFix basta instalar os dois softwares no mesmo computador.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">* DDE Format: CF_Text e AdvancedDDE *</span></div>
<div style="text-align: justify;">
<span style="color: #9fc5e8; font-family: 'Trebuchet MS', sans-serif;">____________________________________</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta interface é adequada para transferir valores em tempo real entre o KEPServerEX e planilhas de EXCEL (da Microsoft). Também pode ser usada com softwares aplicativos que tenham interface DDE (softwares mais antigos). O KEPServerEX e o EXCEL tem que estar instalados no mesmo computador e a interface DDE do KEPServerEX tem que estar habilitada.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">-Usos-</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">1 - Criar relatórios em EXCEL com dados de tempo real lidos pelo KEPServerEX, através de seus drivers de comunicação, de pontos de memória de equipamentos de automação.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">2 - Usar os dados em tempo real fornecidos pelo KEPServerEX para criar gráficos no EXCEL e acompanhar o comportamento de variáveis através de cartas.</span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-64412688327781055442013-09-05T13:19:00.001-03:002013-09-05T13:21:04.665-03:00IEC 61850<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Você já esteve as voltas com o tal de 61850 (meia um
oitocentos e cinquenta)?<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<br /></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Muita gente já esteve, e ao se deparar com o 61850
tiveram uma série de perguntas.<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<br /></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">“O que é este 61850?”<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">“Como é que eu vou ‘ligar’ estes relês com 61850 ao meu
supervisório?”<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">“Meu gerente disse que está ampliando a subestação e vem
tudo com o 61850! O meu supervisório não tem este driver. Como eu faço?”<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<br /></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Primeiro, o 61850 é um protocolo de comunicação desenvolvido
pelo comitê técnico 57 (TC57) da International Electrotechnical Commission
(IEC), e se tornou uma norma internacional. <o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O IEC é uma associação de padronização na qual
desenvolvedores, fabricantes de equipamentos e usuários, em cooperação e
através de consenso, desenvolvem normas e padronização de tecnologias elétricas
e eletrônicas para uso e aplicação pela comunidade.<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Assim que ficou pronta, fabricantes de equipamentos e
desenvolvedores de softwares foram implementando o 61850 em seus produtos. A
aceitação por parte dos usuários foi rápida em virtude dos benefícios gerados
no emprego do novo padrão.<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<br /></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O sucesso do protocolo IEC 61850 junto aos usuários
deve-se principalmente à:<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- padronização de nomes para as variáveis (não são usados
endereços neste protocolo);<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- o dispositivo fornece a lista de tags (não é necessário
digitar uma lista de tags);<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- facilidade de integrar com os supervisório e outros
softwares;<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">- facilidade e rapidez na colocação em operação.<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<br /></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A Exata vem ajudando seus clientes na implantação de
sistemas baseados em IEC 61850 desde 2009, e tem larga experiência na aplicação
desta tecnologia.<o:p></o:p></span></div>
<div class="MsoPlainText" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">São mais de 100 servidores OPC DA com driver cliente IEC
61850 MMS implantados e operando em projetos de todos os portes.<o:p></o:p></span><br />
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span>
<span style="font-family: Trebuchet MS, sans-serif;">Se você tem dúvidas na aplicação do protocolo IEC 61850, fale conosco!</span></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-84458750202928711322013-08-13T10:29:00.002-03:002013-08-13T10:45:53.019-03:00Conexão entre chão de fábrica e sistemas MES e ERP<div style="text-align: left;">
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">Autor: Maria Alice Duarte, Exata Sistemas de Automação Ltda. </span></div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O ambiente da automação industrial e o ambiente de produção estão cada vez mais complexos. Eles usam </span><span style="font-family: 'Trebuchet MS', sans-serif;">diferentes tipos de equipamentos juntamente com diversos aplicativos de software - cada um com uma </span><span style="font-family: 'Trebuchet MS', sans-serif;">finalidade diferente. Sendo que tudo tem que trabalhar em conjunto para atingir os objetivos de produção. </span><span style="font-family: 'Trebuchet MS', sans-serif;">Os dados gerados por esses sistemas são cada vez mais importantes para as empresas. </span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">É no chão de fábrica que nasce a informação. Os dados são produzidos por equipamentos como: Sistemas </span><span style="font-family: 'Trebuchet MS', sans-serif;">de Controle Distribuído (SDCD), Controladores Lógicos Programáveis (CLP), Controladores Programáveis </span><span style="font-family: 'Trebuchet MS', sans-serif;">para Automação (PAC), dispositivos de Controle Numérico Computadorizado (CNC), ou algum outro tipo de </span><span style="font-family: 'Trebuchet MS', sans-serif;">dispositivo, sensor ou sistema. Estes equipamentos estão normalmente controlados e monitorados por </span><span style="font-family: 'Trebuchet MS', sans-serif;">Interface Homem Máquina (HMI) e/ou por aplicativos de Supervisão, Controle e Aquisição de Dados </span><span style="font-family: 'Trebuchet MS', sans-serif;">(SCADA). Os dados estão no contexto de operação do processo.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6IaA5uOAVnnGLOETsim0kfeGgxJ6l1LkL0ZFYQs2MKqZFaoMnDu9i8C7nJ73HfS1Yzx3ghogJuoiZ204VoBiqNd2F6ZV32g_bYq6vnGDSt9wXE1R73St_vDE7mEwon0CKR3wmMU__Z9Y/s1600/Conexao_MES_ERP.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj6IaA5uOAVnnGLOETsim0kfeGgxJ6l1LkL0ZFYQs2MKqZFaoMnDu9i8C7nJ73HfS1Yzx3ghogJuoiZ204VoBiqNd2F6ZV32g_bYq6vnGDSt9wXE1R73St_vDE7mEwon0CKR3wmMU__Z9Y/s320/Conexao_MES_ERP.jpg" width="273" /></a><span style="font-family: 'Trebuchet MS', sans-serif;">A</span><span style="font-family: 'Trebuchet MS', sans-serif;">cima do chão de fábrica, encontram-se os aplicativos </span><span style="font-family: 'Trebuchet MS', sans-serif;">conhecidos como Manufacturing Execution Systems (MES). Esses aplicativos existem para ajudar na gestão das operaçõesde produção, incluindo Programação e Otimização, Processamento de Pedidos, Gerenciamento de batelada, Controle Avançado de Processo e Business Intelligence. </span><span style="font-family: 'Trebuchet MS', sans-serif;">Os dados são contextualizados para este tipo de </span><span style="font-family: 'Trebuchet MS', sans-serif;">aplicativo.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">No nível mais alto de uma organização, encontram-se os </span><span style="font-family: 'Trebuchet MS', sans-serif;">aplicativos de gestão empresarial, chamados Enterprise </span><span style="font-family: 'Trebuchet MS', sans-serif;">Resource Planning (ERP). Estes aplicativos integram todos os </span><span style="font-family: Trebuchet MS, sans-serif;">dados e processos de uma organização, possibilitando a </span><span style="font-family: 'Trebuchet MS', sans-serif;">automação e armazenamento de todas as informações de </span><span style="font-family: 'Trebuchet MS', sans-serif;">negócios. Incluem: Gerenciamento da Cadeia de Suprimento </span><span style="font-family: Trebuchet MS, sans-serif;">(SCM - Supply Chain Management), Planejamento dos </span><span style="font-family: 'Trebuchet MS', sans-serif;">Recursos de Manufatura (MRP - Manufacturing Resource </span><span style="font-family: 'Trebuchet MS', sans-serif;">Planning), Finanças (FRM – Financial Resource Management), </span><span style="font-family: Trebuchet MS, sans-serif;">Gestão de Relacionamento com o Cliente (CRM - Customer </span><span style="font-family: 'Trebuchet MS', sans-serif;">Relationship Management) e Gerenciamento de Ativos (Asset Management). </span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Cada nível desempenha um papel específico no funcionamento de toda a empresa, e embora separados, </span><span style="font-family: 'Trebuchet MS', sans-serif;">precisam compartilhar maioria das informações.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">No chão de fábrica a maior parte dos equipamentos e aplicativos são capazes de trocar informações entre si, </span><span style="font-family: 'Trebuchet MS', sans-serif;">principalmente graças ao uso da tecnologia OPC. O OPC Clássico foi concebido especificamente para o nível </span><span style="font-family: 'Trebuchet MS', sans-serif;">de automação industrial / produção com o objetivo de interligar os aplicativos de software rodando em </span><span style="font-family: 'Trebuchet MS', sans-serif;">computadores baseados no Windows com os equipamentos de chão de fábrica. </span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">E os aplicativos de negócios, MES e ERP? O que está sendo feito para permitir a comunicação entre chão de </span><span style="font-family: 'Trebuchet MS', sans-serif;">fábrica, MES e ERP? Existe um padrão que a indústria e os fornecedores de software de negócios adotaram </span><span style="font-family: 'Trebuchet MS', sans-serif;">ou podem adotar? </span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A integração entre os aplicativos de negócios e o ambiente de produção ainda é um processo ad-hoc, ou </span><span style="font-family: 'Trebuchet MS', sans-serif;">seja, é uma solução destinada a atender a uma necessidade específica ou resolver um problema, não sendo </span><span style="font-family: 'Trebuchet MS', sans-serif;">aplicável a outros casos. Os fornecedores dos aplicativos de MES e ERP, normalmente não estão </span><span style="font-family: 'Trebuchet MS', sans-serif;">familiarizados com padrões específicos da automação, como o OPC Clássico, ou estão menos inclinados a </span><span style="font-family: Trebuchet MS, sans-serif;">adotá-los. A fim de integrar o chão de fábrica aos aplicativos de negócios, a TI e/ou os Integradores de </span><span style="font-family: 'Trebuchet MS', sans-serif;">sistemas precisam desenvolver conectores para estes aplicativos trocarem as informações necessárias. Além </span><span style="font-family: 'Trebuchet MS', sans-serif;">disso, eles têm que consolidar e estruturar os dados ao longo do caminho, a fim de atender aos requisitos </span><span style="font-family: 'Trebuchet MS', sans-serif;">dos diferentes aplicativos de negócios. Esta pode ser uma tarefa demorada para desenvolver e testar. E esta </span><span style="font-family: 'Trebuchet MS', sans-serif;">forma de integração na maioria das vezes não pode ser reutilizada.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">F</span><span style="font-family: 'Trebuchet MS', sans-serif;">elizmente, fornecedores de equipamentos e aplicativos para automação industrial têm trabalhado em </span><span style="font-family: 'Trebuchet MS', sans-serif;">conjunto para simplificar a integração entre os aplicativos de negócios e o chão de fábrica. Este processo de </span><span style="font-family: 'Trebuchet MS', sans-serif;">simplificação tem sido gradual ao longo dos últimos anos.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A primeira etapa foi a comunicação entre os equipamentos de chão de fábrica e os aplicativos de automação </span><span style="font-family: 'Trebuchet MS', sans-serif;">através do OPC Clássico. O OPC Clássico tem especificações para acesso a dados em tempo real (DA), </span><span style="font-family: 'Trebuchet MS', sans-serif;">acesso a dados históricos (HDA) e alarmes e eventos (A&E), que são amplamente aceitas na automação. </span><span style="font-family: Trebuchet MS, sans-serif;">Porém, cada especificação usa um conjunto de serviços para a troca de dados. Em uma segunda etapa, a </span><span style="font-family: 'Trebuchet MS', sans-serif;">especificação para acesso a dados em tempo real (DA) do OPC Clássico começou ser adotada na integração </span><span style="font-family: 'Trebuchet MS', sans-serif;">entre o chão de fábrica e os aplicativos de negócios.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A Unified Architecture (UA), a mais recente geração da tecnologia OPC, define um conjunto genérico de </span><span style="font-family: 'Trebuchet MS', sans-serif;">serviços que fornecem acesso a qualquer tipo de dado em conformidade com as diretrizes básicas definidas </span><span style="font-family: 'Trebuchet MS', sans-serif;">pela norma. </span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O principal objetivo do OPC UA é manter todas as funcionalidades do OPC Clássico, mudando a tecnologia </span><span style="font-family: 'Trebuchet MS', sans-serif;">COM/DCOM da Microsoft para tecnologia de Web Services. Ao usar a tecnologia de Web Services, o OPC UA </span><span style="font-family: 'Trebuchet MS', sans-serif;">torna-se independente de plataforma e pode ser usando em situações onde o OPC Clássico não pode. O OPC </span><span style="font-family: 'Trebuchet MS', sans-serif;">UA pode ser perfeitamente integrado a aplicativos MES e ERP. Estejam estes sistemas operando em </span><span style="font-family: 'Trebuchet MS', sans-serif;">sistemas Unix / Linux usando Java, ou em controladores e dispositivos inteligentes com sistemas </span><span style="font-family: 'Trebuchet MS', sans-serif;">operacionais específicos com capacidade de processamento em tempo real. Além disso, o OPC UA tem </span><span style="font-family: 'Trebuchet MS', sans-serif;">segurança incorporada, uma exigência que se tornou cada vez mais importante em ambientes onde os </span><span style="font-family: 'Trebuchet MS', sans-serif;">dados de chão de fábrica devem ser acessados a partir da rede corporativa.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijLktLeoyL9PbrJu2oEdND7HgUB9gqvrWqSUgiofSJy0KIFN-DOx55c5zk_9c4kSKLU74OKiANsdJTa4SmRRSJ8eNuFptfDponrbv9UirdOOZeqgng2Xe_V0SIjCEqKAS-BH87zP9AgYA/s1600/Conexao_MES_ERP_2.jpg" imageanchor="1" style="clear: right; float: right; margin-bottom: 1em; margin-left: 1em;"><img border="0" height="320" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEijLktLeoyL9PbrJu2oEdND7HgUB9gqvrWqSUgiofSJy0KIFN-DOx55c5zk_9c4kSKLU74OKiANsdJTa4SmRRSJ8eNuFptfDponrbv9UirdOOZeqgng2Xe_V0SIjCEqKAS-BH87zP9AgYA/s320/Conexao_MES_ERP_2.jpg" width="171" /></a><span style="font-family: Trebuchet MS, sans-serif;">O OPC Clássico tem um modelo muito simples de dados baseado </span><span style="font-family: 'Trebuchet MS', sans-serif;">simplesmente na hierarquia de tags. Já o OPC UA fornece um modelo rico de </span><span style="font-family: 'Trebuchet MS', sans-serif;">informações usando técnicas de orientação a objetos. Além de fornecer o </span><span style="font-family: 'Trebuchet MS', sans-serif;">valor de uma variável e sua unidade de engenharia, o OPC UA permite </span><span style="font-family: 'Trebuchet MS', sans-serif;">identificar o tipo específico de sensor de temperatura utilizado para obter a </span><span style="font-family: 'Trebuchet MS', sans-serif;">medição. Esta informação é útil em situações típicas do OPC Clássico, porque </span><span style="font-family: 'Trebuchet MS', sans-serif;">os componentes de software e de configuração apresentados numa estação </span><span style="font-family: 'Trebuchet MS', sans-serif;">de trabalho podem ser usados para os outros dispositivos do mesmo tipo </span><span style="font-family: 'Trebuchet MS', sans-serif;">existentes no sistema. Além disso, esta informação pode também ser </span><span style="font-family: 'Trebuchet MS', sans-serif;">utilizada pelos aplicativos de MES e ERP, contribuindo para a integração de </span><span style="font-family: 'Trebuchet MS', sans-serif;">dados sem a necessidade de fornecer uma lista de tags com a especificação </span><span style="font-family: 'Trebuchet MS', sans-serif;">de cada um.</span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
</div>
<div style="text-align: justify;">
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A medida que mais empresas implementarem a tecnologia OPC UA, os </span><span style="font-family: 'Trebuchet MS', sans-serif;">usuários finais irão começar a perceber os seus benefícios. Eles serão </span><span style="font-family: 'Trebuchet MS', sans-serif;">capazes de desfrutar da simplicidade de conectar sistemas diferentes (CLPs, </span><span style="font-family: 'Trebuchet MS', sans-serif;">SDCDs, SCADA, MES, ERP), permitindo que coexistam com segurança. </span></div>
</div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-1237337928693035832013-06-10T16:12:00.002-03:002013-06-10T16:17:03.168-03:00Banco de Dados Relacional ou Historiador em Tempo Real para registrar dados de processo?<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">por Robert McIlvride, Cogent Real-Time Systems Inc.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Alguns anos atrás, quando morava em uma parte do mundo onde os computadores pessoais eram </span><span style="font-family: 'Trebuchet MS', sans-serif;">um fenômeno relativamente novo, eu estava em um escritório observando uma secretária ocupada </span><span style="font-family: 'Trebuchet MS', sans-serif;">digitando em seu novo PC. Ela estava emocionada de ter essa ferramenta poderosa para usar. </span><span style="font-family: 'Trebuchet MS', sans-serif;">"Olha!" ela disse, emocionada. "Agora eu posso escrever e corrigir o meu trabalho tão facilmente!" </span><span style="font-family: 'Trebuchet MS', sans-serif;">Eu olhei para a tela, e tive de sorrir. Ela estava redigindo uma carta inteira dentro de uma única </span><span style="font-family: 'Trebuchet MS', sans-serif;">célula de uma planilha do Excel. </span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O que determina a ferramenta certa para o trabalho? Para aquela secretária, a ferramenta correta </span><span style="font-family: 'Trebuchet MS', sans-serif;">era a única que ela sabia usar. Mas qual é a ferramenta certa para registrar dados de um </span><span style="font-family: 'Trebuchet MS', sans-serif;">aplicativo de controle de processo? Algumas vezes, um arquivo CSV é tudo que se faz necessário. </span><span style="font-family: 'Trebuchet MS', sans-serif;">Às vezes, o Excel atende à necessidade. Muitas vezes, porém, os engenheiros e integradores de </span><span style="font-family: 'Trebuchet MS', sans-serif;">sistemas precisam usar um banco de dados relacional ou um historiador em tempo real para </span><span style="font-family: 'Trebuchet MS', sans-serif;">registrar de forma permanente os dados do processo.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Bancos de dados relacionais têm a vantagem de disponibilidade e familiaridade. SQL Server, </span><span style="font-family: 'Trebuchet MS', sans-serif;">MySQL, Oracle, ou qualquer outro banco de dados relacional, incluindo o Microsoft Access, </span><span style="font-family: 'Trebuchet MS', sans-serif;">geralmente já estão instalados na empresa. Eles oferecem uma interface comum,ODBC, e o </span><span style="font-family: 'Trebuchet MS', sans-serif;">departamento de TI é familiarizado com eles. Não é surpresa ver bancos de dados relacionais </span><span style="font-family: 'Trebuchet MS', sans-serif;">sendo utilizados para registrar dados de processo, especialmente quando as solicitações por dados </span><span style="font-family: 'Trebuchet MS', sans-serif;">provêm de gestores familiarizados com este tipo de banco de dados. </span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Mas um banco de dados relacional pode não ser a escolha ideal para todas as aplicações de </span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">controle de processo. Projetado para atender as necessidades de empresas e bancos para </span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">armazenar dados transacionais, os bancos de dados relacionais são otimizados para a análise de </span><span style="font-family: 'Trebuchet MS', sans-serif;">relações complexas entre os dados. Esses bancos de dados concentram a sua capacidade de </span><span style="font-family: 'Trebuchet MS', sans-serif;">processamento sobre esses relacionamentos, porque os dados propriamente ditos, são atualizados </span><span style="font-family: 'Trebuchet MS', sans-serif;">com pouca frequência, geralmente em termos de segundos, minutos ou horas. Enquanto a </span><span style="font-family: Trebuchet MS, sans-serif;">capacidade de análise é boa para aplicações de negócios, aplicações de controle de processo, </span><span style="font-family: 'Trebuchet MS', sans-serif;">normalmente, não precisam dele. O que elas precisam é de velocidade.</span></div>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeR-1mTLjriPaxc6ppSm5jFzTfFTY0qRGHMdV4sOnnv5a9P56DS3iWXjbFhs-5b5UovyJAUrjOd2Ib97mzS-iTAHBbN0slZjB_3bsKCyFChg9HcAXeigieD9p_r_llmV8who-jkH0LIEQ/s1600/Banco+de+dados+relacional+ou+Historiador+em+tempo+real.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="119" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeR-1mTLjriPaxc6ppSm5jFzTfFTY0qRGHMdV4sOnnv5a9P56DS3iWXjbFhs-5b5UovyJAUrjOd2Ib97mzS-iTAHBbN0slZjB_3bsKCyFChg9HcAXeigieD9p_r_llmV8who-jkH0LIEQ/s400/Banco+de+dados+relacional+ou+Historiador+em+tempo+real.jpg" width="400" /></a></div>
<div class="separator" style="clear: both; text-align: justify;">
<br /></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Um historiador em tempo real, por outro lado, é como um gravador de voo para processar dados. </span><span style="font-family: 'Trebuchet MS', sans-serif;">Ao invés de relacional, é um banco de dados temporal, que armazena seus registros em um </span><span style="font-family: 'Trebuchet MS', sans-serif;">arquivo simples, com apenas o nome, valor, qualidade, data e horário para um ponto de dado. O </span><span style="font-family: 'Trebuchet MS', sans-serif;">historiador é projetado para ter velocidade no armazenamento e na recuperação de seus dados, e </span><span style="font-family: 'Trebuchet MS', sans-serif;">normalmente consegue processar milhões de transações por segundo. Este tipo de desempenho é </span><span style="font-family: 'Trebuchet MS', sans-serif;">importante para processos com variáveis que mudam seus valores diversas vezes por segundo, e </span><span style="font-family: 'Trebuchet MS', sans-serif;">onde a captura de todos os eventos no decorrer de um turno de oito horas é vital. </span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Apesar das vantagens de desempenho de um historiador em tempo real, algumas empresas optam </span><span style="font-family: 'Trebuchet MS', sans-serif;">por utilizar bancos de dados relacionais para registrar os dados de processo. Isso é totalmente </span><span style="font-family: 'Trebuchet MS', sans-serif;">compreensível, já que essa é a ferramenta com a qual a equipe de TI e a alta gerência da </span><span style="font-family: 'Trebuchet MS', sans-serif;">empresa estão mais familiarizados. Mas há três razões importantes pelas quais essa abordagem </span><span style="font-family: 'Trebuchet MS', sans-serif;">pode não ser suficiente.</span></div>
<div class="separator" style="clear: both; text-align: justify;">
</div>
<ol>
<li style="text-align: justify;"><span style="font-family: Trebuchet MS, sans-serif;">Um historiador em tempo real registra todas as alterações de valor de um ponto, mesmo </span><span style="font-family: 'Trebuchet MS', sans-serif;">quando os valores mudam rapidamente. Utilizando algoritmos de armazenagem altamente </span><span style="font-family: 'Trebuchet MS', sans-serif;">eficientes, o conjunto completo de dados pode ser armazenado por longos períodos de tempo. Em </span><span style="font-family: 'Trebuchet MS', sans-serif;">um banco de dados relacional, em contrapartida, se faz necessário eliminar alguns ou a maioria </span><span style="font-family: 'Trebuchet MS', sans-serif;">dos dados à medida que estão sendo registados, uma vez que não está otimizado para o </span><span style="font-family: 'Trebuchet MS', sans-serif;">armazenamento de dados em alta velocidade. Infelizmente, os dados são eliminados </span><span style="font-family: 'Trebuchet MS', sans-serif;">independentemente da sua importância. Assim, você pode acabar registrando variações rotineiras </span><span style="font-family: 'Trebuchet MS', sans-serif;">e jogando fora eventos não usuais que poderiam conduzir a uma condição de alarme. Além de </span><span style="font-family: 'Trebuchet MS', sans-serif;">detectar todas as mudanças, grandes ou pequenas, a capacidade de um historiador em tempo real </span><span style="font-family: 'Trebuchet MS', sans-serif;">para um alto volume de dados é útil para detectar tendências sutis que podem aparecer apenas </span><span style="font-family: 'Trebuchet MS', sans-serif;">após um longo período de meses ou anos.</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif;">Uma grande vantagem de um historiador em tempo real é a sua capacidade nativa para </span><span style="font-family: Trebuchet MS, sans-serif;">processar as consultas com base no tempo. Por exemplo, talvez seja necessário o desvio padrão </span><span style="font-family: 'Trebuchet MS', sans-serif;">de um ponto que muda, em média, 25 vezes por segundo, em janelas de 10 segundos, para os </span><span style="font-family: 'Trebuchet MS', sans-serif;">dois últimos minutos. Um bom historiador irá fornecer uma maneira fácil de apresentar tal </span><span style="font-family: 'Trebuchet MS', sans-serif;">consulta, e retornará os resultados rapidamente, utilizando muito pouco os recursos do sistema. </span><span style="font-family: 'Trebuchet MS', sans-serif;">Consultas pré-construídas normalmente permitem selecionar qualquer período de tempo, desde de </span><span style="font-family: 'Trebuchet MS', sans-serif;">alguns segundos até semanas ou mais, e recuperar médias, percentuais de boa e má qualidade, </span><span style="font-family: Trebuchet MS, sans-serif;">correlações de tempo, regressões, desvios-padrão, e assim por diante. Tudo isso pode ser possível </span><span style="font-family: 'Trebuchet MS', sans-serif;">através de consultas SQL em um banco de dados relacional, mas com muito mais esforço de </span><span style="font-family: 'Trebuchet MS', sans-serif;">programação e maior utilização de recursos do sistema.</span></li>
<li style="text-align: justify;"><span style="font-family: Trebuchet MS, sans-serif;">As duas vantagens acima de um historiador em tempo real podem talvez ser melhor apreciadas </span><span style="font-family: 'Trebuchet MS', sans-serif;">quando se trabalha com indicadores de tendência em tempo real. Calcular e apresentar uma linha </span><span style="font-family: 'Trebuchet MS', sans-serif;">em movimento que se atualiza várias vezes por segundo não exige apenas a capacidade de </span><span style="font-family: 'Trebuchet MS', sans-serif;">registrar todos os pontos de dados em tempo real, mas também a de recupera-los rapidamente e </span><span style="font-family: 'Trebuchet MS', sans-serif;">repetidamente para a sua apresentação em tempo real. E se um usuário quer avançar e retroceder </span><span style="font-family: 'Trebuchet MS', sans-serif;">no tempo através do conjunto de dados, uma vez que o mesmo está sendo armazenado, o </span><span style="font-family: 'Trebuchet MS', sans-serif;">historiador tem de ser capaz de gerenciar consultas rápidas e contínuas para o conjunto de dados. </span><span style="font-family: Trebuchet MS, sans-serif;">Este tipo de tarefa é difícil para um banco de dados relacional de prateleira, a menos que a taxa </span><span style="font-family: 'Trebuchet MS', sans-serif;">de atualização da tela seja extremamente lenta. </span></li>
</ol>
<div style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Mesmo com esses pontos em mente, há muitas aplicações para as quais o registro de dados de </span><span style="font-family: 'Trebuchet MS', sans-serif;">processo em um banco de dados relacional funciona muito bem. Na verdade, às vezes armazenar </span><span style="font-family: 'Trebuchet MS', sans-serif;">os dados em um arquivo CSV é suficiente. Para ser justo, estes não são realmente o mesmo nível </span><span style="font-family: 'Trebuchet MS', sans-serif;">de equívoco de tecnologia como o de escrever uma carta comercial completa em uma única célula de uma planilha. O integrador de sistemas bem informado ou engenheiro vai entender os valores de cada abordagem, vai olhar para as necessidades do projeto e dos recursos disponíveis, e empregar a ferramenta certa para o trabalho.</span><br />
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span>
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span>
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">____________________________________________________________________________________________</span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Fundada em 1995, Sistemas de Tempo Real Cogent é líder em integração de dados em tempo real </span><span style="font-family: 'Trebuchet MS', sans-serif;">entre Windows, Linux e sistemas QNX. Entre os clientes estão o Banco do Canadá, Cadbury </span><span style="font-family: 'Trebuchet MS', sans-serif;">Chocolate e a Agência Espacial Europeia. Cogent utiliza sua experiência em comunicação de dados </span><span style="font-family: 'Trebuchet MS', sans-serif;">em tempo real para fornecer a próxima geração de produtos OPC. Para mais informações, entre </span><span style="font-family: 'Trebuchet MS', sans-serif;">em contato com a Cogent info@cogent.ca ou visite o web site em <a href="http://www.opcdatahub.com/">www.opcdatahub.com</a>. </span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;"><br /></span></div>
<div class="separator" style="clear: both; text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Traduzido por Exata Sistemas de Automação Ltda, distribuidora exclusiva da Cogent no Brasil. A </span><span style="font-family: 'Trebuchet MS', sans-serif;">Exata atua no mercado brasileiro desde 1984 como fornecedora de soluções de automação e de </span><span style="font-family: 'Trebuchet MS', sans-serif;">comunicação, com uma equipe altamente qualificada para ministrar treinamento e suporte técnico </span><span style="font-family: 'Trebuchet MS', sans-serif;">para as ferramentas da Cogent. Para mais informações, acesse: </span><a href="http://www.exatasistemas.com.br/" style="font-family: 'Trebuchet MS', sans-serif;" target="_blank">www.exatasistemas.com.br</a></div>
Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0tag:blogger.com,1999:blog-6063256788523826669.post-86761414263177956032012-12-10T11:08:00.001-02:002012-12-10T11:11:51.224-02:00Modbus – Um Protocolo e Diferentes Implementações<div style="text-align: center;">
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">Alguns padrões de
comunicação simplesmente aparecem e são adotados pelo mercado!</span></div>
</div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Não é porque eles
são empurrados, de cima para baixo, por um grupo de fornecedores grandes ou por
uma organização de padronização. Padrões como o Modbus aparecem e são adotados
pelo mercado porque eles são bons, simples de implementar e são, como consequência,
adotados por inúmeros fabricantes. Devido a isso, o Modbus tornou-se um padrão
amplamente aceito nos diversos segmentos do mercado de automação.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Em 1979, a
Gould-Modicon lançou para seus CLPs a rede de comunicação Modbus. Ela tinha
como base o protocolo de comunicação Modbus serial. Este protocolo era
apresentado em duas versões:</span></div>
<div class="MsoNormal" style="text-align: justify;">
</div>
<ul>
<li><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">Modbus
serial RTU.</span></li>
<li><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">e,
Modbus serial ASCII.</span></li>
</ul>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">A rede de
comunicação Modbus operava sobre os padrões RS-485 (para redes multiestação) e
RS-232 (para conexões entre duas estações).</span><br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">A Gould-Modicon,
após lançar a rede Modbus, disponibilizou publicamente as especificações do
protocolo e da rede. De forma que qualquer empresa que quisesse implantar este
padrão em seus equipamentos poderia fazê-lo sem ter que pagar qualquer direito
de uso à Gould-Modicon.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">No início dos anos
80, a Gould-Modicon lançou para seus CLPs a uma evolução da rede de comunicação
Modbus, chamada Modbus Plus.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">No caso da rede
Modbus Plus, a Gould-Modicon não disponibilizou ao público as especificações de
protocolo e da rede, transformando-a em uma rede proprietária.<o:p></o:p></span></div>
<div class="MsoNormal">
<span style="font-family: Trebuchet MS, sans-serif;">A rede Modbus Plus
foi descontinuada ao final dos anos 90 e, na prática, não é mais encontrada. <o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Como a rede
ethernet se popularizou na automação industrial a partir de meados dos anos 90,
a comunidade de usuários passou a usar o protocolo Modbus serial neste tipo de
rede, usando um método chamado de encapsulamento.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">E, finalmente em
1999, foi lançada a especificação do protocolo Modbus para redes ethernet. Esta
nova versão do protocolo definiu o uso do TCP/IP para o transporte das
mensagens e foi chamada de Modbus TCP.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">No início dos anos
2000 a Schneider Electric, sucessora da Gould-Modicon e outros, deu suporte à
criação da "The Modbus Organization". Esta organização, sem fins
lucrativos, é mantida pela comunidade de usuários do protocolo com objetivo de
manter e gerenciar a necessidade de evolução das especificações do protocolo,
incentivar seu uso e oferecer informações necessárias para a sua correta
implementação (<a href="http://www.modbus.org/"><span style="color: windowtext; mso-fareast-language: EN-US; text-decoration: none; text-underline: none;">http://www.modbus.org</span></a>). Esta organização criou e incentiva um
programa de testes para certificação de produtos que implementam o protocolo. <o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta iniciativa
permite aos usuários evitar a compra de produtos que incorporem drivers Modbus
implementados com interpretações particulares das especificações – muito comuns
no passado.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">As duas maiores
dificuldades de uso do protocolo Modbus estão relacionadas a:</span></div>
<div class="MsoNormal">
</div>
<ul>
<li><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">documentação
sobre a interface de comunicação, sua parametrização;</span></li>
<li><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">mapa de
memória do dispositivo;</span></li>
<li><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">e,
implementações com interpretação particularizada das especificações.</span></li>
</ul>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">Por exemplo, para
implantar um sistema composto de um supervisório e alguns dispositivos Modbus
(medidores de energia, pequenos CLPs ou outros), são necessários:</span><br />
<div class="MsoNormal">
</div>
<ul>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">configurar
os parâmetros de rede na interface de comunicação do computador e dos
dispositivos;</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">e, ter
o mapa de memória do dispositivo listando cada variável do dispositivo com seu
endereço Modbus equivalente.</span></li>
</ul>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">As informações
necessárias para executar estas tarefas deveriam fazer parte da documentação
(ou de anexos) de cada dispositivo. Mas, na prática, a documentação não
apresenta as informações de forma clara e padronizada e muita vezes tem que ser
solicitadas ao suporte técnico do fabricante do dispositivo (não vem junto com
o dispositivo).</span><br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Outro fator de
confusão na implementação deste tipo de sistema são as implementações do
protocolo com interpretação particularizada das especificações. O protocolo
Modbus foi criado faz 30 anos, e, muitos recursos e funcionalidades comuns nos
equipamentos de hoje em dia não existiam nos equipamentos naquela época. Com
isto, recursos tais como: números muito grandes, números de ponto flutuante,
formas de endereçamento e alocação de memória para os diferentes tipos de
dados, entre outras, não foram considerados nas definições do protocolo. Com
isto as empresas criaram suas próprias definições, a partir de práticas
existentes ou fazendo definições particulares.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Por exemplo,
existem alguns formatos para os números de ponto flutuante: meia precisão,
precisão simples ou dupla, com sinal ou sem sinal.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Que forma armazenar
estes números na memória dos dispositivos? Os fabricantes dos dispositivos, uma
vez que a especificação do protocolo não faz qualquer definição acerca, podiam
optar por algum padrão existente ou criar seu próprio padrão de armazenamento.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Esta falta de
definição na especificação do protocolo cria uma dificuldade para o usuário,
caso o fabricante do dispositivo não informe de forma clara na documentação
qual o formato usado para armazenar os números de ponto flutuante na memória do
dispositivo.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Como a questão do
ponto flutuante, existem outros desvios ou implementações particularizadas que
causam confusão na implantação de sistemas com o protocolo Modbus, tais como:</span></div>
<div class="MsoNormal">
</div>
<ul>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">endereçamento
das Estações Escravo Modbus (com mais de um byte);</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">modo
Broadcast;</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">endereço
dos Registros (base 0 x base 1);</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">endereço
dos Bits (base 0 x base 1);</span></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">ordem
de transmissão dos bytes nos registros</span><a href="http://www.blogger.com/blogger.g?blogID=6063256788523826669" name="_Toc338408624" style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">;</a></li>
<li style="text-align: justify;"><span style="font-family: 'Trebuchet MS', sans-serif; text-indent: -18pt;">ordem
de transmissão para valores que usam mais de um registro (números de 32 ou 64
bits - inteiros ou ponto flutuante).</span></li>
</ul>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">Vamos examinar a
questão da ordem de transmissão dos bytes nos registros.</span><br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">O protocolo Modbus
especifica que para transmitir um registro (dois bytes) o dispositivo deve
transmitir primeiro o byte de ordem superior e depois o byte de ordem inferior.
Ou seja, para transmitir o valor 0x35A2 ele deve transmitir 35 no primeiro byte
e A2 no segundo byte, desta forma o dispositivo que recebe o valor vai
decodificar 0x35A2 e apresentar o valor decimal 13.730.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="text-align: justify;">
<span style="font-family: Trebuchet MS, sans-serif;">Porém alguns
fabricantes não respeitam esta definição do protocolo e ao invés de transmitir
35 no primeiro byte e A2 no segundo byte, eles fazem a transmissão invertida.
Primeiro é transmitido o A2 e depois é transmitido o 35, desta forma o dispositivo
que recebe a mensagem vai decodificar 0xA235 e apresentar o valor decimal
41.525, que não corresponde ao valor na memória do dispositivo original.<o:p></o:p></span></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
</div>
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;">Alguns drivers, no
editor de configuração, têm uma opção que permite desfazer esta inversão. Neste
caso é só habilitar esta opção e o driver faz a inversão de bytes a cada dois
bytes de dados recebidos.</span></div>
<div style="text-align: justify;">
<span style="font-family: 'Trebuchet MS', sans-serif;"><br /></span></div>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">Se o seu driver não fizer esta inversão, você vai ter que escrever uma rotina
de programa para fazê-la.</span><br />
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;"><br /></span>
<span style="font-family: 'Trebuchet MS', sans-serif; text-align: justify;">Este tipo de
inversão é mais comum do que se imagina, portanto quando você estiver recebendo
um valor diferente do valor de origem faça a conversão do valor na origem e no
destino para o formato hexadecimal e verifique se você não está tendo uma
inversão de bytes na transmissão.</span>Exatahttp://www.blogger.com/profile/03286956800240289175noreply@blogger.com0