1 11/05/2017
Parte 8
LABORATÓRIO
2 11/05/20171. DISPLAY DE 7 SEGMENTOS
2. TECLADO
3. PWM
4. ENTRADA ANALÓGICA
5. CONSIDERAÇÕES SOBRE I/O
6. KIT DIDÁTICO PIC-2377
7. OPERAÇÃO
DISPLAY DE 7 SEGMENTOS
1
3 11/05/2017DISPLAY DE 7 SEGMENTOS
DISPLAY DE 7 SEGMENTOS
1
Significado
4 11/05/2017• Display, em inglês, significa o fornecimento de uma informação.
• Em eletrônica, display é o dispositivo que tem como principal função o fornecimento da informação.
• A maioria dos displays são luminosos, mas não tem a função de proporcionar iluminação.
• Por serem mais robustos e consumirem menos energia elétrica, os LED´s compõe o tipo mais comum de display. • A informação mais simples é um bit, que pode ser
representado por um único LED.
• Um nibble pode ser informado por meio de um display de 7 segmentos, que, geralmente, possui um oitavo segmento, compondo um ponto no canto inferior esquerdo.
DISPLAY DE 7 SEGMENTOS
1
Ciclo da automação industrial
5 11/05/2017 Comandos (Teclado) Monitoração (Display) Entrada proveniente do sensor (Conversor A/D) Saída para o atuador (PWM) Controle
DISPLAY DE 7 SEGMENTOS
1
Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para baixo • J4: Para cima • CH1: Para baixo • CH2: Para baixo • CH3: Para baixo • CH4: Para cima • CH5: Para baixo • CH6: Para cima 6 11/05/2017
Acionamento
7 11/05/2017 RE<2:0> RA<5>Acionamento
8 7 6 5 4 3 2 1 8 11/05/2017 RD<7:0>DISPLAY DE 7 SEGMENTOS
1
Acionamento
• Posição A: LED’s • Posição B: Display 7-seg.• 8 bits de saída.
• Pode acionar os 8 LED’s <L7:L0>. • Pode acionar os 8 LED’s do display.
9 11/05/2017
DISPLAY DE 7 SEGMENTOS
1
Acionamento
Ch4Apostila Datapool PIC-2377
10 11/05/2017
DISPLAY DE 7 SEGMENTOS
1
Funcionamento
• O sinal enviado ao display é de oito bits.
• Este sinal deve ser multiplexado para os quatro displays. • A multiplexação é feita por RE<2:0> e RA<5>.
• PORTD<7:0>controla o display (8 diodos). • Os 4 displays são controlados por PORTD<7:0>. • Somente um display pode ser controlado por vez.
• São 12 bits de controle: • RD<7:0>, RE<2:0> , RA<5> • Todos bits são ativos em nível baixo.
11 11/05/2017
DISPLAY DE 7 SEGMENTOS
1
Funcionamento
• PORTD<7:0>está sempre ligada aos 4 displays. • Se todos estiverem ligados, todos receberão o
mesmo valor.
• Para que recebam valores diferentes, devem ser multiplexados.
• Na multiplexação (temporal), os displays ficam piscando a uma frequência imperceptível. • Esta multiplexação provoca uma leve perda na
luminosidade.
12 11/05/2017
Multiplexação por display
t
t
t
t
13 11/05/2017• São quatro palavras de sete bits. • O ponto não é usado.
Multiplexação por segmento
14 11/05/2017
• São sete palavras de quatro bits. • Quanto maior for o número de etapas de
multiplexação, maior é a redução do número de bits envolvidos.
• Quanto maior for o número de LED’s acionados individualmente por multiplexa-ção, maior é a perda de luminosidade. • Quanto maior for o número de etapas de
multiplexação, maior é o indesejável efeito de cintilação.
DISPLAY DE 7 SEGMENTOS
1
Sel
18-bit
14
DEMUX
A0 A7 B0 B7 C0 C7 D0 D7Sel
0 15 11/05/2017Multiplexação por display
DISPLAY DE 7 SEGMENTOS
1
16 11/05/2017
Controle de potência luminosa
• A multiplexação temporal gera uma diminuição da tensão média ou eficaz sobre o dispositivo luminoso. • Essa diminuição de tensão leva à diminuição na
potência fornecida (não proporcionalmente), o que leva a uma diminuição na luminosidade.
• Desta forma, é possível controlar o brilho dos segmentos dos display’s.
• Esse controle é feito de forma parecida ao PWM. • A relação percentual em que o segmento fica aceso em
relação ao período de multiplexação é o dutty-cycle.
DISPLAY DE 7 SEGMENTOS
1
17 11/05/2017 DPY1 DPY2 DPY3 DPY4 H L H L H L H L t t t t T• No PWM, há, somente, uma faixa alta e uma faixa baixa por período.
• No controle de potência por multiplexação temporal, é possível fragmentar essas faixas. • Essa fragmentação reduz o efeito de cintilação.
Controle de potência luminosa
DISPLAY DE 7 SEGMENTOS
1
Motor de passo
18 11/05/2017
• Os mesmos programas construídos para acionar display’s por multiplexação temporal podem ser empregados no acionamento de motor de passo.
• Ao invés de selecionar o display, selecionam-se a bobina do motor.
• A diferença é que motor de passo permite o acionamento de mais de uma bobina por vez, permitindo passos fracionados. • Outra diferença é que a ordem dos acionamentos é relevante. • Mais uma diferença é o fato de que, por causa da inércia mecânica do motor, não é possível aumentar muito a frequência de multiplexação.
Motor de passo
19 11/05/2017 Bobina1 Bobina2 Bobina3 Bobina4 H L H L H L H L t t t t T• A multiplexação periódica pode ser usada na seleção de outros dispositivos, como, por exemplo, as bobinas de um motor de passo.
• Trata-se do tipo mais simples e barato de motor elétrico. 1 2 3 4
20 11/05/2017
• É possível acionar duas bobinas ao mesmo tempo para a obtenção de meio passo.
• Um passo completo de um motor de quatro bobinas implica em um giro de 90º. Meio passo são 45º.
Motor de passo
H L H L H L H L t t t t T Bobina1 Bobina2 Bobina3 Bobina4 1 2 3 4 5 6 7 8DISPLAY DE 7 SEGMENTOS
1
Matriz 5x7
21 11/05/2017 • 5x7 = 35 segmentos. • 235= 34.359.738.368 de combinações.DISPLAY DE 7 SEGMENTOS
1
Display 2x16 dígitos
22 11/05/2017• Geralmente o display acompanha um controlador serial. • Os caracteres ASCII já estão codificados, não é preciso
desenhá-los, basta acessá-los por meio de uma look-up table. • Os primeiros 32 ASCII endereços são para controle.
• Os primeiros 128 endereços são iguais para todos idiomas. • Os últimos 128 endereços formam a parte estendida e são
específicos para o idioma selecionado.
• Cada modelo de display possui um protocolo particular de configuração.
DISPLAY DE 7 SEGMENTOS
1
Seleção de display
Display
RA5
RE2
RE1
RE0
DPY1
1
1
1
0
DPY2
1
1
0
1
DPY3
1
0
1
1
DPY4
0
1
1
1
23 11/05/2017• É possível acionar mais de um display ao mesmo tempo, mas, como não há memória, todos os displays acionados apresentam o mesmo valor. • A escolha pela lógica negativa foi feita pelo fabricante
do kit didático e nada tem a ver com a PIC®.
DISPLAY DE 7 SEGMENTOS
1
4-bit ring
counter
Sel
18-bit
14
DEMUX
Sel
024
ENC
R E 0 R E 1 R E 2 R A 5Multiplexação
clk
24 11/05/2017 A0 A7 B0 B7 C0 C7 D0 D7Seleção de segmento
SEGRD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0
1
1
1
1
1
1
1
1
0
2
1
1
1
1
1
1
0
1
3
1
1
1
1
1
0
1
1
4
1
1
1
1
0
1
1
1
5
1
1
1
0
1
1
1
1
6
1
1
0
1
1
1
1
1
7
1
0
1
1
1
1
1
1
8
0
1
1
1
1
1
1
1
8 7 6 5 4 3 2 1 25 11/05/2017Seleção de segmento
26 11/05/2017• A contagem em anel, a decodificação e a multiplexação são implementadas em software. • A escolha pela lógica negativa foi feita pelo
fabricante do kit didático e nada tem a ver com a arquitetura da PIC®.
• A formação de outros símbolos do display é obtida por meio da junção das palavras de seleção de cada segmento por meio da operação AND. 8 7 6 5 4 3 2 1
DISPLAY DE 7 SEGMENTOS
1
Seleção de segmento – Palavras com AND
SEG HEX
BIN
1
fe
11111110
2
fd
11111101
3
fb
11111011
4
f7
11110111
5
ef
11101111
6
df
11011111
7
bf
10111111
8
7f
01111111
27 11/05/2017 8 7 6 5 4 3 2 1DISPLAY DE 7 SEGMENTOS
1
Palavras de interesse
Val.
HEX
BIN
0 03 0000 0011 1 9f 1001 1111 2 25 0010 0101 3 0d 0000 1101 4 99 1001 1001 5 49 0100 1001 6 41 0100 0001 7 1b 0001 1011 8 01 0000 0001 9 09 0000 1001 a 11 0001 0001 b c1 1100 0001 c 63 0110 0011 d 85 1000 0101 e 61 0110 0001 f 71 0111 0001 28 11/05/2017 8 7 6 5 4 3 2 1
DISPLAY DE 7 SEGMENTOS
1
Criação das constantes
• Não é preciso memorizar os códigos.
• Basta usar estas declarações em todos os programas. • As chamadas são feitas sobre os nomes das constantes.
29 11/05/2017 constant Disp0 = 0x03 constant Disp1 = 0x9f constant Disp2 = 0x25 constant Disp3 = 0x0d constant Disp4 = 0x99 constant Disp5 = 0x49 constant Disp6 = 0x41 constant Disp7 = 0x1b constant Disp8 = 0x01 constant Disp9 = 0x09 constant DispA = 0x11 constant DispB = 0xc1 constant DispC = 0x63 constant DispD = 0x85 constant DispE = 0x61 constant DispF = 0x71
DISPLAY DE 7 SEGMENTOS
1
Iniciação das portas
;Rotina de iniciação
BCF STATUS,RP0
BCF STATUS,RP1
BSF PORTE,RE0 ; Desabilita Display DPY1
BSF PORTE,RE1 ; Desabilita Display DPY2
BSF PORTE,RE2 ; Desabilita Display DPY3
BSF PORTA,RA5 ; Desabilita Display DPY4
BSF STATUS,RP0
CLRF TRISA ; Configura PORTA como saída
CLRF TRISD ; Configura PORTD como saída
CLRF TRISE ; Configura PORTE como saída
MOVLW 0x06 ; Carrega W com o valor 0x06
MOVWF ADCON1 ; PORTA e PORTE como digital
BCF STATUS,RP0
30 11/05/2017
TECLADO
31 11/05/2017
Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para cima • J4: Para cima • CH1: Para baixo • CH2: Para baixo • CH3: Para cima (1 a 4) • CH4: Para cima • CH5: Para cima (1 a 4) • CH6: Para baixo 32 11/05/2017
TECLADO
2
Teclado 4x4
PORTB PORTC 1 2 3 4 4 3 2 1Apostila Datapool PIC-2377
resistores limitadores de corrente Saídas ativas em 0 Entradas 33 11/05/2017
TECLADO
2
Multiplexação pelas linhas (usaremos)
t
t
t
t
Linha 1 Linha 2 Linha 3 Linha 4 34 11/05/2017TECLADO
2
Multiplexação pelas colunas
t
t
t
t
Coluna1 Coluna 2 Coluna 3 Coluna 4 35 11/05/2017TECLADO
2
36 11/05/2017Multiplexação por linhas
Sel
18-bit
41
MUX
Sel
0 C D E F 8 9 A B 4 5 6 7 0 1 2 3Multiplexação
37 11/05/20174-bit ring
counter
Sel
18-bit
14
MUX
Sel
024
ENC
R C 0 R C 1 R C 2 R C 5clk
C D E F 8 9 A B 4 5 6 7 0 1 2 3Multiplexação total
t t t t t t t t t t t t t t t t Opção 1 O pç ão 2 38 11/05/2017TECLADO
2
Decodificação da multiplexação total
• Não permite o acionamento de mais de uma tecla por vez. • Promove grande economia de bits de endereço.
I
224
DEC
I
324
DEC
I
0I
14
-b
it
c
o
u
n
te
r
I
0I
1I
2I
3 39 11/05/2017 CLKTECLADO
2
Decodificação
40 11/05/201724
DEC
I
3I
438
DEC
I
0I
1I
25
-b
it
c
o
u
n
te
r
CLKI
0I
1I
2I
3I
4 Teclado 8x4TECLADO
2
41 11/05/2017Por que multiplexar
• Para um teclado 4x4 não multiplexado, seriam necessárias 16 vias de dados, cada uma implicando em soldas, trilhas de circuito impresso, fios, bits de portas paralelas e pinos no chip MCU. • Usando a multiplexação por linhas ou por colunas, este número cai para oito. Uma MCU com encapsulamento DIP14 pode conter oito pinos de comunicação.
• As vantagens de custo, tempo de montagem, peso, espaço, robustez, justificam o uso da multiplexação de teclados e de displays.
TECLADO
2
42 11/05/2017
Transitórios de alta frequência
t t Transitório de subida Transitório de descida Desejado Obtido
43 11/05/2017
Causas dos transitórios
• Quando dois contatos separados se aproximam, ou dois contatos ligados se separam, existe a formação de um campo elétrico.
• Por menor que seja a tensão aplicada, por mais rápida que seja a mudança de posição dos contatos, há instantes onde o campo elétrico é elevadíssimo, suficiente para romper a rigidez dielétrica do ar, formando um arco voltaico. • O arco voltaico implica em uma corrente
elétrica de valores aleatórios, gerando uma tensão nos contatos igualmente aleatória.
44 11/05/2017
Causas dos transitórios
• Quando dois sólidos indeformáveis colidem, surge uma trepidação, decorrentes da colisão inelástica. • Esta trepidação forma uma sucessão de pequenas
outras colisões, com intensidades cada vez menores. • Esta trepidação faz com que o chaveamento elétrico
não forme uma função degrau, há uma oscilação entre os níveis de tensão nos estados ligado e desligado.
TECLADO
2
45 11/05/2017
Efeito dos transitórios
• Em circuitos digitais, os transitórios de alta frequência provocam múltiplos chaveamentos (oscilação temporária) entre os níveis lógicos zero e um.
• Em circuitos digitais puramente combinacionais, isso pode não ser um problema.
• Em circuitos digitais sequenciais (máquinas de estados estáveis finitos), essa oscilação pode provocar múltiplas transições de estados, um comportamento inadequado. • Para resolver esse problema, é preciso criar um
temporizador dimensionado para paralisar o sistema por um tempo superior ao máximo tempo de estabilização.
TECLADO
2
46 11/05/2017
Proteção contra transitórios de alta frequência
t t Desejado Obtido t Temporizador
TECLADO
2
47 11/05/2017Proteção contra transitórios de alta frequência
• O temporizador deve ter uma duração longa o suficiente para impedir que as duas oscilações cheguem até o circuito digital. • Geralmente uma das oscilações é mais
longa do que a outra.
• Dependendo da qualidade e do estado de conservação da chave, o transitório pode ter maior ou menor duração.
• A programação do temporizador deve levar em consideração a deterioração natural da chave, que aumenta o tempo do transitório.
TECLADO
2
48 11/05/2017
Efeito toogle
• Toogle switch é toda chave com memória.
• Geralmente são dois estados, mas há chaves com mais estados.
• Push button (botoeira) é um tipo de chave sem memória. • Push button possui apenas dois estados.
• Desvantagens do Toogle switch: • Mais caro
• Mais pesado • Faz barulho • Dura muito menos • Ocupa mais espaço • Gera trepidação • Vantagens do Toogle switch:
• Possui memória • Suporta mais do que dois
49 11/05/2017
Efeito toogle
• Por causa das desvantagens do toogle switch, ele, atualmente, vem sendo substituído pelo push button na maioria das aplicações.
• Transformar um push button em um toogle switch requer o uso de um flip-flop como elemento de memória (1 bit). • Em se tratando de MCU, é preciso que o programa aja
como um flip-flop.
• Para agir como memória, o FF precisa ter configuração mestre-escravo, com sensibilidade à borda positiva ou negativa do sinal de controle.
50 11/05/2017
Efeito toogle
• A configuração toogle pode ser obtida com FF D e com FF JK. • A configuração master-slave realiza dois travamentos: • Travamento do master: Sensível a um nível do controle. • Travamento do slave: Sensível a outro nível do controle. • Este duplo travamento permite o controle por borda. • O programa deve realizar esse duplo travamento. • O acionamento pode ser ao apertar ou ao soltar a tecla.
TECLADO
2
51 11/05/2017
Acionamento ao soltar a tecla
Tecla apertada? Início
Não
Sim Tecla apertada
Tecla solta? Não
Sim Rotina Master Slave
TECLADO
2
52 11/05/2017 Tecla apertada? Início Não Sim Tecla apertadaTecla solta? Não
Rotina Espera Sim Espera Opcional Obrigatório
Acionamento ao soltar a tecla com temporização
Master Slave
TECLADO
2
53 11/05/2017Efeito toogle
• Tecla apertada: RB0=0 • Tecla solta: RB0=1 Apertada t Apertada 0 1 Solta Execução Execução Escolhendo RB0TECLADO
2
54 11/05/2017Travamentos
Tecla apertada? Início Não RB0=1 Sim RB0=0 Tecla apertada Tecla solta? Não RB0=0 Sim RB0=1 Master Slave Apertada t 0 1 Solta Travamento Master Apertada Travamento Slave55 11/05/2017
TravaM
BTFSS PORTB,RB0 ; Master
GOTO TravaS ; Master ; Saída
GOTO TravaM ; Master ; Laço
Travamento usando BTFSS
TravaS
BTFSS PORTB,RB0 ; Slave
GOTO TravaS ; Slave ; Laço
RB0=0? Início Não Sim Master Tecla apertada RB0=1? Não Sim Slave 56 11/05/2017 RB0=0? Início Não Sim Master TravaM BTFSC PORTB,RB0 ; Master
GOTO TravaM ; Master ; Laço
Tecla apertada RB0=1? Não Sim Slave TravaS BTFSC PORTB,RB0 ; Slave
GOTO Rotina ; Slave ; Saída
GOTO TravaS ; Slave ; Laço
Travamento usando BTFSC
TECLADO
2
57 11/05/2017 Trava BTFSC PORTB,RB0 ; Master GOTO $-1 ; Master BTFSS PORTB,RB0 ; Slave GOTO $-1 ; Slave RB0=0? Início Não Sim Master Tecla apertada RB0=1? Não Sim Slave• A execução fica presa nesta rotina até que a tecla seja solta. • Ao soltar a tecla, o PC vai para o próximo endereço.
A melhor opção de travamento
TECLADO
2
58 11/05/2017
Travamento com temporização
Trava BTFSC PORTB,RB0 ; Master GOTO $-0x1 ; Master BTFSS PORTB,RB0 ; Slave GOTO $-0x1 ; Slave MOVLW VALOR MOVWF TEMPOB MOVWF TEMPOA DECFSZ TEMPOA,F GOTO $-0x1 DECFSZ TEMPOB,F GOTO $-0x4 RB=0? Início Não Sim Master Tecla apertada RB=1? Não Sim Slave Espera
TECLADO
2
59 11/05/2017Rotina principal
Tecla apertada? Tecla solta Não Sim Tecla apertadaTecla solta? Não
Rotina Sim Espera
TECLADO
2
60 11/05/2017Rotina Trava
Empregada nos exemplos 4, 5, 6, 7 Trava BTFSC PORTB,RB0 GOTO $-0x1 BTFSS PORTB,RB0 GOTO $-0x1 constant TEMPOA = 0x21 constant TEMPOB = 0x22 constant TEMPOC = 0x23
constant VALOR = 0x3f ;configurável
MOVLW VALOR MOVWF TEMPOC MOVWF TEMPOB MOVWF TEMPOA DECFSZ TEMPOA,F GOTO $-0x1 DECFSZ TEMPOB,F GOTO $-0x4 DECFSZ TEMPOC,F GOTO $-0x7 RETURN
61 11/05/2017
Rotina Trava
Empregada nos exemplos 4, 5, 6 e 7 constant VALOR = 0x3f ;configurável
• O parâmetro “valor = 0x3f” é obtido por tentativa e erro. • Uma configuração muito baixa permite a ocorrência de oscilações que farão com que uma única pressionada no botão seja considerada como múltiplas pressionadas. • Uma configuração muito alta gera um atraso irritante entre
o soltar da tecla e a efetuação da ação selecionada pelo botão.
• Cada modelo de tecla requer uma configuração individual. • O envelhecimento da tecla faz com que este parâmetro
precise ser maior, por isso é bom configurar um pouco
acima do mínimo. 11/05/2017 62 Tecla apertada? Tecla solta Não Sim Tecla apertada
Tecla solta? Não Sim Espera
Elemento de memória
Empregado nos programas 4, 5, e 6
FF
D
CLKQ
/Q
bit
TECLADO
2
63 11/05/2017Elemento de memória
Empregado nos programas 4, 5, e 6 constant marqualrélio = 0x20 CLRF marqualrélio
COMF marqualrélio,W ; TOOGLE
• O toogle-switch obtido a partir de um push boton requer um elemento armazenador do estado binário. • Um push boton pode ser transformado em
toogle-switch por meio de um flip-flop D ou JK.
• Usando MCU, um GPR precisa ser usado como este elemento de memória.
PWM
3
PWM
64 11/05/2017PWM
3
Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para cima • J4: Para cima • CH1: Para baixo • CH2: Para cima (2) • CH3: Para cima (1) • CH4: Para baixo • CH5: Para cima (1 a 4) • CH6: Para baixo 65 11/05/2017
PWM
3
66 11/05/2017Conexões
• O módulo CCP1 está ligado à lâmpada. • O módulo CCP2 está ligado ao motor. • É fácil perceber mudança no brilho da lâmpada. • É difícil perceber mudança na rotação do motor. • Usaremos CCP1.
• Os módulos CCP compartilham pinos com PORTC. • Os pinos do módulo devem ser configurados como saída.
67 11/05/2017
Conexões
PWM2 USAREMOS USAREMOS PWM1Terças aproximadas com 8 bits
68 11/05/2017 • CCP1X=0 • CCP1Y=0 • 8 bits: 0d a 255d • PR2 = FFh • Passos de 10 bits: = (FFh+1)×4 = 1024 • Passos de 8 bits: = FFh+1 = 256 • 00000000b= 0% de 256 • 01010101b 33% de 256 • 10101010b 67% de 256 • 11111111b 100% de 256 DC CCPR1L CCP1X CCP1YDecimalPassos em um Faixa em um
0% 00000000b00h 0 0 0 0 – 33% 01010101b 55h 0 0 340 340 0 – 339 67% 10101010b AAh 0 0 680 680 0 – 679 100%11111111b FFh 0 0 1020 1020 0 – 1019
PWM
3
Terças aproximadas com 10 bits
69 11/05/2017 • 10 bits: 0d a 1023d • PR2 = FFh • 0000000000b= 0% de 1024 • 0101010101b 33% de 1024 • 1010101010b 67% de 1024 • 1111111111b 100% de 1024
DC CCPR1L CCP1X CCP1YDecimalPassos em um Faixa em um
0% 00000000b 00h 0 0 0 0 – 33% 01010101b55h 0 1 341 341 0 – 340 67% 10101010bAAh 1 0 682 682 0 – 681 100%11111111bFFh 1 1 1023 1023 0 – 1022
PWM
3
Terças exatas com 8 bits
70 11/05/2017 • CCP1X=0 • CCP1Y=0 • 8 bits: 0d a 255d • PR2 = FEh
• Passos de 10 bits: = (FEh+1)×4 = 1020 • Passos de 8 bits: = FEh+1 = 255
• 00000000b= 0% de 255 • 01010101b= 33% de 255 • 10101010b= 67% de 255 • 11111111b= 100% de 255 DC CCPR1L CCP1X CCP1YDecimalPassos em um Faixa em um
0% 00000000b 00h 0 0 0 0 – 33% 01010101b55h 0 0 340 340 0 – 339 67% 10101010bAAh 0 0 680 680 0 – 679 100%11111111bFFh 0 0 1020 1020 0 – 1019
PWM
3
Quartas exatas com 8 bits
71 11/05/2017 • 8 bits: 0d a 255d • PR2 = FBh • Passos de 10 bits: = (FBh+1)×4 = 1008 • Passos de 8 bits: = FBh+1 = 252 • 00000000b= 0% de 252 • 00111111b= 25% de 252 • 01111110b= 50% de 252 • 10111101b= 75% de 252 • 11111100b= 100% de 252 DC CCPR1L CCP1X CCP1YDecimal 0% 00000000b 00h 0 0 0 25% 00111111b3Fh 0 0 252 50% 01111110b 7Eh 0 0 504 75% 10111101b BDh 0 0 756 100% 11111100b FCh 0 0 1008
PWM
3
Sensibilidade
72 11/05/2017• Como a percepção humana sobre o brilho da lâmpada não possui grande sensibilidade, não é necessário lidar com 10 bits.
• 8 bits são suficientes para esta aplicação. • A configuração de <CCP1X:CCP1Y> também
Rotina de iniciação
73 11/05/2017 ;Rotina de iniciação BCF STATUS,RP1 BSF STATUS,RP0CLRF TRISC ;Configura PORTC como saída
MOVLW 0xfe
MOVWF PR2 ;Configura o período do PWM
BCF STATUS,RP0
MOVLW 0x07
MOVWF T2CON ;Habilita o Timer2 com 1:16
MOVLW 0x0f
MOVWF CCP1CON ;Habilita o PWM 1
CCPxCON T2CON
Rotina de iniciação
74 11/05/2017 CCPxCON T2CON <T2CKPS1: T2CKPS0> Prescaler Ratio 00 1:1 01 1:4 10 1:16 11 1:16 <CCPxM3: CCPxM2> CCP Mode 00 Desligado 01 Capture 10 Compare 11 PWMENTRADA ANALÓGICA
4
ENTRADA ANALÓGICA
75 11/05/2017ENTRADA ANALÓGICA
4
Conexões
76 11/05/2017 USAREMOS 3 USAREMOSENTRADA ANALÓGICA
4
Automação industrial
77 11/05/2017 Teclas Conversor A/D Potenciômetros Sensores Contatos Portas paralelas Processamento PWM Portas paralelas Atuadores Displays ProcessamentoENTRADA ANALÓGICA
4
Configuração
78 11/05/2017 ADCON0 ADCON1AD Clock ADCS1 ADCS0 fOSC/2 0 0 fOSC/8 0 1 fOSC/32 1 0 fRCINT 1 1 AN CHS2 CHS1 CHS0 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 PCFG3 :PCFG0 AN7 RE2 AN6 RE1 AN5 RE0 AN4 RA5 AN3 RA3 AN2 RA2 AN1 RA1 AN0 RA0 0000 A A A A A A A A 0001 A A A A VREF+ A A A 0010 D D D A A A A A 0011 D D D A VREF+ A A A 0100 D D D D A D A A 0101 D D D D VREF+ D A A 011x D D D D D D D D 1000 A A A A VREF+VREF- A A 1001 D D A A A A A A 1010 D D A A VREF+ A A A 1011 D D A A VREF+VREF- A A 1100 D D D A VREF+VREF- A A 1101 D D D D VREF+VREF- A A 1110 D D D D D D D A 1111 D D D D VREF+VREF- D A
Exemplo 1 – Palavra binária
79 11/05/2017 ADRESH PORTD 0d 0V 255d 5V 80 11/05/2017Exemplo 1 – Palavra binária
Controle com 8 bits PORTD
ENTRADA ANALÓGICA
4
Exemplo 1 – Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para cima • J4: Para cima • CH1: Para cima (3) • CH2: Para baixo • CH3: Para baixo • CH4: Para cima • CH5: Para baixo • CH6: Para baixo 81 11/05/2017
ENTRADA ANALÓGICA
4
Exemplo 2 – Palavra hexadecimal – 4 bits
82 11/05/2017 ADRESH PORTD Val. Mín. Máx. 0 0000000000001111 1 0001000000011111 2 0010000000101111 3 0011000000111111 4 0100000001001111 5 0101000001011111 6 0110000001101111 7 0111000001111111 8 1000000010001111 9 1001000010011111 a 1010000010101111 b 1011000010111111 c 1100000011001111 d 1101000011011111 e 1110000011101111 f 1111000011111111
ENTRADA ANALÓGICA
4
83 11/05/2017Exemplo 1 – Palavra binária
Controle com 8 bits, usando apenas 4 bits
PORTD <7:4>
ENTRADA ANALÓGICA
4
Exemplo 2 – Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para baixo • J4: Para cima • CH1: Para cima (3) • CH2: Para baixo • CH3: Para baixo • CH4: Para cima • CH5: Para baixo • CH6: Para cima (1) 84 11/05/2017
Exemplos 3 a 10 – Controle PWM
85 11/05/2017
ADRES
CCPR
Exemplos 3 a 10 – Configuração do kit didático
• J1: Para baixo • J2: Para baixo • J3: Para cima • J4: Para cima • CH1: Para cima (3) • CH2: Para cima (2) • CH3: Para cima (1) • CH4: Para baixo • CH5: Para baixo • CH6: Para baixo 86 11/05/2017
ENTRADA ANALÓGICA
4
Exemplos 3 a 10 – Princípio
87 11/05/2017Controle com 10 bits Controle com 8 bits
ENTRADA ANALÓGICA
4
;Rotina de iniciação BCF STATUS,RP1 BSF STATUS,RP0 CLRF TRISDCLRF ADCON1 ;Habilita os oito canais AD
MOVLW 0x08 ;00001000b
MOVWF TRISA ;Entrada AD
BCF STATUS,RP0
MOVLW 0x59
MOVWF ADCON0 ;0101_10X1
;01 - ADCLOCK = FOSC/8 = FCY/2 ;011 - AN3 ;0 - GODONE ;1 – ADON 88 11/05/2017 PCFG3 :PCFG0 AN7 RE2 AN6 RE1 AN5 RE0 AN4 RA5 AN3 RA3 AN2 RA2 AN1 RA1 AN0 RA0 0000 A A A A A A A A ADCON1 ADCON0
AD Clock ADCS1 ADCS0 fOSC/8 0 1
Rotina de iniciação
ENTRADA ANALÓGICA
4
89 11/05/2017• O programa transfere o resultado da conversão A/D diretamente para o PWM.
• A relação entre a posição do potenciômetro e a tensão média na lâmpada é linear.
• Este efeito poderia ser obtido diretamente por meio de um circuito analógico, não seria necessário o uso de uma MCU. • A vantagem do uso da MCU é a possibilidade da alteração da função de transferência da posição do potenciômetro para o brilho da lâmpada.
• É possível, por exemplo, aplicar funções para linearização de efeitos não lineares entre o potenciômetro e o atuador.
Controle A/D – PWM
ENTRADA ANALÓGICA
4
90 11/05/2017
• O sistema de malha fechada A/D – PWM pode ser usado com 8 bits ou 10 bits.
• Usando 8 bits, a execução do programa é mais rápida e permite uma frequência de amostragem maior, porém oferece menor refinamento nos valores amostrados. • Usando 10 bits, a execução do programa é mais lenta e
permite uma frequência de amostragem menor, porém oferece maior refinamento nos valores amostrados.
91 11/05/2017
• Para sistemas em malha fechada (P, PI, PD ou PID) é preciso realizar uma análise sofisticada para determinar qual a melhor opção.
• Em alguns casos, é preferível diminuir a frequência das amostragens para executar cálculos mais refinados. • Em outros casos, é preferível diminuir o refinamento dos
cálculos para que a frequência das amostragens seja maior. • Quando se trabalha com dez bits, as funções de transferência para a ação de controle também se tornam mais demoradas, contribuindo para um maior aumento no tempo de execução da rotina, tornando esta diferença de tempo bem maior do que o dobro.
Controle A/D – PWM
92 11/05/2017
CONSIDERAÇÕES SOBRE I/O
CONSIDERAÇÕES SOBRE I/O
5
93 11/05/2017
• Para que um programa assembly seja útil, ele precisa fazer pelo menos uma leitura ou uma escrita no file registers.
Aplicações práticas
INDF 000h INDF 080h INDF 100h INDF 180h TMR0 001h OPTION_REG 081h TMR0 101h OPTION_REG181h
PCL 002h PCL 082h PCL 102h PCL 182h
STATUS 003h STATUS 083h STATUS 103h STATUS 183h
FSR 004h FSR 084h FSR 104h FSR 184h
PORTA 005h TRISA 085h 105h 185h
PORTB 006h TRISB 086h PORTB 106h TRISB 186h
PORTC 007h TRISC 087h 107h 187h
PORTD 008h TRISD 088h 108h 188h
PORTE 009h TRISE 089h 109h 189h
PCLATH 00Ah PCLATH 08Ah PCLATH 10Ah PCLATH 18Ah INTCON 00Bh INTCON 08Bh INTCON 10Bh INTCON 18Bh PIR1 00Ch PIE1 08Ch EEDATA 10Ch EECON1 18Ch PIR2 00Dh PIE2 08Dh EEADR 10Dh EECON2 18Dh TMR1L 00Eh PCON 08Eh EEDATH 10Eh 18Eh
TMR1H 00Fh 08Fh EEADRH 10Fh 18Fh T1CON 010h 090h 110h 190h TMR2 011h SSPCON2 091h T2CON 012h PR2 092h SSPBUF 013h SSPADD 093h SSPCON 014h SSPSTAT 094h CCPR1L 015h 095h CCPR1H 016h 096h CCP1CON 017h 097h RCSTA 018h TXSTA 098h GPR’s GPR’s TXREG 019h SPBRG 099h
RCREG 01Ah 09Ah
CCPR2L 01Bh 09Bh
CCPR2H 01Ch 09Ch
CCP2CON 01Dh 09Dh ADRESH 01Eh ADRESL 09Eh ADCON0 01Fh ADCON1 09Fh 020h 0A0h GPR’s GPR’s 06Fh 0EFh 16Fh 1EFh 070h 0F0h 170h 1F0h GPR’s GPR’s GPR’s GPR’s 07Fh 0FFh 17Fh 1FFh
CONSIDERAÇÕES SOBRE I/O
5
94 11/05/2017
• Não basta que se acesse o file registers, é preciso que seja um SFR, porque os GPR´s tem ação puramente interna ao chip.
Aplicações práticas
000hINDF 001hTMR0 002hPCL 003hSTATUS 004hFSR 005hPORTA 006hPORTB 007hPORTC 008hPORTD 009hPORTE 00AhPCLATH 00BhINTCON 00ChPIR1 00DhPIR2 00EhTMR1L 00FhTMR1H 010hT1CON 011hTMR2 012hT2CON 013hSSPBUF 014hSSPCON 015hCCPR1L 016hCCPR1H 017hCCP1CON 018hRCSTA 019hTXREG 01AhRCREG 01BhCCPR2L 01ChCCPR2H 01DhCCP2CON 01EhADRESH 01FhADCON0 081hOPTION_REG 085hTRISA 086hTRISB 087hTRISC 088hTRISD 089hTRISE 08ChPIE1 08DhPIE2 08EhPCON 091hSSPCON2 092hPR2 093hSSPADD 094hSSPSTAT 098hTXSTA 099hSPBRG 09EhADRESL 09FhADCON1 10ChEEDATA 10DhEEADR 10EhEEDATH 10FhEEADRH 18ChEECON1 18DhEECON2CONSIDERAÇÕES SOBRE I/O
5
95 11/05/2017
• Não basta que seja um simples SFR, é preciso que seja um SFR periférico, porque os SFR´s do core tem ação puramente interna ao chip.
Aplicações práticas
005 PORTA 006 PORTB 007 PORTC 008 PORTD 009 PORTE 00E TMR1L 00F TMR1H 010 T1CON 011 TMR2 012 T2CON 013 SSPBUF 014 SSPCON 015 CCPR1L 016 CCPR1H 017 CCP1CON 018 RCSTA 019 TXREG 01A RCREG 01B CCPR2L 01C CCPR2H 01D CCP2CON 01E ADRESH 01F ADCON0 085 TRISA 086 TRISB 087 TRISC 088 TRISD 089 TRISE 091 SSPCON2 092 PR2 093 SSPADD 094 SSPSTAT 098 TXSTA 099 SPBRG 09E ADRESL 09F ADCON1 10C EEDATA 10D EEADR 10E EEDATH 10F EEADRH 18C EECON1 18D EECON2CONSIDERAÇÕES SOBRE I/O
5
96 11/05/2017
• Não basta que seja um SFR periférico, é preciso que seja um periférico de I/O.
Aplicações práticas
005 PORTA 006 PORTB 007 PORTC 008 PORTD 009 PORTE 013 SSPBUF 014 SSPCON 015 CCPR1L 016 CCPR1H 017 CCP1CON 018 RCSTA 019 TXREG 01A RCREG 01B CCPR2L 01C CCPR2H 01D CCP2CON 01E ADRESH 01F ADCON0 085 TRISA 086 TRISB 087 TRISC 088 TRISD 089 TRISE 091 SSPCON2 093 SSPADD 094 SSPSTAT 098 TXSTA 099 SPBRG 09E ADRESL 09F ADCON197 11/05/2017
• Não basta que seja um SFR de I/O, é preciso que seja de dado ou de endereço, porque os de controle e sinalização tem ação puramente interna. • A configuração TRIS é
essencial, porém ela, por si própria, não define uma comunicação.
Aplicações práticas
005 PORTA 006 PORTB 007 PORTC 008 PORTD 009 PORTE 013 SSPBUF 015 CCPR1L 016 CCPR1H 017 CCP1CON 019 TXREG 01A RCREG 01B CCPR2L 01C CCPR2H 01D CCP2CON 01E ADRESH 085 TRISA 086 TRISB 087 TRISC 088 TRISD 089 TRISE 093 SSPADD 09E ADRESL 98 11/05/2017Significado dos registradores
005 PORTA(6) 006 PORTB(8) 007 PORTC(8) 008 PORTD(8) 009 PORTE(3) Portas paralelas 085 TRISA(6) 086 TRISB(8) 087 TRISC(8) 088 TRISD(8) 089 TRISE(3) Output/Input
• O programa precisa acessar pelo menos um destes 17 registradores (próximo slide). • As portas paralelas usam todos os 33 pinos
de I/O do encapsulamento DIP40. • Esses 33 pinos podem ser multiplexados
com outras funções de I/O.
CONSIDERAÇÕES SOBRE I/O
5
99 11/05/2017
Significado dos registradores
013 SSPBUF 093 SSPADD 005 PORTA 006 PORTB 007 PORTC 008 PORTD 009 PORTE Portas paralelas PSP 015 CCPR1L 016 CCPR1H 017 CCP1CON 01B CCPR2L 01C CCPR2H 01D CCP2CON 16-bit capture 16-bit compare 10-bit PWM 01E ADRESH 09E ADRESL
10-bit A/D converter 8-bit SSP 085 TRISA 086 TRISB 087 TRISC 088 TRISD 089 TRISE Output/Input 019 TXREG 01A RCREG 8-bit USART • O programa precisa
acessar pelo menos um destes 17 registradores.
KIT DIDÁTICO PIC-2377
6
100 11/05/2017
KIT DIDÁTICO PIC-2377
KIT DIDÁTICO PIC-2377
6
http://eletronica.datapool.com.br/w p-content/uploads/2014/09/pic_2377.jpg
101 11/05/2017
Módulo PIC-2377
KIT DIDÁTICO PIC-2377
6
http://eletronica.datapool.com.br/w p-content/uploads/2014/09/PROGPIC-ICD-02-G.png
102 11/05/2017
103 11/05/2017
• Encapsulamento DIP40. • 33 pinos de I/O configuráveis. • 35-instruction RISC architecture. • 256 8-bit EEPROM data memory. • 8k 14-bit flash program memory. • 368 8-bit SRAM.
• 8-input 10-bit A/D converter.
• 3 temporizadores (TIMER0, TIMER1 e TIMER2). • Comunicação serial (SPI™, I2C™ e USART™). • 2 módulos CCP (capture, compare e PWM). • Comparação e depuração in-circuit.
Módulo PIC-2377 – Recursos internos da MCU
104 11/05/2017
• Teclado 4x4.
• LCD de 2 linhas por 16 colunas. • 4 displays de 7 segmentos. • 8 LED’s.
• 8 chaves para entrada de dados digitais. • Potenciômetro para entrada analógica. • Motor DC para o PWM.
• Lâmpada incandescente para o PWM. • 2 relés.
• Sensor de rotação. • Sensor de temperatura. • Buzina.
Módulo PIC-2377 – Recursos da placa mãe
USAREMOS
USAREMOS
USAREMOS
USAREMOS USAREMOS
KIT DIDÁTICO PIC-2377
6
105 11/05/2017
Módulo PIC-2377 – Recursos da placa mãe
Apostila Datapool PIC-2377 Ch4
KIT DIDÁTICO PIC-2377
6
106 11/05/2017
Dispositivos
KIT DIDÁTICO PIC-2377
6
107 11/05/2017
Fonte de alimentação
RECURSOS
6
KIT DIDÁTICO PIC-2377
108 11/05/2017
109 11/05/2017
Sensor de rotação
110 11/05/2017Display alfanumérico LCD 2x16
Possui controlador interno.
KIT DIDÁTICO PIC-2377
6
111 11/05/2017Display alfanumérico LCD 2x16
PORTE PORTDApostila Datapool PIC-2377
KIT DIDÁTICO PIC-2377
6
112 11/05/2017
Display alfanumérico LCD 2x16
Apostila Datapool PIC-2377
KIT DIDÁTICO PIC-2377
6
113 11/05/2017
Display alfanumérico LCD 2x16
Endereço dos dígitos
Apostila Datapool PIC-2377
KIT DIDÁTICO PIC-2377
6
114 11/05/2017
Display alfanumérico LCD 2x16
Código ASCII
115 11/05/2017
Displays de 7 segmentos e LED’s
• Displays: DPY1 a DPY4 • LED’s: L0 a L7
116 11/05/2017
Relés
KIT DIDÁTICO PIC-2377
6
117 11/05/2017Jumperes
• Três pinos. • Duas posições: A e B.• Selecionam dispositivos mutuamente exclusivos.
KIT DIDÁTICO PIC-2377
6
118 11/05/2017
Lâmpada e sensor de temperatura
KIT DIDÁTICO PIC-2377
6
119 11/05/2017Teclado 4x4
C D E
F
8
9
A B
4
5
6
7
0
1
2
3
KIT DIDÁTICO PIC-2377
6
120 11/05/2017
Teclado 4x4
Apostila Datapool PIC-2377
121 11/05/2017
Buzina
122 11/05/2017Memória
http://pdf1.alldatasheet.net/datasheet-pdf/view /36313/ROHM/BR24C04-W.html • BR24C04.• 512×8bits (4k) serial EEPROM. • I2C BUS compatible serial EEPROM.
KIT DIDÁTICO PIC-2377
6
123 11/05/2017
Potenciômetro
• Interface de entrada analógica.
• Deve ser ligado a uma das 8 entradas analógicas. • A posição do potenciômetro deve fornecer um determinado nível de tensão para o controlador.
KIT DIDÁTICO PIC-2377
6
124 11/05/2017
Chaves de dados – Toogle-switch – 8 bits
• 1: Para cima. • 0: Para baixo.
KIT DIDÁTICO PIC-2377
6
• 1: Para cima: Ligado. • 0: Para baixo: Desligado.
• Atuam sobre a conexão dos pinos da MCU.
125 11/05/2017
Chaves de configuração
KIT DIDÁTICO PIC-2377
6
126 11/05/2017
CH7
127 11/05/2017
Comunicação serial
Conectores DB-9 http://w ww.ti.com/lit/ds/symlink/max232.pdf LED piloto Usar com o ICD 1 Usar no programa • MAX232.• Dual EIA-232 drivers/receivers. 11/05/2017 128
MCU PIC16F877
Cristal • Este chip é usado no protocolo
ICD1, implementado no kit. • O MPLAB®não possui o protocolo
IDC1, mas possui o ICD2. • Para que seja usado o MPLAB, é
usado o PROGPICICD02. • Esta expansão possui uma outra
PIC®, que recebe o programa. • A PIC®do kit didático não é usada.
KIT DIDÁTICO PIC-2377
6
129 11/05/2017
Botão de reiniciação
• Este botão atua sobre o chip do kit didático. • Como este chip não é
usado, o botão não tem efeito.
KIT DIDÁTICO PIC-2377
6
130 11/05/2017
MCU PIC16F876
Cristal
KIT DIDÁTICO PIC-2377
6
131 11/05/2017 MAX232 PIC16F877 Cristal Conector DB-9 EEPROM SERIALMódulo PROGPICICD02
KIT DIDÁTICO PIC-2377
6
132 11/05/2017
Matriz de contatos e pontos de acesso
• Conexão direta aos pinos do chip. • Somente pinos usados para comunicação. • Uso da PIC®interna (não permite ICD2).
133 11/05/2017
Conexões externas
RC5 RC4 RC3 RC2 RC1 RC0 RB7 RB6 RB5 RB4 RB3 RB2 RB1 RB0 RA5 RA4 RA3 RA2 RA1 RA0 RE0 RE1 RD7 RD6 RD5 RD4 RD3 RD2 RD1 RD0 RD7 RD6 RE2 reset• Onde se lê o nome dos bits das portas paralelas, entenda-se os pinos relacionados a esses bits, com suas respectivas multiplexações de função.
OPERAÇÃO
134 11/05/20177
OPERAÇÃO
1. Saída digital 2. Entrada digital 3. Entrada analógica4. Modulação por largura de pulso (PWM)
Funções de I/O
135 11/05/2017
7
OPERAÇÃO
Saída digital
• Cada bit é uma função booleana. • Cada bit pode controlar um dispositivo. • O controle é do tipo liga-desliga.
• Os efeitos transitórios não são considerados. • Cada bit age como biestável.
• Lógicas:
• Positiva: Liga em nível alto. • Negativa Desliga em nível alto. • Pode ser necessário um driver de potência
para alimentar o dispositivo controlado.
136 11/05/2017
7
OPERAÇÃO
Exemplo de saída digital
Apostila Datapool PIC-2377
1 bit
• Controle de malha aberta.
• Não há sensores, somente atuadores. 137 11/05/2017
7
OPERAÇÃO
Entrada digital
• O sensor é do tipo biestável. • Podem ser usados os comandos:
• Push-button (sem memória) • Toogle-switches (com memória) • Chave eletrônica (tipo solid state) • Sensores com estímulo booleano • As chaves podem ser do tipo:
• Normalmente aberta • Normalmente fechada • Temporizada (retardada)
138 11/05/2017
Exemplo de entrada digital
Apostila Datapool PIC-2377
1 bit
• Sistema de monitoramento. • Não há controle sobre a planta. • Não há atuadores, somente sensores.
139 11/05/2017
Entrada analógica
• Requer conversor A/D. • O estímulo é analógico.
• A quantidade de valores pode ser infinita. • O escopo (faixa) deve ser definido.
• A quantização torna a quantidade de valores finita. • A quantização divide o escopo em sub-faixas. • A quantização não precisa ser linear. • Permite o sensoriamento gradual. • Permite o controle gradual.
• Permite a tomada de decisão em função de derivadas.
140 11/05/2017
7
OPERAÇÃO
Exemplo de entrada analógica
Apostila Datapool PIC-2377
Vários bits
• Sistema de monitoramento. • Não há controle sobre a planta. • Não há atuadores, somente sensores.
141 11/05/2017
7
OPERAÇÃO
Modulador por largura de pulso
• Para o usuário ou o dispositivo controlado, equivale a uma saída analógica.
• A saída é digital.
• O controle da potência fornecida é feito por meio do ajuste do dutty-cycle da onda quadrada de saída.
• O DC pode variar de 0% a 100%, embora esses limites sejam impossíveis de alcançar em moduladores analógicos.
• A potência na carga é proporcional ao DC. • Pode ser necessário o uso de um driver de
potência para alimentar o dispositivo controlado. 142
11/05/2017
7
OPERAÇÃO
Exemplo de modulador por largura de pulso
Apostila Datapool PIC-2377
Vários bits
• Controle de malha aberta.
• Não há sensores, somente atuadores.
143 11/05/2017
7
OPERAÇÃO
Controle com múltip. variáveis em malha fechada
1. Entrada digital; Saída digital
2. Entrada digital; Saída analógica (PWM) 3. Entrada analógica; Saída digital
4. Entrada analógica; Saída analógica (PWM)
1. Entrada simples; Saída simples 2. Entrada simples; Saída múltipla 3. Entrada múltipla; Saída simples 4. Entrada múltipla; Saída múltipla
144 11/05/2017
Exemplo de controle com múltiplas variáveis
Apostila Datapool PIC-2377
Vários bits
Vários bits
145 11/05/2017
Exemplo de controle com múltiplas variáveis
• No exemplo anterior, a lâmpada é o atuador e o termômetro é o sensor.
• Se o sistema tem atuador(es) e sensor(es), ele é de manipulação e de monitoramento.
• Se o atuador não afeta o sensor, o controle é de malha aberta. • Se o atuador interfere no sensor, o controle é de malha
fechada (realimentado).
• Se o sinal enviado ao atuador tende a diminuir a variação no sensor, a realimentação é negativa.
• Se o sinal enviado ao atuador tende a aumentar a variação no sensor, a realimentação é positiva.
146 11/05/2017
7
OPERAÇÃO
Exemplo de controle com múltiplas variáveis
• Realimentação negativa é usada quando o objetivo é a obtenção de estabilidade.
• Realimentação positiva é usada quando o objetivo é a obtenção de instabilidade que leve a um disparo.
• Disparo é a abertura ou fechamento de uma chave elétrica ou eletrônica que leve o circuito a uma outra forma de operação.
147 11/05/2017
7
OPERAÇÃO
Exemplo de controle com múltiplas variáveis
• As diversas leituras e escritas são feitas individualmente. • É realizada multiplexação temporal.
• Somente uma operação é realizada por vez. • Indicado quando o projeto é personalizado.
• Indicado quando as decisões não precisam ser rápidas. • Indicado quando os níveis analisados possam ser discretos.
148 11/05/2017
7
OPERAÇÃO
Vantagens do controle por MCU
• Simplicidade no projeto.
• Não requer cálculos de estabilidade de malha fechada. • Vide teoria de controle linear moderno.
• Facilidade de obtenção de estabilidade térmica. • Facilidade na alteração de parâmetros.
149 11/05/2017
7
OPERAÇÃO
Desvantagens do controle por MCU
• Custo unitário elevado.
• Não indicado para produção em larga escala.
• Não indicado para controle de precisão, quando os níveis analisados não possam ser discretizados (quantizados). • A discretização pode provocar oscilação entre dois níveis. • Não indicado para controle rápido, quando o tempo de
processamento da MCU faz com que a decisão seja tomada tarde demais.
• Não suporta condições extremas de trabalho.
150 11/05/2017
Pinos de comunicação
• Cada pino permite o controle de um dispositivo. • No 2377, os canais estão distribuídos em 5 portas. • Cada pino pode ser configurado como entrada ou saída.
Porta
Pinos
Compartilhamento de pinosA
6
Entrada analógicaB
8
C
8
D
8
Porta paralela escravaE
3
Entrada analógica151 11/05/2017
Níveis de tensão
• Valor médio, PWM, nível baixo: 0V • Valor médio, PWM, nível alto: 5V • Entrada analógica, nível baixo: 0V • Entrada analógica, nível alto: 5V • Valor analógico mínimo*: 0V • Valor analógico máximo*: 5V
152 11/05/2017