3 led 1 buzzer 1 mesafe sensörü
int trigPin = 6; /* Sensorun trig pini Arduinonun 6 numaralı ayağına bağlandı */
int echoPin = 7; /* Sensorun echo pini Arduinonun 7 numaralı ayağına bağlandı */
long sure;
long uzaklik;
void setup(){
pinMode(trigPin, OUTPUT);
pinMode(echoPin,INPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
pinMode(10,OUTPUT);
pinMode(11,OUTPUT);
Serial.begin(9600);
}
void loop() {
digitalWrite(trigPin, LOW); /* sensör pasif hale getirildi */
delayMicroseconds(5);
digitalWrite(trigPin, HIGH); /* Sensore ses dalgasının üretmesi için emir verildi */
delayMicroseconds(10);
digitalWrite(trigPin, LOW); /* Yeni dalgaların üretilmemesi için trig pini LOW konumuna getirildi */
sure = pulseIn(echoPin, HIGH); /* ses dalgasının geri dönmesi için geçen sure ölçülüyor */
uzaklik= sure /29.1/2; /* ölçülen sure uzaklığa çevriliyor */
if(uzaklik > 150)
{
digitalWrite(10,HIGH);
digitalWrite(9,LOW);
digitalWrite(8,LOW);}
else if(uzaklik>=100 and uzaklik<=150)
{
digitalWrite(9,HIGH);
digitalWrite(10,LOW);
digitalWrite(8,LOW);
}
else
{
for(int s=0;s<3;s++)
{
digitalWrite(8,HIGH);
digitalWrite(11,HIGH);
digitalWrite(9,LOW);
digitalWrite(10,LOW);
delay(50);
digitalWrite(8,LOW);
digitalWrite(11,LOW);
}}
Serial.print("Uzaklik ");
Serial.print(uzaklik); /* hesaplanan uzaklık bilgisayara aktarılıyor */
Serial.println(" CM olarak olculmustur.");
delay(500);
}
C programlama örnekler
2 servo motor
1 mesafe sensörü
1 arduino
2 led
açıklama: 50 cm yaklaşıldığında servo motorlar 180 derece dönecek uzaklaşınca eski haline dönecek.
Kodlar:
#include<Servo.h>
Servo servo1;
Servo servo2;
int trigPin = 2;
int echoPin = 7;
long sure;
long uzaklik;
void setup(){
servo1.attach(5);
servo2.attach(6);
pinMode(trigPin, OUTPUT);
pinMode(echoPin,INPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
Serial.begin(9600);
}
void loop()
{
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
sure = pulseIn(echoPin, HIGH);
uzaklik= sure /29.1/2;
if(uzaklik > 200)
uzaklik = 200;
Serial.print("Uzaklik ");
Serial.print(uzaklik);
Serial.println(" CM ");
delay(100);
if(uzaklik<50){
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
Servo servo1;
Servo servo2;
int trigPin = 2;
int echoPin = 7;
long sure;
long uzaklik;
void setup(){
servo1.attach(5);
servo2.attach(6);
pinMode(trigPin, OUTPUT);
pinMode(echoPin,INPUT);
pinMode(8,OUTPUT);
pinMode(9,OUTPUT);
Serial.begin(9600);
}
void loop()
{
digitalWrite(trigPin, LOW);
delayMicroseconds(5);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
sure = pulseIn(echoPin, HIGH);
uzaklik= sure /29.1/2;
if(uzaklik > 200)
uzaklik = 200;
Serial.print("Uzaklik ");
Serial.print(uzaklik);
Serial.println(" CM ");
delay(100);
if(uzaklik<50){
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
servo1.write(180);
servo2.write(180);
servo2.write(180);
}
else
{ digitalWrite(8,LOW);
digitalWrite(9,HIGH);
servo1.write(-180);
servo2.write(-180);
}
}
else
{ digitalWrite(8,LOW);
digitalWrite(9,HIGH);
servo1.write(-180);
servo2.write(-180);
}
}
Trafik lambası
..................
Android'de not hesaplama
Hiç yorum yok:
Yorum Gönder