Мазмұны:

Постино: Пошташы бірдеңе жеткізді ме ?: 6 қадам (суреттермен)
Постино: Пошташы бірдеңе жеткізді ме ?: 6 қадам (суреттермен)

Бейне: Постино: Пошташы бірдеңе жеткізді ме ?: 6 қадам (суреттермен)

Бейне: Постино: Пошташы бірдеңе жеткізді ме ?: 6 қадам (суреттермен)
Бейне: Пёс ждёт почтальона каждый день! Когда тот приходит происходит нечто невероятное! Это надо видеть! 2024, Шілде
Anonim
Постино: Пошташы бірдеңе жеткізді ме?
Постино: Пошташы бірдеңе жеткізді ме?

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

Шектеулер болды:

  • аккумуляторлық батареяның ауысуы арасындағы ақылға қонымды қызмет мерзімі;
  • WiFi байланысы;
  • поштаның бар -жоғын күніне бір рет тексеріңіз;

Негізгі сұрақ болды: сенсордың қай түрі менің талаптарыма сәйкес келеді? Жақындық сенсоры жұмыс істей алмады, өйткені тексеру нақты уақытта емес, күніне бір рет жасалуы керек еді; салмақ сенсоры да жоқ, өйткені бұл күрделілік пен сезімталдық мәселелерін қосады (қағаз парағы өте жеңіл болуы мүмкін). Менің таңдауым ұшу уақыты (микро лазер) сенсорына түсті. Оны пошта жәшігінің өлшемі бойынша калибрлегеннен кейін, ортасында жатқан нәрсе сенсорды іске қосады! 3 шектеулерді ескере отырып, мен барлық схемаларды күніне бір рет іске қосу үшін ESP8266 (бағдарламалық қамтамасыз етуді іске қосу және WiFi желісіне қосылу), өлшеу үшін VL6180 ұшу датчигі мен DS3231 нақты уақыт сағатын қолдануды шештім: осылай болды Постино дүниеге келді!

1 -қадам: Бөлшектер мен компоненттер

  • ESP8266-01 (немесе ESP-12E NodeMCU)
  • VL6108 Ұшу уақыты сенсоры
  • DS3231 нақты уақыт сағаты
  • IRLZ44 N-арналы MosFET
  • BC547 транзисторы
  • Резисторлар
  • CR123 батареясы

2 -қадам: сенсор

Сенсор
Сенсор

Жүйенің жүрегі - VL6180 сенсоры. Бұл абсолютті қашықтықты мақсатты шағылудан тәуелсіз өлшеуге мүмкіндік беретін жаңашыл технология. VL6180X объектіден түсетін жарықтың мөлшерін өлшеу арқылы қашықтықты бағалаудың орнына (оған түс пен беттің әсерінен айтарлықтай әсер етеді), VL6180X жарықтың жақын жердегі объектіге өтуі мен сенсорға қайта шағылуына кететін уақытты дәл өлшейді. -Ұшу). Инфрақызыл сәулелендіргішті, диапазон датчигін және қоршаған жарық сенсорын біріктіруге болатын үшеуін біріктіруге болатын қайта жиналатын пакетте біріктіре отырып, VL6180X оңай біріктіріледі және түпкілікті өнім жасаушыны ұзақ және қымбат тұратын оптикалық және механикалық конструкцияларды оңтайландырады.

Модуль қуаты аз жұмыс үшін арналған. Мен бортында кернеу реттегіштері бар 2,7 В -тан 5,5 В дейінгі кернеу диапазонында жұмыс істеуге мүмкіндік беретін Pololu ажырату тақтасын қолдандым.

Сенсор әр түрлі сезімталдықпен өлшеудің максималды диапазонын 20 -дан 60 см -ге дейін орнататын 3 жарамды масштабтау факторына мүмкіндік береді. Ауқымды масштабтау коэффициентін конфигурациялау арқылы сенсордың потенциалды максималды диапазонын төмен ажыратымдылықпен арттыруға болады. Масштабтау коэффициентін 2 мәніне қою 2 мм ажыратымдылықпен 40 см дейін диапазонды қамтамасыз етеді, ал 3 масштабтау коэффициенті 3 мм ажыратымдылықпен 60 см дейін диапазонды қамтамасыз етеді. 3 таразыны пошта жәшігіңіздің өлшемдерімен сынауыңыз қажет. Менікі 25 см (H) болғандықтан мен масштаб коэффициентін қолдандым = 1.

3 -қадам: Нақты уақыттағы сағатты баптау

RTC үшін мен EEPROM (менің мақсатыма жарамсыз) мен тиын өлшемді батареяны қамтитын DS3231 сыну тақтасын қолдандым. Мен RTC -ді негізгі құрылғы аккумуляторы арқылы (3в CR123) қосу туралы шешім қабылдаған кезде монетаның батареясын алып тастадым; қуатты үнемдеу үшін мен EEPROM (түйреуіштерін мұқият кесу арқылы) мен борттық сымды алып тастадым.

Монетаның аккумуляторы маған пайдалы болмады, өйткені мен нақты уақытты/сағатты/минутты/секундты сақтаудың қажеті жоқ еді, бірақ RTC тек 24 сағатқа есептеп, содан кейін құрылғыны қосу үшін дабылды қосуы керек еді.

4 -қадам: борттағы басқа да әр түрлі

Борттағы басқа да әр түрлі
Борттағы басқа да әр түрлі
Борттағы басқа да әр түрлі
Борттағы басқа да әр түрлі

Құрылғыны қосу RTC дабылы арқылы іске қосылатын транзистор мен MosFET схемасы арқылы жүзеге асады. Дабыл қалпына келтірілгеннен кейін, схема құрылғыға 24 сағаттық цикл үшін қуатты ажыратады. Дабыл жеткенде, DS3231 түйреуішті жоғарыдан төменге ауыстырады: қалыпты жағдайда транзистор қаныққан және MosFET қақпасы жерге тұйықталған. Дабыл транзистордың негізін жерге қойғаннан кейін, ол ашылады және MosFET -ке тізбекті жабуға және қалған компоненттерге қуат беруге мүмкіндік береді.

Сонымен қатар, мен «test-1M» секіргішін қостым. Бұл коммутатордың мақсаты - егер іске қосылған болса - циклды тәулігіне бір рет минутына бір ретке өзгерту, тестілеуді іске қосу үшін. Аралықты бір күннен бір минутқа өзгерту үшін алдымен «Test-C» секіргішін шамамен 15 секундқа жабу керек, сағатты оятуды қосу кезеңін айналып өту және құрылғыны қосу керек. Сынақтар аяқталған кезде, секіргіштерді ашып, құрылғыны қалпына келтіріңіз (цикл қуаты).

5 -қадам: Схемалық

Схемалық
Схемалық

6 -қадам: Бағдарламалық қамтамасыз ету және логика

Сынақтар кезінде мен (практикалық себептер бойынша) NodeMCU контроллерін қолдандым, сондықтан бағдарламалық қамтамасыз ету CHIP нұсқасын «NodeMCU» немесе «esp8266» күйіне қою арқылы осы мәселені шешеді.

Эскиз WiFiManager кітапханасын іске қосады, бұл құрылғыға бірінші жұмыс кезінде жарамды WiFi кіру нүктесіне қосылуға мүмкіндік береді. Бұл жағдайда құрылғы AP режиміне өтеді, бұл оған қосылуға және қосылу үшін дұрыс WiFi желісін таңдауға мүмкіндік береді. Осыдан кейін желінің конфигурациясы келесі циклдар үшін EPROM -де сақталады.

REST_MSG айнымалысы сенсор пошта жәшігінде объект тапқан кезде жіберілетін http хабарламасын қамтиды. Менің жағдайда ол доместі REST серверіне хабарлама жібереді, бірақ сіз оны қалауыңыз бойынша өзгерте аласыз: Telegram BOT хабарламасы, IFTTT WebHook оқиғасы және т.б.

Қалған эскиздердің барлығы setup () функциясында, өйткені циклға ешқашан қол жеткізілмейді. Бірнеше кітапханаға қажетті конфигурациядан кейін бағдарламалық жасақтама сағат уақытын 00:00:01 және дабылды күніне бір рет қояды (немесе «тест-1М» қосқышы іске қосылған болса минутына бір рет). Содан кейін ол шара қабылдайды, хабарламаны жібереді (егер пошта жәшігінде қандай да бір зат табылса) және дабыл түйреуішін қалпына келтіреді, құрылғыны өшіреді. Цикл аяқталғаннан кейін 24 сағат бойы есептелетін тек РТЖ қосылады. Test-1M секіргісі ESP8266 RX істігіне қосылады, ол GPIO-3 ретінде пайдаланылады: setMode (PIN, FUNCTION_3). Осыған байланысты, сіз ESP8266 іске қосылған кезде сериялық мониторды қолдана алмайсыз: ESC8266 орнына NodeMCU орнатылған кезде ғана «#define DEBUG» (эскиздегі барлық сериялық басып шығаруға мүмкіндік беретін) жолы қолданылады.

ESP8266 Wire кітапханасында инициализацияланған GPIO-0 және GPIO-2 түйреуіштері арқылы RTC мен сенсормен I2C байланысын басқарады.

Толық кодты мына сілтемеден жүктеуге болады.

Көмекші технологиялар сайысы
Көмекші технологиялар сайысы
Көмекші технологиялар сайысы
Көмекші технологиялар сайысы

Көмекші техника байқауында екінші орын

Ұсынылған: