04 arduino and proteus - digital input, pull-up, pull-down (1)

50
professor Victory Fernandes www.tkssoftware.com/victory Lendo Sensores Digitais

Upload: eduardo-peixoto

Post on 30-Nov-2015

72 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

professorVictory Fernandeswww.tkssoftware.com/victory

Lendo Sensores Digitais

Page 2: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

Eletrônica - Sensores Push-Button, Chave On/Off, Fim de Curso Ligação em Normal Aberto – NA Ligação em Normal Fechado - NF Resistores de Pull-up Resistores de Pull-down

Arduino + Proteus Lendo sensores nas entradas digitais em

NA com pull-up vs. NA com pull-down NF com pull-up vs. NF com pull-down

Page 3: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 4: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 5: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

PUSH-BUTTONPUSH-BUTTON

Sensor mecânico Detectar pressionamentos

tipicamente executados por operador Chave não retentiva

Pressiona ela fecha e se soltar ela abre o circuito

Page 6: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 7: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 8: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

CHAVE ON/OFFCHAVE ON/OFF

Sensor mecânico Detectar pressionamentos

tipicamente executados por operador Chave retentiva

Pressiona ela fecha o circuito e fica fechada até haver novo pressionamento

Page 9: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 10: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 11: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSO

Sensor mecânico Detectar final de curso em abertura

e/ou fechamento de portas, identificar presença de objetos etc

Page 12: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 13: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 14: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 15: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 16: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSO

Pode ser instalado em 2 modos: NORMAL ABERTO – NA Quando nenhuma interferência

externa é aplicada ao sensor o circuito encontra-se ABERTO!

NORMAL FECHADO – NF Quando nenhuma interferência

externa é aplicada ao sensor o circuito encontra-se FECHADO!

Page 17: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSONA – NORMAL ABERTONA – NORMAL ABERTO

Microcontrolador

+5VDC

Page 18: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSONA – NORMAL ABERTONA – NORMAL ABERTO

Microcontrolador

+5VDC

Page 19: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

Sensor NÃO pressionado

Circuito ABERTO mC lê 0 na entrada

digital

Sensor pressionado Circuito FECHA mC lê 1 na entrada

digital

Page 20: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSONF – NORMAL FECHADONF – NORMAL FECHADO

Microcontrolador

+5VDC

Page 21: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

SENSOR DE FIM DE CURSOSENSOR DE FIM DE CURSONF – NORMAL FECHADONF – NORMAL FECHADO

Microcontrolador

+5VDC

Page 22: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

Sensor NÃO pressionado

Circuito FECHADO mC lê 1 na entrada

digital

Sensor pressionado Circuito ABRE mC lê 0 na entrada

digital

Page 23: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 24: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 25: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

7482 é a referência de um circuito integrado - CI somador completo de 2 bits

C0 A2 A1 B2 B1-----------------C2 S2 S1

Page 26: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 27: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 28: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 29: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 30: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

PROBLEMA DA TENSÃO PROBLEMA DA TENSÃO FLUTUANTEFLUTUANTE

No padrão TTL – Transistor Transistor Logic não se pode deixar entradas com tensões flutuante (que não estejam ligadas ao Vcc = 5V ou ao GND=0V) sob pena do sistema não saber qual o nível lógica da entrada e o valor poder flutuar entre 0 e 1 aleatoriamente.

Resistores de Pull-Down e Pull-Up resolvem este problema!

Page 31: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 32: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 33: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

Chave ABERTA Vout = GND = 0V mC lê 0 entrada

Chave FECHADA Vout = Vin = 5V mC lê 1 entrada

Tipicamente valores altos para drenar rapidamenteOrdem de 10kohm tipicamente

Page 34: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 35: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

Chave ABERTA Vout = Vin = 5V mC lê 1 entrada

Chave FECHADA Vout = GND =

0V mC lê 0 entrada

Tipicamente valores baixospara não dar muita queda de tensão Ordem de 300ohm tipicamente

Page 36: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 37: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 38: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 39: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 40: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 41: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 42: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 43: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 44: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 45: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

const int buttonPin = 2; Declara uma constante do tipo inteira com o

nome “ButtonPin” e atribue o valor inteiro 2 como conteúdo da mesma.

const int victory = 30 const boolean verdade = true

Page 46: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

int buttonState = 0; Declara uma variável do tipo inteira com o

nome “ButtonState” e atribue o valor inteiro 0 como conteúdo da mesma.

const int victory = 30 const boolean verdade = true

Page 47: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

value = digitalread(pin) Lê o nível lógico HIGH (alto) ou LOW (baixo)

de um pino de INPUT (entrada) e atribue o valor lido a variável “value”.

pin = Qualquer pino do microcontrolador value = HIGH (se pino em nivel Alto; 5V) value = LOW (se pino em nivel Baixo; 0V)

Page 48: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

if (conditional){} else {} Testa uma condição utilizando operadores de

comparação. == testa se igual != testa se diferente < testa se menor do que > testa se maior do que <= testa se menor ou igual >= testa se maior ou igual

Page 49: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)
Page 50: 04 Arduino and Proteus - Digital Input, Pull-Up, Pull-Down (1)

professorVictory Fernandeswww.tkssoftware.com/victory