DOCA0272PTBR-00

Dados cíclicos

Todos os blocos de funções que acessam dados cíclicos utilizam duas variáveis de interface para parametrizar o acesso aos dados cíclicos:

  • i_hwStartAddress para dados de entrada cíclica

  • iq_hwQWAddress para dados de saída cíclica

A variável de interface “i_hwStartAddress” (tipo de dados “Variante”) é utilizada pelos blocos de funções para recuperar toda a quantidade de dados de entrada cíclica associados ao avatar. Para que o bloco de funções faça isso, ele deve ser parametrizado com o endereço inicial do intervalo de entrada do avatar (submódulo de entrada do avatar para o PROFINET IO, módulo de avatar para o PROFIBUS DP). O método mais comum é a criação de tags de PLC para um endereço no início do intervalo. O tamanho dos dados da tag de PLC não é importante, desde que ele esteja no início do intervalo (por exemplo, BOOL “AvPump02_StartAddress” apontando para o endereço “%I4.0” para o avatar Bomba no exemplo a seguir).

Para a direção dos dados de saída, os blocos de funções utilizam a variável de entrada/saída “iq_hwQWAddress” (em alguns casos, também a “iq_hwQBAddress”, porque há apenas um único byte de dados de saída para o avatar). Ao contrário dos dados de entrada, essa variável faz referência aos dados de saída completos da ilha (na maioria dos casos, Word) e é conectada como uma variável de entrada/saída para o bloco de funções — já que, em alguns casos, vários blocos de funções acessam os dados de saída do mesmo avatar em diferentes áreas (por exemplo, bloco de funções de controle de avatar em conjunto com um bloco de funções de diagnóstico de avatar) e, consequentemente, o status atual precisa ser lido antes que uma alteração seja gravada na saída. Normalmente, o acesso à área de saída do avatar também deve ser configurado utilizando uma tag de PLC para a área de saída completa (no exemplo acima, “AvConveyorOneDir03_OutAddress” do tipo Word fazendo referência ao endereço “%QW5”).

NOTA: Os blocos de funções da biblioteca do TeSys™ island para o TIA Portal não podem detectar nenhum erro de configuração de áreas de entrada/saída dos avatares. Portanto, o usuário é responsável por assegurar que as áreas corretas de entrada e saída sejam configuradas e utilizadas em conjunto com os tipos de blocos de funções apropriados. Caso isso não seja feito, poderá ser observado um comportamento inesperado do TeSys™ island.

Assim que a variável de entrada “i_xEnable” for definida como “true” no programa, os blocos de funções que envolvem a comunicação cíclica executarão e atualizarão os dados cíclicos. Isso significa que todas as variáveis de entrada na interface do bloco de funções que controla o avatar por meio da comunicação cíclica (por exemplo, “i_xRunFwd”, no exemplo acima) serão gravadas na área de dados de saída do avatar. Ao mesmo tempo, quaisquer informações de status relevantes da área de dados de entrada do avatar são lidas pelo bloco de funções e copiadas para a interface de saída (por exemplo, “q_xRunFwd”).

A saída do status “q_xActive” dos blocos de funções é a contraparte de “i_xEnable”. Se a execução do bloco de funções estiver ativada e não ocorrer nenhum erro detectado, “q_xActive” será “true”. Se ocorrer um erro detectado durante a execução do bloco de funções, isso será sinalizado por uma margem em elevação em “q_xError”. A recuperação dos dados de entrada cíclica e a execução do bloco de funções serão interrompidas. Além disso, “q_dwErrorID” fornece detalhes sobre qual tipo de erro detectado ocorreu utilizando um dos valores de código de erro do bloco de funções ConstTeSysIsland (consulte Bloco de dados ConstTeSysIsland). Ao mesmo tempo, todas as saídas do bloco de funções resultantes da comunicação cíclica ou acíclica com o TeSys island serão redefinidas para seus respectivos valores padrão. Isso significa o seguinte:

  • Todos os resultados de tipo numérico (INT, UINT, …) ou campo de bits (WORD, DWORD, …) serão definidos como 0.

    .
  • Todos os resultados do tipo string serão definidos como uma string vazia.

  • Todos os resultados do tipo booleano serão definidos como FALSE.

  • Todos os resultados do tipo data e hora (DTL nesta biblioteca) serão redefinidos com o valor mínimo desse tipo (DTL#1970-01-01-00:00:00.0).

  • Todos os resultados agrupados em um tipo definido pelo usuário (UDT) ou struct serão redefinidos com os valores padrão especificados na definição do tipo. Em geral, eles também seguem as regras acima.

NOTA: As alterações das definições dos UDTs contidos na biblioteca também resultam em alterações nos valores padrão utilizados pelos blocos de funções quando ocorre um erro e, portanto, devem ser evitadas.
ATENÇÃO
Operação não intencional do equipamento
  • Para evitar interrupções na operação da carga representada pelo avatar quando ocorre um erro, os dados de energia cíclica enviados para a ilha (por exemplo, os comandos Em regime) não são modificados. Se for necessária a desativação da carga na ocorrência de um erro, você será responsável por remover quaisquer bits de entrada ativos do bloco de funções, segundo exigido pela situação.
O não cumprimento destas instruções poderá resultar em morte, ferimentos graves ou danos do equipamento.

O bloco de funções só sai do estado de erro detectado depois que uma nova margem em elevação em “i_xEnable” for detectada e se a condição que levou o bloco de funções a entrar no estado de erro detectado tiver sido eliminada.

QR Code is a registered trademark of DENSO WAVE INCORPORATED in Japan and other countries.

Isto foi útil?