Мазмуну:
- 1 -кадам: Температура сенсору
- 2 -кадам: Buzzer
- 3 -кадам: Оптикалык детектор/фототранзистор
- 4 -кадам: Серво
Video: EF 230: Үй системасы 3000 Инструкциялуу: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:39
Home System 3000 - бул Arduino, температура сенсору, пьезо -сигнал, оптикалык детектор/фототранзистор жана серво колдонгон, үйдүн энергия үнөмдүүлүгүн жогорулатуу жолдорун көрсөтүү үчүн түзүлүш.
1 -кадам: Температура сенсору
· Сиздин электр жана жерге зымдарды иштетүү
нон тактасынын капталындагы микро контроллер
· Температура сенсорун нан тактасына коюп, ошого жараша тийиштүү кубаттуулукту жана зымдарды өткөрүңүз
· Температура сенсорунда үч тиш бар экенин байкаңыз, ал эми ортоңку тиште "А0" портунан чыккан зым бар.
· Температура сенсорунун коду:
answer = questdlg ('arduino жана servo баштоо кодун иштетиңиз', 'жооп', 'Ok', 'Ok')
prompt = 'Баштоо үчүн каалаган баскычты басыңыз'
пауза
prompt1 = 'Минималдуу температураны коюу'
x = киргизүү (чакыруу1)
prompt2 = 'Максималдуу температураны коюу'
y = киргизүү (чакыруу2)
prompt3 = 'баштоо үчүн каалаган баскычты басыңыз'
пауза
фигура
h = анимацияланган линия;
ax = gca;
ax. YGrid = 'on';
ax. YLim = [65 85];
stop = false;
startTime = datetime ('азыр');
while ~ токтоо
% Учурдагы чыңалуу маанисин окуу
v = readVoltage (a, 'A0');
% Чыңалуудан температураны эсептөө (маалымат барагына негизделген)
TempC = (v - 0.5)*100;
TempF = 9/5*TempC + 32;
% Учурдагы убакытты алуу
t = datetime ('азыр') - startTime;
% Анимацияга упай кошуу
кошумча чекиттер (h, datenum (t), TempF)
% Окторду жаңыртуу
ax. XLim = datenum ([t-seconds (15) t]);
маалымат тандоо ('x', 'keeplimits')
тартуу
% Аялдаманын абалын текшерүү
stop = readDigitalPin (a, 'D12');
2 -кадам: Buzzer
· Зымдагы зым өтө жогорку же өтө төмөн температуранын көрсөткүчтөрүн билдирүү үчүн колдонулат
· Эч кандай зым позитивдүү колонкадан ызылдактын оң жагына өтпөйт
· Анын ордуна зымдын оң жагынан "11" деп аталган портко чейин зым өткөрүлөт.
Бул кийинчерээк жазуу түрүндөгү коңгуроонун жайгашкан жерине чалуу үчүн колдонулат.
· Коңгуроо коду:
TempF> = y болсо
дисп ("жакын эшик" ысык)
playTone (a, 'D11', 500, 1)
elseif TempF <= x
дисп ("эшикти жап, суук")
playTone (a, 'D11', 250, 1)
аяктоо
аяктоо
3 -кадам: Оптикалык детектор/фототранзистор
· Бул сенсор башкалардан айырмаланып каршылаштарды талап кылат
· Зымдарды туташтыргандан кийин сенсордун бардык төрт тиштери циклге киргизилгенин текшериңиз
· Сенсор кыймылдын өкүлү болгон жарыктын өзгөрүшүн аныктайт жана аны киргизүү катары жазат
· Оптикалык детектор/фототранзистордун коду:
ачык а
a = arduino ('/dev/tty.usbserial-DN01DVI2', 'Uno', 'Китепканалар', 'Servo');
prompt = 'Жарык деңгээлинин босогосун коюу'
z = киргизүү (чакыруу)
lightLevel = 0
lightLevel ~ = -1 болсо
lightLevel = readVoltage (a, 'A1')
эгер lightLevel> = z
answer = questdlg ('ACны өзгөрткүңүз келеби?', 'Ооба', 'Жок')
жоопту алмаштыруу
учурда "Ооба"
answer2 = questdlg ('ACны өйдө же ылдый айлантыңызбы?', 'жооп', 'Down', 'Up', 'Up')
жоопту которуу2
учурда "ылдый"
s = servo (a, 'D10');
бурч үчүн = 0:.1:.5
writePosition (s, бурч);
current_position = readPosition (s);
current_position = current_position * 180;
% servo мотордун учурдагы абалын басып чыгаруу
fprintf ('Учурдагы абал %d / n', current_position);
% кичине кечиктирүү талап кылынат, андыктан servo даректе жайгашышы мүмкүн
% бурчу ага айтылган.
тыным (2);
аяктоо
% моторду 0 бурчтук абалга келтирет
writePosition (s, 0);
ачык с
prompt = 'Улантуу үчүн каалаган баскычты басыңыз'
questdlg ('AC четке кагылды', 'жооп', 'Ok', 'Ok')
"Өйдө" иши
s = servo (a, 'D10');
бурч үчүн =.5:.1: 1
writePosition (s, бурч);
current_position = readPosition (s);
current_position = current_position * 180;
% servo мотордун учурдагы абалын басып чыгаруу
fprintf ('Учурдагы абал %d / n', current_position);
% кичине кечигүү талап кылынат, андыктан сервону жайгашкан жерге жайгаштыруу мүмкүн
% бурчу ага айтылган.
тыным (2);
аяктоо
4 -кадам: Серво
· Серво билдирет
кондиционер жана кыймыл аныктоочу кириштин чыгышы
· Бул оң зымды, жерге зымды жана "D9" портунан servoго чейинки зымды талап кылат
· Серво үчүн код:
% моторду 0 бурчтук абалга келтирет
writePosition (s, 0);
ачык с
prompt = 'Улантуу үчүн каалаган баскычты басыңыз'
questdlg ('AC күйгүзүлдү', 'жооп', 'Ok', 'Ok')
аяктоо
аяктоо
пауза
тыныгуу
аяктоо
аяктоо
*Өзгөчө эскертүү: сервонун кээ бир коддору оптикалык детектордун/фототранзистордун коду менен бириктирилген.
Сунушталууда:
Ultra-төмөн Power WiFi үй автоматташтыруу системасы: 6 кадам (Сүрөттөр менен)
Өтө төмөн Power WiFi Үйдү Автоматташтыруу Системасы: Бул долбоордо биз бир нече этапта үйдүн жергиликтүү автоматташтыруу системасын кантип курууга болорун көрсөтөбүз. Биз борбордук WiFi түзмөгү катары иштей турган Raspberry Pi колдонобуз. Ал эми акыркы түйүндөр үчүн биз IOT Cricketти батареяны иштетүү үчүн колдонмокчубуз
Түстөрдү сорттоо системасы: Arduino негизделген системасы эки кур менен: 8 кадам
Түстөрдү сорттоо системасы: Arduino негизделген эки белдемдүү система: Өнөр жай тармагындагы продукцияларды жана буюмдарды ташуу жана/же таңгактоо конвейердик линиялардын жардамы менен жүргүзүлөт. Бул курлар нерсени белгилүү бир ылдамдык менен бир чекиттен экинчи пунктка жылдырууга жардам берет. Кээ бир иштетүү же идентификациялык тапшырмалар болушу мүмкүн
EF 230 Күндү кармайт: 6 кадам
EF 230 Күндү тартып алат: Бул Нускамада шамал жана күн энергиясын алууга багытталган үй энергия системасынын прототипин түзүү үчүн Arduino комплектин/схемасын жана MATLABты кантип колдонуу керектиги кеңири баяндалат. Тиешелүү материалдар менен жана берилген кодду/орнотууну колдонуу менен сиз
UTK EF 230 MarsRoomba Project Fall 2018: 5 кадам
UTK EF 230 MarsRoomba Project Fall 2018: Учурда Марс роверлери Марстын бетиндеги маалыматтарды ар кандай ыкмалар менен чогултуу үчүн колдонулуп, планетанын микробдук жашоого болгон мүмкүнчүлүктөрү жөнүндө көбүрөөк маалыматка ээ болушат. Роверс негизинен маалымат үчүн фотография жана топуракты талдоо куралдарын колдонот
Инструкциялуу өзгөчөлүктү кантип алуу керек: 4 кадам
Инструктивдүү өзгөчөлүктөрдү кантип алуу керек?: Мен көрсөтмөлөрдү бере баштаганда жаңы нерселерди көрүп, билгендерим менен бөлүшүүнү жактырчумун, бирок мен эмне кылып жатканымды көбүрөөк адамдар көрүшүн каалачумун. Анан мен бир күнү менин көрсөтмөм өзгөчөлөнгөнүн айтып электрондук кат алдым. Мен абдан башаламан элем, ошон үчүн жылдыздуу болдум