0% acharam este documento útil (0 voto)
643 visualizações59 páginas

Portugues 238 CLP

Enviado por

klewersoon
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
643 visualizações59 páginas

Portugues 238 CLP

Enviado por

klewersoon
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Traduzido do Inglês para o Português - www.onlinedoctranslator.

com

SoMachine V3.0
Diagnóstico do CLP M238

PLC_Diagnóstico.projeto
Guia de exemplo
04/2012 Básico

Intermediário

Especialista
EIO0000000901.00

www.schneider-electric.com
As informações fornecidas nesta documentação contêm descrições gerais e/ou
características técnicas do desempenho dos produtos aqui contidos. Esta
documentação não pretende substituir e não deve ser usada para determinar a
adequação ou confiabilidade desses produtos para aplicações específicas do usuário. É
dever de qualquer usuário ou integrador realizar a análise de risco, avaliação e teste
apropriados e completos dos produtos com relação à aplicação específica relevante ou
uso dos mesmos. Nem a Schneider Electric nem qualquer uma de suas afiliadas ou
subsidiárias serão responsáveis pelo uso indevido das informações aqui contidas. Se
você tiver alguma sugestão de melhorias ou alterações ou encontrou erros nesta
publicação, por favor, avise-nos.

Nenhuma parte deste documento pode ser reproduzida de qualquer forma ou por
qualquer meio, eletrônico ou mecânico, incluindo fotocópia, sem autorização expressa por
escrito da Schneider Electric.

Todos os regulamentos de segurança estaduais, regionais e locais pertinentes devem ser


observados ao instalar e usar este produto. Por motivos de segurança e para ajudar a garantir a
conformidade com os dados do sistema documentados, somente o fabricante deve realizar
reparos nos componentes.

Quando os dispositivos são usados para aplicações com requisitos técnicos de segurança, as
instruções relevantes devem ser seguidas.

A não utilização do software Schneider Electric ou software aprovado com nossos produtos de hardware
pode resultar em ferimentos, danos ou resultados operacionais inadequados.

A não observância desta informação pode resultar em ferimentos ou danos ao equipamento. ©

2011 Schneider Electric. Todos os direitos reservados.

2 EIO0000000901.00 04/2012
Índice

INFORMAÇÃO DE SEGURANÇA ················································ ··············································· ··5

SOBRE O LIVRO ··············································· ··············································· ···········7

1. DESCRIÇÃO············································· ··············································· ············13

1.1. Apresentação ··············································· ··························· 13

1.2. Funções usadas neste exemplo············································ ··············································· 14

1.3. Instalação de hardware················································ ··············································· ··············· 16

2. DESCRIÇÃO DO CONTEÚDO DO EXEMPLO········································· ············17

3. CRIAÇÃO DO PROJETO········································· ···································18

4. CRIAÇÃO E CONFIGURAÇÃO DE TAREFA DO EVENTO ······································ ········20

5. LIGAÇÃO DO CONTROLADOR I0 FAST INPUT········································ ···············24

6. GERENTE DE BIBLIOTECA············································ ··············································· ··25

7. PROGRAMA CFC, LD, OU ST········································ 26

7.1. Programa CFC············································· ··············································· ··························· 27

7.2. Programa LD·············································· ··············································· ····························· 34

7.3. Programa ST ··············································· ······························ 45

8. EXECUÇÃO DO EXEMPLO 48

8.1. Configuração de Tarefas MAST ··············································· ········ 48

8.2. Baixando o Exemplo no Controlador ········································· ····························· 50

8.3. Executando o Exemplo no Controlador ···································· 53

EIO0000000901.00 04/2012 3
4 EIO0000000901.00 04/2012
Informação de Segurança

Informação de Segurança

Informação importante
PERCEBER

Leia estas instruções com atenção e observe o equipamento para se familiarizar com o dispositivo
antes de tentar instalá-lo, operá-lo ou mantê-lo. As seguintes mensagens especiais podem aparecer ao
longo desta documentação ou no equipamento para alertar sobre riscos potenciais ou para chamar a
atenção para informações que esclarecem ou simplificam um procedimento.

A adição deste símbolo a uma etiqueta de segurança de Perigo ou Aviso


indica que existe um risco elétrico, que resultará em ferimentos pessoais
se as instruções não forem seguidas.

Este é o símbolo de alerta de segurança. Ele é usado para alertá-lo sobre possíveis riscos
de ferimentos pessoais. Obedeça a todas as mensagens de segurança que seguem este
símbolo para evitar possíveis ferimentos ou morte.

PERIGO
PERIGOindica uma situação de perigo iminente que, se não for evitada, vai
resultar emmorte ou ferimentos graves.

AVISO
AVISOindica uma situação potencialmente perigosa que, se não for evitada,pode resultar
emmorte ou ferimentos graves.

CUIDADO
CUIDADOindica uma situação potencialmente perigosa que, se não for evitada,pode resultar
emferimentos leves ou moderados.

CUIDADO
CUIDADO, usado sem o símbolo de alerta de segurança, indica uma situação
potencialmente perigosa que, se não for evitada,pode resultar emdanos ao equipamento.

OBSERVE
Os equipamentos elétricos devem ser instalados, operados, reparados e mantidos apenas por pessoal
qualificado. Nenhuma responsabilidade é assumida pela Schneider Electric por quaisquer
consequências decorrentes do uso deste material.

Uma pessoa qualificada é aquela que possui habilidades e conhecimentos relacionados à


construção e operação de equipamentos elétricos e instalação, e recebeu treinamento de
segurança para reconhecer e evitar os perigos envolvidos.

EIO0000000901.00 04/2012 5
Informação de Segurança

6 EIO0000000901.00 04/2012
Sobre o livro

Sobre o livro

Num relance

Escopo do Documento

Este documento descreve um dos exemplos SoMachine.


Como o exemplo descrito neste documento destina-se apenas a fins de aprendizado, ele não
deve ser executado nem testado em produtos que fazem parte de uma máquina ou processo.

Nota de validade

Este documento foi atualizado com o lançamento do SoMachine V3.0.

As características técnicas do(s) dispositivo(s) descrito(s) neste manual também aparecem online.
Para acessar essas informações on-line:

Etapa Ação
1 Vamos parawww.schneider-electric.com

2 NoProcurarcaixa na página inicial, digite um número de modelo. Não digite nenhum espaço em branco
no número do modelo. Para obter informações sobre um agrupamento de módulos semelhantes, você
pode usar os caracteres **; não use pontos ou xx's.

3 DebaixoTudo, cliqueProdutos → Folhas de dados do produtoe selecione o número do modelo que lhe
interessa.

4 Para salvar ou imprimir uma folha de dados como um arquivo .pdf, clique emExportar para PDF.

As características apresentadas neste manual devem ser as mesmas que aparecem online.
De acordo com nossa política de melhoria constante, podemos revisar o conteúdo ao longo
do tempo para melhorar a clareza e a precisão. Caso você veja uma diferença entre o
manual e as informações on-line, use as informações on-line como referência.

Documentos relacionados

Título da Documentação Número de referência

Guia de hardware do controlador lógico Modicon M238 EIO0000000016 (ENG);


EIO0000000017 (FRE);
EIO0000000018 (GER);
EIO0000000019 (SPA);
EIO0000000020 (ITA);
EIO0000000021 (CHS)

EIO0000000901.00 04/2012 7
Sobre o livro

Título da Documentação Número de referência

Guia do usuário do M238 ExecLoader EIO0000000374 (ENG);


EIO0000000737 (FRE);
EIO0000000738 (GER);
EIO0000000739 (SPA);
EIO0000000740 (ITA);
EIO0000000741 (CHS)
Guia de programação do controlador lógico Modicon EIO0000000384 (ENG);
M238 EIO0000000385 (FRE);
EIO0000000386 (GER);
EIO0000000387 (ITA);
EIO0000000388 (SPA);
EIO0000000389 (CHS)
Funções e variáveis do sistema do controlador lógico EIO0000000364 (ENG);
Modicon M238 M238 PLCSystem Library Guide EIO0000000757 (FRE);
EIO0000000758 (GER);
EIO0000000759 (SPA);
EIO0000000760 (ITA);
EIO0000000761 (CHS)
Guia de Exemplo de Tempo de CLP SoMachine V3.0 EIO0000000902 (ENG)

Informações relacionadas ao produto

Este documento e seu arquivo de projeto SoMachine relacionado concentram-se em


Funções e Blocos de Função específicos das bibliotecas Schneider fornecidas com o
SoMachine e em recursos específicos disponíveis no SoMachine se esses recursos estiverem
relacionados a essas bibliotecas. Eles destinam-se a ajudá-lo a desenvolver, testar,
comissionar e integrar software aplicativo de seu próprio projeto em sistemas de controle.

Destina-se a novos usuários do SoMachine que já possuem algum grau de experiência no


projeto e programação de sistemas de controle.

AVISO
OPERAÇÃO NÃO INTENCIONAL DO EQUIPAMENTO

- Use apenas software aprovado pela Schneider Electric para uso com este
- equipamento. Atualize seu programa aplicativo sempre que alterar a configuração do
hardware físico.
O não cumprimento destas instruções pode resultar em morte, ferimentos graves ou
danos ao equipamento.

8 EIO0000000901.00 04/2012
Sobre o livro

AVISO
PERDA DE CONTROLE
- O projetista de qualquer esquema de controle deve considerar os modos de falha potenciais dos
caminhos de controle e, para certas funções críticas de controle, fornecer meios para alcançar um
estado seguro durante e após uma falha no caminho. Exemplos de funções de controle críticas são
parada de emergência e parada por sobrecurso, falta de energia e reinicialização. Caminhos de
- controle separados ou redundantes devem ser fornecidos para funções de controle críticas.

- Os caminhos de controle do sistema podem incluir links de comunicação. Deve-se


considerar as implicações de atrasos de transmissão imprevistos ou falhas do link.

- Observe todos os regulamentos de prevenção de acidentes e as diretrizes de segurança locais.1


- Cada implementação deste equipamento deve ser individual e exaustivamente
testada quanto à operação adequada antes de ser colocada em serviço.

O não cumprimento destas instruções pode resultar em morte, ferimentos graves ou


danos ao equipamento.

1Para obter informações adicionais, consulte NEMA ICS 1.1 (última edição), "Diretrizes de

segurança para aplicação, instalação e manutenção de controle de estado sólido" e NEMA ICS
7.1 (última edição), "Padrões de segurança para construção e guia para seleção, Instalação e
operação de sistemas de acionamento de velocidade ajustável" ou seus equivalentes que regem
sua localização específica.

Antes de você começar

Os produtos especificados neste documento foram testados em condições reais de serviço.


Obviamente, seus requisitos de aplicação específicos podem ser diferentes daqueles assumidos
para este e quaisquer exemplos relacionados descritos neste documento. Nesse caso, você terá
que adaptar as informações fornecidas neste e em outros documentos relacionados às suas
necessidades específicas. Para fazer isso, você precisará consultar a documentação específica do
produto dos componentes de hardware e/ou software que você pode adicionar ou substituir
para quaisquer exemplos especificados nesta documentação. Preste atenção especial e cumpra
todas as informações de segurança, diferentes requisitos elétricos e padrões normativos que se
aplicam à sua adaptação.

AVISO
INCOMPATIBILIDADE REGULATÓRIA
Certifique-se de que todos os equipamentos aplicados e sistemas projetados estejam em
conformidade com todos os regulamentos e padrões locais, regionais e nacionais aplicáveis.

O não cumprimento destas instruções pode resultar em morte, ferimentos graves ou


danos ao equipamento.

O uso e a aplicação das informações aqui contidas requerem experiência no projeto e


programação de sistemas de controle automatizados. Somente o usuário ou integrador pode
estar ciente de todas as condições e fatores presentes durante a instalação e configuração,
operação e manutenção da máquina ou processo e, portanto, pode determinar a automação e
equipamentos associados e as respectivas seguranças e intertravamentos que podem ser eficaz
e devidamente utilizado. Ao selecionar a automação

EIO0000000901.00 04/2012 9
Sobre o livro

e equipamentos de controle, e qualquer outro equipamento ou software relacionado, para uma


aplicação específica, o usuário ou integrador também deve considerar quaisquer normas e/ou
regulamentos locais, regionais ou nacionais aplicáveis.

Algumas das principais funções de software e/ou componentes de hardware usados nas
arquiteturas propostas e exemplos descritos neste documento não podem ser substituídos sem
comprometer significativamente o desempenho de seu aplicativo. Além disso, tais substituições
ou alterações podem invalidar completamente quaisquer arquiteturas, descrições, exemplos,
instruções, diagramas de fiação e/ou compatibilidades propostos entre os vários componentes
de hardware e funções de software aqui especificados e na documentação relacionada. Você
deve estar ciente das consequências de quaisquer modificações, adições ou substituições. Um
risco residual, conforme definido pela EN/ISO 12100-1, Artigo 5, permanecerá se:

- é necessário modificar a lógica recomendada e se os componentes adicionados ou


modificados não estiverem devidamente integrados no circuito de controle.

- você não seguir as normas exigidas aplicáveis à operação da máquina, ou


se os ajustes e a manutenção da máquina não forem feitos corretamente (é
essencial seguir rigorosamente o cronograma de manutenção da máquina
prescrito).
- os dispositivos conectados a quaisquer saídas de segurança não possuem contatos ligados
mecanicamente.

CUIDADO
INCOMPATIBILIDADE DE EQUIPAMENTO

Leia e compreenda completamente toda a documentação do dispositivo e do software antes de


tentar substituir qualquer componente ou outras alterações relacionadas aos exemplos de
aplicação fornecidos neste documento.

O não cumprimento destas instruções pode resultar em ferimentos ou danos ao


equipamento.

Inicialização e teste

Antes de usar equipamentos elétricos de controle e automação após o projeto e instalação, a


aplicação e o sistema de segurança funcional associado devem ser submetidos a um teste de
inicialização por pessoal qualificado para verificar o correto funcionamento do equipamento. É
importante que sejam feitos arranjos para tais testes e que seja concedido tempo suficiente
para realizar testes completos e satisfatórios.

10 EIO0000000901.00 04/2012
Sobre o livro

CUIDADO
PERIGO DE OPERAÇÃO DO EQUIPAMENTO

- Verifique se todos os procedimentos de instalação e configuração foram concluídos.

- Antes que os testes operacionais sejam realizados, remova todos os blocos ou outros meios de retenção
temporários usados para remessa de todos os dispositivos componentes.

- Remova ferramentas, medidores e detritos do equipamento.

O não cumprimento destas instruções pode resultar em ferimentos ou danos ao


equipamento.

Verifique se o sistema completo, incluindo o sistema de segurança funcional, está livre de todos os
curtos-circuitos e aterramentos, exceto os aterrados instalados de acordo com os regulamentos locais.
Se o teste de tensão de alto potencial for necessário, siga as recomendações na documentação do
equipamento para ajudar a evitar ferimentos ou danos ao equipamento.

Operação e ajustes
Independentemente do cuidado exercido no projeto e fabricação do equipamento ou na seleção
e classificação dos componentes, existem perigos que podem ser encontrados se tais
equipamentos forem instalados e operados incorretamente.

Em algumas aplicações, como máquinas de embalagem, deve ser fornecida proteção adicional ao
operador, como proteção no ponto de operação. Isso é necessário se as mãos e outras partes do
corpo estiverem livres para entrar nos pontos de esmagamento ou em outras áreas perigosas onde
possam ocorrer ferimentos graves. Os produtos de software por si só não podem proteger um
operador contra ferimentos. Por esta razão, o software não pode substituir ou substituir a proteção
do ponto de operação.

AVISO
MÁQUINAS SEM PROTEÇÃO PODE CAUSAR FERIMENTOS GRAVES

- Não use este software e equipamentos de automação relacionados em


equipamentos que não tenham proteção de ponto de operação.
- Não toque em máquinas durante a operação.
O não cumprimento destas instruções pode resultar em morte, ferimentos graves ou
danos ao equipamento.

Certifique-se de que as seguranças apropriadas e os intertravamentos mecânicos/elétricos relacionados à


proteção do ponto de operação tenham sido instalados e estejam operacionais antes de colocar o
equipamento em serviço. Todos os intertravamentos e seguranças relacionados à proteção do ponto de
operação devem ser coordenados com o equipamento de automação relacionado e a programação de
software.

NOTA:A coordenação de seguranças e intertravamentos mecânicos/elétricos para


proteção de ponto de operação está fora do escopo dos exemplos e implementações
aqui sugeridos.

EIO0000000901.00 04/2012 11
Sobre o livro

Às vezes é possível ajustar o equipamento incorretamente e isso produz uma operação


