Სარჩევი:

Arduino ვიდეო თამაშების კონტროლერი: 4 ნაბიჯი
Arduino ვიდეო თამაშების კონტროლერი: 4 ნაბიჯი

ვიდეო: Arduino ვიდეო თამაშების კონტროლერი: 4 ნაბიჯი

ვიდეო: Arduino ვიდეო თამაშების კონტროლერი: 4 ნაბიჯი
ვიდეო: How to Build LDmicro Arduino PLC (Part 1) 2024, ნოემბერი
Anonim
Arduino ვიდეო თამაშების კონტროლერი
Arduino ვიდეო თამაშების კონტროლერი

გაქვთ არდუინოს ნაკრები, მაგრამ არ იცით რა უნდა გააკეთოთ? ალბათ არა, მაგრამ ამ ინსტრუქციულად მე გაჩვენებთ ეტაპობრივად თუ როგორ უნდა შექმნათ, კოდირდეთ და ინტეგრირდეთ Arduino თქვენს პროექტში. ამ მომენტში ეს სახელმძღვანელო მხოლოდ ტესტირებულია Clickteam Fusion Developer 2.5– ით, მაგრამ build და Arduino კოდის ნაბიჯები შეიძლება გამოყენებულ იქნას საყოველთაოდ. ეს სახელმძღვანელო შეიძლება განახლდეს მომავალში Unreal და Unity– ისთვის.

ნაბიჯი 1: საყიდლების სია

  • არდუინო უნო ან მსგავსი
  • USB კაბელი
  • (400 ქულა) პურის დაფა ან 1 x პერფ/ზოლის დაფა
  • Arduino თავსებადი მავთულები.
  • სხვადასხვა სენსორები. მე გამოვიყენე შემდეგი ჩემს მაგალით პროექტში:
  • პანელის საყრდენი Potentiometer 10K breadboard მეგობრული
  • ფოტორეზისტორი
  • ძალის მგრძნობიარე რეზისტორი

ნაბიჯი 2: კავშირები

კავშირები
კავშირები

შენიშვნა: ეს არის მხოლოდ სენსორები, რომლებიც მე პირადად გამოვიყენე ჩემი პროექტისთვის. ეს ნიშნავს, რომ გაცილებით მეტი ვარიანტი არსებობს. ნაბიჯ ნაბიჯ ინსტრუქცია იმის შესახებ, თუ როგორ უნდა დააკავშიროთ ისინი, შეგიძლიათ ნახოთ სხვადასხვა საიტებზე, სენსორის მიხედვით.

ნაბიჯი 3: Arduino კოდი

დააკოპირეთ და ატვირთეთ ეს კოდი თქვენს Arduino– ში, თუ გსურთ გამოიყენოთ იგივე სახის სენსორები, როგორც მე. წინააღმდეგ შემთხვევაში, შეგიძლიათ გამოიყენოთ თქვენი საკუთარი კოდი თქვენი სენსორებისთვის. ერთადერთი გლობალური მნიშვნელოვანი რამ, რაც საჭიროა, არის ის, რომ ცვლადები, რომელთა გამოყენებაც გსურთ თქვენი თამაშის ძრავაში, დაბეჭდოთ სერიულ მონიტორზე ან წაიკითხოთ სხვაგვარად.

// ეს მითითებულია დასაწყისში და არ იცვლება პროგრამის გაშვებისას. როგორი ANALOG IN pin იყენებს.

const int potPin = A0; const int fsrAnalogPin = 5; const int photocellPin = 2; // ცვლადები: // სინათლის სენსორი: // სინათლის რაოდენობის ცვლადი: int photocellReading; // პოტენციომეტრი // პოტენომეტრის მნიშვნელობა int მნიშვნელობით; // წნევის სენსორი // ეს არის უხეში მონაცემების ცვლადი წნევის სენსორიდან. int fsr კითხვა; // fsrRanding ცვლადი int წნევის რუქრებული ვერსია; void setup () {// განათავსეთ თქვენი კონფიგურაციის კოდი აქ, ერთხელ გასაშვებად: pinMode (potPin, INPUT); სერიული.დაწყება (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); // წაიკითხეთ და შეინახეთ ანალოგური მნიშვნელობა პოტენომეტრის მნიშვნელობიდან = რუკა (მნიშვნელობა, 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 -"); } else if (photocellReading <500) {Serial.println (" - 4 -"); } // ნომრები სერიალში: // პირველი რიცხვი არის წნევის სენსორი, 5 არ არის დაჭერილი და 6 დაჭერილია. // ამის შემდეგ პოტენციტომეტრი რომელ სეგმენტზეა ამჟამად. // და ბოლო რიცხვი არის 3 = ბნელი ან 4 = მსუბუქი.

ნაბიჯი 4: თამაშის ძრავაში: დააწკაპუნეთ გუნდზე 2.5

გაფართოების მენეჯერში იპოვეთ სერიული ობიექტი და დააინსტალირეთ.

მოათავსეთ სერიული ობიექტი, მრიცხველი და სტრიქონი თქვენს ჩარჩოში. (მარჯვენა ღილაკით ჩარჩოში - ჩასვით ობიექტი)

ღონისძიების რედაქტორში შექმენით ღონისძიება: თუ მონაცემები ელოდება: შეცვალეთ სიმებიანი GetData– ში ("სერიული ობიექტი")

ეს დაადგენს სტრიქონს ნებისმიერ მონაცემზე, რომელსაც აგზავნის Arduino, სტრიქონი ახლა სერიული მონიტორის მსგავსი უნდა იყოს.

შექმენით სხვა ღონისძიება ყოველთვის: დააყენეთ მრიცხველი: Find (სტრიქონი $ ("სიმებიანი"), "4", 0)

ეს მაგალითი შეეცდება იპოვოს 4, რომელიც უდრის სინათლეს, როგორც ჩანს არდუინოს კოდექსში.

თუ ის იპოვის 4 -ს ის მრიცხველს დააყენებს 4 -ზე, თუ ვერ იპოვის მე -4 მრიცხველი იქნება -1.

ახლა თქვენ შეგიძლიათ დაამატოთ ახალი ღონისძიება ამ შედეგის მისაღწევად:

თუ მრიცხველი = -1: აქ შეგიძლიათ განათავსოთ ის, რაც უნდა მოხდეს, თუ ის ყალბია, ისევე როგორც ნათურის ანიმაციის გამორთვა.

თუ მრიცხველი = -1: ეს ნიშნავს, რომ მან იპოვა ცვლადი და მრიცხველი დაყენებულია, როგორიც არ უნდა იყოს ეს ცვლადი (რამდენადაც არ არის -1), აქ შეგიძლიათ გააკეთოთ ისე, რომ ნათურის ანიმაცია ჩართოს ჩართულობაზე.

ძირითადად, მრიცხველების გამოყენებით, რომლებიც დაყენებულია ან -1 –ზე, რომელიც ყალბია ან -1 – ის სიმართლეა, შეგიძლიათ მოვლენები მოხდეს.

გირჩევთ: