O bloco funcional Datalogger permite ao usuário criar seus próprios registros de dados e gravar em arquivos de log no cartão de memória ou na memória interna presente na CPU. Os arquivos são gerados em um diretório específico do cartão de memória ou na memória interna da CPU no formato CSV, permitindo a visualização em editores de texto e planilhas.
1. Adicionar biblioteca LibDatalogger
Com o projeto criado, na árvore de projeto dê dois cliques em Library Manager:
Na aba Library Manager que abrirá clique em Adicionar Biblioteca.
A janela Adicionar Biblioteca abrirá. Siga o caminho da imagem abaixo e clique em Ok.
Com a biblioteca LibDatalogger adicionada, será possível adicionar o bloco Datalogger da imagem abaixo:
2. Como declarar
Este é um exemplo de como declarar e chamar a função em texto estruturado:
2.1. Parâmetros de entrada
ENABLE
O parâmetro ENABLE habilita ou desabilita o bloco funcional. O parâmetro é do tipo BOOL e assume os valores TRUE e FALSE para ligado e desligado respectivamente.
FILE_NAME
O parâmetro FILE_NAME é do tipo STRING e define o nome do arquivo (sem o .csv) e permite um valor de até 20 caracteres. (caso o parâmetro possua mais de 20 caracteres, o bloco considerará apenas as 20 primeiras caracteres).
STORAGE
Esse parâmetro é do tipo DATALOGGER_STORAGE e define o dispositivo onde os registros serão armazenados. O valor INTERNAL_MEMORY armazenará os dados na memória interna da CPU e o valor MEMORY_CARD armazenará os dados no cartão de memória (quando inserido). No Nexto Xpress, o valor USB_MASS_STORAGE salva os dados no dispositivo conectado na porta USB.
FILE_RECORDS
Parâmetro do tipo UINT que define o número de registros que serão escritos no arquivo. Intervalo de valores permitidos: de 100 até 65535. Esse parâmetro é válido somente para o modo contínuo.
NUMBER_OF_FILES
Parâmetro do tipo UINT cuja função é definir o número máximo de arquivos a serem armazenados. Intervalos permitidos: de 1 até 65535.
MODE
Este parâmetro do tipo DATALOGGER_MODE pode assumir dois valores:
CONTINUOUS_MODE: Os dados são registrados e escritos no arquivo de log continuamente em um intervalo de amostragem definido pelo usuário. O número de registros por arquivo é de no máximo 65535 (FILE_RECORDS) e no mínimo 100, sendo o limite de arquivos (NUMBER_OF_FILES) limitado pela memória ou em 65535 arquivos, que é o valor máximo que a variável pode assumir. Esse modo suporta a funcionalidade CIRCULAR, que será explicada posteriormente.
TRIGGER_MODE: Idem ao modo contínuo, porém os dados serão escritos no arquivo de log somente na ocorrência de um trigger. Ao ocorrer um trigger, um novo arquivo é criado, onde serão escritos os registros anteriores e posteriores à ocorrência, conforme definição do usuário. É possível armazenar 2001 registros por arquivos, ou seja, 1000 registros correspondentes ao TRIGGER_BEFORE, 1000 ao TRIGGER_AFTER e mais 1 no momento do trigger. No modo TRIGGER, o número máximo de arquivos (NUMBER_OF_FILES) também será limitado pelo espaço de memória e limite da variável, que é de 65535 arquivos, isso se deve ao fato de que cada borda de subida na entrada TRIGGER cria um novo arquivo. Esse modo também suporta a funcionalidade CIRCULAR.
CIRCULAR
Parâmetro do tipo BOOL que habilita o modo circular. O mesmo pode assumir os valores TRUE e FALSE para habilitado e desabilitado respectivamente. O modo circular possui a funcionalidade de, após atingir a quantidade máxima de arquivos, reabrir o primeiro arquivo e sobrescrevê-lo, ou seja, a aplicação fica sempre gravando de forma a manter a mesma quantidade de arquivos, sendo assim, circular.
TRIGGER_BEFORE
Do tipo UINT, define o número de registros anteriores à ocorrência do disparo do trigger que devem ser escritos no arquivo. Intervalo de valores permitidos: de 1 até 1000. Parâmetro válido apenas para o modo trigger.
TRIGGER_AFTER
Do tipo UINT, define o número de registros posteriores à ocorrência do disparo do trigger que devem ser escritos no arquivo. Intervalo de valores permitidos: de 1 até 1000. Parâmetro válido apenas para o modo trigger.
TRIGGER
Entrada do disparo externo, ativado por uma borda de subida. Tipo BOOL.
REC_INTERVAL
Do tipo TIME, define o Intervalo em que os dados serão registrados. Para o modo TRIGGER, o valor deve ser ? 10ms e para o modo CONTÍNUO o valor deve ser ? 100ms.
COMMA_DELIMITER
Parâmetro do tipo BOOL, quando seu valor é TRUE as colunas do aquivo no formato CSV são delimitadas por vírgulas e o ponto decimal é um ponto. Caso contrário (valor FALSE), as colunas do arquivo no formato CSV são delimitadas por ponto e vírgula, e o ponto decimal é uma vírgula.
FILE_HEADER
Do tipo STRING, define os Cabeçalhos dos dados que serão armazenados no arquivo. Campo de preenchimento obrigatório, com os cabeçalhos separados por ponto e vírgula. O número máximo de caracteres suportado por esta entrada é de 3307.
INPUT1...INPUTN, N?256
Tipo REAL. Entrada de dados. O Datalogger suporta até 256 entradas de dados.
2.2. Parâmetros de saída
DONE
Esse parâmetro do tipo BOOL retorna TRUE caso a função foi executada e FALSE se a função não foi executada.
BUSY
Do tipo BOOL assume TRUE se a função está registrando os dados na memória e FALSE se a função não está registrando os dados na memória, ou entrando no estado de erro.
ERROR
Parâmetro que retorna TRUE caso ocorra um erro ou a função seja abortada e FALSE quando não há nenhum erro. Parâmetro do tipo BOOL.
STATUS
Indica o status do Datalogger. Tipo DATALOGGER_STATUS.
CURRENT_RECORDS
Do tipo UDINT, indica o número de registros desde o início do processo.
MISSED_TRIGGERS
Contador de disparos ignorados pelo Datalogger durante período em que a função está funcionando no modo trigger. Tipo UDINT.
3. Acessando o arquivo de log
Após compilar o código para o CLP, para acessar o arquivo de log no computador basta ir em "Device" -> "Arquivos" e na parte de Execução, selecionar "Internal Memory" caso tenha salvo em memória interna e "Memory Card" caso tenha salvo em cartão de memória. Dentro da pasta haverá outra pasta chamada "Datalogger" e dentro dessa pasta estarão os logs. Para transferi-los para o computador, selecione o diretório desejado em Host e clique em "Carreg".
Após isso, seu arquivo de log deverá estar no diretório selecionado! Para abri-lo, será necessário um editor de tabelas como o Microsoft Excel ou similar.
Comentários
0 comentário
Por favor, entre para comentar.