Dav.
Efter et par dages byggeri mv, har det lykkes mig at bygge en dejlig fin 4 hjulet robot som skal reagere på 2 Sharp GP2Y0A21YK
En bag til og en for til
Er dog i tvivl om hvordan jeg får den til at spytte ud at den er for tæt på så den skal vende om eller dreje.
Jeg har brugt flg elektronik komponenter:
1 styk arduino mega 2560
2 styk H bridges, 1 koblet til hver side af robotten.
og 2 styk Sharp GP2Y0A21YK
Og koden ser sådan her ud:
int sensorpin = 0; // analog pin used to connect the sharp sensor
int val = 0; // variable to store the values from sensor(initially zero)
int sensorpinback = 1; // analog pin used to connect the sharp sensor
int valback = 0; // variable to store the values from sensor(initially zero)
const int right01 = 7;
const int right02 = 8;
const int left01 = 4;
const int left02 = 2;
void setup() {
pinMode(right01, OUTPUT);
pinMode(right02, OUTPUT);
pinMode(left01, OUTPUT);
pinMode(left02, OUTPUT);
}
void loop(){
val = analogRead(sensorpin); // reads the value of the sharp sensor
int funken = 4800/(val - 20);
valback = analogRead(sensorpinback);
int backen = 4800/(valback - 20);
if(funken > 0 && backen > 0){
if(funken >= 35){
forwards();
} else {
backwards();
if(backen <= 10){
around();
}
}
} else {
stopper();
}
delay(1000);
}
void forwards(){
digitalWrite(right02, LOW);
digitalWrite(right01, HIGH);
digitalWrite(left02, LOW);
digitalWrite(left01, HIGH);
}
void backwards(){
digitalWrite(right01, LOW);
digitalWrite(right02, HIGH);
digitalWrite(left01, LOW);
digitalWrite(left02, HIGH);
}
void around(){
digitalWrite(right01, LOW);
digitalWrite(right02, HIGH);
digitalWrite(left02, LOW);
digitalWrite(left01, HIGH);
}
void stopper(){
digitalWrite(right01, LOW);
digitalWrite(right02, LOW);
digitalWrite(left02, LOW);
digitalWrite(left01, LOW);
}
Forslag modtages til at den kan klare sig selv lidt.
---
Senere vil jeg bygge den ud med en lade station så den kan lade op af sig selv på et tidspunkt.
Og når tid er, så skal den i en kravlegård hos de gamle, hvor den skal 'lære' at klare sig på et ujævnt område, og alt skal logges via mit raspberry board.
Vil også have en retnings sensor og meget mere, så den har en idé om hvor den er i forhold til når den skal vende om og tilbage.. Et lille rumprojekt.