professor Victory Fernandes www.tkssoftware.com/victory Arduino e Proteus Lendo Sensores Digitais professor Victory Fernandes www.tkssoftware.com/victory
ARDUINO E PROTEUS Eletrônica - Sensores Arduino + Proteus 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
EletrÔNICA SENSORES
PUSH-Button
PUSH-BUTTON Sensor mecânico Detectar pressionamentos tipicamente executados por operador Chave não retentiva Pressiona ela fecha e se soltar ela abre o circuito
No Proteus
CHAVE ON/OFF
CHAVE 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
No Proteus
SENSOR de fim de curso
Sensor de fim de curso Sensor mecânico Detectar final de curso em abertura e/ou fechamento de portas, identificar presença de objetos etc
Por dentro...
NORMAL ABERTO - NA vs. NORMAL FECHADO - NF
Sensor 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!
Sensor de fim de curso NA – Normal Aberto Microcontrolador +5VDC
Sensor de fim de curso NA – Normal Aberto Microcontrolador +5VDC
Sensor de fim de curso NA – Normal Aberto Sensor NÃO pressionado Circuito ABERTO mC lê 0 na entrada digital Sensor pressionado Circuito FECHA mC lê 1 na entrada digital
Sensor de fim de curso NF – Normal Fechado Microcontrolador +5VDC
Sensor de fim de curso NF – Normal Fechado Microcontrolador +5VDC
Sensor de fim de curso NA – Normal FECHADO Sensor NÃO pressionado Circuito FECHADO mC lê 1 na entrada digital Sensor pressionado Circuito ABRE mC lê 0 na entrada digital
No proteus...
ProBLEMA da tensão flutuante
7482 é a referência de um circuito integrado - CI somador completo de 2 bits A2 A1 B2 B1 ----------------- C2 S2 S1
???? ????
PROBLEMA DA TENSÃO FLUTUANTE 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!
RESISTORES DE PULL-down e pull-up
Resistores de PULL-DOWN
Resistores de PULL-DOWN Chave ABERTA Vout = GND = 0V mC lê 0 entrada Chave FECHADA Vout = Vin = 5V mC lê 1 entrada Tipicamente valores altos para drenar rapidamente Ordem de 10kohm tipicamente
Resistores de PULL-UP
Resistores de PULL-UP Chave ABERTA Chave FECHADA Vout = Vin = 5V Tipicamente valores baixos para não dar muita queda de tensão Ordem de 300ohm tipicamente Chave ABERTA Vout = Vin = 5V mC lê 1 entrada Chave FECHADA Vout = GND = 0V mC lê 0 entrada
PODE SER FEITO SEM OS RESISTORES?
Resistores evitam o curto!!
Tutoriais
EXEMPLO button
Pull-down ou pull-up?
No proteus...
Botão Leitura de Entrada Digital
Botão Leitura de Entrada Digital
Botão Leitura de Entrada Digital
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
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
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)
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
No protoboard...
professor Victory Fernandes www.tkssoftware.com/victory