Мазмұны:

Arduino көмегімен күн шығатын дабыл: 9 қадам (суреттермен)
Arduino көмегімен күн шығатын дабыл: 9 қадам (суреттермен)

Бейне: Arduino көмегімен күн шығатын дабыл: 9 қадам (суреттермен)

Бейне: Arduino көмегімен күн шығатын дабыл: 9 қадам (суреттермен)
Бейне: 7 projects Build LED LCD Alarm Clock using DS1307 with Arduino | Lesson 105 2024, Қараша
Anonim
Image
Image
Arduino көмегімен күннің шығатын оятқышы
Arduino көмегімен күннің шығатын оятқышы

Қыс қайғылы болуы мүмкін. Сіз ояндыңыз, қараңғы, сіз төсектен тұруыңыз керек. Сіз естігіңіз келетін соңғы нәрсе - оятқыштың шырылдаған дыбысы. Мен Лондонда тұрамын және таңертең ояну маған қиынға соғады. Сонымен қатар, мен табиғи жарықтан оянуды сағынамын.

Бұл оқулықта біз күннің шығатын дабылын құрамыз. Бұл кез келген басқа сағат сияқты, сіз оятқыңыз келетін сағатты және минутты орната аласыз, бірақ жарықтың көмегімен жатын бөлмеңізді күннің шығуы сияқты жарықтандырып, табиғи түрде ояту үшін.

Нарықта шығатын лампалар бар, бірақ олар қымбат болуы мүмкін (Amazon-да жылдам іздеу 100 фунт стерлингтегі өнімдерді қайтарады), нәзік және клиникалық көрінеді. Біз әлдеқайда арзан және әлдеқайда жақсы нәрсені жасаймыз.

Барлық бөліктер келесі қадамда тізімделеді. Кодты менің Github репо алтын-шығыс сағатынан жүктеуге болады. Істің барлық схемалары мен құрастыру файлдарын осы оқулықта жүктеуге болады.

Барайық:)

Егер сізде қиындықтар туындаса немесе сәлем айтқыңыз келсе, маған [email protected] жолын қалдырыңыз немесе мені Instagram желісінде @celinechappert қадағалаңыз.

1 -қадам: Компоненттерді жинау

Компоненттерді жинау
Компоненттерді жинау

Бастау үшін біз күнді шығуды модельдеу үшін сағатты кіріс ретінде және ультра жарық диодты шығыс ретінде қолданатын боламыз.

Схеманы құру үшін бізге қажет:

- сағат. Біз DS3231 RTC (5 фунт стерлинг) қолданамыз.

- жарықтың жарықтығын басқаратын MOSFET (£ 9)

- өте жарық LED (1 фунт стерлинг)

- жарықдиодты қосу үшін 9В батарея (3 фунт стерлинг)

- оңай жинауға арналған тақта (3 фунт стерлинг)

- Arduino Uno (20 фунт стерлинг)

- түйме (міндетті емес - тек демонстрациялық мақсаттар үшін)

Жалпы бағасы = 41 фунт

Егер сізде үйде Arduino, нан тақтасы мен 9В батарея болса, онда бүкіл жоба сізге 15 фунт стерлингке жетеді.

Акрил қаптамасын жасау үшін сізге қажет:

- 0,3 мм Perspex акрилді парақтарының 2 парағы, күн мен корпустың түсі үшін 1 парақ.

- лазерлік кескішке қол жеткізу.

Мен өз мектебімнің шеберханасына кіргеніме қуаныштымын, сондықтан бұл шығындар көбіне жабылды. Мен қосымша акрил парағын сатып алдым, себебі менің дизайным үшін күн үшін қызғылт сары түс қажет болды, бағасы 14 фунт/парқа (Perspex қымбат!).

2 -қадам: тізбекті жинау

Image
Image
Тізбекті жинау
Тізбекті жинау
Тізбекті жинау
Тізбекті жинау

Сіз менің тізбегімнің ақ -қара эскизіне (былықты кешіріңіз) және Arduino (Fritzing көмегімен жасалған) схемасына сілтеме жасай аласыз.

Негізінде бұл немен байланысты екенін бөлу:

Сағат:

(-) GND-ге қосылады

NC «Қосылмаған» дегенді білдіреді және ештеңеге қосылмайды

C/SCL Arduino A5 түйреуішіне қосылады

D/SDA Arduino A4 түйреуішіне қосылады

(+) Arduino 5В қосылады

MOSFET

Gate пині Arduino Uno -да ~ 9 түйреуішке ауысады, себебі бұл PWM

Су төгетін түйреуіш жарық диодтың теріс жағына өтеді

Бастапқы түйін Arduino -дағы GND -ге өтеді

ЖАРЫҚ ДИОДТЫ ИНДИКАТОР

Теріс жағы MOSFET -тегі су төгетін істікке қосылған

Позитивті жағы тақтада 5В қосылады

9В батарея

(+)-нан тақтасында (+), (-) сияқты.

Ардуино Уно

Нан тақтасында 5В-тан (+) және GND-ден (-) қосуды ұмытпаңыз. Нан тақтасының бір жағындағы (-) екінші жағындағы (-) қосуды ұмытпаңыз.

Келесіде біз DS3231 кітапханасының көмегімен сағатты орнатамыз.

3 -қадам: сағатты орнату және орнату

Сағатты орнату және орнату
Сағатты орнату және орнату
Сағатты орнату және орнату
Сағатты орнату және орнату
Сағатты орнату және орнату
Сағатты орнату және орнату

Мен осы сағатты іске қосу үшін пайдаланатын кітапхананы Rinky-Dink Electronics-тен табуға болады (жоғарыдағы скриншоттар). Сілтемені нұқыңыз және DS3231 бетінде екеніңізге көз жеткізіңіз. ZIP файлын жүктеп алыңыз, сақтаңыз және Arduino /libraries қалтасына қойыңыз.

Сағатқа дұрыс уақытты орнату үшін Arduino бағдарламасын ашып, Examples/DS3231/Arduino/DS3231_Serial_Easy бөліміне өтіңіз.

Кодтың үш жолын ажыратыңыз (скриншотта қызғылт сары түспен көрсетілген), сол үш код жолындағы уақытты және орынды әскери форматта тексеріңіз.

Жүктеу түймесін басыңыз.

Енді сіз осы үш жолды ажыратып, Жүктеу түймесін қайта басуға болады.

Сериялық мониторды ашып, уақыттың дұрыстығын тексеріңіз.

Біздің сағат орнатылды! Бізде схема бар, енді кодтауды бастайық. Тағы да репо Github -да қол жетімді.

4 -қадам: кодтау

Image
Image

Кодты жүктеп, DS3231 кітапханасының дұрыс орнатылғанын тексеріңіз.

Алдымен біз параметрлерді анықтағымыз келеді.

fadeTime - бұл жарық 0 -ден максималды жарықтыққа дейін қанша минутқа сөнеді. setHour/setMin біз оянғымыз келетін уақытқа сәйкес келеді (ескерту: бұл әскери форматты оқиды, сондықтан 24 сағат уақыт қажет). Біз сондай -ақ Arduino -дағы 9 -пинді OUTPUT ретінде анықтаймыз.

Орнату кезінде () SerialBegin нөмірінің (мұнда 96000 бер) сериялық монитор нөміріне сәйкес келетініне көз жеткізіңіз.

Циклда (), if операторы ояту уақыты келгенін тексереді. Код цикл бойынша жұмыс істейді, әр сағат бойынша қайтарылған сағат пен минут мәндерінің біздің setHour/setMin айнымалыларына сәйкес келуін тексереді. Егер бұлай болса, if операторы белсенді () функциясын қайтарады.

Active () функциясы екі бөліктен тұрады. Алдымен біз жарықты біртіндеп сөндіре бастаймыз: fadeTime -дің «ерте» кезеңінде жарық диодтың тым тез жарқырап кетуіне жол бермеу үшін кешіктіру функциялары осында. Содан кейін for циклы fadeTime -ге байланысты жарықтың жарқырайтын және жарқырайтын жылдамдығын бақылайды. Ақырында, analogWrite () функциясындағы жарықдиодты шамамызға 0 мәнін беру арқылы жарықты өшіреміз.

Жоғарыдағы бейнеде акрил қаптамасының прототипінің бірінде жұмыс істейтін схема көрсетілген.

5 -қадам: картоннан жасалған прототип (міндетті емес)

Картон прототипі (міндетті емес)
Картон прототипі (міндетті емес)
Картон прототипі (міндетті емес)
Картон прототипі (міндетті емес)

Бұл жобаға дейін мен ешқашан лазерлік кескішпен жұмыс жасамаған едім. Картоннан жасалған прототипті жасау объектінің нақты кеңістікте қаншалықты жақсы көрінетінін (өлшемі, келбеті және т.б.) тексере отырып, машинамен танысуға мүмкіндік берді. Жүктеу үшін іс жоспарлары.

Ұсынылған: