Escola de Engenharia Elétrica, Mecânica e de Computação Universidade Federal de Goiás
Laboratório de Microprocessadores e
Microcontroladores
Experimento 7:
Sensores e Transdutores
Alunos: Matrícula:
Prof. Dr. José Wilson Lima Nerys
Goiânia, 1º semestre de 2018
Laboratório de Microprocessadores e Microcontroladores 2
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
SUMÁRIO
1 Introdução .............................................................................................................................. 3
2 Transdutores/Sensores Digitais ............................................................................................. 4
2.1 Sensor Ultrassônico ....................................................................................................... 4
2.2 Medição Digital de Velocidade ..................................................................................... 5
3 Atividades do Experimento 7 ................................................................................................. 7
3.1 Medição de Distância com Sensor Ultrassônico ......................................................... 7
3.2 Medição Digital de Velocidade de um Motor CC ....................................................... 8
Laboratório de Microprocessadores e Microcontroladores 3
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
1 Introdução
O objetivo do presente experimento é estudar o uso de alguns sensores e transdutores com
sistemas baseados em microcontroladores. Os termos sensor e transdutor muitas vezes se confundem e
são usados como sendo equivalentes, mas, de um modo geral, um sensor é um elemento que converte
uma grandeza física em sinal elétrico, por exemplo: sensor de temperatura LM35 (Figura 1), que
apresenta uma variação de 10 mV/oC na saída. Um transdutor é normalmente composto apenas por um
sensor, um sensor e um circuito de condicionamento de sinal (que ajusta o sinal de saída à entrada do
equipamento de leitura) e, ainda, um sensor, um circuito condicionador de sinal e um circuito transmissor.
Exemplo de transdutor: transdutor de corrente de efeito Hall HA55 (Figura 2), que apresenta na saída uma
corrente de 1 mA para cada 1 A no circuito primário.
(a) (b) (c)
Figura 1 – LM35 conectado para uma saída de 2oC a 150oC.
(a) vista inferior; (b) conexão básica; (c) característica de saída
HA55
+12V a +15V
-12V a -15V
Vout (0,1V/A)
100 Ω
saída
+
-
M
RM
50
5
Vout (V)
Ip (A)10
1
3
30
(a) (b) (c) Figura 1 – HA55 conectado para uma saída de -50A a 50A.
(a) vista frontal; (b) conexão básica com RM = 100Ω; (c) característica de saída: 0,1V/A
O sensor e o transdutor apresentados nas Figuras 1 e 2 são analógicos e, assim, precisam de um
conversor analógico/digital para serem lidos por um microcontrolador. No presente experimento são
apresentados dois transdutores analógicos e dois transdutores digitais. Nas seções seguintes são
apresentados dois transdutores/sensores com saídas digitais.
Laboratório de Microprocessadores e Microcontroladores 4
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
2 Transdutores/Sensores Digitais
2.1 Sensor Ultrassônico
A Figura 3 mostra o sensor ultrassônico HC-SR04, utilizado para medir distâncias de 2 cm a 4 m.
Esse módulo da figura inclui um circuito transmissor de ultrassom e um circuito receptor.
Figura 3 – Sensor ultrassônico HC-SR04
O princípio básico de operação do sensor HC-SR04 é:
(1) Envia-se um sinal de nível alto de, pelo menos 10 µs, para o pino de Trigger “Trig”;
(2) O módulo automaticamente (após o trigger) envia 8 pulsos de 40 kHz, através da unidade
transmissora (T) e detecta o sinal de retorno (se há retorno do sinal), através da unidade receptora
(R);
(3) Se o sinal retornar (presença de obstáculo), com nível lógico alto, o tempo de duração de sinal
alto (no pino Echo) corresponde ao tempo de envio e retorno do sinal.
Utiliza-se, então, a expressão a seguir, para obter a distância do obstáculo que provocou o retorno
do sinal (a velocidade do som no ar é 340 m/s):
𝑑 =(𝑖𝑛𝑡𝑒𝑟𝑣𝑎𝑙𝑜 𝑑𝑒 𝑡𝑒𝑚𝑝𝑜 𝑑𝑒 𝑠𝑖𝑛𝑎𝑙 𝑎𝑙𝑡𝑜 × 𝑣𝑒𝑙𝑜𝑐𝑖𝑑𝑎𝑑𝑒 𝑑𝑜 𝑠𝑜𝑚)
2
Aplicando-se a expressão mostrada, chega-se ao valor de 5.882 µs para cada metro de
distância detectada, ou 58,82 µs para cada centímetro.
A Figura 4 mostra o diagrama de temporização do módulo. Recomenda-se um ciclo de
medida a cada 60 ms, no mínimo, para prevenir a interferência do sinal de trigger no sinal de
retorno. Esse módulo opera em uma faixa de operação de 15º.
Fig. 4: Diagrama de temporização do módulo HC-SR04
Laboratório de Microprocessadores e Microcontroladores 5
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
2.2 Medição Digital de Velocidade
Estão disponíveis no laboratório dois tipos de fotosensores: um com nível lógico normalmente
alto e outro com nível lógico normalmente baixo. Os dois modelos são mostrados na Figura 5. O
primeiro tipo foi montado com um circuito auxiliar modulador que diminui a influência da luz ambiente
sobre o fotosensor. Esse circuito emite uma luz de cerca de 1 kHz, que ao ser refletida satura o
fototransistor. É utilizado o decodificador de frequência NE567. O segundo modelo não usa circuito
modulador.
(a) (b)
Figura 5: Sensor de presença com circuito auxiliar modulador e sem circuito modulador
A diferença básica entre os modelos usados, além do circuito de modulação, está no
encapsulamento. Em um deles (Figura 6a) o encapsulamento faz com que o fototransistor fique
normalmente cortado (sem presença de luz); ele entra em saturação quando a luz do LED é refletida em
um obstáculo. Assim, o sinal de saída Vo passa de nível lógico alto para baixo, na presença de um
obstáculo.
No outro tipo de encapsulamento (Figura 6b) a luz do LED incide diretamente sobre o
fototransistor, fazendo com que ele fique normalmente saturado, ou seja, o sinal de saída Vo fica
inicialmente em nível lógico baixo; na presença de um obstáculo entre os dois componentes o
fototransistor é levado ao corte e o sinal de saída vai para o nível lógico alto.
(a) (b) Figura 6: (a) fototransistor normalmente cortado e (b) fototransistor normalmente saturado
Pode-se fazer uso do fotosensor da Figura 6(b) para medir a velocidade de um motor de forma
digital, associando-se ao fotosensor uma roda com 60 furos (Fig. 7).
Figura 7: conjunto fotosensor/roda de 60 furos
Laboratório de Microprocessadores e Microcontroladores 6
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
.
O sinal resultante do fotosensor, com a rotação da roda de 60 furos, é uma onda quadrada (Figura
8). Esse sinal pode ser conectado a um dos dois pinos de interrupção do microcontrolador 8051. A
interrupção deve ser configurada para atuar por transição (na passagem de nível lógico 1 para 0). A cada
interrupção o registrador usado para a contagem dos pulsos é incrementado em 1.
Figura 8: Sinal de saída do sensor de velocidade
A medição de velocidade é feita estabelecendo-se um tempo de amostragem, ou seja, um tempo
fixo em que o registro de pulsos é lido. Mostra-se a seguir que o fato de ter 60 furos na roda faz com que
o número de pulsos registrados por segundo (frequência) seja correspondente à velocidade em rotações
por minuto (rpm).
1 rotação/segundo 60 furos/segundo
60 rpm 60 furos/s X (rpm) X (furos/s)
1 rotação/segundo 60 rotações/minuto
Um tempo de amostragem menor que 1 segundo pode ser adotado, e é aconselhável em muitas
aplicações. Sendo assim, deve-se fazer a devida transformação de número de furos lidos no tempo de
amostragem para rotações por minuto.
ω (rpm) ≡ f (Hz)
Laboratório de Microprocessadores e Microcontroladores 7
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
3 Atividades do Experimento 7
Os programas das tarefas a seguir devem ser digitados e compilados em um simulador digital e
executados APENAS no kit didático real do microcontrolador 8051.
3.1 Medição de Distância com Sensor Ultrassônico
O programa a seguir faz a leitura da distância de obstáculos a partir de sensor ultrassônico e
mostra o resultado em um display LCD. No método utilizado o timer 0 gera pulsos aproximadamente a
cada 58 µs, que corresponde a 1 cm de deslocamento do som.
Tabela 1: Programa que faz a leitura de um sensor ultrassônico Linha Label Instruções Linha Label Instruções
1 trigger BIT P2.0 69 INICIA_LCD: MOV A,#38H
2 echo BIT P2.1 70 LCALL INSTR_WR
3 LCD EQU P0 71 MOV A,#38H
4 EN BIT P3.7 72 LCALL INSTR_WR
5 RW BIT P3.6 73 MOV A,#0EH
6 RS BIT P3.5 74 LCALL INSTR_WR
7 Offset EQU 10h 75 MOV A,#06H
8 DISTANCIA EQU 11H 76 LCALL INSTR_WR
9 77 MOV A,#01H
10 ORG 00H 78 LCALL INSTR_WR
11 LJMP INICIO 79 RET
12 80
13 ORG 30H 81 INSTR_WR: SETB EN
14 INICIO: MOV SP,#2FH 82 CLR RW
15 CLR trigger 83 CLR RS
16 MOV R0,#10 84 MOV LCD,A
17 MOV TMOD,#00010010B 85 LCALL ATRASO_LCD
18 MOV TL0,#201 86 CLR EN
19 MOV TH0,#201 87 RET
20 LCALL ATRASO_LCD 88
21 LCALL INICIA_LCD 89 TEXTO_WR: SETB EN
22 LCALL ATRASO_LCD 90 CLR RW
23 MOV OFFSET,#0 91 SETB RS
24 MOV DPTR,#MSG1 92 MOV LCD,A
25 LCALL LINHA1 93 CLR EN
26 LCALL ATRASO_LCD 94 LCALL ATRASO_LCD
27 LCALL ATRASO_LCD 95 RET
28 MOV DPTR,#MSG2 96
29 LCALL LINHA2 97 LINHA2: MOV A,#192
30 98 LCALL INSTR_WR
31 LOOP: LCALL SENSOR 99 LCALL ATRASO_LCD
32 LCALL Mostra 100
33 LCALL ATRASO500MS 101 LINHA1: MOV A,Offset
34 SJMP LOOP 102 MOVC A,@A+DPTR
35 103 CJNE A,#0FFH,ENVIA
36 SENSOR: MOV DISTANCIA,#00 104 MOV Offset,#00
37 SETB TRIGGER 105 RET
38 LCALL DELAY1 106
39 CLR TRIGGER 107 ENVIA: LCALL TEXTO_WR
40 JNB ECHO,$ 108 INC OFFSET
41 CLR TF0 109 SJMP LINHA1
42 SETB TR0 110
43 REPETE: JNB TF0,$ 111 ATRASO_LCD: MOV R4,#10
44 CLR TF0 112 V6:MOV R5,#80
45 MOV A,DISTANCIA 113 DJNZ R5,$
46 ADD A,#01 114 DJNZ R4,V6
47 DA A 115 RET
48 MOV DISTANCIA,A 116
49 JB ECHO,REPETE 117 DELAY1: MOV R6,#4D
50 CLR TR0 118 LABEL1: DJNZ R6, LABEL1
51 RET 119 RET
Laboratório de Microprocessadores e Microcontroladores 8
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
Questão 1: Coloque um obstáculo em 3 diferentes distâncias, até 20 cm, e anote na tabela a distância
escolhida e a leitura no LCD.
Distância 1 Distância 2 Distância 3
Distância escolhida
Leitura no LCD
Questão 2: Qual a maior distância obtida com a montagem implementada?
Questão 3: Explique o funcionamento da subrotina “Sensor”, da Linha 36 à Linha 51.
Questão 4: A recarga do temporizador zero, no modo 2, é 201. Explique o porquê dessa escolha.
3.2 Medição Digital de Velocidade de um Motor CC
O programa a seguir faz a leitura digital da velocidade de um motor, em rotações por minuto, e
mostra o resultado em um display LCD. No método utilizado o timer 0 é usado como gerador do tempo
de amostragem, de 1 s, para leitura do registrador que guarda a velocidade.
52 120
53 MOSTRA: MOV A,#203 121 ATRASO500MS: MOV TH1,#HIGH(19455)
54 LCALL INSTR_WR 122 MOV TL1,#LOW(19455)
55 LCALL ATRASO_LCD 123 SETB TR1
56 MOV A,#0f0h 124 JNB TF1,$
57 ANL A,DISTANCIA 125 CLR TF1
58 SWAP A 126 DJNZ R0,ATRASO500MS
59 ORL A,#30H 127 MOV R0,#10
60 LCALL TEXTO_WR 128 CLR TR1
61 LCALL ATRASO_LCD 129 RET
62 130
63 MOV A,#0fh 131
64 ANL A,DISTANCIA 132
65 ORL A,#30H 133 MSG1: DB 'Sensor Ultrassom', 0ffh
66 LCALL TEXTO_WR 134 MSG2: DB 'Distancia: cm', 0ffh
67 LCALL ATRASO_LCD 135
68 RET 136 END
Laboratório de Microprocessadores e Microcontroladores 9
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
Tabela 2: Programa que faz a leitura digital de velocidade de um motor Linha Label Instruções Linha Label Instruções
1 LCD EQU P0 69 INICIA_LCD: MOV A,#38H
2 EN BIT P3.7 70 LCALL INSTR_WR
3 RW BIT P3.6 71 MOV A,#38H
4 RS BIT P3.5 72 LCALL INSTR_WR
5 OFFSET EQU 14h 73 MOV A,#0EH
6 RPM_L EQU 10h 74 LCALL INSTR_WR
7 RPM_H EQU 11H 75 MOV A,#06H
8 76 LCALL INSTR_WR
9 ORG 00H 77 MOV A,#01H
10 LJMP INICIO 78 LCALL INSTR_WR
11 79 RET
12 ORG 0BH 80
13 LJMP AMOSTRA 81 TEXTO_WR: SETB EN
14 82 CLR RW
15 ORG 13H 83 SETB RS
16 LJMP VELOCIDADE 84 MOV LCD,A
17 85 CLR EN
18 ORG 30H 86 LCALL ATRASO_LCD
19 INICIO: MOV SP,#2FH 87 RET
20 MOV IE,#10000110B 88
21 MOV TCON,#04H 89 LINHA1: MOV A,OFFSET
22 MOV IP,#00000100B 90 MOVC A,@A+DPTR
23 MOV TMOD,#01H 91 CJNE A,#0FFH,ENVIA
24 MOV TH0,#HIGH(19455) 92 MOV Offset,#00 25 MOV TL0,#LOW(19455) 93 RET
26 MOV R0,#20 94
27 LCALL ATRASO_LCD 95 ENVIA: LCALL TEXTO_WR
28 LCALL INICIA_LCD 96 INC OFFSET
29 LCALL ATRASO_LCD 97 SJMP LINHA1
30 MOV DPTR,#MSG1 98
31 LCALL LINHA1 99 MOSTRA: MOV A,#198
32 LCALL ATRASO_LCD 100 LCALL INSTR_WR
33 SETB TR0 101 LCALL ATRASO_LCD
34 SJMP $ 102 MOV A,#0f0h
35 103 ANL A,RPM_H
36 AMOSTRA: CLR EA 104 SWAP A
37 MOV TH0,#HIGH(19455) 105 ORL A,#30H
38 MOV TL0,#LOW(19455) 106 LCALL TEXTO_WR
39 DJNZ R0,SAI2 107 LCALL ATRASO_LCD
40 MOV R0,#20 108
41 LCALL MOSTRA 109 MOV A,#0fh
42 MOV RPM_L,#0 110 ANL A,RPM_H
43 MOV RPM_H,#0 111 ORL A,#30H
44 SAI2: SETB EA 112 LCALL TEXTO_WR
45 RETI 113 LCALL ATRASO_LCD
46 114
47 VELOCIDADE: MOV A,RPM_L 115 MOV A,#0f0h
48 ADD A,#1 116 ANL A,RPM_L
49 DA A 117 SWAP A
50 MOV RPM_L,A 118 ORL A,#30H
51 JNC SAI 119 LCALL TEXTO_WR
52 120 LCALL ATRASO_LCD
53 MOV A,RPM_H 121
54 ADD A,#1 122 MOV A,#0fh
55 DA A 123 ANL A,RPM_L
56 MOV RPM_H,A 124 ORL A,#30H
57 SAI: NOP 125 LCALL TEXTO_WR
58 RETI 126 LCALL ATRASO_LCD
59 127 RET
60 INSTR_WR: SETB EN 128
61 CLR RW 129 ATRASO_LCD: MOV R4,#10
62 CLR RS 130 V6: MOV R5,#80
63 MOV LCD,A 131 DJNZ R5,$
64 LCALL ATRASO_LCD 132 DJNZ R4,V6
Laboratório de Microprocessadores e Microcontroladores 10
Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade Federal de Goiás
Prof. Dr. José Wilson Lima Nerys – [email protected]
Questão 4: Varie a tensão de alimentação do motor de corrente contínua e, para três valores diferentes de
tensão (Exemplo: 3,3 V; 5 V e 12 V), registre a frequência do sinal no osciloscópio e a leitura
no LCD.
Caso 1 Caso 2 Caso 3
Tensão no motor CC (V)
Frequência do sinal (Hz)
Leitura no LCD (rpm)
Questão 5: Explique o funcionamento da subrotina “AMOSTRA”, da Linha 36 à Linha 45..
Questão 6: Explique o funcionamento da subrotina “VELOCIDADE”, da Linha 47 à Linha 58.
65 CLR EN 133 RET
66 RET 134
67 135 MSG1: DB 'Velocidade (rpm)', 0ffh
68 136 END
Top Related