INÍCIO > Fórum > controladores SlimLine e Netsyst (LogicLab) > Atualização de E / S via FB ou imagem de processo
- Este tópico tem 4 respostas, 3 participantes e foi atualizado pela última vez 9 anos, 10 meses atrás da Sergio Bertana.
-
autorPublique
-
Abril 26, 2011 em 10: 38 am #35000Anônimoinativo
Estou trabalhando com uma Slim Line e um terminal Weintek conectado via Modbus ethernet.
Trabalhando no meu projeto me deparo com essa dúvida, o que muda entre gerenciar o I / O do sistema através da imagem do processo, e então apontar a variável de entrada como% IX3.1 por exemplo e a variável de saída como% QX1.0 por exemplo. XNUMX e, em vez disso, gerenciá-los por meio do bloco de funções get / set do I / O?
Talvez a diferença seja que se eu ativar uma saída através do bloco funcional ela será ativada imediatamente (além do 300us para executar o comando), enquanto se eu gerenciá-la na imagem do processo ela será ativada no final da tarefa plc?
Em caso afirmativo, a que tarefa as imagens do processo se referem, à lenta ou à posterior?
Abril 26, 2011 em 10: 45 am #36714Sergio BertanaAdministrador do fórumA pergunta é interessante e dá a oportunidade de esclarecer como o sistema Slim Line atualiza o I / O.
Todos os módulos de E / S lógicos conectados ao módulo da CPU são atualizados automaticamente (imagem do processo) e mapeados nas tabelas% IX e% QX no tarefa lenta. As entradas são adquiridas antes e as saídas são gerenciadas após a execução do programa do usuário. Portanto, a imagem do status de um I / O é válida para toda a execução da tarefa lenta.
Para o tarefa de volta, é criada uma imagem de processo "paralelo" que relata o estado das entradas antes da execução e gerencia as saídas após a execução do programa do usuário, esta "imagem" do estado de um I / O também é válida para toda a execução da tarefa de volta. Aviso! o gerenciamento da mesma saída lógica tanto na tarefa lenta como na volta cria desalinhamentos entre as duas tarefas e è da evitare.
em tarefa rápida se você deseja gerenciar o I / O na velocidade de execução da tarefa, é necessário adquirir seu valor e gerenciar sua ativação com os FBs apropriados. Se você usar aqueles mapeados na tabela% IX e% QX, eles ainda serão atualizados na velocidade de execução da tarefa lenta. Aviso! a execução da tarefa rápida interrompe a execução da tarefa lenta, portanto agindo sobre as variáveis% IX e% QX "suja" a imagem do processo da tarefa lenta.
O uso dos FBs de gerenciamento de E / S, como você disse, permite adquirir e gerenciar diretamente os módulos de E / S, independentemente da imagem do processo. Aviso! o gerenciamento de um módulo de saída deve ser feito considerando que a tarefa lenta gerenciará a imagem do processo, pois poderia definir nas saídas um valor diferente do definido pelo FB fazendo com que as saídas pisquem.
Abril 26, 2011 no 1: 26 pm #36715Sergio BertanaAdministrador do fórumCom relação ao gerenciamento de E / S analógicas, os FBs apropriados devem ser usados. É possível inserir os FBs indiferentemente em todas as tarefas, mas se não for em casos excepcionais, o meu conselho é inserir a chamada no tarefa de volta.
Também é possível adquirir uma entrada e / ou gerenciar uma saída em um módulo analógico em uma tarefa e adquirir outra entrada e / ou gerenciar outra saída do mesmo módulo em outra tarefa.
Se um valor de entrada analógica é usado em várias tarefas, ele é adquirido na tarefa executada mais rapidamente e o valor adquirido na outra tarefa é usado, sem executar o FB novamente.
Junho 27, 2014 em 11: 27 pm #38296FabioparticipanteNão entendo por que os exemplos como FBOnOffCycle não mostram as mudanças de entradas na simulação ou tentando alimentar o terminal DI00 da CPU. Achei que, declarando% XI0.0, seria suficiente para a entrada ser lida sem ter que adicionar FBs de leitura apropriados. Estou fazendo algo errado ?
Junho 28, 2014 em 6: 20 am #38297Sergio BertanaAdministrador do fórumComo 16 módulos podem ser conectados ao barramento de extensão do módulo da CPU (endereços de 0 a 15), as E / S do módulo da CPU são endereçadas com o endereço do módulo 255. Portanto, se você usar o mapeamento da imagem do processo, você deve mapear as entradas como % IX255.0,% IX255.1,… e saídas como% QX255.0,% QX255.1,… Se você gerenciar a E / S diretamente com os blocos de função relativos, você deve definir o endereço do módulo 255.
Atenção, esta regra não se aplica aos módulos da CPU NetlogIII, nesse caso, as E / S do módulo da CPU são mapeadas para o endereço 0.
A razão para esta diferença é que a forma NetlogIII é baseado em um Módulo de CPU OEM, que já possui E / S com fio (endereço do módulo 255). A parte física do hardware de I / O nada mais é do que um Módulo de expansão 20 I / O (Com endereço 0) conectado ao barramento de extensão do módulo da CPU. Quaisquer outros módulos de expansão conectados ao barramento automaticamente levarão endereços de 1 para 15.
-
autorPublique
- Você deve estar logado para responder a este tópico.