# 5. Modo de Trabalho e Conversão

# 5.1. Modos e Conversão

Na interface diferentes modos de trabalho e protocolos de conversão é possível ser configurado para diferentes ocasiões de aplicação.

O uso da interface é basicamente dividido em dois tipos: com porta serial virtual e sem porta serial virtual.O modo de porta serial virtual é utilizado a porta serial **COM** na aplicação do usuário. Já o modo de porta serial não virtual é adotado a comunicação TCP/IP direta.

No modo de porta serial não virtual, o "protocolo de conversão" é classificdo em três modos: transmissão direta, Modbus TCP para RTU e protoclo Realcom.

As posíveis configurações utilizadas são as abaixo:

| Número &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| Porta Serial Virtual &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; | Modo de trabalho &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| Protocolo Conversão &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;| Descrição |
|:-------|:---------------------|:-----------------|:--------------------|:----------|
| 1      | Utiliza              | TCP Server       | Nenhum              | Adequado quando o usuário necessita utilizar portas de comunicação COM para troca de informações. A interface como servidor recebe os dados  do dispositivo RS485 e transferere para os clientes conectados. |
| 2      | Utiliza              | TCP Client       |  Nenhum             | Adequado quando o usuário necessita utilizar portas de comunicação COM para troca de informações. A interface como cliente tentará estabelecer uma conexão TCP com o IP de destino configurado afim de obter uma transferência de dados transparente bidirecional entre o servidor e o dispositivo RS485, em caso de falha continuará tentando. |
| 3      | Não utiliza          | TCP Server       | Modbus TCP to RTU   | Adequado quando o usuário necessita converter o protocolo Modbus TCP para RTU para adequação a aplicação. Neste caso, o dispositivo do usuário é Modbus RTU e a estação mestre é Modbus TCP. |
| 4      | Não utiliza          | TCP Client       | Modbus TCP to RTU   | Adequado quando o usuário necessita converter o protocolo Modbus TCP para RTU para adequação a aplicação. Neste caso, o dispositivo do usuário é Modbus RTU e a estação mestre é Modbus RTU.|
| 5      | Utiliza              | TCP Client	   | Protocolo Realcom   | Adequado quando o usuário deseja vincular multiplas portas seriais virtuais atravês da internet. |
| 6 	 | Não utiliza          | TCP Client       |  Nenhum             | Adequado quando o usuário necessita uma comunicação TCP/UDP tranparente bidirecional. A interface como cliente tentará estabelecer uma conexão TCP com o IP de destino configurado afim de obter uma transferência de dados transparente bidirecional entre o servidor e o dispositivo RS485, em caso de falha continuará tentando. |
| 7      | Não utiliza          | TCP Server       |  Nenhum             | Adequado quando o usuário necessita uma comunicação TCP/UDP tranparente bidirecional. A interface como servidor recebe os dados  do dispositivo RS485 e transferere para os clientes conectados.|

# 5.2. Modo de Porta Serial Virtual

Se o software do usuário de comunicar via porta serial **COM**, deve ser utilizado o modo de porta virtual serial na interface. Verifique se o computador e a interface estão na rede local:

1. Se o computador for um servidor de IP público, a interface deve uitilizar o protocolo TCP cliente para permitir que a dispositivo se conecte ao servidor. É possível escolhe as opções 2 e 5 desta [tabela](https://wiki.electools.com.br/books/eic-eth485/page/51-modos-e-conversao), se for um servidor multi-serial, deve-se escolher a opção 5.


2. Se todos estiverem na rede local (podem pigar uns aos outros), a escolha vai depender se o computador host faz as requisições ou se a interface faz as requisições, de forma a ser possível possível utilizar o método 1 ou 2 da [tabela](https://wiki.electools.com.br/books/eic-eth485/page/51-modos-e-conversao).

# 5.3. Modo de comunicação TCP/IP direta

Se nem a conversão do protocolo Modbus TCP nem a porta serial virtual forem necessários, o software do usuário pode ser comunicar diretamente com a porta de rede da interface pela comunicação TCP/IP  e a interface converte os dados TCP/IP em dados seriais e os envia para o dispositivo RS485. Modo que correponde ao número 6 e 7 da [tabela](https://wiki.electools.com.br/books/eic-eth485/page/51-modos-e-conversao).

Nesta seção descreveremos como se comunicar com o software no computador no modo cliente TCP, Servidor TCP, UDP Client e de múltiplas conexões TCP. A interface está em conformidade com o protocolo TCP/IP padrão, portanto, qualquer terminal de rede que está em conformidade com este protocolo pode se comunicar com a interface.

<br>
</br>

##### 5.3.1. MODO CLIENTE TCP

Existem dois modos de trabalho no modo TCP: servidor TCP (TCP Server) e cliente TCP (Client TCP). Independente de qual for adotado, um deve ser o servidor e outro deve ser o cliente. Sendo que apenas o cliente pode acessar o servidor. Se todos forem servidores ou clientes, a comunicação é inválida. Quando a interface é utilizada como cliente, deve haver três relacionamentos correspondentes, conforme abaixo:

1. Modo de trabalho correspondente: Caso o computador esteja como modo servidor a interface deve estar no modo cliente.

2. Endereço de IP correspondente: O IP de destino da interface deve ser o endereço do computador onde a ferramenta de rede está localizada.

3. Porta correspondente: A porta de destino da interface deve ser a porta local da ferramenta de rede. Após essa configuração, a interface pode ser conectar automaticamente à ferramenta de rede e os dados podem ser enviados e recebidos após a conexão ser estabelecida.

[![ETH_tcpclient.png](https://wiki.electools.com.br/uploads/images/gallery/2022-10/scaled-1680-/eth-tcpclient.png)](https://wiki.electools.com.br/uploads/images/gallery/2022-10/eth-tcpclient.png)
<br>
</br>
<br>
</br>

##### 5.3.2. CLIENTE CONECTADO A MÚLTIPLOS SERVIDORES

Quando a interface é utilizada como cliente TCP, ela pode se conectar a 7 endereços IP de destino ao mesmo tempo, e os dados enviados pela porta serial também serão enviados para 7 IP's de destino. Se não necessitar de tantos servidores, deixe o restante de IP de destino vazio. As configurações são as abaixo:

[![](https://wiki.electools.com.br/uploads/images/gallery/2022-10/scaled-1680-/image-1666654995825.png)](https://wiki.electools.com.br/uploads/images/gallery/2022-10/image-1666654995825.png)

O primeiro IP é definido na janela ***Device Settigns*** conforme imagem acima. O primeiro IP pode ser um nome do domínio. Para os restantes 2~7 IP's de destino, clique no botão **More Advaced Settings...** e depois em **Multi Dest-IP And Port** onde podem ser adicionados os IP's de destino, clique em **OK** e a conexão será automatica. Se eles não conectarem, eles aguardarão o tempo configurado em **Reconnect Time**, e em seguida, reconectarão novamente.

[![](https://wiki.electools.com.br/uploads/images/gallery/2022-10/scaled-1680-/image-1666655417297.png)](https://wiki.electools.com.br/uploads/images/gallery/2022-10/image-1666655417297.png)
<br>
</br>
<br>
</br>

##### 5.3.3. MODO SERVIDOR TCP

Quando a interface é utilizada como servidor ela pode aceitar 30 conexões TCP ao mesmo tempo. Os dados recebidos pela porta serial serão encaminhados para todas as conexões TCP estabelecidas. 

[![ETH_tcpserver.png](https://wiki.electools.com.br/uploads/images/gallery/2022-10/scaled-1680-/eth-tcpserver.png)](https://wiki.electools.com.br/uploads/images/gallery/2022-10/eth-tcpserver.png)
<br>
</br>
<br>
</br>

##### 5.3.4. ATUANDO COMO CLIENTE E SERVIDOR

A interface pode aceitar conexões TCP mesmo quando o dispositivo está no modo cliente TCP, ou seja, também possui a função de servidor TCP. 

Por padrão, ao usar o software VirCom para configuração, se você alterar o modo de trabalho para **cliente TCP**, a porta local se tornará automaticamente 0 (0 significa que uma porta livre é
selecionada aleatoriamente). Para suportar o modo de servidor TCP, o software do computador deve obter
a porta local do dispositivo, portanto, um valor precisa ser especificado aqui. Conforme mostrado na figura abaixo, o software do computador agora pode se conectar à porta 1024 do IP 192.168.1.254 para comunicação, e o dispositivo também atuará como cliente para conectar o 1024 porta de 192.168.1.2. Deve-se notar que como a porta local 1024 está ocupada pelo servidor, a porta local quando usada como cliente é "port+1", ou seja, o software em 192.168.1.2 vê que
a porta de entrada do dispositivo é 1024+1 =1025.

[![](https://wiki.electools.com.br/uploads/images/gallery/2022-10/scaled-1680-/image-1666656383740.png)](https://wiki.electools.com.br/uploads/images/gallery/2022-10/image-1666656383740.png)
<br>
</br>
<br>
</br>

##### 5.3.5. MODO UDP

No modo UDP, é necessário alterar a configuração do **Work Mode** para UDP. Tando o cliente e o servidor devem estar no modo UDP.