İçindekiler:

Elechouse V3 ve Arduino ile Ses Tanımaya Giriş: 4 Adım (Resimlerle)
Elechouse V3 ve Arduino ile Ses Tanımaya Giriş: 4 Adım (Resimlerle)

Video: Elechouse V3 ve Arduino ile Ses Tanımaya Giriş: 4 Adım (Resimlerle)

Video: Elechouse V3 ve Arduino ile Ses Tanımaya Giriş: 4 Adım (Resimlerle)
Video: ELECHOUSE - Voice recognition module V3.1 2024, Temmuz
Anonim
Elechouse V3 ve Arduino ile Ses Tanımaya Giriş
Elechouse V3 ve Arduino ile Ses Tanımaya Giriş

Merhaba…

Ses tanıma teknolojisi son birkaç yıldır buradaydı. İlk Siri özellikli iphone ile konuşurken yaşadığımız büyük heyecanı hala hatırlıyoruz. O zamandan beri sesli komut cihazları çok kısa sürede beklentilerimizin çok üzerinde bir seviyeye ulaştı. Birçok gelişmiş ses tanıma sisteminin tanıtılmasıyla birlikte, Google asistanı ve Amazon Alexa gibi birçok başka sesli asistan geldi. Tek başına Amazon'un Echo'sunun hızlı başarısı, makinelerle konuşma konusunda yavaş yavaş anlaşmaya başladığımızı kanıtlıyor.

Öyleyse temelden başlayalım. Bu talimatta size Elechouse V3 Ses Tanıma Modülü ve sesli komutları kullanarak bir LED'in nasıl açılıp/kapatılacağı hakkında bir giriş yapacağım. Bir android telefondan Alexa veya Raspberry pi'ye veya başka bir teknolojiye kadar projenizde ses tanımayı uygulamanın başka yolları da var. Ama birçok arkadaşımdan bu özel modülü Arduino ile nasıl kullanacağımı soran birkaç mesaj aldım. Bu yüzden bu talimatı Elechouse V3 modülü için temel bir eğitim olarak yazıyorum. Bunu yeni başlayanlar için mümkün olduğunca basit hale getirmek istedim, bu yüzden modülün tüm özelliklerini ve işlevlerini tartışmayacağız, ancak sonunda, bir sonraki projeniz için oldukça güzel fikirler alacağınızdan eminim..

Adım 1: Elechouse V3 Ses Tanıma Modülü

Elechouse V3 Ses Tanıma Modülü
Elechouse V3 Ses Tanıma Modülü
Elechouse V3 Ses Tanıma Modülü
Elechouse V3 Ses Tanıma Modülü

Elechouse V3, piyasadaki en kompakt ve kontrolü kolay ses tanıma modüllerinden biridir.

Bu modülü kullanmanın iki yolu vardır; seri bağlantı noktası veya yerleşik GPIO pinleri aracılığıyla. V3 kartı, her biri 1500 milisaniye süreli 80 adede kadar sesli komut saklama kapasitesine sahiptir. Bu, komutlarınızı metne dönüştürmez, ancak önceden kaydedilmiş bir ses grubuyla karşılaştırır. Dolayısıyla teknik olarak bu ürünü kullanmak için herhangi bir dil engeli yoktur. Komutunuzu herhangi bir dilde kaydedebilirsiniz veya kelimenin tam anlamıyla herhangi bir ses kaydedilebilir ve komut olarak kullanılabilir. Bu nedenle, herhangi bir sesli komutu tanımasına izin vermeden önce onu eğitmeniz gerekir.

Modülü GPIO pinleri ile kullanıyorsanız, modül 80 komuttan sadece 7'si için çıkış verecektir. Bu yöntem için 7 komutu seçip tanıyıcıya yüklemeniz gerekir ve tanıyıcı çıkışları ilgili komuta gönderir. Bu sesli komutlardan herhangi biri tanınırsa GPIO pinleri. Bunu arduino ile kullandığımız için, sınırlı özellikler hakkında endişelenmemize gerek yok.

Cihaz 4,5 - 5 volt giriş voltajı aralığında çalışır ve 40 mA'dan daha az akım çeker. Bu modül ideal koşullarda kullanıldığında %99 tanıma doğruluğu ile çalışabilir. Mikrofon seçimi ve ortamdaki gürültü, modülün performansını etkilemede hayati bir rol oynar. Modülden maksimum performansı almak için komutlar verirken iyi hassasiyete sahip bir mikrofon seçmek ve arka plandaki gürültüyü azaltmaya çalışmak daha iyidir.

Adım 2: Modülü Arduino'ya Bağlama

Modülü Arduino'ya Bağlama
Modülü Arduino'ya Bağlama
Modülü Arduino'ya Bağlama
Modülü Arduino'ya Bağlama

Şimdi yapılacak olan bağlantılardan bahsedelim.

Gerekli donanım:

Elechouse V3 Ses Tanıma modülü

Arduino UNO R3. (Ben burada Arduino Pro Mini kullanıyorum, fark etmez ikisinin de işlevi hemen hemen aynı.)

3,5 mm fiş takılı mikrofon. (ya da direk tahtaya lehimleyebilirsiniz. Pinleri vermişler.)

Bir LED

LED için 470 ohm'luk bir direnç

Gerektiği gibi teller

Arduino'yu programlamak için USB kablosu

Modülün Arduino'ya Bağlanması

GND - Zemin

VCC - 5 V

