• Yapay zekadan makale özeti

    • "Sende Kod Yaz" eğitim platformunda bir eğitmen tarafından sunulan bu eğitim videosu, Arduino ile step motor kontrolü konusunu ele almaktadır.
    • Video, 28BJ48 kodlu step motorun butonlar ve potansiyometre aracılığıyla nasıl kontrol edileceğini adım adım anlatmaktadır. İçerikte, motorun tam adım ve yarım adım modlarında sağa ve sola hareket ettirilmesi için gerekli kod blokları, buton kontrolü, potansiyometre ile hız ayarı ve metotlar kullanarak programın daha anlaşılır hale getirilmesi detaylı olarak gösterilmektedir.
    • Eğitim, Freeschematic uygulaması üzerinden devre şemasının gösterilmesiyle başlayıp, Arduino kodunun yazılması ve test aşamasıyla devam etmektedir. Eğitmen, genel değişken tanımlamaları, setup ve loop bloklarının yapısı, buton kontrolü ve seri ekrana bilgi yazdırma işlemleri hakkında da bilgi vermektedir. Ayrıca, bu proje ürün çekimi ve vitrin için 360 derece döner tablo projesine dönüştürülebileceği belirtilmektedir.
    00:06Step Motor Projesi Tanıtımı
    • Bu eğitimde 28BJ 48 kodlu step motorun butonlar ve potansiyometre aracılığıyla kontrol edileceği bir proje geliştirilecek.
    • Projede dört buton kullanılacak: soldaki iki buton motorun tam modda veya yarım modda çalışmasını, sağdaki iki buton ise motorun yönünü (sola veya sağa) tayin edecek.
    • Potansiyometre aracılığıyla step motorun hız kontrolü gerçekleştirilecek.
    01:20Projenin Kullanım Alanları
    • Bu proje 3D yazıcı veya benzer yöntemlerle gerçekleştirilen dizayn işlemleri ile ürün çekimi ve vitrin için 360 derece döner tabla haline dönüştürülebilir.
    • Bir sonraki projede ekran ve joystick ile desteklenen, Bluetooth aracılığıyla cep telefonu üzerinden otomatik fotoğraflar çeken 360 derece döner tablo projesi detaylı olarak anlatılacak.
    02:17Devre Çizimi ve Bağlantılar
    • Arduino üzerindeki 5 voltluk bağlantı ve toprak hattı breadboard üzerindeki ilgili pinlere aktarılıyor.
    • Potansiyometrenin sol ayağına 5 voltluk gerilim, sağ ayağına toprak hattı uygulanıyor ve çıkış (ortadaki bağlantı) Arduino'nun A numaralı analog girişine bağlanıyor.
    • Dört buton breadboard üzerine konumlandırılıyor: soldaki iki buton motorun modunu, sağdaki iki buton motorun yönünü tayin edecek.
    03:17Buton Bağlantıları
    • Butonların sol alt bacakları 5 voltluk gerilimle besleniyor, çıkışları ise Arduino'nun ilgili dijital giriş-çıkışlarına bağlanıyor.
    • En soldaki buton (tam adım mod) Arduino'nun 2 numaralı dijital giriş-çıkışına, yarım adım mod butonu 3 numaralı, sola dönme butonu 4 numaralı, sağa dönme butonu 5 numaralı dijital giriş-çıkışa bağlanıyor.
    • Butonların çıkış pinleri 10 kΩ'luk direnç üzerinden toprak hattına aktarılıyor.
    04:52Step Motor Bağlantıları
    • Step motorun kablo dizilimine uygun olarak motorun bağlantıları Arduino Uno üzerindeki 6, 7, 8 ve 9 numaralı pinlere bağlanıyor.
    • 28BJ 48 kodlu step motorun ihtiyaç duyduğu akım Arduino kartı sağlayabilecek güce sahiptir, ancak motorların bağlantılarını harici bir güç kaynağı üzerinden sağlamak daha verimli ve kartın zarar görmemesi için doğru bir adım.
    • Motorun beş voltluk gerilimi breadboard üzerinden sağlanabilir, ancak projelerde kullanılan motorların enerjisini harici bir kaynak üzerinden sağlamak daha verimli.
    06:35Kodlama Adımları
    • Butonların bağlı olduğu pinlerle ilgili programın tamamında geçerli olacak değişkenler tanımlanıyor: tam_adım (2), yarım_adım (3), sola_dön (4) ve sağa_dön (5).
    • Step motorun bağlı olduğu pinlerle ilgili byte türünde a (6), b (7), c (8) ve d (9) değişkenleri tanımlanıyor.
    • Motorun hızını kontrol edecek integer türde hız değişkeni ve motorun modunu saklayacak string türde mod değişkeni (başlangıç değeri "tam") tanımlanıyor.
    08:36Setup Bloğu
    • Setup bloğunda pinMode komutuyla butonların bağlı olduğu pinlerin (2, 3, 4, 5) input olarak kullanılacağı belirtiliyor.
    • Motor pinleri (6, 7, 8, 9) output olarak tanımlanıyor çünkü bu pinler yardımıyla bobinlerin enerjilenmesi sağlanacak.
    • Motorun mod, yön ve hız bilgisini seri ekrandan kontrol etmek için seri haberleşme 9600 baud rate hızında başlatılıyor.
    10:52Buton Kontrolleri ve Loop Bloğu
    • Loop bloğunda butonlara basıldıkça değişkenlerin değerlerinin değiştirildiği kontrol işlemleri gerçekleştirilir.
    • Dijital read komutu ile dijital pindeki bilgi okunur ve butonlara basıldığında mod ve yön değişkenlerinin değerleri değiştirilir.
    • Tam adım, yarım adım, sağa dön ve sola dön butonları için benzer kontrol işlemlerinin gerçekleştirilmesi gerekir.
    13:11Metotlarla Program Dizaynı
    • Program daha anlaşılır ve sade olması için metotlar kullanılarak alt program parçacıkları oluşturulacaktır.
    • Motor hareketleri isimli metot, step motorun hangi bobinlerinin enerjileneceğini kontrol edecek ve dışarıdan dört adet byte türünde değer alacaktır.
    • Metot içerisinde dijital write komutu ile motorun pinlerine dışarıdan gelen değerler gönderilir.
    15:07Motor Hız Kontrolü
    • Motor hareketleri metodu hız kontrolünü dışarıdan değer olarak almaz, ancak potansiyometre ayarı değiştirildikçe motor hızı kontrol edilir.
    • Analog read komutu ile potansiyometreden gelen analog bilgi okunur ve ADC (Analog Digital Converter) ile 0-1023 aralığına dönüştürülür.
    • Map komutu ile potansiyometreden gelen 0-1023 aralığındaki veri, 3-200 aralığına indirgenir ve motorun hızı bu değerler arasında organize edilir.
    17:31Buton Kontrolleri ve Anlık Tepkiler
    • Motor hareketleri organize edilirken oluşan gecikmeden dolayı butonlara bastığınızda anlık tepkiler alınamayabilir.
    • Motor hareketleri metodunun baş kısmında butonların basılma durumunda devrenin loop bloğuna dönmesi sağlanır.
    • Butonlara basıldığında sistem yeniden başlar ve motor hareketleri basılan butona göre yeniden dizayn edilerek anlık tepkiler oluşur.
    20:34Tam Mod Metodu
    • Tam mod metodu, void ifadesiyle tanımlanır ve dışarıdan string türde "yön" isimli bir değer alır.
    • Eğer yön değişkeni "sol" olarak gönderilmişse, motorun sol yönde hareket etmesini sağlayan komutlar çalışır.
    • Motor hareketleri metodu, motorun hareketlerini kontrol eder ve A, B, C, D numaralı pinlere bilgi göndererek motorun hareketini sağlar.
    22:01Tam Modda Motor Hareketleri
    • Tam modda, A bobini enerjilenir, ardından B, C ve D bobinleri sırasıyla enerjilenerek motor sol yönde hareket eder.
    • Eğer yön değişkeni "sağ" olarak gönderilmişse, D, C, B ve A bobinleri sırasıyla enerjilenerek motor sağ yönde hareket eder.
    • Step motorunun hareketi, A, B, C, D bobinlerinin sırasıyla enerjilenmesiyle gerçekleşir, bu enerjilenmeyi ters çevirdiğimizde motorun çalışma yönü değişir.
    23:46Yarım Mod Metodu
    • Yarım mod metodu, "yarım_mod" ismiyle tanımlanır ve dışarıdan "yön" isimli string türde bir değer alır.
    • Yarım modda, aynı anda birden fazla bobin enerjilenir ve motor daha hassas açılarla hareket eder.
    • Yarım modda, bir bobin tek başına enerjilenir, sonra bir ve ikinci bobin birlikte enerjilenir, ardından ikinci bobin tek başına enerjilenir ve bu şekilde devam ederek motor daha hassas hareketler gerçekleştirir.
    28:19Programın Loop Bloğu
    • Program, alt program parçalarına metotlar yardımıyla parçalanarak anlaşılır hale getirilmiştir.
    • Loop bloğunda, "mod" ve "yön" değişkenleri motorun hangi modda ve hangi yönde hareket edeceğini saklar.
    • Başlangıçta varsayılan değerlerle tam modda ve sağ yönde motor hareket eder, ancak butonlara basıldığında mod ve yön bilgisi değişiklik gösterir.
    29:27Loop Bloğunda Kontrol Yapıları
    • Loop bloğunda if kontrol yapıları kullanılarak motorun hangi modda ve hangi yönde çalışacağı belirlenir.
    • Eğer mod "tam" ve yön "sağ" ise, tam_mod metodu "sağ" bilgisini alarak motoru sağa hareket ettirir.
    • Eğer mod "tam" ve yön "sol" ise, tam_mod metodu "sol" bilgisini alarak motoru sola hareket ettirir.
    32:52Motor Kontrol Kodunun Tamamlanması
    • Yarım mod durumunda, yön sağsa yarım mod metoduna sağ bilgisi, yön solsa sol bilgisi gönderilir.
    • Yarım mod metodunda, sol bilgi geldiğinde motor hareketleri metoduyla motor sola hareket eder, sağ bilgi geldiğinde ise sağa hareket eder.
    • Kodun parantez hataları kontrol edilerek, if bloklarının doğru şekilde kapatıldığından emin olunur.
    34:17Seri Ekrana Bilgi Yazdırma
    • Loop bloğunda butonlara basıldıktan sonra mod, yön ve hız bilgileri seri ekrana yazdırılır.
    • Serial print line ifadesi ile mod ve yön bilgileri ekrana yazdırılırken, artı birleştirme operatörü kullanılır.
    • Hız bilgisi integer türde olduğu için serial print ifadesiyle direkt yazdırılır.
    35:31Kodun Derlenmesi ve Yükleme
    • Kod derlendiğinde hata olmadığı kontrol edilir.
    • Kartın bağlı olduğu port seçildikten sonra Arduino Uno kartına yüklenir.
    • Tüm projenin komutları ekrana sığacak şekilde gösterilerek tekrar edilir.
    36:18Projenin Genel Yapısı
    • Setup bloğundan önce tam adım, yarım adım, sola dön ve sağa dön isimli değişkenler tanımlanır ve butonların bağlı olduğu pin değerlerine atanır.
    • Step motorunun bobinlerini kontrol edecek pin tanımlamaları yapılır ve motorun hızını saklayacak integer türde hız değişkeni tanımlanır.
    • Mod ve yön değişkenleri string türde tanımlanır ve varsayılan değerleri olarak mod "tam", yön "sağ" olarak ayarlanır.
    37:24Setup ve Loop Bloğu İşlevleri
    • Setup bloğunda butonların kontrol edileceği pinler input, step motorun kontrol pinleri ise output olarak tanımlanır.
    • Serial.begin komutu ile 9600 baud rate hızında seri haberleşme başlatılır.
    • Loop bloğunda if blokları ile hangi butona basılmışsa o butonla ilgili mod ve yön bilgileri değer alır.
    38:30Motor Hareket Kontrolü
    • Mod "tam" ve yön "sağ" olduğunda tam mod metodu çağrılır ve sağ bilgisi gönderilir.
    • Mod "tam" ve yön "sol" olduğunda tam mod metodu çağrılır ve sol bilgisi gönderilir.
    • Mod "yarım" olduğunda, yön "sağ"sa yarım mod metodu çağrılır ve sağ bilgisi, yön "sol"sa sol bilgisi gönderilir.
    40:13Motor Hareketleri Metodu
    • Motor hareketleri isimli metod, motorun hareketlerini düzenlemek için tanımlanmış ve byte türünde x1, x2, x3 ve x4 isimli değişkenlere değer alacaktır.
    • Bu metod, tam mod ve yarım mod metodlarından gelen değerleri kullanarak motorun hareketlerini kontrol edecektir.
    • Metodun başlangıç kısmında, butonlara basıldığında aktif olan if blokları bulunmakta ve bu sayede motorun hareketleri anlık olarak değiştirilebilmektedir.
    40:55Hız ve Kontrol
    • Motorun hızı, A10 pindeki potansiyometre üzerinden elde edilen 0-1023 arası değerlerle 3-200 arası bir değer olarak ayarlanmaktadır.
    • Dijital write komutuyla A, B, C, D pinlerine (Arduino'nun 6, 7, 8 ve 9 numaralı pinleri) motor hareketleri metodunun aldığı değerler gönderilmekte ve bobinlerin enerjilenmesi sağlanmaktadır.
    • Bobinlerin enerjilenme sırası motorun yönünü, gecikme süresi ise motorun hızını belirlemektedir.
    41:50Buton Tepkileri ve Anlık Değişiklikler
    • Motor hareketleri metodunun üst kısmındaki ifadeler, butonlara basıldığında anlık tepkilerin oluşması için motorun çalışmasını durdurup programın loop bloğuna geri dönmesini sağlar.
    • Yarım mod metodunda motor hareketleri metoduna 8 defa bilgi gönderilir ve bu süre içinde butona basıldığında tepkiler yavaşlayacaktır.
    • Bu nedenle, motor hareketleri metodunun üst kısmında herhangi bir butona basıldığında programın yeniden başa dönmesi sağlanmaktadır.
    42:49Tam Mod ve Yarım Mod İşlevleri
    • Tam mod metodunda, yön bilgisi sol olarak gelirse bobinler A, B, C, D şeklinde enerjilenir, sağ olarak gelirse D, C, B, A şeklinde enerjilenir.
    • Yarım mod metodunda, sol yönde hareket için A, AB, B, BC, C, CD, D, DA sırasıyla bobinler enerjilenir.
    • Sağ yönde hareket için ise yarım modda D, DC, C, CB, B, BA, A, AD sırasıyla bobinler enerjilenir.
    44:55Projenin Test Edilmesi
    • 28BJ48 kodlu step motorun 5 voltluk gerilimi harici bir güç kaynağından sağlanmalıdır.
    • Komutlar Arduino Uno kartına yüklenildiğinde motor tam adım modda ve sağ yönde hareket edecektir.
    • Seri porta yazılan bilgiler sayesinde motorun hangi modda, hangi yönde ve hangi hızda hareket ettiğini görebilirsiniz.
    46:28Motorun Farklı Ayarları
    • Motor tam adım modda sağ yönde hareket ederken, yarım adım modda daha yumuşak ve hassas hareketler yapar.
    • Motorun hızı potansiyometre üzerinden ayarlanabilir ve maksimum seviyeye alınabilir.
    • Motor hem sol hem de sağ yönde hareket edebilir ve modu (tam adım veya yarım adım) değiştirilebilir.
    48:24Motorun Fiziksel Özellikleri
    • Step motorun kablo dizilimleri arasında farklılıklar oluşabilir ve bu farklılıklar motorun dönüş yönü üzerinde etkili olabilir.
    • A, B, C, D bobinlerinin sırasıyla enerjilendiğinde step motorun genellikle saat yönüne hareket etmesi gerekir.
    • Projenin gerçekleştirilmesinde, step motorun hangi bobinlerin ne şekilde enerjilendiğinde hangi yöne doğru hareket ettiğini test ederek komut dizilimi oluşturulmalıdır.

    Yanıtı değerlendir

  • Yazeka sinir ağı makaleleri veya videoları özetliyor