Escolar Documentos
Profissional Documentos
Cultura Documentos
TREINAMENTO EM PROGRAMAÇÃO
APOSTILA
Versão:2003/1
Ref: 31940112-0
Este documento é propriedade da BCM ENGENHARIA LTDA. Seu conteúdo tem caráter exclusivamente
informativo, cabendo à BCM o direito de promover alterações necessárias, sem aviso prévio .
É proibida a reprodução parcial ou total sem o expresso consentimento da BCM Engenharia Ltda.
2. Medição
Exemplos:
- A temperatura da água do chuveiro para banho.
- A temperatura e umidade de uma estufa.
Página 5 de 74
2.1. Diagrama de Controle de Medição, Atuação e Controle
PROCESSO
ATUAÇÃO MEDIÇÃO
CONTROLE
2.2. Medidor
Exemplos:
- A mão no sistema do chuveiro.
- Sensor de temperatura (PT100, termopar) no controle de
temperatura ambiente.
- Sensor de velocidade.
Página 6 de 74
2.3. Atuação
Exemplos:
- A vazão de água quente e fria em um chuveiro.
- A injeção de ar frio ou quente em um ambiente.
2.4. Atuador
Página 7 de 74
2.5. Controle
Exemplos:
- Determinar se devem ser abertas ou fechadas as torneiras de
água quente e fria no sistema de controle do banho.
- Determinar se deve ser ligado (e por quanto tempo) o
compressor ou a resistência no sistema de controle de
temperatura da sala.
Página 8 de 74
3. Classificação de Sistemas
Página 9 de 74
3.1. Sistema Linear:
y1 = Fu1, y2 = Fu2
y3 = αy1 + βy2
u PID y u ON OFF y
Página 10 de 74
3.3. Sistemas Monovariáveis
u1 y1
u1 CONTROLE y1 CONTROLE
un yn
Monovariável Multivariável
Página 11 de 74
4. Controle de Processo
Sinal de Perturbações
controle
Medidor
Página 12 de 74
5. Automação de um processo
5.2. Sensores
Página 13 de 74
5.3. Atuadores
Lembrete:
- Não existe equipamento ou serviço capaz de salvar um mau
projeto.
Página 14 de 74
5.5. Interface Homem-Máquina
Página 15 de 74
5.7. Treinamento de Operadores
Página 16 de 74
6. Introdução aos CLPs
PROCESSO
Atuador Medição
CLP
Interfaces
S1 E1
S2 E2
Entradas
Saídas
. .
. CPU .
. .
. .
Sn En
Memórias
- Controle de processo
- Automação da manufatura
- Automação predial
Página 17 de 74
6.2.1. Aplicações Usuais
- Intertravamento
- Posicionamento
- Segurança
Controle de processos:
- Linhas de montagem
- Usinas hidrelétricas e termolétricas
- Subestações de energia
- Tratamento de água e esgoto
Automação predial:
- Demanda e fator de potência
- Iluminação
- Intrusão
Página 18 de 74
6.3. Histórico
- Elevada confiabilidade;
Página 19 de 74
7. Arquitetura dos CP’s
Terminal
de
Programação
CLP
PROCESSO
Sensores
CLOCK Botões
Entradas Chaves
et c.
Processador
( EP ) ROM RAM + BAT
EEP ROM NOVRAM
Flash EP ROM At uadores
Interface
Relês
Serial Cont at ores
Saídas et c
Interface
Comunicação Homem-Máquina
Serial
Página 20 de 74
7.2. Arquiteturas disponíveis
Linha GP3000
BCM1086A
BCM1088
8. Funções de Segurança
Arm-Bus
Read-Back
Check-Before-Operate
DPS (Dual Power Suply)
Sistemas redundantes
Página 21 de 74
9. Módulos Entradas e Saídas Disponíveis
- Software BCM-PROCP
- Compatível com WINDOWS
- Permite programação e depuração do programa
- Armazenamento de dados e programas do CLP em
arquivos no HD do computador.
Página 22 de 74
10.1. Ferramenta de Programação - Funções
- Geração de gráficos
Grupo Utilização
Tabela de E/S
Memória de aplicação Tabela de Dados
Programa aplicativo
Página 23 de 74
12. Como escolher um CP:
13. Conectividade
- DNP3.0
- IEC 870
- Modbus
- B2P
- Protocolos proprietários (RP570, BST, IQC, etc...)
Página 24 de 74
14. A Linguagem Descritiva
Características Gerais:
- Sintaxe em português;
- Autodocumentada;
- Rotinas de interrupção;
- Cálculos matemáticos;
- Comunicação em rede.
Página 25 de 74
15. Estrutura de Estados - Representação Gráfica
Número do Estado
LIGA 10
1 RESET NPEC
MAQUINA 0
1
0
2
2
1
1
3
2 3
3
4
Página 26 de 74
Estado Atual: Onde estão sendo realizadas as tarefas no momento
LIGA 10
1 RESET NPEC
PESO = CAIXA
DESL 10
2 LIGA 15
Página 27 de 74
LIGA 10
1 RESET NP EC
P ESO = CAIXA
Malha de controle é
um diagrama de DESL 10
2
estados parcial, que LIGA 15,17
4 DESL 15
P ESO = 0
Página 28 de 74
16. Características Básicas
Página 29 de 74
17. Regras do Diagrama de Estados
REGRA 1:
REGRA 2:
3 DESL 1
Numeração do Estado
Página 30 de 74
REGRA 3:
REGRA 4:
Página 31 de 74
REGRA 5:
IN I = 1
REGRA 6:
REGRA 7:
Página 32 de 74
REGRA 8:
REGRA 9:
1 1
INI = 1 INI = 1
E OU
MED = 10 MED = 10
2 2
Página 33 de 74
REGRA 10:
MED = 10 INI = 1
REGRA 11:
1 4
3 2
2 3 4 5
Página 34 de 74
REGRA 12:
REGRA 13:
2
W00 = 0
3 LIGA 3
5 W00 = W00 + 1
Página 35 de 74
REGRA 14:
2
20 Seg
3 LIGA 3
REGRA 15:
1
W00 = 1
2 LIGA 1
INI = 1
5 Seg
3 LIGA 3
Página 36 de 74
REGRA 16:
REGRA 17:
Página 37 de 74
REGRA 18:
Máquina 0:
1 DESL 1,2,3
5 Seg INI = 1
2 LIGA 1
VAA = 1
W00 = 1
3 LIGA 2 4 W 00 = W 00 -1
Máquina 1:
FES = 0
AVA = 1 FES = 1
LIGA 4 W OO = 0 LIGA 3
5 Seg
W00 = W00 + 1
AVA = AVA + 1
Página 38 de 74
18. Notação para Comandos e Instruções
- Os sinais " igual ", " ponto ", " vírgula " e espaços em branco
devem ser seguidos rigorosamente na edição. Caso contrário,
serão interpretados incorretamente pelo compilador.
Página 39 de 74
19. Comandos de Configuração do CLP
Atenção:
Página 40 de 74
20. Tipos de CLP
DIMD[n] aaa(xxx) ; Define que a matriz " aaa " para matriz de
display.
Cada elemento = 0 a 99 ( canal do display ).
[n] = unidade de display = 1, 2 ou 3.
Default = 1
Página 41 de 74
Para Contadores Rápidos
Página 42 de 74
Relógio / Calendário
" nnnn " = 1200, 9600, 19200, 48000 baud, Default = 1200
baud. Caso sejam usados os dois canais de comunicação
simultaneamente ( INTERFACE1 e INTERFACE2 ), a
velocidade especificada para ambos deve ser a mesma.
Página 43 de 74
INTERFACE1[(nnnn)]=yyynnnn (PROTOCOLO=BCM2)
Define os parâmetros relativos à comunicação entre a rede de
CLPs do canal serial 1 e a unidade central. O valor " yyy " é o
código de acesso tal como será reconhecido pela central. O
código permitido deve estar na faixa 1 a 254. O valor " nnnn "
especifica a velocidade de comunicação ( 1200 ou 9600 ). Se
for omitido, é assumido o valor 1200 baud. O parâmetro "
SENHA " especifica a existência da senha e o tempo entre a
senha e o início da transmissão do CLP. O valor " xxx " ( em
centésimos de segundos ) deve estar entre 1 e 250.
O comando “PROTOCOLO=BCM2” especifica o protocolo de
comunicação. Se omitido, assume BCM1
Exemplos:
INTERFACE1(9600)=2
Esse comando irá assumir o código " 2 " de acesso.
Página 44 de 74
Tipos de Interface
Display Alfanumérico
Observações importantes
Ao utilizar o comando DISPLAY=DPA, não podem existir
variáveis definidas nas unidades de display 2 e 3.
Ao aparecer uma instrução " MOSTRA " no programa, é
obrigatório que tenha sido colocado um comando
DISPLAY=DPA no início do programa. Caso contrário, o
compilador indica erro.
A opção " DPA20 " é usada quando o display alfanumérico é
de 20 colunas. Caso contrário, o compilador assume que o
display possui 16 colunas.
No CP BCM2085 com CPU 3, 4 ou 4A só é possível utilizar
DPA até 16 colunas. Com CPU 6 ou 7, 1086A e GP3011
pode-se utilizar as 20 colunas disponíveis.
Página 45 de 74
Display Gráfico
- Mostra Texto
- Mostra Gráfico XY
- Mostra Texto com Variável
- Mostra figuras em Bitmap (BMP)
- Mostra Gráfico de barras(Bargraph)
Máquina
MAQUINA r:
Página 46 de 74
Estado
ESTADO r:
Liga / Desliga
Exemplo:
ESTADO 4:
LIGA 1,2,5 ; Liga as saídas 1,2 e 5
DESL 3,4 ; Desliga as saídas 3 e 4
Página 47 de 74
Set e Reset de Variáveis
SET aaa,bbb,ccc,ddd(iii)
RESET aaa,bbb,ccc,ddd(iii)
INCREMENTA aaa,bbb,ccc,ddd(iii)
Página 48 de 74
Incremento e Decremento de Variáveis
DECREMENTA aaa,bbb,ccc,ddd(iii)
SE aaa=bbb ENTAO r
SE aaa>bbb ENTAO r
Página 49 de 74
Instrução de condição e temporização
A variável " aaa " pode ser de qualquer tipo; o operando " bbb "
pode ser constante ou variável, não podendo ser variável
indexada ou de entrada digital.
Exemplo:
MAQUINA 0:
ESTADO 0:
SE ALFA#4 OU VAR1=VAR2 ENTAO 20
Página 50 de 74
Instrução de condição e temporização
" aaa " deve ser uma variável de qualquer tipo; " bbb " pode ser
variável ou constante. Estão disponíveis os testes " igual " (=);
" diferença " (#); " maior que (>); " menor que " (<).
A expressão é avaliada seqüencialmente da esquerda para
direita.
Exemplo:
MAQUINA 0:
ESTADO 0:
SE ENT1<ENT2 E ENT3>6 LIGA 8,10,12
Página 51 de 74
Instruções Incondicionais
VA PARA r
Instruções Incondicionais
Página 52 de 74
Instruções Incondicionais
Instruções Incondicionais
Exemplo:
MAQUINA 1:
ESTADO 0:
VA PARA 1
ESTADO 1:
FACA* CONT=GAMA+DELTA-453*8 E VAR6=VAR5-VAR4+VAR3
SE INI=1 ENTAO 1
Página 53 de 74
Instrução para display alfanumérico
MOSTRA [r](l,c)"string1",aaa,"string2"
Página 54 de 74
Instrução para display alfanumérico
Exemplos:
ESTADO 0:
MOSTRA TL(1,4)”Peso:”,W00,”g”
MOSTRA (2,2)”Em Operacao”
SE ABC=1 ENTAO 3
Peso:392g
Em Operacao
ESTADO 0:
MOSTRA TD4(1,2)”Total:”,W00,”,”
MOSTRA D2Z(1,13)W01,”g”
SE ABC=2 ENTAO 3
Total:5315,17g
Página 55 de 74
22. Tratamento de Variáveis
Introdução
Importante
Página 56 de 74
Introdução
Página 57 de 74
Variáveis de Atribuição Livre
Variáveis livres
Variáveis Indexadas
Página 58 de 74
EXEMPLO:
DIM MAT(40)
FACA IND=3
FACA MAT(1)=10 E MAT(2)=20 E MAT(3)=30
SE MAT(IND)=30 ENTAO 0
Variáveis livres
Página 59 de 74
Variáveis de Entrada e Saída
Entradas Digitais
EXEMPLO:
MAQUINA 0:
ESTADO 0:
SE ENT1=1 OU ENT2=0 DESL 8
Página 60 de 74
Entradas Analógicas
EXEMPLO:
MAQUINA 0:
ESTADO 1:
SE ENTA=40 ENTAO 40
FACA TOT=ENTA*40+4/SOMA+10
Página 61 de 74
Saídas Analógicas
Saídas Analógicas
EXEMPLO:
MAQUINA 0:
ESTADO 0:
FACA SANA=VAR1+40/VAR2*4
; SANA = saída analógica
Página 62 de 74
Display
Página 63 de 74
Temporização
Página 64 de 74
Relógio
Página 65 de 74
Controle de Programa
CIC
Contador de ciclos de varredura do CP. Essa variável é
incrementada continuamente de 0 a 65535, uma unidade a cada
ciclo do controlador.
E00 a E63
Página 66 de 74
Regras especiais de Processamento Aritmético
EXEMPLO:
FACA ARE=1
FACA ASA=ARE-3 ======> RESULTADO:
ASA=(-2)+65535=65534
EXEMPLO:
FACA ARE=65000
FACA ASA=ARE+600 ======> RESULTADO:
ASA=65600-65536=64
Página 67 de 74
A operação prevista produz um resultado fracionário ==> A
variável de saída assume a parte inteira do resultado,
desprezando a parte fracionária.
EXEMPLO:
FACA ARE=20
FACA ASA=ARE/3 ======> RESULTADO:
ASA=20/3=6
Página 68 de 74
23. Documentação de Projetos
Identificação
Folha de Rosto:
Projeto: Exemplo XX
Nome do cliente:
Nome do cliente final:
Local da instalação:
Identificação do(s) disquete(s) com programa(s):
Nome do(s) Programa(s):
Nome do autor:
Data de início:
Versão do compilador utilizado:
Especificação do Projeto
Página 69 de 74
Especificação da Solução
Página 70 de 74
Navegação em Telas
EXEMPLO:
ACESSO CANCELA
1 F2
SAIDA LIBERADA
1
ACESSO ROLET A
ENT RADA LIBERADA 2
ACESSO ROLETA
ENTRADA LIBERADA
10
SEG
1
ACESSO ROLET A
ADM LIBERADO
ACESSO ROLETA
ADM LIBERADO
10
SEG
ACESSO 1
RECUSADO
ACESSO
RECUSADO
10
SEG
1
Página 71 de 74
Mapa de Comunicação
Página 72 de 74
Mapa de Comunicação - Supervisório
Entradas Digitais
Página 73 de 74
Definição de Entradas e Saídas
Saídas Digitais
Entradas Analógicas
Saídas Analógicas
Página 74 de 74
Listagem do(s) Programa(s)
EXEMPLO DE PROGRAMA
;********************************************************
**
;CLIENTE: Empresa etcetera e tal
;OBJETIVO: Controle de Qualquer Coisa
;ALTERAÇÃO 1:
; AUTOR: Fulano de Tal
; DATA: dd/mm/aa
; MOTIVO: Alteração na Lógica de Alarme
;********************************************************
**
;Todas as máquinas do programa devem conter um pequeno
;cabeçalho descrevendo sua função
;********************************************************
**
MAQUINA 0:
;COLOCA TODAS AS SAÍDAS EM ESTADO DE SEGURANÇA
;********************************************************
**
Página 75 de 75