Você está na página 1de 21

CAPACITAÇÃO 0

Sistemas eletrônicos

Sumário:
1. Introdução a eletrônica e componentes eletrônicos
2. KiCad SCH
3. Arduino
4. Testes
5. Projeto na protoboard
Introdução a eletrônica e componentes eletrônicos

Lei de Ohm

A Lei de Ohm é um princípio fundamental na


eletricidade que descreve a relação entre tensão,
corrente e resistência em um circuito elétrico.

Corrente Elétrica (I):


A corrente elétrica é o fluxo de elétrons em um circuito. Ela é medida em amperes (A). Quanto maior
a corrente, mais elétrons estão fluindo em um determinado ponto do circuito. A corrente é análoga à
taxa de fluxo de água em um cano; quanto mais água flui, maior a corrente.

Tensão Elétrica (V):


A tensão elétrica, muitas vezes chamada de voltagem, é a força motriz que impulsiona os elétrons
através de um circuito. Ela é medida em volts (V). A tensão é análoga à pressão da água em um cano;
quanto maior a pressão, maior a tensão. Em termos simples, a tensão é o que "empurra" a corrente
pelo circuito.

Resistência Elétrica (R):


A resistência elétrica é uma medida da oposição ao fluxo de corrente em um circuito. Ela é medida em
ohms (Ω). Quanto maior a resistência, mais difícil é para os elétrons fluírem. Os resistores são
componentes eletrônicos que são usados para controlar a quantidade de corrente em um circuito, de
acordo com a Lei de Ohm.

V representa a tensão elétrica em volts (V).


I representa a corrente elétrica em amperes (A).
R representa a resistência elétrica em ohms (Ω).
Em outras palavras, a Lei de Ohm afirma que a
tensão (V) em um circuito é igual à corrente (I)
multiplicada pela resistência (R). Isso significa que a
tensão é diretamente proporcional à corrente e
inversamente proporcional à resistência.
Principais componentes utilizados

1. Resistores
1.1. Símbolos:

1.2. Associação de resistores

a) Resistores em série: A associação de resistores em série pode ser feita

quando há dois ou mais resistores percorridos pela mesma corrente i.

b) Resistores em paralelo:

A resistência Req de dois resistores em paralelo é o


produto de suas resistências dividido pela sua soma.

em Série em Paralelo

Diferença de vn = i‧Rn Igual para todos


Potencial os resistores
Corrente Igual para todos in = v/Rn
os resistores

Resistência Req = R1 + R2 + 1/Req = 1/R1 +


Equivalente … + Rn 1/R2 + …. + 1/Rn
1.3. Tabela de cores

2. Diodos

➢ Um diodo é um componente eletrônico que permite que a corrente elétrica flua em


uma única direção, da região anódica (positiva) para a região catódica (negativa).
➢ Os diodos são construídos usando materiais semicondutores, como silício ou
germânio. A transição entre essas regiões é chamada de junção PN.
➢ Quando uma tensão positiva é aplicada ao anodo e uma tensão negativa ao catodo, o
diodo conduzirá (permitirá a passagem de corrente), caso contrário, ele estará em
estado de corte (bloqueará a corrente).
➢ Os diodos têm várias aplicações, como retificação de corrente alternada para corrente
contínua, proteção contra inversão de polaridade e regulação de tensão.
2.1. LED (Light Emitting Diode)

➢ O LED (Diodo Emissor de Luz) é um tipo especial de diodo que emite luz
quando a corrente elétrica flui através dele.
➢ Os LEDs são amplamente utilizados para indicadores luminosos em
eletrônicos, iluminação de fundo em telas de dispositivos, iluminação de
painéis de controle e também em sinalizações.
➢ Eles são eficientes em termos de consumo de energia, duráveis e têm uma
vida útil longa em comparação com as lâmpadas incandescentes.

3. Capacitores

➢ Um capacitor é um componente eletrônico projetado para armazenar energia em forma de


carga elétrica.
➢ Consiste em duas placas condutoras separadas por um material isolante chamado dielétrico.
As placas condutoras são conectadas a um circuito elétrico.
➢ Quando uma tensão (voltagem) é aplicada ao capacitor, os elétrons se acumulam em uma das
placas, criando uma carga positiva, enquanto a outra placa acumula uma carga negativa.
➢ A capacidade de armazenamento de carga de um capacitor é medida em farads (F).
Capacitores comuns têm valores que variam de microfarads (µF) a picofarads (pF).
➢ Os capacitores têm várias aplicações, incluindo:
○ Armazenamento temporário de energia para dispositivos eletrônicos.
○ Filtro de ruído e suavização de sinais em circuitos elétricos.
○ Proteção de circuitos contra variações súbitas de tensão (supressão de transientes).
○ Timer em circuitos de temporização.
➢ Capacitores também são usados em sistemas de ignição de motores de combustão interna e
em fontes de alimentação para estabilizar a tensão.

4. Transistores

➢ Um transistor é um dispositivo eletrônico semicondutor que atua como um interruptor


ou amplificador de corrente elétrica.
➢ Os transistores são amplamente utilizados na eletrônica para controlar o fluxo de
corrente em um circuito.
➢ Existem dois tipos principais de transistores: transistores bipolares (BJT) e
transistores de efeito de campo (FET). Os BJT usam corrente como sinal de controle,
enquanto os FET usam tensão.

Transistor NPN Transistor PNP

● Um transistor NPN é um tipo de transistor ● Um transistor PNP é outro tipo de transistor bipolar
bipolar de junção (BJT). de junção (BJT).
● É composto por três camadas de material ● Assim como o NPN, um transistor PNP também
semicondutor: uma camada de material tipo possui três camadas de material semicondutor, mas a
N (negativo) entre duas camadas de ordem de polaridade é invertida. Ele tem uma camada
material tipo P (positivo). de material tipo P entre duas camadas de material
● Os terminais de um transistor NPN são o tipo N.
emissor (E), a base (B) e o coletor (C). ● Os terminais de um transistor PNP são o emissor (E),
● Na operação de um transistor NPN, a a base (B) e o coletor (C).
corrente flui do coletor para o emissor ● Na operação de um transistor PNP, a corrente flui do
quando uma pequena corrente é aplicada à emissor para o coletor quando uma pequena corrente
base. é aplicada à base.
● O transistor NPN é usado como ● O transistor PNP é usado da mesma forma que o
amplificador de corrente ou como NPN, mas sua polarização e funcionamento são
interruptor controlado por corrente. inversos. Quando uma corrente é aplicada à base, ele
Quando uma corrente é aplicada à base, ele permite a passagem de uma corrente maior do
permite a passagem de uma corrente maior emissor para o coletor.
do coletor para o emissor.
➢ Os transistores podem ser usados como interruptores para controlar a corrente em um circuito.
Quando uma pequena corrente é aplicada à porta ou à base, o transistor permite ou bloqueia a
passagem da corrente principal entre o coletor ou dreno e o emissor ou fonte.
➢ Os transistores também podem ser usados como amplificadores, amplificando um sinal fraco
na entrada para um sinal mais forte na saída. Eles são fundamentais em amplificadores de
áudio, amplificadores de sinal, circuitos lógicos e muito mais.

5. Botões

➢ Um botão, também conhecido como interruptor de pressão, é um componente eletrônico que


permite a abertura ou fechamento de um circuito elétrico quando é pressionado ou liberado.
➢ Existem diferentes tipos de botões, incluindo botões momentâneos e botões de alternância.
➢ Os botões geralmente têm dois terminais (pólos), que são conectados quando o botão é
pressionado. Alguns botões têm terminais adicionais para iluminação de LED ou para
oferecer funcionalidades mais complexas.
➢ Eles são frequentemente usados em eletrônica para funções como ligar/desligar dispositivos,
iniciar processos, resetar circuitos, selecionar opções, e muitas outras aplicações.

Pull-Up (Resistor de Pull-Up) Pull-Down (Resistor de Pull-Down)

Um resistor de pull-up é uma resistência Um resistor de pull-down é uma resistência


conectada entre um pino de entrada (geralmente conectada entre um pino de entrada (geralmente
associado a um botão ou interruptor) e o nível associado a um botão ou interruptor) e o nível
de tensão positiva (normalmente VCC ou a de tensão negativa (geralmente GND ou terra).
fonte de alimentação). Isso cria uma conexão Isso cria uma conexão para o terra quando o
para VCC quando o botão não está pressionado. botão não está pressionado.

Quando o botão é pressionado, ele conecta o Quando o botão é pressionado, ele conecta o
pino de entrada ao terra (GND), o que significa pino de entrada a VCC, o que significa que o
que o nível lógico no pino de entrada é lido nível lógico no pino de entrada é lido como
como "baixo" (0) quando pressionado e "alto" "alto" (1) quando pressionado e "baixo" (0)
(1) quando não pressionado. quando não pressionado.
6. Buzzer

➢ Um buzzer é um dispositivo eletroacústico que converte um sinal elétrico em som audível.


➢ Os buzzers são comuns em eletrônica como dispositivos de saída sonora, geralmente usados
para fornecer feedback audível em circuitos eletrônicos.
➢ Eles são usados em várias aplicações, como dispositivos de aviso, alarmes, dispositivos de
notificação em eletrônicos, indicadores sonoros em veículos, campainhas e muito mais.
➢ Alguns buzzers têm a capacidade de gerar diferentes tons ou sequências de som, enquanto
outros são projetados para produzir um som simples e contínuo.
➢ A frequência do som produzido por um buzzer é determinada pela frequência do sinal elétrico
aplicado a ele.

7. Regulador de tensão

➢ Um regulador de tensão é um componente eletrônico projetado para manter uma saída de


tensão constante, independentemente de variações na tensão de entrada ou de carga.
➢ Eles são amplamente utilizados para garantir que os dispositivos eletrônicos funcionem com
uma tensão estável, o que é crítico para o funcionamento confiável de muitos componentes.
KiCad SCH

KiCad é uma suíte de software de código aberto para design de circuitos eletrônicos, captura
esquemática e layout de placas de circuito impresso (PCB).

1. Instalação do Kicad 6.0


2. Configurando o ambiente de trabalho
2.1. Criar um novo projeto no Kicad:

2.2. Abrir o editor do esquemático:


2.3. Preencher os dados do projeto:
2.3.1. *para abrir o menu dê um clique duplo no local onde o cursor está
posicionado a seguir:

*não se esqueça de marcar as caixas para copiar nas outras folhas e de ajustar a grade

2.4. Sempre organize o circuito em módulos ou sub circuitos, o que será feito com
o exemplo de aula:
2.4.1. Faça isso através de folhas hierárquicas:
3. Construção do esquemático

Atalhos:

M: move
R: rotate (com o componente no cursor)
ESC: cancelar operação
A: para selecionar componentes
V: para dar valor ao componente
W: adicionar fio

Rótulo da mesma folha -> de rede


Rótulo entre folhas -> hierárquico
É utilizado para importar pino da folha (clica de fora com o botão direito), para VCC, etc

1. Abra as folhas e adicione os circuitos:


1.1. Insira os componentes (A) e os fios (W):

1.2. *dê um clique duplo no componente para alterar seus atributos:


1.3. *para inserir o 3V3 é necessário criar um rótulo:

2. Verificação de regras elétricas:

3. Atribuição de nomes aos símbolos:

4. Criação de conta SnapEDA, Import Guide | SnapEDA


Arduino
O Arduino é uma plataforma de prototipagem eletrônica de código aberto que combina hardware (a
placa Arduino) e software (a IDE Arduino).

A parte de Hardware da plataforma Arduino é composta de diversas placas, cada uma com suas
vantagens e diferenças.

Arduino MEGA2560 Arduino UNO Arduino Nano

Com isso, através do Arduino é possível desenvolver diversos protótipos de projetos eletrônicos de
uma forma simplificada, mais barata e funcional.

Arduino UNO R3
O modelo de placa Arduino UNO R3 é um dos mais utilizados no mundo todo e é considerada a
versão mais ideal para iniciantes.
Arduino IDE
1. Instalação da Arduino IDE

2. Conceitos básicos
2.1. Funções setup() e loop():

2.1.1. Função setup():

A função setup() é chamada apenas uma vez quando o Arduino é inicializado ou resetado. O objetivo
principal da função setup() é configurar o ambiente inicial do seu projeto, definindo o estado inicial
dos pinos de entrada e saída, inicializando variáveis, estabelecendo comunicações (como a
inicialização da porta serial) e realizando outras tarefas de configuração.

A função setup() é executada apenas uma vez no início do programa e, depois disso, o controle é
passado para a função loop().

2.1.2. Função loop():

A função loop() é chamada continuamente após a função setup() e é o controle do seu programa.
Dentro da função loop(), você coloca o código que executa a lógica principal do seu projeto. É onde
você controla dispositivos, lê sensores, toma decisões e realiza ações com base nas condições do seu
sistema.

O Arduino executa o código dentro da função loop() repetidamente, criando um loop infinito, até que
o dispositivo seja desligado ou resetado.

2.2. Funções Digitais:

pinMode(pin, mode): Esta função é usada para configurar um pino como entrada
(INPUT) ou saída (OUTPUT). pin é o número do pino, e mode é a direção desejada
(INPUT ou OUTPUT).
pinMode(7, OUTPUT); // Configura o pino 7 como saída.

digitalWrite(pin, value): Esta função define o estado de um pino digital como alto
(HIGH) ou baixo (LOW). pin é o número do pino, e value é o estado desejado (HIGH
ou LOW).
digitalWrite(7, HIGH); // Define o pino 7 como HIGH (ligado).

digitalRead(pin): Usada para ler o estado de um pino digital (HIGH ou LOW). pin é o
número do pino.
int estado = digitalRead(7); // Lê o estado do pino 7 e armazena em 'estado'.
2.3. Comunicação Serial:

Serial.begin(baud_rate): Inicia a comunicação serial com uma taxa de transmissão


especificada. baud_rate é a velocidade em bauds (bits por segundo).
Serial.begin(9600); // Inicia a comunicação serial a 9600 baud.

Serial.print(data): Envia dados pela porta serial. data pode ser um valor numérico,
uma string ou qualquer dado que você queira enviar.
Serial.print("Hello, Arduino!"); // Envia a mensagem pela porta serial.

Serial.read(): Lê um byte de dados da porta serial. O valor lido é um inteiro que


representa o byte lido.
char receivedData = Serial.read(); // Lê um byte da porta serial e o armazena em
'receivedData'.

2.4. Variáveis Básicas:

int temperatura = 25; // Declara uma variável 'temperatura' do tipo inteiro.


float pi = 3.14159; // Declara uma variável 'pi' do tipo ponto flutuante.
char letra = 'A'; // Declara uma variável 'letra' do tipo caractere.
boolean ligado = true; // Declara uma variável 'ligado' do tipo booleano.

2.5. Operadores Aritméticos:

São usados para realizar operações matemáticas em variáveis.


Os operadores incluem
● adição (+),
● subtração (-),
● multiplicação (*),
● divisão (/),
● módulo (%).
int resultado = 10 + 5; // Adição: resultado é 15.
int subtracao = 20 - 8; // Subtração: subtracao é 12.
int multiplicacao = 6 * 4; // Multiplicação: multiplicacao é 24.
int divisao = 16 / 4; // Divisão: divisao é 4.
int modulo = 17 % 5; // Módulo: modulo é 2.

2.6. Funções de Controle:

São usadas para controlar o fluxo do programa com base em condições ou repetir
ações.
int valor = 10;
if (valor > 5) {
// Executa este bloco de código se 'valor' for maior que 5.
} else {
// Executa este bloco de código se 'valor' não for maior que 5.
}

2.7. Operadores de Comparação:

Operadores que são usados para comparar valores.


● == (igual),
● != (diferente),
● > (maior),
● < (menor),
● >= (maior ou igual),
● <= (menor ou igual).

2.8. Funções Analógicas e Sinais Analógicos:


analogRead(pin) é usado para ler um valor analógico de um sensor conectado a um
pino analógico. O valor varia de 0 a 1023 para um Arduino Uno.
int valor_analogico = analogRead(A0); // Lê um valor analógico do pino A0.

2.9. Funções Digitais e Sinais Digitais:

digitalRead(pin) é usado para ler o estado digital (HIGH ou LOW) de um pino digital.
digitalWrite(pin, value) é usado para definir um pino digital como HIGH ou LOW.
int estado = digitalRead(7); // Lê o estado do pino 7.
digitalWrite(8, HIGH); // Define o pino 8 como HIGH.

2.10. Operadores Booleanos:

Operadores booleanos como && (E lógico), || (OU lógico) e ! (NÃO lógico) são
usados para avaliar expressões booleanas em estruturas condicionais.
boolean a = true;
boolean b = false;
if (a && b) {
// Executa este bloco se 'a' for verdadeiro E 'b' for verdadeiro.
}

2.11. Função Temporizadora millis():

A função millis() retorna o tempo decorrido em milissegundos desde que o programa


Arduino foi iniciado. É frequentemente usada para criar temporizações precisas sem
bloquear o programa.
unsigned long inicio = millis(); // Armazena o tempo atual.
3. Componentes específicos:
3.1. LED:
Comando de Inicialização: pinMode(LED_PIN, OUTPUT);
Ligar o LED: pinMode(LED_PIN, OUTPUT);
Desligar o LED: digitalWrite(LED_PIN, LOW);

3.2. Potenciômetro:
Comando de Inicialização: pinMode(POT_PIN, INPUT);
Ler o valor do potenciômetro (0-1023): int potValue = analogRead(POT_PIN);

3.3. Buzzer:
Comando de Inicialização: pinMode(BUZZER_PIN, OUTPUT);
Emitir um som em um buzzer ativo: tone(BUZZER_PIN, frequencia);
Desligar o som em um buzzer ativo: noTone(BUZZER_PIN);

3.4. Servo Motor:


Incluir a biblioteca Servo.h: #include <Servo.h>
Comando de Inicialização:
Servo servo;
servo.attach(SERVO_PIN);
Definir a posição do servo (0-180 graus): servo.write(angulo);

3.5. Botão com millis():


- Certifique-se de que o pino do botão esteja conectado ao terra (GND) por
meio de um resistor pull-up interno ou externo. Isso garante que o botão
esteja em nível alto quando não estiver pressionado.
- Debounce: o debounce é um processo que garante a estabilidade das leituras
de um botão ou interruptor, evitando leituras falsas devido a rebotes elétricos
e oscilações. É uma parte crítica do projeto de sistemas de detecção de botão
confiáveis e precisa ser implementado tanto no hardware quanto no software
para garantir um funcionamento adequado, no software usaremos a função
millis() para a implementação.

Comando para inicialização: pinMode(buttonPin, INPUT_PULLUP);


Leitura do estado do botão: int buttonState = digitalRead(buttonPin);

3.5.1. Exemplo de uso com a função millis():

// Uso da função millis()


const int buttonPin = 2;
int buttonState = HIGH;
int lastButtonState = HIGH;
unsigned long lastDebounceTime = 0;
unsigned long debounceDelay = 50;

void setup() {
pinMode(buttonPin, INPUT_PULLUP); // Configura o pino do botão como entrada com pull-up
Serial.begin(9600);
}

void loop() {
int reading = digitalRead(buttonPin);

if (reading != lastButtonState) {
lastDebounceTime = millis();
}

if (millis() - lastDebounceTime > debounceDelay) {


if (reading != buttonState) {
buttonState = reading;
if (buttonState == LOW) {
Serial.println("Botão pressionado");
}
}
}

lastButtonState = reading;
}
Exercícios de fixação - Lista 00

1. Qual é a relação matemática básica da Lei de Ohm para resistores?

2. Se um resistor de 220 ohms é conectado a uma fonte de 5 volts, qual é a corrente que passa
pelo resistor?

3. Se uma corrente de 0,02 amperes (20 mA) flui através de um resistor e a tensão é de 12
volts, qual é o valor da resistência?

4. Qual é a constante de tempo de um circuito RC (resistor-capacitor) com um resistor de 1


kohm e um capacitor de 1 µF?

5. Qual é a função principal de um transistor em um circuito eletrônico?

6. Como você determina o anodo e o catodo de um LED? Explique a diferença entre eles.

7. Descreva como um buzzer piezoelétrico produz som quando uma tensão é aplicada e dê um
exemplo de aplicação.

8. Para que é comumente usado um botão (push-button) em eletrônica? Dê um exemplo de


aplicação.

9. Por que é importante usar um regulador de tensão em um circuito eletrônico? Qual é a


função principal de um regulador de tensão?

10. Projete um circuito simples que use um resistor, um capacitor, um transistor, um LED, um
buzzer e um botão. Descreva a função de cada componente no circuito.

Exercícios de fixação - Lista 01

1. Arduino e LED:

Conecte um LED a um Arduino na protoboard. Escreva um código que faça o LED piscar a uma
taxa de 1 Hz (um ciclo a cada segundo). Use um resistor para limitar a corrente.

2. Arduino, Botão e LED:

Conecte um botão e um LED a um Arduino na protoboard. Escreva um código que faça o LED
acender quando o botão é pressionado e apagar quando o botão é liberado. O LED deve permanecer
na última condição (aceso ou apagado) após o botão ser liberado.

3. Arduino, Botão e LEDs cíclicos:

Conecte um botão e três LEDs a um Arduino na protoboard. Escreva um código que faça o LED
acender quando o botão é pressionado e apagar quando o botão é liberado, além disso o botão deve
acender o próximo LED na sequência. O LED deve permanecer na última condição (aceso ou
apagado) após o botão ser liberado e o funcionamento da sequência dos LEDs deve ser cíclico.
Certifique-se de adicionar um mecanismo de debounce para evitar falsos acionamentos do botão.
4. Arduino, Botão, LEDs e Potenciômetro (com feedback na serial):

Crie um programa que permite controlar qual LED está aceso usando o potenciômetro. Quando
você gira o potenciômetro, o LED correspondente deve acender, e o Arduino deve fornecer
feedback na porta serial sobre qual LED está aceso. Certifique-se de ajustar os valores do
potenciômetro, se necessário. Lembre-se de que o ciclo é contínuo, ou seja, ao atingir o último
LED, ele deve voltar ao primeiro LED.

5. Arduino, Botão, LEDs, Potenciômetro e Buzzer (com feedback na serial e sonoro):

Conecte um botão, três LEDs, um potenciômetro e um buzzer a um Arduino na protoboard.


Escreva um código que permita controlar qual LED está aceso usando o potenciômetro.
Quando o potenciômetro é girado, o LED correspondente deve acender.
O Arduino deve fornecer feedback na porta serial sobre qual LED está aceso.
Garanta que um som seja emitido pelo buzzer sempre que um novo LED for aceso.
Certifique-se de que o ciclo de acendimento seja contínuo, voltando ao primeiro LED após o
último.
Implemente um mecanismo de debounce para evitar falsos acionamentos do botão.
Conecte o buzzer adequadamente para que ele emita o som desejado.
Ajuste os valores do potenciômetro, se necessário, para um controle suave dos LEDs.

Projeto na protoboard
Controlar a ignição precisa e segura de um minifoguete é uma tarefa crítica em lançamentos espaciais
e experimentos aeroespaciais. Neste exercício, iremos explorar o controle de ignição de um
minifoguete simulado usando um Arduino Uno R3, LED, botão, comunicação serial e uma
protoboard. Além disso, iremos incorporar a capacidade de ajustar o tempo de ignição em
milissegundos, um mecanismo de segurança para evitar ignições acidentais e o uso do Arduino IDE
para programação. Para completar o exercício, também vamos criar um esquemático do circuito no
KiCad.

Objetivo do Exercício:
- Controle Preciso de Ignição: Desenvolver um sistema que permita controlar a ignição do
minifoguete de forma precisa e ajustável em milissegundos.

- Comunicação Serial: Estabelecer uma comunicação serial entre o Arduino e um computador,


permitindo a interação e o controle do sistema a partir do Arduino IDE.

- Mecanismo de Segurança: Implementar um mecanismo de segurança que evite ignições


acidentais, garantindo que o minifoguete seja armado apenas quando desejado.

- Programação no Arduino IDE: Escrever o código no Arduino IDE para controlar o sistema de
ignição, configurar a comunicação serial e garantir a operação segura do sistema.

- Esquemático no KiCad: Criar um esquemático detalhado no KiCad que documente todas as


conexões e componentes usados no projeto.
1. PRESENÇA

Membro Situação

Íris Presente

Enrique Presente

Felipe Presente

Vinicius Presente

Vicenzo Presente

Luiz Presente

Marina Presente

Membro Situação

Íris Presente

Enrique Presente

Felipe Presente

Vinicius Justificado

Vicenzo Presente

Luiz Presente

Marina Justificado

Você também pode gostar