O espaço de endereços da unidade

Todo ponto que uma unidade publica sob Process.Model.Unit, o tipo e o significado dele, quais pontos são comandos graváveis, e o que um script da Logic pode ler dele.

Ver como Markdown

Toda unidade publica os dados de execução dela como endereços comuns da Logic, sob Process.<Model>.<Unit>, então dashboards, expressões da Logic, o servidor OPC UA embutido e o agente os alcançam sem encanamento extra. O ramo é navegado na página Logic, sob "De outras páginas" (De outras páginas), e em todo seletor de endereço. Renomear um modelo, uma unidade, um canal ou um campo de metadados substitui os endereços correspondentes e reescreve as referências textuais vivas; os arquivos gravados mantêm os nomes congelados na hora em que foram escritos. Os segmentos são os nomes higienizados: uma unidade chamada "Unidade 1" do modelo "Câmara climática" é endereçada como Process.Camara_climatica.Unidade_1.

Ramo O que ele expõe Gravável
Channels.<Channel> O valor vinculado ao vivo de cada canal, tipado como o canal declara. Um canal gravável (papel Somente escrita ou Leitura e escrita) é um ponto gravável pelo funil de escrita; uma origem que uma execução detém recusa todo outro escritor.
Procedure.<point> O estado da execução, um escalar por ponto (tabela abaixo). Não.
Commands.<command> Start, Hold, Resume, Stop, Abort e Comment. Sim: escrever despacha (tabela abaixo).
Next.<point> A área de preparação que o próximo Iniciar consome. Apenas os campos de metadados manuais.
Productivity.Today.<branch> e Productivity.Rolling.<branch> A projeção de produtividade da unidade para cada período. Não.

Canais

Um ponto de canal lê o valor por trás do vínculo da unidade, projetado no tipo de dado do canal, e se lê como um vazio quando o canal não tem vínculo ou a origem dele está indisponível. Num script da Logic, o ponto é uma projeção tipada somente leitura da tag ou da variável vinculada, nunca a tag em si: Value, ValueObject, ValueRaw, ValueScaled, ValueCalibrated, ValueLimited, ValueRounded, as conversões ValueToBool(), ValueToInteger(), ValueToReal(), ValueToString() e ValueToDateTime(), a qualidade State(), os carimbos SourceTimeStamp() e ApplicationTimeStamp(), Refresh(), Name e EngineeringUnit. Os membros da cadeia respondem por um vínculo de tag; um vínculo de variável responde o valor e o carimbo da aplicação.

Procedure

Todo ponto é calculado a partir da execução ao vivo e é lido com qualidade boa; um ponto que não tem nada a dizer se lê como um vazio.

Ponto Tipo Significado
Status Texto Preparing enquanto a unidade está reservada e nenhuma execução existe ainda, Idle enquanto nada a detém e, fora isso, o estado da execução: Running, Held, Saving, Completed, Aborted, Failed.
Running Booleano Estritamente o estado Em execução; nunca verdadeiro na preparação, na pausa, ao salvar nem na finalização.
Busy Booleano O intervalo ocupado inteiro: a reserva, Em execução, Pausada, Salvando e o fechamento final do arquivo da execução.
Verdict Texto OK, NOK, Indeterminate ou None. A evidência julgada continua legível depois de a execução terminar, até a próxima começar.
Mode Texto O modo da execução ativa, Instant, Temporal ou Controlled; um comando único (amostra, avaliar agora) também informa. Vazio quando ociosa.
ActiveProcedure Texto O nome da execução ativa ("Procedimento · Unidade"). Vazio quando ociosa.
SegmentIndex Inteiro O segmento atual do perfil temporizado, começando em 0. Vazio sem um perfil.
CycleIndex Inteiro O ciclo atual, começando em 0. Vazio quando ociosa.
CycleCount Inteiro O total de ciclos da execução (1 numa passagem única). Vazio quando ociosa.
Cycle Texto "2 / 10" numa execução cíclica; um vazio quando a execução não é cíclica, então uma leitura vinculada mostra a marca de vazio em vez de uma passagem única enganosa.
FailedCycles Inteiro Ciclos julgados NOK até agora. Vazio quando a execução não é cíclica.
SamplesEvaluated, SamplesOut, SamplesUnavailable, SamplesInvalid Inteiro Os contadores de evidência da avaliação, atualizados atomicamente pelo motor de avaliação. Vazio sem evidência julgada.
Elapsed Número decimal Segundos desde que a execução começou. Vazio quando ociosa.
StartedAt Data e hora Quando a execução ativa começou. Vazio quando ociosa.