insatisfatória ou insegura. Sempre use as instruções do fabricante como um guia para
ajustes funcionais. O pessoal que tem acesso a esses ajustes deve estar familiarizado com
as instruções do fabricante do equipamento e com o maquinário usado com o
equipamento elétrico.
Somente os ajustes operacionais realmente requeridos pelo operador da máquina devem ser
acessíveis ao operador. O acesso a outros controles deve ser restrito para ajudar a evitar
alterações não autorizadas nas características operacionais.

Comentários do usuário

Agradecemos seus comentários sobre este documento. Você pode entrar em contato conosco por e-mail
em techcomm@schneider-electric. com .

12 EIO0000000901.00 04/2012
1. Descrição

1. Descrição
1.1. Apresentação
Este exemplo apresenta as funções do sistema do controlador lógico M238. Essas funções
estão localizadas noSistema M238 PLCbiblioteca.
O programa do controlador é criado usando o software SoMachine.

Neste exemplo, essas funções do sistema são usadas para diagnosticar o status de um controlador
M238 no modo de operação normal.

Projeto SoMachine relacionado:PLC_Diagnóstico.projeto

Idiomas SoMachine suportados: - CFC -IL


- ST -FBD
- LD -SFC
Características principais: Funções do sistema do controlador lógico M238

Requisitos: Para usar este exemplo, o usuário deve ter:


-instalou o SoMachine V3.0 em um PC.

Download
& Monitoramento

PC com SoMachine controlador lógico M238

Observação:Como as funções do sistema do controlador são usadas no programa


deste exemplo,não execute este exemplo no modo SIMULATION.

EIO0000000901.00 04/2012 13
1. Descrição

1.2. Funções usadas neste exemplo


As Funções usadas neste exemplo estão listadas abaixo, agrupadas por biblioteca:

- Sistema M238 PLCbiblioteca (Schneider Electric)

Essas funções do sistema são específicas para cada controlador. No caso de algumas
dessas funções, cada controladorSistema PLCbiblioteca apresenta suas próprias
versões dessas funções; por exemplo, oSistema M238 PLCbiblioteca tem um
IsFirstMastColdCycleBloco de funções que tem a mesma finalidade que o
HMI_IsFirstMastColdCycleFunção doXBT PLCSystembiblioteca.

Função Descrição Localização no Assistente de entrada

Obter nível de bateria Retorna a carga de energia restante da bateria

GetBootProjectStatus Retorna o status do projeto de inicialização

Retorna o número de eventos externos


GetEventsNumber
detectados

Retorna informações sobre o firmware, a


GetFirmwareVersion
inicialização e as versões do coprocessador

GetHardwareVersion Retorna a versão do hardware

GetLastStopCause Retorna a causa da última parada

GetLocalIOSstatus Retorna o status de E/S incorporada


Chamadas de Módulo - { } SEC - Leitura
GetPlcFault Retorna erros detectados na E/S do controlador

GetRightBusStatus Retorna o status do barramento de expansão

GetSerialNumber Retorna o número de série do controlador

Retorna o status de curto-circuito nas


GetShortCutStatus
saídas incorporadas

Indica se o ciclo é o primeiro ciclo de partida a frio


IsFirstMastColdCycle
MAST

IsFirstMastCycle Indica se o ciclo é o primeiro ciclo de início do MAST

Indica se o ciclo é o primeiro ciclo de partida a quente


IsFirstMastWarmCycle
MAST

InhibitBatLowLed Desativa ou reativa o LED de bateria fraca


Chamadas de Módulo - { } SEC - Gravação
ResetEventsNumber Redefine o número de eventos

Observação:As outras funções doSistema M238 PLCbiblioteca são usados no exemplo


descrito noGuia de Exemplo de Tempo de CLP SoMachine V3.0.

14 EIO0000000901.00 04/2012
1. Descrição

Consulte a ajuda online do SoMachine.


Observação:No restante deste documento, a frase anterior o instrui a consultar a ajuda on-line
do SoMachine, acessível por meio de seu botão de ajuda no canto superior direito.

Consulte a ajuda on-line do SoMachine para obter informações detalhadas sobre essas
funções: Descrição da função, representação gráfica, descrição das variáveis de E/S e
muito mais.

Para instalar essas bibliotecas em seu próprio projeto, consulteGerenciador de Biblioteca (consulte a
página 25).

EIO0000000901.00 04/2012 15
1. Descrição

1.3. Instalação de hardware


Dispositivos necessários

1
USB 3

2a Controlador
ou Pr.
2b Porta

Nº Designação Referência Uso ou Descrição


1 Software SoMachine MSD CHNLMUA Software SoMachine, licença de 1 estação, instalado em um PC

2a Porta terminal/USB TCS XCN AM UM3P Da porta USB mini B na base Modicon M238 à porta USB tipo A
cabo de porta no terminal do PC para programação e atualização de firmware;
comprimento: 3 m (10 pés)

2b Cabo de programação BMX XCA USB H018 Igual ao TCS XCN AM UM3P, mas com duas conexões de
aterramento ao longo do cabo; comprimento: 1,8 m (6 pés)

3 Controlador M238 TM238 ••••••••• Controlador lógico básico compacto com 24 I/O (bateria removível a ser
encomendada separadamente: TSX PLP 01)

Por favor, consulte oGuia de hardware do controlador lógico Modicon M238para a configuração
de hardware deste dispositivo.

16 EIO0000000901.00 04/2012
2. Descrição do Conteúdo do Exemplo

2. Descrição do Conteúdo do Exemplo


No SoMachine, a configuração do exemplo é feita com o seguinte dispositivo:
- 1 Controlador lógico:TM238LFDC24DT
O programa do controlador M238 é composto pelos seguintes itens específicos:

- Gerente de Biblioteca:Lista das bibliotecas vinculadas aos programas deste exemplo.

- Programa CFC:Contém o código-fonte que usa as funções do sistema para


diagnosticar o Controlador Lógico. Este é o programa padrão, pois é chamado
pela tarefa MAST do controlador.
- Programa LD:Tradução do programa CFC para a linguagem LD. Para executar
este programa no controlador, altere a POU chamada pela tarefa MAST do
controlador dePLC_Diag_CFCparaPLC_Diag_LD.
- Programa EVENT_PROGRAM_ST:Este programa vazio, em linguagem ST, destina-
se apenas a ser executado pela tarefa EVENT_TASK.
- programa ST:Tradução do programa CFC para a linguagem ST. Para executar
este programa no controlador, altere a POU chamada pela tarefa MAST do
controlador dePLC_Diag_CFCparaPLC_Diag_ST.
- Configuração da tarefa: A tarefa MAST padrão, chamada ciclicamente a cada 20ms,
mais uma tarefa EVENT_TASK, acionada pelo evento externo configurado para oI0
entrada rápida.

- Funções incorporadas:Configuração de um evento externo nas bordas de subida


e descida doI0entrada rápida.

O conteúdo do exemplo, visível noDispositivospainel do Programa aba:

EIO0000000901.00 04/2012 17
3. Criação do Projeto

3. Criação do Projeto
As etapas listadas na tabela a seguir descrevem como criar o projeto SoMachine e como
configurar os dispositivos usados neste exemplo. Nenhum detalhe é fornecido aqui, pois
supõe-se que você já conheça os comandos básicos do SoMachine.

Etapa Ação
1 NoCriar nova máquinaparte deCasaguia, selecioneComece com um projeto vaziopara criar
um novo projeto SoMachine.
Dê a este novo projeto o seguinte nome:PLC_Diagnóstico.
2 NoConfiguraçãoguia, adicione um controlador lógico TM238LFDC24DT.

Observação:Os detalhes do controlador selecionado são exibidos naEm formaçãoseção da


SoMachine.

Versão do controlador SoMachine: Define a versão do controlador selecionado; é


exibido noEm formaçãoseção da SoMachine.
Versão do firmware do controlador de destino: Define a versão do firmware do seu controlador. Esta versão é
mostrada quando você seleciona o nó do seu controlador, conforme mostrado emBaixando o exemplo para o
controlador (consulte a página 51).

Para fins de compatibilidade entre uma versão do controlador SoMachine e uma versão de firmware do
controlador de destino, apenas os três primeiros números de uma versão devem ser idênticos. Na imagem
anterior, o2.0.30.13A versão do controlador SoMachine é compatível com qualquer
2.0.30.••versão de firmware do controlador de destino.

Para cada modelo de controlador, o SoMachine apresenta apenas a versão mais recente disponível. Se
você verificar o -Exibir todas as versões (somente para especialistas)opção, o SoMachine listará todas
as versões de firmware de controlador suportadas. No entanto, uma boa prática consiste em usar a
versão mais recente disponível e atualizar o firmware do seu controlador, se necessário. Por favor,
consulte oGuia do usuário do M238 ExecLoader.

18 EIO0000000901.00 04/2012
3. Criação do Projeto

Etapa Ação
3 Renomeie este controlador paraM238_Controller.

4 Salve seu novo projeto.

EIO0000000901.00 04/2012 19
4. Criação e Configuração de Tarefas de Eventos

4. Criação e Configuração de Tarefas de Eventos


As etapas listadas na tabela a seguir descrevem como criar e configurar um Tarefa
de evento. Esta tarefa é necessária para testar oGetEventsNumbere
ResetEventsNumberfunções.
Para acionar issoTarefa de evento, um evento externo é configurado nas bordas de subida e
descida doI0entrada rápida do controlador M238.

Etapa Ação
1 NoConfiguraçãoguia, clique duas vezes noM238_Controller. Isso
abre oParâmetrospainel de configuração deste controlador.
2 No painel esquerdo:
- Selecione osFunções incorporadasgrupo.
- Selecione o item de E/S.

3 NoConfiguração de E/Sguia, configure oI0entrada da seguinte forma:

Para obter essa configuração, siga estas etapas:


- Clique duas vezes noNãovalor doEntradas►I0►Eventoparâmetro.
- Na lista suspensa exibida, selecioneAmbas as bordas.
- Clique fora deste novo valor ou pressione o botãoDIGITARchave, para validá-lo.

Observação:Como esta entrada está configurada emAmbas as bordas, qualquer borda ascendente ou
descendente noI0a entrada rápida acionará um evento externo no controlador.

- Clique duas vezes no0,004valor doEntradas►I0►Filtro de rejeiçãoparâmetro.


- Na lista suspensa exibida, selecione1.2.
- Clique fora deste novo valor ou pressione o botãoDIGITARchave, para validá-lo.

Observação:esteFiltro de rejeiçãoO parâmetro, cujo valor é expresso em milissegundos,


representa a duração do filtro anti-salto aplicado a esta entrada rápida.

20 EIO0000000901.00 04/2012
4. Criação e Configuração de Tarefas de Eventos

Etapa Ação
4 Clique noIO Resumir… botão localizado no canto inferior direito do painel central.

oResumo do pedido de inserçãojanela que aparece mostra que oI0entrada do controlador foi
afetada para umEvento.

5 Clique emOKpara fechar oResumo do pedido de inserçãojanela.

6 Vou aoDispositivospainel doProgramaaba.


7 Crie uma nova POU, em linguagem ST, chamadaEVENT_PROGRAM_ST.

Após a criação desta POU, ela é aberta automaticamente pela SoMachine.

Observação:A princípio, este programa está vazio. Neste exemplo, ele permanecerá vazio porque sua única
finalidade consiste em fornecer umTarefa de eventocom um programa a ser executado.

EIO0000000901.00 04/2012 21
4. Criação e Configuração de Tarefas de Eventos

Etapa Ação
8 Crie uma nova tarefa:

- Expanda o conteúdo doM238_Controller (TM238LFDC24DT)item.


- Clique com o botão direito do mouse noConfiguração da tarefaitem.

- NoAdicionar objetoparte do menu contextual que aparece, selecione oTarefa…


comando.

- NoAdicionar tarefajanela que aparece, escreva oNomedesta nova tarefa:


EVENT_TASK.
- Clique emOKpara validar a criação desta nova tarefa.

22 EIO0000000901.00 04/2012
4. Criação e Configuração de Tarefas de Eventos

Etapa Ação
9 Clique duas vezes noEVENT_TASKtarefa e configure-a da seguinte forma:

Para obter essa configuração, siga estas etapas:


- Mudar oModelodesta tarefa deCíclicoparaExterno.
- Verifique se oEvento externoé igual aI0; se não for esse o caso, altere paraI0.
Observação:Com esta configuração, oEVENT_TASKtarefa será executada cada vez que o
evento configurado para oI0entrada rápida do controlador(veja a página 20)é acionado.

- Clique noAdicionar POU comando.

NoAssistente de entradajanela que aparece:


- Selecione osEVENT_PROGRAM_STprograma.
- Clique emOK.

EIO0000000901.00 04/2012 23
5. Fiação da entrada rápida I0 do controlador

5. Fiação da entrada rápida I0 do controlador


Antes de ligar o controladorI0entrada rápida, você deve primeiro consultar oGuia de hardware do
controlador lógico Modicon M238.

O diagrama a seguir é uma adaptação doDiagrama de fiação de entrada rápida, dado noGuia
de hardware do controlador lógico Modicon M238, ao uso feito por este exemplo das entradas
rápidas do controlador.

(1) Fusível rápido 0,5 A

Neste diagrama, o botão de pressão conectado aoI0entrada rápida é usada para gerar pulsos. Cada
borda ascendente ou descendente desses pulsos será transformada em umI0evento externo.

24 EIO0000000901.00 04/2012
6. Gerenciador de Biblioteca

6. Gerenciador de Biblioteca

As etapas listadas na tabela a seguir descrevem como adicionar e/ou verificar a lista das
bibliotecas vinculadas a este exemplo.

Etapa Ação
1 Selecione osProgramaaba.
NoDispositivosvisualização em árvore, clique duas vezes noGerenciador de Bibliotecapara abrir a
lista das bibliotecas vinculadas aoInscriçãosoftware deste exemplo.

2 Verifique se oSistema M238 PLCbiblioteca já está vinculada, conforme mostrado abaixo:

Observação:Esta biblioteca éacinzentadoinformar que foi automaticamente vinculado ao


programa ao adicionar o Controlador M238 ao projeto e que não pode ser removido.

EIO0000000901.00 04/2012 25
7. Programa CFC, LD ou ST

7. Programa CFC, LD ou ST
Cada um dos três capítulos a seguir descreve como criar o programa usado no
exemplo. Escolha o idioma do seu programa (CFC, LD ou ST) e vá para o capítulo
correspondente:
• Programa CFC .............................................. ....................................... 27
• Programa LD .............................................. ......................................... 34
• Programa ST ................................................. .......................................... 45
Você só precisa escrever seu programa SoMachine em uma dessas três linguagens.

Além disso, cada um desses três capítulos começa com explicações sobre as dificuldades que você
pode enfrentar, se houver, na forma deetapas opcionais.

26 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

7.1. Programa CFC


Antes de instruí-lo sobre como escrever o programa CFC usado neste exemplo, a tabela
a seguir apresenta etapas opcionais que fornecem informações sobre como programar
na linguagem CFC.

Etapa Ação
1 Etapa opcional

Como adicionar os pinos EN/ENO em um bloco de funções

Neste exemplo, esses pinos são usados em três funções:IsFirstMastWarmCycle,


IsFirstMastColdCycle, eResetEventsNumber.
Esta etapa opcional indica como anexar a entrada de habilitação booleana adicional EN e a saída
booleana ENO (Enable Out) a qualquer função ou bloco de funções. Esses dois pinos são usados
para habilitar (TRUE) ou desabilitar (FALSE) a execução das Funções ou Blocos de Funções em
que são utilizados. Consulte a ajuda on-line do SoMachine: procure por ENO booleano adicional
.

- Clique com o botão direito do mouse, em seu programa CFC, em uma Função (ou Bloco de Função).

- No menu contextual que aparece, selecione oPT/ENOcomando.

Observação:Se você deseja remover esses pinos EN/ENO, selecione oPT/ENOcomando novamente.

EIO0000000901.00 04/2012 27
7. Programa CFC, LD ou ST

Etapa Ação
2 Etapa opcional

Como usar um elemento Selector para exibir componentes de estrutura

Neste exemplo, oSeletorelemento é usado para acessar os três componentes de uma variável
cujo tipo é oVERSÃO DO FIRMWAREestrutura:Versão Fw,Versão de inicialização, eVersão Asic
.
Esta etapa opcional indica como usar umSeletorelemento. Sua entrada é uma variável cujo tipo
deve ser uma estrutura. O número de suas saídas depende do número de componentes dessa
estrutura: oSeletorelemento tem uma saída por componente da estrutura de entrada. Consulte
a ajuda on-line do SoMachine: procure porSeletor.
Nas etapas a seguir, umSeletorelemento é usado para acessar os vários componentes da
saída estruturada doGetFirmwareVersionFunção (tipo de saída = VERSÃO DO FIRMWARE
estrutura):
- DeCaixa de ferramentaspainel, crie umSeletorelemento na planilha central.

