{"id":3629,"date":"2019-03-25T17:45:12","date_gmt":"2019-03-25T20:45:12","guid":{"rendered":"http:\/\/xexeu.elipse.com.br\/pt\/desabilitando-tags-de-um-clp-em-falha\/"},"modified":"2019-11-20T13:06:02","modified_gmt":"2019-11-20T16:06:02","slug":"desabilitando-tags-de-um-clp-em-falha","status":"publish","type":"post","link":"https:\/\/kb.elipse.com.br\/en\/desabilitando-tags-de-um-clp-em-falha\/","title":{"rendered":"Desabilitando tags de um CLP em falha."},"content":{"rendered":"<div align=\"justify\">\n<p>Em\u00a0uma rede serial, \u00e9 poss\u00edvel utilizar um \u00fanico driver para comunica\u00e7\u00e3o com diversos equipamentos; dependendo do protocolo utilizado, seus tags s\u00e3o diferenciados apenas pelo valor do par\u00e2metro <i>N1 <\/i>de cada tag.<\/p>\n<p>Quando h\u00e1 uma falha de comunica\u00e7\u00e3o com um determinado equipamento (o que pode ser normal em uma grande rede), o driver continuar\u00e1 tentando ler os tags deste equipamento, e a demora ou falha na resposta causa lentid\u00e3o na aplica\u00e7\u00e3o, o que pode ser erroneamente interpretado como um travamento.<\/p>\n<p>Este artigo apresenta uma aplica\u00e7\u00e3o exemplo que desabilita a leitura dos tags de um equipamento quando este permanece em falha por um determinado tempo. A aplica\u00e7\u00e3o possui um tag de controle por cada equipamento; quando a qualidade de um dos tags n\u00e3o for boa, ser\u00e1 iniciado um contador que verificar\u00e1 sua qualidade periodicamente. Caso a qualidade permane\u00e7a ruim ap\u00f3s um determinado tempo, a leitura de todos os tags referentes ao equipamento ser\u00e1 desabilitada.<\/p>\n<p>O aplicativo busca tr\u00eas tags de comunica\u00e7\u00e3o e um bloco com dois elementos, de dois equipamentos distintos. O driver de comunica\u00e7\u00e3o utilizado no exemplo \u00e9 o driver Modicon Modbus Master. Para simular os equipamentos, pode-se utilizar qualquer simulador Modbus que possibilite simular mais de um equipamento com IDs diferentes.<\/p>\n<p>Neste aplicativo, a conex\u00e3o do driver foi feita via ethernet (devido ao simulador utilizado, o que n\u00e3o interfere na solu\u00e7\u00e3o proposta). Foi utilizado o simulador <b>MOD_RSSIM<\/b>, que est\u00e1 em anexo e pode ser baixado tamb\u00e9m <a href=\"http:\/\/www.plcsimulator.org\/\" target=\"_blank\" rel=\"noopener noreferrer\">deste site<\/a>.<\/p>\n<p align=\"justify\">Foi desenvolvida tamb\u00e9m uma biblioteca (<b>desabilitaleituraemerro<\/b>.lib) que cont\u00e9m apenas um XObject, chamado <b>xoDisable<\/b>. Nele est\u00e3o os scripts para habilitar e desabilitar as leituras. Para cada equipamento a ser controlado, deve ser adicionada uma inst\u00e2ncia do <i>xoDisable <\/i>no servidor de dados (pasta de dados).<\/p>\n<p align=\"\">As seguintes propriedades do <i>xoDisable <\/i>devem ser preenchidas a cada inst\u00e2ncia adicionada no projeto principal:<\/p>\n<p><strong><i>AppDriver<\/i>: <\/strong>Driver ao qual o equipamento pertence<br \/>\n<strong><i>BancoDeDados<\/i>:<\/strong> Objeto banco de dados onde ser\u00e3o gravadas mensagens de leitura desabilitada ou habilitada<br \/>\n<strong><i>IDEquip<\/i>: <\/strong>Identifica\u00e7\u00e3o do equipamento na rede (valor do par\u00e2metro <i>N1 <\/i>no driver de comunica\u00e7\u00e3o)<br \/>\n<strong><i>Tabela<\/i>:<\/strong>\u00a0 Nome da tabela onde ser\u00e3o gravados os eventos de leitura desabilitada ou habilitada<br \/>\n<strong><i>TagdeControle<\/i>: <\/strong>Tag utilizado para verificar se a comunica\u00e7\u00e3o est\u00e1 em falha. Este \u00e9 o \u00fanico tag onde a leitura n\u00e3o ser\u00e1 desabilitada quando em falha<br \/>\n<strong><i>ValorPreset<\/i>:<\/strong> Intervalo de tempo (em segundos) no qual ocorre a verifica\u00e7\u00e3o da comunica\u00e7\u00e3o quando est\u00e1 em falha<\/p>\n<p>Para habilitar o tag contador da inst\u00e2ncia do <b>xoDisable<\/b> referente ao equipamento (<i>N1<\/i>) em falha, \u00e9 preciso adicionar um script ao evento <i>OnCommError <\/i>do driver.\u00a0Exemplo:<\/p>\n<pre><span style=\"font-family: Courier New;\">Sub Driver_OnCommError(EvtType, Size, Element, N1, N2, N3, N4)<\/span>\r\n<span style=\"font-family: Courier New;\">'Script que verifica qual o N1 do tag com erro e habilita um contador.<\/span>\r\n<span style=\"font-family: Courier New;\">if N1 = 1 then<\/span>\r\n<span style=\"font-family: Courier New;\">Application.GetObject(\"Dados.xoDriver1\").TagContador.Enabled = true<\/span>\r\n<span style=\"font-family: Courier New;\">elseif N1 = 2 then<\/span>\r\n<span style=\"font-family: Courier New;\">Application.GetObject(\"Dados.xoDriver2\").TagContador.Enabled = true<\/span>\r\n<span style=\"font-family: Courier New;\">end if<\/span>\r\n<span style=\"font-family: Courier New;\">End Sub<\/span><\/pre>\n<p>Para utilizar esta aplica\u00e7\u00e3o, siga estes procedimentos:<\/p>\n<ol>\n<li>Execute um simulador Modbus que simule dois CLPs na porta 502, ou ent\u00e3o utilize dois CLPs, com IDs de rede 1 e 2, e que contenham vari\u00e1veis do tipo <b>Holding Register<\/b> com endere\u00e7os de 1 a 5.<\/li>\n<li>Abra o aplicativo em modo de edi\u00e7\u00e3o, confira o IP de conex\u00e3o do driver e execute o aplicativo.<\/li>\n<li>No simulador Modbus, desabilite apenas uma vari\u00e1vel (de controle) de um dos CLPs, ou ent\u00e3o desabilite totalmente um dos CLPs simuladores.<\/li>\n<li>Aguarde a contagem de tempo no Elipse E3 e verifique se a leitura dos outros tags \u00e9 desabilitada.<\/li>\n<li>Habilite novamente a vari\u00e1vel ou CLP que foi desabilitado anteriormente.<\/li>\n<li>As leituras ser\u00e3o restabelecidas ap\u00f3s uma leitura da vari\u00e1vel de controle com boa qualidade.<\/li>\n<\/ol>\n<p>A aplica\u00e7\u00e3o exemplo foi desenvolvida no Elipse E3 vers\u00e3o 4.6 build 162.<\/p>\n<\/div>\n<h3>Anexos:<\/h3>\n<p><a href=\"\/wp-content\/uploads\/2019\/03\/mod_RSsim_8_20.zip\">mod_RSsim_8_20.zip<\/a><br \/>\n<a href=\"\/wp-content\/uploads\/2019\/03\/DesabilitaLeituraEmErro-1.zip\">DesabilitaLeituraEmErro.zip<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Em\u00a0uma rede serial, \u00e9 poss\u00edvel utilizar um \u00fanico driver para comunica\u00e7\u00e3o com diversos equipamentos; dependendo do protocolo utilizado, seus tags s\u00e3o diferenciados apenas pelo valor do par\u00e2metro N1 de cada&hellip;<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0},"categories":[601,610],"tags":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.8 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Desabilitando tags de um CLP em falha. - Elipse Knowledgebase<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Desabilitando tags de um CLP em falha.\" \/>\n<meta property=\"og:description\" content=\"Em\u00a0uma rede serial, \u00e9 poss\u00edvel utilizar um \u00fanico driver para comunica\u00e7\u00e3o com diversos equipamentos; dependendo do protocolo utilizado, seus tags s\u00e3o diferenciados apenas pelo valor do par\u00e2metro N1 de cada&hellip;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\" \/>\n<meta property=\"og:site_name\" content=\"Elipse Knowledgebase\" \/>\n<meta property=\"article:publisher\" content=\"http:\/\/www.facebook.com\/elipsesoftware\" \/>\n<meta property=\"article:published_time\" content=\"2019-03-25T20:45:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2019-11-20T16:06:02+00:00\" \/>\n<meta name=\"author\" content=\"Enrico Busnello Amorim\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Enrico Busnello Amorim\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\"},\"author\":{\"name\":\"Enrico Busnello Amorim\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/aa880bd098677c1ae91fa708e17cdc12\"},\"headline\":\"Desabilitando tags de um CLP em falha.\",\"datePublished\":\"2019-03-25T20:45:12+00:00\",\"dateModified\":\"2019-11-20T16:06:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\"},\"wordCount\":604,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"articleSection\":[\"IODriver \/ IOServer\",\"Scripts\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\",\"url\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\",\"name\":\"[:pt]Desabilitando tags de um CLP em falha.[:] - Elipse Knowledgebase\",\"isPartOf\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#website\"},\"datePublished\":\"2019-03-25T20:45:12+00:00\",\"dateModified\":\"2019-11-20T16:06:02+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/kb.elipse.com.br\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Desabilitando tags de um CLP em falha.\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/kb.elipse.com.br\/#website\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"name\":\"Elipse Knowledgebase\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/kb.elipse.com.br\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/kb.elipse.com.br\/#organization\",\"name\":\"Elipse Software\",\"url\":\"https:\/\/kb.elipse.com.br\/\",\"sameAs\":[\"http:\/\/www.facebook.com\/elipsesoftware\"],\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"contentUrl\":\"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png\",\"width\":161,\"height\":58,\"caption\":\"Elipse Software\"},\"image\":{\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/aa880bd098677c1ae91fa708e17cdc12\",\"name\":\"Enrico Busnello Amorim\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/13943145ceed05bf229301fae63da878?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/13943145ceed05bf229301fae63da878?s=96&d=mm&r=g\",\"caption\":\"Enrico Busnello Amorim\"},\"url\":\"https:\/\/kb.elipse.com.br\/en\/author\/enrico\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Desabilitando tags de um CLP em falha. - Elipse Knowledgebase","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/","og_locale":"en_US","og_type":"article","og_title":"[:pt]Desabilitando tags de um CLP em falha.[:] - Elipse Knowledgebase","og_description":"Em\u00a0uma rede serial, \u00e9 poss\u00edvel utilizar um \u00fanico driver para comunica\u00e7\u00e3o com diversos equipamentos; dependendo do protocolo utilizado, seus tags s\u00e3o diferenciados apenas pelo valor do par\u00e2metro N1 de cada&hellip;","og_url":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/","og_site_name":"Elipse Knowledgebase","article_publisher":"http:\/\/www.facebook.com\/elipsesoftware","article_published_time":"2019-03-25T20:45:12+00:00","article_modified_time":"2019-11-20T16:06:02+00:00","author":"Enrico Busnello Amorim","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Enrico Busnello Amorim","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#article","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/"},"author":{"name":"Enrico Busnello Amorim","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/aa880bd098677c1ae91fa708e17cdc12"},"headline":"Desabilitando tags de um CLP em falha.","datePublished":"2019-03-25T20:45:12+00:00","dateModified":"2019-11-20T16:06:02+00:00","mainEntityOfPage":{"@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/"},"wordCount":604,"commentCount":0,"publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"articleSection":["IODriver \/ IOServer","Scripts"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/","url":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/","name":"[:pt]Desabilitando tags de um CLP em falha.[:] - Elipse Knowledgebase","isPartOf":{"@id":"https:\/\/kb.elipse.com.br\/#website"},"datePublished":"2019-03-25T20:45:12+00:00","dateModified":"2019-11-20T16:06:02+00:00","breadcrumb":{"@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/kb.elipse.com.br\/desabilitando-tags-de-um-clp-em-falha\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/kb.elipse.com.br\/en\/"},{"@type":"ListItem","position":2,"name":"Desabilitando tags de um CLP em falha."}]},{"@type":"WebSite","@id":"https:\/\/kb.elipse.com.br\/#website","url":"https:\/\/kb.elipse.com.br\/","name":"Elipse Knowledgebase","description":"","publisher":{"@id":"https:\/\/kb.elipse.com.br\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/kb.elipse.com.br\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/kb.elipse.com.br\/#organization","name":"Elipse Software","url":"https:\/\/kb.elipse.com.br\/","sameAs":["http:\/\/www.facebook.com\/elipsesoftware"],"logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/","url":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","contentUrl":"https:\/\/kb.elipse.com.br\/wp-content\/uploads\/2019\/05\/schererelipse-com-br\/logoElipse.png","width":161,"height":58,"caption":"Elipse Software"},"image":{"@id":"https:\/\/kb.elipse.com.br\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/aa880bd098677c1ae91fa708e17cdc12","name":"Enrico Busnello Amorim","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/kb.elipse.com.br\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/13943145ceed05bf229301fae63da878?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/13943145ceed05bf229301fae63da878?s=96&d=mm&r=g","caption":"Enrico Busnello Amorim"},"url":"https:\/\/kb.elipse.com.br\/en\/author\/enrico\/"}]}},"_links":{"self":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3629"}],"collection":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/comments?post=3629"}],"version-history":[{"count":4,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3629\/revisions"}],"predecessor-version":[{"id":9462,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/posts\/3629\/revisions\/9462"}],"wp:attachment":[{"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/media?parent=3629"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/categories?post=3629"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kb.elipse.com.br\/en\/wp-json\/wp\/v2\/tags?post=3629"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}