10
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 ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

  • Upload
    dokhanh

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 2: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 3: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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.

Page 4: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 5: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 6: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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)

Page 7: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 8: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 9: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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

Page 10: Laboratório de Microprocessadores e Microcontroladores ...jwilson/pdf/Roteiro_Lab_de_Micro_Experimento_7... · Escola de Engenharia Elétrica, Mecânica e de Computação – Universidade

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