Arduino-2

 

TINKERCAD Giriş Kodları


Buzzer Arduino Projesi
int buzzerPin = 12;
int notaSayisi = 8;
int C = 262;
int D = 294;
int E = 330;
int F = 349;
int G = 392;
int A = 440;
int B = 494;
int C_ = 523;
int notalar[] = {C, D, E, F, G, A, B, C_};
void setup()
{
  for (int i = 0; i < notaSayisi; i++)
  {
    tone(buzzerPin, notalar[i]);
    delay(500);
    noTone(buzzerPin);
    delay(20);
  }
  noTone(buzzerPin);
}

void loop()
{
}

------------------------------------------------------------------------------------------------------------------------
Arduino Random


int ranNum;
int ranDel;
void setup() {
// Seed RNG from analog port.
randomSeed(analogRead(0));
// Setup 8 output ports for LED's
pinMode(3, OUTPUT);
pinMode(4, OUTPUT);
pinMode(5, OUTPUT);
pinMode(6, OUTPUT);
pinMode(7, OUTPUT);
pinMode(8, OUTPUT);
pinMode(9, OUTPUT);
pinMode(10, OUTPUT);
}
void loop() {
    //Generate random number between 8 and 10
    ranNum=random(3,11);
    // Generate random delay time
    ranDel=random(25,300);
    //Turn on the LED
    digitalWrite(ranNum, HIGH);
    delay(ranDel);
    //Turn off the LED
    digitalWrite(ranNum, LOW); 
}




------------------------------------------------------------------------------------------------------------------------
FOTO DİRENÇ LDR uygulama devresi



#define led 3 //3.Pinde LED olduğunu tanımlıyoruz

void setup() {

    pinMode(led,OUTPUT); //LED'in çıkış elemanı olduğunu belirtiyoruz
    Serial.begin(9600); //9600 Baundluk bir seri haberleşme başlatıyoruz

}

void loop() {

  int isik = analogRead(A0); //Işık değişkenini A0 pinindeki LDR ile okuyoruz
  Serial.println(isik); //Okunan değeri seri iletişim ekranına yansıtıyoruz
  delay(50);

  if(isik > 900){ //Okunan ışık değeri 900'den büyük ise
    digitalWrite(led,LOW); //LED yanmasın
  }

  if(isik < 850){ //Okunan ışık değeri 850'den küçük ise
    digitalWrite(led,HIGH); //LED yansın
  }

} 
--------------------------------------------------------------------------------------------------------------------------
BlueThooth HC06 bağlantı kodlar

int led=13;
byte serialA;
void setup() {
Serial.begin(9600);
pinMode(led, OUTPUT);
}
void loop(){
if ((serialA == 1)){
digitalWrite(led, HIGH);
}
if ((serialA == 2)){
digitalWrite(led, LOW);
}
}
void serialEvent(){
serialA = Serial.read();
}

------------------------------------------------------------------------
Servo motor
#include <Servo.h> /* Servo kutuphanesi projeye dahil edildi */ Servo servoNesnesi; /* servo motor nesnesi yaratildi */ void setup() { servoNesnesi.attach(9); /* Servo motor 9 numarali pine baglandi */ } void loop() { servoNesnesi.write(100); /* Motorun mili 100. dereceye donuyor */ delay(1000); servoNesnesi.write(20); /* Motor mili 20. dereceye donuyor */ delay(1000); }

-----------------------------------------------------------------------------------

Ultrasonik 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); /* trig pini çıkış olarak ayarlandı */ pinMode(echoPin,INPUT); /* echo pini giriş olarak ayarlandı */ Serial.begin(9600); /* Seri haberlesme baslatildi */ } 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 > 200) uzaklik = 200; Serial.print("Uzaklik "); Serial.print(uzaklik); /* hesaplanan uzaklık bilgisayara aktarılıyor */ Serial.println(" CM olarak olculmustur."); delay(500); }

TINKERCAD ULTRASONİK SENSÖR KODLARI

const int sinyal = 7;
void setup() {
  Serial.begin(9600);
}

void loop() {
  long sure, cm;
  pinMode(sinyal, OUTPUT);
  digitalWrite(sinyal, LOW);
  delayMicroseconds(2);
  digitalWrite(sinyal, HIGH);
  delayMicroseconds(5);
  digitalWrite(sinyal, LOW);
  pinMode(sinyal, INPUT);
  sure = pulseIn(sinyal, HIGH);
  cm = sure / 29 / 2;
  Serial.print("uzaklik: ");
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
  delay(100);
}


Veri tipleri değer aralıkları

Java Tipi
class
Uzunluk (Byte)
Değer Aralığı
byte
Byte
1 byte
0   …   255
short
Short
2 byte
-32 768   …   32 767
int
Integer
4 byte
-2 147 483 648   …   2 147 483 648
long
Long
8 byte
-263   …   263 - 1

-----------------------------------------------------------------------------------------------------------------

Ultrasonik Sensör ile Park Sensörü yapma



int trigPin = 3; 
int echoPin = 2; 
int buzzer = 8;

long sure;
long uzaklik;

void setup(){
  pinMode(trigPin, OUTPUT); 
  pinMode(echoPin,INPUT); 
  Serial.begin(9600); 
}
void loop()
{
  digitalWrite(trigPin, LOW); 
  delayMicroseconds(5);
  digitalWrite(trigPin, HIGH); 
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);   
  sure = pulseIn(echoPin, HIGH); 
  uzaklik= (sure /2)/28.5;        
  if(uzaklik <= 30){
    digitalWrite(buzzer, 1);
    delay(1000);
    digitalWrite(buzzer, 0);
    delay(1000);
  }
  if(uzaklik <= 20){
    digitalWrite(buzzer, 1);
    delay(500);
    digitalWrite(buzzer, 0);
    delay(500);
  }
  if(uzaklik <= 10){
    digitalWrite(buzzer, 1);
    delay(100);
    digitalWrite(buzzer, 0);
    delay(100);
  }  
}

TINKERCAD Park Sensörü Uygulaması


const int sinyal = 7;
int buzzer = 8;
void setup() {
  Serial.begin(9600);
  pinMode(buzzer, OUTPUT);
}

void loop() {
  long sure, cm;
  pinMode(sinyal, OUTPUT);
  digitalWrite(sinyal, LOW);
  delayMicroseconds(2);
  digitalWrite(sinyal, HIGH);
  delayMicroseconds(5);
  digitalWrite(sinyal, LOW);
  pinMode(sinyal, INPUT);
  sure = pulseIn(sinyal, HIGH);
  cm = sure / 29 / 2;
  Serial.print("uzaklik: ");
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();
  delay(100);
  if(cm <= 60){
    tone(buzzer, 392);
    delay(1000);
    noTone(buzzer);
    delay(1000);
  }
  if(cm <= 50){
    tone(buzzer, 392);
    delay(500);
    noTone(buzzer);
    delay(500);
  }
  if(cm <= 40){
    tone(buzzer, 392);
    delay(10);
    noTone(buzzer);
    delay(10);
  }  
}
--------------------------------------------------------------------------------------------------------------------
Engelden kaçan robot devre şeması


-------------------------------------------------------------------------------------------------------------------------
Engelden kaçan robot ide kodları

#define echoPin 12 
#define trigPin 13 //Ultrasonik sensörün trig pini Arduino'nun 13.pinine tanımlandı.
#define MotorR1 7
#define MotorR2 6
#define MotorRE 9  // Motor pinlerini tanımlıyoruz.
#define MotorL1 5
#define MotorL2 4
#define MotorLE 3



long sure, uzaklik; //süre ve uzaklık diye iki değişken tanımlıyoruz.

void setup() {


  // ultrasonik sensör Trig pininden ses dalgaları gönderdiği için OUTPUT (Çıkış),
  // bu dalgaları Echo pini ile geri aldığı için INPUT (Giriş) olarak tanımlanır.
  pinMode(echoPin, INPUT);
  pinMode(trigPin, OUTPUT);

  pinMode(MotorL1, OUTPUT);
  pinMode(MotorL2, OUTPUT);
  pinMode(MotorLE, OUTPUT); //Motorlarımızı çıkış olarak tanımlıyoruz.
  pinMode(MotorR1, OUTPUT);
  pinMode(MotorR2, OUTPUT);
  pinMode(MotorRE, 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 süre uzaklığa çevriliyor

  Serial.println(uzaklik);

  if (uzaklik < 15) // Uzaklık 15'den küçük ise,
  {
    geri();  // 150 ms geri git
    delay(150);
    sag();  // 250 ms sağa dön
    delay(250);
  }
  else {  // değil ise,
    ileri(); // ileri git
  }

}



void ileri(){  // Robotun ileri yönde hareketi için fonksiyon tanımlıyoruz.

  digitalWrite(MotorR1, HIGH); // Sağ motorun ileri hareketi aktif
  digitalWrite(MotorR2, LOW); // Sağ motorun geri hareketi pasif
  analogWrite(MotorRE, 150); // Sağ motorun hızı 150

  digitalWrite(MotorL1, HIGH); // Sol motorun ileri hareketi aktif
  digitalWrite(MotorL2, LOW); // Sol motorun geri hareketi pasif
  analogWrite(MotorLE, 150); // Sol motorun hızı 150
  
  
}


void sag(){ // Robotun sağa dönme hareketi için fonksiyon tanımlıyoruz.

  digitalWrite(MotorR1, HIGH); // Sağ motorun ileri hareketi aktif
  digitalWrite(MotorR2, LOW); // Sağ motorun geri hareketi pasif
  analogWrite(MotorRE, 0); // Sağ motorun hızı 0 (Motor duruyor)

  digitalWrite(MotorL1, HIGH); // Sol motorun ileri hareketi aktif
  digitalWrite(MotorL2, LOW); // Sol motorun geri hareketi pasif
  analogWrite(MotorLE, 150); // Sol motorun hızı 150
  
  
}


void geri(){ // Robotun geri yönde hareketi için fonksiyon tanımlıyoruz.

  digitalWrite(MotorR1, LOW); // Sağ motorun ileri hareketi pasif
  digitalWrite(MotorR2, HIGH); // Sağ motorun geri hareketi aktif
  analogWrite(MotorRE, 150); // Sağ motorun hızı 150

  digitalWrite(MotorL1, LOW); // Sol motorun ileri hareketi pasif
  digitalWrite(MotorL2, HIGH); // Sol motorun geri hareketi aktif
  analogWrite(MotorLE, 150); // Sol motorun hızı 150
   
}----------------------------------------------------------------------------------------



Hiç yorum yok:

Yorum Gönder