- Gerekli Bileşenler
- Devre şeması
- MATLAB Komut Penceresini kullanarak Bluetooth İletişimi
- MATLAB GUI kullanarak Bluetooth İletişimi
Bluetooth, gömülü sistemlerde kısa menzilli kablosuz iletişim için en basit ve en popüler protokoldür. Bluetooth yalnızca verileri bir cihazdan diğerine aktarmak için değil, aynı zamanda cihazları kablosuz olarak kontrol etmek için de kullanılır. Neredeyse her elektronik cihaz günümüzde Bluetooth desteğine sahiptir, bu nedenle gömülü uygulamanızda Bluetooth kontrol seçeneğine sahip olmak akıllıca bir seçimdir.
Bu eğitimde, kablosuz olarak iletişim kurmak için MATLAB'da Bluetooth'u nasıl kullanacağımızı öğreneceğiz . Bilgisayarın dahili Bluetooth'unu bir tarafta MATLAB ve diğer tarafta Arduino ile HC-05 kullanacağız. MATLAB ve Arduino arasında Bluetooth üzerinden iletişim kurmanın iki yolu vardır, biri komut penceresini kullanmak ve diğeri MATLAB GUI kullanmaktır. Her iki yöntem için de Arduino kodu aynı kalacaktır. MATLAB'da yeniyseniz, MATLAB ile basit LED yanıp sönme programına başlamanız ve MATLAB'da kullanılan temel terminolojiyi öğrenmeniz önerilir. Daha fazla MATLAB Projesi keşfedebilirsiniz:
- MATLAB ve Arduino arasında Seri İletişim
- MATLAB ve Arduino Kullanarak DC Motor Kontrolü
- MATLAB ve Arduino kullanarak Step Motor Kontrolü
- MATLAB kullanarak Görüntü İşlemeye Başlarken
Gerekli Bileşenler
- MATLAB yüklü Dizüstü Bilgisayar (Tercih: R2016a veya üzeri sürümler)
- Arduino UNO
- Bluetooth Modülü (HC-05)
- LED (herhangi bir renk)
- Direnç (330 ohm)
- Atlama Telleri
HC-05 ve Arduino ile arayüzü hakkında daha fazla bilgi edinmek için aşağıdaki makaleleri kontrol edin.
- Arduino kullanarak Bluetooth Kontrollü Servo Motor
- Arduino ve Bluetooth kullanan Ses Kontrollü LED'ler
- Arduino ve Bluetooth kullanarak Cep Telefonu Kontrollü AC
Devre şeması
MATLAB ve Arduino arasındaki Bluetooth iletişimi için şemalar aşağıda verilmiştir:
MATLAB Komut Penceresini kullanarak Bluetooth İletişimi
Bu, Arduino ve MATLAB arasında Bluetooth iletişimini kurmanın basit yöntemidir. Burada MATLAB, Arduino ile bağlantılı HC-05'i bağlamak için dizüstü bilgisayarın bluetooth'unu kullanır. Öncelikle, MATLAB'dan gelen seri gelen verileri okumak için Arduino'yu kodlamalıyız (Dizüstü Bilgisayarın Bluetooth'unu kullanarak).
Daha sonra MATLAB'dan iletilen bu Bluetooth verileri, Arduino'ya bağlı herhangi bir şeyi kontrol etmek için kullanılabilir. Burada, MATLAB kullanarak LAPTOP'tan kontrol edilebilen bir LED'i Arduino'ya bağladık.
Önce verilen Arduino kodunu Arduino UNO'ya yükleyin ve ardından MATLAB Komut Penceresinde kodlamaya başlayın.
#Dahil etmek
Ardından, MATLAB ve Arduino arasında Bluetooth iletişimi için Komut penceresine aşağıdaki MATLAB kodunu kopyalayıp yapıştırın.
enstrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
Aşağıdaki kodda, fprintf (bt, '0') komutu, Arduino'ya '0' göndererek LED'i KAPATMAK için kullanılır. Şimdi, LED'i AÇMAK istiyorsanız, aşağıdaki komutu kullanarak '0' yerine sadece '1' gönderin.
fprintf (bt, '1');
Mevcut donanım hakkındaki bilgileri kontrol etmek için aşağıdaki komutu kullanın
enstrhwinfo ('tür', 'Aygıtın adı');
Bluetooth bağlantı noktasını açmak için aşağıdaki komut kullanılır
fopen (bt);
Bluetooth kullanarak MATLAB'den Arduino'ya Veri Gönderme sürecinin tamamını anlamak için aşağıdaki videoyu kontrol edin.
MATLAB GUI kullanarak Bluetooth İletişimi
MATLAB GUI kullanarak Bluetooth İletişimini göstermek için , MATLAB'da Arduino'ya bağlı LED'i açmak, kapatmak ve yanıp sönmek için üç grafik düğme oluşturacağız. Veriler, bu grafik düğmelere tıklandığında MATLAB'dan HC-05'e bluetooth aracılığıyla gönderilecektir. Arduino, Bluetooth ile iletilen verileri MATLAB'den HC-05'e almak ve alınan verilere göre LED'i kontrol etmek için kod içerir. Arduino kodu öncekiyle aynı kalacak, tek fark, daha önce MATLAB'ın komut penceresinden '1' ve '0' verilerini gönderiyorduk ve şimdi aynı veriler üç grafik butona tıklanarak gönderilecek.
GUI'yi başlatmak için, komut penceresine aşağıdaki komutu yazın
kılavuz
Bir açılır pencere açılacak, ardından aşağıdaki resimde gösterildiği gibi yeni boş GUI seçin,
Şimdi aşağıda gösterildiği gibi LED'i AÇMAK, KAPATMAK ve Yanıp Sönmek için üç basma düğmesi seçin,
Düğmeleri yeniden boyutlandırmak veya şeklini değiştirmek için üzerine tıklamanız yeterlidir ve düğmenin köşelerini sürükleyebilirsiniz. Basma düğmesine çift tıklayarak, o belirli düğmenin rengini, dizesini ve etiketini değiştirebilirsiniz. Aşağıdaki resimde gösterildiği gibi üç butonu özelleştirdik.
Düğmeleri tercihinize göre özelleştirebilirsiniz. Şimdi bunu kaydettiğinizde, MATLAB'ın Editör penceresinde bir kod üretilecektir. Bu kodu, MATLAB GUI kullanarak Bluetooth verilerini alırken Arduino'nuz tarafından gerçekleştirmek istediğiniz göreve göre düzenleyin. Bu yüzden aşağıda MATLAB kodunu düzenledik. MATLAB öğreticisine Başlarken bölümünde Komut penceresi, düzenleyici penceresi vb. Hakkında daha fazla bilgi edinebilirsiniz.
MATLAB'dan LED'i Bluetooth ile kontrol etmek için eksiksiz MATLAB kodu bu projenin sonunda verilmiştir. Ayrıca, butonları ihtiyacınıza göre özelleştirebileceğiniz GUI dosyasını (.fig) ve kod dosyasını (.m) buraya indirmek için ekliyoruz. Aşağıda, Arduino ile bağlantılı LED'i kontrol etmek için yaptığımız bazı ince ayarlar bulunmaktadır.
Aşağıdaki kodu kopyalayıp satır no. 74 MATLAB'ı Dizüstü Bilgisayarın Bluetooth'una kurmak veya bağlamak için.
hepsini temizle; global bt; enstrhwinfo ('Bluetooth', 'HC-05'); bt = Bluetooth ('HC-05', 1); fopen (bt);
burada, fopen (bt) veri iletmek için Bluetooth bağlantı noktasını açmak için kullanılır.
Şimdi, aşağı kaydırdığınızda, GUI'de üç buton için oluşturulan üç işlev olduğunu göreceksiniz. Şimdi kodu, tıklama ile gerçekleştirmek istediğiniz göreve göre işlevlere yazın.
In LED AÇIK düğmenin işlevi, kopyalama ve LED AÇIK sadece fonksiyonun sona ermeden kod aşağıda yapıştırın. Aşağıdaki kodda, dizüstü bilgisayarın Bluetooth'u kullanılarak MATLAB'den HC-05'e '1' göndermek için fprintf (bt, '1') kullanılır. Arduino bu veriyi '1' ile HC-05 üzerinden alacak ve 11. pinini YÜKSEK yaparak LED'i parlatacaktır.
global bt; fprintf (bt, '1');
In LED KAPALI düğmesinin işlevi, kopyalama ve LED kapatmak için sadece fonksiyonun sona ermeden kod aşağıda yapıştırın. Aşağıdaki kodda, dizüstü bilgisayarın Bluetooth'u kullanılarak MATLAB'den HC-05'e '0' göndermek için fprintf (bt, '0') kullanılır. Arduino, HC-05 üzerinden '0' alacak ve 11. pinini DÜŞÜK yaparak LED'i kapatacaktır.
global bt; fprintf (bt, '0');
In BLINK düğmenin işlevi, LED yanıp için kod aşağıda kullanın. LED'i 10 kez yanıp sönmek için bir for döngüsü kullanılır.
global bt; i = 1:10 fprintf (bt, '1') için; duraklama (0.5); fprintf (bt, '0'); duraklama (0.5); son
MATLAB GUI kodlamasını tamamladıktan ve donanımı devre şemasına göre kurduktan sonra, düzenlenen kodu.m dosyasında çalıştırmak için çalıştır düğmesine tıklamanız yeterlidir.
MATLAB'ın yanıt vermesi birkaç saniye sürebilir, MATLAB aşağıda gösterildiği gibi ekranın sol alt köşesinde görebileceğiniz MEŞGUL işaretini gösterene kadar herhangi bir GUI düğmesine tıklamayın,
Her şey hazır olduğunda , LED'i sırasıyla AÇIK, KAPALI ve Yanıp Söndürmek için LED-ON, LED OFF ve BLINK düğmelerine tıklayın. Bu proje için tüm kod dosyaları buradan indirilebilir veya aşağıda verilen kodu kullanabilirsiniz.
MATLAB GUI kullanarak Bluetooth aracılığıyla MATLAB'den Arduino'ya Veri Gönderme sürecinin tamamını anlamak için aşağıdaki videoyu kontrol edin.