Мазмұны:

Портал 2 мұнарасы - мұнараны басқару шебері: 9 қадам (суреттермен)
Портал 2 мұнарасы - мұнараны басқару шебері: 9 қадам (суреттермен)

Бейне: Портал 2 мұнарасы - мұнараны басқару шебері: 9 қадам (суреттермен)

Бейне: Портал 2 мұнарасы - мұнараны басқару шебері: 9 қадам (суреттермен)
Бейне: Сәулет Kata #1 - сарапшымен талдау [Нақты шешім Сәулетші қалай жұмыс істейді] #ityoutubersru 2024, Шілде
Anonim
Image
Image

Бұл жоба нұсқаулықтардағы Portal Turret-тың түпнұсқасы немесе ремиксі (Portal-2-Turret-Gun). Ол сондай -ақ nRF24L01 радио чипін қолданатын кез келген нәрсені басқару үшін арзан контроллер ретінде қолданыла алады. СКД экраны теңшеу кезінде әсіресе пайдалы.

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

Порталдық мұнараны бітіргеннен кейін мен 2 -ші порталдың соңында Cara Mia опералық сахнасының қысқаша бейнесін көрдім. «Мен қазір бірнеше мұнара салдым. Мен мұны істей аламын! » Менде мұнаралар болды, бірақ олардың жұмыс істеуі үшін олар енді бір -бірімен немесе басқа құрылғымен байланысуы керек еді. Біраз ойланып, қолмен басқару өте жақсы болады деп ойлағаннан кейін, мен негізгі мұнара контроллерін немесе МТК құрамын деп шештім.

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

Қолмен басқару: Сондықтан қанаттар ашылғаннан кейін мен қадам мен бұрылысты басқарғым келеді. 2 ось = джойстик, сондықтан джойстикті басқару және бірнеше түймелер. 1 батырмасы мұнараны өртеп жіберуі мүмкін, ал, мүмкін, 2 батырмасы оның бір сөзін айтуы мүмкін. Жақсы! Жеткілікті қарапайым…

Чат: Мен жақында «Кім бірінші» - Эбботт пен Костелло тәртібін тағы көрдім, және менің басымда жарық сөніп қалды! Мен сонымен қатар көптеген мұнараларды қолдана отырып, барлық мақал -мәтелдерді қолдана отырып, эскиздік комедиялық жоспар құрар едім !! Жақсы, бұл толық анықталмады, бірақ мен құрылыс басталғаннан кейін оны реттейтініне сенімдімін.

Мен сондай-ақ бұл МТК сымсыз болуын қаладым, сондықтан мен 9В батареямен жұмыс істейтін қарапайым опцияны таңдадым және контроллерді мини-USB штепсельінің артындағы Nano арқылы қуаттандыратын етіп жасадым. Жаңарту үшін де пайдалы.

1 -қадам: Радионы мұнараларға қосу

Мен алдымен радионы бірнеше жалаңаш наномен жұмыс істедім, оны жұмыс істеуге және бірнеше құрылғылар арасында ақпарат жіберуге болатынына көз жеткізу үшін. Бұл аяқталғаннан кейін, радионы қолданыстағы мұнараларға қосу туралы мәселе болды. Хм, мұнараға физикалық ПХД қосу өте оңай болды. Мен чип ұстағышты nRF24L01, Nano және mp3 чипін қосу үшін өзгерттім. Жарайды ма. Бір физикалық бөлік сыммен өзгертілген.

Өзгертілген чип ұстағыш қазір мұнара басылған бөлшектердің бөлігі болып табылады. Мен осы құрылыстағы басылған бөліктерден радио емес опцияны жойдым. Егер біреу радио емес нұсқаны жасағысы келсе, бұл маңызды емес. Тек nRF24L01 радио чипін қоспаңыз.

2 -қадам: мұнараларды (қайта) сымдау

(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары
(Қайта) мұнаралардың сымдары

Уа …

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

«Радио мұнарасын» жасағысы келетіндерге және алдыңғы генді құрғандарға … Кешіріңіз …

Енді мен бұл өзгерісті бірнеше рет жасадым және бұл процесс өте жаман емес екені белгілі болды. Бұл қайта кіруді қажет етеді, бірақ мен наноға бар байланыстарды үзіп тастадым, содан кейін қайғы -қасіретсіз тиісті түйреуіштерге қайта қосылдым. Мен nRF24L01 -ге радио чиптің 7 сымын қостым (5 коммутатор, 3v және GND), содан кейін екінші ұштарын наноға жалғадым.

Қазір сымдар көп, сондықтан сымдарды бағыттау кезінде заттарды тәртіпте ұстау әлдеқайда маңызды.

МАҢЫЗДЫ: Құрастыру кезінде сымдар тақтадағы нано қалпына келтіру түймесін баспайтынына көз жеткізіңіз !! Бұл менің басымда болды және мені қажетсіз циклге лақтырды!

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

3 -қадам: MTC электр компоненттері

MTC электр компоненттері
MTC электр компоненттері
MTC электр компоненттері
MTC электр компоненттері
MTC электр компоненттері
MTC электр компоненттері

Мұнаралар реттелгеннен кейін МТК жасау уақыты келді.

МТК келесі компоненттерді пайдаланады, олардың барлығы Amazon немесе Baggood немесе Ali Express арқылы жеткізіледі. Мен сілтеме үшін сілтеме жасаған Amazon бөлшектерінің нөмірлерін көрсетемін, себебі бұл заттар әдетте қол жетімді және ақылға қонымды бағада (және маған қажет емес еді) Механикалық дизайнды бастамас бұрын маған қажет нәрсені алу үшін 2+ апта күтіңіз!)

  • Arduino Nano 0,96 дюймдік LCD, (SSD1306) Мен көк/сары нұсқасын қолдандым
  • Small Joystick (HW-504) 5V PS джойстик модулі
  • Қосқыш (dx-004) 22мм * 13мм
  • Радио - (nRF24L01)
  • 12 мм түймелер (түрлі түсті түймелер үшін CLT1088, қара үшін PBS-33B)
  • 2 мм бұрандалар (M2 өздігінен бұрап тұратын бұрандалар жинағы, көлденең тартқыштың басы ассортименті)
  • Индикаторлар үшін сіз таңдаған 5 мм жарықдиодты шамдар. (Жарық диодты қолданбаңыз!)
  • Торқұйрықтары бар жалпы 9В батарея қосқышы
  • 9В батареясы (бұл жобалар үшін әрқашан жеткілікті қуат бере алмайтын долларлық дүкендердің біреуін емес, жақсы біреуін қолданыңыз!)
  • Мен силиконмен қапталған сымды қолдандым. Мен оны осы жобалар үшін қолданғанды ұнатамын.

Мен бастапқыда бірнеше жарық диодты қолдандым, бірақ олар тым жақсы екенін білдім. Олар мені соқыр етті! Мен ескі, әлсіз жарықдиодты қолдануды аяқтадым және бұл қосымша үшін мағынасы бар.

4 -қадам: 3D басып шығарылған бөлшектер

3D басып шығарылған бөлшектер
3D басып шығарылған бөлшектер
3D басып шығарылған бөлшектер
3D басып шығарылған бөлшектер
3D басып шығарылған бөлшектер
3D басып шығарылған бөлшектер

Мен FTC көмегімен мұнара дизайнын жасаған сияқты МТК жобаладым.

Баспаға тек 3 бөлік қажет:

  • Жоғарғы панель (1 немесе 2 нұсқа)
  • Төменгі корпус
  • СКД бауы

NRF чипі, Nano, 9V батареясы, қосқыш және жарық диодтары үстіңгі тақтаға бекіткішсіз орнатылады. Жарық диодтары тек пластинаны басады және ілгектермен бекітіледі. Олар жай ғана кіруі керек, бірақ оны асыра алмаңыз. Үстіңгі тақтай нано ұстауға арналған және nRF чипі ақырын кіруі керек. NRF шағын қойындысына абай болыңыз; ол кішкентай және микросхеманы алу үшін ашылып, босатылады. Саяхат шектеулі болса да, мұнда жұмсақ болыңыз.

Джойстик пен СКД оларды жоғарғы тақтаға бекіту үшін ұзындығы 5 мм болатын 2 мм бұрандаларды қажет етеді. Джойстик ПХД үлкен тесіктерге ие, сондықтан бұрандалардың өтпейтініне көз жеткізу үшін маған кішкене шайбалар қажет екенін сездім.

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

СКД -ны үстіңгі тақтаға физикалық түрде орнатуға болатынын ескеріңіз, бірақ дисплей тек бір бағытта саңылау арқылы толық көрінеді! Осы себепті мен сары/көк бөлінген экранды қолданған кезде үстіңгі тақтайдың 2 -ші нұсқасын қостым. Бір нұсқада жоғарғы жағында сары түс бар, ал екіншісінде менің фотосуреттерімде көрсетілгендей төменгі жағында сары түс пайда болады.

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

Барлық сымдар үстіңгі тақтада жүргізілгендіктен, астыңғы жағы ұзындығы 2 мм бұрандалары бар үстіңгі тақтаға бекітілген қақпақ болып табылады (саны: 4).

«Батарея есігі» опциясының орнына мен батареяны үстіңгі тақтаға енгіздім. Бұл батареяны ауыстыру үшін төменнен жоғары қарай ұстап тұратын 4 бұранданы алып тастауды білдіреді, бірақ оны әлемнің соңы емес, USB кабелі арқылы қуаттауға болады. Үстіңгі тақта 9В батарея ұстағыш жүйесімен жасалған, ол бірнеше рет қолдануға жеткілікті берік болуы керек, тым күрделі емес, бірақ батареяның қозғалуына жол бермейді.

Мен жоғарғы тақтаны фотосуреттерде көрсетілгендей 2 түсті басып шығардым. Мен Prusa i3 Mk2-ді көп түсті опциясыз қолданамын, бірақ олардың түстерін басып шығару құралын (https://www.prusaprinters.org/color-print/) қолданып, түстердің бір бөлігін өзгертуге болады. Мәтін тоқтайтын және қатты болатын қабатты тексеріп, оны өтпелі қабатқа айналдырыңыз. Воила! Түрлі -түсті мәтін!

Мен бөлшектерді қабаттың биіктігі 0,35 мм етіп басып шығардым, себебі бұл тегіс бөлшектерді дәлірек ажыратудың қажеті жоқ. Мен сондай -ақ бұл шешімге қалай қарайтынымды ұнатамын. О, және ол өте тез басып шығарылады!

5 -қадам: Электр құрастыру

Электр құрастыру
Электр құрастыру
Электр құрастыру
Электр құрастыру
Электр құрастыру
Электр құрастыру
Электр құрастыру
Электр құрастыру

Электрлік компоненттердің барлығы Үстіңгі тақтаның астыңғы жағына орнатылған және барлық сымдар бірге орындалады. Басу түймелері мен қосқышты алдымен орнату керек, ал СКД, Nano, Joystick, nRF радиосын үстіңгі тақтаға орнатпас бұрын алдын ала сыммен қосуға болады. Мен жекелеген компоненттерді алдын ала сыммен қосудың осы әдісін ұсынамын, содан кейін наноға соңғы қосылымдарды орнатамын. Мен сымды аяқтамас бұрын алдымен эскизді жалаңаш наноға жүктеуді ұсынамын.

Құрылғыны қосудан және оның аяқталғаннан кейін күтілгендей өмірге келуін бақылаудан басқа қанағаттанарлық ештеңе жоқ!

Электрлік бөлшектерді дайындаудың жалғыз қажеті - джойстиктен үстіңгі тақтайшаның астына бекіту үшін оның түйреуіштерін алу. СКД экранды түйреуіштер орнатылған немесе орнатылмаған түрде сатып алуға болады және ол кез келген жағдайда жұмыс істейді. Нано тақырыпты түйреуішсіз таңдалуы керек.

6 -қадам: код

MTC, Қызыл мұнара, Ақ мұнара және Көк мұнара коды енді

Бұл кодтау тәжірибесі болды! Менде мұнара дербес жұмыс істеді, бірақ радионы қосу мен ойлағаннан да қиын болды! Мен сондай -ақ «Чат» бөлімін қалағандай жұмыс істетіп, көңілді болдым (бұл туралы кейінірек).

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

Мен осы құрылысқа сәйкес «Turret w radio option» кодын қостым, өйткені олар бірге жұмыс істейді. Мұнараны құрастыру бетінде радиобайланыс мұнарасын құру оны MTC -мен немесе басқа nRF24L01 басқару әдісімен пайдалануға дайын етеді.

Сонымен қатар, дыбыстарды осы кодпен жұмыс істеу біраз уақытты алды, және дыбыстар жалпыға қолжетімді басқа веб -сайттардан алынғандықтан, мен оларды ZIP файлдарында қолданған кезде барлық дыбыстарды енгіздім; біреуі тұрақты мұнара үшін, екіншісі ақаулы мұнара үшін. Сіз үшін жақсы нәрсе, қымбатты оқырман, сіз SD карталарыңыздағы дыбыстарды кодымен қолдана аласыз, сонда баруға болады!

7 -қадам: MTC мәзірі - Навигация

MTC мәзірі - Навигация
MTC мәзірі - Навигация
MTC мәзірі - Навигация
MTC мәзірі - Навигация
MTC мәзірі - Навигация
MTC мәзірі - Навигация

MTC коды реттелетін Splash экранынан басталады, содан кейін мұнаралардың күйін тексереді. Егер мұнара болмаса, ол мұнара қосылғанға дейін отырады!

Егер кем дегенде бір мұнара қосылған болса, мұнара үзілмесе немесе «біреумен жұмыс жасамаса», негізгі мәзір көрсетіледі және «Дайын» жарық диоды жанады. Егер олар бос емес болса, онда «Мұнаралар бос емес» экраны көрсетіледі, ал «Бос емес» жарық диоды жанады.

МТК мұнараларды басқара алмас бұрын барлық белсенді қосылған мұнаралар «Дайын режимде» болуы керек.

Мәзір таңдауларын айналдыру үшін джойстикті (жоғары және төмен) пайдаланыңыз:

  • Ариа
  • Чат
  • Қолмен

Қажетті опцияны 'X' батырмасы арқылы немесе джойстикті басу арқылы таңдаңыз.

Aria Mode - бұл опцияны таңдаған кезде «Aria Mode» экраны пайда болады және мұнара Portal 2 ойынының соңындағы Aria көрінісін орындауға мәжбүр етеді. Аяқтағаннан кейін мұнаралар жабылып, біреуді немесе оятатын команданы күтеді.

Чат режимі - бұл опцияны таңдағанда «Чат режимі» экраны пайда болады және Чат реттілігі басталады. Аяқтағаннан кейін мұнаралар жабылып, біреуді оятуды немесе команданы күтеді.

Қолмен жұмыс режимі - Бұл опцияны таңдағанда «Қолмен жұмыс режимі» экраны пайда болады, «Қолмен» жарық диодты жарықтандырады және мұнаралардың қолмен жұмыс істеуіне мүмкіндік береді. Қозғалыс пен бұрылысты джойстикпен басқару. «X» түймесін басу атыс ретін белсендіреді. «T» түймесін басу оларды «сөйлесуге» мәжбүр етеді, онда мұнара кітапханасынан кездейсоқ сөз айтады.

«<» Немесе артқа түймесін басу осы үш режимнен бас тартады, мұнараларды жауып, негізгі мәзірге оралады.

Егер сіз мұнара үймесінің қосылу күйін көргіңіз келсе (қазіргі уақытта 3 -пен шектелген), негізгі мәзірде «T» түймесін басыңыз. Сізді «мұнараның күйі» экранына апарады, онда сіз әр мұнараның қосылу күйін көре аласыз.

«Мұнараның күйі» экранында сіз әр мұнараның күйін көресіз.

  • Дайын - бақылауға дайын
  • Бос емес - мұнара біреуге «күтіммен» айналысады
  • Қол жетімді емес - МТК мұнараға қосыла алмайды

Негізгі мәзірге оралу үшін '<' түймесін басыңыз.

8 -қадам: кодты баптау

Кодты баптау
Кодты баптау

Мұнда көрсетілген скриншот менің ұзақ уақыт бойы не қарап тұрғанымды көрсетеді … бір уақытта 4 эскиз! Жөндеу қызықты емес деп кім айтты!

Код жоғарыда көрсетілген басқару мен опцияларды қамтамасыз етеді, бірақ кодты теңшеу туралы не деуге болады?

Әрине! Бірақ мұнда әділ сома бар, сондықтан мұнда бірнеше нұсқаулар немесе кеңестер бар.

1 -кеңес - «Чат» ретін өзгерту. Бұл модификация мұнара кодында орын алады.

Мен кодты мен үшін қай жерде жұмыс істейтінін ойлап табуға тырыстым. Әңгімеге көбірек назар аудару үшін сөйлесу тізбегін өңдеуге болады (бұл сөз бе?), Бірақ кейін реттеуді жеңілдетеді.

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

Кәдімгі мұнара немесе ақаулы мұнара туралы мақал таңдаңыз. Бұл «00XX -» арқылы анықталатын mp3 файлы, содан кейін бұл сөзді сипаттайтын мәтін. Бұл маңызды бөлік болып табылатын сан. №1 мұнара кестеде осы XX мәнін қолданады. №2 мұнара XX мәніне '1', ал №3 мұнара XX мәніне '2' белгісін қояды. Мысалы, егер сіз «0040 - кешіріңіз» деген сөзді таңдасаңыз және мұны айтқыңыз келсе, сіз №3 мұнараны айтқыңыз келсе, кестеге «240» санын дұрыс ретпен енгізесіз. Егер мұны №1 мұнара айтса, онда сіз кестеге «40» белгісін қоясыз.

Келесі өрнек үшін де солай жасаңыз және т.б. Бұл мұнара арасындағы бірнеше өрнек немесе өте аз болуы мүмкін. (Мен бұл әдістің жадтан басқа шектеулері туралы білмеймін).

Басқа кестелердің мәндерін өзгертудің қажеті жоқ, өйткені олар кестеде айтылған уақытқа сәйкес келеді. Өзгертуге болатын басқа жол - 520 сызығы.

if (i> = 43) {// тізбектің соңы

Мұндағы i мәнін chatSayings кестесіндегі сөздер санына орнату керек еді.

Толық реттелетін мақал -мәтелдер жасау үшін (нағыз қызық басталады!), Сізге нөмірленген файлдардағы өрнектерді орнату және файлды ойнату үшін қажет уақытты білу қажет. Файлды SD картасының түбірлік каталогындағы «mp3» қалтасына төрт таңбалы әдіспен сақтаңыз («0001», «0002» және т.б.). Содан кейін сол файлды ойнату үшін қажетті уақытты миллисекундтарда тіркеңіз. Бұл мәндерді сәйкес кестеге енгізіңіз.

5400 миллисекундқа созылатын «0037 - [сіздің өрнегіңіз]» ретінде сақталған өрнек үшін chatSayings кестесіне '37' белгісін тиісті орынға қоятын едіңіз (және мұнара айтқанына байланысты префиксті қосыңыз) it), және 5400 сол жерде орналасқан NormaTimings кестесінде (мысалы, әр кестенің 5 -тармағы).

Енді 'i' мәні ұлғайған кезде код 0037 -ді 5400 миллисекундқа ойнайды.

Назар аударыңыз, мен «timeadder» айнымалысын қостым, ол ойнау кезінде әр сөзге қосымша уақыт қосады. Бұл мақал -мәтелдердің арасындағы қашықтықты береді, сондықтан олар бір -біріне сәйкес келмейді.

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

Бұл кодтаудың орнына сценарий жазуға баса назар аударуға болатынын білдіреді!

Егер біреуде мұны істеудің жақсы әдісі болса, мен оны естігім келеді !!

9 -қадам: Қорытынды

Қорытынды
Қорытынды

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

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

Мен басқа да идеяларды МТК мен мұнараларды басқаруды енгізуді көргім келеді!

Мен басқа дизайнерлер мен кодерлерге қолдануға / ұрлауға / үйренуге платформа бердім деп үміттенемін. Мен бұл адамдарға кодты үйренуге көмектесу үшін қолданылғанын көрдім. МТК және/немесе мұнарадан, мысалы, «Қолмен жұмыс режимі» сияқты бөлімді алып тастаңыз және студенттерге қолмен басқаруды енгізудің өзіндік әдісін қалыптастырыңыз!

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

Сәттілік және өз мұнаралар армиясын құруда көңілді болыңыз!

Ұсынылған: