Todos os artigos de Admin

ARDUINO SOFTWARE

A programação do Arduino pode ser feita através de vários métodos mas aquele que será utilizado no roboOLA é a framework

  • Arduino IDE.

A solução passa por descarregar o ficheiro do site http://www.arduino.cc nomeadamente do link

  • https://www.arduino.cc/en/Main/Software

No entanto esta solução tem um pequeno problema. Os alunos não têm permissão de instalação de software nos computadores da escola, por isso a utilização de uma solução portable é mais conveniente. Entenda-se que software portable é um tipo de software que pode ser copiado e configurado num dispositivo de armazenamento e executado sem ser necessário instalar o software.

Vamos então recorrer à solução indicada no guia do Arduino:

  • https://www.arduino.cc/en/Guide/PortableIDE

 

Depois de testada serão postados aqui os problemas e soluções encontrados.

Fernando Soares

Motor + sensor

//Programa : Controle 2 motores DC usando Ponte H L298N

// Programa alterado para funcionar com a Ponte H da tynicine….

//Definicoes pinos Arduino ligados a entrada da Ponte H
#include <NewPing.h>

#define TRIGGER_PIN 4
#define ECHO_PIN 3
#define MAX_DISTANCE 200
#define PING_INTERVAL 330

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);
int enA = 10;

int IN1 = 9;
int IN2 = 8;
int IN3 = 7;
int IN4 = 6;

int enB = 5;

void setup()
{
//Define os pinos como saida
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
}

void loop()
{
analogWrite(enA, 200);
analogWrite(enB, 200);
//Gira o Motor A no sentido horario

double sonarCm = sonar.ping_cm();
if(sonarCm<10 and sonarCm>0)
{

digitalWrite(IN1, HIGH);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, HIGH);

}
else{
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);

}

}

NewPing

#include <NewPing.h>

#define TRIGGER_PIN 4
#define ECHO_PIN 3
#define MAX_DISTANCE 200
#define PING_INTERVAL 330

NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE);

void setup() {
Serial.begin(9600);
}

void loop() {
delay(10);
double sonarCm = sonar.ping_cm();
// Serial.print(“Ping: “);
//Serial.print(uS / US_ROUNDTRIP_CM);
//Serial.print(sonarCm);
//Serial.print(“cm”);
if(sonarCm<10 and sonarCm>0)
{
Serial.println(“alerta”);

}
Serial.println(“”);

}

roboOLA-VOC

Boa tarde caros seguidores,

 

a colaboração da turma CMVOC para o RB01 vai ser a colocação de um sensor que permita parar o robot para reparação/operação.

Vamos usar para isso o sensor HC-SR04.

Em vez de usar um interruptor mecânico vamos usar o sensor ultra sônico para parar o robot.

 

Vamos seguir o tutorial do arduino portugal e filipeflop.

 

www.arduinoportugal.pt/temas/sensor-distancia-ultrasonico-hc-sr04

 

Sensor distância Ultrasónico HC-SR04

blog.filipeflop.com/sensores/sensor-ultrassonico-hc-sr04-ao-arduino.html

http://blog.filipeflop.com/sensores/sensor-ultrassonico-hc-sr04-ao-arduino.html

 

 

Abraço,

Leandro