Commands

Ler um ponto de comando responde "isto pode executar agora", então um Botão vinculado se desabilita sozinho; escrevê-lo despacha o comando pelo console de execução, registrado em diário com a origem da superfície que escreveu e gravado com a identidade de quem acionou. Um comando é uma chamada de serviço, nunca uma escrita de ponto enfileirada.

Ponto Lê verdadeiro quando Escrever
Start A unidade não está ocupada, o runtime aceita operações, o intertravamento está em Sem disparo e há um procedimento preparado. Inicia o procedimento preparado com os metadados preparados.
Hold Uma execução está Em execução e o procedimento dela é Temporizado. Congela a janela.
Resume Uma execução está Pausada e o intertravamento está em Sem disparo. Solta a pausa.
Stop Uma execução está Em execução. Encerra a execução como Concluída.
Abort Uma execução está Em execução ou Pausada. Encerra a execução como Abortada.
Comment Nunca: o ponto não tem leitura. Acrescenta o texto escrito como comentário à execução ativa, ou como nota pós-execução na última execução terminada da unidade, quando ela está ociosa. Uma unidade sem execução nenhuma recusa ("A unidade não tem execução para comentar."), e texto vazio também.

Todo comando lê falso enquanto a estação está recusando escritas (o runtime parado).

Next

Ponto Tipo Significado
Next.Procedure Texto O nome do procedimento preparado. Somente leitura aqui: preparar é feito no cartão Execução ou com o componente seletor de Procedimento.
Next.<Field> Texto Um ponto por campo de metadados que o procedimento preparado pergunta; o ramo se remodela quando a unidade é preparada de novo, e um campo de outro procedimento se lê como vazio. Um campo manual (de texto ou numérico) é um ponto de preparação gravável, que é o que um componente Input vinculado a ele escreve. Um campo sequencial é uma previsão somente leitura do identificador que o contador comporia agora; ler nunca o reserva.

A preparação vale para a estação inteira, é em memória e é transitória: ela zera quando a aplicação inicia e é consumida pelo Iniciar, não limpa por ele.

Productivity

Dois períodos, Today (desde a meia-noite local) e Rolling (a janela declarada no modelo ou na unidade), cada um com três ramos (Produtividade):

Ramo Pontos Tipo
Summary ProductivityPercent, YieldPercent, TypicalElapsedSeconds Número decimal; um vazio até o denominador existir.
Summary Finalized, OK, NOK, Indeterminate, Unclassified, Aborted, Failed Contagens inteiras.
Outputs.<key> Quantity, RatePerHour Número decimal; uma chave por quantidade nomeada, ou por procedimento produtivo quando o modelo não declara quantidade.
Procedures.<key> Quantity, RatePerHour e os pontos de resumo acima Como acima, por procedimento produtivo.

As chaves derivam do id estável e da unidade de saída congelada, não do nome de exibição, então uma renomeação nunca move uma expressão. Todo ponto é somente leitura, e a projeção é lida do índice de históricos, nunca dos arquivos de execução.

O que um script pode fazer

Scripts de variável, de alarme e de ação da Logic podem ler tudo o que está aqui: valores de canal, estado da execução, prontidão de comando, valores preparados e pontos de produtividade. Eles não podem despachar um comando, escrever um campo de preparação nem acrescentar um comentário; essas escritas pertencem aos consumidores explícitos de comando: os painéis de operação, os Botões, os Inputs e o seletor de Procedimento de um dashboard, a automação da unidade e as ferramentas do agente.