.. include:: glb_defs.txt .. |ico| image:: ../shared_img/_cmd/m7.png Receber e Enviar Texto pelos Canais de Comunicação do Controlador ##################################################################### +---------------------------------------------------------------------------+ |:ref:`Bloco de Controle Padrão` | +-------+-------------------------------------------------------------------+ |Função |Receber e Enviar Texto pelos canais de comunicação do Controlador | +-------+-------------------------------------------------------------------+ |Código |**243** | +-------+-------------------------------------------------------------------+ |Caminho|Programa/Editor Ladder/Elementos/Especiais/Bloco de controle Padrão| +-------+-------------------------------------------------------------------+ |Grupo |Especiais | +-------+-------------------------------------------------------------------+ |Ícone ||ico| | +-------+-------------------------------------------------------------------+ .. only:: hitec +----------------------------------------------+ |:ref:`compatibilidade de firmware` | +-------------------+--------------------------+ |Geração de Firmware|GII, GII-DUO, G3, G3S, G3R| +-------------------+--------------------------+ A função deste bloco é primeiramente aguardar a recepção de um frame texto do dispositivo remoto através dos canais de comunicação do Controlador, e posteriormente enviar outro frame texto de resposta. Para inseri-lo no programa, deve-se posicionar o cursor na posição desejada, selecionar no menu à esquerda o grupo **Especiais** e clicar no botão correspondente, |ico|. .. note:: A execução deste comando pode levar vários ciclos de scan para ser concluído. Portanto, verifique a condição da saída do bloco para certificar-se que o processo está terminado e, avalie o valor para parâmetro P4 para identificar possíveis falhas. Parâmetros ============ +-------------------------------------------------------------------------------------+ |Parâmetros | +============+======+==========+======================================================+ |Parâmetros |Tipos |Valores |Descrição | +------------+------+----------+------------------------------------------------------+ |P1 |K |0..Max(K) |Função do bloco SCB para Receber e Enviar | | | | |Texto pelos canais de comunicação do Controlador. | | | | |Deve ser uma constante inteira (Knn), cujo valor | | | | |deve ser **243**. | +------------+------+----------+------------------------------------------------------+ |P2 |M |M[x + 0] |Identificador do canal de comunicação do controlador | | | | |utilizado para receber e enviar frame texto para o | | | | |dispositivo remoto para mais detalhes. Vide sessão | | | | |`Identificador dos canais de comunicação`_ | | | +----------+------------------------------------------------------+ | | |M[x + 1] |Identificador da variável Texto (X0..Xn), cujo | | | | |conteúdo corresponde ao frame texto a ser enviado | | | | |pelo canal de comunicação do controlador para o | | | | |dispositivo remoto, após a recepção do frame texto | | | | |do mesmo. | +------------+------+----------+------------------------------------------------------+ |P3 |M |M[y + 0] |Parâmetro não utilizado para esta função | | | | |(parâmetro dummy).Identificador da variável Texto | | | | |(X0..Xn), onde será armazenado o frame texto recebido | | | | |do dispositivo remoto através do canal de comunicação | | | | |do controlador. | +------------+------+----------+------------------------------------------------------+ |P4 |M |M[z + 0] |Código de retorno da execução da função, onde: | | | | |**Igual a 0** - Indica função executada com sucesso | | | | |**Diferente de 0** - Indica condição de falha. | | | | |Vide a lista de códigos de retorno. | +------------+------+----------+------------------------------------------------------+ Identificador dos canais de comunicação ========================================== .. include:: lad_comm_ids.txt Códigos de Erros de P4 ========================= +--------------------------------------------------------------------------------------------------------+ |Códigos de Erro de P4 - Sistema Operacional do CLP | +==============+=========================================================================================+ |Código de erro|Descrição | +--------------+-----------------------------------------------------------------------------------------+ |**0** |Função executada com sucesso. Nenhuma falha identificada no processo. | +--------------+-----------------------------------------------------------------------------------------+ |**12** |Canal de comunicação não está configurado com protocolo de comunicação ASCII. | +--------------+-----------------------------------------------------------------------------------------+ |**24** |Driver de comunicação está “ocupado” com outro frame para transmissão. | | |Já existe outro frame em processo de transmissão. | +--------------+-----------------------------------------------------------------------------------------+ |**27** |Variável texto a ser enviada como frame texto é nula, não possui caracteres. | +--------------+-----------------------------------------------------------------------------------------+ |**74** |Canal de comunicação especificado não disponível no rolador. | +--------------+-----------------------------------------------------------------------------------------+ |**206** |Variável do tipo texto especificada como parâmetro não definida na aplicação. | | | | | |Por exemplo: a variável texto que contém o conteúdo do frame texto a ser | | |enviado, ou a variável texto especificada para armazenar o valor do frame | | |texto recebido. | | |**Por exemplo**, configurou-se 10 variáveis do tipo texto na aplicação, e em | | |alguma função especificou-se uma variável com identificador maior que 9, | | |por exemplo especificar variável X10, X11, X12, etc.. são variáveis inválidas. | +--------------+-----------------------------------------------------------------------------------------+ Para mais informações sobre os códigos de erro consulte a :ref:`tabela de códigos de erro` . Entradas =========== +--------------------------------------------------------------------------------------+ |Descrição das Entradas | +==========+============+========+=====================================================+ |Entrada |Função |Estado |Descrição | +----------+------------+--------+-----------------------------------------------------+ |A1 |Ativação |Inativo |Neste estado o bloco não executa nenhuma ação, | | | | |repassando apenas o estado inativo para a saída B1. | | | +--------+-----------------------------------------------------+ | | |Ativo |Neste estado o bloco executa a funcionalidade | | | | |associada ao mesmo. OBS: Cabe ressaltar que, para o | | | | |bloco SCB, esta entrada opera por transição ou seja, | | | | |o bloco é executado apenas quando a entrada A1 muda | | | | |do estado inativo para o estado ativo. Uma vez | | | | |ativada, a entrada A1 deverá permanecer ativa até o | | | | |término da execução da função que é sinalizado | | | | |através da ativação da saída B1 do bloco. | +----------+------------+--------+-----------------------------------------------------+ Saída ======= +--------------------------------------------------------------------------------+ |Descrição das Saídas | +=======+================+========+==============================================+ |Saída | Função |Estado |Descrição | +-------+----------------+--------+----------------------------------------------+ |B1 |Ativação/Falha |Inativo |A saída B1 sempre estará inativa se a | | | | |entrada A1 estiver inativa. Quando a | | | | |entrada A1 for ativada a saída B1 permanecerá | | | | |inativa enquando o bloco estiver executando o | | | | |comando associado indicando que o processo | | | | |ainda não terminou. | | | +--------+----------------------------------------------+ | | |Ativo |Indica fim de execução do processo associado | | | | |ao bloco. Para identificar se a função foi | | | | |executada com sucesso é necessário examinar o | | | | |parâmetro P4, que contém o código indicando o | | | | |resultado da execução do processo associado. | | | | |Para mais informações sobre os códigos | | | | |disponíveis para esta função consulte a | | | | |:ref:`tabela de códigos de erro`. | +-------+----------------+--------+----------------------------------------------+ A primeira etapa no processo de comunicação entre o dispositivo remoto e os PLC´s é certificar-se que os parâmetros de comunicação dos dois equipamentos estão configurados de maneira compatível. Para tanto, verifique o setup do dispositivo remoto a ser utilizado, e para a configuração da comunicação nos controladores, utilize o ambiente de programação, selecione a opção: :REF:`Setup de Comunicação do Computador` Verifique o valor selecionado do baud rate e do formato do caractere (tamanho, paridade e stop bits) para o leitor de código de barras e certifique-se que o valor programado para o PLC é igual. Verifique os parâmetros utilizados pelo dispositivo remoto (leitor de código de barras, impressora, etc.) e certifique-se de que os valores programados são os mesmos para o equipamento conectado. Equipamentos remotos podem ou não enviar caracteres de início e fim de frame, de tal forma que é preciso verificar na documentação do dispositivo remoto, e se necessário, definir e configurar um caractere para indicar início de frame e/ou fim de frame. Estes caracteres, quando necessários, devem ser diferentes dos caracteres que serão lidos pelo equipamento remoto. O protocolo ASCII permite envio e recepção de um conjunto de bytes em qualquer formato. A única restrição imposta pelo driver é que a quantidade de dados recebida ou enviada em cada transação de comunicação (envio ou recepção) não seja superior a 48 bytes. .. raw:: pdf PageBreak