REV2.2 - CLP-I - WordPress.com

Transcrição

REV2.2 - CLP-I - WordPress.com
CONTROLADORES LÓGICOS PROGRAMÁVEIS
CLP - I
-1________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
1 ÍNDICE
1
ÍNDICE...................................................................................................................................................................... 2
2
HISTÓRICO ............................................................................................................................................................. 6
3
INTRODUÇÃO......................................................................................................................................................... 7
4
CONCEITOS FUNDAMENTAIS........................................................................................................................... 8
4.1
CONCEITOS DE HARDWARE ........................................................................................................................ 9
4.1.1
Processamento de Hardware:................................................................................................................... 10
4.1.2
Características de Hardware: .................................................................................................................. 10
4.2
ARQUITETURA DE HARDWARE ................................................................................................................ 11
4.2.1
Unidade ou Módulo de Entradas:............................................................................................................. 11
4.2.1.1
Unidade de Entradas Digitais:.................................................................................................................................11
4.2.1.2
Unidade de Entradas Analógicas: ...........................................................................................................................14
•
0 a 20 mA; .....................................................................................................................................................................14
•
4 a 20 mA; .....................................................................................................................................................................14
•
0 a 10 VDC;....................................................................................................................................................................14
•
5 a 10 VDC;....................................................................................................................................................................14
•
(-10) a (+10) VDC.........................................................................................................................................................14
•
(-100) a (+100) mV ......................................................................................................................................................14
4.2.1.3
Unidade de Leitura de Temperatura:.......................................................................................................................15
4.2.2
Unidade ou Módulos de Saídas: ............................................................................................................... 15
4.2.2.1
Unidade de Saídas Digitais: ....................................................................................................................................15
•
Lâmpadas;......................................................................................................................................................................15
•
Sirenes e Buzzers; .........................................................................................................................................................15
•
Relés e Acopladores; ....................................................................................................................................................15
4.2.2.2
Unidade de Saída Analógica:..................................................................................................................................18
•
0 a 20 mA; .....................................................................................................................................................................18
•
4 a 20 mA; .....................................................................................................................................................................18
•
(-10) a (+10) VDC.........................................................................................................................................................18
4.2.3
4.2.3.1
4.2.3.2
4.2.3.3
Unidade de Processamento: ..................................................................................................................... 20
Arquitetura das Memórias Internas:........................................................................................................................20
Watchdog Timer: ....................................................................................................................................................20
Interface ou Plataforma de Programação: ...............................................................................................................21
4.2.4
Interface Homem Máquina: ...................................................................................................................... 21
4.3
COMUNICAÇÃO DE DADOS........................................................................................................................ 22
4.3.1
Canais de Comunicação:.......................................................................................................................... 22
4.3.2
Taxa de Transferência: ............................................................................................................................. 22
4.3.3
Interfaces Seriais: ..................................................................................................................................... 23
4.3.4
Protocolos de Comunicação:.................................................................................................................... 24
4.3.5
Características dos Protocolos:................................................................................................................ 25
4.4
CONCEITOS DE SOFTWARE........................................................................................................................ 26
4.4.1
Sistemas Numéricos:................................................................................................................................. 26
4.4.1.1
4.4.1.2
4.4.1.3
4.4.1.4
4.4.1.5
4.4.2
4.4.2.1
4.4.2.2
4.4.2.3
4.4.2.4
4.4.2.5
Sistema Numérico Binário:.....................................................................................................................................27
Sistema Numérico Octal: ........................................................................................................................................27
Sistema Numérico Decimal: ...................................................................................................................................28
Sistema Numérico Hexadecimal:............................................................................................................................28
Resumo: ..................................................................................................................................................................29
Conceitos Lógicos: ................................................................................................................................... 30
Bit: ..........................................................................................................................................................................30
Nibble: ....................................................................................................................................................................31
Byte: .......................................................................................................................................................................32
Word:......................................................................................................................................................................33
Double Word: .........................................................................................................................................................34
-2________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5
HADWARE E SOFTWARE PANASONIC ......................................................................................................... 35
5.1
CONHECENDO O HARDWARE PANASONIC ............................................................................................ 36
•
•
•
•
•
•
FPe Séries; .....................................................................................................................................................................36
FP0 Séries; .....................................................................................................................................................................36
FP0R Séries;...................................................................................................................................................................36
FPSigma Séries;.............................................................................................................................................................36
FPX Séries; .....................................................................................................................................................................36
FP2 Séries; .....................................................................................................................................................................36
5.1.1
5.1.2
5.1.3
5.1.4
5.1.5
5.1.6
5.1.7
5.1.8
5.1.8.1
5.1.8.2
5.1.8.3
5.1.8.4
5.1.8.5
FPe Series ................................................................................................................................................. 36
FP0 Series................................................................................................................................................. 39
FP0R Series .............................................................................................................................................. 44
FPSIGMA Series....................................................................................................................................... 46
FPX Series ................................................................................................................................................ 48
FP2 Series................................................................................................................................................. 50
Expansões para FP0 e FPG (Sigma):....................................................................................................... 52
Capacidade de Armazenamento – Posições de Memória:........................................................................ 52
Capacidade de Armazenamento - FPe Series ! .......................................................................................................53
Capacidade de Armazenamento – FP0 Series !.......................................................................................................54
Capacidade de Armazenamento – FP0R Series !....................................................................................................55
Capacidade de Armazenamento – FPG (Sigma) Series ! ........................................................................................56
Capacidade de Armazenamento – FPX Series !......................................................................................................57
5.2
CONHECENDO O SOFTWARE PANASONIC.............................................................................................. 58
5.2.1
Formataçãode dados: ............................................................................................................................... 59
5.2.2
Endereçamento do CLP Panasonic: ......................................................................................................... 59
5.2.3
Entradas e Saídas do CLP Panasonic: ..................................................................................................... 60
5.2.4
Plataforma de Programação FPWin GR:................................................................................................. 65
5.3
INSTRUÇÕES DE PROGRAMAÇÃO ............................................................................................................ 70
5.3.1
Instruções Básicas de Sequência: ............................................................................................................. 70
5.3.1.1
5.3.1.2
5.3.1.3
5.3.1.4
5.3.1.5
5.3.1.6
5.3.1.7
5.3.1.8
5.3.1.9
5.3.1.10
5.3.1.11
5.3.1.12
5.3.2
5.3.2.1
5.3.2.2
5.3.2.3
5.3.2.4
5.3.3
5.3.3.1
5.3.4
5.3.5
5.3.5.1
5.3.5.2
5.3.5.3
5.3.5.4
5.3.5.5
5.3.5.6
5.3.5.7
5.3.5.8
5.3.5.9
5.3.5.10
5.3.5.11
ST (Start) ................................................................................................................................................................70
ST/ (Start Not) ........................................................................................................................................................70
OT (Out) .................................................................................................................................................................70
(Not) / .....................................................................................................................................................................71
AN (And)................................................................................................................................................................71
AN/ (And Not)........................................................................................................................................................71
OR (Or)...................................................................................................................................................................71
OR/ (Or Not)...........................................................................................................................................................71
SET (Set) ................................................................................................................................................................72
ST (Reset)...........................................................................................................................................................72
DF (Leading edge differential) ...........................................................................................................................72
DF/ (Trailing edge differential) ..........................................................................................................................72
TEMPORIZADORES:............................................................................................................................... 72
TMX .......................................................................................................................................................................73
TMY .......................................................................................................................................................................73
TMR .......................................................................................................................................................................73
TML........................................................................................................................................................................74
CONTADORES:........................................................................................................................................ 74
F118 (UDC) - Contador UP/DOWN.......................................................................................................................75
Instruções de Comparação por Bloco: ..................................................................................................... 76
Instruções de Transferência de Dados: .................................................................................................... 77
F0 => (MV) 16-BIT data move ..............................................................................................................................77
F1 => (DMV) 32-BIT data move............................................................................................................................78
F2 => (MV/) 16-BIT data invert and move.............................................................................................................78
F3 => (DMV/) 32-BIT data invert and move..........................................................................................................78
F5 => (BTM) BIT data move..................................................................................................................................79
F6 => (DGT) Hexadecimal digit move...................................................................................................................79
F10 => (BKMV) Block move.................................................................................................................................80
F11 => (COPY) Block copy ...................................................................................................................................80
F15 => (XCH) 16-BIT data exchange ....................................................................................................................81
F16 => (DXCH) 32-BIT data exchange .............................................................................................................81
F17 => (SWAP) Higher/lower byte in 16-BIT data exchange ...........................................................................82
-3________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.6
Instruções Aritméticas Binárias: .............................................................................................................. 82
5.3.6.1
5.3.6.2
5.3.6.3
5.3.6.4
5.3.6.5
5.3.6.6
5.3.6.7
5.3.6.8
5.3.6.9
5.3.6.10
5.3.6.11
5.3.6.12
5.3.6.13
5.3.6.14
5.3.6.15
5.3.6.16
5.3.7
F20 => (+) 16-BIT data Addition ...........................................................................................................................82
F21 => (D+) 32-BIT data Addition.........................................................................................................................83
F22 => (+) 16-BIT data Addition ...........................................................................................................................83
F23 => (D+) 32-BIT data Addition.........................................................................................................................83
F25 => (-) 16-BIT data Subtraction ........................................................................................................................84
F26 => (D-) 16-BIT data Subtraction .....................................................................................................................84
F27 => (-) 16-BIT data Subtraction ........................................................................................................................85
F28 => (D-) 32-BIT data Subtraction .....................................................................................................................85
F30 => (*) 16-BIT data Multiplication ...................................................................................................................85
F31 => (D*) 32-BIT data Multiplication............................................................................................................86
F32 => (%) 16-BIT data Division ......................................................................................................................86
F33 => (D%) 32-BIT data Division ...................................................................................................................87
F35 => (+1) 16-BIT data Increment ...................................................................................................................87
F36 => (D+1) 32-BIT data Increment ................................................................................................................88
F37 => (-1) 16-BIT data Decrement...................................................................................................................88
F38 => (D-1) 32-BIT data Decrement................................................................................................................88
Instruções Aritméticas BCD: .................................................................................................................... 89
5.3.7.1
5.3.7.2
5.3.7.3
5.3.7.4
5.3.7.5
5.3.7.6
5.3.7.7
5.3.7.8
5.3.7.9
5.3.7.10
5.3.7.11
5.3.7.12
5.3.7.13
5.3.7.14
5.3.8
F40 => (B+) 4-DIGIT BCD data Addition .............................................................................................................89
F41 => (DB+) 8-DIGIT BCD data Addition ..........................................................................................................89
F42 => (B+) 4-DIGIT BCD data Addition .............................................................................................................90
F43 => (DB+) 8-DIGIT BCD data Addition ..........................................................................................................90
F45 => (B-) 4-DIGIT BCD data Subtraction ..........................................................................................................91
F46 => (DB-) 8-DIGIT BCD data Subtraction .......................................................................................................91
F47 => (B-) 4-DIGIT BCD data Subtraction ..........................................................................................................92
F48 => (DB-) 8-DIGIT BCD data Subtraction .......................................................................................................92
F50 => (B*) 4-DIGIT BCD data Multiplication .....................................................................................................93
F52 => (B%) 4-DIGIT BCD data Division ........................................................................................................93
F55 => (B+1) 4-DIGIT BCD data Increment.....................................................................................................94
F56 => (DB+1) 8-DIGIT BCD data Increment ..................................................................................................94
F57 => (DB-1) 4-DIGIT BCD data Decrement..................................................................................................94
F58 – (DB+1) 8-DIGIT BCD data Decrement ...................................................................................................95
Instruções de Comparação de Dados:...................................................................................................... 95
5.3.8.1
5.3.8.2
5.3.8.3
5.3.8.4
5.3.9
F60 => (CMP) 16-BIT data compare......................................................................................................................95
F61 => (CMP) 32-BIT data compare......................................................................................................................96
F62 => (WIN) 16-BIT data band compare..............................................................................................................97
F63 => (DWIN) 16-BIT data band compare...........................................................................................................98
Instruções de Operação Lógicas: ............................................................................................................. 99
5.3.9.1
5.3.9.2
5.3.9.3
5.3.9.4
5.3.10
F65 => (WAN) 16-BIT data AND..........................................................................................................................99
F66 => (WOR) 16-BIT data OR .............................................................................................................................99
F67 => (XOR) 16-BIT data exclusive OR ............................................................................................................100
F68 => (XNR) 16-BIT data exclusive NOR .........................................................................................................100
Instruções de Conversão de Dados: ....................................................................................................... 101
5.3.10.1
5.3.10.2
5.3.10.3
5.3.10.4
5.3.10.5
5.3.10.6
5.3.10.7
5.3.10.8
5.3.10.9
5.3.10.10
5.3.10.11
5.3.10.12
5.3.10.13
5.3.10.14
5.3.10.15
5.3.10.16
F80 => (BCD) 16-BIT data => 4-DIGIT BCD data .........................................................................................101
F81 => (BIN) 4-DIGIT BCD data => 16-BIT data .........................................................................................101
F82 => (DBCD) 32-BIT data => 8-DIGIT BCD data ......................................................................................101
F83 => (DBIN) 8-DIGIT BCD data => 32-BIT data ......................................................................................102
F84 => (INV) 16-BIT data invert .....................................................................................................................102
F85 => (NEG) 16-BIT data two’s complement................................................................................................103
F86 => (DNEG) 32-BIT data two’s complement .............................................................................................103
F87 => (ABS) 16-BIT data absolute ................................................................................................................103
F88 => (DABS) 32-BIT data absolute..............................................................................................................104
F89 => (EXT) 16-BIT data sign extension.......................................................................................................104
F90 => (DECO) Decode...................................................................................................................................104
F91 => (SEGT) 16-BIT data 7-Segment decode ..............................................................................................106
F92 => (ENCO) Encode...................................................................................................................................108
F93 => (UNIT) 16-BIT data combine ..............................................................................................................110
F94 => (DIST) 16-BIT data distribute..............................................................................................................111
F96 => (SRC) Table data search ......................................................................................................................111
-4________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.11
5.3.11.1
5.3.11.2
5.3.11.3
5.3.11.4
5.3.11.5
5.3.11.6
5.3.11.7
5.3.11.8
5.3.12
5.3.12.1
5.3.12.2
5.3.12.3
5.3.12.4
5.3.13
5.3.13.1
5.3.13.2
5.3.13.3
5.3.13.4
5.3.13.5
5.3.13.6
5.4
6
Instruções de Deslocamento de Dados:.................................................................................................. 113
F100 => (SHR) Right shift of 16-BITdata in bit units......................................................................................113
F101 => (SHL) Left shift of 16-BIT data in bit units .......................................................................................113
F105 => (BSR) Right shift of one hexadecimal digit (4-BITS)........................................................................114
F106 => (BSL) Left shift of one hexadecimal digit (4-BITS) ..........................................................................115
F110 => (WSHR) Right shift of one word digit (16-BITS)..............................................................................116
F111 => (WSHL) Left shift of one word digit (16-BITS)................................................................................117
F112 => (WBSR) Right shift of one hexadecimal digit ...................................................................................118
F113 => (WBSL) Leftt shift of one hexadecimal digit.....................................................................................118
Instruções de Rotação de Dados: ........................................................................................................... 120
F120 => (ROR) 16-BIT data right rotate..........................................................................................................120
F121 => (ROL) 16-BIT data left rotate ............................................................................................................121
F122 => (RCR) 16-BIT data right rotate with carry flag data ..........................................................................122
F123 => (RCL) 16-BIT data left rotate with carry flag data.............................................................................123
Instruções de Manipulação de Dados (BIT):.......................................................................................... 124
F130 => (BTS) 16-BIT data bit set ..................................................................................................................124
F131 => (BTR) 16-BIT data bit reset ...............................................................................................................124
F132 => (BTI) 16-BIT data bit invert...............................................................................................................125
F133 => (BTT) 16-BIT data test ......................................................................................................................126
F135 => (BCU) Number of ON bits in 16-BIT data ........................................................................................127
F136 => (DBCU) Number of ON bits in 32-BIT data......................................................................................127
RELÉS INTERNOS ESPECIAIS ................................................................................................................... 129
EXERCÍCIOS ....................................................................................................................................................... 130
6.1
EXERCÍCIOS BÁSICOS DE FIXAÇÃO....................................................................................................... 130
6.1.1
Exercícios Referente a Instruções Básicas de Controle.......................................................................... 130
6.1.1.1
6.1.1.2
6.1.1.3
6.1.1.4
6.1.1.5
6.1.1.6
6.1.2
6.1.2.1
6.1.2.2
NA e Bobina Simples (OUT) ! .............................................................................................................................130
NF e Bobina Simples (OUT) ! ..............................................................................................................................131
NA e Bobina Simples (OUT) ! .............................................................................................................................131
NA – NF e Função de Pulso (DF) !.......................................................................................................................132
Flip-Flop !.............................................................................................................................................................132
Contador Decrescente – Auto reset ! ....................................................................................................................133
Exercícios Referente a Instruções de Dados........................................................................................... 134
Sequenciador Decrescente – Auto Reset ! ............................................................................................................134
Navegador Crescente/Decrescente ! .....................................................................................................................135
6.2
EXERCÍCIOS COMPLEMENTARES........................................................................................................... 136
6.2.1
Exercícios de Aprendizagem................................................................................................................... 136
6.2.1.1
6.2.1.2
6.3
Acionamento e Partida de Motores na Config. Estrela - Triângulo ! ....................................................................136
Semáforo – Cruzamento de duas vias em mão única !..........................................................................................137
REVISÃO E AGRADECIMENTOS .............................................................................................................. 138
-5________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
2 HISTÓRICO
Os Controladores Lógicos Programáveis foram desenvolvidos no final dos anos 60, com a finalidade
de substituir painéis de relés em controles baseados em lógicas combinacional/seqüencial, em linhas de
montagem nas indústrias de manufatura, principalmente automobilística, sendo progressivamente adotados
pelas indústrias de processos.
O critério do projeto para o primeiro controlador foi especificado em 1968 por uma divisão da
General Motors Corporation. O objetivo inicial era eliminar o alto custo associado com os sistemas
controlados a relés. As especificações iniciais requeriam um sistema de estado sólido com a flexibilidade do
computador, capaz de suportar o ambiente industrial, ser facilmente programado e reprogramado,
manutenção fácil e por último facilmente expansível e utilizável. Já os painéis de controle a relés
necessitavam modificações na fiação, o que muitas vezes era inviável, tornando-se mais barato
simplesmente substituir todo painel por um novo. Portanto, os CLP's permitiram transferir as modificações
de hardware para modificações no software.
Pelo fato de substituírem os painéis de relés no controle discreto, foram chamados de Controladores
Lógicos Programáveis - CLP (Programmable Logic Controllers - PLC). Com o sucesso de uso de CLP's na
indústria, a demanda por novas funções e maior capacidade aumentou consideravelmente. Os
equipamentos cresceram em poder de processamento, número de entradas e saídas
(I/O), e novas funções. Entretanto, estes controladores ainda usavam lógica discreta e só eram utilizadas na
indústria, pois seus custos tornaram inviáveis em outras aplicações (automação predial, por exemplo).
A partir de 1970, com o advento da tecnologia de microprocessadores, os controladores passaram ter uma
grande capacidade de processamento e alta flexibilidade de programação e expansão.
Entre outras características citamos: realizar operações aritméticas com ponto decimal flutuante,
manusear dados e se comunicar com computadores. Desta forma, os CP's atuais podem atuar tanto em
controle discreto como automação de manufatura, onde as máquinas apresentam ações automáticas e
podem atuar em controle contínuo, como: processos químicos e siderúrgicos, com características
primordialmente analógicas. Portanto atualmente, os controladores são bem mais complexos e não
executam somente lógica do tipo E e OU, motivo pelo qual passaram a ser chamados apenas de
Controladores Programáveis - CP's.
O sistema utilizado para programar o controlador era um dispositivo dedicado e acondicionado em
uma maleta portátil, chamada de maleta de programação, de forma que podia ser levada para "campo" a
fim de alterar dados e realizar pequenas modificações no programa. O sistema de memória do controlador
não permitia facilidades de programação por utilizar memórias do tipo EPROM.
Inovações no hardware e software entre 1975 e 1979 proporcionaram ao controlador maior flexibilidade e
capacidade de processamento, isto significou aumento na capacidade de memória e de entradas/saídas
remotas, controle analógico, controle de posicionamento, comunicações, etc. A expansão de memória
permitiu um programa de aplicação maior e uma maior quantidade de dados de forma que os programas de
controle não ficassem restritos à lógica e sequenciamento, mas também realizassem aquisição e
manipulação de dados.
Com o desenvolvimento do controle analógico, o controlador programável preencheu o "gap" entre
controle discreto e controle contínuo. Os custos com fiação foram reduzidos significativamente com a
capacidade do controlador de comunicar- se com subsistemas de entrada/saída localizados em pontos
remotos, distante da unidade central de processamento e perto do equipamento a ser controlado. Ao invés
de trazer centenas de fios para o armário do CP, os sinais dos subsistemas podem ser multiplexados e
transmitidos por um único par de fios trançados. Esta técnica permitiu a reestruturação de grandes sistemas
em pequenos subsistemas melhorando a confiabilidade, manutenção e partida gradual do sub-sistema de
controle principal.
Atualmente, existem vários tipos de controladores, desde pequena capacidade até os mais
sofisticados, realizando operações que antes eram consideradas específicas para computadores. A evolução
do hardware conduziu a melhorias significativas nas características do controlador. Existe hoje uma forte
tendência à utilização de pequenos controladores programáveis, controlando processos independentes e
comunicando-se com outros controladores e com sistemas supervisórios. Assim, é possível descentralizar o
controle industrial, evitando que uma pane interrompa toda a planta.
-6________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
3 INTRODUÇÃO
Os CLP´s (Controladores Lógicos Programáveis) são equipamentos eletro-eletrônicos normalmente
baseados em microprocessadores, que usam uma memória programável para armazenamento de instruções
com funções de: lógica, sequenciamento, temporização, contagem, controle PID, intertravamentos,
operações aritméticas, etc., destinados a comandar e monitorar máquinas ou processos industriais através
de módulos de entradas/saídas analógicos ou digitais.
Um controlador programável difere de equipamentos convencionais para controles industriais pela
programabilidade e pelo modo seqüencial de execução das instruções. O software desenvolvido pelo
fabricante, também caracteriza uma diferença fundamental. Este software realiza funções de acesso ao
hardware, diagnósticos, comunicações, históricos e determina o funcionamento do controlador em um modo
de operação dedicado (ciclo de varredura) e totalmente transparente para o usuário.
A segunda distinção é que os CP's foram especificamente projetados para operar em ambientes
industriais. Um CP pode operar em áreas com quantidades substanciais de ruídos elétricos, interferências
eletromagnéticas, vibrações mecânicas, temperaturas elevadas e condições de umidade adversas, conforme
especificação de cada fabricante. Temos abaixo, uma ilustração, exemplificando alguns modelos ou famílias
de PLC's da Panasonic:
-7________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4 CONCEITOS FUNDAMENTAIS
A definição implica na existência de uma máquina que lê instruções. O termo "instruções"
indica a intenção de enviar à máquina algo que esta possa entender, e que tem por meta instruí-la,
orientá-la ou comandá-la a realizar algo.
Podemos então inferir que qualquer conjunto de instruções legíveis por máquina, qualquer
que seja a máquina, quaisquer quem sejam as instruções, podem constituir parte do que chamamos
de programa, sendo caracterizado como item essencial integrado ao sistema de controle.
Considerando o fato de que toda máquina inventada pelo ser humano possui uma linguagem
artificial com a qual nos comunicamos com a máquina, considerando ainda que esta linguagem é
composta por cadeias de símbolos que formam sentenças, então qualquer sentença numa
linguagem artificial pode constituir parte do que chamamos de programa.
•
Seus Componentes:
Esta é uma parte recursiva da definição. Um programa é composto por componentes, ou
seja, instruções de comando, ou instruções, no que implica em dizer que um programa podem ser
constituído também, por outros programas menores ou sub-rotinas.
•
Sistema de Dados:
Um programa pode conter dados, o que significa que um programa não é composto apenas
por instruções. A existência de dados em um programa está compatível com a definição do Modelo
Computacional, onde um programa armazenado na memória é formado por instruções e dados.
•
Conteúdo Audiovisual (tal como imagens, texto, gravações ou figuras):
Este aspecto extrapola o modelo de Modelo Computacional, a medida que torna explícito o
fato de que um programa pode ser algo maior do que o que é armazenado na memória no
momento de sua execução.
Em outras palavras, qualquer material escrito, impresso, apresentável em qualquer mídia de
comunicação, de natureza textual, gráfica, audível, visual etc, pode pertencer ou ser parte de um
programa, constituindo assim, um dos itens fundamentais constituintes do sistema de controle.
•
Materiais Licenciados Relacionados:
Do ponto de vista de natureza física dos materiais que compõem um programa, este aspecto
veicula a mesma essência de generalidade do item anterior, mas torna explícito o fato de que cada
uma das partes do programa está relacionada à existência de produtos ou itens que são criados e
pertencem a organizações, e que portanto estão sujeitos às regras de comercialização, distribuição
e/ou uso. Para maior aprofundamento, veja a discussão sobre Licença de Uso de Software
Do exposto acima podemos inferir que um programa é um artefato complexo, que envolve
uma grande quantidade de aspectos distintos, como:
•
Habilidade de comunicação com máquinas e dispositivos (através das instruções e dados) e
seres humanos (através de dados manipulados pela máquina e mídias externas à máquina);
•
Organização em uma estrutura hierárquica, baseada na concepção da necessidade de uma
plataforma de sistema operacional (através de seus componentes);
•
Sujeição a regras comerciais explícitas, pois foi criado por organizações humanas que detém
controle sobre sua existência e uso através de uma licença;
-8________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.1 CONCEITOS DE HARDWARE
Quando energizamos o controlador lógico programável as seguintes operações são executadas:
•
Teste de leitura/escrita da memória RAM;
•
Limpeza das memórias imagens de entrada e saída;
•
Teste de executabilidade do programa de usuário;
•
Execução de rotinas de inicialização;
•
Limpeza de registros auxiliares de trabalho, limpeza de display, preparação de teclado.
Após estas "Condições de Inicialização" a UCP (unidade central de processamento) passa a fazer
uma varredura constante, ou seja, rotinas repetitivas em um "loop" fechado. Essa seqüência de atividades
definidas e controladas pelo programa ocorre em um ciclo, chamado de Varredura ou Scan, conforme
descrito abaixo:
A primeira etapa da varredura é verificar os dados das entradas, transferindo-os para uma memória
imagem. Memória imagem é um espelho do estado das entradas e saídas, esta memória será consultada
pelo CLP no decorrer do processamento do programa de usuário. Ela recebe em cada endereço
correspondente a uma entrada o seu estado ligado/desligado no caso de entradas digitais, ou um valor
numérico no caso de entradas analógicas.
Uma vez gravados os dados das entradas na respectiva memória imagem, inicia-se a execução do
programa de acordo com as instruções definidas pelo usuário. Durante o processamento do programa, o
CLP armazena os dados na memória imagem das saídas.
Por fim o CLP transfere esses dados para as saídas físicas, desta forma o ciclo termina e a varredura é
reiniciada.
A figura abaixo, ilustra o processamento cíclico:
-9________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.1.1 Processamento de Hardware:
O tempo necessário para executar uma varredura varia de controlador para controlador e depende
de muitos fatores como: tamanho do programa, instruções programadas, etc. O tempo de varredura é uma
consideração importante na seleção do controlador. Este indica a rapidez com que o controlador pode reagir
às entradas de campo e resolver a lógica de controle. Este ciclo que tem seu período variável é mostrado na
ilustração a seguir:
Aquisição das Entradas
Processamento
Atualização das Saídas
4.1.2 Características de Hardware:
Algumas das principais características de um controlador lógico programável são:
■ Programabilidade;
■ Alta confiabilidade;
■ Imunidade a ruídos;
■ Isolação óptica de entradas e saídas;
■ Detecção de falhas;
■ Repetibilidade;
■ Modularidade;
■ Start-up rápido;
■ Operação em condições ambientais severas;
■ Acesso Remoto;
■ Intervenção Remota;
■ Integração Corporativa;
- 10 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.2 ARQUITETURA DE HARDWARE
As unidades básicas dos controladores em geral são compostas por:
•
Unidades de entrada;
•
Unidades de saída;
•
Unidade de processamento;
•
Unidade de armazenamento;
•
Unidade da fonte de alimentação;
Conforme nos mostra a ilustração a seguir, temos um panorama estrutural referente a arquitetura de
hardware, relacionando as unidades básicas constituintes de um controlador programável:
4.2.1 Unidade ou Módulo de Entradas:
As unidades de entrada fornecem as conexões entre os dispositivos de campo e a unidade central de
processamento. Estas interfaces podem ter um ou mais canais de aquisição de dados que codificam sinais
analógicos ou digitais de entrada de diversos níveis de tensão (alternada ou contínua), provenientes de
sensores analógicos, push-buttons, e de outros tipos de transdutores, cujos sinais sejam em tensão ou
correntes.
4.2.1.1 Unidade de Entradas Digitais:
Entre os diversos tipos de transdutores digitais, podemos citar alguns exemplos:
•
•
•
•
•
Botões de comando e sinalização;
Chaves de fim de curso;
Sensores de proximidade;
Termostatos e pressostatos;
Sensores magnéticos de posição;
- 11 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
A comutação de uma unidade de entrada do controlador programável, pode ser realizada em corrente
contínua ou em corrente alternada, dependendo das características do hardware.
As interfaces de entradas discretas detectam e convertem sinais de comutação de entrada em níveis
lógicos de tensão usados no Controlador Programável. Essas características limitam a interface a sinais do
tipo ON/OFF (ligado/desligado).
O circuito de entrada é composto por duas seções principais: entradas de estados e interface, sendo que
essas são normalmente desacopladas eletricamente por um circuito isolador.
A seção de entrada de estados basicamente realiza a função de conversão da tensão da entrada (110
Vca, 220 Vca) para um nível DC compatível com a interface. Quando um sinal válido é detectado, o circuito
isolador gera um sinal na seção lógica (interface), o qual fica disponível para o processador através do seu
barramento de dados.
Tipos de entradas digitais em corrente contínua (VCC):
•
ENTRADA TIPO NPN; A comutação é executada quando o dispositivo externo aplica o pólo
negativo da fonte na entrada digital. A figura abaixo exemplifica um circuito de entrada
digital tipo NPN.
- 12 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
•
ENTRADA TIPO PNP; A comutação é executada quando o dispositivo externo aplica o pólo
positivo da fonte na entrada digital. A figura abaixo exemplifica um circuito de entrada digital
tipo PNP.
Tipos de entradas digitais em corrente alternada (VCA):
•
ENTRADA EM CORRENTE ALTERNADA: A comutação é executada quando o dispositivo
externo aplica tensão alternada compatível a entrada digital do controlador.
Convencionalmente, as entradas dos CLP não possuem compatibilidade com sinais em
corrente alternada. Exceto, em casos, onde o módulo é especificado para esta finalizalidade,
absorvendo assim, níveis de tensão na entrada digital em corrente alternada.
- 13 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.2.1.2 Unidade de Entradas Analógicas:
A interface de entrada analógica contém os circuitos necessários para receber sinais analógicos de
tensão ou corrente dos dispositivos de campo. A tensão ou a corrente de entrada é convertida para um
código digital proporcional ao valor analógico, através de um conversor analógico digital (A/D). Este código
digital é armazenado na memória imagem do controlador como um registro.
A resolução das entradas analógicas é uma informação importante, pois de acordo com o número de
bits do conversor A/D é que se define a menor parcela que pode ser lida. Ou seja, uma entrada com um
maior número de bits permitirá uma melhor representação da grandeza analógica. Os conversores A/D
normalmente são de 10 ou 12bits;
As faixas de valores de tensão e corrente para entradas analógicas mais utilizadas na indústria são:
•
0 a 20 mA;
•
4 a 20 mA;
•
0 a 10 VDC;
•
5 a 10 VDC;
•
(-10) a (+10) VDC
•
(-100) a (+100) mV
Seguem alguns tipos de transdutores que necessitam fazer a conversão de curso, deslocamento,
pesagem, pressão, e outras grandesas físicas envolvendo assim, alguns dos principais dispositivos ou
módulos compatíveis e fabricados para esta finalidade e que por sua vez, proporcionam valores analógios
compatíveis procedentes dos processos industriais a serem controlados, conforme exemplos:
•
•
•
•
•
•
Transdutores de pressão;
Transdutores de umidade;
Régua potenciométrica;
Sensores de vazão;
Sensores de nível;
Células de carga;
- 14 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.2.1.3 Unidade de Leitura de Temperatura:
Os módulos de leitura de temperatura, são específicos quanto ao transdutor que será utilizado:
PT100 ou Termopar. A operação desta interface é similar à entrada analógica com exceção de que os sinais
dos termopares são de pequena amplitude. Estes sinais de pequena amplitude são filtrados, amplificados e
digitalizados por um conversor, e então enviados para o processador e disponibilizados para a utilização no
programa de usuário.
Um primeiro exemplo de aplicação é o módulo compatível com sinais analógicos dos respectivos
termopares tipo K, J, T ou R fornecendo a própria compensação de junta fria internamente, nas faixas de
temperatura entre (-100 a 1500) graus celcius.
Um segundo exemplo é o módulo que possibilita a conexão de termoresistências PT-100, que devido
à característica passiva do sensor no circuito do módulo, existe uma fonte constante de 1mA que excita as
as termoresistências e, portanto as tensões resultantes são sinais de baixo nível.
4.2.2 Unidade ou Módulos de Saídas:
As unidades de saída fornecem as conexões entre os dispositivos de campo e a unidade central de
processamento. Estas interfaces podem ter um ou mais canais, fornecendo sinais digitais ou analógicos
devidamente amplificados para energizar os elementos de operação e sinalização de atuadores diversos, que
se caracterizam pelo tipo (CA ou CC, NPN ou PNP) e pelos diversos níveis de tensão e potência.
4.2.2.1 Unidade de Saídas Digitais:
As interfaces de saída discretas convertem sinais lógicos usados no Controlador Programável em
sinais capazes de energizar atuadores. O controle da saída é limitado a dispositivos que somente requerem
comutação em dois estados, tais como ON/OFF (ligado/desligado).
O circuito de saída é composto por duas seções principais: saídas e interface, sendo que essas são
normalmente desacopladas eletricamente por um circuito isolador. Durante uma operação normal, o
processador envia para o circuito lógico o estado da saída de acordo com a lógica programada, normalmente
sinalizadas por led´s. Entre os diversos tipos de atuadores, podemos citar alguns exemplos:
•
•
•
•
•
Contatores;
Solenóides;
Lâmpadas;
Sirenes e Buzzers;
Relés e Acopladores;
A comutação executada por uma unidade, módulo ou expansão de saída pode ser efetuada através
de transistores (em corrente contínua), e através de TRIAC's (em corrente alternada) ou através de relés
(corrente contínua ou alternada).
- 15 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Tipos de saídas digitais em corrente contínua (VCC):
•
SAÍDA TIPO NPN: Quando o fluxo de corrente ocorre da saída para o potencial negativo da
fonte de alimentação de 24 Vcc; (carga ligada entre o potencial positivo e a saída), conforme
exemplo a seguir. Abaixo temos uma ilustração o circuito de uma saída digital tipo NPN.
•
SAIDA TIPO PNP: Quando o fluxo de corrente ocorre da saída para o potencial positivo da
fonte de alimentação de 24 Vcc; (carga ligada entre o potencial negativo e a saída), conforme
exemplo a seguir. Abaixo temos uma ilustração o circuito de uma saída digital tipo PNP.
- 16 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
•
SAÍDA A RELÉ: Diferentemente das demais configurações de saídas a transistor apresentadas
até o momento, o acoplamento de saída a relé em um CLP, possui características peculiares,
trazendo algumas vantagens e desvantagens com relação as demais configurações.
O grande empasse neste caso, está associado a velocidade de comutação da carga, na
qual possui severas restrições no tempo de chaveamento, dependendo assim de uma estágio
mecânico da bobina do relé utilizado. Em contra-partida, temos como grande vantagem, um
isolamento referente ao circuíto assim chaveado, bem como a capacidade de comutação,
relativamente superior !
•
SAÍDA EM CORRENTE ALTERNADA: Alguns tipos de saídas digitais em corrente alternada
(VCA), possuem outras características, incluindo faixas de alimentações compreendidas entre
tensões de 100 VCA a 240 VCA; Assim podemos apresentar alguns modelos diferenciados de
circuítos de sáida:
•
•
•
VARISTOR => Protege contra o surto e oscilações de sobre-tensão;
TRIAC => Isolado do sistema por um acoplamento óptico;
RC => Protege contra disparos indevidos e faiscamento;
- 17 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
O exemplo abaixo representa o circuito de uma saída digital em corrente alternada.
4.2.2.2 Unidade de Saída Analógica:
Entre os diversos tipos de atuadores e aplicações compatíveis, podemos citar:
•
•
•
•
Inversores de freqüência;
Válvula proporcional de vazão;
Referência de velocidade para servo-acionamento em modo torque;
Referência de velocidade para servo-acionamento em modo velocidade;
As faixas de valores de tensão e corrente para saídas analógicas mais utilizadas na indústria são:
•
0 a 20 mA;
•
4 a 20 mA;
•
(-10) a (+10) VDC
- 18 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 19 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.2.3 Unidade de Processamento:
A unidade de processamento é a responsável pelo gerenciamento e processamento das informações
do sistema e, é composta pelo microprocessador ou microcontrolador, memória de programa básico,
memória de dados, memória de programa de usuário, interface de programação e interface homemmáquina.
O módulo de processamento monitora os sinais de entrada do controlador programável e os
combina de acordo com as instruções existentes na memória de programa de usuário, executando
operações lógicas, operações de temporização, contagem e seqüenciamento para a seguir liberar os sinais
apropriados para as saídas e assim comandar os dispositivos de controle.
4.2.3.1 Arquitetura das Memórias Internas:
•
M E M Ó R I A B Á S I C A O U F I R M W A R E : A M emória básica contém um conjunto de programas
armazenados permanentemente, com o objetivo de controlar e supervisionar as atividades do
sistema. Tais como: comunicação com os dispositivos externos, execução do ciclo de varredura,
diagnósticos e outras atividades. Esta memória é usualmente chamada de firmware, para expressar
o conjunto de software e hardware necessário para o funcionamento do Controlador Programável.
Esta memória é programada pelo fabricante, ou seja, é uma memória que não pode ser alterada
pelo usuário. As memórias básicas são memórias não voláteis do tipo ROM, EPROM ou FLASHEPROM.
•
M E M Ó R I A D E D A D O S : Nesta memória são armazenados todos os dados de controle do sistema, tais
como: estados das entradas e saídas, valores de preset de contadores e temporizadores, etc. É uma
tabela de valores manipuláveis. As memórias de dados podem ser memórias voláteis ou não
voláteis, sendo respectivamente do tipo, RAM ou NVRAM.
•
M E M Ó R I A D E U S U Á R I O : Se trata de uma memória destinada ao armazenamento das instruções de
programação, ou seja, o programa de usuário. As memórias de usuário podem ser memórias
voláteis ou não voláteis, sendo respectivamente do tipo, RAM; NVRAM ou FLASH-EPROM.
4.2.3.2 Watchdog Timer:
Alguns tipos de controladores programáveis possuem internamente à unidade de processamento,
um circuito "WATCHDOG TIMER". Este circuito consiste de um temporizador com uma base de tempo
fornecida pelo microprocessador, cujo propósito é monitorar o tempo de execução da varredura. Caso
exceda este tempo, o "WATCHDOG TIMER" irá detectar esta condição, providenciando então o
desligamento das saídas do sistema para evitar operações indesejadas e a reinicialização CPU.
- 20 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.2.3.3 Interface ou Plataforma de Programação:
Esta interface permite a programação da memória de usuário através do uso de software específico
para desenvolvimento do programa de usuário, sendo executado em um microcomputador compatível com
o padrão IBM-PC (na versão desktop ou laptop, para programação em campo), permitindo a edição,
monitoração e documentação dos programas. Além disso, o terminal de programação permite, muitas vezes,
monitorar o programa aplicativo, ou seja, visualizar em tempo real o programa sendo executado.
4.2.4 Interface Homem Máquina:
Estas interfaces permitem a interação imediata do usuário ou operador com a máquina ou processo
a ser controlado, possibilitando a visualização ou alteração das variáveis e parâmetros desses sistemas. As
formas mais usuais e comuns de encontrarmos esses tipos de dispositivos disponíveis atualmente são:
•
•
Frontais de teclado e display de cristal líquido (LCD);
Vácuo fluorescente (VFD);
- 21 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.3 COMUNICAÇÃO DE DADOS
Para tornar equipamentos diferentes compatíveis entre si, vários padrões de nível físico foram
desenvolvidos. Os mais usuais são: RS-232 e RS-485. RS é uma abreviação de "Recommended Standard",
ela relata uma padronização de uma interface comum para comunicação de dados entre equipamentos,
criados pela "Eletronic Industries Association" (EIA).
Os padrões RS-232 e RS-485 definem características mecânicas, elétricas, funcionais e procedurais
para ativar, manter e desativar conexões físicas que se destinam a transmitir bits entre dois dispositivos.
•
Características mecânicas: definem o tamanho e a forma dos conectores, pinos, cabos, etc., que
compõem um circuito de transmissão.
•
Características elétricas: especificam os valores dos sinais elétricos (níveis de voltageme
corrente) usados para representar bits, o tempo entre mudanças desses valores etc. Determinam
também as taxas de transmissão e distâncias que podem ser atingidas.
•
Características procedurais: especificam combinações e seqüências de sinais que devem ocorrer
para que uma interface do nível físico cumpra o seu papel de receber e transmitir bits.
4.3.1 Canais de Comunicação:
Um canal de comunicação é um caminho sobre o qual a informação pode trafegar. Os canais podem
ser classificados da seguinte forma:
•
Canal simplex: canal no qual a direção de transmissão é inalterada. Ou seja, quase todos os
procedimentos de transmissão fluem através de um telegrama.
•
Canal half-duplex: é um canal físico simples no qual a direção pode ser revertida. As mensagens
podem fluir nas duas direções, mas nunca ao mesmo tempo.
•
Canal full-duplex: permite que mensagens sejam trocadas simultaneamente em ambas as
direções. Pode ser visto como dois canais simplex, um canal direto e um canal reverso.
4.3.2 Taxa de Transferência:
A taxa de transferência refere-se à velocidade com que os dados são enviados através de um canal
e é medido em transições elétricas por segundo. Na norma EIA, ocorre uma transição de sinal por bit e a
taxa de transferência e a taxa de bit (bit rate) são idênticas.
Outro conceito é a eficiência do canal de comunicação que é definido como o n° de bits de
informação utilizável (dados) enviados através do canal por segundo. Ele não inclui bits de sincronismo,
formatação, e detecção de erro que podem ser adicionados à informação antes da mensagem ser
transmitida.
- 22 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.3.3 Interfaces Seriais:
Comunicação Serial RS232
Tipo
Tipo de Rede
Ponto a ponto
Distâ
Distância Má
Máxima
15m
Máxima Taxa de Transmissã
Transmissão
Nível Elé
Elétrico
20kbps
nível lógico 0 (+5V à +15V)
nível lógico 1 (-5V à -15V)
Conectores
DB25 (por norma) DB9 (usual)
Canal de comunicaçã
comunicação
ção
full-duplex
(podendo ser utilizado como um canal
half-duplex)
Figura - Tabela de especificações da Comunicação Serial RS232
Comunicação Serial RS485
Tipo de Rede
multi-ponto
(até 32 transmissores ou receptores)
Distâ
Distância Má
Máxima
1200m
Máxima Taxa de Transmissã
Transmissão
10 Mbps
Conectores
Conectores
não definido
Canal de comunicaçã
comunicação
ção
half-duplex
Figura - Tabela de especificações da Comunicação Serial RS485
- 23 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.3.4 Protocolos de Comunicação:
Protocolo de comunicação é um conjunto de regras que definem a forma como os dispositivos
devem se comunicar. Existem protocolos que definem desde as características físicas de interligações entre
dispositivos, até como deve ocorrer o gerenciamento das mensagens.
Figura 21 - Níveis de Rede
•
Nível de Planta: no nível da planta temos a supervisão e gerenciamento de todo processo que
normalmente ocorre através de um software supervisório. De uma forma resumida, as ações
associadas a este nível são:
Supervisão; Comando; Planejamento; Banco de Dados.
Podemos citar como exemplo deste nível as redes: Profinet, Ethernet/IP e Fieldbus Foundation HSE.
•
Nível de Controle: este nível permite o controle sobre as ações do nível de campo em função das
definições e comandos dados pelo nível da planta. De uma forma resumida, as ações associadas a
este nível são:
Controle em tempo real; Segurança; Interfaceamento;
Podemos citar como exemplo deste nível as redes Profibus FMS, Modbus, e etc.
•
Nível de Campo: As redes que fazem parte deste nível constituem a base na hierarquia da
comunicação industrial. Através deste nível torna-se possível a aquisição e atuação direta dos dados
de chão de fábrica como valor de pressão, status de um motor, ligamento e desligamento de uma
válvula, etc. De uma forma resumida, as ações associadas a este nível são:
Aquisição das variáveis; Atuação sobre equipamentos.
Podemos citar como exemplo deste nível as redes Profibus DP e PA, AS-Interface, Interbus,
Devicenet, Fieldbus Foundation H1.
- 24 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.3.5 Características dos Protocolos:
Abaixo estão relacionadas as principais diferenças entre os protocolos existentes:
Características
Desenvolvedor
APR03M
Profibus DP
Devicenet
Ethernet
Modbus
Atos
Profibus
ODVA
ODVA
Modicon
Figura 23 - Tabela de diferenças entre diversos protocolos de comunicação
Velocidade
Modo de Comunicação
Distância máxima
N°. De nós sem repetidores
2 Mbit/s
12 Mbit/s
500 kbit/s 100 Mbit/s
Produtor
Origem
Produtor
Servidor
Consumidor Destino Consumidor
Cliente
1200m
1900m
500 m
100m
(RS-485) e (10 Km com (125kb)
4 km (fibra repetidor)
óptica)
32
32
62
400 por
segmento
Gerenciamento da rede
Multi-mestre
Multimestre
Multi-mestre
Mestreescravo
NA: Colisão
CSMA
19,2 kbit/s
Origem
Destino
1200m
02 (RS-232)
10 (RS-422)
32 (RS-485)
Mestreescravo
CD
Especificação do cabo
Par
trançado
Par
trançado
4 fios
Coaxial ou 4
fios
trançados
RS-232
RS-485
RS-422
Configuração dos dispositivos
via rede
Ferramentas de gerenciamento
Sim
Não
Não
Sim
Manual
Sim
Sim
Sim
Não
Não
Permite colisão
Sim
Sim
Não
Não
Sim
Sim
Sim
Sim
Não
Não
Sim
Não
Não
Não
Não
Sim
Sim
Sim
Não
Sim
Baixo
Alto
Alto
Baixo
Alto
Sim
Sim
Sim
Sim
Não
Permite comunicação por
eventos
Auto-configuração básica
Integração com outras redes
Quantidade de dispositivos
compatíveis no mercado
"Troca a quente"
- 25 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4 CONCEITOS DE SOFTWARE
4.4.1 Sistemas Numéricos:
Sistema numérico posicional é o nome dado a propriedade de um número variar o seu valor
dependendo da posição em que ocupa dentro de uma ordem de valores. Como exemplo, podemos
considerar o número 101. O número 1 não representa 1, mas sua posição representa 100 e é diferente do
último 1 que representa apenas 1 unidade. Assim podemos considerar que no sistema decimal o valor de
cada símbolo depende de sua posição. Ainda que aparentemente isto pareça trivial, ver-se-á que este
conceito é de extrema importancia em outros sistemas numéricos posicionais. A base de um sistema
numérico é a quantidade de algarismos utilizados para sua representação.
Em nossa atual sociedade a base mais utilizada é a base 10 (decimal) onde contamos com 10
algarismos para representação numérica - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Porém existem outras bases de
numeração como a base 12, base 60, base 2 (binária) e base 16 (hexadecimal). Temos que uma base b
possuirá b algarismos, variando entre 0 e (b-1).
- 26 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.1.1 Sistema Numérico Binário:
O sistema binário é um sistema de numeração posicional em que todas as quantidades se
representam utilizando como base o número dois, com o que se dispõe das cifras: zero e um (0 e 1).
Os computadores digitais trabalham internamente com dois níveis de tensão, pelo que o seu sistema
de numeração natural é o sistema binário (aceso, apagado). Com efeito, num sistema simples como este é
possível simplificar o cálculo, com o auxílio da lógica booleana. Em computação, chama-se um dígito binário
(0 ou 1) de bit, que vem do inglês Binary Digit. Um agrupamento de 8 bits corresponde a um byte (Binary
Term). Um agrupamento de 4 bits é chamado de nibble.
O sistema binário é base para a Álgebra booleana (de George Boole - matemático inglês), que
permite fazer operações lógicas e aritméticas usando-se apenas dois dígitos ou dois estados (sim e não,
falso e verdadeiro, tudo ou nada, 1 ou 0, ligado e desligado). Toda eletrônica digital e computação está
baseada nesse sistema binário e na lógica de Boole, que permite representar por circuitos eletrônicos digitais
(portas lógicas) os números, caracteres, realizar operações lógicas e aritméticas. Os programas de
computadores são codificados sob forma binária e armazenados nas mídias (memórias, discos, etc) sob esse
formato.
Dado um número N, binário, para expressá-lo em decimal, deve-se escrever cada número que o
compõe (bit), multiplicado pela base do sistema (base = 2), elevado à posição que ocupa. Uma posição à
esquerda da vírgula representa uma potência positiva e à direita uma potência negativa. A soma de cada
multiplicação de cada dígito binário pelo valor das potências resulta no número real representado. Exemplo:
1011 (binário)
1 × 23 + 0 × 22 + 1 × 21 + 1 × 20 = 11
Portanto, 1011 é 11 em decimal.
4.4.1.2 Sistema Numérico Octal:
Sistema Octal é um sistema de numeração cuja base é 8, ou seja, utiliza 8 símbolos para a
representação de quantidade. No ocidente, estes símbolos são os algarismos arábicos: 0 1 2 3 4 5 6 7
O octal foi muito utilizado em informática como uma alternativa mais compacta ao binário na
programação em linguagem de máquina. Hoje, o sistema hexadecimal é mais utilizado como alternativa ao
binário.
Este sistema também é um sistema posicional e a posição de seus algarismos determinada em
relação à vírgula decimal. Caso isso não ocorra, supõe-se implicitamente colocada à direita do número. A
aritmética desse sistema é semelhante a dos sistemas decimal e binário, o motivo pelo qual não será
apresentada.
Exemplo: Qual o número decimal representado pelo número octal 4701 ?
Utilizar o TFN. 4 x 8³ + 7 x 8² + 0 x 8¹ + 1 x 8° = = 2048 + 448 + 0 + 1 = 2497
- 27 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.1.3 Sistema Numérico Decimal:
O sistema decimal é um sistema de numeração de posição que utiliza a base dez.
Baseia-se em uma numeração de posição, onde os dez algarismos indo-arábicos : 0 1 2 3 4 5 6 7 8 9 servem
a contar unidades, dezenas, centenas, etc. da direita para a esquerda. Contrariamente à numeração
romana, o algarismo árabe tem um valor diferente segundo sua posição no número: assim, em 111, o
primeiro algarismo significa 100, o segundo algarismo 10 e o terceiro 1, enquanto que em VIII (oito em
numeração romana) os três I significam todos 1.
Assim:
No sistema decimal o símbolo 0 (zero) posicionado à esquerda do número escrito não altera seu valor
representativo. Assim: 1; 01; 001 ou 0001 representam a mesma grandeza, neste caso a unidade. O símbolo
zero posto à direita implica multiplicar a grandeza pela base, ou seja, por 10 (dez).
4.4.1.4 Sistema Numérico Hexadecimal:
O sistema hexadecimal é um sistema de numeração posicional que representa os números em base 16,
portanto empregando 16 símbolos;
Está vinculado à informática, pois os computadores costumam utilizar o byte ou octeto como unidade básica
de memória; e, devido a um byte representar 28 = 256 valores possíveis, e isto poder representar-se como
o que, segundo o teorema geral da numeração posicional, equivale ao número em base 16 10016, dois
dígitos hexadecimais correspondem exactamente — permitem representar a mesma linha de inteiros — a
um byte.
Isto fá-lo muito útil para a visualização de vertidos de memória já que permite saber de jeito singelo o
valor de cada byte da memória.
Devido ao sistema decimal geralmente usado para a numeração apenas dispor de dez símbolos, deve-se
incluir seis letras adicionais para completar o sistema. O conjunto de símbolos fica, portanto, assim:
Ter-se-á de notar que A16 = 1010, B16 = 1110 e assim sucessivamente. Também são usadas variedades com
letras minúsculas em vez de maiúsculas.
- 28 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.1.5 Resumo:
•
Desde que o ser humano necessitou contabilizar os objetos de seu cotidiano e realizar operações
sobre os valores obtidos, ele desenvolveu sistemas numéricos diversos. Entre os diversos sistemas
desenvolvidos em todas as épocas, o mais proeminente em nossa sociedade moderna é o sistema
decimal, ou seja, o sistema formado por digítos entre 0 e 9, contabilizados de 10 em 10, e cuja
combinação pode constituir todos os números possíveis. Porém existem outros sistemas numéricos,
utilizados para diversos fins.
•
Sistema numérico posicional é o nome dado a um sistema onde os números tem a propriedade
variar o seu valor dependendo da posição em que ocupa dentro de uma ordem de valores. Como
exemplo, podemos considerar o número 101. O número 1 não representa 1, mas sua posição
representa 100 e é diferente do último 1 que representa apenas 1 unidade.
•
A base de um sistema numérico é a quantidade de algarismos utilizados para sua representação. Em
nossa atual sociedade a base mais utilizada é a base 10 (decimal) onde contamos com 10
algarismos para representação numérica - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Porém existem outras bases de
numeração como a base 12, base 60, base 2 (binária) e base 16 (hexadecimal).
•
O sistema binário é um sistema de numeração posicional em que todas as quantidades se
representam utilizando como base o número dois, com o que se dispõe das cifras: zero e um (0 e
1). Sistema Octal é um sistema de numeração cuja base é 8, ou seja, utiliza 8 símbolos para a
representação de quantidade. No ocidente, estes símbolos são os algarismos arábicos: 0 1 2 3 4 5 6
7
- 29 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.2 Conceitos Lógicos:
Sistema de numeração é o conjunto de símbolos utilizados para representação de quantidades e as
regras que definem a forma de representação. Um sistema de numeração é determinado fundamentalmente
pela base (número de símbolos utilizados). A base é o coeficiente que determina qual o valor de cada
símbolo de acordo com a sua posição. Muitos sistemas modernos de computação não representam valores
numéricos usando o sistema decimal. Em vez disso, eles simplesmente usam o binário ou o sistema de
numeração de complemento de dois. Para entender as limitações da aritmética do computador, você deve
entender como os computadores representam os números. Você já deve ter utilizado o sistema decimal
(base 10) por tanto tempo que provavelmente o acha muito natural. Quando você vê um número como
"123", você não pensa sobre o valor 123; ao contrário, você gera uma imagem mental de quantos itens este
valor representa. Na realidade, contudo, o número 123 representa:
1 Centena + 2 Dezenas + 3 Unidades => 100 + 20 + 3 => Formando assim: 123 em decimal;
Cada dígito aparecendo à esquerda do ponto decimal (ou da virgular, conforme a preferência)
representa um valor entre 0 e 9 que multiplica uma potência positiva de base dez.
4.4.2.1 Bit:
Bit (simplificação para dígito binário, "BInary digiT" em inglês) é a menor unidade de informação
que pode ser armazenada ou transmitida. Usada na Computação e na Teoria da Informação. Um bit pode
assumir somente 2 valores, por exemplo: 0 ou 1, verdadeiro ou falso.
Embora os computadores tenham instruções (ou comandos) que possam testar e manipular bits,
geralmente são idealizados para armazenar instruções em múltiplos de bits, chamados bytes. No princípio,
byte tinha tamanho variável mas atualmente tem oito bits. Bytes de oito bits também são chamados de
octetos. Existem também termos para referir-se a múltiplos de bits usando padrões prefixados, como kilobit
(kb), megabit (Mb) e gigabit (Gb). De notar que a notação para bit utiliza um "b" minúsculo, em oposição à
notação para byte que utiliza um "B" maiúsculo (kB, MB, GB).
Fisicamente, o valor de um bit é, de uma maneira geral, armazenado como uma carga elétrica acima
ou abaixo de um nível padrão em um único capacitor dentro de um dispositivo de memória. Mas, bits podem
ser representados fisicamente por vários meios. Os meios e técnicas comumente usados são: Pela
eletricidade, como já citado, por via da luz (em fibras ópticas, ou em leitores e gravadores de discos ópticos
por exemplo), por via de ondas eletromagnéticas (rede wireless), ou também, por via de polarização
magnética (discos rígidos).
Bits
Exemplo: Podemos atribuir a cada entrada ou saída digital do CLP, os valores correspondentes ao sistema
binário (0 => bit desligado) ou (1 => bit ligado), associando o estado lógico de cada ponto ao valor contido
ou armazenado em um bit específico.
- 30 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.2.2 Nibble:
Nibble - Sucessão de quatro cifras binárias (bits)[1].
Um nibble é um conjunto de quatro bits. Não seria um tipo de dado muito interessante não fosse a
existência de dois itens especiais: números BCD (binary coded decimal) e números hexadecimais. Um dígito
BCD ou um dígito hexadecimal precisam exatamente de quatro bits para serem representado. Com um
nibble podemos representar até 16 valores distintos. No caso dos números hexadecimais, cada um dos
valores 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E e F é representado por quatro bits. Quaisquer 16 valores
distintos podem ser representados por um nibble, mas os mais importantes e conhecidos são os dígitos BCD
e hexadecimais. O bit 0 é o bit de ordem baixa (O.B.) ou menos significativo e o bit 7 é o bit de ordem alta
(O.A.) ou mais significativo. Os outros bits são referenciados pelos seus números. Observe que um byte
possui dois nibbles.
Nibbles
O nibble com os bits de 0 a 3 é o nibble de ordem baixa (O.B.) ou menos significativo e o nibble com
os bits de 4 a 7 é o nibble de ordem alta (O.A.) ou mais significativo. Como o byte possui dois nibbles e cada
nibble corresponde a um dígito hexadecimal, valores byte são expressos através de dois dígitos
hexadecimais.
A sua importância deve-se ao fato que 4 é o número mínimo de dígitos binários necessários para
representar uma cifra decimal. Os nibbles são, portanto, a base do sistema de codificação BCD, que
representam números decimais como sucessões de nibbles que representam as cifras destes. Por exemplo,
tendo a seguinte correspondência entre as dez cifras decimais e suas correspondentes representações
binárias, conforme tabela:
0000 =" 0 0001 =" 1 0010 =" 2 0011 =" 3 0100 =" 4
0101 =" 5 0110 =" 6 0111 =" 7 1000 =" 8 1001 =" 9
- 31 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.2.3 Byte:
Um byte, baite[1] ou octeto de bits, é um dos tipos de dados integrais em computação. É usado
com frequência para especificar o tamanho ou quantidade da memória ou da capacidade de armazenamento
de um certo dispositivo, independentemente do tipo de dados armazenados.
A codificação padronizada de byte foi definida como sendo de 8 bits. O byte de 8 bits é mais
comummente chamado de octeto no contexto de redes de computadores e telecomunicações.
A uma metade de um byte, dá-se o nome de nibble ou semioctecto.
Byte
Para os computadores, representar 256 números binários é suficiente. Por isso, os bytes possuem 8
bits. Basta fazer os cálculos. Como um bit representa dois valores (1 ou 0) e um byte representa 8 bits,
basta fazer 2 (do bit) elevado a 8 (do byte) que é igual a 256, ou seja 28 = 256.
Segundo norma da IEC, lançada em 2000, foi definida uma nova nomenclatura para dados de base
dois em substituição a nomenclatura usada erroneamente de base dez separando a confusão causada entre
proporção 1:1000 ou 1:1024, veja mais em Prefixos Binários.
Exemplo: As entradas e saídas digitais do CLP podem ser agrupadas em forma de bytes.
- 32 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.2.4 Word:
O word é um conjunto de 2 bytes (16 bits). É também declarável: você pode declarar uma variável
do tipo word. Nele é possível armazenar valores sem sinal de 0 a 65.535, ou, com sinal, de -32.768 a
32.767. O word (palavra) é um grupo de 16 bits, numerados da direita para a esquerda de 0 a 15.
Word
O bit 0 é o menos significativo e o bit 15 o mais significativo. Os restantes são referenciados pelos
seus números. Observe que o word é composto por dois bytes. O byte com os bits de 0 a 7 é o byte menos
significativo ou de ordem baixa (O.B.) e o byte com os bits de 8 a 15 é o byte mais significativo ou de ordem
alta (O.A.).
Bytes da Word
É claro que um word também pode ser dividido em quatro nibbles. O nibble menos significativo no
word, de O.B., é o nibble 0 e o nibble mais significativo no word, de O.A., é o nibble 3, este nibble pode ser
localizado mais a esquerda.
Nibbles da Word
Com 16 bits é possível obter 216 = 65.536 valores diferentes. Estes podem ser valores numéricos
positivos de 0 a 65.535, numéricos com sinal de -32.768 a 32.767 ou qualquer outro tipo de dado que
possua até 65.536 valores. Words são usados principalmente para três tipos de dados: valores inteiros,
deslocamentos (offsets) e valores de segmento.
Exemplo: Valores numéricos inteiros, resultados de operações aritméticas, sistemas de contagem; e
várias instruções de temporizações, bem como, entradas ou saídas analógicas são armazenadas em words.
- 33 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
4.4.2.5 Double Word:
O double word é um conjunto de 2 words (32 bits). Nele é possível guardar valores sem sinal de 0 a
4.294.967.295, ou, com sinal, de -2.147.483.648 a 2.147.483.647; O double word (palavra dupla) é o que o
nome indica: um par de words. Portanto, um double word é um conjunto de 32 bits.
Double Word
Naturalmente, um double word pode ser quebrada em 2 words, 4 bytes ou 8 nibbles. Conforme as
ilustrações abaixo representadas:
Words da double word
Bytes da double word
Nibbles da double word
Double words podem representar todo tipo de coisa. Em primeiro lugar estão os endereços
segmentados. Outro item comumente representado por um double word são os valores inteiros de 32 bits,
que podem ir de 0 a 4.294.967.295, ou números com sinal, que podem ir de -2.147.483.648 a
2.147.483.647. Valores de ponto flutuante de 32 bits também cabem num double word. Na maioria das
vezes, os double words são usados para armazenarem endereços segmentados.
Exemplo: Valores numéricos inteiros maiores de 16 bits, bem como, valores numéricos fracionários,
com vírgula em ponto flutuante, são todos armazenados em double words.
- 34 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5 HADWARE E SOFTWARE PANASONIC
Neste capítulo, estudaremos as características técnicas e periféricos dos principais modelos de PLC's
(Controladores Lógicos Programáveis) da Matsushita, e sua programação básica através das instruções de
comando da plataforma do software FPWin GR V2.xx e as respectivas funções e recursos disponíveis.
A ilustração acima, nos mostra algumas famílias de CLP´s (Controladores Lógicos Programáveis) da
PANASONIC disponíveis no mercado, atualmente. Uma das grandes vantagens, se comparadas as demais
tecnologias, se caracateriza pelo fato de que a mesma plataforma de programção, no caso, o FPWin GR
V2.xx contempla praticamente todos os modelos e famílias de CPU´s existentes do mercado, inclusive
envolvendo alguns dos itens descontinuados.
- 35 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1 CONHECENDO O HARDWARE PANASONIC
Neste capítulo, estudaremos as principais séries e famílias de CLP´s da PANASONIC, mais utilizadas
de mercado, incluindo suas principais características de hardware, bem como, quantidade de pontos
máximos admissíveis, os respectivos módulos de expansão disponíveis, capacidade de armazenamento,
posições de memória, velocidade de varredura, taxa de comunicação e funções básicas disponíveis para os
modelos em questão.
•
FPe Séries;
•
FP0 Séries;
•
FP0R Séries;
•
FPSigma Séries;
•
FPX Séries;
•
FP2 Séries;
5.1.1 FPe Series
Controlador lógico programável com 2 displays de 7 segmentos e 3 cores incorporados. Ele possui
todas as características de um CLP da familia FP0. Seu display frontal pode mostrar variáveis como números
ou caracteres ASCII de até 5 digitos e a proteçao do frontal é IP66. Suas dimensões são 48 x 48 x 75,5mm.
Ideal para pequenas aplicações podendo integrar em um só equipamento vários temporizadores, contadores
e até controladores de temperatura, além da função de interface homem-máquina. Agora disponíveis com
comunicação MODBUS escravo RS485.
- 36 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 37 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 38 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.2 FP0 Series
Modelo super compacto para aplicações desde 10 até 128 pontos. Possui CPU’S com 6E/4S, 8E/6S,
8E/8S e 16E/16S com saídas a relé ou transistor e alimentação 24VCC. Podem receber até 3 expansões
digitais ou analógicas (veja modelos abaixo). As entradas e saídas analógicas têm12 bits de resolução.
Possui 4 entradas rápidas de 10 KHz e 2 saídas pulsadas até 10KHz para controle de posicionamento.
Capacidade de programação de 2K7, 5K ou 10K passos. Porta de programação RS232 e uma porta RS232
bidirecional opcional. Possui rotina de PID com auto sintonia, funções matemáticas com e sem ponto
flutuante, e velocidade de scan de 0,9µS por passo de programa. Possui módulos de comunicação ProfibusDP escravo e Ethernet entre outros. Dimensões da CPU: 90 x 25 x 60 mm. Além de tudo isto, é programado
pelo FPWIN-GR , a interface de programação mais amigável do mercado.
- 39 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 40 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 41 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 42 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 43 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.3 FP0R Series
Novo CLP da família FP da Panasonic. Evolução do tradicional FP0. Agora com porta de programação
USB, memória de programação de até 32KW, comunicação Modbus, 6 entradas de contagem rápida até
50KHz e 4 saídas rápidas 50KHz. Dispõe de CPU’S com 6E/4S, 8E/6S, 8E/8S e 16E/16S com saídas a relé 2A
ou transistor 0,2A e alimentação 24VCC. Podem receber até 3 expansões digitais ou analógicas. Porta de
comunicação RS232 incorporada e modelos com 2ª porta RS232. Alta velocidade de processamento
podendo executar instruções em 80nseg. Possui memória de comentário o que facilita a utilização do
software padrão IEC o FPWINPRO. Novo conceito de entradas e saídas de alta velocidade permite a
utilização de pulsos de entrada para influenciar as saídas de alta velocidade diretamente, isto permite uma
nova serie de aplicações com sincronismo entre dois movimentos. Além disto, já possui blocos de função
que facilitam aplicações como, por exemplo, máquinas etiquetadoras.
- 44 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 45 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.4 FPSIGMA Series
Trabalha com as mesmas expansões da família FP0 no seu lado direito. No seu lado esquerdo pode
agregar até 4 expansões digitais de 32E/32S digitais e/ou módulos de controle de posição de 1 ou 2 eixos. A
CPU processa uma instrução básica em 0,4 µs, possui 1024 contadores ou temporizadores, 4 entradas de
contagem rápida de até 50KHz e duas saídas pulsadas de até 100KHz para controle de movimento (servo
motor ou motor de passo). Estas saídas podem controlar 2 eixos com interpolação linear ou circular. Além
disto tem também PID com auto sintonia, funções matemáticas em ponto flutuante ou números inteiros, 14
indexadores para manipulação de registros de memória, 12KB de programação e 32KB de dados de usuário
(que podem ser retentivos mediante a utilização de bateria de backup opcional), relógio e calendário
incorporados na CPU e apresenta ainda dois potenciômetros para utilização geral agregados. Programável
em ambiente Windows, com linguagem Ladder e software altamente amigável, permitindo ainda a
armazenagem não só dos programas de aplicação como também de seus comentários na CPU.
- 46 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 47 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.5 FPX Series
O CLP FPX é o mais novo integrante da família FP de CLPs da Panasonic. Com seu design compacto
o FPX possui modelo de CPU com 14, 30 e 60 E/S. A alimentação é de 100/240VCA e possui fonte para
alimentação das entradas. Suas saídas são a relé, possui 8 entradas de contagem rápida de até 50KHz,
memória de programação de até 32KW e relógio/calendário tempo real. Dispõe de uma porta de
programação RS232 e nos modelos de 30 e 60 E/S há também a porta USB para programação; podem ser
adicionados a CPU cassetes com funções especificas tais como portas de comunicação RS232 ou RS485,
entradas digitais, saídas digitais, entradas de contagem rápida, saídas rápidas para controle de posição de
servo motores, entradas analógicas entre outros. Pode receber expansões laterais de entradas e saídas
digitais (modelos de 16 e 30 E/S) bem como as expansões digitais, analógicas e de comunicação da linha
FP0. Dispõe de um amplo leque de funções de alto nível incluindo a comunicação Modbus-RTU mestre ou
escravo e PID auto tuning . Novas expansões disponíveis: 2 saídas analógicas, 2 entradas e 1 saída
analógica, comunicação ethernet e muito mais.
** A família, CLP FPX admite uma configuração máxima de 300 pontos de I/O utilizando os módulos
disponíveis da mesma família, entretanto podemos chegar a 384 pontos de I/O se passarmos a utilizar os
módulos auxiliares da família do FP0, bem como, os módulos compactos, conforme ilustração anterior.
- 48 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 49 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.6 FP2 Series
Modelo tipo bastidor de dimensão reduzida para aplicações de médio e grande porte, a Com função
de fixarção é por trilho DIN ou parafusos. A CPU FP2 pode controlar até 1600 pontos locais com um scan
típico de 1,6mS para 1K passos de programa, tem capacidade de 16K passos de programa, expansível a 32K
passos. A CPU FP2SH pode controlar até 2048 pontos locais com um scan de 0,2ms por 1K passos de
programa, tem capacidade de até 120K passos de programa. Possuem bastidores de 5, 7, 9, 12 e 14 slots. O
FP2 pode controlar 2 bastidores e o FP2SH controla até 3 bastidores. As CPUs dispõem de 2 portas RS232
(uma de programação e outra de comunicação) que podem trabalhar até 115 Kbps. Além disto dispõem de
função PID auto-tuning e funções aritiméticas com ponto flutuante entre outras. Possuem módulos de 16 e
64 entradas digitaís 24VCC, de 16 entradas digitais 20VCA, de 16 saídas relé e de 16 e 64 saídas transistor.
Há também um módulo com 32 entradas e 32 saídas digitais. O módulo de entrada analógica aceita sinais
de +/- 10V (16 bits), +/- 100mV (16 bits), +/- 20mA (15 bits), 1-5V (13 bits), 4-20mA (13 bits), temporares
tipo J, K, R, S e T e termo-resistências PT 110 e PT 100 (0,1oC). O tipo de sinal é selecionado por software.
O módulo de saídas analógicas tem resolução de 12 bits e fornece sinais de 0-20mA e +/- 10V. Além disto
existem os módulos de posicionamento de 2 ou 4 eixos, de contagem rápida, de comunicação Profibus DP e
FMS, Ethernet, entre outros. O FP2 pode ser programado com software de acordo com a norma IEC1131 e
possui a vantagem de armazenar todos os comentários na CPU. Cada módulo tem 28mm de largura, 100mm
de altura e 110mm de profundidade.
- 50 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
- 51 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.7 Expansões para FP0 e FPG (Sigma):
5.1.8 Capacidade de Armazenamento – Posições de Memória:
- 52 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.8.1 Capacidade de Armazenamento - FPe Series !
- 53 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.8.2 Capacidade de Armazenamento – FP0 Series !
- 54 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.8.3 Capacidade de Armazenamento – FP0R Series !
- 55 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.8.4 Capacidade de Armazenamento – FPG (Sigma) Series !
- 56 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.1.8.5 Capacidade de Armazenamento – FPX Series !
- 57 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.2 CONHECENDO O SOFTWARE PANASONIC
Nesta apostila, estudaremos as características técnicas dos principais modelos de PLC's da Matsushita,
e sua programação básica através das instruções de comando da plataforma do software FPWinGR V2.xx e
as respectivas funções e recursos disponíveis. Abaixo, seguem características gerais dos modelos:
CLP = Controladores Lógicos Programáveis !
• Dispositivo microprocessado passivo de programação externa.
• Projetado especificamente para ambientes industriais.
• Permite a sua utilização em vários setores produtivos.
• Processa informações de controle, lógica e cálculos.
• Armazena informações de processos e dados matemáticos.
• Processa instruções de temporização, contagem e comparações.
• Permite a sua utilização comunicando-se com outros dispositivos.
• Mantém dados retentivos mesmo estando desenergizado.
Palestra Técnica - Aplicações de Produtos !
A principal característica do endereçamento da linha FP series de CLP's PANASONIC e Matsushita, é
a de trabalhar com dados em 16 bits, ou seja, palavras (words). Existem porém funções de 32 bits e ponto
flutuante, mas a programação básica e movimentação de dados é sempre feita em words.
- 58 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.2.1 Formataçãode dados:
Um dado de 16 bits possui a seguinte estrutura :
• Número do Bit (00 - 0F)
F
0
E
1
D
1
C
0
B
1
A
0
9
1
8
0
7
0
6
0
5
0
4
0
3
1
2
0
1
1
0
0
• Valor contido no Bit (em Binário)
Se chamarmos esta word de Word 0 ou W0, podemos dizer então que W0
contém uma constante decimal K27146 ou hexadecimal H6A0A .
No PLC Matsushita declaramos uma constante decimal, acrescentando a letra
"K" antes do número, e declaramos uma constante hexadecimal acrescentando a letra
"H" antes do número.
5.2.2 Endereçamento do CLP Panasonic:
O número de entradas, saídas, registradores, relés internos, contadores,
temporizadores, etc..., varia entre os modelos de PLC's, entretanto a forma em que o
endereçamento é feito, não varia.
Vamos estudar neste momento a forma de lidar com esses dados, e mais
adiante estudaremos com detalhes todas as funções. Abaixo temos a sintaxe de
enderaçamento:
- 59 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.2.3 Entradas e Saídas do CLP Panasonic:
As entradas são referenciadas pela letra "X", e saídas pela letra "Y". Ou seja, a
entrada 0 da porta de entrada de um PLC deve ser chamada no software por X0, e a
saída 0 por Y0.
Os dados das portas podem também ser tratados como words para fins de operações matemáticas.
Neste caso deve-se levar em conta o número de entradas e saídas disponíveis no CLP. Tomemos como
exemplo o modelo FP0-C10RS com 6 entradas digitais e 4 saídas a relé.
FP0-C10RS
- 60 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
O sistema de hardware do FP0 sempre trabalha com duas words na entrada e na
saída de cada módulo, neste caso pode-se dizer que WX0 e WX1 são as respectivas
entradas e WY0 e WY1 são as respectivas saídas.
Como o PLC possui apenas 6 entradas e cada word consiste de 16 bits, então
descarta-se WX1, pois não possui nenhum bit na entrada do PLC.
Como são apenas 6 entradas, até o sexto bit da word WX0 é usado o restante
permanece em 0, ou seja, apenas os bits X0, X1, X2, X3, X4 e X5 serão usados.
• WX0
XF XE XD XC XB XA X9 X8 X7 X6 X5 X4 X3 X2 X1 X0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
1
1
As saídas são 4, então a word de saída WY1 permanece inativa, e até o quarto
bit da word WY0 é usado, o restante permanece em 0, ou seja, apenas os bits Y0, Y1,
Y2 e Y3 serão usados.
• WY0
YF YE YD YC YB YA Y9 Y8 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
0
0
0
0
0
0
0
0
0
0
0
0
1
1
1
1
• RELÉS INTERNOS:
Os relés internos são usados para complementar a lógica do programa, e não tem
nenhuma relação com saídas e entradas externas.
Uso no complemento da lógica
- 61 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Os relés quando individualmente endereçados como bobinas e contatos, são
numerados em ordem hexadecimal, R0 - RF, R10 - R1F, etc...
Pode-se também trabalhar com relés usando a forma de um dado composto
através da manipulação de words.
Por exemplo, a word WR0, abrange os relés R0 até RF, a word WR1, abrange
os relés R10 até R1F, a word WR2 abrange os relés R20 até R2F e assim
sucessivamente.
A quantidade de relés internos varia entre os modelos de PLC's disponíveis e
será adiante especificada.
• TEMPORIZADORES:
Os temporizadores são facilmente endereçáveis, os blocos temporizadores são
nomeados TM# ( # é relativo ao tipo de contagem realizada, será estudado mais à
frente) e os contatos auxiliares são nomeados T.
Ou seja, para endereçar um temporizador de número zero, escreve-se TM#0.
Para endereçar um contato auxiliar para este temporizador, escreve-se T0.
Bloco temporizador
O funcionamento dos temporizadores será estudado mais adiante.
- 62 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
• CONTADORES:
Os contadores são nomeados da seguinte forma; CT para os blocos contadores
e C para seus contatos auxiliares. Ou seja, para endereçar um contador de número
cem, escreve-se CT100. Para endereçar um contato auxiliar para este contador,
escreve-se C100.
O funcionamento dos contadores será estudado mais adiante.
• REGISTRADORES OU DATA TRANSFERS:
Os registradores de uso geral são o elemento principal nas operações com
dados nos PLC's Matsushita.
Os registradores de uso geral ( também nomeados DT's sigla de "data
transfer registers" ) são específicos para transferência e manipulação de dados de 16
bits, 32 bits e ponto flutuante; e não podem ser usados da mesma forma que os WR's,
ou seja, não podem ser usados como contatos unitários.
O número de DT's disponíveis varia entre os modelos de PLC's. Para nomearse um DT, basta escrever DT precedido do número que se quer dar a ele, por
exemplo : DT1, DT100, DT3000, etc...
De início um DT é usado para armazenar um dado de 16 bits. Quando uma instrução
necessitar armazenar ou operar com dados de 32 bits ou ponto flutuante, a mesma
aloca o DT subsequente ( DT n, DTn + 1).
- 63 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Por exemplo, suponha-se que se queira converter um valor de 16 bits contido
em DT100 , para um valor de 32 bits. A instrução alocará o mesmo DT100 e o
próximo DT101, ambos serão um único valor de 32 bits e deve-se então tomar o
cuidado de não se utilizar do DT101 para nenhuma outra operação, sob pena de
causar modificação não desejada a este número.
• DT - Registrador de uso geral:
DTn
16 bits - Valor máximo sem sinal 0 a 65535 (unsigned)
16 bits - Valor máximo com sinal -32767 a +32767 (signed)
Qualquer valor superior a este deve ser trabalhado na forma de 32 bits:
(DTn e DTn+1)
Seus bits NÃO podem ser trabalhados na forma de contatos lógicos.
• RETENTIVIDADE DE DADOS:
As linhas FP0, FPX, FPΣ e FP2 possuem retentividade de dados, cuja
quantidade varia de acordo com os modelos. No próximo capítulo analisaremos a
alocação de memória dos principais modelos, juntamente com seus respectivos mapas
de dados retentivos. Disponibilizamos as principais informações referente a estes
itens, no capítulo anterior.
- 64 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.2.4 Plataforma de Programação FPWin GR:
Barra de
status
Indicador
de edição
Barra de
ferramentas
Barra de
menus
Barra de
comentários
Barras de
funções
O software FPWin GR é o software utilizado para programar os PLC's
Matsushita.Veremos agora as funcionalidades do software, para mais adiante
adentrarmos às funções básicas de programação.
• Barra de Menus:
Todas as operações e funções do FPWin GR estão disponíveis aqui. Cada
menu corresponde a uma aplicação relevante.
• Barra de Ferramentas:
Funções que são freqüentemente utilizadas no FPWin GR, estão disponíveis
aqui através de botões de atalho.
- 65 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Criar um novo programa
Abrir um programa já existente
Salvar o programa atual
Imprimir programa atual
Upload/Download dos softwares
Cortar, copiar e colar instruções selecionadas pelo cursor
Inserir linha em branco entre a lógica
Inserir continuação de lógica para próxima linha
Priorizar modo de entrada de texto
Compilar o programa
Buscar instruções ou contatos no programa
Exibe/oculta comentários
Manter posição da janela
Modo offline (desconectado ao PLC)
Modo online (conectado ao PLC)
Coloca o PLC em modo RUN
Inicia/Pausa monitoramento do programa
Sobre o FPWin GR
- 66 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
• Barra de indicação de comentários:
Esta barra indica os comentários vinculados ao contato selecionado pelo cursor
• Barra de status do programa:
Esta barra indica o tipo de PLC selecionado, o número de passos no programa
e o status da comunicação entre o FPWin GR e o PLC.
• Barras de funções:
Quando um programa está sendo inserido ou editado, instruções, funções e
valores podem ser selecionados por estas barras.
A barra de funções que contém as instruções pode ser acessada pelo teclado da
seguinte forma :
1.a linha : Através das teclas F1 até F12
2.a linha : Através das teclas Shift+F1 até Shift+F12
3.a linha : Através das teclas Ctrl+F1 até Ctrl+F12
• Indicador de edição de dados:
Indica o que será inserido na posição do cursor, quando uma instrução está
sendo editada.
- 67 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
• Inserindo Instruções:
Quando se está inserindo instruções através da barra de funções, a mesma se
altera de acordo com a instrução a ser editada, para que os novos parâmetros da
instrução selecionada possam ser inseridos.
Alguns exemplos :
- 68 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
• Conversão de Programas:
Após a edição/inserção de um programa, se faz necessário compilar o
programa para que este possa ser transferido para o PLC.
Esta tarefa é feita pressionando os respectivos botões nas barras de função e
ferramentas.
Ao compilar o programa, o software verifica se o usuário não cometeu nenhum
erro de sintaxe de programação, como saídas duplicadas ou linhas e instruções
incompletas.
No momento em que o usuário faz o download (transmissão) do software para
o PLC, o mesmo automaticamente compila o programa atual.
• Enviando (download) e recebendo (upload) o software usuário:
Para carregar (download) um programa no PLC, basta utilizar as teclas de
atalho nas barras de ferramentas e funções :
- 69 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Para receber (upload) um programa que está no PLC, basta utilizar as teclas de
atalho nas barras de ferramentas e funções :
5.3 INSTRUÇÕES DE PROGRAMAÇÃO
5.3.1 Instruções Básicas de Sequência:
5.3.1.1 ST (Start)
Esta instrução é usada para começar uma determinada linha de programa com
um contato NA. Para utilizar esta instrução deve-se clicar sobre o botão
da
barra de ferramentas ou teclar F1 e digitar o operando.
5.3.1.2 ST/ (Start Not)
Esta instrução é usada para começar uma determinada linha de programa com
um contato NF. Para utilizar esta instrução deve-se clicar sobre o botão
da
barra de ferramentas ou teclar F1, depois clicar sobre o botão
também da barra
de ferramentas ou teclar F8 e digitar o operando.
5.3.1.3 OT (Out)
Se trata da saída pura e simples sem retenção. É o resultado da operação lógica
executada. Para utilizar esta instrução deve-se clicar sobre o botão
da barra de
ferramentas ou teclar F4 e digitar o operando.
- 70 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.1.4 (Not) /
Inverte o resultado da operação lógica executada até esta instrução. Para
utilizar esta instrução deve-se clicar sobre o botão
da barra de ferramentas ou
teclar F8.
5.3.1.5 AN (And)
Insere um contato NA em série com um outro contato. Para utilizar esta
instrução coloca-se o cursor ao lado do contato com o qual quer se fazer esta lógica,
clicar sobre o botão
da barra de ferramentas ou teclar F1 e digitar o operando.
5.3.1.6 AN/ (And Not)
Coloca um contato NF em série com um outro contato. Para utilizar esta
instrução coloca-se o cursor ao lado do contato com o qual quer se fazer esta lógica,
da barra de ferramentas ou teclar F1, depois clicar sobre o
clicar sobre o botão
botão
da barra de ferramentas ou teclar F8 e digitar o operando.
5.3.1.7 OR (Or)
Insere um contato NA em paralelo com outro contato. Para utilizar esta
instrução coloca-se o cursor embaixo do contato com o qual quer se fazer esta lógica,
clicar sobre o botão
da barra de ferramentas ou teclar F2 e digitar o operando.
5.3.1.8 OR/ (Or Not)
Insere um contato NF em paralelo com outro contato. Para utilizar esta
instrução coloca-se o cursor embaixo do contato com o qual quer se fazer esta lógica,
clicar sobre o botão
da barra de ferramentas ou apertar a tecla F2, depois clicar
sobre o botão
também da barra de ferramentas ou teclar F8 e digitar o
operando.
- 71 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.1.9 SET (Set)
Mantém a saída ligada. Para utilizar esta instrução clique sobre o botão
da barra de ferramentas, ou tecle Shift+F1, e digite o operando.
5.3.1.10
ST (Reset)
Mantém a saída desligada. Para utilizar esta instrução clique sobre o botão
da barra de ferramentas, ou tecle Shift+F2, e digite o operando.
5.3.1.11
DF (Leading edge differential)
Liga o contato por uma varredura quando uma borda de subida é detectada.
Para utilizar esta instrução clicar sobre o botão
ou teclar Shift+F3.
5.3.1.12
da barra de ferramentas,
DF/ (Trailing edge differential)
Liga o contato por uma varredura quando uma borda de descida é detectada.
Para utilizar esta instrução clicar sobre o botão
duas vezes, ou teclar Shift+F3 duas vezes seguidas.
da barra de ferramentas,
5.3.2 Temporizadores:
Para inserir um temporizador na lógica, deve-se pressionar o botão
barra de ferramentas, a qual indicará um nova categoria de contatos :
da
- 72 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Onde TMX, TMY, TMR e TML são diferentes tipos de temporizadores e serão
explicados a seguir:
Um temporizador funciona da seguinte forma : uma vez havendo sinal em sua
entrada (que deve permanecer até o fim da contagem), o mesmo irá contar o tempo
pertinente a sua categoria e constante selecionada. Alcançado o valor máximo, o
mesmo terá sinal em sua saída, que pode ser usado pela lógica do programa.
Se o sinal da entrada for retirado, o sinal da saída deixará de existir e o valor do
temporizador retornará a zero.
5.3.2.1 TMX
Temporizador com base de tempo de 0,1s.
Para selecionar este temporizador deve-se clicar sobre o botão
(ou teclar
F1) na barra de ferramentas, depois selecionar o número do temporizador (ex.
TMX0) e a constante de tempo a ser utilizada.
5.3.2.2 TMY
Temporizador com base de tempo de 1,0s.
da barra
Para selecionar este temporizador deve-se clicar sobre o botão
de ferramentas, depois selecionar o número do temporizador (ex. TMY1) e a
constante de tempo a ser utilizada.
5.3.2.3 TMR
Temporizador com base de tempo de 0,01s.
- 73 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Para selecionar este temporizador deve-se clicar sobre o botão
da barra
de ferramentas, depois selecionar o número do temporizador (ex. TMR2) e a
constante de tempo a ser utilizada.
5.3.2.4 TML
Temporizador com base de tempo de 0,001s.
Para selecionar este temporizador deve-se clicar sobre o botão
da barra
de ferramentas, depois selecionar o número do temporizador (ex. TML3) e a
constante de tempo a ser utilizada.
5.3.3 Contadores:
Para inserir um contador na lógica, deve-se pressionar o botão
de ferramentas, a qual indicará um nova categoria de contatos :
da barra
Deve-se então pressionar o botão
, selecionar-se o número do contador
(Ex. CT100) e selecionar-se o valor de estouro (Ex. K200)
O 1º contato corresponde ao sinal de contagem.
O 2º contato corresponde ao reset do contador.
O contador só funcionará se o 2º contato estiver desligado. Usar este contato
somente para reiniciar o contador.
- 74 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.3.1 F118 (UDC) - Contador UP/DOWN
Para inserir um contador UP/DOWN, ou seja crescente/decrescente, deve-se
pressionar o botão
(ou teclar F5).
E selecionar a função 118. Na inserção do contador, define-se o valor de inicio
de contagem (Ex. K0) e o valor do registrador (DT), no qual o valor de contagem
será armazenado.
O 1º contato define a direção de contagem, ou seja, se o contador incrementa
ou decrementa os valores contidos no buffer de contagem.
O 2º contato corresponde ao sinal ou pulso de contagem.
O 3º contato é usado para carregar os valores de inicio (K0) no registrador de
contagem somente para carregar o valor de preset.
- 75 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.4 Instruções de Comparação por Bloco:
Estas instruções tem a mesma função das instruções acima , só que muito mais
fáceis de usar. A vantagem é que estas funções funcionam como se fossem um
contato, e podem ser associadas em lógicas OR ou AND com um contato ou outra
comparação.
Para utilizar a comparação clicar no botão "COMPARE" (ou teclar Shift+F5)
da barra de funções.
E selecionar as operações de comparação desejadas:
Está função permite comparações do tipo < , > ,=, >=, <= e <> em 16 bits ou
32 bits (double word). Se a comparação desejada é em 32 bits clicar em "D" (Double
word) e em seguida no tipo de operação ( se for , por exemplo, uma operação >=
clicar primeiro em > e depois em = ) , e em seguida a tecla enter.
No exemplo, compara-se o dado 32 bits do registrador DT0 e DT1 com a
constante decimal 5. Se o valor do registrador for igual a 5 , a saída Y0 é acionada.
No exemplo acima, compara-se a constante decimal 4 com o dado 16 bits do
registrador DT0. Se o valor do registrador for menor ou igual a 4 , o relé interno R1 é
acionado.
- 76 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.5 Instruções de Transferência de Dados:
Todas as instruções de alto nível do PLC Matsushita são funções especiais.
Cada função é identificada através de um número.
Para utilizar estas funções no programa deve-se fazer o seguinte:
1) Clicar sobre o botão
da barra de funções ou teclar F6;
2) Selecionar a função desejada na janela de funções;
3) Clicar sobre o botão
, para carregar a função;
4) Digitar as informações necessárias na função;
5.3.5.1 F0 => (MV) 16-BIT data move
Copia um dado de 16 bits para a área de 16 bits especificada.
S = Constante ou dado de 16 bits (origem);
D = Área de 16 bits (destino);
Quando X0 é acionado o dado contido em WX0 é copiado em WR0.
- 77 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.5.2 F1 => (DMV) 32-BIT data move
Copia um dado de 32 bits para a área de 16 bits especificada.
S = Constante de 32 bits ou a área de 16 bits menos significativa do dado de 32
bits (origem);
D = Área de 16 bits menos significativa do espaço onde será armazenado o dado
de 32 bits (destino);
Quando X0 é acionado o conteúdo de WR1 e WR0 (S+1 e S) é copiado nos
registradores DT1 e DT0 (D+1 e D).
5.3.5.3 F2 => (MV/) 16-BIT data invert and move
Inverte os 16 bits e os transfere para a área de 16 bits especificada.
S = Constante ou dado de 16 bits (origem);
D = Área de 16 bits (destino);
Quando X0 é acionado o conteúdo de WX1 é invertido e transferido para WR0.
5.3.5.4 F3 => (DMV/) 32-BIT data invert and move
Inverte os 32 bits e os transfere para a área de 32 bits especificada.
S = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits a ser invertido (origem);
- 78 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
D = Área de 16 bits menos significativa do espaço onde será armazenado o dado
de 32 bits (destino);
Quando X0 é acionado o conteúdo de WX2 e WX1 (S+1 e S) é invertido e
transferido para WR1 e WR0 (D+1 e D).
5.3.5.5 F5 => (BTM) BIT data move
Copia um bit referente a um dado de 16 bits em um bit específico de outro dado
de 16 bits.
S = Constante ou dado de 16 bits (origem);
n = Constante ou dado de 16 bits (especifica a posição do bit de origem e do bit
de destino);
D = Área de 16 bits (destino);
Quando X0 for acionado o conteúdo do bit 1 de WX0 será copiado no bit 7 de
WY0.
5.3.5.6 F6 => (DGT) Hexadecimal digit move
Copia os dígitos hexadecimais de uma área de 16 bits para o dígito especificado
de outra área de 16 bits.
S = Constante ou dado de 16 bits (origem);
- 79 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
n = Constante ou dado de 16 bits (especifica a posição do dígito de origem e do
dígito de destino);
D - Área de 16 bits (destino);
Quando X0 for acionado os bits 4, 5, 6 e 7 (dígito 1) de WX0 serão copiados nos
bits 0, 1, 2 e 3 (dígito 0) de WY0.
5.3.5.7 F10 => (BKMV) Block move
Copia um bloco de dados para uma área especificada.
S1 = Área de 16 bits inicial (origem);
S2 = Área de 16 bits final (origem);
D = Área de 16 bits inicial (destino);
Quando X0 é acionado o bloco de dados que começa em WR0 e termina em
WR3 (WR0, WR1, WR2 e WR3) é copiado em um bloco de dados que começa em
DT1 (DT1, DT2, DT3 e DT4).
5.3.5.8 F11 => (COPY) Block copy
Copia um dado de 16 bits em um bloco com uma ou mais áreas de 16 bits.
- 80 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
S = Constante ou dado de 16 bits (origem)
D1 = Área de 16 bits inicial (destino)
D2 = Área de 16 bits final (destino)
Quando X0 é acionado o dado do registrador DT1 é copiado em um bloco de
registradores que começa em WR0 e termina em WR4 (WR0, WR1, WR2, WR3 e
WR4).
5.3.5.9 F15 => (XCH) 16-BIT data exchange
Troca o conteúdo de dois registradores de 16 bits.
D1 = Dado de 16 bits a ser trocado.
D2 = Dado de 16 bits a ser trocado.
Quando X0 é acionado os dados dos registradores WR0 e DT2 são trocados, ou
seja, o dado de WR0 passa para DT2 e o dado de DT2 passa para WR0.
5.3.5.10
F16 => (DXCH) 32-BIT data exchange
Troca o conteúdo de dois dados de 32 bits.
D1 = Área de 16 bits menos significativa do dado de 32 bits a ser trocado.
D2 = Área de 16 bits menos significativa do dado de 32 bits a ser trocado.
Quando R0 é acionado o conteúdo dos registradores WR1 e WR0 (D1+1 e D1) é
trocado pelo conteúdo dos registradores DT3 e DT2 (D2+1 e D2), ou seja, o
conteúdo de WR1 e WR0 passa para DT3 e DT2 e o dado de DT3 e DT2 passa para
WR1 e WR0.
- 81 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.5.11
F17 => (SWAP) Higher/lower byte in 16-BIT data exchange
Troca os bytes mais significativo e menos significativo de um dado de 16 bits.
D = Área de 16 bits cujos bytes mais significativo e menos significativo serão
devidamente trocados.
Quando o relé R0 é acionado os bytes mais significativo e menos significativos
são trocados.
5.3.6 Instruções Aritméticas Binárias:
5.3.6.1 F20 => (+) 16-BIT data Addition
Soma dois dados de 16 bits.
S = Constante ou área de 16 bits;
D = Área de 16 bits;
Quando X0 é acionado o conteúdo de WR0 (D) é somado ao conteúdo de DT1
(S) e o resultado é armazenado em WR0 (D + S => D).
- 82 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.6.2 F21 => (D+) 32-BIT data Addition
Soma dois dados de 32 bits.
S = Constante de 32 bits ou a área de 16 bits menos signif. do dado de 32 bits;
D = Área de 16 bits menos significativa do dado de 32 bits;
Quando X0 é acionado o conteúdo de WR1 e WR0 (D+1 e D) é somado ao
conteúdo de DT1 e DT0 (S+1 e S) e o resultado é armazenado em WR1 e WR0
[(D+1 e D) + (S+1 e S) => (D+1 e D)].
5.3.6.3 F22 => (+) 16-BIT data Addition
Soma dois dados de 16 bits e guarda o resultado na área especificada.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits;
Quando X0 é acionado o conteúdo de DT0 (S1) é somado ao conteúdo de DT1
(S2) e o resultado é armazenado em WY0 (S1 + S2 => D).
5.3.6.4 F23 => (D+) 32-BIT data Addition
Soma dois dados de 32 bits e guarda o resultado na área especificada.
- 83 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
S1 = Constante de 32 bits ou área de 16 bits menos signif. do dado de 32 bits;
S2 = Constante de 32 bits ou área de 16 bits menos signif. do dado de 32 bits;
D = Área de 16 bits menos significativa do dado de 32 bits;
Quando X0 é acionado o conteúdo de DT1 e DT0 (S1+1 e S1) é somado ao
conteúdo de DT101 e DT100 (S2+1 e S2) e o resultado é armazenado em DT201 e
DT200 [(S1+1 e S1) + (S2+1 e S2) => (D+1 e D)].
5.3.6.5 F25 => (-) 16-BIT data Subtraction
Subtrai um dado de 16 bits de outro.
S = Constante ou área de 16 bits;
D = Área de 16 bits;
Quando X0 é acionado o conteúdo de DT0 (S) é subtraído do conteúdo de DT2
(D) e o resultado é armazenado em DT2 (D - S => D).
5.3.6.6 F26 => (D-) 16-BIT data Subtraction
Subtrai um dado de 32 bits de outro.
S - Constante de 32 bits ou área de 16 bits menos signif. do dado de 32 bits;
D - Área de 16 bits menos significativa do dado de 32 bits;
Quando X0 é acionado o conteúdo de DT1 e DT0 (S+1 e S) é subtraído de DT3
e DT2 (D+1 e D) e o resultado é armazenado em DT3 e DT2 [(D+1 e D) - (S+1 e S)
=> (D+1 e D)].
- 84 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.6.7 F27 => (-) 16-BIT data Subtraction
Subtrai um dado de 16 bits de outro e guarda o resultado na área especificada.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits;
Quando X0 é acionado o conteúdo de DT2 (S2) é subtraído de DT0 (S1) e o
resultado é armazenado em WY1 (S1 - S2 => D).
5.3.6.8 F28 => (D-) 32-BIT data Subtraction
Subtrai um dado de 32 bits de outro e guarda o resultado na área especificada.
S1 = Constante de 32 bits ou área de 16 bits menos signif. do dado de 32 bits;
S2 = Constante de 32 bits ou área de 16 bits menos signif. do dado de 32 bits;
D = Área de 16 bits menos significativa do dado de 32 bits;
Quando X0 é acionado o conteúdo de DT201 e DT200 (S2+1 e S2) é subtraído
de DT101 e DT100 (S1+1 e S1) e o resultado é armazenado em DT1 e DT0 [(S1+1 e
S1) - (S2+1 e S2) -> (D+1 e D)].
5.3.6.9 F30 => (*) 16-BIT data Multiplication
Multiplica dois dados de 16 bits e guarda o resultado em uma área de 32 bits.
- 85 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits menos significativa do dado de 32 bits;
Quando X0 é acionado o conteúdo de WX0 (S1) é multiplicado por K100 (S2) e
o resultado é armazenado em DT1 e DT0 [S1 * S2 => (D+1 e D)].
5.3.6.10
F31 => (D*) 32-BIT data Multiplication
Multiplica dois dados de 32 bits e guarda o resultado em uma área de 64 bits.
S1 = Constante ou área de 32 bits;
S2 = Constante ou área de 32 bits;
D = Área de 16 bits menos significativa do dado de 64 bits;
Quando X0 é acionado o conteúdo de DT1 (S1) é multiplicado por DT4 (S2) e
o resultado é armazenado em DT13 a DT10.
[S1 e S1+1 * S2 e S2+2=> (D+3,D+2,D+1 e D)].
5.3.6.11
F32 => (%) 16-BIT data Division
Divide um dado de 16 bits por um divisor e guarda o resultado na área
especificada e o resto no registrador DT9015.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits;
- 86 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Quando X0 é acionado o conteúdo de DT100 (S1) é dividido por K10 (S2) e o
resultado é armazenado em DT0 (S1 / S2 => D) e o resto em DT9015.
5.3.6.12
F33 => (D%) 32-BIT data Division
Divide um dado de 32 bits por um divisor (32 bits) e guarda o resultado na área
especificada e o resto no registrador DT9015 e DT9016.
S1 = Constante ou área de 32 bits;
S2 = Constante ou área de 32 bits;
D = Área de 32 bits;
Quando X0 é acionado o conteúdo de DT100 (S1) é dividido por SV15 (S2) e o
resultado é armazenado em DT102 (S1 e S1+1 / S2 e S2+1 -> D e D+1) e o resto em
DT9015 e DT9016.
5.3.6.13
F35 => (+1) 16-BIT data Increment
Incrementa um dado de 16 bits.
D = Área de 16 bits cujo dado será incrementado;
Quando X0 é acionado o valor de WY0 (D) é incrementado.
- 87 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.6.14
F36 => (D+1) 32-BIT data Increment
Incrementa um dado de 32 bits.
D = Área de 16 bits menos significativa do dado de 32 bits a ser incrementado;
Quando X0 é acionado o conteúdo de DT1 e DT0 (D+1 e D) é incrementado.
5.3.6.15
F37 => (-1) 16-BIT data Decrement
Decrementa um dado de 16 bits.
D = Área de 16 bits cujo dado será decrementado;
Quando X0 é acionado o valor de DT0 (D) é decrementado.
5.3.6.16
F38 => (D-1) 32-BIT data Decrement
Decrementa um dado de 32 bits.
D = Área de 16 bits menos significativa do dado de 32 bits a ser decrementado;
Quando X0 é acionado o conteúdo de DT1 e DT0 (D+1 e D) é decrementado.
- 88 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7 Instruções Aritméticas BCD:
5.3.7.1 F40 => (B+) 4-DIGIT BCD data Addition
Soma dois dados em formato BCD de 4 dígitos.
S = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado em
formato BCD de 4 dígitos;
D = Área de 16 bits para um dado em formato BCD de 4 dígitos;
Quando X0 é acionado o conteúdo de WR0 (D) é somado ao conteúdo de DT1
(S) e o resultado é armazenado em WR0 (D + S => D).
5.3.7.2 F41 => (DB+) 8-DIGIT BCD data Addition
Soma dois dados em formato BCD de 8 dígitos.
S = Constante em formato BCD de 8 dígitos ou área de 16 bits menos signific.
para um dado em formato BCD de 8 dígitos;
D = Área de 16 bits menos significativa para um dado em formato BCD de 8
dígitos;
Quando X0 é acionado o conteúdo de WR1 e WR0 (D+1 e D) é somado ao
conteúdo de DT2 e DT1 (S+1 e S) e o resultado é armazenado em WR1 e WR0
[(D+1 e D) + (S+1 e S) => (D+1 e D)].
- 89 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.3 F42 => (B+) 4-DIGIT BCD data Addition
Soma dois dados em formato BCD de 4 dígitos e guarda o resultado na área
especificada.
S1 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
S2 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
D = Área de 16 bits para um dado em formato BCD de 4 dígitos;
Quando X0 é acionado o conteúdo de DT0 (S1) é somado ao conteúdo de DT2
(S2) e o resultado é armazenado em WY1 (S1 + S2 => D).
5.3.7.4 F43 => (DB+) 8-DIGIT BCD data Addition
Soma 2 dados em BCD de 8 dígitos e guarda o resultado na área especificada.
S1 = Constante em BCD de 8 dígitos ou área de 16 bits menos significativa para
um dado em BCD de 8 dígitos;
S2 = Constante em BCD de 8 dígitos ou área de 16 bits menos significativa para
um dado em BCD de 8 dígitos;
D = Área de 16 bits menos significativa para um dado em BCD de 8 dígitos;
Quando X0 é acionado o conteúdo de DT1 e DT0 (S1+1 e S1) é somado ao
conteúdo de DT3 e DT2 (S2+1 e S2) e o resultado é armazenado em WY2 e WY1
[(S1+1 e S1) + (S2+1 e S2) => (D+1 e D)].
- 90 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.5 F45 => (B-) 4-DIGIT BCD data Subtraction
Subtrai um dado em formato BCD de 4 dígitos de outro.
S = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado em
formato BCD de 4 dígitos;
D = Área de 16 bits para um dado em formato BCD de 4 dígitos;
Quando X0 é acionado o conteúdo de DT0 (S) é subtraído do conteúdo de DT2
(D) e o resultado é armazenado em DT2 (D - S => D).
5.3.7.6 F46 => (DB-) 8-DIGIT BCD data Subtraction
Subtrai um dado em formato BCD de 8 dígitos de outro.
S = Constante em formato BCD de 8 dígitos ou área de 16 bits menos
significativa para um dado em formato BCD de 8 dígitos;
D = Área de 16 bits menos significativa para um dado em formato BCD de 8
dígitos;
Quando X0 é acionado o conteúdo de DT1 e DT0 (S+1 e S) é subtraído de DT3
e DT2 (D+1 e D) e o resultado é armazenado em DT3 e DT2 [(D+1 e D) - (S+1 e S)
=> (D+1 e D)].
- 91 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.7 F47 => (B-) 4-DIGIT BCD data Subtraction
Subtrai um dado em formato BCD de 4 dígitos de outro e guarda o resultado na
área especificada.
S1 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
S2 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
D = Área de 16 bits para um dado em formato BCD de 4 dígitos;
Quando X0 é acionado o conteúdo de DT2 (S2) é subtraído de DT0 (S1) e o
resultado é armazenado em WY1 (S1 - S2 => D).
5.3.7.8 F48 => (DB-) 8-DIGIT BCD data Subtraction
Subtrai um dado em formato BCD de 8 dígitos de outro e guarda o resultado na
área especificada.
S1 = Constante em formato BCD de 8 dígitos ou área de 16 bits menos
significativa para um dado em formato BCD de 8 dígitos;
S2 = Constante em formato BCD de 8 dígitos ou área de 16 bits menos
significativa para um dado em formato BCD de 8 dígitos;
D = Área de 16 bits menos significativa para um dado BCD de 8 dígitos;
Quando X0 é acionado o conteúdo de DT3 e DT2 (S2+1 e S2) é subtraído de
DT1 e DT0 (S1+1 e S1) e o resultado é armazenado em WY2 e WY1 [(S1+1 e S1) (S2+1 e S2) => (D+1 e D)].
- 92 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.9 F50 => (B*) 4-DIGIT BCD data Multiplication
Multiplica dois dados em formato BCD de 4 dígitos e guarda o resultado em
uma área de 32 bits.
S1 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
S2 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
D = Área de 16 bits menos significativa para um dado em BCD de 8 dígitos;
Quando X0 é acionado o conteúdo de DT0 (S1) é multiplicado por DT2 (S2) e
o resultado é armazenado em WR7 e WR6 [S1 * S2 => (D+1 e D)].
5.3.7.10
F52 => (B%) 4-DIGIT BCD data Division
Divide um dado BCD de 4 dígitos por um divisor e guarda o resultado na área
especificada e o resto no registrador DT9015.
S1 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
S2 = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado
em formato BCD de 4 dígitos;
D = Área de 16 bits para um dado em formato BCD de 4 dígitos;
Quando X0 é acionado o conteúdo de DT0 (S1) é dividido por DT2 (S2) e o
resultado é armazenado em WR1 (S1 / S2 => D) e o resto em DT9015.
- 93 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.11
F55 => (B+1) 4-DIGIT BCD data Increment
Incrementa um dado em formato BCD de 4 dígitos.
D = Área de 16 bits para um dado em formato BCD de 4 dígitos a ser
incrementado;
Quando X0 é acionado o conteúdo de DT0 (D) é incrementado.
5.3.7.12
F56 => (DB+1) 8-DIGIT BCD data Increment
Incrementa um dado em formato BCD de 8 dígitos.
D = Área de 16 bits menos significativa do dado em formato BCD de 8 dígitos a
ser devidamente incrementado.
Quando X0 é acionado o conteúdo de DT1 e DT0 (D+1 e D) é incrementado.
5.3.7.13
F57 => (DB-1) 4-DIGIT BCD data Decrement
Decrementa um dado em formato BCD de 4 dígitos.
D = Área de 16 bits para um dado BCD de 4 dígitos a ser decrementado.
Quando X0 é acionado o conteúdo de DT0 (D) é decrementado.
- 94 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.7.14
F58 – (DB+1) 8-DIGIT BCD data Decrement
Decrementa um dado BCD de 8 dígitos.
D = Área de 16 bits menos significativa do dado em formato BCD de 8 dígitos a
ser devidamente decrementado.
Quando X0 é acionado o conteúdo de DT1 e DT0 (D+1 e D) é decrementado.
5.3.8 Instruções de Comparação de Dados:
5.3.8.1 F60 => (CMP) 16-BIT data compare
Compara um dado de 16 bits com outro.
S1 - Constante ou área de 16 bits a ser comparada.
S2 - Constante ou área de 16 bits a ser comparada.
Quando X0 é acionado a constante K100 (S2) é comparada com o conteúdo do
registrador DT0 (S1). O resultado se apresenta nos respectivos relés especiais
R900A, R900B e R900C.
- 95 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
DT0 > K100, o relé R900A é setado.
DT0 = K100, o relé R900B é setado.
DT0 < K100, o relé R900C é setado.
5.3.8.2 F61 => (CMP) 32-BIT data compare
Compara um dado de 32 bits com outro.
S1 = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits a ser comparado
S2 = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits a ser comparado
Quando X0 é acionado o conteúdo de DT101 e DT100 (S2+1 e S2) é
comparado com o conteúdo de DT1 e DT0 (S1+1 e S1). O resultado se apresenta nos
respectivos relés especiais R900A, R900B e R900C.
(DT1 e DT0) > (DT101 e DT100), o relé R900A é setado.
(DT1 e DT0) = (DT101 e DT100), o relé R900B é setado.
(DT1 e DT0) < (DT101 e DT100), o relé R900C é setado.
- 96 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.8.3 F62 => (WIN) 16-BIT data band compare
Compara um dado de 16 bits com uma banda de dados especificada por dois
outros dados de 16 bits.
S1 = Constante ou área de 16 bits a ser comparada
S2 = Constante ou área de 16 bits (limite mínimo)
S3 = Constante ou área de 16 bits (limite máximo)
Quando X0 é acionado o conteúdo de DT0 (S1) é comparado com o conteúdo
dos registradores DT2 (limite mínimo da banda de dados) e DT4 (limite máximo da
banda de dados). O resultado se apresenta nos respectivos relés especiais R900A,
R900B e R900C;
DT0 > DT4, o relé R900A é setado.
DT2 <= DT0 <= DT4, o relé R900B é setado.
DT0 < DT2, o relé R900C é setado.
- 97 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.8.4 F63 => (DWIN) 16-BIT data band compare
Compara um dado de 32 bits com uma banda de dados especificada por dois
outros dados de 32 bits.
S1 = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits a ser comparado;
S2 = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits (limite mínimo);
S3 = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits (limite máximo);
Quando X0 é acionado o conteúdo de DT1 e DT0 (S1+1 e S1) é comparado
com o conteúdo dos registradores DT3 e DT2 (S2+1 e S2 - limite mínimo da banda
de dados) e DT5 e DT4 (S3+1 e S3 - limite máximo da banda de dados). O resultado
aparece nos relés especiais R900A, R900B e R900C;
(DT1 e DT0) > (DT5 e DT4), o relé R900A é setado.
(DT3 e DT2) <= (DT1 e DT0) <= (DT5 e DT4), o relé R900B é setado.
(DT1 e DT0) < (DT3 e DT2), o relé R900C é setado.
- 98 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.9 Instruções de Operação Lógicas:
5.3.9.1 F65 => (WAN) 16-BIT data AND
Executa uma operação “E” entre dois dados de 16 bits.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits para guardar o resultado da operação “E”
Quando X0 é acionado, é executada uma operação “E” entre DT0 (S1) e DT2
(S2) e o resultado é armazenado em WR1 (S1 . S2 => D).
5.3.9.2 F66 => (WOR) 16-BIT data OR
Executa uma operação “OU” entre dois dados de 16 bits.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits para guardar o resultado da operação “OU”
Quando X0 é acionado é executada uma operação “OU” entre DT0 (S1) e DT2
(S2) e o resultado é armazenado em WR1 (S1 + S2 => D).
- 99 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.9.3 F67 => (XOR) 16-BIT data exclusive OR
Executa uma operação “OU Exclusivo” entre dois dados de 16 bits.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits para guardar o resultado da operação “OU Exclusivo”
Quando X0 é acionado é executada um operação “OU Exclusivo” entre DT0
(S1) e DT2 (S2) e o resultado é armazenado em WR1 (S1 XOR S2 =>D).
5.3.9.4 F68 => (XNR) 16-BIT data exclusive NOR
Executa uma operação “NOU Exclusivo” entre dois dados de 16 bits.
S1 = Constante ou área de 16 bits;
S2 = Constante ou área de 16 bits;
D = Área de 16 bits para guardar o resultado da operação “NOU Exclusivo”
Quando X0 é acionado é executada uma operação “NOU Exclusivo” entre
DT0 (S1) e DT2 (S2) e o resultado é armazenado em WR1 (S1 XNOR S2 => D).
- 100 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10
Instruções de Conversão de Dados:
5.3.10.1
F80 => (BCD) 16-BIT data => 4-DIGIT BCD data
Converte um dado binário de 16 bits em um dado BCD de 4 dígitos.
S = Constante ou área de 16 bits (K0 - K9999, origem);
D = Área de 16 bits para um dado BCD de 4 dígitos (destino);
Quando X0 é acionado o conteúdo de EV0 (S) é convertido em um dado BCD
de 4 dígitos que é armazenado no registrador WY0 (D).
5.3.10.2
F81 => (BIN) 4-DIGIT BCD data => 16-BIT data
Converte um dado BCD de 4 dígitos em um dado binário de 16 bits.
S = Constante em formato BCD de 4 dígitos ou área de 16 bits para um dado em
formato BCD de 4 dígitos (origem);
D = Área de 16 bits para guardar o dado binário de 16 bits (destino).
Quando X0 é acionado o conteúdo de WX0 (S) é convertido em um dado
binário de 16 bits que é armazenado em DT0 (D).
5.3.10.3
F82 => (DBCD) 32-BIT data => 8-DIGIT BCD data
Converte um dado binário de 32 bits em um dado em formato BCD de 8 dígitos.
- 101 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
S = Constante de 32 bits ou área de 16 bits menos significativa do dado de 32
bits (K0 - K99.999.999, de origem);
D = Área de 16 bits menos significativa para um dado em formato BCD de 8
dígitos (destino);
Quando X0 é acionado o conteúdo de DT1 e DT0 (S+1 e S) é convertido em um
dado BCD de 8 dígitos que é armazenado nos registradores DT3 e DT2 (D+1 e D).
5.3.10.4
F83 => (DBIN) 8-DIGIT BCD data => 32-BIT data
Converte um dado BCD de 8 dígitos em um dado binário de 32 bits.
S = Constante BCD de 8 dígitos ou área de 16 bits menos significativa de um
dado BCD de 8 dígitos (origem);
D = Área de 16 bits menos significativa do dado de 32 bits (destino);
Quando X0 é acionado o conteúdo de DT1 e DT0 (S+1 e S) é convertido em um
dado binário de 32 bits que é armazenado em DT3 e DT2 (D+1 e D).
5.3.10.5
F84 => (INV) 16-BIT data invert
Inverte todos os bits de uma área de 16 bits.
D - Área de 16 bits a ser invertida;
Quando X0 é acionado o conteúdo de DT0 (D) é invertido.
- 102 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.6
F85 => (NEG) 16-BIT data two’s complement
Complemento de 2 de um dado de 16 bits.
D = Área de 16 bits para guardar o valor original e o seu complemento de 2;
Quando X0 é acionado é feita a operação de complemento de 2 do valor contido
em DT0 (D). O resultado desta operação é armazenado no registrador DT0 (D).
5.3.10.7
F86 => (DNEG) 32-BIT data two’s complement
Complemento de 2 de um dado de 32 bits.
D = Área de 16 bits menos significativa de um dado de 32 bits para guardar o
valor original e o seu complemento de 2;
Quando X0 é acionado é feita a operação de complemento de 2 do valor contido
em DT1 e DT0 (D+1 e D). O resultado desta operação é armazenado nos
registradores DT1 e DT0 (D+1 e D).
5.3.10.8
F87 => (ABS) 16-BIT data absolute
Valor absoluto de um dado de 16 bits.
D = Área de 16 bits para guardar o valor original e o seu valor absoluto;
Quando X0 é acionado o valor absoluto, ou seja, o módulo de DT0 (D) é
armazenado no próprio registrador DT0 (D).
- 103 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.9
F88 => (DABS) 32-BIT data absolute
Valor absoluto de um dado de 32 bits.
D = Área de 16 bits menos significativa de um dado de 32 bits para guardar o
valor original e o seu valor absoluto;
Quando X0 é acionado o valor absoluto, ou seja, o módulo de DT1 e DT0 (D+1
e D) é armazenado nos próprios registradores DT1 e DT0 (D+1 e D).
5.3.10.10
F89 => (EXT) 16-BIT data sign extension
Procedimento no qual copia o bit de sinal de um dado de 16 bits para todos os
bits da área de 16 bits mais alta.
D = Área de 16 bits com um dado binário de 16 bits.
Quando X0 é acionado o bit 15 (bit de sinal) de DT0 (D) é copiado para todos
os bits de DT1 (D+1).
5.3.10.11
F90 => (DECO) Decode
Decodifica um dado.
- 104 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
S = Constante ou área de 16 bits a ser decodificada (origem);
n = Constante ou área de 16 bits que especifica a posição do bit inicial e o
número de bits a serem decodificados;
D = Área de 16 bits inicial para armazenar o dado decodificado (destino);
Relação referente o número de bits a serem decodificados e a respectiva área
ocupada pelo dado decodificado.
Número de bits a serem Área de dados necessária Bits válidos na área para
decodificados
para o resultado
mostrar o resultado
1
1 - palavra de 16 bits
2 - bits*
2
1 - palavra de 16 bits
4 - bits*
3
1 - palavra de 16 bits
8 - bits*
4
1 - palavra de 16 bits
16 - bits
5
2 - palavras de 16 bits
32 - bits
6
4 - palavras de 16 bits
64 - bits
7
8 - palavras de 16 bits
128 - bits
8
16 - palavras de 16 bits
256 - bits
* Os bits inválidos na área de dados utilizada para o resultado são setados para “0”.
Quando X0 é acionado, os 4 bits, partindo do bit 4 (4, 5, 6, 7) , de WX0 (S) são
decodificados e o resultado é armazenado em WR0 (D). Supondo que o dado contido
nestes 4 bits seja 0111 (K7), o bit 7 de WR0 será setado e todos os outros bits de
WR0 serão resetados.
Origem:
Pos. do Bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
WX0
0100 0101 0111 1010
Destino:
Pos. do Bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
WR0
0000 0000 1000 0000
- 105 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.12
F91 => (SEGT) 16-BIT data 7-Segment decode
Converte um dado de 16 bits para a indicação em display de sete segmentos.
S = Constante ou área de 16 bits a ser convertida para a indicação em display de
sete segmentos (origem);
D = Área de 16 bits inicial para armazenar um dado de 4 dígitos para indicação
em display de sete segmentos (destino);
Quando X0 é acionado o conteúdo de DT0 (S) é convertido para um dado de 4
dígitos para indicação em display de sete segmentos. O resultado da conversão é
armazenado em WY1 e WY0 (D+1 e D).
Organização do display de sete
segmentos
- 106 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Origem:
Pos. bit
DT0
Hexadecimal
15 . . 12
1010
A
11. . 8
1011
B
7..4
1100
C
3..0
1101
D
Destino:
Pos. bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0 Pos. bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
WY1 0 1 1 1 0 1 1 1 0 1 1 1 1 1 0 0 WY0 0 0 1 1 1 0 0 1 0 1 0 1 1 1 1 0
7 segm.
A
b
7 segm.
C
d
Dígito a ser convertido
Hex.
Binário
H0
0
0
0
H1
0
0
0
H2
0
0
1
H3
0
0
1
H4
0
1
0
H5
0
1
0
H6
0
1
1
H7
0
1
1
H8
1
0
0
H9
1
0
0
HA
1
0
1
HB
1
0
1
HC
1
1
0
HD
1
1
0
HE
1
1
1
HF
1
1
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Dado de 8 bits para display de 7 segm.
g
f
e
d
c
b
0
1
1
1
1
1
0
0
0
0
1
1
1
0
1
1
0
1
1
0
0
1
1
1
1
1
0
0
1
1
1
1
0
1
1
0
1
1
1
1
1
0
0
1
0
0
1
1
1
1
1
1
1
1
1
1
0
1
1
1
1
1
1
0
1
1
1
1
1
1
1
0
0
1
1
1
0
0
1
0
1
1
1
1
1
1
1
1
0
0
1
1
1
0
0
0
a
1
0
1
1
0
1
1
1
1
1
1
0
1
0
1
1
- 107 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.13
F92 => (ENCO) Encode
Codifica um dado específico.
S = Área de 16 bits inicial do dado a ser codificado (origem);
n = Constante ou área de 16 bits que especifica a posição do bit inicial e o
número de bits a serem codificados;
D = Área de 16 bits para armazenar o dado codificado (destino);
Valor setado
H0
H1
H2
H3
H4
H5
H6
H7
H8
H9
HA
HB
HC
HD
HE
HF
Posição
do bit
inicial
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
- 108 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Valor setado Número de bits
H1
2
H2
4
H3
8 (1 byte)
H4
16 (1 word)
H5
32 (2 words)
H6
64 (4 words)
H7
128 (8 words)
H8
256 (16 words)
Quando X0 é acionado, os 32 bits dos registradores WX1 e WX0 (S+1 e S) são
codificados e o resultado é respectivamente armazenado em 8 bits do registrador DT1
(D) partindo do bit 0.
Origem:
Pos. bit 15 . . 11 . . 8 7 . . 4 3 . . 0 Pos. bit 15 . . 11 . . 8 7 . . 4
12
12
WX1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 WX0 0 0 0 0 0 0 0 1 0 0 0 0
3..0
0000
OBS: O 8º bit do dado de 32 bits está setado.
Destino:
Pos. bit
DT1
Decimal
15 . . 12
0000
11 . . 8
0000
7..4
0000
3..0
1000
K8
OBS: O resultado K8 (decimal - código referente ao bit que estava setado no
dado de origem) é armazenado em DT1.
- 109 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.14
F93 => (UNIT) 16-BIT data combine
Extrai os 4 bits menos significativos (bits 0 a 3) de áreas de 16 bits específicas e
os combina em uma word (16 bits). O dado combinado é armazenado em uma área de
16 bits.
S = Área de 16 bits inicial de onde os dados serão extraídos (origem);
n = Constante ou área de 16 bits para especificar o número de dados a serem
extraídos (K0 a K4);
D = Área de 16 bits para armazenar o dado combinado (destino);
Quando X0 é
acionado os 4 bits
menos significativos
de WX0, WX1 e
WX2 (S, S+1 e S+2)
são extraídos e
combinados em uma
word (16 bits), que é
armazenada em os.
do bit
WX0
WX1
WX2
Destino:
Pos. do bit
DT1
15 . . 12
11 . . 8
7..4
3..0
0000
0000
0000
0000
0000
0000
0000
0000
0000
0001
0010
0100
15 . . 12
0000
11 . . 8
0100
7..4
0010
3..0
0001
OBS: Os bits 12 a 15 são preenchidos com 0, pois, eles não foram utilizados.
- 110 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.10.15
F94 => (DIST) 16-BIT data distribute
Divide um dado de 16 bits em 4 unidades de 4 bits e distribui o dado dividido
entre os 4 bits menos significativos das áreas de 16 bits especificadas.
S = Constante ou área de 16 bits a ser dividida (origem);
n = Constante ou área de 16 bits que especifica o número de dados a serem
divididos (K0 a K4);
D = Área de 16 bits inicial para o armazenamento do dado dividido (destino);
Quando X0 é acionado o dado de WX0 (S) é dividido em unidades de 4 bits e o
dado dividido é armazenado nos 4 bits menos significativos (bits 0 a 3) dos
registradores DT0 e DT1 (D e D+1).
Origem:
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
WX0
0111 0011 0001 0000
Destino:
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
0000 0000 0000 0000
DT1
0000 0000 0000 0001
5.3.10.16
F96 => (SRC) Table data search
Procura um valor específico em um bloco de áreas de 16 bits.
S1 = Constante ou área de 16 bits com o dado a ser procurado;
S2 = Área de 16 bits que inicia o bloco;
S3 = Área de 16 bits que finaliza o bloco;
- 111 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Quando X0 é acionado o conteúdo de DT0 (S1) é procurado no bloco que vai de
WR0 a WR10 (S2 a S3).
O resultado desta procura aparece da seguinte maneira:
• O número de dados que possuem o mesmo valor de DT0 é armazenado em
DT9037.
• A posição onde o dado foi encontrado, a partir de WR0 (S2), é armazenada no
registrador DT9038.
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0 (Hex)
1
2
3
4
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0 posição
WR0
1
2
1
1
0
WR1
1
2
F
F
1
WR2
1
2
3
4
2
WR3
7
F
F
F
3
WR4
F
5
4
3
4
WR5
1
2
4
5
5
WR6
2
2
3
4
6
WR7
3
5
7
F
7
WR8
F
A
B
3
8
WR9
1
2
3
4
9
WR10
1
2
3
4
10
Número de dados com o mesmo valor de DT0;
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT9037 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 K3
Posição em que o 1º dado foi encontrado contando a partir de WR0;
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT9038 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 K2
- 112 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.11
Instruções de Deslocamento de Dados:
5.3.11.1
F100 => (SHR) Right shift of 16-BITdata in bit units
Desloca o dado um certo número de bits à direita.
D = Área de 16 bits a ser deslocada para a direita;
n = Constante ou área de 16 bits que especifica diretamente o número de bits
respectivamente deslocados (H0 a HFF);
Quando X0 é acionado o registrador DT0 (D) é deslocado 4 bits para a direita.
Quando o dado é deslocado 4 bits para a direita;
• O bit 3 é transferido para o relé especial R9009 (carry).
• Os 4 bits mais significativos (12 a 15) de DT0 (D) são preenchidos com 0.
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
1010 0110 1100 1011
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
0000 1010 0110 1100
OBS: O bit 3 de DT0 é transferido diretamente para R9009 (carry) e os 4 bits
mais significativos de DT0 são preenchidos com 0.
5.3.11.2
F101 => (SHL) Left shift of 16-BIT data in bit units
Desloca o dado um certo número de bits à esquerda.
- 113 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
D = Área de 16 bits a ser deslocada para a esquerda
n = Constante ou área de 16 bits que especifica o número de bits deslocados (H0
a HFF)
Quando X0 é acionado o respectivo registrador DT0 (D) é deslocado 4 bits para
a esquerda, consecutivamente.
Quando o dado é deslocado 4 bits para a esquerda, ocorre:
• O bit 12 é transferido para o relé especial R9009 (carry).
• Os 4 bits menos significativos (0 a 3) de DT0 (D) são preenchidos com o
respectivo valor 0.
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
1010 0110 1100 1010
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
0110 1100 1010 0000
OBS: O bit 12 de DT0 é transferido para R9009 (carry) e os 4 bits menos
significativos de DT0 são preenchidos com 0.
5.3.11.3
F105 => (BSR) Right shift of one hexadecimal digit (4-BITS)
Desloca o dado um dígito (4 bits) para a direita.
D = Área de 16 bits a ser deslocada para a direita;
Quando X0 é acionado o registrador DT0 (D) é respectivamente deslocado um
dígito (4 bits) para a direita.
Quando o dado é deslocado um dígito para a direita:
• O dado do dígito 0 (bits 0 a 3) é transferido para o dígito menos
significativo (bits 0 a 3) do registrador especial DT9014.
• O dígito mais significativo (bits 12 a 15) de DT0 (D) fica com o valor 0.
- 114 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
Binário
1001 1001 1001 1001
Hexadecimal
9
9
9
9
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
Binário
0000 1001 1001 1001
Hexadecimal
0
9
9
9
OBS: O dígito mais significativo (bits 12 a 15) fica com 0.
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT
Binário
0000 0000 0000 1001
9014 Hexadecimal
0
0
0
9
5.3.11.4
F106 => (BSL) Left shift of one hexadecimal digit (4-BITS)
Desloca o dado um dígito (4 bits) para a esquerda.
D = Área de 16 bits a ser deslocada para a esquerda.
Quando X0 é acionado o registrador DT0 (D) é deslocado um dígito (4 bits)
para a esquerda.
Quando o dado é deslocado um dígito para a esquerda:
• O dado do dígito 3 (bits 12 a 15) é transferido para o dígito menos significativo
(bits 0 a 3) do registrador especial DT9014.
• O dígito menos significativo (bits 0 a 3) de DT0 (D) fica com o valor 0.
- 115 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
Binário
1001 0001 0000 0000
Hexadecimal
8
1
0
0
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT0
Binário
0001 0000 0000 0000
Hexadecimal
1
0
0
0
OBS: O dígito menos significativo (bits 0 a 3) fica com 0.
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0
DT
Binário
0000 0000 0000 1000
9014 Hexadecimal
0
0
0
8
5.3.11.5
F110 => (WSHR) Right shift of one word digit (16-BITS)
Desloca uma faixa de dados de 16 bits uma word (16 bits) para a direita.
D1 = Área de 16 bits inicial;
D2 = Área de 16 bits final;
Quando X0 é acionado os dados dos registradores DT0 a DT2 (D1 a D2) são
deslocados uma word (16 bits) para a direita.
Quando o dado é deslocado uma word para a esquerda:
• O dado do registrador DT0 (D1) é perdido.
• O dado do registrador DT2 (D2) fica com o valor 0.
- 116 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Registrador DT2
DT1
DT0
Hexadecimal 0 2 1 2 0 0 3 0 0 2 3 2
Registrador DT2
DT1
DT0
Hexadecimal 0 0 0 0 0 2 1 2 0 0 3 0
OBS: O dado de DT0 é perdido e DT2 fica com 0.
5.3.11.6
F111 => (WSHL) Left shift of one word digit (16-BITS)
Desloca uma faixa de dados de 16 bits uma word (16 bits) para a esquerda.
D1 = Área de 16 bits inicial;
D2 = Área de 16 bits final;
Quando X0 é acionado os dados dos registradores DT0 a DT2 (D1 a D2) são
respectivamente deslocados uma word (16 bits) para a esquerda.
Quando o dado é deslocado uma word para a esquerda:
• O dado do registrador DT2 (D2) é perdido;
• O dado do registrador DT0 (D1) fica com o valor 0;
Registrador DT2
DT1
DT0
Hexadecimal 0 2 1 2 0 0 3 0 0 2 3 2
Registrador DT2
DT1
DT0
Hexadecimal 0 0 3 0 0 2 3 2 0 0 0 0
OBS: O dado de DT2 é perdido e DT0 fica com 0.
- 117 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.11.7
F112 => (WBSR) Right shift of one hexadecimal digit
Desloca uma faixa de dados de 16 bits um dígito (4 bits) para a direita.
D1 = Área de 16 bits inicial;
D2 = Área de 16 bits final;
Quando X0 é acionado os respectivos dados dos registradores DT0 a DT2 (D1 a
D2) são deslocados um dígito (4 bits) para a direita.
Quando o dado é deslocado um dígito para a direita:
• O dado do dígito menos significativo (bits 0 a 3) de DT0 (D1) é perdido.
• O dado do dígito mais significativo (bits 12 a 15) de DT2 (D2) ficaria com o
respectivo valor 0.
15-12
0
DT2
11-8 7-4
2
1
15-12
0
DT2
11-8 7-4
0
2
3-0
2
3-0
1
15-12
4
DT1
11-8 7-4
5
6
15-12
2
DT1
11-8 7-4
4
5
3-0
7
3-0
6
15-12
1
DT0
11-8 7-4
0
2
3-0
3
15-12
7
DT0
11-8 7-4
1
0
3-0
2
OBS: O dado do dígito menos significativo (bits 0 a 3) de DT0 é perdido e o
dígito mais significativo (bits 12 a 15) de DT2 fica com 0.
5.3.11.8
F113 => (WBSL) Leftt shift of one hexadecimal digit
Desloca uma faixa de dados de 16 bits um dígito (4 bits) para a esquerda.
- 118 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
D1 = Área de 16 bits inicial;
D2 = Área de 16 bits final;
Quando X0 é acionado os dados dos registradores DT0 a DT2 (D1 a D2) são
deslocados um dígito (4 bits) para a esquerda.
Quando o dado é deslocado um dígito para a esquerda:
• O dado respectivo ao dígito mais significativo referente ao (bits 12 a 15)
de DT2 (D2) é perdido.
• O dado respectivo ao dígito menos significativo referente ao (bits 0 a 3)
de DT0 (D1) fica com o valor 0.
15-12
0
DT2
11-8 7-4
2
1
15-12
2
DT2
11-8 7-4
1
2
3-0
2
3-0
4
15-12
4
DT1
11-8 7-4
5
6
15-12
5
DT1
11-8 7-4
6
7
3-0
7
3-0
1
15-12
1
DT0
11-8 7-4
0
2
3-0
3
15-12
0
DT0
11-8 7-4
2
3
3-0
0
- 119 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.12
Instruções de Rotação de Dados:
5.3.12.1
F120 => (ROR) 16-BIT data right rotate
Rotaciona um dado de 16 bits um número de bits para a direita.
D = Área de 16 bits a ser rotacionada para a direita;
n = Constante ou área de 16 bits que especifica o número de bits rotacionados
(H0 a HFF);
Quando X0 é acionado o respectivo registrador DT0 (D) é rotacionado 4 bits
para a direita.
Quando o dado é rotacionado 4 bits para a direita:
• O dado do bit 3 é transferido para o relé especial R9009 (carry).
• Os 4 bits menos significativos (0 a 3) são rotacionados para a direita e
então são rotacionados para os 4 bits mais significativos (12 a 15) do
registrador DT0.
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1
Relé 9009 (carry) 0
- 120 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.12.2
F121 => (ROL) 16-BIT data left rotate
Rotaciona um dado de 16 bits um número de bits para a esquerda.
D = Área de 16 bits a ser rotacionada para a esquerda;
n = Constante ou área de 16 bits que direciona e especifica o respectivo número
de bits rotacionados (H0 a HFF);
Quando X0 é acionado o respectivo registrador DT0 (D) é rotacionado 4 bits
para a esquerda.
Quando o dado é rotacionado 4 bits para a esquerda:
• O dado do bit 12 é transferido para o relé especial R9009 (carry).
• Os 4 bits mais significativos (12 a 15) são rotacionados para a esquerda e
então rotacionados para os 4 bits menos significativos (0 a 3) do
registrador DT0.
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 1
Relé 9009 (carry) 1
- 121 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.12.3
F122 => (RCR) 16-BIT data right rotate with carry flag data
Rotaciona respectivamente um dado de 16 bits ou um número específico de bits
para a direita junto com o dado do carry (R9009).
D = Área de 16 bits a ser rotacionada para a direita
n = Constante ou área de 16 bits que direciona e especifica o respectivo número
de bits rotacionados (H0 a HFF);
Quando X0 é acionado o registrador DT0 (D) é rotacionado junto com o carry
(R9009) 4 bits para a direita.
Quando o dado + carry é rotacionado 4 bits para a direita:
• O dado do bit 3 é transferido para o relé especial R9009 (carry).
• Os 4 bits menos significativos (0 a 3) são rotacionados para a direita e
então o carry + os bits 0 a 2 de DT0 são rotacionados para os 4 bits mais
significativos (12 a 15) do registrador DT0.
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
Carry
0
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1
Carry
0
- 122 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.12.4
F123 => (RCL) 16-BIT data left rotate with carry flag data
Rotaciona respectivamente um dado de 16 bits ou um número específico de bits
para a esquerda junto com o dado do carry (R9009).
D = Área de 16 bits a ser rotacionada para a esquerda
n = Constante ou área de 16 bits que especifica o número de bits rotacionados
(H0 a HFF)
Quando X0 é acionado o registrador DT0 (D) é rotacionado junto com o carry
(R9009) 4 bits para a esquerda.
Quando o dado + carry é rotacionado 4 bits para a esquerda:
• O dado do bit 12 é trasferido para o relé especial R9009 (carry).
• Os 4 bits mais significativos (12 a 15) são rotacionados para a esquerda e
então o carry + os bits 13 a 15 de DT0 são rotacionados para os 4 bits
menos significativos (0 a 3) do registrador DT0.
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0
Carry
0
Pos. do bit
15 . . 12
11 . . 8
7..4
3..0
DT0
0 0 1 0 0 0 1 1 0 1 0 0 0 0 0 0
Carry
1
- 123 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.13
Instruções de Manipulação de Dados (BIT):
5.3.13.1
F130 => (BTS) 16-BIT data bit set
Seta um bit específico de uma área de 16 bits.
D = Área de 16 bits;
n = Constante ou área de 16 bits que especifica o bit a ser setado (K0 a K15);
Quando X0 é acionado, o bit 7 de DT0 (D) é setado.
Pos. do bit
DT0
15
0
.
1
.
0
12 11
0 0
.
0
.
1
8
1
7
0
.
0
.
1
4
0
3
0
.
0
.
0
0
1
Pos. do bit
DT0
15
0
.
1
.
0
12 11
0 0
.
0
.
1
8
1
7
1
.
0
.
1
4
0
3
0
.
0
.
0
0
1
5.3.13.2
F131 => (BTR) 16-BIT data bit reset
Reseta um bit específico de uma área de 16 bits.
D = Área de 16 bits;
n = Constante ou área de 16 bits que especifica o bit a ser resetado (K0 a K15);
Quando X0 é acionado o bit 7 de DT0 (D) é resetado.
- 124 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Pos. do bit
DT0
15
1
.
1
.
0
12 11
1 1
.
1
.
0
8
0
7
1
.
0
.
1
4
1
3
1
.
0
.
1
0
0
Pos. do bit
DT0
15
1
.
1
.
0
12 11
1 1
.
1
.
0
8
0
7
0
.
0
.
1
4
1
3
1
.
0
.
1
0
0
5.3.13.3
F132 => (BTI) 16-BIT data bit invert
Inverte a condição de um bit específico de uma área de 16 bits.
D = Área de 16 bits;
n = Constante ou área de 16 bits que especifica o respectivo bit do dado a ser
devidamente invertido (K0 a K15);
Quando X0 é acionado o bit 7 de DT0 (D) é invertido.
Pos. do bit
DT0
15
0
.
0
.
0
12 11
0 0
.
0
.
0
8
1
7
0
.
0
.
1
4
1
3
0
.
0
.
1
0
0
Pos. do bit
DT0
15
0
.
0
.
0
12 11
0 0
.
0
.
0
8
1
7
1
.
0
.
1
4
1
3
0
.
0
.
1
0
0
- 125 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.13.4
F133 => (BTT) 16-BIT data test
Verifica o estado de um bit específico de uma área de 16 bits.
D = Área de 16 bits;
n = Constante ou área de 16 bits que especifica o bit a ser testado (K0 a K15);
Quando X0 é acionado o bit 7 do registrador DT0 (D) é verificado. Se o mesmo
bit estiver setado (1), o relé R900B fica resetado (0), e se o bit estiver resetado (0), o
relé R900B seta (1).
Pos. do bit 1 . . 1 1 . . 8 7 . . 4 3 . . 0
5
2 1
DT0
0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1
X0: Acionado
Relé R900B
1
- 126 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.3.13.5
F135 => (BCU) Number of ON bits in 16-BIT data
Conta o número de bits setados (1) de uma área de 16 bits.
S = Constante ou área de 16 bits (origem);
D = Área de 16 bits para armazenar o número de bits setados (destino);
Quando X0 é acionado, o respectivo número de bits setados (1) do registrador
DT10 (S) é contado e armazenado em DT0 (D).
DT10
Pos. do bit
Binário
15 . . 12
0000
11 . . 8
0001
7..4
0011
3..0
0101
7..4
0000
3..0
0101
DT0
Pos. do bit
Binário
Decimal
5.3.13.6
15 . . 12
0000
11 . . 8
0000
K5
F136 => (DBCU) Number of ON bits in 32-BIT data
Conta o número de bits setados (1) de uma área de 32 bits.
S = Constante de 32 bits ou área de 16 bits menos significativa do respectivo
dado de 32 bits (origem);
D = Área de 16 bits para armazenar o número de bits setados, referente ao
respectivo (destino);
- 127 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
Quando X0 é acionado o número de bits setados (1) dos registradores DT11 e
DT10 (S+1 e S) é contado e armazenado em DT0 (D).
DT11
DT10
Pos. do bit 15 . . 12 11 . . 8 7 . . 4 3 . . 0 15 . . 12 11 . . 8 7 . . 4 3 . . 0
Binário
0011 0010 0000 0001 0000 0001 0011 0101
DT0
Pos. do bit
Binário
Decimal
15 . . 12
0000
11 . . 8
0000
7..4
0000
3..0
1001
K9
- 128 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
5.4 RELÉS INTERNOS ESPECIAIS
Os relés internos especiais mudam de estado (ligados e desligados) em
condições especiais. Estes por sua vez não estão ligados a saídas externas. Não é
possível alterar os estados destes relés através do software.
• R9000
• R9007
Liga quando houver algum erro no auto-teste !
Liga quando houver erros de operação !
•
•
•
•
R900A
R900B
R900C
R900E
Liga quando em uma comparação o resultado for maior [>]
Liga quando em uma comparação o resultado for igual [=]
Liga quando em uma comparação o resultado for menor [<]
Liga quando houver problemas com a porta RS422 !
•
•
•
•
•
•
•
•
R9010
R9011
R9012
R9013
R9014
R9015
R9018
R9019
Liga a partir do 1º scan !
Desliga a partir do 1º scan !
Liga e desliga a cada scan alternadamente !
Liga no 1º scan e desliga a partir do 2º !
Desliga no 1º scan e liga a partir do 2º !
Quando inicializa um step leader o relé fica ligado durante 1 scan !
Liga e desliga em ciclos de 0,01 seg.
Liga e desliga em ciclos de 0,02 seg.
•
•
•
•
•
R901A
R901B
R901C
R901D
R901E
Liga e desliga em ciclos de 0,1 seg.
Liga e desliga em ciclos de 0,2 seg.
Liga e desliga em ciclos de 1 seg.
Liga e desliga em ciclos de 2 seg.
Liga e desliga em ciclos de 1 min.
- 129 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6 EXERCÍCIOS
Teremos neste capítulo, uma sequência de exercícios propostos referente ao capítulo anterior, onde
desenvolveremos assim, a capacidade de raciocínio e desenvolvimento de software, com os objetivos de
aplicarmos o conteúdo apresentado e o conhecimento adquirido até então.
Para isto, utilizaremos a plataforma de programação FPWin GR V2.90, conforme seguem instruções
de procedimento !
6.1 EXERCÍCIOS BÁSICOS DE FIXAÇÃO
Veremos neste capítulo, uma seqüência de exercícios básicos e devidamente resolvidos, envolvendo
o conteúdo básico de programação, conforme instruções de procedimento averiguadas anteriomente.
•
•
•
•
•
PASSO 01 => Instale o FPWin GR V2.90 !
PASSO 02 => Execute o FPWin GR V2.90 !
PASSO 03 => Implemente os exercícios abaixo !
PASSO 04 => Teste ou simule os exercícios propostos !
PASSO 05 => Tire suas conclusões, referente ao funcionamento !
6.1.1 Exercícios Referente a Instruções Básicas de Controle
6.1.1.1 NA e Bobina Simples (OUT) !
Implemente o exercício abaixo, envolvendo o contato denominado normalmente aberto (NA), da
primeira entrada digital disponível do controlador, acionando respectivamente, a primeira saída digital do
respectivo CLP.
- 130 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.1.1.2 NF e Bobina Simples (OUT) !
Implemente o exercício abaixo, envolvendo o contato denominado normalmente fechado (NF), da
primeira entrada digital disponível do controlador, acionando respectivamente, a primeira saída digital do
respectivo CLP.
6.1.1.3 NA e Bobina Simples (OUT) !
Implemente o exercício abaixo, envolvendo desta forma, intruções de contatos normalmente aberto
(NA), o primeiro octeto completo de entradas digitais, disponível no controlador, acionando respectivamente
o primeiro conjunto do octeto de saídas digitais do respectivo CLP.
- 131 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.1.1.4 NA – NF e Função de Pulso (DF) !
Implemente o exercício abaixo, utilizando desta forma, instruções de contato normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de pulso disponível no controlador, criando
assim, um sistema de funcionamento denominado “Alternate” !
6.1.1.5 Flip-Flop !
Implemente o exercício abaixo, utilizando desta forma, instruções de contato normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de temporização disponível no controlador,
criando assim, um sistema de funcionamento denominado “flip-flop” !
- 132 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.1.1.6 Contador Decrescente – Auto reset !
Implemente o exercício abaixo, utilizando desta forma, instruções de contato normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de contagem disponíveis no controlador,
criando assim, um sistema de funcionamento denominado “contador decrescente” com auto-reset !
- 133 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.1.2 Exercícios Referente a Instruções de Dados
6.1.2.1 Sequenciador Decrescente – Auto Reset !
Implemente o exercício abaixo, utilizando desta forma, instruções de contato normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de contagem disponíveis no controlador,
criando assim, um sistema de funcionamento denominado “sequenciador decrescente” com auto-reset !
- 134 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.1.2.2 Navegador Crescente/Decrescente !
Implemente o exercício abaixo, utilizando desta forma, instruções de contato normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de contagem disponíveis no controlador,
criando assim, um sistema de funcionamento denominado “navegador crescente/decrescente” para
procedimentos de controle de navegação !
- 135 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.2 EXERCÍCIOS COMPLEMENTARES
6.2.1 Exercícios de Aprendizagem
6.2.1.1 Acionamento e Partida de Motores na Config. Estrela - Triângulo !
Implemente o exercício utilizando instruções de contato normal aberto (NA) e contato normal fechado
(NF), bem como, funções de temporização, disponíveis no controlador, criando assim, um sistema de partida
denominado “estrela-triângulo” utilizada em acionamento de motores de indução a partir de 10 CV !
- 136 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.2.1.2 Semáforo – Cruzamento de duas vias em mão única !
Implemente o exercício abaixo, utilizando desta forma, instruções de contatos normalmente aberto
(NA) e contato normalmente fechado (NF), bem como, funções de temporização e contagem, disponíveis no
controlador, criando assim, um sistema de controle para o respectivo semáforo !
- 137 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br
Curso Básico: Programação - FP Séries
________________________________________________________________________________________
6.3 REVISÃO E AGRADECIMENTOS
Seguem os respectivos agradecimentos, a todos os integrantes da equipe, de que, de alguma forma,
se propuseram a colaborar e contribuir com informações ao presente material formatado até o momento !
• Revisão Geral => Apostila do Curso Básico – FP Séries !
Eng. Gilberto A. Jana Filho
Gerência – Engenharia de Aplicações.
Eng. Leandro P. da Silva
Engenharia de Suporte – Filial do Paraná.
Eng. Richard P. Wolter
Engenharia de Suporte – Filial de Santa Catarina.
Edvandro Karpinski
Engenharia de Suporte – Filial de Santa Catarina.
- 138 ________________________________________________________________________________________
Produtos Eletrônicos Metaltex Ltda.
Rua José Rafaelli, 221 – CEP: 04763-280 – São Paulo – SP
[email protected] - http://www.metaltex.com.br

Documentos relacionados