exercicio 5.1.4
2 participantes
- gustavocruz
- Mensagens : 255
Data de inscrição : 12/05/2019
Idade : 16
exercicio 5.1.4
Seg Out 09, 2023 3:45 pm
/*
* CURSO DE ROBOTICA 2023
*
* Exercicio: 5.1.4
* Tema: Controle do Servo pelo Teclado e Trimpot
* Atividade: Usar o teclado para movimentar o servo para direita e Esquerda e o Trimpot para controlar a Velocidade
* Descrição: Quando pressionar as teclas o servo devera se movimentar na velocidade ajustada pelo trimpot
* Hardware: Conectar o servo na placa, ligar as teclas no Arduino e o trimpot na entrada analógica
* Comandos: if(), digitalRead(), servo.write(), while(), analogRead()
* Dica1: Pode usar o while() para detectar a tecla pressionada e incrementar a variável de posição do servo
* Dica2: Quando o valor da variável chegar ao valor máximo usar um if() para cessar o incremento
* Dica3: Usar o trimpot para controlar o valor do delay() para ajustar a velocidade.
* Dica4: Calcular o tempo de delay mínimo para a velocidade angular do servo informado no datasheet e comprovar os dados
*/
#include
#define trimpot A1
#define tecla 8
#define tecla1 9
int rimpot;
Servo servo; //nomeia o serrvo
byte posiçao = 0;//variavel para a posiçao
void setup() {
// put your setup code here, to run once:
pinMode(tecla, INPUT_PULLUP);
pinMode(tecla1, INPUT_PULLUP);
pinMode(trimpot, INPUT);
servo.attach(7);//indica o pino do servo
}
void loop() {
while(!digitalRead(tecla)){//enquanto o batao estiver precionado
if(posiçao == 180) posiçao = 179;//se for igual a 180 volta uma casinha
posiçao ++;//aumenta uma posiçao
rimpot = map(analogRead(trimpot), 0, 1023, 1, 100);//faz a conversao do valor do trimpot para o valor de tempo
servo.write(posiçao);//muda a posiçao
delay(rimpot);//delay usando o trimpo
}
while(!digitalRead(tecla1)){//se for igual a 180 volta uma casinha
if(posiçao == 0) posiçao = 1;//se for igual a 0 volta uma pra 1
posiçao --;//diminui uma posiçao
rimpot = map(analogRead(trimpot), 0, 1023, 1, 100);//faz a conversao do valor do trimpot para o valor de tempo
servo.write(posiçao);//muda a posiçao
delay(rimpot);//delay delay usando o trimpot
}
}
* CURSO DE ROBOTICA 2023
*
* Exercicio: 5.1.4
* Tema: Controle do Servo pelo Teclado e Trimpot
* Atividade: Usar o teclado para movimentar o servo para direita e Esquerda e o Trimpot para controlar a Velocidade
* Descrição: Quando pressionar as teclas o servo devera se movimentar na velocidade ajustada pelo trimpot
* Hardware: Conectar o servo na placa, ligar as teclas no Arduino e o trimpot na entrada analógica
* Comandos: if(), digitalRead(), servo.write(), while(), analogRead()
* Dica1: Pode usar o while() para detectar a tecla pressionada e incrementar a variável de posição do servo
* Dica2: Quando o valor da variável chegar ao valor máximo usar um if() para cessar o incremento
* Dica3: Usar o trimpot para controlar o valor do delay() para ajustar a velocidade.
* Dica4: Calcular o tempo de delay mínimo para a velocidade angular do servo informado no datasheet e comprovar os dados
*/
#include
#define trimpot A1
#define tecla 8
#define tecla1 9
int rimpot;
Servo servo; //nomeia o serrvo
byte posiçao = 0;//variavel para a posiçao
void setup() {
// put your setup code here, to run once:
pinMode(tecla, INPUT_PULLUP);
pinMode(tecla1, INPUT_PULLUP);
pinMode(trimpot, INPUT);
servo.attach(7);//indica o pino do servo
}
void loop() {
while(!digitalRead(tecla)){//enquanto o batao estiver precionado
if(posiçao == 180) posiçao = 179;//se for igual a 180 volta uma casinha
posiçao ++;//aumenta uma posiçao
rimpot = map(analogRead(trimpot), 0, 1023, 1, 100);//faz a conversao do valor do trimpot para o valor de tempo
servo.write(posiçao);//muda a posiçao
delay(rimpot);//delay usando o trimpo
}
while(!digitalRead(tecla1)){//se for igual a 180 volta uma casinha
if(posiçao == 0) posiçao = 1;//se for igual a 0 volta uma pra 1
posiçao --;//diminui uma posiçao
rimpot = map(analogRead(trimpot), 0, 1023, 1, 100);//faz a conversao do valor do trimpot para o valor de tempo
servo.write(posiçao);//muda a posiçao
delay(rimpot);//delay delay usando o trimpot
}
}
Re: exercicio 5.1.4
Dom Dez 03, 2023 3:26 pm
Muito bom Gustavo, isso mesmo que esperava. Controlando o tempo vai mudar a velocidade que ele se movimenta. Nota 10.0
Permissões neste sub-fórum
Não podes responder a tópicos
|
|