İçindekiler:

LifeGuard 2.0: 7 Adım (Resimlerle)
LifeGuard 2.0: 7 Adım (Resimlerle)

Video: LifeGuard 2.0: 7 Adım (Resimlerle)

Video: LifeGuard 2.0: 7 Adım (Resimlerle)
Video: GTA 5 POLİS MODU NASIL KURULUR ? 2022 GÜNCEL SÜRÜM DETAYLI ANLATIM 2024, Kasım
Anonim
Cankurtaran 2.0
Cankurtaran 2.0

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 ve Malzemeler
Yazılım ve Malzemeler
Yazılım ve Malzemeler
Yazılım ve Malzemeler
Yazılım ve Malzemeler
Yazılım ve Malzemeler
Yazılım ve Malzemeler
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

Matlab Kodu
Matlab Kodu
Matlab Kodu
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

Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması
Esnek Sensörün Kablolanması

İ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

Arduino'yu LCD'ye bağlayın
Arduino'yu LCD'ye bağlayın
Arduino'yu LCD'ye bağlayın
Arduino'yu LCD'ye bağlayın
Arduino'yu LCD'ye bağlayın
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

Yumuşak Potansiyometreyi Bağlama
Yumuşak Potansiyometreyi Bağlama
Yumuşak Potansiyometreyi Bağlama
Yumuşak Potansiyometreyi Bağlama
Yumuşak Potansiyometreyi Bağlama
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

Geliştirmelerinizi Akıllı Ray Sisteminde Test Edin
Geliştirmelerinizi Akıllı Ray Sisteminde Test Edin
Geliştirmelerinizi Akıllı Ray Sisteminde Test Edin
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: