PROJEMİZDE
ULTRA SONİK RADAR YAPMAYI PLANLIYORUZ.BU PROJE İLE ETRAFTAKİ NESNELERİ
BİLGİSAYAR EKRANINA TAŞIYARAK ETRAF HAKKINDA ÖNCEDEN BİLGİ SAHİBİ OLMAYI
HEDEFLİYORUZ.
GÜNÜMÜZDE
BİR ÇOK RADAR SİSTEMİ BULUNMAKTADIR VE ASKERİ AMAÇLAR VE ARAÇLAR AÇISINDAN RADAR
SİSTEMLERİ ÖNEM ARZ ETMEKTEDİR.
PROJEDE
KULLNACAĞIM ELEMENLAR
1)ULTRA SONİK MESAFE SENSÖRÜ
2)SERMO
MOTOR
3)BOARD
4)ARDUİNO
ÇALIŞMA MANTIĞI
Breadboard
#include <Servo.h>.
// Ultrasonik Sinyal pinleri
const int trigPin = 10;
const int echoPin = 11;
long duration;
int distance;
Servo myServo;
void setup() {
pinMode(trigPin,
OUTPUT);
pinMode(echoPin,
INPUT);
Serial.begin(9600);
myServo.attach(12);
// Servo motor sinyal pini
}
void loop() {
// 15 derece ile 165
derece arasında dön
for(int
i=15;i<=150;i++){
delay(20);
distance =
calculateDistance();
Serial.print(i);
Serial.print(",");
Serial.print(distance);
Serial.print(".");
}
}
int calculateDistance(){
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration =
pulseIn(echoPin, HIGH);
distance=
duration*0.034/2;
return distance;
}
PROJENİN
PROCESSİNG KISMI
import processing.serial.*; // kütüphane entegresi
import java.awt.event.KeyEvent;
import java.io.IOException;
Serial myPort;
String angle="";
String distance="";
String data="";
String noObject;
float pixsDistance;
int iAngle, iDistance;
int index1=0;
int index2=0;
PFont orcFont;
void setup() {
size (1366, 700);
smooth();
myPort = new
Serial(this,"COM6", 9600); // Com portunu seçin
myPort.bufferUntil('.');
}
void draw() {
fill(98,245,31);
noStroke();
fill(0,4);
rect(0, 0, width,
1010);
fill(98,245,31); //
yeşil renk
drawRadar();
drawLine();
drawObject();
drawText();
}
void serialEvent (Serial myPort) {
data =
myPort.readStringUntil('.');
data =
data.substring(0,data.length()-1);
index1 =
data.indexOf(",");
angle=
data.substring(0, index1);
distance=
data.substring(index1+1, data.length());
iAngle = int(angle);
iDistance =
int(distance);
}
void drawRadar() {
pushMatrix();
translate(683,700);
noFill();
strokeWeight(2);
stroke(98,245,31);
// draws the arc
lines
arc(0,0,1300,1300,PI,TWO_PI);
arc(0,0,1000,1000,PI,TWO_PI);
arc(0,0,700,700,PI,TWO_PI);
arc(0,0,400,400,PI,TWO_PI);
// draws the angle
lines
line(-700,0,700,0);
line(0,0,-700*cos(radians(30)),-700*sin(radians(30)));
line(0,0,-700*cos(radians(60)),-700*sin(radians(60)));
line(0,0,-700*cos(radians(90)),-700*sin(radians(90)));
line(0,0,-700*cos(radians(120)),-700*sin(radians(120)));
line(0,0,-700*cos(radians(150)),-700*sin(radians(150)));
line(-700*cos(radians(30)),0,700,0);
popMatrix();
}
void drawObject() {
pushMatrix();
translate(683,700);
Hiç yorum yok:
Yorum Gönder