ዝርዝር ሁኔታ:

የበረሃው የባቡር ሐዲድ የሙቀት መጠን መፈለጊያ እና ተሳፋሪ ቆጣሪ - 5 ደረጃዎች
የበረሃው የባቡር ሐዲድ የሙቀት መጠን መፈለጊያ እና ተሳፋሪ ቆጣሪ - 5 ደረጃዎች

ቪዲዮ: የበረሃው የባቡር ሐዲድ የሙቀት መጠን መፈለጊያ እና ተሳፋሪ ቆጣሪ - 5 ደረጃዎች

ቪዲዮ: የበረሃው የባቡር ሐዲድ የሙቀት መጠን መፈለጊያ እና ተሳፋሪ ቆጣሪ - 5 ደረጃዎች
ቪዲዮ: የኢትዮ ጅቡቲ ባቡር ፈተናዎች ፤ መስከረም 28, 2014/ What's New Oct 8, 2021 2024, ሀምሌ
Anonim
የበረሃው የባቡር ሐዲድ ሙቀት ጠቋሚ እና ተሳፋሪ ቆጣሪ
የበረሃው የባቡር ሐዲድ ሙቀት ጠቋሚ እና ተሳፋሪ ቆጣሪ

ዓላማ

የሙቀት መጠን - ይህ አስተማሪ የባቡር ሐዲዱን የሙቀት መጠን ለማወቅ አርዱዲኖ ሬድቦርድ (MATLAB ን በመጠቀም) እንዴት ማዋቀር እና መርሃ ግብር ማስተማር እንደሚችሉ ያስተምርዎታል። ለተሳፋሪዎች ደህንነቱ ያልተጠበቀ የሙቀት መጠን ሲደርስ የማስጠንቀቂያ መልእክት ይሰማል ፣ ቡዝዘሮች ይጠፋሉ ፣ እና የማስጠንቀቂያ ምልክት ያበራል።

የተሳፋሪ ቆጣሪ - ይህ ክፍል ተሳፋሪዎችን ለመቁጠር እና ከፍተኛ አቅም ሲደርስ ማስጠንቀቂያ ለመስጠት እንዴት ቁልፍን እንደሚጠቀሙ ያስተምርዎታል።

ዋና መለያ ጸባያት:

  • ወደ ባቡር የሚገቡ መንገደኞችን ለመቁጠር አዝራርን ይጠቀማል
  • የባቡር ሐዲዱን የሙቀት መጠን ለመለየት TMP36 (የሙቀት ዳሳሽ) ይጠቀማል
  • የባቡር ጣቢያውን ለማስጠንቀቅ ቀይ የ LED መብራት ይጠቀማል
  • ማንቂያ ለማሰማት ቡዝዘሮችን ይጠቀማል
  • የጊዜ እና የሙቀት መጠን ሴራ ያለው የማስጠንቀቂያ ኢሜል ይልካል
  • በ MATLAB ላይ ብቅ-ባይ የማስጠንቀቂያ መልዕክቶች

ደረጃ 1 ቁሳቁሶች እና አቅርቦቶች

ቁሳቁሶች እና አቅርቦቶች
ቁሳቁሶች እና አቅርቦቶች
  • 1 ላፕቶፕ
  • MATLAB 2017
  • Arduino Toolbox ን ያውርዱ
  • Sparkfun RedBoard
  • 1 የኃይል ገመድ
  • ዳቦ ዳቦ
  • 14 ሽቦዎች
  • 1 Piezo Buzzer
  • 1 የግፊት አዝራር
  • 2 10k ohm resistors
  • 1 TMP36 ዳሳሽ
  • ቀይ የ LED መብራት
  • 3 ዲ የታተመ ምልክት (አማራጭ)

ደረጃ 2 የቦርድ ማዋቀር

የቦርድ ማዋቀር
የቦርድ ማዋቀር

ከላይ ያለውን ቅንብር ይከተሉ

ደረጃ 3 - ኮዱን መጻፍ

Loop በሚሉበት ጊዜ - ኮዱ የሙቀት መጠኑን መሞቱን እና የአዝራሩን ሁኔታ (የተጫነ ወይም ያልተጫነ) መሆኑን ለማረጋገጥ ፣ ኮዱን በተወሰነ የጊዜ ገደብ ውስጥ እናስቀምጠዋለን።

TMP36 ን በመጠቀም - የመቀየሪያ ምክንያቶችን በመጠቀም ቮልቴጅን በማንበብ ወደ ዲግሪ ፋራናይት በመቀየር የሙቀት መጠኑን እንወስናለን። ከዚያ ፣ የሙቀት መጠኑ ከተቀመጠው ከፍተኛ የሙቀት መጠን በላይ ከሆነ ወይም እኩል ከሆነ ቃና እና ድምጽ ለማሰማት/ማንቂያዎችን ለመላክ መግለጫን እንጠቀማለን።

አዝራር መጠቀም - በአረፍተ ነገር መግለጫ ፣ ReadDigitalPin ን በመጠቀም አዝራሩ ተጭኖ እንደሆነ መሞከር እንችላለን። ይህ ትዕዛዝ ቡሊያን (1 ወይም 0) ይመልሳል። ምላሹ 0 ከሆነ ፣ ከዚያ ቁልፉ ተጭኖ የተሳፋሪዎች ቆጣሪ ይጨምራል እና የእንኳን ደህና መጣችሁ መልእክት ያሳያል። ከዚያ ፣ ከፍተኛው አቅም ሲደርስ የማስጠንቀቂያ መልእክት ይነፋል።

ደረጃ 4 - ኮዱን ይቅዱ

%ግብዓቶች - አዝራሩን መግፋት ፣ የሙቀት ዳሳሽ

%ውጤቶች ፦ መብራቶች ፣ ቡዝዘሮች ፣ የድምፅ ማንቂያ ፣ ኢሜይሎች ፣ ግራፎች

%ዓላማ - ይህ ምርት በበረሃ ውስጥ በባቡር የሚጓዙ %ተሳፋሪዎችን ደህንነት እና ምቾት ለማረጋገጥ ለማገዝ የተነደፈ ነው።

%አጠቃቀም - የግፋ አዝራርን በመጠቀም የተሳፋሪዎችን ቁጥር መለየት ፣ እና %የሙቀት ዳሳሽን በመጠቀም ሙቀቱን መለየት እና ግራፍ አድርጎ ሁለቱንም ተሳፋሪ ቁጥሮች እና የሙቀት ግራፉን ወደ ባቡር ጣቢያ ይልካል።

configurePin (ሀ ፣ 'D2' ፣ 'pullup'); ወደፊት በሚለቀቁት ውስጥ %configurePin ን ይጠቀማሉ

ጊዜ = 200;

ሠ = 0;

x = 0

ጊዜ> 0

button_status = readDigitalPin (a, 'D2'); አዝራር ሲገፋ % % ዜሮ ነው ፣ አለበለዚያ 1 ነው

voltage = readVoltage (a, 'A0') ፤%ፒን እኛ ባስቀመጥነው ላይ ይወሰናል

tempCelcius = (ቮልቴጅ*100) -50; በአነፍናፊ ማንዋል ውስጥ %ተሰጥቷል

tempF (ጊዜ) = (tempCelcius*1.8) +32 %የታወቀ የመቀየሪያ ቀመር

ከፍተኛ = 120; %ዲግሪ ኤፍ

ይፃፉ ዲጂታል ፒን (ሀ ፣ 'D11' ፣ 1);

ሬም = ሞድ (ሠ ፣ 2);

tempF (ጊዜ)> = ከፍተኛ

ይፃፉ ዲጂታል ፒን (ሀ ፣ 'D11' ፣ 0);

ይፃፉ ዲጂታል ፒን (ሀ ፣ ‘ዲ 9’ ፣ 1);

playTone (ሀ ፣ 'D9' ፣ 2400 ፣.5)

ለአፍታ አቁም (.5)

ይፃፉ ዲጂታል ፒን (ሀ ፣ ‘ዲ 6’ ፣ 1)

playTone (ሀ ፣ 'D6' ፣ 1000 ፣.5)

ለአፍታ አቁም (.5)

ይፃፉ ዲጂታል ፒን (ሀ ፣ ‘ዲ 9’ ፣ 1);

playTone (ሀ ፣ 'D9' ፣ 2400 ፣.5)

ለአፍታ አቁም (.5)

ይፃፉ ዲጂታል ፒን (ሀ ፣ ‘ዲ 6’ ፣ 1)

playTone (ሀ ፣ 'D6' ፣ 1000 ፣.5) %“ሲረን” ይጫወታል

z = 'Overheat.m4a'; %ይህ የድምፅ ፋይሉን ወደ ተለዋዋጭ ያስቀምጣል

[ውሂብ ፣ ተደጋጋሚነት] = ኦዲዮ ንባብ (z); %መረጃን ከድምጽ ፋይል ይጭናል

o = audioplayer (ውሂብ ፣ ተደጋጋሚ); %የድምፅ ፋይሉን መጫወት ለመቆጣጠር አንድ ነገር ይፈጥራል

o.play () %የድምጽ ፋይል ያጫውታል

o.playblocking () %ፋይል ይጫወታል እና እስኪጨርስ ይጠብቃል

አበቃ

button_status == 0 && rem == 0 ከሆነ

ሠ = e+1

msgbox ('እንኳን በደህና መጡ!');

elseif button_status == 0 && rem == 1

ሠ = e+1

msgbox ('Bienvenido a bordo!'));

አበቃ

ኢ == 5 ከሆነ

ይፃፉ ዲጂታል ፒን (ሀ ፣ 'D11' ፣ 0);

x == 0 ከሆነ

playTone (ሀ ፣ 'D6' ፣ 600 ፣ 1) ፤

s = 'ማስጠንቀቂያ_EF.m4a'; %ይህ የድምፅ ፋይሉን ወደ ተለዋዋጭ ያስቀምጣል

[ውሂብ ፣ ተደጋጋሚነት] = ኦዲዮ ንባብ (ዎች) ፤ %መረጃን ከድምጽ ፋይል ይጭናል

o = audioplayer (ውሂብ ፣ ተደጋጋሚ); %የድምፅ ፋይሉን መጫወት ለመቆጣጠር አንድ ነገር ይፈጥራል

% o.play () % የድምጽ ፋይል ያጫውታል

o.playblocking () %ፋይል ይጫወታል እና እስኪጨርስ ይጠብቃል

msgbox ('ከፍተኛ አቅም')

x = x+1

አበቃ

elseif e> = 6

playTone (ሀ ፣ 'D6' ፣ 2400 ፣ 0);

አበቃ

ጊዜ = ጊዜ - 1;

% ለአፍታ አቁም (0.1);

% ከሆነ e == 5 && max (tempF)> = 120

% ጊዜ = 0

% መጨረሻ

አበቃ

ee = num2str (ሠ)

t = [1: 200];

tempF2 = fliplr (tempF);

ሴራ (t ፣ tempF2);

ርዕስ ('ጊዜ በእኛ የሙቀት መጠን')

ylabel ('ሙቀት (ኤፍ)')

xlabel ('ጊዜ (ዎች)')

saveas (gcf ፣ 'tempplot.jpg')

ደብዳቤ = '[email protected]'

የይለፍ ቃል = 'Srsora123#' '

አስተናጋጅ = 'smtp.gmail.com'

setpref ('በይነመረብ' ፣ 'SMTP_Server' ፣ አስተናጋጅ);

setpref ('በይነመረብ' ፣ 'ኢ_ሜል' ፣ ሜይል) ፤

setpref ('በይነመረብ' ፣ 'SMTP_Username' ፣ ሜይል);

setpref ('በይነመረብ' ፣ 'SMTP_Password' ፣ የይለፍ ቃል);

props = 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');

ኢሜል (ኢሜል ፣ ‹ሰላም ባቡር ጣቢያ! ይህ በባቡሩ ውስጥ ብዙ ተሳፋሪዎች አሉ› ፣ ee ፣ ‘tempplot.jpg’)

ደረጃ 5 ውጤቶች

የሚመከር: