Variáveis de sistema¶
Os recursos e configurações de hardware e fimrware dos equipamentos podem ser monitorados e modificados pela aplicação corrente através das váriaveis de sistema.
Esta base de variáveis tem por objetivo disponibilizar para o programa corrente e para clientes externos (através dos canais de comunicação), informações de status, configuração e falhas no equipamento. Estas informações são à princípio consistentes com todas as plataformas de equipamentos de forma que, a informação disponível na memória X é a mesma, independentemente do tipo de equipamento. Existem situações entretanto onde o equipamento não possui o recurso ou condição de status ou falha definido para uma dada memória. Nestes casos, o valor retornado pela leitura da memória associada será sempre zero.
A figura a seguir apresenta o mapeamento da área de variáveis de sistema com a distribuição dos grupos de informação disponíveis:
As variáveis de sistema são identificadas na aplicação do controlador pela letra F. Desta forma o operando F3 se refere ao conteúdo da variável de sistema nro. 3.
A faixa de endereços alocada para as variáveis de sistema está entre 1..4999.
Todo acesso de leitura a um endereço dentro da faixa especificada acima, que não estiver definido nas tabelas seguintes irá retornar o valor zero.
Todo acesso de escrita a um endereço dentro da faixa especificada acima, que não estiver definido nas tabelas seguintes irá retornar código de falha de “Variável apenas de leitura”, quando acessado via comunicação e, não tem efeito quando acessado via programa de aplicação.
Atenção
Este recurso está disponível apenas para os equipamentos com firmware G3S e G3R. Para mais informações sobre os recursos de cada geração de firmware consulte a página com a Tabela de compatibilidade de firmwares .
Importante
Algumas variaveis de sistema não estão disponíveis para todas a famílias de controladores. Verifique na tabela de disponibilidade de variáveis de sistema para avaliar a disponibilidade das variáveis de sistema para o controlador utilizado.
Tipo de dado associado à variável de sistema¶
Todas as variáveis de sistema são mapeadas em valores inteiros de 16 bits com sinal. Dentro do programa de aplicação portanto uma variável de sistema é integralmente compativel com as variáveis do tipo M. Quando a variável representar uma condição lógica, o valor zero indica condição falsa enquanto que o valor 1 indica condição verdadeira. Em vários casos a informação apresentada na variável de sistema é mapeada em bits. Nestes casos o valor do bit igual a 0 indica condição inativa enquanto que o valor do bit igual a 1 indica condição ativa.
Grupos de variáveis de sistema¶
Dentro deste universo os endereços foram agrupados conforme apresentado na tabela seguinte:
| Faixa de endereços | Tipo de informação |
| F 1..999 | Informações gerais de status, configuração e falha do controlador |
| F 1000..1099 | Informações gerais e específicas sobre o módulo alocado no slot 0 do controlador (normalmente o módulo processdor) |
| F 1100..1199 | Informações gerais e específicas sobre o módulo alocado no slot 1 do controlador. |
| F 1200..1299 | Informações gerais e específicas sobre o módulo alocado no slot 2 do controlador. |
| : | Estão previstos até 32 slots para o controlador utilzado. |
| F NN00..NN99 | Informações gerais e específicas sobre o módulo alocado no slot (NN-10) do controlador. |
| F 4100..4199 | Informações gerais e específicas sobre o módulo alocado no slot 31 do controlador. |
| F 4200..4500 | Reservado |
| F 4501..4799 | Area reservada para gerencia de acesso remoto ao sistema de arquivos |
| F 4850..4999 | Reservado |
Acesso a variáveis de sistema pelos canais de comunicação¶
Além do programa de aplicação do controlador, as variáveis de sistema podem ser acessadas por clientes externos via os recursos de comunicação disponíveis no controlador utilizado. Para cada protocolo de aplicação disponível no controlador o acesso as váriaveis é alocada de forma distinta.
Acesso a variáveis de sistema utilizando protocolo SCP-HI¶
Uma aplicação cliente pode acessar qualquer das variáveis de sistema utilizando o protocolo SCP-HI através do recurso de leitura de uma memória M especificando o endereço com valor negativo. Assim, se o cliente necessita obter por exemplo, o valor da versão da biblioteca de comunicação do PLC que está disponível na variável de sistema F14, está poderá ser obtida através da leitura de uma variável M com endereço -14. Ou seja:
F 14 = M -14
Acesso a variáveis de sistema utilizando protocolo MODBUS¶
Uma aplicação cliente pode acessar qualquer das variáveis de sistema utilizando o protocolo MODBUS (TCP ou RTU) através do recurso de leitura de um valor do tipo HOLDING REGISTER, acrescentando no endereço a ser obtido o offset 30000. Assim, se o cliente necessita obter por exemplo, o endereço de comunicação do controlador que está disponível na variável de sistema F20, este poderá ser obtido pelo cliente através de comando READ HOLDING REGISTER com endereço da variável igual a 30020. Ou seja:
F 20 = H 30020
Importante
Note que o offset especificado é relativo ao endereço real inserido no pacote MODBUS. Ou seja, a variável de sistema F1 é obtida com um comando MODBUS Read Holding Register especificando o endereço da variável igual a 30001.
Acesso a variáveis de sistema utilizando protocolo ASCII¶
O acesso às variáveis de sistema via o protocolo ASCII não é possível até a versão corrente de firmware dos controladores.
A tabela a seguir resume as formas de acesso às variáveis de sistema disponíveis.
| Tipo de acesso | Identificador | Endereço inicial | Endereço final |
| Via programa Ladder | F (System Vars) | 1 | 4999 |
| Via comunicação com protocolo SCP-HI | M (memória inteira 16 bits) | -1 | -4999 |
| Via comunicação com protocolo MODBUS | H (Holding Registers) | 30001 | 34999 |
| Via comunicação com protocolo ASCII | n.d. |