Мазмұны:
- 1 -қадам: Хокинг ботын жасаңыз
- 2 -қадам:
- 3 -қадам: Хокингке жеке дыбыс шығарыңыз
- 4 -қадам: кеңестер мен амалдар
- 5 -қадам: Ұсынылған жақсартулар, жаңартулар және болашақ идеялар
Бейне: Хокинг боты: 5 қадам
2024 Автор: John Day | [email protected]. Соңғы өзгертілген: 2024-01-30 10:26
Hawking Bot - бұл марқұм Стивен Хокингтен шабыт алған Lego MINDSTORMS EV3 жобасы. Стивен Хокингте әзіл -оспақ жақсы болды, сондықтан ол бұл жобаны мақұлдайтынына сенімдімін. Хокинг Бот кедергілерден өтіп, қозғалыстарға жауап бере алады, содан кейін Стивен Хокингтің әйгілі дыбыстарының бірін айтады және қозғалатын объектіге қарай қозғалады. Ол ультрадыбыстық сенсорды қолданады, ол қоршаған ортаны сканерлейді.
1 -қадам: Хокинг ботын жасаңыз
Барлық қажетті бөлшектер ультрадыбыстық сенсорды қоспағанда, EV3 Lego MINDSTORMS жиынтығында, оны бөлек сатып алуға болады.
2 -қадам:
Hawking Bot коды python 3 -те жазылған. Hawking Bot -тегі Debian Linux ортасында питонды іске қосу үшін жүктелетін кескін файлын ev3dev веб -сайтынан жүктеуге болады. Хокинг ботын іске қосу кодын мына жерден жүктеуге болады. Барлық код сынып файлында бар, сондықтан сіз қалаған әдістерді қолдана аласыз немесе оларды өзгерте аласыз.
Бұл бейнені роботта Debian Linux және Python3 орнату туралы толық нұсқаулықпен бірге қараңыз. Бұл Mac жүйесін орнатуға арналған болса да, бұл процесс туралы жалпы түсінік алу пайдалы болады. Бұл жүргізіліп жатқан жұмыс. Ультрадыбыстық сенсор кейде сенімсіз болады және бұл «асып кетушілерді» анықтау үшін ақылды кодты қажет етеді. Мен кодты тиімдірек және қателіктерді азайтатын басқалардың үлестерін көргім келеді.
3 -қадам: Хокингке жеке дыбыс шығарыңыз
Жақсы, енді сіз профессор Хокингтен бірнеше әйгілі дәйексөздер немесе қарапайым айтулар алғыңыз келеді. Сіз оның сөйлегенін тыңдай алатын көптеген видеолар бар, содан кейін оның дәрістері даналық пен пайдалы дыбыстық шағудың қазынасы болып табылады.
Сізге Audacity сияқты бағдарлама қажет, ол көптеген платформаларда жұмыс істейді, ол сіздің сүйікті дыбыстарыңызды таңдайды және кесіп тастайды.
Дыбыс шығаруды wav моно файл ретінде SH6, SH7,… SH11, SH12 және т.б. сақтаңыз.
Төменде мен жоғарыда көрсетілген әдіс бойынша жасаған бірнеше үлгіні таба аласыз.
4 -қадам: кеңестер мен амалдар
Hawking Bot барлық кабельдердің қосылуын және батарея қуаты жеткілікті болуын қамтамасыз ету үшін өзін-өзі тексеру модулімен келеді. Бос, жоғалған немесе тіпті зақымдалған қосылыстар оңай пайда болуы мүмкін. Сондықтан бұл модуль өте пайдалы. 'CheckConnection' әдісі тек электр байланысының бар -жоғын тексереді. Қозғалтқыштардың дұрыс портқа қосылғанына көз жеткізу керек.
Хокинг Ботының рельефті сканерлеуі және алда ең ұзақ кедергісіз жолды табуы үшін басты айналдыру қозғалысы маңызды. Кабельдерге бастың қозғалысын орналастыру үшін жеткілікті орын қажет; сондықтан оларды фотосуретте көрсетілгендей байланыстырған жөн.
Hawking Bot үлкен кедергілермен және тегіс және тегіс жерде жақсы жұмыс істейді. Кілемдер қозғалтқыштар үшін күрделірек және әр түрлі беттердің мінез -құлқын реттеу үшін параметрлерді өзгерту қажет болуы мүмкін.
Hawking Bot мүлдем мінсіз емес және бұл прототип, ол одан әрі жетілдіруден пайда көреді. Код толығымен түсіндірілген және сізге әр түрлі әдістердің не істейтінін анықтау оңай болуы керек. Әр түрлі биттерге # деген түсініктеме берілді, егер сіз «басып шығару» алдындағы # санын алып тастасаңыз, іске қосылған бағдарлама сенсордың әр түрлі көрсеткіштері мен есептеулерін көрсетеді.
5 -қадам: Ұсынылған жақсартулар, жаңартулар және болашақ идеялар
Енді сіз роботты сәтті құрып, оны келесі деңгейге көтергіңіз келеді. Сіз MotionDetector әдісін жетілдіре аласыз. Дәл қазір қате оқу жиі кездеседі. Сіз нақты оқылымдарды disA мен disB -ке түсініктеме беру арқылы көре аласыз (әдіс блогының төменгі жағында). Қате оқу әдетте басқа оқылымдардан ерекшеленеді, сондықтан сіз роботтың қате оқуға жауап беруін тоқтату үшін алгоритм жаза аласыз.
Мүмкін сіз роботты толық басқарғыңыз келеді және оның әр түрлі функцияларын қашықтан басқарғыңыз келеді. Сіз мұны Bluetooth арқылы жасай аласыз және роботпен байланысу үшін Android бағдарламасын жаза аласыз. Алайда, инфрақызыл сенсорға Hawking Bot -ті басқаруға орын табу оңайырақ болады.
Роботты қоршаған орта туралы білуге үйрету туралы не деуге болады? Мұны жақын маңдағы көрші тәсілімен немесе мүмкін нейрондық желі арқылы жасауға болады. EV3 кірпішінің өңдеу қабілеті шектеулі, бірақ ол Numpy қолдайды. Балама BrickPi болады, бұл сізге AI кітапханасын Tensorflow сияқты басқаруға мүмкіндік береді, бірақ бұл нұсқаулықтың мақсаты - ультрадыбыстық сенсордан басқа көптеген қымбат бөлшектерді сатып алмай, Lego EV3 MINDSTORMS жинағын пайдалану.
Алайда, жақын маңдағы көршілер EV3 кірпішінде жұмыс істеу керек, бұл ұсынылған алгоритм. Мен сізге жұмыс істеуді табуды немесе мәселелерді шешуді тапсырамын:
Hawkings Bot үшін күшейтуді үйрену
Идея - USS -тің 7 көрсеткіші векторға кодталған және соңғы 10 бас айналу 70 жазбаның дәйекті векторын жасау үшін қолданылады. Алғашқы оқулар толық емес, сондықтан нөлдермен толтырылады. Әрбір жазба USS -тен қашықтықтың мәнін қамтиды. Бұл күй векторы s. Жүйе 1000 жазбаны енгізуге мүмкіндік береді. Осыдан кейін ең ескі жазба ауыстырылады және әрбір s-r жұпының жас жазбалары бірге қысқарады.
Бот объектке 10 см -ден жақын болмауы керек. Бұл теріс сыйақы береді. Қарапайымдылық үшін; Жақсы әрекеттер 1-мен, ал нашарлар 0-мен марапатталады. Нәтижесінде бұл әр әрекет-күй комбинациясы үшін сыйақы алу ықтималдығын тудырады. Біз жеңілдіктер мен epsilon ашкөздік саясатын қолданамыз.
Бұл барлық үш әрекеттің оңға, тура және солға арналған 3 үлкен күй-марапат (s-r) кестесін жасайды-әр әрекет үшін жылдам және баяу жылдамдық болуы мүмкін. Содан кейін бізде 6 әрекет және 6 іздеу s-r кестесі болады.
Жаңа күй жазылған сайын оны кестемен салыстырады, ең жақын көршісін табу үшін евклидтік қашықтық (немесе ұқсас өлшем) қолданылады. Бұл рейтингіге жатпайды, керісінше шекті өте ұқсас деп қабылдауға, бар күйді қайта жазуға және ең жоғары сыйақыны жаңартуға және байланысты әрекетті жүзеге асыруға мүмкіндік беретін шекті деңгей белгіленеді. Егер ол ұқсас болмаса (d> t) a әр әрекеті үшін жаңа s-r жұбын енгізіңіз. Егер s-r әрекеттері арасында байланыс болса (олардың барлығы бірдей марапатқа ие) кездейсоқ таңдаңыз, бірақ бұл кең таралған емес және оны елемеуге болады.
t экспериментальды түрде анықталуы керек, егер t тым кішкентай болса, ұқсас күйлер еленбейді және әрбір күй бірегей болып саналады. Тым үлкен мөлшер - бұл жақсы әрекеттерді таңдау мүмкіндігіне әсер етуі мүмкін бір -біріне ұқсамайтын күйлердің бірігуін білдіреді. Ең жақсы т анықтау үшін статистикалық әдістерді қолдануға болады.
Кесте келесідей көрінеді: Кіріс нөмірі - Мемлекеттік вектор - 1 әрекет үшін сыйақы - 2 әрекет үшін сыйақы - 3 әрекет үшін сыйақы.
Менің ойымша, нақты іске асыру қиын болады, бірақ күш жұмсау керек. Іске сәт!
Ұсынылған:
NodeMCU бар Telegram боты (ESP8266): 3 қадам
NodeMCU (ESP8266) бар Telegram Bot: Сіздің жүйеден хабарландыру беру үшін бот қажет пе? немесе хабар жіберу арқылы бірдеңе істеу керек пе? Telegram Bot - бұл сіздің шешіміңіз! Бұл оқулықта мен өз ботымды жасау үшін Telegram Web мен BotFather -ді қолданамын
DIY компас боты: 14 қадам
DIY компас боты: Сәлеметсіз бе! Бүгін мен компас ботын жасаймын. Мен бұл ойды математикалық қорапсыз мінсіз шеңберді салу қаншалықты қиын екенін ойлау арқылы алдым. Мен сіздің шешіміңізді алдым? Сіз білетіндей, шеңбер дәл 360 градус, сондықтан бұл бот суретті сала алады
Python қолданатын Twitter боты: 5 қадам
Python көмегімен Twitter боты: Twitter боты
[IoT] Arduino MKR WiFi 1010 бар Telegram боты: 5 қадам
[IoT] Telegram Bot Arduino MKR WiFi 1010 көмегімен: Бұл жоба Arduino-ны Telegram Bot API-мен қалай байланыстыруға болатынын көрсетеді, жоба U-BLOX ESP32 модулімен жабдықталған жаңа MKR WiFi 1010 тақтасының айналасында салынған. жоба тұжырымдаманың дәлелі ғана емес, тек
Хокинг 7dBi Wi -Fi антеннасы: 4 қадам
Hawking 7dBi Wifi антеннасын тегін көтеру: Мен Hawking 7dBi Wifi антеннасында кемшіліктер бар екенін білдім. Кемшілікті жою арқылы антеннаның бөлшек нөмірі HAI7SIP ТЕГІН сигналдың күшеюіне ие болдым. Бұл модификацияға дейін менде бір жолақ сигнал болды, ол кейде мүлде өліп қалады. Кейін