Makaleyi İndirMakaleyi İndir

Kendi robotunu nasıl yapacağını öğrenmek istiyor musun? Piyasada kendi başına yapabileceğin çok farklı çeşitlerde robot türü bulunuyor. Çoğu kişi, robotun bir A noktasından B noktasına gitmesi gibi basit görevler yaptığını görmek ister. Tamamen analog bileşenlerle bir robot yapabilir ya da sıfırdan bir başlangıç seti alabilirsin! Kendi robotunu yapmak, elektroniğin yanında bilgisayar programlamasını öğrenmek için harika bir yoldur.

Kısım 1
Kısım 1 / 5:

Robotu Birleştirmek

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Parçaları bir araya getir.
    Basit bir robot yapmak için birkaç basit parçaya ihtiyacın olacak. Hepsi olmasa da, çoğu parçayı elektronik hobi mağazalarında veya İnternette bulabilirsin. Bazı temel setlerde bu parçaların hepsi bulunabilir. Bu robotun yapımında lehimlemeye ihtiyaç yoktur:
    • Arduino Uno (ya da diğer mikrodenetleyiciler)[1]
    • 2 adet sürekli dönebilen servo motor
    • 2 adet servolara uygun teker
    • 1 adet sarhoş teker
    • 1 adet küçük lehimsiz devre tahtası (her iki ucunda iki tane negatif ve pozitif hat bulunan bir devre tahtası olmalı)
    • 1 adet mesafe sensörü (dört pin bağlantı kablolu)
    • 1 adet mini basma düğmeli anahtar
    • 1 adet 10kΩ direnç
    • 1 adet USB A-B kablo
    • 1 takım ayrılabilen erkek header
    • 1 adet 9V DC uçlu 6 x AA pil yatağı
    • 1 kutu atlama kablosu veya 22 awg montaj kablosu
    • Güçlü çift taraflı bant veya sıcak silikon
  2. How.com.vn Türkçe: Step 2 Pil kutusunu, düz olan arka kısmı yukarıda olacak şekilde ters çevir.
    Robotun gövdesini pil kutusunun üzerine inşa edeceksin.
  3. How.com.vn Türkçe: Step 3 İki servo motoru pil kutusunun arka ucuna hizala.
    Bu, pil kutusu kablolarının çıktığı uç olmalı. Servolar alt kısma temas etmeli ve dönme mekanizmaları pil kutusunun kenarlarından dışa bakmalıdır. Tekerlerin düz gitmesi için servoların düzgün bir biçimde hizalanması önemlidir. Servolara bağlanacak kabloların pil kutusunun arkasından çıkması gerekir.
  4. How.com.vn Türkçe: Step 4 Bant veya yapıştırıcı ile servoları yapıştır.
    [2] Bunların pil kutusuna sağlam bir şekilde bağlandığından emin ol. Servoların arka kısımları pil kutusunun arkasıyla bir hizada olmalıdır.
    • Şu anda, servolar pil kutusunun arkasının yarısını kaplamış olmalı.
  5. How.com.vn Türkçe: Step 5 Devre tahtasını dik şekilde pil takımındaki boş alana yapıştır.
    Devre tahtası, pil takımının ön kısmının biraz üzerinde durması gerekir ve her iki kenarından biraz taşacaktır. Devam etmeden önce devre tahtasının güvenli bir şekilde bağlandığından emin ol. "A" satırı servoların en yakınında olmalıdır.
  6. How.com.vn Türkçe: Step 6 Arduino mikrodenetleyicisini servoların üstüne tak.
    Servoları doğru bir şekilde taktıysan onların oluşturuğu düz bir alan bulunmalıdır. Arduino kartını, Arduino'nun USB ve Güç bağlantıları arkaya (devre tahtasının tersi yönüne) bakacak şekilde bu düz alana yapıştır. Arduino'nun ön kısmı, devre tahtası ile çok az örtüşüyor olmalıdır.
  7. How.com.vn Türkçe: Step 7 Tekerlekleri servolara tak.
    Tekerlekleri servonun döner mekanizmaları üzerine sıkıca bastır. Tekerlekler, en iyi çekiş için mümkün olduğu kadar sıkı oturacak şekilde tasarlandığından, tekerlekleri takmak için önemli miktarda güç gerekebilir.
  8. How.com.vn Türkçe: Step 8 Sarhoş tekeri devre tahtasının altına tak.
    Kasayı ters çevirirsen devre tahtasının pil kutusunu bir miktar geçtiğini görmelisin. Gerekirse yükseltici kullanarak tekeri bu uzanan parçaya yapıştır. Sarhoş teker, robotun her yöne rahatça dönmesini sağlayan ön teker işlevini görür.[3]
    • Eğer bir set satın aldıysan sarhoş tekerin yanında yere ulaşmasını sağlamak için kullanabileceğin birkaç yükseltici bulunabilir.
    Reklam
Kısım 2
Kısım 2 / 5:

Robotu Kablolamak

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 İki parça 3 pinli header kır.
    Bunları servoları devre tahtasına bağlamak için kullanacaksın. Pinleri aşağı doğru iterek her iki tarafta eşit mesafede olacak şekilde ayarla.
  2. How.com.vn Türkçe: Step 2 İki headerı devre tahtasının E satırındaki 1-3 ve 6-8 pinlerine yerleştir.
    Sıkıca yerleştiklerinden emin ol.[4]
  3. How.com.vn Türkçe: Step 3 Soldaki siyah kabloyla servo kablolarını headerlara bağla (pin 1 ve 6).
    Bu, servoları devre tahtasına bağlar. Sol servonun sol headera, sağ servonun sağ headera bağlı olduğundan emin ol.
  4. How.com.vn Türkçe: Step 4 Kırmızı atlama kablolarını C2 ve C7 pinlerinden kırmızı (pozitif) ray pinlerine bağla.
    Devre tahtasının arkasındaki (şasinin geri kalanına daha yakın) kırmızı rayı kullandığından emin ol.
  5. How.com.vn Türkçe: Step 5 Siyah atlama kablolarını B1 ve B6 pinlerinden mavi (toprak) ray pinlerine bağla.
    Devre tahtasının arkasındaki mavi rayı kullandığından emin ol. Bunları kırmızı ray pinlerine bağlama.
  6. How.com.vn Türkçe: Step 6 Beyaz atlama kablolarını Arduino'daki 12 ve 13 numaralı pinlerden A3 ve A8'e bağla.
    Bu, Arduino'nun servoları kontrol etmesini ve tekerlekleri döndürmesini sağlayacaktır.
  7. How.com.vn Türkçe: Step 7 Sensörü devre tahtasının önüne tak.
    Bu, devre tahtasındaki dış güç raylarına değil, ilk harfli pimlerin (J) içine takılır. Sensörü tam ortaya yerleştirdiğinden ve her iki tarafta eşit sayıda pin bulunduğundan emin ol.
  8. How.com.vn Türkçe: Step 8 Pim I14'ten sensörün solundaki mevcut ilk mavi ray pinine siyah bir atlama kablosu bağla.
    Bu, sensörü topraklayacaktır.
  9. How.com.vn Türkçe: Step 9 Pim I17'den sensörün sağındaki mevcut ilk kırmızı ray pinine kırmızı bir atlama kablosu bağla.
    Bu, sensöre güç verecektir.
  10. How.com.vn Türkçe: Step 10 Beyaz atlama kablolarını Arduino'daki pin I15'ten pin 9'a ve I16'dan pin 8'e bağla.
    Bu, sensörden mikrodenetleyiciye bilgi aktaracaktır.
    Reklam
Kısım 3
Kısım 3 / 5:

Gücü Kablolamak

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Robotu kutudaki pilleri görebilecek şekilde ters çevir.
    Pil kutusu kablosunu sol alttan gelecek şekilde yönlendir.
  2. How.com.vn Türkçe: Step 2 Sol alttan ikinci yaya kırmızı bir kablo bağla.
    Pil kutusunun doğru yerleştirildiğinden kesinlikle emin ol.
  3. How.com.vn Türkçe: Step 3 Sağ alt kısımdaki son yaya siyah bir kablo bağla.
    Bu iki kablo, Arduino'ya doğru voltajın sağlanmasına yardımcı olacaktır.[5]
  4. How.com.vn Türkçe: Step 4 Kırmızı ve siyah telleri devre tahtasının arkasındaki en sağda yer alan kırmızı ve mavi pinlere bağla.
    Siyah kablo, pin 30'daki mavi ray pinine takılmalıdır. Kırmızı kablo, pin 30'daki kırmızı ray pinine takılmalıdır.
  5. How.com.vn Türkçe: Step 5 Arduino'daki GND pininden siyah bir kabloyu arka mavi raya bağla.
    Onu mavi raydaki pin 28'e bağla.
  6. How.com.vn Türkçe: Step 6 Arka mavi rayın 29.
    pininden mavi ön rayın 29. pinine siyah bir kablo bağla. Sakın kırmızı rayları birbirine bağlama, Arduino'ya zarar verebilirsin.
  7. How.com.vn Türkçe: Step 7 30.
    pindeki ön kırmızı raydan Arduino'daki 5V pinine kırmızı bir kablo bağla. Bu, Arduino'ya güç sağlayacaktır.
  8. How.com.vn Türkçe: Step 8 Basma düğmeli anahtarını 24-26 pinlerdeki sıralar arasındaki boşluğa yerleştir.
    Bu anahtar, gücü kesmeden robotu kapatmanı sağlayacak.
  9. How.com.vn Türkçe: Step 9 H24'ten kırmızı rayda yer alan sensörün sağındaki ilk uygun pine kırmızı bir kablo bağla.
    Bu, düğmeye güç verecektir.
  10. How.com.vn Türkçe: Step 10 H26'yı mavi raya bağlamak için direnci kullan.
    Bunu, birkaç adım önce bağladığın siyah kablonun hemen yanındaki pine bağla.
  11. How.com.vn Türkçe: Step 11 G26'dan Arduino'daki pin 2'ye beyaz bir kablo bağla.
    Bu, Arduino'nun basmalı düğmeyi kaydetmesini sağlayacaktır.
    Reklam
Kısım 4
Kısım 4 / 5:

Arduino Yazılımını Yüklemek

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 Arduino IDE yazılımını indir ve dışarı çıkar.
    Bu, Arduino’nun geliştirme ortamıdır ve daha sonra Arduino mikrodenetleyicine yükleyebileceğin talimatları programlamanı sağlar. Yazılımı arduino.cc/en/main/software adresinden ücretsiz indirebilirsin. İndirilen dosya üzerine çift tıklayarak ve içindeki klasörü erişimi kolay bir konuma taşıyarak dışarı çıkar. Aslında programı yüklemeyeceksin. Bunun yerine, çıkardığın klasörde yer alan arduino.exe’ye çift tıklayarak programı çalıştıracaksın.[6]
  2. How.com.vn Türkçe: Step 2 Pil kutusunu Arduino’ya bağla.
    Güç vermek için pil kutusunun fişini Arduino'daki yuvasına tak.
  3. How.com.vn Türkçe: Step 3 Arduino'yu USB ile bilgisayarına bağla.
    Windows muhtemelen aygıtı tanımayacaktır.
  4. How.com.vn Türkçe: Step 4 .
    Win+R ve devmgmt.msc yaz. Bu, Aygıt Yöneticisini açacaktır.
  5. Step 5 "Diğer cihazlar" bölümündeki "Bilinmeyen aygıt"a sağ tıkla ve "Sürücü Yazılımını Güncelleştir"i seç.
    Eğer bu seçeneği görmüyorsan bunun yerine "Özellikler"e tıkla, "Sürücü" sekmesini seç ve ardından "Sürücüyü Güncelleştir"e tıkla.
  6. Step 6 "Sürücü yazılımı için bilgisayarımı tara
    "ya tıkla. Bu, Arduino IDE ile gelen sürücüyü seçmeni sağlayacaktır.
  7. Step 7 "Gözat" düğmesine tıkla ve daha önce çıkardığın klasöre git.
    İçinde bir "drivers" klasörü göreceksin.
  8. Step 8 "Drivers" klasörünü seç ve "Tamam"a tıkla.
    Bilinmeyen yazılım uyarısı alırsan devam etmek istediğini onayla.
    Reklam
Kısım 5
Kısım 5 / 5:

Robotu Programlamak

Makaleyi İndir
  1. How.com.vn Türkçe: Step 1 IDE klasöründeki arduino.exe’ye çift tıklayarak Arduino IDE yazılımını başlat.
    Boş bir proje açılacaktır.
  2. How.com.vn Türkçe: Step 2 Robotun düz gitmesi için aşağıdaki kodu yapıştır.
    Aşağıdaki kod, Arduino’nun sürekli ileri gitmesini sağlayacaktır.
    #include <Servo.h> // bu, programa "Servo" kütüphanesini ekler// aşağıdakiler iki servo nesnesi oluştururServo leftMotor;Servo rightMotor;void setup(){    leftMotor.attach(12); // eğer servoların pin sayılarını yanlışlıkla değiştirdiysen numaraları buradan değiştirebilirsin    rightMotor.attach(13);}void loop(){    leftMotor.write(180); // sürekli dönüş ile 180, servoya tam hızda "ileri" gitmesini söyler.    rightMotor.write(0); // bunların ikisi de 180'de ise, robotlar bir daire içine girer çünkü servolar ters döner. "0", tam hızda "geriye" doğru gitmesini söyler.}
  3. How.com.vn Türkçe: Step 3 Programı oluştur ve yükle.
    Programı oluşturup bağlı Arduino’ya yüklemek için sol üst köşedeki sağ ok düğmesine tıkla.
    • Program yüklendiğinde robot sürekli ileri gideceğinden robotu zeminden kaldırmak isteyebilirsin.
  4. How.com.vn Türkçe: Step 4 Acil anahtarı işlevini ekle.
    Acil anahtarı kodunu etkinleştirmek için kodunun "write()" işlevlerinin üstündeki "void loop()" bölümüne aşağıdaki kodu ekle.
    if(digitalRead(2) == HIGH) // bu, Arduino'nun 2 numaralı pinindeki düğmeye basıldığında kayda alır{    while(1)    {        leftMotor.write(90); // "90" servolar için nötr konumdur; onlara durmalarını söyler        rightMotor.write(90);    }}
  5. How.com.vn Türkçe: Step 5 Kodu yükle ve test et.
    Acil anahtar kodu eklendikten sonra kodu yükleyip robotu test edebilirsin. Robot, anahtara basana kadar ileri doğru hareket etmeye devam etmeli, anahtara bastığın anda hareketini durdurmalıdır. Kodun tamamı şöyle olmalı:
    #include <Servo.h>// aşağıdakiler iki servo nesnesi oluştururServo leftMotor;Servo rightMotor;void setup(){    leftMotor.attach(12);     rightMotor.attach(13);}void loop(){    if(digitalRead(2) == HIGH)     {        while(1)        {            leftMotor.write(90);             rightMotor.write(90);        }    }    leftMotor.write(180);     rightMotor.write(0); }
    Reklam

Örnek

Aşağıdaki kod, robotun bir engelle karşılaştığında sola dönmesini sağlamak için robota bağlı sensörü kullanacaktır. Her bir kısmın ne yaptığı hakkında ayrıntılar için koddaki yorumlara bak. Aşağıdaki kod, programın tamamıdır.

