Escolar Documentos
Profissional Documentos
Cultura Documentos
RELATÓRIO DE PROJETO
TE311 - OFICINA DE PROJETOS EM ENGENHARIA ELÉTRICA
CURITIBA
2019
CHRISTIAN ALAIN CORAL - GRR20148507
ELIELTON MATIAS DA SILVA – GRR2014846396
RELATÓRIO DE PROJETO
TE311 - OFICINA DE PROJETOS EM ENGENHARIA ELÉTRICA
CURITIBA
2019
LISTA DE ILUSTRAÇÕES
Figura 1: Sequência de Acionamento Controle Remoto IR.....................................................................4
Figura 2: Circuito – Acionamento Controle Remoto IR...........................................................................5
Figura 3: Circuito – Acionamento Bobinas Motor de Passo....................................................................6
Figura 4: Circuito – Circuito Controle IR com Motor de Passo................................................................7
SUMÁRIO
1 INTRODUÇÃO........................................................................................................4
2 DESENVOLVIMENTO.............................................................................................4
2.1 ETAPA 1.a..............................................................................................................4
2.2 ETAPA 1.b..............................................................................................................5
3 IMPLEMENTAÇÃO.................................................................................................6
3.1 Código e Circuito...................................................................................................6
3.2 Montagem e Testes.............................................................................................12
4 CONCLUSÃO........................................................................................................13
REFERÊNCIAS BIBLIOGRÁFICAS...........................................................................14
1 INTRODUÇÃO
2 DESENVOLVIMENTO
4
O projeto esquemático deve seguir conforme Figura 2
5
Figura 3: Circuito – Acionamento Bobinas Motor de Passo
• N1 ao pino 4 do Arduino
3 IMPLEMENTAÇÃO
• 1 x Arduino UNO
6
• 3 x Resistor 100 Ω
Para o plano de testes foi utilizado um motor de passo 28BYJ-48 com driver
ULN2003.
/********************************************************************************************/
// declarações:
const int stepsPerRevolution = 500;
int RECV_PIN = 4; // Arduino pino D11 conectado no Receptor IR
IRrecv irrecv(RECV_PIN); // criando a instância
7
decode_results results; // declarando os resultados
bool LED5, LED6, LED7 = false; // estado dos LEDs
int atraso = 250; // atraso após ligar LED
Stepper myStepper(stepsPerRevolution, 8,9,10,11); //ligacao ao motor
/********************************************************************************************/
void setup()
{
Serial.begin(9600); // Monitor velocidade 9600 bps
pinMode(10, OUTPUT); // LED vermelho no pino D05
pinMode(9, OUTPUT); // LED azul no pino D06
pinMode(8, OUTPUT); // LED verde no pino D07
irrecv.enableIRIn(); // Inicializa a recepção de códigos
myStepper.setSpeed(60); //Determina a velocidade inicial do motor
}
/********************************************************************************************/
// loops registradores
void loop()
{
results.value = 0; // zera os registradores
if (irrecv.decode(&results)) // se algum código for recebido
{
Serial.println(results.value, HEX); // imprime o HEX Code
irrecv.resume(); // reinicializa o receptor
}
switch(results.value)
{
case 0xFB004AB5: //botão 1
speedlow();
break;
case 0xFB000AF5://botão 2
speedmedium();
break;
case 0xFB0008F7:;//botão 3
speedhigh();
break;
}
}
8
/********************************************************************************************/
// fazer com que o motor de passo gire na velocidade intermediaria
void speedmedium()
{
//acionar o LED verde
{
digitalWrite(6, HIGH); // acende ou apaga LED verde (D06)
delay(atraso); // atraso de 250 ms
}
//Gira o motor na velocidade intermediaria
for (int i = 0; i<=2; i++)
{
myStepper.setSpeed(20);
myStepper.step(500);
delay(1000);
}
digitalWrite(6, LOW); // acende ou apaga LED verde (D05)
}
/********************************************************************************************/
// fazer com que o motor de passo gire na velocidade mais lenta
void speedlow()
{
//acionar o LED verde
{
digitalWrite(5, HIGH); // acende ou apaga LED verde (D05)
delay(atraso); // atraso de 250 ms
}
//Gira o motor na velocidade mais lenta
for (int i = 0; i<=2; i++)
{
myStepper.setSpeed(10);
myStepper.step(500);
delay(1000);
}
digitalWrite(5, LOW); // acende ou apaga LED verde (D05)
}
/********************************************************************************************/
// fazer com que o motor de passo gire na velocidade mais rápida
void speedhigh()
9
{
//acionar o LED verde
{
digitalWrite(7, HIGH); // acende ou apaga LED verde (D07)
delay(atraso); // atraso de 250 ms
}
//Gira o motor na velocidade mais lenta
for (int i = 0; i<=2; i++)
{
myStepper.setSpeed(30);
myStepper.step(500);
delay(1000);
}
digitalWrite(7, LOW); // acende ou apaga LED verde (D07)
}
Este valor foi obtido, tomando como base as engrenagens internas do motor:
10
Dividindo-se o primeiro valor pelo segundo, tem-se: 63,6 = 64.
Para se ter a quantidade de passos por rotação, se multiplica (64 x 567424) / 8910,
obtendo então 4075 passos.
11
• A função speedhigh, quando acionado o botão 3, é executada. Ela realiza o
acionamento do LED vermelho e gira o motor no na velocidade rápida, por três
vezes(3 passos);
Além disto, obteve-se bastante dificuldade no cálculo de passos do motor, para que
o acionamento ( posição) ocorra conforme o planejado.
12
4 CONCLUSÃO
13
REFERÊNCIAS BIBLIOGRÁFICAS
14