İçindekiler:
- Adım 1: Malzemeler ve Sarf Malzemeleri
- Adım 2: Kart Kurulumu
- Adım 3: Kodu Yazma
- 4. Adım: Kodu Kopyalayın
- Adım 5: Sonuçlar
Video: Desert Railroad Sıcaklık Dedektörü ve Yolcu Sayacı: 5 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:20
Amaç:
Sıcaklık: Bu talimat, bir demiryolunun sıcaklığını tespit etmek için bir Arduino RedBoard'u (MATLAB kullanarak) nasıl kuracağınızı ve programlayacağınızı öğretecektir. Yolcular için güvenli olmayan bir sıcaklığa ulaşıldığında bir uyarı mesajı duyulur, sesli uyarılar çalar ve bir uyarı işareti yanar.
Yolcu Sayacı: Bu bölüm size yolcuları saymak için bir düğmenin nasıl kullanılacağını öğretecek ve maksimum kapasiteye ulaşıldığında bir uyarı sesi verecektir.
Özellikleri:
- Trene giren yolcuları saymak için Düğmeyi kullanır
- Demiryolunun sıcaklığını algılamak için TMP36 (sıcaklık sensörü) kullanır
- Tren istasyonunu uyarmak için Kırmızı LED ışık kullanır
- Alarmı çalmak için buzzer kullanır
- Sıcaklık ve zaman grafiğini içeren bir uyarı e-postası gönderir
- MATLAB üzerinde açılır uyarı mesajları
Adım 1: Malzemeler ve Sarf Malzemeleri
- 1 dizüstü bilgisayar
- MATLAB 2017
- Arduino Araç Kutusunu İndirin
- Sparkfun Kırmızı Tahta
- 1 Güç Kablosu
- ekmek tahtası
- 14 tel
- 1 Piezo Zil
- 1 Basma Düğmesi
- 2 adet 10k ohm direnç
- 1 TMP36 sensörü
- Kırmızı LED ışık
- 3D baskılı tabela (isteğe bağlı)
Adım 2: Kart Kurulumu
Yukarıdaki kurulumu izleyin
Adım 3: Kodu Yazma
while Döngüsü: Kodun sıcaklığı test etmeye ve düğme durumunu (basılı veya basılı değil) algılamaya devam etmesini sağlamak için kodu belirli bir süre boyunca while döngüsüne yerleştiririz.
TMP36'yı kullanarak: Gerilimi okuyarak ve dönüştürme faktörlerini kullanarak Fahrenheit derecesine çevirerek sıcaklığı belirleriz. Ardından, bir ton çalmak için bir if ifadesi kullanırız ve sıcaklık ayarlanan maksimum sıcaklıktan büyük veya ona eşitse uyarı verir/ses veririz.
Button Kullanımı: Bir if ifadesi ile readDigitalPin kullanarak butona basılıp basılmadığını test edebiliriz. Bu komut bir Boolean (1 veya 0) döndürür. Cevap 0 ise butona basılır ve yolcu sayacı yükselir ve hoş geldin mesajı verir. Ardından maksimum kapasiteye ulaşıldığında bir uyarı mesajı duyulur.
4. Adım: Kodu Kopyalayın
%Girişler: Düğmeye basıldığında, sıcaklık sensörü
%Çıkışlar: ışıklar, sesli uyarılar, sesli uyarı, e-postalar, grafikler
Amaç: Bu ürün, çölde trenle seyahat eden yolcuların güvenliğini ve konforunu sağlamaya yardımcı olmak için tasarlanmıştır.
%Kullanım: Bir düğmeyi kullanarak yolcu sayısını algılama ve bir sıcaklık sensörü kullanarak ısıyı % algılama ve grafiğini çizme ve hem yolcu sayılarını hem de sıcaklık grafiğini tren istasyonuna gönderme
configurePin(a, 'D2', 'çekme'); % gelecek sürümlerde configurePin kullanın
zaman = 200;
e=0;
x=0
süre > 0 iken
button_status = readDigitalPin(a, 'D2'); Düğmeye basıldığında % sıfıra, aksi takdirde 1'e eşittir
voltaj = readVoltage(a, 'A0');%pin nereye yerleştirdiğimize bağlıdır
sıcaklıkCelcius = (voltaj*100)-50; Sensör kılavuzunda verilen %
tempF(zaman) = (tempCelcius*1.8)+32 %bilinen dönüştürme formülü
maksimum = 120; %derece F
writeDigitalPin(a, 'D11', 1);
rem=mod(e, 2);
eğer tempF(zaman)>=maks
writeDigitalPin(a, 'D11', 0);
writeDigitalPin(a, 'D9', 1);
playTone(a, 'D9', 2400,.5)
duraklat(.5)
writeDigitalPin(a, 'D6', 1)
playTone(a, 'D6', 1000,.5)
duraklat(.5)
writeDigitalPin(a, 'D9', 1);
playTone(a, 'D9', 2400,.5)
duraklat(.5)
writeDigitalPin(a, 'D6', 1)
playTone(a, 'D6', 1000,.5) % "siren" çalıyor
z='Overheat.m4a'; %Bu, ses dosyasını bir değişkene koyar
[veri, sıklık]=sesli okuma(z); %Ses dosyasından veri yükler
o=ses oynatıcı(veri, frekans); %Ses dosyasının çalınmasını kontrol etmek için bir nesne oluşturur
o.play() %Ses dosyasını çalar
o.playblocking() %Dosyayı oynatır ve bitmesini bekler
son
if button_status == 0 && rem==0
e=e+1
msgbox('Gemiye Hoş Geldiniz!');
elseif button_status == 0 && rem==1
e=e+1
msgbox('Bienvenido bir bordo!');
son
e==5 ise
writeDigitalPin(a, 'D11', 0);
x==0 ise
playTone(a, 'D6', 600, 1);
s='Uyarı_EF.m4a'; %Bu, ses dosyasını bir değişkene koyar
[veri, sıklık]=sesli okuma(lar); %Ses dosyasından veri yükler
o=ses oynatıcı(veri, frekans); %Ses dosyasının çalınmasını kontrol etmek için bir nesne oluşturur
% o.play() %Ses dosyasını çalar
o.playblocking() %Dosyayı oynatır ve bitmesini bekler
msgbox('Maksimum Kapasite')
x=x+1
son
aksi takdirde e>=6
playTone(a, 'D6', 2400, 0);
son
zaman = zaman - 1;
% duraklama(0.1);
% ise e==5 && max(tempF)>=120
% zaman=0
% son
son
ee=sayı2dizi(e)
t=[1:200];
tempF2=fliplr(tempF);
arsa(t, tempF2);
başlık('Zaman ve Sıcaklık')
ylabel('Sıcaklık(F)')
xlabel('Zaman(lar)')
saveas(gcf, 'tempplot.jpg')
mail= '[email protected]'
şifre='Srsora123#'
host='smtp.gmail.com'
setpref('İnternet', 'SMTP_Sunucusu', ana bilgisayar);
setpref('İnternet', 'E_posta', posta);
setpref('İnternet', 'SMTP_Kullanıcı Adı', posta);
setpref('İnternet', 'SMTP_Şifre', şifre);
sahne = java.lang. System.getProperties;
props.setProperty('mail.smtp.auth', 'true');
props.setProperty('mail.smtp.socketFactory.class', 'javax.net.ssl. SSLSocketFactory');
props.setProperty('mail.smtp.socketFactory.port', '465');
sendmail(mail, 'Merhaba Tren İstasyonu! Trende bu kadar yolcu var', ee, 'tempplot.jpg')
Adım 5: Sonuçlar
Önerilen:
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?
Yolcu Teller. Mutlu Hacking: 4 Adım
Yolcu Teller. Mutlu Hacking: Gemaakt kapı.Owen CiciliaTim JansenMees van EssenArduino yolcu sayacı: APCOpenbaar vervoer, wij maden allemaal weleens gebruik van. En zoekend naar een zitplaats maar na twee coupé'nin beslis je toch te gaan staan'da je stapt soms de trein
Arduino Uno ile LM35 Sıcaklık Sensörü Kullanarak Sıcaklık Okuma: 4 Adım
Arduino Uno ile LM35 Sıcaklık Sensörü Kullanarak Sıcaklık Okuma: Merhaba arkadaşlar bu derste LM35'i Arduino ile nasıl kullanacağımızı öğreneceğiz. Lm35, -55 °C ile 150 °C arasındaki sıcaklık değerlerini okuyabilen bir sıcaklık sensörüdür. Sıcaklıkla orantılı analog voltaj sağlayan 3 terminalli bir cihazdır. Yüksek
ESP32 NTP Sıcaklık Problu Steinhart-Hart Düzeltmeli ve Sıcaklık Alarmlı Pişirme Termometresi: 7 Adım (Resimli)
ESP32 NTP Sıcaklık Probu Steinhart-Hart Düzeltme ve Sıcaklık Alarmı ile Pişirme Termometresi.: "Yaklaşan bir projeyi" tamamlama yolculuğunda, "Steinhart-Hart Düzeltme ve Sıcaklık Alarmlı ESP32 NTP Sıcaklık Probu Pişirme Termometresi"; bir NTP sıcaklık probunu nasıl eklediğimi gösteren bir Eğitilebilirliktir, piezo b
Yıldırım Dedektörü ve Sayacı: 8 Adım (Resimli)
Yıldırım Dedektörü ve Sayacı: Her zaman bir yıldırım dedektörü yapmak istemişimdir ancak devre şemalarını yeteneklerimin biraz ötesinde buldum. Geçenlerde internette gezinirken, yıldırım çarpmalarını gerçekleştiği anda sayan çok havalı bir devreyle karşılaştım! baktıktan sonra