Мазмұны:

Мульти-таймер W/ Сыртқы басқару: 13 қадам
Мульти-таймер W/ Сыртқы басқару: 13 қадам

Бейне: Мульти-таймер W/ Сыртқы басқару: 13 қадам

Бейне: Мульти-таймер W/ Сыртқы басқару: 13 қадам
Бейне: Leslie Kean on David Grusch (UFO Whistleblower): Non-Human Intelligence, Recovered UFOs, UAP, & more 2024, Қараша
Anonim
Мульти-таймер W/ Сыртқы басқару
Мульти-таймер W/ Сыртқы басқару

Instructable жобасы - бұл көп функциялы Таймердің құрылымы

Бұл таймер келесідей жұмыс істей алады:

  1. Таңдау уақыты 1 секундтан +90 сағатқа дейінгі жалпы мақсаттағы дабыл. Дыбыстық дабылмен және/немесе сыртқы құрылғыны басқарумен аяқталғанға дейін кері санақтың болуы, содан кейін дабылдан кейінгі уақыттың кері көрсеткіші.
  2. Таңдаудың 7 уақыты, кері санау және аяқталған кезде дабыл бар ұйқы таймері.
  3. Медитация таймері 4 таңдалатын уақытпен, кері санаумен және қысқа шірікпен аяқталғаннан кейін, 5 минуттан кейін басқа шырылдаумен есептеледі.

Бұл жоба эфирді осында сипатталғандай құрастырылуы немесе сәйкесінше өзгертілуі мүмкін. Мен бұрын осы функционалдығы бар таймер құрдым және оны ультрафиолет сәулесінің әсер ету қорапшасын басқаруға арналған бірінші нұсқаулықта қолдандым.

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

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

1 -қадам: Жабдық элементтеріне шолу

Құрылғы 4 AAA батареясымен жұмыс істейді және Arduino Pro Mini 5V арқылы басқарылады.

Кішкене дыбыстық сигнал/динамик дыбыстық дабылды қамтамасыз етеді.

Шағын 5В релесі сыртқы құрылғыларды басқару кернеуін қамтамасыз етеді. Бұл басқару кернеуінің шығу көзінде икемділік қамтамасыз етілген.

Басу түймесі бар айналмалы кодер мәзірді таңдауды қамтамасыз етеді.

OLED дисплейі және бір сәтте іске қосу/тоқтату қосқышы пайдаланушы интерфейсін толықтырады.

Қосымша электрондық жабдық SPDT қуат қосқышынан және сыртқы құрылғыларға қосылу үшін шағын телефон ұясынан тұрады.

Сонымен қатар, бұл жобада сізге көмектесетін файлдар ұсынылады:

3D басып шығарылған жоба қапшығына арналған STL файлдары.

Басқару схемасы мен айналмалы кодерді өңдеу мен өңдеуге арналған мыс пен дәнекерленген маска суреттері.

Схемалық және тақтадағы суреттер менің дизайнымды өзгерткісі келетіндерге сілтеме ретінде.

Сіз менің тақтаны қалай жасау керектігін көрсететін мысал ретінде екі жақты тақталар жасау жөніндегі нұсқаулықты қарастырғыңыз келуі мүмкін.

2 -қадам: Бағдарламалық қамтамасыз етуге шолу

Arduino бастапқы файлдарымен бірге пайдалы болуы мүмкін кейбір қосымша ақпарат.

Аппараттық құралдарды басқару кітапханалары қол жетімді болған кезде қолданылады (түймелерді өшіру, OLED басқару, айналмалы кодерді оқу).

Бағдарлама цикл функциясында коммутатор операторы ретінде кодтың орындалуын бақылау үшін қарапайым ақырлы күй машинасын (FSM) енгізеді.

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

Кіріс тікелей сұрау арқылы жүзеге асады (үзіліссіз), себебі уақыт маңызды емес және кодты түсінікті етеді.

Serial -ге басып шығару мәлімдемелері кодтың орындалуын бақылауға және жөндеуге көмектеседі

Бағдарлама құрылымының әр түрлі элементтері:

  • Аппараттық басқарудың кейбір функциялары мен айнымалыларын оқшаулауға арналған бірнеше код қойындылары.
  • Мемлекеттік мәнді (FSM) және басқару айнымалыларын орнату үшін операторларды ауыстырыңыз.
  • Құрылымның анықтамасы
  • Мәтін ретінде мемлекеттік мәндерді тағайындауға мүмкіндік беретін тізімдер.
  • #аппараттық түйреуіш пен стандартты мәндер үшін процессорға дейінгі анықтамаларды анықтаңыз.

3 -қадам: Бөлшектер тізімі

Қоршауды жасаңыз
Қоршауды жасаңыз

Мен бұл қадамды қайда қою керектігін білмедім, өйткені оны кез келген уақытта жасауға болады. Мен 3D басып шығарылған қорапты қолдандым. Сізде 3D принтері жоқ немесе сіз алюминий қорап, лазермен кесілген пластик, қолмен ойылған ағаш немесе электронды жобалар үшін пайдаланылатын басқа қоршау түрін қалауыңыз мүмкін. Мен STL файлдарын жоғарғы, төменгі, айналмалы кодер тұтқасы мен OLED панеліне қостым. Принтерге gcode файлдарын жасау үшін осы файлдарды және өзіңіз қалаған кескішті пайдаланыңыз.

Мен барлық бөліктерді PLA жіппен басып шығарамын, жоғарғы және төменгі корпустың бір түсі, тұтқа мен жақтаудың контрастын бір бөлігі (ол жоғарыдан жабыстырылған.) Мен барлық кескіш параметрлерін көрсетпеймін, бірақ Tri пайдаланыңыз. -Бұрандалы бұрандаларды басуға мүмкіндік беретін алтыбұрышты толтыру кемінде 35% және оқылатын әріптер үшін «тірек жоқ». Мен қорапты принтерлерімнің көмегімен «қалыпты» қабат биіктігін басып шығардым.

9 -қадам: Дизайн және жазу коды

Бұл қадам міндетті емес, бірақ жақсы түсіну үшін ұсынылады.

Сағат бойынша күш -жігердің негізгі бөлігі - кодты жазу. Қосылған бағдарламаны -is ретінде қолдансаңыз, бұл қадамды өткізіп жіберуге болады. Дегенмен, сіздің қажеттіліктеріңізді қанағаттандыру үшін кодты жақсырақ түсіну немесе өзгерту үшін шолу жасауға уақыт бөлу ұсынылады.

Келесі түсініктемелер бұл процесті түсінуге көмектесуі мүмкін.

  • Түсініктемелер - Сіз бара жатқанда кеңінен түсініктеме беріңіз - мен кодты жазар алдында түсініктемелерді жиі жазамын.
  • Бөлу және жеңу - синтаксисті тексеру үшін функцияларды, сыныптарды және модульдерді (қойындыларды) пайдаланыңыз. Жөндеу - ағын мен тест мәндерін және аппараттық интерфейстерді тексеру үшін басып шығару мәлімдемелерін пайдаланыңыз. Мәселелерді шешуден қорықпаңыз, ешкім қатесіз код жазмайды!
  • Тұрақтылар - #define алдын ала компилятор нұсқаулары пин сандарына ат қояды. Түсініктемелері бар тұрақты айнымалы анықтамалар «Сиқырлы» сандарды азайтады немесе жояды. Бағдарламаның немесе функцияның басында орналасқан тұрақтыларды қолдану кодты қайта жазбай параметрлерді өзгертуге мүмкіндік береді
  • Алдын ала анықталған кітапханалар - алдын ала анықталған кітапханаларды қолдану бағдарламалау жүктемесін және жөндеу уақытын қысқартады.
  • Дизайн блоктары - функцияларды қолдану арқылы жасалған, кодты бөлек қойындыларда (байланысты бағдарламалар мен.hfiles), санақтарда, сыныптар мен құрылымдарда оқшаулау. Кодтың қалған бөлігіне қатысты қалай жұмыс істейтінін түсіну үшін әрқайсыңызға назар аударыңыз.
  • Мемлекеттік машиналар - бұл Arduinos -пен немесе шығуды басқаруға немесе кірісті реакциялауға арналған кез келген бағдарламалармен жақсы жұмыс істейтін бағдарламалау үлгісі. Мемлекеттік машиналардың бірнеше дәмі бар. Бұл код цикл функциясындағы switch операторына негізделген күй машинасын қолданады. Бұл пішінді түсіну және жөндеу оңай.
  • Дисплей мен мәзірлер - OLED шығысы әр түрлі, бірақ кездейсоқ пайдаланушылар үшін жеткілікті кері байланыс береді және опцияны таңдауды қолдайды. Ол мемлекеттік машинамен жақсы үйлеседі (барлық штаттарда OLED экраны бар). Меню класы мәзір опцияларын көрсету және таңдау үшін кодты бөліп алуға көмектесті

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

10 -қадам: Бағдарламаны орнатыңыз

Қосылған файлды компьютерге көшіріңіз, содан кейін оны эскиздер каталогына ашыңыз

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

11 -қадам: Таймерді жинаңыз

Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз
Таймерді жинаңыз

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

  1. OLED және кабель
  2. Қосу/тоқтату қосқышы мен сым
  3. Айналмалы кодер мен кабель
  4. Динамик / дыбыстық сигнал және сымдар
  5. Сыртқы басқару ұясы мен сымдар
  6. Қосу/өшіру сырғытпасы мен сымдар (қосылу қалаған бағытта болуы үшін бағдарды екі рет тексеріңіз

Егер сіз кабельдерді электр тізбегіне тікелей дәнекерлейтін болсаңыз, сымның үзілуін азайту үшін барлық бөліктер корпусқа бекітілгеннен кейін жасаңыз. Тақтаны артқы жағына бұрамас бұрын кабельдер негізгі тақтаға қосылғанша күту керек.

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

Корпустың төменгі жағы жоғарғы бұрышқа 4-40 дөңгелек басы бар бұрандалар арқылы қосылады, әр бұрышта. Үстіңгі жағындағы төрт тесікті 4/40 шүмегімен бұрап алу керек немесе 4-40 бұрандалы кірістіруді қолдансаңыз, оларды қабылдау үшін тесіктерді бұрғылау қажет болады. Негізгі тақтаны түбіне бекітуге арналған 4 тесікті де бұрғылау қажет. Бұл тақтаны батарея бекітпесіне бекітіп, тесіктердің орнын белгілеңіз. Бекіту бұрандаларына сәйкес бұрғылау.

12 -қадам: Интеграциялық тестілеу

Интеграциялық тестілеу
Интеграциялық тестілеу
Интеграциялық тестілеу
Интеграциялық тестілеу
Интеграциялық тестілеу
Интеграциялық тестілеу

Ақырғы (интеграциялық) тестілеу мәзірдің барлық опцияларын қолданып, олардың аппараттық құралмен жобаланғандай жұмыс жасайтынын тексеру арқылы жүзеге асады. Мен берген код үшін бұл жеткілікті. Егер сіз өзіңіздің жеке кодты жазсаңыз немесе минаны өзгертсеңіз, сіздің тестілеуіңіз кеңірек болуы керек. Мен барлық уақытты таңдау керек деп ойламаймын, бірақ сіз дабылдың барлық стандартты опцияларын қолданып, ұйықтау мен медитация дабылдарының жобаланғанын тексеруіңіз керек.

13 -қадам: Қорытынды ойлар

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

Бұл жобаны қарағаныңыз және/немесе құрғаныңыз үшін рахмет.

Ұсынылған: