Мазмұны:
- 1 -қадам: демо -бейне
- 2 -қадам: Бізге қажет заттар
- 3 -қадам: Бұл қалай жұмыс істейді?
- 4 -қадам: пайдаланушы интерфейсі
- 5 -қадам: істер мен артықшылықтарды қолданыңыз
- 6 -қадам: Arduino MKR WiFi 1010
- 7 -қадам: Arduino IDE
- 8 -қадам: Тұтқындау порталы
- 9 -қадам: Twilio & Things сөйлейді
- 10 -қадам: AP немесе STA режимі
- 11 -қадам: TM1637 4 биттік сандық түтіктің жарықдиодты дисплейі мен басу түймесі
- 12 -қадам: Схема
- 13 -қадам: іс
- 14 -қадам: Ардуино эскизі
- 15 -қадам: QMN
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:22
Сәлем, гендер, Қазір мен +2 -де оқимын, бұл 12 -сыныпқа тең. Мен информатикаға өте қызығамын, сонымен қатар менің негізгі пәнім. Мен енгізілген жобаларды жасауға көп уақыт жұмсадым. Мен енгізілген салада шамамен 3 жылдық тәжірибем бар. Мен әрқашан инновациялық және әр түрлі шешімдерге назар аударамын. Бұл жобаны жасауға ата -анам үлкен қолдау көрсетті.
Байқаудың негізгі тақырыбы-қолдарсыз шешімдерді құру.
Мұнда мен QMN (кезекті басқару түйіні) деп аталатын құрылғыны жасаймын, ол виртуалды таңбаны жасай алады және осылайша виртуалды кезекті сақтай алады.
Белгілі бір кезектерде біз есептегіштен сізге қауіп төндіретін физикалық белгілерді алуымыз керек. Осы виртуалды таңбалауыштарды қолдану арқылы сіз бұл қауіптен аулақ бола аласыз. Сіз смартфоннан виртуалды белгілерді аласыз. Таңбалауыш толығымен қолдарсыз.
Бұл Arduino MKR WiFI 1010 арқылы жұмыс істейтін қарапайым қолданушыға арналған виртуалды кезек жасаушы.
1 -қадам: демо -бейне
Бұл туралы білу үшін демонстрациялық бейнені қараңыз.
2 -қадам: Бізге қажет заттар
Аппараттық компоненттер
- Arduino MKR WiFi 1010 x 1
- Басу түймесі модулі x 1
- TM1637 4 биттік сандық түтік жарықдиодты дисплей модулі x 1
-
Секіргіштер x 1
Бағдарламалық қамтамасыз ету компоненттері
- Arduino IDE
- Twilio SMS API
- ThingSpeak API
Құралдар
- Сымды тазартқыш және кескіш x 1
- Дәнекерлейтін темір x 1
- Дәнекер x 1
3 -қадам: Бұл қалай жұмыс істейді?
Кезекті басқару түйіні (QMN) - бұл ақылды белгілер жасайтын құрылғы. Ақылды таңбалауыштар жасау үшін адам Arduino MKR 1010 wifi диапазонында болуы керек. Процесті аяқтау үшін адамға смартфон қажет. Жұмыс процесі келесідей болады …
- WI-FI кіру нүктесін Arduino MKR 1010 құрады.
- Белгі алғысы келетін адамға телефонды кіру нүктесіне қосу керек, ол жергілікті хостқа бағытталады.
- Бұл бетте адам өзінің телефон нөмірін енгізуі керек. Осы сәтте оны тексеру үшін ОТП тиісті нөмірге жіберіледі. Телефон нөмірі хабарлау үшін әдейі алынған.
- Телефон нөмірін тексергеннен кейін, таңбалауыш жергілікті хостта көрсетіледі.
- Кезек келгенде, құрылғы (QMN) мүдделі адамға өз кезегін алу үшін хабарлама жібереді.
Бұл құрылғы адамдардан сұранысты қабылдап, оларға ақылды белгілерді береді. Хабарды жіберу үшін біз QMN құрылғысында Twilio SMS API қолданамыз. Turn туралы хабарламаны QMN түймешігін басу арқылы жіберуге болады.
Барлық таңбалауыштар шақырылған кезде, Arduino MKR WiFi 1010 қалпына келтіру түймесін басу арқылы жадты тазартуға болады.
4 -қадам: пайдаланушы интерфейсі
*) Кіру нүктесіне қосылған кезде, сіз бірінші бетке қайта бағытталасыз.
*) Телефон нөмірін жібергеннен кейін сіз осы нөмір бойынша ОТП аласыз. Содан кейін ол сіздің OTP нөміріңізді енгізу үшін OTP бетін көрсетеді.
*) Сіз дұрыс OTP жіберген кезде, сіз осы таңбалауыш бетінде таңбаны аласыз.
*) Егер сіз қате OTP енгізсеңіз, онда ол жарамсыз OTP көрсетеді.
*) Егер сіздің нөміріңіз таңбалауышты алған болса, ол сізге тіркелгеніңізді хабарлайды.
Мұның бәрі пайдаланушы интерфейсі туралы.
Мен HTML туралы көп білмеймін. Менің әкем бұл беттерді CSS көмегімен тартымды етті.
5 -қадам: істер мен артықшылықтарды қолданыңыз
Оны ауруханалар, дүкендер мен қонақүйлер сияқты кез келген жерде қолдануға болады.
Артықшылықтары
- Токендерді алу үшін интернет байланысы қажет емес
- Қолдануға ыңғайлы қарапайым интерфейс.
- Кезек келгенде туған құрылғы туралы хабарландыру.
- Физикалық белгілер жоқ.
- Іске асыру оңай.
- Қажет емес күту уақыты жоқ, сіздің кезегіңіз келгенде көрсетіңіз.
6 -қадам: Arduino MKR WiFi 1010
Құрылғының миы-Arduino MKR WiFi 1010. Бұл IoT пен пико-желілік қосымшалардың негізгі дизайнына кірудің ең оңай нүктесі. Тақтаның негізгі процессоры Arduino MKR тобындағы басқа тақталардағыдай төмен қуатты Arm® Cortex®-M0 32 биттік SAMD21 болып табылады. WiFi және Bluetooth® байланысы u-blox, NINA-W10 модулімен орындалады.
Бұл құрылғы Arduino MKR WiFi 1010 WiFi қосылымына толығымен сүйенеді. Құрылғы Wi -Fi модулінің AP (Acces Point) режимін де, STA (Station) режимін де қолданады. Құрылғы дұрыс жұмыс жасау үшін құрылғы осы режимдер арасында ақылды түрде ауысады.
7 -қадам: Arduino IDE
Arduino IDE мұнда Arduino MKR WiFI 1010 бағдарламалау үшін қолданылады. Құрылғыны бастау үшін мына жерден қараңыз. Arduino MKR wifi 1010 бағдарламалау үшін соңғы Arduino IDE пайдаланыңыз. Бағдарламалауға кіріспес бұрын құрылғы үшін микробағдарламаның соңғы жаңартылғанын тексеріңіз. Микробағдарламаны қалай жаңарту керектігін білу үшін мына жерден қараңыз.
8 -қадам: Тұтқындау порталы
Біз шын мәнінде Arduino MKR WiFI 1010 арқылы кіру нүктесін (AP) құрамыз, кез келген құрылғыны (ұялы) осы кіру нүктесіне қосуға болады. Бұрын веб -интерфейске кіру үшін адамға браузерге IP мекенжайын немесе хост атауын енгізу қажет. Бұл мүлдем жақсы, бірақ пайдаланушы IP немесе хост атауын браузерге қолмен қоюы керек. Бұл шынымен біртүрлі нәрсе. Бірақ бұл жағдайда QMN -ге қосылатын құрылғы автоматты түрде Captive Portal арқылы веб -интерфейске бағытталады. Мұнда Тұтқындау порталы қолданушының күш -жігерін төмендетуде үлкен рөл атқарады. Espressif құрылғылары бар көптеген Captive Portal жобалары бар, өкінішке орай NINA кітапханасы жоқ. Себебі MKR WiFi 1010 NINA кітапханасын пайдаланады. Ақырында, мен Arduino хабында Captive Portal -ды JayV -тің негізгі заттары ретінде қолданатын жобаны таптым, содан кейін мен оны негізгі код ретінде қабылдаудан бастадым. Ол дерлік жақсы жұмыс істейді.
Іс жүзінде біз DNS орнатамыз және кіру нүктесін (AP) - IP мекенжайын иеленеміз және UDP 53 порты арқылы бірінші (16) DNS сұрауларын тексереміз. Алғашқы 16 сұранысты тексергеннен кейін біз DNS сұрауларына жауап жібереміз. меншікті кіру нүктесінің қайта бағытталатын IP мекенжайымен. Содан кейін телефон веб -браузерлер арқылы веб -интерфейсті автоматты түрде жүктейді. Белгілі бір кіру нүктесіне қосылған құрылғы телефон веб -интерфейсті автоматты түрде жүктегенде соңғы әсер осылай болады. UDP сервері мен веб -сервер бір уақытта жұмыс істейді. Веб -сервер - телефон нөмірін енгізуге арналған форма түймесі бар қарапайым басты бет.
9 -қадам: Twilio & Things сөйлейді
Өкінішке орай, менде хабарларды жіберетін GSM модулі жоқ. OTP және құрылғы туралы хабарландыру жіберу үшін бізге кез келген SMS API қолдану қажет. Бұл жобада мен тапсырманы орындау үшін Twilio SMS API қолдандым. Біз білетіндей, API жұмыс істеуі үшін біз серверге HTTP сұранысын беруіміз керек. Алдымен мен Twilio -ға шифрламай -ақ қалыпты HTTP сұрауын бердім, бірақ Twilio менің өтінішімді ескермеді. Қауіпсіздікті қамтамасыз ету үшін оларға SSL саусақ іздері қажет. Мен NINA кітапханаларында осы SSL -ді қолдайтын функцияларды көрмедім. Мен Twilio -ны іске қосу үшін Thingsspeak қолдандым. Бұл қызметтерді пайдалану үшін екі платформада да тіркелу қажет.
Twilio -да жаңа нөмір жасаңыз, бұл сіз жіберген нөмір болады. Хабар алмасу үшін сіз Twilio -да ақысыз несие аласыз. Сынақ тіркелгісі үшін сіз деректерді жібергіңіз келетін нөмірлерді растауыңыз керек.
Thingspeak.com сайтына өтіп, қолданбаларды, содан кейін ThingHTTP, содан кейін New ThingHTTP түймесін басыңыз. Бұл сізді орнату бетіне апарады. Twilio бақылау тақтасының бетінде Twilio есептік жазбасының SID идентификаторын табу қажет болады.
- Twilio SMS жіберу атауын беріңіз
- URL-https://api.twilio.com/2010-04-01/Accounts/YOUR TWILIO ACCOUNT SID/SMS/Messages
- HTTP аутентификация пайдаланушы аты - бұл сіздің TWILIO есептік жазбаңыздың идентификаторы
- HTTP растау құпия сөзі - сіздің TWILIO AUTH TOKEN
- POST әдісін орнатыңыз
- Мазмұн түрі-application/x-www-form-urlencoded
- Тақырыптарды жою түймесін басыңыз және хостты бос қалдырыңыз
- Негізгі = Кімнен = YOUR TWILIO NUMBER & To = %% number %% & Body = %% хабарлама %%
Save ThingHTTP түймесін басыңыз. ThingHTTp API кілті Arduino эскизінде болуы керек.
10 -қадам: AP немесе STA режимі
Nina модулі бар барлық Arduino тақталары бір уақытта бір рөл атқарады, яғни станция режимі немесе кіру нүктесі режимі. Біз жұмысты орындау үшін осы режимдер арасында үнемі ауысуымыз керек. Біріншіден, QMN нөмірді алғаннан кейін AP режимінде болады, ол OTP жіберу үшін STA режиміне ауысады. OTP жібергеннен кейін QMN қайта қосылу режиміне ауысады. Егер адам батырманы басса, QMN SMS хабарлама беру үшін STA режиміне ауысады. Осыдан кейін ол AP режиміне оралады. Интернетке қосылу үшін біз QMN -ді STA режиміне ауыстырамыз. SMS API интернет байланысын қажет етеді.
11 -қадам: TM1637 4 биттік сандық түтіктің жарықдиодты дисплейі мен басу түймесі
TM1637 4 биттік сандық түтік жарықдиодты дисплей модулі - бұл енгізілген жобаның шығыс деректерін көрсетуге арналған қол жетімді шешім. Көрсетілетін деректер сандармен шектелсе де, бұл пайдаланушыларға A, B, C және т.б. сияқты кейіпкерлерді көрсетуге мүмкіндік береді. Ағымдағы токен нөмірі 4 биттік жеті сегментті жарық диодында көрсетіледі. Бұл 7 сегментті жарықдиодты Dsiplay 4 цифрдан тұрады, оларды TM1637 драйвер чипі басқарады. Бұл TM1637 4 биттік сандық түтік жарықдиодты дисплей модулін басқару үшін тек екі қосылым қажет. Бұл дисплейге қарап, кез келген адам Token нөмірін оңай түсінеді. Бұл құрылғының нақты қолданылуы.
Бұл модульмен жұмыс істеу үшін сізге TM1637Display.h деп аталатын кітапхана қажет. Осы жерден кітапхананы жүктеп алыңыз.
Мұнда батырмалар таңбалауыштарды шақыру үшін қолданылады. Мен түйме модулін қолдандым, сондықтан оны біріктіру өте оңай. Мұнда басу түймесі төмен түсіру режимінде. Сондай -ақ, резистор мен басу түймесі бар модульді оңай жасауға болады.
12 -қадам: Схема
Схема өте қарапайым, ол күрделі аппараттық құралдардан тұрмайды. Тек схемаға сәйкес қосылыңыз. Алдымен мен тақтаның схемасын жасадым. Содан кейін мен секіргіштермен сымды жалғадым.
13 -қадам: іс
Мен бұл жағдайды жергілікті дүкеннен алдым. Мен жетонды көрсету үшін жеті сегментті көрсету үшін алдыңғы жағында кішкене бөлікті кесіп алдым. Мен сондай-ақ бүйірден екі бөлікті жыртып алдым, біреуі түймеге, екіншісі USB кабеліне арналған. Түйінге күш беру үшін. Бұл жағдай өте қолайлы, барлық компоненттер өте жақсы орналастырылған.
14 -қадам: Ардуино эскизі
Интерфейсте көрсетілген барлық HTML беттері Arduino MKR WiFi 1010 флэш -жадында сақталады. Оны сақтау үшін мен PROGMEM утилитасын қолдандым.
PROGMEM - pgmspace.h кітапханасының бөлігі. Ол IDE -дің заманауи нұсқаларына автоматты түрде қосылады. Алайда, егер сіз IDE нұсқасын 1.0 (2011) төменде қолдансаңыз, сізге алдымен кітапхананы нобайдың жоғарғы жағына қосу қажет:
#қосу.
PROGMEM бір айнымалыға қолданылуы мүмкін болғанымен, егер сізде массивте әдетте оңай сақталатын мәліметтердің үлкен блогы болса, онда бұл шынымен де әуре болады. Бізде үлкен деректер блогы бар, сондықтан біз бұл үшін барамыз.
Барлық HTML файлдары «source.h» қойындысында сақталады. Бұл жобаның толық кодын мына жерден табуға болады. Бұл кодты Arduino құрылғысына жүктеңіз.
15 -қадам: QMN
Құрылғының соңғы көрінісі. Құрылғы пайдалануға дайын. Оны USB кабелімен қосыңыз және ләззат алыңыз!
«Бұған қол жеткізу мүмкін емес» отбасылық сайысында екінші орын
Ұсынылған:
DIY 37 Leds Arduino рулетка ойыны: 3 қадам (суреттермен)
DIY 37 Leds Arduino рулетка ойыны: Рулетка - бұл кішкентай дөңгелекті білдіретін француз сөзімен аталған казино ойыны
Ковидтік қауіпсіздік дулыға 1 -бөлім: Tinkercad схемаларына кіріспе: 20 қадам (суреттермен)
Covid Safety дулыға 1 -бөлім: Tinkercad схемаларына кіріспе !: Сәлеметсіз бе, дос! Бұл екі бөлімнен біз Tinkercad схемаларын қалай қолдануға болатынын білеміз - бұл схемалардың қалай жұмыс істейтінін білуге арналған көңілді, қуатты және білім беру құралы! Оқудың ең жақсы әдістерінің бірі - бұл жасау. Сонымен, біз алдымен өзіміздің жеке жобамызды жасаймыз: th
Arduino басқарылатын робот - екі қадам: 13 қадам (суреттермен)
Arduino басқарылатын роботты екіжақты: Мен әрқашан роботтарға қызығатынмын, әсіресе адамның іс -әрекетіне еліктеуге тырысатын. Бұл қызығушылық мені жаяу жүруге және жүгіруге еліктей алатын екіжақты робот құрастыруға және дамытуға талпындырды. Бұл нұсқаулықта мен сізге көрсетемін
Arduino Uno көмегімен акустикалық левитация Қадамдық қадам (8 қадам): 8 қадам
Акустикалық левитация Arduino Uno Қадамдық қадаммен (8-қадам): ультрадыбыстық дыбыс түрлендіргіштері L298N Dc әйелдер адаптерінің ток көзі еркек тоқ сымымен Arduino UNOBreadboard Бұл қалай жұмыс істейді: Біріншіден, сіз кодты Arduino Uno-ға жүктейсіз (бұл сандық жүйемен жабдықталған микроконтроллер) және кодты түрлендіру үшін аналогтық порттар (C ++)
Болт - DIY сымсыз зарядтау түнгі сағаты (6 қадам): 6 қадам (суреттермен)
Болт - DIY сымсыз зарядтау түнгі сағаты (6 қадам): Индуктивті зарядтау (сымсыз зарядтау немесе сымсыз зарядтау деп те аталады) - сымсыз қуат беру түрі. Ол портативті құрылғыларды электрмен қамтамасыз ету үшін электромагниттік индукцияны қолданады. Ең көп таралған қолданба - Qi сымсыз зарядтау