İçindekiler:
- Adım 1: Yazılım ve Malzemeler
- Adım 2: Arduino'nuza Bağlayın ve COM Bağlantı Noktasını Belirleyin
- Adım 3: Matlab Kodu
- Adım 4: Esnek Sensörü Kablolama
- Adım 5: Arduino'yu LCD'ye bağlayın
- Adım 6: Yumuşak Potansiyometreyi Bağlama
- 7. Adım: Geliştirmelerinizi Akıllı Ray Sisteminde Test Edin
Video: LifeGuard 2.0: 7 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:21
Daha önce elektronik deneyimi olmadan matematik işlemleri yapmak, sensör okumaları almak, analog ve dijital girişleri izlemek ve analog ve dijital çıkışları kontrol etmek istediniz mi? Cevabınız evet ise bu proje tam size göre! EF Express SMART RAIL sistemini izlemek ve geliştirmek için kullanılabilecek bir cihaz oluşturmak için bir mikro denetleyici ve MATLAB kullanacağız. Bir mikrodenetleyici ile giriş ve çıkış olanakları (karta giren sinyal/bilgi ve karttan çıkan bir sinyal) sonsuzdur. Girişlerimiz olarak bir esnek sensör ve potansiyometre kullanacağız. Çıkışları sırasıyla bir sesli uyarı ile birlikte LCD ekran ve LED ışıklar aracılığıyla bir mesaj olacaktır. SMART RAIL sistemine uygulamayı umduğumuz geliştirmeler, sistem güvenliğini artırmaya yöneliktir. Dizüstü bilgisayarınızı ve mikro denetleyicinizi alın ve başlayalım!
Adım 1: Yazılım ve Malzemeler
Yazılım gerekli
1.) MATLAB
- Bilgisayarınıza MATLAB'ın yerel bir sürümünü indirmeniz gerekecek. Mathworks.com'a gidin ve bir MATHWORKS hesabı oluşturun, dosyaları indirin ve lisansınızı etkinleştirin.
-En yeni sürüm (R2016a veya R2016b) için mevcut TÜM araç kutularını indirip kurmalısınız.
-Mac kullanıcıları: R2015b'yi çalıştırmak için OSX 10.9.5 veya sonraki bir sürümüne sahip olmanız gerekir, MATLAB'ın daha eski bir sürümünü çalıştırmakta sorun yoktur.
2.) Arduino Donanım Destek Paketi:
-Arduino Donanım Destek Paketini kurun. MATLAB'ı açın. MATLAB Ana Sayfa sekmesinde, Ortam Menüsü'nde Eklentiler'i seçin, Donanım Destek Paketleri Al "Arduino Donanımı için MATLAB Destek Paketi"ni seçin. MATHWORKS hesabınıza giriş yapmanız gerekecek
-Kurulumunuz kesintiye uğrarsa ve donanım paketini kurarken art arda başarısız denemeler/hatalar yaşarsanız - sabit sürücünüzde Arduino indir klasörünü bulun ve silin ve en baştan başlayın.
İhtiyac duyulan malzemeler
1.) Dizüstü veya masaüstü bilgisayar
2.) SparkFun Arduino Kartı
3.) Esnek Sensör
4.) Potansiyometre
5.) LCD ekran
6.)LED ışık
7.) SparkFun Mucit Kiti (Çevrimiçi bulun)
8.) USB kablosu ve mini USB
9.) Atlama telleri
10.) Piezo zili
Adım 2: Arduino'nuza Bağlayın ve COM Bağlantı Noktasını Belirleyin
(Her eklenti yaptığınızda COM portunuz değişebilir) Arduino USB kablosunu bilgisayarınıza ve mini USB'yi Arduino kartınıza bağlayın. Sürücülerin indirilmesi için birkaç dakika beklemeniz gerekebilir.
COM bağlantı noktasını belirlemek için:
PC'de
Yöntem 1: MATLAB'de şu komutu kullanın - fopen(serial('nada'))
-com portunuzu belirlemek için. Bunun gibi bir hata alabilirsiniz: Seri/fopen kullanılırken hata (satır 72) Açılamadı: Bağlantı Noktası: NADA mevcut değil. Kullanılabilir bağlantı noktaları: COM3. Bu hata, bağlantı noktanızın 3 olduğunu gösterir.
- PC'nizde Yöntem 1 başarısız olursa, Aygıt Yöneticinizi açın ve Bağlantı Noktaları (COM ve LPT) listesini genişletin. USB Seri Bağlantı Noktasındaki numarayı not edin. Örneğin. 'USB Seri Bağlantı Noktası(COM*)' Bağlantı noktası numarası burada *'dir.
-Bağlantı noktası görünmüyorsa MATLAB'ı kapatın ve bilgisayarınızı yeniden başlatın. MATLAB'ı açın ve tekrar fopen(serial('nada')) deneyin.
-Bu başarısız olursa, SparkFun'un sürücülerini CDM_v2.12.00_WHQL_Certified.exe dosyasından indirmeniz, CDM_v2.12.00_WHQL_Certified.exe dosyasını açıp çalıştırmanız ve Çıkar'ı seçmeniz gerekebilir. (Dosyayı Explorer'dan açmanız, sağ tıklamanız ve 'Yönetici Olarak Çalıştır') gerekebilir.
-MATLAB komut penceresinde bir Arduino nesnesi oluşturun - a=arduino('comx', 'uno'); % x, PC'ler için yukarıdan port numaranızdır (öncesinde sıfır yok!)
Mac'te
Yöntem 1: MATLAB komut satırından veya bir Mac Terminalinde şunu yazın: 'ls /dev/tty.*' dev/tty.usbmodem* veya dev/tty.usbserial* için listelenen bağlantı noktası numarasını not edin. Bağlantı noktası numarası burada *'dir.
-MAC'nizde Yöntem 1 başarısız olursa, -MATLAB'dan çıkın
-Arduino yazılımını kapatın ve Arduino USB kablosunu çıkarın
-Java 6 Runtime'ı yükleyin
-USB sürücüsü çekirdek uzantısını yükleyin
-Bilgisayarı yeniden başlatın
-Arduino USB kablosunu yeniden bağlayın
-MATLAB komut satırından veya Mac Terminalinden çalıştırın: ls /dev/tty.*
- dev/tty.usbmodem* veya dev/tty.usbserial* için listelenen bağlantı noktası numarasını not edin. Bağlantı noktası numarası burada *'dir.
-MATLAB komut penceresinde bir Arduino nesnesi oluşturun - a=arduino('/dev/tty.usbserial*', 'uno'); % *, MAC'ler için yukarıdaki port numaranız veya '/dev/tty.usbmodem*'
Adım 3: Matlab Kodu
Girişler:
1.) Esnek Sensör
2.) Potansiyometre
Çıktılar:
1.) "Tren Geliyor" yazan LCD ekran
2.) LED ışık
3.) Piezo zili
Bu adımda, Arduino kartından gelen girdileri analiz edecek ve MATLAB'ın analiz sonuçlarına göre çıktılar sağlayacak kodu oluşturacağız. Aşağıdaki kod, birkaç işlevi gerçekleştirmenize izin verecektir: potansiyometre tetiklendiğinde, piezo buzzer alternatif frekanslar yayacak ve kırmızı LED yanıp sönecektir. Bir tren algılanmadığında yeşil LED yanacaktır. Esnek Sensör tetiklendiğinde, açgözlülük LED'i sönecek, kırmızı LED yanacak ve LCD'de "Tren Geliyor" yazan bir mesaj görüntülenecektir.
MATLAB Kodu:
%remery1, shornsb1, wmurrin
%Amaç: Tren Uyarısı
%IIGiriş: potansiyometre, esnek sensör
%output:lcd, ses, ışık
%Kart başlatılmamışsa veya bağlantı sorunları varsa, Yorumlarda aşağıdaki komutlar. Her seferinde yürütülmeleri gerekmez
%hepsini temizle
%hepsini kapat
%clc
%a=arduino('/dev/tty.usbserial-DN01DXOM', 'uno');
%lcd = addon(a, 'ÖrnekLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
%Bağlandıktan sonra kartı yapılandırın
configurePin(a, 'D8', 'çekme');%D8'i yapılandır
configurePin(a, 'D9', 'PWM');%D9'u yapılandır
zaman=50; %zamanı 50'ye ayarla
clearLCD(lcd) %LCD'yi başlat
%Başlangıç Döngüsü
süre> 0 iken
%Esnek sensör voltajı ışığın yeşil mi yoksa ışık mı olduğunu belirler
% kırmızı ve LCD "tren geliyor" gösteriyor
flex_status = readVoltage(a, 'A0'); % esnek sensörün okuma voltajı
flex_status>4 %, voltaj 4'ten büyükse, döngüyü tetikleyin
writeDigitalPin(a, 'D12', 0) %yeşili kapat
writeDigitalPin(a, 'D11', 1) %kırmızıyı aç
printLCD(lcd, 'Tren Geliyor') LCD'de % "tren geliyor" göster
duraklat(5) %5 saniye bekleyin
clearLCD(lcd) LCD'den mesajı temizle
writeDigitalPin(a, 'D11', 0) %Kırmızı LED'i kapat
Başka
son
pe_status = readVoltage(a, 'A2'); %Potansiyometre voltajını oku
pe_status>%2 voltaj 2'den büyükse, döngü tetiklenir
writeDigitalPin(a, 'D13', 1);% kırmızı LED'i aç
playTone(a, 'D9', 400,.25); % Piezo buzzer'da 400 Hz oynat,.25 sn
writeDigitalPin(a, 'D13', 0)% kırmızı LED'i kapatın
duraklat(.25)%bekle.25 saniye
writeDigitalPin(a, 'D13', 1) % 200 Hz'de sesli uyarı ile yukarıdaki tekrar
playTone(a, 'D9', 200,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1);%Yukarıda tekrarlayın
playTone(a, 'D9', 400,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1)
playTone(a, 'D9', 200,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1) %Yukarıda tekrarlayın
playTone(a, 'D9', 400,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1)
playTone(a, 'D9', 200,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1) %Yukarıda tekrarlayın
playTone(a, 'D9', 400,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
writeDigitalPin(a, 'D13', 1)
playTone(a, 'D9', 200,.25);
writeDigitalPin(a, 'D13', 0)
duraklat(.25)
Başka
writeDigitalPin(a, 'D12', 1)% voltaj 2'den düşükse yeşil LED'i açın
writeDigitalPin(a, 'D13', 0)%Kırmızı LED dönüşü
son
son
Adım 4: Esnek Sensörü Kablolama
İhtiyac duyulan malzemeler
1.) 1 Esnek Sensör
2.) 1 10K Ohm Direnç
3.) 8 Jumper Tel
*Sırasıyla resimlere bakın.
Bu devrede flexi ölçeceğiz. Bir esnek sensör, değişken bir direnç gibi davranmak için bir plastik şerit üzerindeki karbonu kullanır, ancak bir düğmeyi çevirerek direnci değiştirmek yerine, bileşeni esneterek değiştirirsiniz. Dirençteki değişikliği tespit etmek için bir voltaj bölücü. Bizim durumumuzda, "Tren Geliyor" yazan bir mesajı okumak için LCD ekrana komut vermek için (resme bakın) geçen bir treni algılamak için esnek sensörü kullanacağız.
*Esnek Sensör kablolama talimatlarını gösteren resimlerde, yalnızca Esnek Sensör kablolama ile ilgili kablolara bakın. Servo için kablolamayı dikkate almayın.
Tel pimleri aşağıdaki gibi:
Adım 1: GÜÇ bölümündeki Arduino kartında, 1 kabloyu 5V girişine ve 1 kabloyu GND (toprak) girişine takın. 5V kablosunun diğer ucunu devre kartındaki pozitif (+) girişe takın. GND kablosunun diğer ucunu devre kartındaki negatif (-) girişe takın.
Adım 2: Arduino kartının ANALOG IN bölümündeki A0 girişine 1'i takın. Bu kablonun ucunu devre kartındaki j20 girişine takın.
Adım 3: DIGITAL I\O bölümündeki Arduino kartında, 1 kabloyu giriş 9'a takın. Diğer ucu a3 girişine takın.
Adım 4: Devre kartı üzerinde, 1 kabloyu pozitif (+) girişe takın. Diğer ucunu h24 girişine takın.
Adım 5: Devre kartı üzerinde, 1 kabloyu negatif (+) girişe takın. Diğer ucunu a2 girişine takın.
Adım 6: Devre kartında, 1 kabloyu negatif (-) girişe takın. Diğer ucunu b1 girişine takın.
Adım 7: Devre kartında, 1 kabloyu negatif (-) girişe takın. Diğer ucunu i19 girişine takın.
Adım 8: Devre kartı üzerinde, direnci i20 ve i24 girişlerine yerleştirin.
*Son resim gerçek dünya uygulamalarına aittir.
Adım 5: Arduino'yu LCD'ye bağlayın
*Bu bağlantıyı takip edin (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) ve ardından LCD'yi Arduino'ya bağlamak için aşağıda verdiğim adımlara bakın:
Adım 1: Zip dosyasını açın
Adım 2: BeniOku dosyasını açın ve talimatları izleyin
İhtiyac duyulan malzemeler
1.) SparkFun'dan bu cihaza benzer 16x2 LCD -
2.) Atlama telleri
*Sırasıyla resimlere bakın.
Bu adım, bir LCD eklenti kitaplığının nasıl oluşturulacağını ve bir LCD'de "Tren Geliyor" ifadesinin nasıl görüntüleneceğini gösterecektir.
Tel pimleri aşağıdaki gibidir:
LCD Pimi -> Arduino Pimi
1 (VSS) -> Toprak
2 (VDD) -> 5V
3 (V0) -> Flex Sensör üzerindeki orta pim
4 (RS) -> D7
5(R/W) -> Toprak
6 (E) -> d6
11 (DB4) - D5 (PWM)
12 (DB5) -> D4
13 (DB6) -> D3 (PWM)
14 (DB7) -> D2
15 (LED+) -> 5 V
16 (LED-) -> Toprak
Adım 6: Yumuşak Potansiyometreyi Bağlama
İhtiyac duyulan malzemeler
1.) 1 LED
2.) 1 Yumuşak Potansiyometre
3.) Jumper Telleri
4.) 3 330 Ohm Direnç
5.) 10K Ohm Direnç
*Sırasıyla resimlere bakın.
Bu devrede, başka bir tür değişken direnç, yumuşak bir potansiyometre kullanacağız. Bu, basıncın uygulandığı yeri algılayabilen ince ve esnek bir şerittir. Şeridin çeşitli kısımlarına bastırarak direnci 100 ila 10 K ohm arasında değiştirebilirsiniz. Bu özelliği potansiyometre veya buton olarak hareketi takip etmek için kullanabilirsiniz. Bu devrede, bir RGB LED'i kontrol etmek için yumuşak potansiyometreyi çalıştıracağız.
Adım 1: DIGITAL I\O bölümündeki Arduino kartında, 1 pini giriş 10'a ve 1 pini giriş 11'e takın. Sırasıyla, bu pinlerin diğer ucunu h6 ve h7 girişlerine takın.
Adım 2: Devre kartındaki LED'i a4, a5, a6 ve a7 girişlerine takın.
Adım 3: Devre kartında, e4-g4, e6-g6 ve e7-g7 girişlerine 3 330 ohm direnci yerleştirin.
Adım 4: Devre kartında, 1 pimi e5 girişine takın. Bu pimin diğer ucunu negatif (-) bir girişe takın.
Adım 5: Devre kartı üzerinde, 10K ohm direncini i19-negatif(-) girişlerine yerleştirin.
Adım 6: Devre kartında 1 pini j18'e takın. Bu pimin diğer ucunu pozitif (+) bir girişe takın.
Adım 7: Devre kartında, 1 pini j20 girişine takın. Bu pimin diğer ucunu negatif (-) bir girişe takın.
7. Adım: Geliştirmelerinizi Akıllı Ray Sisteminde Test Edin
Bu noktada MATLAB kodunuz işlevsel olmalı ve Arduino kartı, eklenen tüm bileşenlerle doğru bir şekilde bağlanmalıdır. Sertifikalı bir Akıllı Ray Sisteminde deneyin ve geliştirmelerinizin sistemi daha güvenli hale getirip getirmediğini görün.
Önerilen:
Nasıl Yapılır: Raspberry PI 4 Headless (VNC) Kurulumu Rpi-imager ve Resimlerle: 7 Adım (Resimlerle)
Nasıl Yapılır: Raspberry PI 4 Headless (VNC) Kurulumu Rpi-imager ve Resimlerle: Bu Rapsberry PI'yi blogumda bir sürü eğlenceli projede kullanmayı planlıyorum. Kontrol etmekten çekinmeyin. Raspberry PI'mi kullanmaya geri dönmek istedim ama yeni konumumda Klavye veya Farem yoktu. Ahududu kurduğumdan beri bir süre geçti
Adım Sayacı Nasıl Yapılır?: 3 Adım (Resimlerle)
Adım Sayacı Nasıl Yapılır?: Yürümek, koşmak, bisiklete binmek, badminton oynamak gibi birçok sporda iyi performans gösterirdim. Binmeyi çok uzun zaman önce dolaşmak için seviyorum. Pekala, iri göbeğime bakın……Her neyse, egzersize yeniden başlamaya karar verdim. Hangi ekipmanı hazırlamalıyım?
Adım Adım Arduino Uno ile Akustik Kaldırma (8 adım): 8 Adım
Arduino Uno ile Akustik Kaldırma Adım Adım (8 adım): ultrasonik ses dönüştürücüler L298N erkek dc pinli Dc dişi adaptör güç kaynağı Arduino UNOBreadboardBu nasıl çalışır: İlk olarak, Arduino Uno'ya kod yüklersiniz (dijital ile donatılmış bir mikrodenetleyicidir) ve kodu dönüştürmek için analog bağlantı noktaları (C++)
Kolay Adımlar ve Resimlerle Bilgisayar Nasıl Sökülür: 13 Adım (Resimlerle)
Kolay Adımlar ve Resimlerle Bir Bilgisayar Nasıl Sökülür: Bu, bir PC'nin nasıl söküleceği hakkında bir talimattır. Temel bileşenlerin çoğu modülerdir ve kolayca çıkarılabilir. Ancak bu konuda organize olmanız önemlidir. Bu, parçaları kaybetmenize ve aynı zamanda yeniden birleştirmeyi kolaylaştırmaya yardımcı olacaktır
Adım Adım Ciclop 3d Tarayıcı My Way: 16 Adım (Resimlerle)
Adım Adım Ciclop 3d Tarayıcı Adım Adım: Merhabalar, ünlü Ciclop 3D tarayıcıyı gerçekleştireceğim. Orijinal projede iyi açıklanan tüm adımlar mevcut değil. Öncelikle işlemi basitleştirmek için bazı düzeltmeler yaptım. Tabanı yazdırıyorum ve PCB'yi yeniden sterilize ediyorum, ama devam et