{"id":429,"date":"2016-08-30T00:03:57","date_gmt":"2016-08-30T03:03:57","guid":{"rendered":"http:\/\/www.pascalscada.com\/?page_id=429"},"modified":"2026-09-17T09:36:40","modified_gmt":"2026-09-17T12:36:40","slug":"modbus-rtu-and-tcp","status":"publish","type":"page","link":"https:\/\/www.pascalscada.com\/pb\/modbus-rtu-and-tcp\/","title":{"rendered":"Modbus RTU e TCP"},"content":{"rendered":"<p>As instru\u00e7\u00f5es a seguir servem tanto para Modbus RTU (classe TModBusRTUDriver) quanto para Modbus TCP (classe TModBusTCPDriver). Para configurar um tag+protocolo Modbus voc\u00ea deve:<\/p>\n<ol>\n<li>Inserir uma porta de comunica\u00e7\u00e3o apropriada para o protocolo Modbus escolhido:\n<ul>\n<li><a href=\"\/communication-ports\/#TTCP_UDPPort\">TTCP_UDPPort<\/a> para Modbus TCP;<\/li>\n<li><a href=\"\/communication-ports\/#TSerialPort\">TSerialPortDriver<\/a> para Modbus RTU;<\/li>\n<\/ul>\n<\/li>\n<li>Inserir o componente de protocolo escolhido.<\/li>\n<li>Conectar o protocolo com a porta, atrav\u00e9s da propriedade CommunicationPort;<\/li>\n<li>Inserir os tags manualmente ou atrav\u00e9s da ferramenta \u201cTag builder\u201d<\/li>\n<li>Caso inserir os tags manualmente, configurar as propriedades conforme descrito a seguir;<\/li>\n<li>Conectar o tag ao driver de protocolo atrav\u00e9s da propriedade <strong>ProtocolDriver<\/strong> presente em cada tag.<\/li>\n<\/ol>\n<p>Ambas classes suportam os seguinte tipos de tags:<\/p>\n<ul>\n<li>TPLCTagNumber<img decoding=\"async\" alt=\"plctagnumber\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plctagnumber.png\"><\/li>\n<li>TPLCBlock<img decoding=\"async\" alt=\"plcblock\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcblock.png\"><\/li>\n<li>TPLCStruct<img decoding=\"async\" alt=\"plcstruct\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstruct.png\"><\/li>\n<li>TPLCString<img decoding=\"async\" alt=\"plcstring\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstring.png\"><\/li>\n<\/ul>\n<p>Para configurar um tag para usar o ModBus, \u00e9 necess\u00e1rio configurar as seguintes propriedades do tag:<\/p>\n<ul>\n<li><strong>PLCStation<\/strong> : Endere\u00e7o do equipamento modbus. <strong>Para Modbus TCP, esta propriedade tem seu valor fixado em 1, geralmente, depende da implementa\u00e7\u00e3o do Modbus Server.<\/strong><\/li>\n<li><strong>MemAddress<\/strong> : Endere\u00e7o da entrada\/saida\/registrador que se deseja l\u00ear\/escrever. Os endere\u00e7os come\u00e7am de zero, sempre. <strong>N\u00e3o use a nota\u00e7ao de endere\u00e7o 1xxxxx, 2xxxxx, 3xxxxx, 4xxxxx, pois ela n\u00e3o \u00e9 suportada.<\/strong><\/li>\n<li><strong>MemReadFuntion<\/strong> : Fun\u00e7\u00e3o que ser\u00e1 usada para ler o tag. Veja tabela abaixo.<\/li>\n<li><strong>MemWriteFuntion<\/strong> : Fun\u00e7\u00e3o que ser\u00e1 usada para escrever valores do tag. Veja tabela abaixo.<\/li>\n<\/ul>\n<p>Para as propriedades MemReadFunction e MemWriteFunction s\u00e3o aceitos os seguintes valores de acordo com a \u00e1rea de mem\u00f3ria desejada:<\/p>\n<table class=\"table_tag\" style=\"height: 252px;\">\n<tbody>\n<tr>\n<th>\u00c1rea desejada<\/th>\n<th>MemReadFunction<\/th>\n<th>MemWriteFunction<\/th>\n<\/tr>\n<tr>\n<td>Entradas digitais<\/td>\n<td>2<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>Saidas digitais<\/td>\n<td>1<\/td>\n<td>\n<p>5 (TPLCTagNumber<img decoding=\"async\" alt=\"plctagnumber\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plctagnumber.png\"\/>)<\/p>\n<p>15 (TPLCTagNumber<img decoding=\"async\" alt=\"plctagnumber\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plctagnumber.png\"\/>\u00a0<span>TPLCBlock<\/span><img decoding=\"async\" alt=\"plcblock\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcblock.png\"\/>\u00a0<span>TPLCStruct<\/span><img decoding=\"async\" alt=\"plcstruct\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstruct.png\"\/>\u00a0<span>TPLCString<\/span><img decoding=\"async\" alt=\"plcstring\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstring.png\"\/><span>)<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>Registradores<\/td>\n<td>3<\/td>\n<td>\n<p>6 (TPLCTagNumber<img decoding=\"async\" alt=\"plctagnumber\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plctagnumber.png\"\/>)<\/p>\n<p>16 (TPLCTagNumber<img decoding=\"async\" alt=\"plctagnumber\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plctagnumber.png\"\/>\u00a0<span>TPLCBlock<\/span><img decoding=\"async\" alt=\"plcblock\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcblock.png\"\/>\u00a0<span>TPLCStruct<\/span><img decoding=\"async\" alt=\"plcstruct\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstruct.png\"\/>\u00a0<span>TPLCString<\/span><img decoding=\"async\" alt=\"plcstring\" src=\"http:\/\/www.pascalscada.com\/wp-content\/uploads\/2016\/08\/plcstring.png\"\/><span>)<\/span><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>Entradas anal\u00f3gicas<\/td>\n<td>4<\/td>\n<td>0<\/td>\n<\/tr>\n<tr>\n<td>Status equipamento<\/td>\n<td>7<\/td>\n<td>0<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p><strong>\u00c9 necess\u00e1rio que voc\u00ea conhe\u00e7a as fun\u00e7\u00f5es ModBus que seu equipamento suporta.<\/strong><\/p>","protected":false},"excerpt":{"rendered":"<p>As instru\u00e7\u00f5es a seguir servem tanto para Modbus RTU (classe TModBusRTUDriver) quanto para Modbus TCP (classe TModBusTCPDriver). Para configurar um tag+protocolo Modbus voc\u00ea deve: Inserir uma porta de comunica\u00e7\u00e3o apropriada &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"template-fullwidth.php","meta":{"footnotes":""},"class_list":["post-429","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/pages\/429","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/comments?post=429"}],"version-history":[{"count":22,"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/pages\/429\/revisions"}],"predecessor-version":[{"id":1233,"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/pages\/429\/revisions\/1233"}],"wp:attachment":[{"href":"https:\/\/www.pascalscada.com\/pb\/wp-json\/wp\/v2\/media?parent=429"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}