Мазмұны:
Бейне: 1.50м әлеуметтік қашықтықтағы таспа шарасы: 3 қадам (суреттермен)
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:23
Бұл құрылыста мен қашықтығы 1,5 м болған кезде өлшеу үшін тұрақты рулетканы бейімдеймін. Мен содан кейін «бір жарым метр» деп айтамын. Ол сондай -ақ жасыл немесе қызыл шаммен көрсетеді, егер сіз осы қашықтықтан жоғары немесе астында болсаңыз.
Бұл жоба Хенк Райккаерт өзінің De Koterij ютуб сериясында бастаған сынақтың арқасында жасалды, мен оны COVID19 мен әлеуметтік алыстатудың өзекті мәселелерімен байланыстырғым келді. (Ағылшын тіліндегі жазулар қосылады).
Қолданылған материалдар:
- Рулетка
- Оптикалық кодер: e4p-100-079
- Аудио: DFPlayer Mini + SD картасы
- Қуат: PowerBoost 1000C
- MCU: Adafruit HUZZAH32 - ESP32 Feather (кез келген басқа ардуиноны да қолдануға болады, себебі мен бұл құрылыста BLE немесе Wi -Fi мүмкіндіктерін пайдаланбаймын)
- Неопиксель
- Динамик
- Батарея
- Қосу/өшіру қосқышы
1 -қадам: схемалық
Схемада көрсетілгендей компоненттерді қосыңыз. Корпус басқа конструкциядан қайта пайдаланылды және бейімделді, бірақ сіз компоненттерге сәйкес келетін үлкен төртбұрышты қорапты пайдалана аласыз. Сізге динамик үшін тұтас қажет, рулетка және қосу/қосу түймесі (және батареяны зарядтау үшін usb мин үшін).
Индикаторлары бар металл пластинаны өлшеу таспасының айналатын бөлігіне бекітіңіз, оны мүмкіндігінше жақсы ортаға қойғаныңызға көз жеткізіңіз.
DFPlayer үшін SD картасында сіз орнатқан қашықтық өтілгенде ойнағыңыз келетін mp3 көшіруіңіз керек.
2 -қадам: код
Барлық кодты github -тан табуға болады.
ESP32 (кез келген басқа arduino қолдануға болады) кодердің A en B шығысын үздіксіз тазартады және есептегішті көбейтеді немесе азайтады. Ол -2150 -ден асқанда, мен рулетка үшін ол 1,5 метрден асатынын білемін. Сіз оны есептегіш үшін калибрлеуіңіз керек. Мәнге байланысты жарықдиодты түс өзгереді және DFPlayer-ге sd-картадағы mp3 ойнауға бұйрық беріледі.
3 -қадам: Кодер түсіндірілді
Есептегішті қаншалықты ашқанымызды қалай өлшеуге болады?
Бұл түсініктеме бейненің транскрипциясы:
Ол үшін мен оптикалық кодерді қолданамын, яғни қадамдық айналмалы кодер. Сізде басқалар бар, мысалы, абсолютті кодерлер. Олар 1 айналым ішінде нақты позицияны білу үшін өте қолайлы. Бірақ өспелі, керісінше, орын ауыстыру кезінде тұрақты импульстарды береді, осылайша сіз айналуды өзіңіз де, әр түрлі айналуларда да өлшей аласыз. Осылайша сіз айналуды өлшей аласыз, тіпті әр түрлі айналуларда. Мен квадратуралық кодерді қолданамын, ол екі сигнал береді, осылайша бағытты да анықтауға болады.
Бұл қалай дәл жұмыс істейді?
Дөңгелек дискіде қара белгілер бар. Бұл диск рулеткаға бекітілген, сондықтан онымен бірге айналады. Сенсордың өзі жарық диодты және жарықтың шағылуын өлшейтін екі фото детектордан тұрады. Егер жарықдиодты қара сызықта жанып тұрса, онда қара белгі арасындағы металға түскеннен кем немесе аз жарық шағылысады. Содан кейін бұл сигнал шығуда квадраттық толқынға айналады. А және В шығысы 2 комбинациясынан қай бағыттың бұрылғанын көруге болатындай етіп орналастырылған.
Мұны егжей -тегжейлі қарастырайық
А -ның әрбір жиегінің өзгеруімен В -ның мәнін біз қай бағытта бұрылатынын өзгертуге болады. Мен қолданатын кодерде, егер біз сағат тілімен бұрылсақ, А импульсі В импульсінен бұрын басталады. Және керісінше, егер біз сағат тіліне қарсы бұрылсақ. Біз қаншалықты бұрылғанын білдіретін 3 импульсті тани аламыз. Менің кодерде бір айналымда 100 цикл бар (CPR). бұл жағдайда ол шамамен 10,8 градусқа бұрылды. Егер сіз деректер кестесін қарасаңыз, CPR нені білдіретініне мұқият назар аударыңыз, кейде бұл бір айналымдағы циклдар саны, кейде бір айналымдағы санаулар саны (немесе әр айналымдағы жеке күйлер). Әр импульс 4 түрлі күйден тұрады. А және В деңгейінде жоғары немесе төмен. Бұл бір революцияға қарағанда 4 есе көп. PPR немесе бір айналымдағы импульс әдетте толық айналымдағы импульс санын өлшеу үшін қолданылады. Бірақ мұнда кейбір мәліметтер парағы әр айналымда әр түрлі импульстік күйлердің санын білдіреді. Сонымен қатар, мұнда не айтылғанын деректер кестесінен мұқият қараңыз. Біз мұнда А импульсінің В импульсінен бұрын келетінін көреміз.
Мұны кодта өңдеудің қарапайым әдісі - бұл A сигналының В сигналының мәнін білу үшін өзгеруі. Егер В сигналында А сигналының мәні болмаса, біз сағат тілінің бағытымен бұрыламыз және әр уақытта санауышты көбейте немесе көбейте аламыз.
Бізде бір айналымда 200 шеткі өзгеріс болады, себебі бізде импульсте 2 болады. Сонымен, егер есептегіш 200 болса, біз толық бұрылысты айналдырдық. Немесе 360 градусқа бұрылды, керісінше, егер біз қарама -қарсы жаққа бұрылсақ, онда А сигналы бірдей 3 импульсті тудыратынын көруге болады.
Сонымен, бізде де 10,8 градусқа бұрылды. Бірақ бұл жолы В сигналы А сигналымен бірдей мәнге ие, сондықтан біз В сигналының А сигналынан әлдеқайда алда екенін білеміз. Сондықтан біз сағат тіліне қарсы бұрыламыз. Бұл жағдайда есептегішті төмендетуге болады. Енді біз рулетка неше рет кесілгенін білеміз. Егер біз белгіленген қашықтықты білгіміз келсе, бұл өте қарапайым.
Мысалы, мұнда бір жарым метрге есептегіш -2150 болуы керек. Басқаша айтқанда, сағат тіліне қарсы 3870 градус.
Егер сіз әрқашан қанша ашылғанын білгіңіз келсе, диаметрі кішірейіп бара жатқанын ескеруіңіз керек, толық айналу кезінде рулеткада қашықтық азаяды.
Ұсынылған:
Ұзақ қашықтықтағы ең жақсы дос шамдары: 4 қадам (суреттермен)
Өзіндік қашықтықтағы ең жақсы дос шамдары: Мен «Жақсы дос» деп аталатын алыс қашықтықтағы синхронды шамдарды жасадым. шамдар. Бұл олардың басқа шамның ағымдағы түсімен синхрондалғанын білдіреді. Егер сіз бір шамды жасыл түске өзгерткіңіз келсе, көп ұзамай басқа шам өшіп қалады
Әлеуметтік қашықтықтағы Хэллоуинге арналған робот: 7 қадам (суреттермен)
Әлеуметтік алыстататын Хэллоуин кәмпиттері роботы: Егер сіз осы жылдардағы Хэллоуин трюктерімен емделушілермен қарым-қатынастың қызықты жаңа әдісін іздесеңіз және сіз бұл жобаның қиындығына дайын болсаңыз, онда бірден секіріңіз және өзіңізді құрыңыз! Бұл әлеуметтік алыстататын робот алдау немесе емделу кезінде «көреді»
Электронды әлеуметтік қашықтықтағы эмоти-маска: 11 қадам
Электронды әлеуметтік алыстататын эмоти-маска: бетперде киіңіз, бірақ эмоцияңызды жасырмаңыз! Бұл қарапайым DIY маскасы ультрадыбыстық сенсорды қолдана отырып, сіздің алдыңыздағы адамның қашықтығын өлшейді және жарық диодты үлгіні (" эмоция ") өзгертеді. сәйкесінше маска. Егер біреу 6 -дан жоғары болса
Arduino атмосфералық таспа шарасы/ MS5611 GY63 GY86 Демонстрация: 4 қадам (суреттермен)
Arduino атмосфералық таспа өлшемі/ MS5611 GY63 GY86 Демонстрация: Бұл шын мәнінде барометр/ альтиметр, бірақ сіз бейнеден қарап, тақырыптың себебін көресіз. . Тыныш күнде ол сізді өлшейді
Қашықтан басқарылатын 1 км қашықтықтағы көлік: 6 қадам (суреттермен)
1KM қашықтан басқарылатын автомобиль: Мен кішкентай кезімнен қашықтан басқарылатын көліктерге таң қалдым, бірақ олардың қашықтығы 10 метрден аспады. Мен Arduino бағдарламалауды білгеннен кейін, мен nRF24L көмегімен 1 км диапазонға дейін жететін қашықтан басқарылатын автокөлікті құруды шештім