- Determine o nome da estrutura que você deseja usar para issoSeletorelemento.


No exemplo dado, este elemento será usado com oGetFirmwareVersionsaída
doGetFirmwareVersionFunção. O tipo desta saída é uma estrutura cujo nome é
VERSÃO DO FIRMWARE.

- Clique no???doSeletorelemento.
- Clique no botão branco que aparece ao lado do???; isso exibirá oAssistente de
entrada.

28 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
- NoAssistente de entrada, selecione osVERSÃO DO FIRMWAREtipo de dados.

Observação:oDocumentaçãoseção exibe detalhes sobre os componentes do tipo de


dados selecionado.

Observação:Como regra geral, um tipo de dado usado por uma Função (ou Bloco de
Função) está localizado na mesma biblioteca que a Função (ou Bloco de Função). No
exemplo dado, oGetFirmwareVersionFunção e oVERSÃO DO FIRMWARE tipo de dados,
usado por esta Função, estão localizados noSistema M238 PLC biblioteca.

- Clique emOK.

- aperte oDIGITARchave para validar esta escolha.

- Conecte oSeletorentrada do elemento para oGetFirmwareVersionsaída do


GetFirmwareVersionFunção.

Agora, cada componente doGetFirmwareVersionA saída estruturada da função está


disponível como uma das saídas doSeletorelemento.

EIO0000000901.00 04/2012 29
7. Programa CFC, LD ou ST

Etapa Ação
3 Criação do POU: Crie uma nova POU em linguagem CFC, chamadaPLC_Diag_CFC.

Após a criação desta POU, ela é aberta automaticamente pela SoMachine.

30 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
4 Variáveis CFC: Na parte superior do editor CFC, declare as seguintes variáveis:
PROGRAMAPLC_Diag_CFC
VAR
(*Funções do Primeiro Ciclo do Mastro*)
q_xIsFirstMastCycle : BOOL;
q_xIsFirstMastWarmCycle : BOOL;
q_xIsFirstMastColdCycle : BOOL;

(*Função de versão de firmware*)


q_FirmwareVersion : VERSÃO DO FIRMWARE;
v_dwFwVersion : DWORD;
v_wBootVersion : PALAVRA;
v_wCoProcVersion : PALAVRA;

(*Função de versão de hardware*)


q_wHardwareVersion : PALAVRA;

(*Função de número de série*)


q_dwSerialNumber : DWORD;

(*Funções da bateria*)
q_wBatteryLevel : PALAVRA;
i_xInhibitBatLowLed : BOOL := FALSO;
q_wResultInhibitBattLed : PALAVRA;

(*Funções de eventos*)
q_dwEventNumber : DWORD;
v_xResetEventsNumber : BOOL := FALSO;
q_xResetEventsNumber : BOOL;

(*Função de causa da última parada*)


q_LastStopCause :STOP_WHY;

(*Função de Status do Projeto de Inicialização*)


q_BootProjectStatus :BOOT_PROJECT_STATUS;

(*Status de curto-circuito na função de saídas incorporadas*)


q_wShortCutStatus : PALAVRA;

(*Função de Status do Barramento de Expansão*)


i_Expansion Testado : RIGHTBUS_GET_STATUS;
q_wRightBusStatusGen : PALAVRA;
q_wRightBusStatus : PALAVRA;

(*Função de diagnóstico genérico de E/S do controlador*)


q_wPlcFault : PALAVRA;
v_xErrorIOExpansionBus : BOOL;
v_xErrorEmbeddedIO : BOOL;

(*Função de Status de E/S*)


q_IOSstatus :LOCAL_IO_GEN_STATUS;
END_VAR

EIO0000000901.00 04/2012 31
7. Programa CFC, LD ou ST

Etapa Ação
5 Programa CFC: Na parte inferior do editor CFC, implemente o seguinte programa:

32 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação

6 Ordenar por fluxo de dados

Ao terminar de implementar este programa CFC, execute as seguintes etapas para definir
corretamente a ordem de execução de seus blocos:

- Clique com o botão direito do mouse em um local vazio da planilha central.

- NoOrdem de Execuçãoparte do menu contextual, execute oOrdenar por fluxo de


dadoscomando.

EIO0000000901.00 04/2012 33
7. Programa CFC, LD ou ST

7.2. Programa LD
Antes de instruir você sobre como escrever o programa LD usado neste exemplo, a tabela a
seguir apresenta etapas opcionais que fornecem informações sobre como programar na
linguagem LD.

Etapa Ação
1 Etapa opcional

Como exibir títulos e comentários no idioma LD


- Selecione osOpções…comando doFerramentascardápio.

- Selecione, noOpçõesjanela, oEditor FBD, LD e ILseção.


- Se você deseja adicionar um título e/ou um comentário para cada rede LD, verifique o
- Mostrar título da redee/ou o -Mostrar comentário da redeopções, como mostrado
abaixo:

34 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
2 Etapa opcional

Como adicionar os pinos EN/ENO em um bloco de funções

Neste exemplo, esses pinos são usados em três funções:IsFirstMastWarmCycle,


IsFirstMastColdCycle, eResetEventsNumber.
Esta etapa opcional indica como anexar a entrada de habilitação booleana adicional EN e a saída
booleana ENO (Enable Out) a qualquer função ou bloco de funções. Esses dois pinos são usados
para habilitar (TRUE) ou desabilitar (FALSE) a execução das Funções ou Blocos de Funções em
que são utilizados. Consulte a ajuda on-line do SoMachine: procure por ENO booleano adicional
.

- NoVisãoparte deFBD/LD/ILmenu, selecione oVisualizar como diagrama de blocos de


funçõesmodo.

EIO0000000901.00 04/2012 35
7. Programa CFC, LD ou ST

Etapa Ação
- Selecione, em seu programa LD, a rede LD onde deseja adicionar um Bloco Funcional
(ou uma Função).
- NoFBD/LD/ILmenu, execute oCaixa de inserção com EN/ENOcomando.

36 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
- NoAssistente de entradajanela que aparece, selecione oBlocos de função categoria, se você
deseja adicionar um Bloco Funcional, ou oChamadas do Módulocategoria, se você deseja
adicionar uma função.

- Selecione o Bloco de Função (ou a Função) que deseja adicionar ao seu programa.

Na imagem a seguir, oResetEventsNumberFunção do Sistema M238 PLCbiblioteca


está selecionada. A localização desta função é dada em Funções usadas neste
exemplo (consulte a página 14):

- Clique emOK.

Isso adiciona o Bloco de Função (ou Função) selecionado ao seu programa, com os dois
pinos EN e ENO.
- NoVisãoparte deFBD/LD/ILmenu, agora você pode selecionar oVer como lógica ladderpara
retornar ao modo de visualização padrão.

EIO0000000901.00 04/2012 37
7. Programa CFC, LD ou ST

Etapa Ação
3 Etapa opcional

Como usar o comando Inserir caixa vazia


Às vezes, a Caixa Vazia criada peloInserir caixa vaziacomando não funciona com
uma função ou bloco de funções.
Neste exemplo, a Caixa Vazia não é compatível com oGetRightBusStatuse a
InhibitBatLowLedFunções.
Neste caso, deve-se usar oInserir caixacomando, em vez doInserir caixa vazia
comando.

Exemplo: Na imagem a seguir, oGetRightBusStatusA função é rejeitada por uma caixa


vazia; neste caso, oInserir caixacomando deve ser usado:

- Selecione, em seu programa LD, a rede LD onde deseja adicionar um Bloco Funcional
(ou uma Função).
- NoFBD/LD/ILmenu, execute oInserir caixacomando.

38 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
- NoAssistente de entradajanela que aparece, selecione oBlocos de função categoria, se você
deseja adicionar um Bloco Funcional, ou oChamadas do Módulocategoria, se você deseja
adicionar uma função.

- Selecione o Bloco de Função (ou a Função) que deseja adicionar ao seu programa.

Na imagem a seguir, oGetRightBusStatusFunção do Sistema


M238 PLCbiblioteca está selecionada:

- Clique emOK.

Isso adiciona o Bloco de Função (ou Função) selecionado ao seu programa.

EIO0000000901.00 04/2012 39
7. Programa CFC, LD ou ST

Etapa Ação
4 Criação do POU: Crie uma nova POU na linguagem LD, chamadaPLC_Diag_LD.

Após a criação desta POU, ela é aberta automaticamente pela SoMachine.

40 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
5 Variáveis LD: Na parte superior do editor LD, declare as seguintes variáveis:
PROGRAMAPLC_Diag_LD
VAR
(*Funções do Primeiro Ciclo do Mastro*)
q_xIsFirstMastCycle : BOOL;
q_xIsFirstMastWarmCycle : BOOL;
q_xIsFirstMastColdCycle : BOOL;

(*Função de versão de firmware*)


q_FirmwareVersion : VERSÃO DO FIRMWARE;
v_dwFwVersion : DWORD;
v_wBootVersion : PALAVRA;
v_wCoProcVersion : PALAVRA;

(*Função de versão de hardware*)


q_wHardwareVersion : PALAVRA;

(*Função de número de série*)


q_dwSerialNumber : DWORD;

(*Funções da bateria*)
q_wBatteryLevel : PALAVRA;
i_xInhibitBatLowLed : BOOL := FALSO;
q_wResultInhibitBattLed : PALAVRA;

(*Funções de eventos*)
q_dwEventNumber : DWORD;
v_xResetEventsNumber : BOOL := FALSO;
q_xResetEventsNumber : BOOL;

(*Função de causa da última parada*)


q_LastStopCause :STOP_WHY;

(*Função de Status do Projeto de Inicialização*)


q_BootProjectStatus :BOOT_PROJECT_STATUS;

(*Status de curto-circuito na função de saídas incorporadas*)


q_wShortCutStatus : PALAVRA;

(*Função de Status do Barramento de Expansão*)


i_Expansion Testado : RIGHTBUS_GET_STATUS;
q_wRightBusStatusGen : PALAVRA;
q_wRightBusStatus : PALAVRA;

(*Função de diagnóstico genérico de E/S do controlador*)


q_wPlcFault : PALAVRA;
v_xErrorIOExpansionBus : BOOL;
v_xErrorEmbeddedIO : BOOL;

(*Função de Status de E/S*)


q_IOSstatus :LOCAL_IO_GEN_STATUS;
END_VAR

EIO0000000901.00 04/2012 41
7. Programa CFC, LD ou ST

Etapa Ação
6 Programa LD: Na parte inferior do editor LD, implemente o seguinte programa:

42 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação

EIO0000000901.00 04/2012 43
7. Programa CFC, LD ou ST

Etapa Ação

44 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

7.3. Programa ST

Etapa Ação
1 Criação do POU: Crie uma nova POU em linguagem ST, chamadaPLC_Diag_ST.

Após a criação desta POU, ela é aberta automaticamente pela SoMachine.

EIO0000000901.00 04/2012 45
7. Programa CFC, LD ou ST

Etapa Ação
2 Variáveis ST: Na parte superior do editor ST, declare as seguintes variáveis:
PROGRAMAPLC_Diag_ST
VAR
(*Funções do Primeiro Ciclo do Mastro*)
q_xIsFirstMastCycle : BOOL;
q_xIsFirstMastWarmCycle : BOOL;
q_xIsFirstMastColdCycle : BOOL;

(*Função de versão de firmware*)


q_FirmwareVersion : VERSÃO DO FIRMWARE;
v_dwFwVersion : DWORD;
v_wBootVersion : PALAVRA;
v_wCoProcVersion : PALAVRA;

(*Função de versão de hardware*)


q_wHardwareVersion : PALAVRA;

(*Função de número de série*)


q_dwSerialNumber : DWORD;

(*Funções da bateria*)
q_wBatteryLevel : PALAVRA;
i_xInhibitBatLowLed : BOOL := FALSO;
q_wResultInhibitBattLed : PALAVRA;

(*Funções de eventos*)
q_dwEventNumber : DWORD;
v_xResetEventsNumber : BOOL := FALSO;
q_xResetEventsNumber : BOOL;

(*Função de causa da última parada*)


q_LastStopCause :STOP_WHY;

(*Função de Status do Projeto de Inicialização*)


q_BootProjectStatus :BOOT_PROJECT_STATUS;

(*Status de curto-circuito na função de saídas incorporadas*)


q_wShortCutStatus : PALAVRA;

(*Função de Status do Barramento de Expansão*)


i_Expansion Testado : RIGHTBUS_GET_STATUS;
q_wRightBusStatusGen : PALAVRA;
q_wRightBusStatus : PALAVRA;

(*Função de diagnóstico genérico de E/S do controlador*)


q_wPlcFault : PALAVRA;
v_xErrorIOExpansionBus : BOOL;
v_xErrorEmbeddedIO : BOOL;

(*Função de Status de E/S*)


q_IOSstatus :LOCAL_IO_GEN_STATUS;
END_VAR

46 EIO0000000901.00 04/2012
7. Programa CFC, LD ou ST

Etapa Ação
3 programa ST: Na parte inferior do editor ST, implemente o seguinte programa:
(*Funções do Primeiro Ciclo do Mastro*)
q_xIsFirstMastCycle:= IsFirstMastCycle();
E SEq_xIsFirstMastCycle ENTÃO
q_xIsFirstMastWarmCycle := IsFirstMastWarmCycle();
q_xIsFirstMastColdCycle FIM := IsFirstMastColdCycle();
SE

(*Função de versão de firmware*)


q_FirmwareVersion:=GetFirmwareVersion();
(*Configura cada membro de dados da versão de firmware em uma variável separada*)
v_dwFwVersion := q_FirmwareVersion.Versão Fw;
v_wBootVersion := q_FirmwareVersion.Versão de inicialização;
v_wCoProcVersion := q_FirmwareVersion.Versão Asic;

(*Função de versão de hardware*)


q_wHardwareVersion:=GetHardwareVersion();

(*Função de número de série*)


q_dwSerialNumber:=GetSerialNumber();

(*Funções da bateria*)
(*Voltagem da bateria Função*)
q_wBatteryLevel:= Obter nível de bateria();
(*Desativa ou reativa a exibição do indicador LED de bateria fraca (Batt)*) q_wResultInhibitBattLed:=
InhibitBatLowLed(Inibir:=i_xInhibitBatLowLed);

(*Funções de eventos*)
(*Função Obter Número de Eventos*)
q_dwEventNumber:=GetEventsNumber();
(*Redefinir Função de Número de Eventos*) E SE
v_xResetEventsNumber ENTÃO
q_xResetEventsNumber := ResetEventsNumber();
v_xResetEventsNumber := FALSO;
FIM SE

(*Função de causa da última parada*)


q_LastStopCause:=GetLastStopCause();

(*Função de Status do Projeto de Inicialização*)


q_BootProjectStatus:=GetBootProjectStatus();

(*Curto-Circuito na Função de Saídas Embutidas*)


q_wShortCutStatus:=GetShortCutStatus();

(*Função de Status do Barramento de Expansão*)


(*Diagnóstico de configuração do barramento de expansão*)
q_wRightBusStatusGen:=GetRightBusStatus(mascarar:=
RIGHTBUS_GET_STATUS.RIGHTBUS_GET_GEN_STATUS);
(*Diagnóstico do Módulo 1 do barramento de expansão*)
i_Expansion Testado:=RIGHTBUS_GET_STATUS.RIGHTBUS_GET_STATUS1;
q_wRightBusStatus:=GetRightBusStatus(mascarar:=i_Expansion Testado);

(*Função de diagnóstico genérico de E/S do controlador*)


q_wPlcFault:=GetPlcFault(); v_xErrorIOExpansionBus:=
NÃOq_wPlcFault.0; v_xErrorEmbeddedIO
:= NÃOq_wPlcFault.1;

(*Função de Status de E/S*)


q_IOSstatus:=GetLocalIOSstatus(Modo:=
LOCAL_IO_GET_STATUS.LOCAL_IO_GET_GEN_STATUS);

EIO0000000901.00 04/2012 47
8. Executando o Exemplo

8. Executando o Exemplo
8.1. Configuração da Tarefa MAST

Etapa Ação
1 NoDispositivosvista em árvore:

- Expanda o conteúdo doM238_Controller (TM238LFDC24DT)item.


- Clique duas vezes noMASTROtarefa doConfiguração da tarefaitem.
- Clique noAdicionar POU comando.

48 EIO0000000901.00 04/2012
8. Executando o Exemplo

Etapa Ação
2 NoAssistente de entradajanela que aparece:
- Selecione seu programa.

Na figura a seguir, o programa CFC descrito emPrograma CFC (ver página 27),
PLC_Diag_CFC, é selecionado:

3 Clique emOK.

Isso adiciona a POU selecionada à lista de programas executados pela tarefa MAST do
controlador.

EIO0000000901.00 04/2012 49
8. Executando o Exemplo

8.2. Baixando o exemplo para o controlador


As etapas listadas na tabela a seguir descrevem como fazer download do exemplo para o controlador
lógico. Se necessário, consulte a ajuda on-line da SoMachine para obter mais informações sobre
estas etapas: procure porConfigurações de comunicação.

Etapa Ação
1 Conecte o cabo de programação USB entre seu PC e o Controlador M238.
Por favor consulteInstalação de hardware (consulte a página 16), para referência e uso deste
cabo.

2 NoDispositivosvisualização em árvore, clique duas vezes noM238_Controller (TM238LFDC24DT)item para


abrir seu painel de configuração.

3 NoConfigurações de comunicaçãoguia deste painel.

- Clique noGateway-1nó
- Clique noDigitalizar rede botão
Se o controlador estiver ligado e conectado ao seu PC com o cabo de programação USB, ele será
detectado pelo SoMachine conforme mostrado abaixo:

Neste exemplo, oTM238LFDC24DT SN 015342controlador foi detectado.

50 EIO0000000901.00 04/2012
8. Executando o Exemplo

Etapa Ação
4 Selecione o nó deste controlador e clique no botãoDefinir caminho ativo botão.

Isso mostrará ao SoMachine o caminho para alcançar seu controlador.

Opção:Desmarque o -Modo online segurocaixa para evitar mensagens de validação durante


futuras modificações online.

Observação:A versão do firmware do seu controlador é exibida como oVersão de destino.

5 A seguinte janela aparecerá e solicitará que você confirme sua escolha:


- Leia a mensagem de perigo;
- Pressione em ambos<Alt>e<F>chaves para validar sua escolha e fechar esta janela;
- Ou, clique noCancelarbotão se não cumprir as indicações da mensagem de
perigo.

EIO0000000901.00 04/2012 51
8. Executando o Exemplo

Etapa Ação
6 Clique no Conecte-sebotão da barra de ferramentas para estabelecer uma conexão do SoMachine para
o controlador.

7a Se você baixar o projeto atual para o controlador pela primeira vez e se não houver
projeto no controlador, a seguinte janela será exibida:

Clique emSimpara baixar oInscriçãosoftware para o controlador.


7b Se você baixar o projeto atual para o controlador pela primeira vez e se houver
outro projeto no controlador, a seguinte janela será exibida:

Clique emSimpara baixar oInscriçãosoftware para o controlador.


7c Se você já baixou o projeto atual para o controlador, a seguinte janela aparece se você
trouxe novas modificações para este projeto:

- Selecione os -Entrar com downloadescolha.


Clique emOKpara baixar oInscriçãosoftware para o controlador.
7d Se você já baixou o projeto atual para o controlador, a conexão é imediata se você
não trouxe nenhuma modificação para este projeto.
8 Aguarde a conclusão da operação de download.
Uma vez que é fi terminado, a barra de status do SoMachine exibe o estado do controlador:
PARE
9 Clique no Começarbotão da barra de ferramentas para executar oInscriçãosoftware no
controlador.

O estado do controlador muda de PARE para CORRE

52 EIO0000000901.00 04/2012
8. Executando o Exemplo

8.3. Executando o exemplo no controlador


As etapas listadas na tabela a seguir descrevem como usar o exemplo, uma vez que tenha
sido baixado para o controlador.

Etapa Ação
1 NoDispositivospainel, clique duas vezes no seuPLC_Diagprograma para abri-lo (por exemplo, PLC_Diag_CFCse
você selecionou anteriormente este programa como o programa executado peloMASTRO tarefa do seu
controlador).

Este comando abre o programa no painel central do SoMachine; os valores online das variáveis
utilizadas por este programa também são exibidos, conforme mostrado abaixo:

2 Detectando o primeiro ciclo doe tarefa MAST usando o IsFirstMastCycle ,


IsFirstMastWarmCycle eIsFirstMastColdCycle Funções:
Neste exemplo, essas três funções são usadas da seguinte maneira:
- oIsFirstMastCycleA função é continuamente chamada para detectar o primeiro ciclo da
tarefa MAST. Esta função atualiza oq_xIsFirstMastCyclevariável: é definida como TRUE
somente durante o primeiro ciclo da tarefa MAST, depois é redefinida para FALSE.

- oIsFirstMastWarmCycleA função só é chamada durante o primeiro ciclo da tarefa


MAST (o anteriorq_xIsFirstMastCyclevariável é usada para habilitar ou desabilitar sua
chamada). Esta função atualiza oq_xIsFirstMastWarmCycle variável: é definido como
TRUE se o controlador foi iniciado eminício quentemodo.

- Da mesma forma, oIsFirstMastColdCycleA função só é chamada durante o primeiro


ciclo da tarefa MAST. Esta função atualiza oq_xIsFirstMastColdCycle variável: é definido
como TRUE se o controlador foi iniciado empartida a friomodo.

EIO0000000901.00 04/2012 53
8. Executando o Exemplo

Etapa Ação
Para testar essas funções, proceda da seguinte forma:

- Verifique se o valor deq_xIsFirstMastWarmCycleé igual a FALSO.


- Verifique se o valor deq_xIsFirstMastColdCycleé igual a TRUE: o controlador iniciou em
partida a friomodo (comportamento normal após uma operação de download).

- Clique no Parebotão da barra de ferramentas para parar oInscriçãosoftware no


controlador.

- NoConectadoscardápio, clique no botãoRedefinir quentecomando para forçar uminício quentedo


controlador.

- Clique emSimpara confirmar este comando.

- Clique no Começarbotão da barra de ferramentas para executar oInscriçãosoftware no


controlador.

- Verifique se o valor deq_xIsFirstMastWarmCycleé igual a TRUE: o controlador


iniciou eminício quentemodo por causa doRedefinir quentecomando.
- Verifique se o valor deq_xIsFirstMastColdCycleé igual a FALSO.
Para uma descrição dopartida a frioeinício quentemodos, consulte a ajuda on-line do
SoMachine: procureRedefinir quente, Reset Frio, ouComandando Transições de Estado.

54 EIO0000000901.00 04/2012
8. Executando o Exemplo

Etapa Ação
3 Getting o abeto do controlador mware, inicialização, coprocessador, e versões de hardware
usando oGetFirmwareVersion eGetHardwareVersion Funções:

Para testar essas funções, proceda da seguinte forma:

- NoDepurar/Assistirmenu, execute oHexadecimalcomando para alternar o modo de


exibição numérica deDecimalparaHexadecimal.

- Dividir o valor dov_dwFwVersionDWORD (32 bits) em quatro dados BYTE (4 × 8


bits).
- Converta cada um desses bytes em Decimal para obter a versão do firmware do controlador. Um
exemplo é dado abaixo:
v_dwFwVersão ...............16#02001E0D
Dados de 4 bytes .......................16#02 / 16#00 / 16#1E / 16#0D
Versão de 4 bytes.. ................... 2 / 0 / 30 / 13
Versão do firmware................. v2.0.30.13
Observação:Compare esta versão com a versão do firmware exibida ao selecionar o nó do seu
controlador, conforme mostrado emBaixando o exemplo para o controlador (consulte a página
51). Eles são idênticos.

- Dividir o valor dov_wBootVersionvariável WORD (16 bits) em dois dados BYTE (2 × 8


bits).
- Converta cada um desses bytes em Decimal para obter a versão de inicialização do controlador. Um
exemplo é dado abaixo:

v_wBootVersion ..............16#0104 Dados de 2


bytes .......................16#01 / 16#04 Versão de 2
bytes....... .............. 1 / 4
Versão de inicialização ......... v1.4

EIO0000000901.00 04/2012 55
8. Executando o Exemplo

Etapa Ação
- O valor dev_wCoProcVersionindica a versão do coprocessador do controlador.
Exemplo: 16#0058.
- O valor deq_wHardwareVersionindica a versão de hardware do controlador.
Exemplo: 16#0200.
4 Obtendo o número de série do controlador usando oGetSerialNumber Função: Para testar

esta função, proceda da seguinte forma:

- NoDepurar/Assistirmenu, execute oHexadecimalcomando para retornar o modo de


exibição numérica deHexadecimalparaDecimal.

- O valor deq_dwSerialNumberindica o número de série do controlador.


Exemplo: 15342.
Observação:Compare este valor com o Número de Série (notação: “S/N”) escrito no adesivo
de identificação do controlador. Eles são idênticos. Exemplo: "S/N: 015342”.

5 Obtendo o nível da bateria usando oObter nível de bateria Função: Para

testar esta função, proceda da seguinte forma:

- Confira o valor deq_wBatteryLevel:é uma porcentagem que varia de 0 (bateria vazia) a


100 (bateria totalmente carregada).
Observação:Se nenhuma bateria de backup externa (ref. TSX PLP 01) foi instalada em
seu controlador, entãoq_wBatteryLevelé igual a 0.

56 EIO0000000901.00 04/2012
8. Executando o Exemplo

Etapa Ação
6 Desativando e reativando o LED Batt usando oInhibitBatLowLed Função: Se uma bateria de

backup externa estiver instalada em seu controlador, remova-a conforme as instruções abaixo:

- Clique no Sairbotão da barra de ferramentas para desconectar o SoMachine do


controlador.

- Desligue o controlador.
- Leia a mensagem de perigo fornecida noInstalando e substituindo a bateria de
backup externaseção doGuia de hardware do controlador lógico Modicon M238.
- Remova a bateria de reserva externa conforme instruído nesta mesma seção do Guia de
hardware do controlador lógico Modicon M238.
- Ligue o controlador.
- Clique no Conecte-sebotão da barra de ferramentas para estabelecer uma conexão de
SoMachine ao controlador.
Para testar esta função, proceda da seguinte forma:

- Verifique se o vermelhoBataO LED do controlador está LIGADO.

- Altere o valor dei_xInhibitBatLowLedde FALSO para VERDADEIRO.


- Verifique se o vermelhoBataO LED do controlador está DESLIGADO.

- Verifique se o valor deq_wResultInhibitBattLedé igual a TRUE (operação bem


sucedida).
- Altere o valor dei_xInhibitBatLowLedde VERDADEIRO para FALSO.
- Verifique se o vermelhoBataO LED do controlador está LIGADO.

- Verifique se o valor deq_wResultInhibitBattLedé igual a TRUE (operação bem


sucedida).
Se você removeu anteriormente uma bateria de backup externa do seu controlador, instale-a conforme as
instruções abaixo:

- Clique no Sairbotão.
- Desligue o controlador.
- Instale a bateria de reserva externa conforme instruído noInstalando e substituindo a
bateria de backup externaseção doGuia de hardware do controlador lógico Modicon
M238.
- Ligue o controlador.
- Clique no Conecte-sebotão.

EIO0000000901.00 04/2012 57
8. Executando o Exemplo

Etapa Ação
7 Lendo e redefinindo o número de eventos usando oGetEventsNumber e
ResetEventsNumber Funções:
Para testar essas funções, proceda da seguinte forma:

- Usando o botão de pressão conectado aoI0entrada rápida do controlador, gere alguns


pulsos nesta entrada.
Observação:Este botão é descrito emFiação da entrada rápida I0 do controlador (consulte a
página 24).

- Observe o valor deq_dwEventNumber:cada pulso aumentou esse valor em dois (+1 para a
borda ascendente do pulso e +1 para sua borda descendente).

- Colocou ov_xResetEventsNumbervariável para TRUE.


Como essa variável está ligada aoPT(habilitar) pino doResetEventsNumber
Função, esta Função agora é chamada.
Então, esta variável redefine ov_xResetEventsNumbervariável para FALSE.
Observação:No caso do programa CFC descrito emPrograma CFC (ver página 27), esta
variável é transmitida através doENO(habilitar saída) pino antes de redefinir
v_xResetEventsNumber.Isto destina-se a obter uma ordem de execução em que o
ResetEventsNumberA função é chamada antes do reset de v_xResetEventsNumber,desde
que oOrdenar por fluxo de dadoscomando(consulte a página 33)foi desempenhado.

Porquev_xResetEventsNumberé reiniciado, oResetEventsNumberA função é chamada


durante apenas um ciclo de tarefa.

- Verifique se o valor deq_dwEventNumberé igual a 0.


8 Lendo a causa da última parada usando o Para GetLastStopCause Função:
testar esta função, proceda da seguinte forma:

- Clique no Parebotão da barra de ferramentas.

- Clique no Começarbotão da barra de ferramentas.

- Verifique se o valor deq_LastStopCauseé igual a


STOP_FROM_STOP_REQUEST.
- Clique no Sairbotão da barra de ferramentas.

- Desligue o controlador.
- Aguarde durante dois segundos.

Observação:Como o controlador M238 foi projetado para continuar operando durante


interrupções de energia transitórias curtas, é necessário aguardar o desligamento completo do
controlador. Por favor, consulte oEspecificações da fonte de alimentação CAseção do Guia de
hardware do controlador lógico Modicon M238para informações detalhadas.
- Ligue o controlador.
- Clique no Conecte-sebotão da barra de ferramentas.

- Verifique se o valor deq_LastStopCauseé igual aSTOP_FROM_POWER_FAIL.

58 EIO0000000901.00 04/2012
8. Executando o Exemplo

Etapa Ação
9 Lendo o status do projeto de inicialização usando oGetBootProjectStatus Função: Para testar

esta função, proceda da seguinte forma:

- Verifique se o valor deq_BootProjectStatusé igual a


VALID_BOOT_PROJECT.
10 Lendo o curta-circuito (ou sobrecarga) diagnóstico nas saídas incorporadas do
controlador usando oGetShortCutStatus Função:
Para testar esta função, proceda da seguinte forma:

- Verifique se o valor deq_wShortCutStatusé igual a 0: os bits 0, 1 e 2 desta WORD


são iguais a FALSE porque não há curto-circuito nas saídas embarcadas do
controlador.
Observação:Por favor, consulte oDiagrama de fiação de saída regular(ouDiagrama de fiação
de saída do transistor) eCurto-circuito ou sobrecorrente nas saídasseções do Guia de
hardware do controlador lógico Modicon M238. Estas seções contêm várias mensagens de
perigo e instruções que você deve ler sobre as proteções do controlador M238 contra curtos-
circuitos e sobrecargas.

11 Lendo o estado o do barramento de expansão do controlador usando


o GetRightBusStatus Função:

Para testar esta função para um diagnóstico de configuração do barramento de expansão


(RIGHTBUS_GET_GEN_STATUS),proceda da seguinte forma:

- Confira o valor deq_wRightBusStatusGen:é igual a 0 (os bits 1 a 7 são iguais a FALSE) porque
não há incompatibilidade de configuração do barramento de expansão.
Observação:No caso deste exemplo, nenhum módulo TM2 foi configurado no
SoMachine e nenhum módulo TM2 foi instalado fisicamente no controlador.
Para testar esta função para um diagnóstico do primeiro módulo de expansão (analógico)
(RIGHTBUS_GET_STATUS1),proceda da seguinte forma:

- Confira o valor deq_wRightBusStatus:é igual a 0 porque nenhum diagnóstico está disponível


para este módulo de expansão analógico.
Observação:No caso deste exemplo, nenhum módulo analógico foi instalado fisicamente no
controlador.

12 Detectando erros na E/S do controlador usando oGetPlcFault Função: Para testar

esta função, proceda da seguinte forma:

- Confira o valor dev_xErrorIOExpansionBus (bit 0 deq_wPlcFault):é igual a FALSE porque


o barramento de expansão de E/S está íntegro.
- Confira o valor dev_xErrorEmbeddedIO (bit 1 deq_wPlcFault):é igual a FALSE
porque a E/S incorporada do controlador está íntegra.
Observação:Conforme indicado na ajuda online do SoMachine, esses dois dados podem ser
usados como condições para chamar oGetRightBusStatuse aGetLocalIOSstatusFunções.
Consulte a ajuda on-line do SoMachine: procure porGetPlcFault.

13 Lendo o status da E/S incorporada do controlador usando oGetLocalIOSstatus


Função:
Para testar esta função, proceda da seguinte forma:

- Confira o valor deq_IOSstatus:é igual aLOCAL_IO_OKporque as entradas/saídas


do controlador estão operacionais.

EIO0000000901.00 04/2012 59

Você também pode gostar