#include <Servo.h>Servo leftMotor;Servo rightMotor;const int serialPeriod = 250;       // bu, konsol çıktısını her 1/4 saniyede bir ile sınırlarunsigned long timeSerialDelay = 0;const int loopPeriod = 20;          // bu, sensörün okuma yapma sıklığını 20ms’ye ayarlar; okumalar 50 Hz'lik bir frekansla yapılırunsigned long timeLoopDelay   = 0;// bu TRIG ve ECHO işlevlerini Arduino'daki pinlere atar. Farklı bir şekilde bağlanırsan buradaki numaralarda ayarlamalar yapconst int ultrasonic2TrigPin = 8;const int ultrasonic2EchoPin = 9;int ultrasonic2Distance;int ultrasonic2Duration;// Bu, robot için olası iki durumu tanımlar: ileri sürüş veya sola dönüş#define DRIVE_FORWARD     0#define TURN_LEFT         1int state = DRIVE_FORWARD; // 0 = ileri git (VARSAYILAN), 1 = sola dönvoid setup(){    Serial.begin(9600);      // bunlar sensörlerin pin yapılandırmalarıdır    pinMode(ultrasonic2TrigPin, OUTPUT);    pinMode(ultrasonic2EchoPin, INPUT);        // bu, motorları Arduino pinlerine atar    leftMotor.attach(12);    rightMotor.attach(13);}void loop(){    if(digitalRead(2) == HIGH) // bu acil anahtarını algılar    {        while(1)        {            leftMotor.write(90);            rightMotor.write(90);        }    }    debugOutput(); // bu, seri konsola hata ayıklama mesajlarını yazdırır        if(millis() - timeLoopDelay >= loopPeriod)    {        readUltrasonicSensors(); // bu, sensöre ölçülen mesafeleri okuma ve kaydetme talimatını verir                stateMachine();                timeLoopDelay = millis();    }}void stateMachine(){    if(state == DRIVE_FORWARD) // herhangi bir engel tespit edilmezse    {        if(ultrasonic2Distance > 6 || ultrasonic2Distance < 0) // robotun önünde hiçbir şey yoksa. Eğer engel yoksa, ultrasonicDistance bazı ultrasonikler için negatif olacaktır        {            // ileri sür            rightMotor.write(180);            leftMotor.write(0);        }        else //  eğer önümüzde bir nesne varsa        {            state = TURN_LEFT;        }    }    else if(state == TURN_LEFT) // bir engel tespit edilirse sola dön    {        unsigned long timeToTurnLeft = 500; // 90 derece dönmek yaklaşık 0.5 saniye sürer. Tekerleklerin örnekten farklı bir boyuttaysa bunu ayarlaman gerekebilir                unsigned long turnStartTime = millis(); // dönmeye başladığımız zamanı kaydet        while((millis()-turnStartTime) < timeToTurnLeft) // timeToTurnLeft süresi doluncaya kadar bu döngüde kal        {            // sola dön, her ikisinin de "180" olarak ayarlandığında döneceğini unutma.            rightMotor.write(180);            leftMotor.write(180);        }                state = DRIVE_FORWARD;    }}void readUltrasonicSensors(){    // bu ultrasonik 2 içindir. Farklı bir sensör kullanıyorsan bu komutları değiştirmen gerekebilir.    digitalWrite(ultrasonic2TrigPin, HIGH);    delayMicroseconds(10);                  // trig pimini en az 10 mikrosaniye boyunca yüksek tutar    digitalWrite(ultrasonic2TrigPin, LOW);        ultrasonic2Duration = pulseIn(ultrasonic2EchoPin, HIGH);    ultrasonic2Distance = (ultrasonic2Duration/2)/29;}// aşağıdaki, konsolda hataları ayıklama içindir.void debugOutput(){    if((millis() - timeSerialDelay) > serialPeriod)    {        Serial.print("ultrasonic2Distance: ");        Serial.print(ultrasonic2Distance);        Serial.print("cm");        Serial.println();                timeSerialDelay = millis();    }}

Bu How.com.vn makalesi hakkında

How.com.vn bir “wiki”dir. Bu, makalelerimizin çoğunun birden fazla yazar tarafından ortaklaşa yazıldığı anlamına gelir. Bu makaleyi oluşturmak için, zaman içinde makaleyi düzenlemek ve iyileştirmek üzere bazıları isimsiz, 78 kişi çalıştı. Bu makale 12.635 defa görüntülenmiştir.
Bu sayfaya 12.635 defa erişilmiş.

Bu makale işine yaradı mı?

⚠️ Disclaimer:

Content from Wiki How Türkçe language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.

Notices:
  • - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
  • - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
  • - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
  • - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.

Reklam