RXD - Arduino'nun dijital pin 3'ü (Bu, kullanıcı tanımlı bir pindir. Örnek kod, Tx olarak Pin 3'e sahiptir.)

TXD - Arduino'nun dijital pin 2'si (Bu aynı zamanda kullanıcı tanımlı bir pindir.)

LED, örnek kodda tanımlandığı gibi Arduino'nun dijital pimi 13'e bağlanır. LED'e seri olarak 470 ohm'luk bir direnç bağlayın.

Mikrofonu karttaki 3,5 mm jaka takın. 3,5 mm fişle gelmiyorsa modüldeki mikrofon pinlerine lehimleyin.

Bağlantılarla ilgili bu kadar. Şimdi koda bir göz atalım.

Adım 3: Kodu Ayarlama

Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama
Kodu Ayarlama

Burada bahsedilen tüm kodlar ve kütüphaneler açık kaynak kodludur ve bunları geliştirme kredileri ilgili yazarlarına aittir.

Modülü Arduino ile kullanmadan önce "voicerecognitionv3.h" Arduino kütüphanesini indirip kurmalısınız.

Kütüphaneyi buradan indirin.

İhtiyacımız olan tüm kodlar, örnek programlar olarak kütüphane zip dosyasında bulunmaktadır.

V3 Modülünün Eğitimi

Yukarıda bahsettiğim gibi, modülü ses tanıma için kullanmadan önce eğitmemiz gerekiyor. Modülü eğitmek için aşağıdaki adımları izleyin.

Devreyi bilgisayara bağlayın

Arduino IDE'yi başlatın

Doğru Arduino kartını seçip seçmediğinizi kontrol edin. (Araçlar -> Pano)

Doğru COM bağlantı noktasının seçili olup olmadığını kontrol edin. (Araçlar -> Bağlantı Noktası)

Şimdi modülü eğitmek için örnek programı açın

Dosya -> Örnekler -> VoiceRecognitionV3 -> vr_sample_train'e gidin

Kodu Arduino'ya yükleyin ve kod yüklenene kadar bekleyin. (Ctrl + U)

Seri Monitörü açın. (Ctrl + Üst Karakter + M)

Baud hızının 115200 olarak ayarlandığından ve "Newline" seçeneğinin seçili olduğundan emin olun

Her şey yolundaysa, seri monitörde resimlerde gösterildiği gibi bir menü gösterilecektir

Modülü programlamak için seri monitöre yazabileceğiniz birkaç komut var, burada modülü eğitmek için "train" komutunu kullanacağız

V3, her biri 1500 ms süreli 80 sesli komut saklama kapasitesine sahiptir. Her komut 0'dan 79'a kadar bir adreste saklanır

"Tren" komutunu kullanarak, belirli bir adrese sesli komut kaydediyoruz, bu nedenle adresi komutta belirtmelisiniz

Komutun sözdizimi şu şekildedir: tren adresi Örneğin: tren 0, tren 20, tren 79

  • LED'i kontrol etmek için iki sesli komuta ihtiyacımız olacak. Bir komut AÇMAK ve diğeri KAPATMAK için.
  • Komutu seri monitöre ve ardından saklamak istediğiniz adresi girin. örneğin: tren 20.

Komutu girdikten sonra, seri monitörde "şimdi konuş" yazan bir mesajın görünmesini bekleyin. Şimdi LED'i mikrofona AÇMAK için komutunuzu yeterince net ve yüksek sesle söyleyin

Komut yeterince açıksa, tekrar konuşmanızı isteyen başka bir mesaj görünecektir. Komutu kaydetmek için tekrar konuşun

Kayıt sırasında bir miktar gürültü olursa veya ses yeterince net değilse, kod sizden komutu tekrarlamanızı isteyecektir. Mikrofonunuzun kalitesinin burada önemli bir rolü var. Mikrofonunuz yeterince iyi değilse bir komutu kaydedemeyebilirsiniz. Ayrıca tahtayı gürültüsüz bir ortamda eğitin

Modüle başarıyla bir ses girdikten sonra, LED'i KAPATMAK için sesli komutu girmek için aynı işlemi tekrarlayın. Komutu farklı bir adreste saklamayı unutmayın. Örneğin: tren 30

Her iki komutu da başarıyla yüklediyseniz, artık LED'i kontrol etmek için kodu yüklemeye hazırsınız

Sesli Komutları kullanarak LED'i kontrol etme

LED'i kontrol etmek için örnek programı açın

Dosya -> Örnekler -> VoiceRecognitionV3 -> vr_sample_control_led seçeneğine gidin

Bu programda "kayıt üzerinde" (LED'i AÇMAK için) ve "kayıt dışı" (LED'i KAPATMAK için) olmak üzere iki kayıt tanımlanmıştır

LED'i AÇMAK için eğittiğiniz sesli komutun adresine "onrecord" değerini değiştirin

  • LED'i KAPATMAK için eğittiğiniz sesli komutun adresine "kayıt dışı" değerini değiştirin.
  • Şimdi kodu Arduino'ya yükleyin. (Ctrl+U)

Hepsi bu kadar. Artık LED'inizi sesli komutlarla kontrol etmeye hazırsınız.

4. Adım: Sonuç

Image
Image

Devreyi test etmek için, LED'i AÇMAK/KAPATMAK için onu eğittiğiniz gibi komutları söyleyin. Mikrofonunuzun kalitesinin ve çevrenizdeki gürültünün çıkışı gerçekten etkileyeceğini unutmayın. Gürültüsüz bir ortamda test etmeyi deneyin veya sesli komutlarınıza uygun bir yanıt almıyorsanız mikrofonu değiştirin. Ayrıca cihazın sesli komutlarınıza yanıt verip vermediğini kontrol etmek için seri monitörü açın. Bir komut tanınırsa, seri monitör tanınan komutun adresini içeren bir mesaj gösterecektir.

Tebrikler! Ses komutlarını kullanarak bir LED'i kontrol etmeyi öğrendiniz. Artık bu tür herhangi bir cihazı ses kontrollü bir cihaza dönüştürebilirsiniz. Ampul veya fan gibi AC cihazlarını kontrol etmek için Arduino'ya bir röle modülü bağlayın.

Bunu günlük hayatımızda uygulamak için sayısız olasılık var. Aşağıdaki yorum bölümünde düşüncelerinizi paylaşın.

Umarım bu talimat size Elechouse V3 Ses Tanıma modülünü Arduino ile kullanma hakkında temel bir fikir vermiştir. Herhangi bir sorunuz varsa, buradan veya [email protected] adresine e-posta göndermekten çekinmeyin. Sana yardım etmek için elimden geleni yapacağım.

Önerilen: