Мазмұны:

Arduino бейне ойын контроллері: 4 қадам
Arduino бейне ойын контроллері: 4 қадам
Anonim
Arduino бейне ойын контроллері
Arduino бейне ойын контроллері

Сізде Arduino жиынтығы бар, бірақ онымен не істеу керектігін білмейсіз бе? Мүмкін емес, бірақ бұл нұсқаулықта мен сізге Arduino -ны жобаңызға қалай құру, кодтау және біріктіру керектігін біртіндеп көрсетемін. Қазіргі уақытта бұл нұсқаулық тек Clickteam Fusion Developer 2.5 көмегімен тексерілген, бірақ құрастыру мен Arduino кодының қадамдарын әмбебап қолдануға болады. Бұл нұсқаулық болашақта Unreal және Unity үшін жаңартылуы мүмкін.

1 -қадам: сатып алу тізімі

  • Arduino Uno немесе ұқсас
  • USB кабелі
  • (400 балл) Нан тақтасы немесе 1 x перфорациялық тақта
  • Arduino үйлесімді сымдар.
  • Әр түрлі сенсорлар. Мен өзімнің мысал жобамда мынаны қолдандым:
  • Панельді бекіту потенциометрі 10K тақтаға ыңғайлы
  • Фоторезистор
  • Сезімтал резистор

2 -қадам: Қосылымдар

Қосылымдар
Қосылымдар

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

3 -қадам: Arduino коды

Егер мен сияқты сенсорларды қолданғыңыз келсе, осы кодты Arduino -ға көшіріп, жүктеңіз. Әйтпесе сенсорлар үшін өзіңіздің жеке кодты пайдалана аласыз. Жалғыз жаһандық маңызды нәрсе - сіздің ойын қозғалтқышында пайдаланғыңыз келетін айнымалы мәндер сериялық мониторға басып шығарылады немесе басқа жолмен оқылады.

// Олар басында орнатылады және бағдарлама жұмыс істеп тұрған кезде өзгертілмейді. PIN кодын қолданатын ANALOG сияқты.

const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; // Айнымалылар: // LIGHT SENSOR: // Жарық шамасының айнымалысы: int photocellReading; // ПОТЕНЦИОМЕТР // Потенциометр int мәнінің мәні; // ҚЫСЫМ СЕНСОРЫ // Бұл қысым датчигінен алынған деректердің ауыспалы мәні. int fsrReading; // fsrReading айнымалы int қысымының салыстырылған нұсқасы; void setup () {// бір рет іске қосу үшін орнату кодын осында қойыңыз: pinMode (potPin, INPUT); Serial.begin (9600); } void loop () {// PRESSURE SENSOR // Мұнда біз берілген түйіннен деректерді оқу үшін көрсетілген fsrAnalogPin қолданамыз. fsrReading = analogRead (fsrAnalogPin); // Карта мәні 0-1023-0-255. қысым = карта (fsrReading, 0, 1023, 0, 255); // Қысымның екеуінің бірін басып шығаратын белгілі бір мөлшерден төмен немесе жоғары екенін тексеріңіз. Бұл басылған айнымалы ойын қозғалтқышында кейінірек қолданылады. if (қысым 70) {Serial.print («6»); } // POTENTIOMETER мәні = analogRead (potPin); // Потенциометр мәнінен = аналогтық мәнді оқу және сақтау = map (мән, 0, 1023, 0, 360); // Карта мәні 0-1023-0-360 // Мұнда біз 360-ты алты түрлі сегментке бөлеміз. // Сегменттердің мөлшерін жоғары сомаға өзгертуге болады. Әр сегментте кішірек диапазон болады. Мысалы, 8 сегменттің әрқайсысының диапазоны 45 болады. (360 /сегменттер саны) // Егер ағымдағы мән сегментке түссе, ол сол сегменттің атауын басып шығарады. if (60 мәні мен 120 мәні мен 180 мәні мен 240 мәні және 300 мәні мен мәні <375) Serial.print («Алты»); // LIGHT SENSOR // Мұнда біз тағы да айнымалы мәнді оқыдық және орнатамыз, бұл жағдайда фотоэлементті оқу. photocellReading = analogRead (photocellPin); // Біз жарық мөлшерін тексереміз, қараңғы және өте күңгірт баспа 3 және қалыпты жарық мәндерін басып шығару 4. if (photocellReading <10) {Serial.println (« - 3»); } else if (photocellReading <200) {Serial.println (« - 3 -»); } if if (photocellReading <500) {Serial.println (« - 4 -»); } // Сериядағы сандар: // Бірінші сан - қысым сенсоры, 5 басылмайды және 6 басылады. // Осыдан кейін потенциометр қай сегментте қосылады. // Ал соңғы сан не 3 = қараңғы, не 4 = жарық.

4 -қадам: Ойын жүйесінде: 2.5 командасын басыңыз

Кеңейтім менеджерінен сериялық нысанды тауып, оны орнатыңыз.

Сериялық объектіні, есептегіш пен жіпті кадрға салыңыз. (Жақтауды тінтуірдің оң жақ түймешігімен нұқыңыз - нысанды енгізіңіз)

Оқиға редакторында оқиға жасаңыз: егер деректер күтілсе: өзгертілетін жолды GetData мәніне орнатыңыз («сериялық нысан»)

Бұл жолды Arduino жіберетін кез келген деректерге орнатады, енді жол сериялық мониторға ұқсас болуы керек.

Басқа оқиға жасау Әрқашан: Есептегішті келесіге қойыңыз: Табыңыз ($ («Жол»), «4», 0)

Бұл мысал Arduino кодында көрінетін жарыққа тең 4 -ті табуға тырысады.

Егер ол 4 -ті тапса, онда ол есептегішті 4 -ке қояды, егер 4 -ті таба алмаса, есептегіш -1 болады.

Енді сіз осы нәтижемен бірдеңе жасау үшін жаңа оқиғаны қоса аласыз:

Егер есептегіш = -1 болса: мұнда жалған болса, не болуы керектігін қоюға болады, мысалы, шамның өшуі.

Егер есептегіш = -1: Бұл айнымалыны тапқанын және есептегіш сол айнымалы болуы мүмкін болғанша орнатылғанын білдіреді (егер ол -1 емес болса), мұнда сіз оны жасай аласыз, осылайша шам анимациясы қосылады.

Негізінде жалған -1 немесе шын деп есептелген есептегіштерді қолдану арқылы сіз оқиғаларды орындай аласыз.

Ұсынылған: