Სარჩევი:

სწრაფი რეაქციის თამაში: დისტანციური ვერსია: 5 ნაბიჯი (სურათებით)
სწრაფი რეაქციის თამაში: დისტანციური ვერსია: 5 ნაბიჯი (სურათებით)

ვიდეო: სწრაფი რეაქციის თამაში: დისტანციური ვერსია: 5 ნაბიჯი (სურათებით)

ვიდეო: სწრაფი რეაქციის თამაში: დისტანციური ვერსია: 5 ნაბიჯი (სურათებით)
ვიდეო: კახი კალაძე დატროლეს 😀🤣🤣 2024, ივლისი
Anonim
სწრაფი რეაქციის თამაში: დისტანციური ვერსია
სწრაფი რეაქციის თამაში: დისტანციური ვერსია

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

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

Https://abra-electronics.com– ის გამოყენებით, ფასი მავთულხლართებისა და არდუინოს გამოკლებით არის $ 32.12 CAD.

ნაბიჯი 1: ნაბიჯი 1: მანძილის სენსორი

ნაბიჯი 1: მანძილის სენსორი
ნაბიჯი 1: მანძილის სენსორი

პირველი ნაბიჯი არის პლანშეტზე ულტრაბგერითი მანძილის სენსორის დაყენება და არდუინოს მიერთება. სენსორის ზუსტ პოზიციას ნამდვილად არ აქვს მნიშვნელობა, მაგრამ იდეალურია ის იყოს ზღვართან ახლოს ისე, რომ ადგილი დარჩეს სხვა კომპონენტებისთვის, როგორც ეს ნაჩვენებია ზემოთ სურათზე. სენსორზე არის ოთხი ქინძისთავი; GND, VCC, TRIG და ECHO. GND და VCC უნდა იყოს შეყვანილი მიწაში და დენის რელსებში, ხოლო დანარჩენი ორი ქინძისთავის მავთული არდუინოს ორ პინში. ორი ქინძისთავი, რომელიც მე გამოვიყენე, იყო 12 ECHO– სთვის და 11 TRIG– ისთვის. გამოიყენეთ ორი სხვა მავთული ელექტროგადამცემი ხაზის დასაყენებლად და სახმელეთო სარკინიგზო მაგისტრალის საშუალებით დააკავშირეთ დენის სარკინიგზო 5V პინთან და სახმელეთო სარკინიგზო მაგისტრალზე GND პინთან.

ნაბიჯი 2: ნაბიჯი 2: სერვო მოტორი

ნაბიჯი 2: სერვო ძრავა
ნაბიჯი 2: სერვო ძრავა

შემდეგი ნაბიჯი არის სერვო ძრავის დაყენება. ამ პროექტში, სერვო ძრავა მუშაობს როგორც ტაიმერი. ის დაიწყება 1 გრადუსიდან და იმ პერიოდის განმავლობაში, როდესაც მომხმარებელს მოუწევს ხელების დისტანცია, ბრუნდება 180 გრადუსამდე. მე გამოვიყენე 2 წამი, როდესაც მომხმარებელი გაარკვევს, თუ რამდენად შორს არის მათ ხელების დაშორება, ამიტომ სერვო ბრუნავს 179 გრადუსით 2 წამის განმავლობაში, ბრუნავს მოკლე ინტერვალებით. სერვო ძრავას აქვს სამი მავთული; ჩვეულებრივ ყვითელი, წითელი და ყავისფერი. წითელი მიდის ელექტროგადამცემი ხაზში, რომელიც უკვე შეყვანილია 5V- ში, ხოლო ყავისფერი მიდის მიწისქვეშა რკინიგზაში, რომელიც უკვე შეყვანილია GND- ში. საბოლოო მავთული ჩართულია არდუინოს პინში. მე ავირჩიე პინი #9 ამისათვის. შემდეგ, თქვენ გჭირდებათ კონდენსატორი, რომელიც აკავშირებს იმავე სარკინიგზო მაგისტრალს, რომელსაც აქვს სერვო ძრავის სიმძლავრე და მიწის მავთულები, როგორც ეს მოცემულია ზემოთ სურათზე.

ნაბიჯი 3: ნაბიჯი 3: RGB LED

ნაბიჯი 3: RGB LED
ნაბიჯი 3: RGB LED

LED- ის ფუნქცია ამაში მდგომარეობს ქულის მასშტაბის როლში. როდესაც მოთამაშის ქულა არის დაახლოებით 0, LED იქნება თეთრი და უფრო წითელი გახდება, თუ მოთამაშის ქულა მცირდება და მწვანე, თუ მოთამაშის ქულა იზრდება. ამ LED- ს აქვს ოთხი ფეხი; წითელი ფეხის ფეხი, ცისფერი ფეხი, მწვანე ფეხი და საერთო კათოდი, რომელიც გაყოფილია დანარჩენ სამ ფეხს შორის. საერთო კათოდი, ყველაზე გრძელი ფეხი, არის ჩართული ელექტროგადამცემი ხაზში, ასე რომ ის იღებს 5 ვოლტს. მიამაგრეთ 330 ოჰმეტიანი რეზისტორები დანარჩენ სამ ფეხის ფეხს და მიამაგრეთ ამ რეზისტორების მეორე ბოლოები PWM ციფრულ ქინძისთავებზე არდუინოზე. ის, რაც მე გამოვიყენე, იყო ციფრული ქინძისთავები 3, 5 და 6, შესაბამისად წითელი, მწვანე და ლურჯი ფეხებისთვის.

ნაბიჯი 4: ნაბიჯი 4: LCD

ნაბიჯი 4: LCD
ნაბიჯი 4: LCD

ბოლო კომპონენტი არის LCD, რომელიც ნიშნავს თხევადი ბროლის ჩვენებას. ამის მიზანია შეატყობინოს მოთამაშეს მათი მიმდინარე ქულა, ასევე მანძილი, რომელიც მათ სჭირდებათ სენსორისგან ხელების მოსაშორებლად. აქ არის ოთხი ქინძისთავები; GND, VCC, SDA და SCL. GND და VCC შეაერთებენ მიწასა და დენის რელსებს, შესაბამისად. SDA პინი უნდა იყოს შეყვანილი ანალოგურ პინ A4– ში, ხოლო SCL პინი უნდა იყოს შეყვანილი ანალოგი A5– ში. სხვა კომპონენტებისგან განსხვავებით, თქვენ უნდა შეაერთოთ SDA და SCL ქინძისთავები A4 და A5.

ნაბიჯი 5: ნაბიჯი 5: კოდი

ახლა, როდესაც ჩვენ შევაერთეთ ყველა კომპონენტი, შეგვიძლია დავწეროთ კოდი. კოდის პირველი ნაწილი არის საჭირო ბიბლიოთეკების იმპორტი და გამოვაცხადოთ ჩვენი ცვლადები და რომელ კომპონენტებშია შეყვანილი კომპონენტები. ჩვენ უნდა შევიტანოთ Wire, LiquidCrystal_I2C და Servo ბიბლიოთეკები ამ კოდისთვის.

#ჩართეთ

#ჩართეთ

#ჩართეთ

Servo myServo;

int const trigPin = 11;

int const echoPin = 12;

int redPin = 3;

int greenPin = 5;

int bluePin = 6;

int ქულა = 0;

int tim = 500;

int მიმდინარე = შემთხვევითი (8, 16); // შემთხვევითი მნიშვნელობა, სადაც მომხმარებელს უნდა მოშორდეს ხელი სენსორისგან

LiquidCrystal_I2C LCD (0x27, 16, 2); // LCD დაყენება

ახლა ჩვენ უნდა გამოვიყენოთ void setup (), რომ გამოვაცხადოთ ჩვენი pin ტიპები და დავაყენოთ სხვა აუცილებელი კომპონენტები.

void setup () {myServo.attach (9); სერიული.დაწყება (9600); pinMode (trigPin, OUTPUT); pinMode (echoPin, INPUT); pinMode pinMode (redPin, OUTPUT); pinMode (greenPin, OUTPUT); pinMode (bluePin, OUTPUT); lcd.init (); lcd. განათება (); lcd. დასაწყისი (16, 2); lcd. წმინდა (); // LCD დაყენება}

ახლა ჩვენ უნდა დავაყენოთ RGB LED კოდი ფუნქციისა და PWM გამოყენებით:

void setColor (int წითელი, int მწვანე, int ლურჯი) {

წითელი = 255 - წითელი;

მწვანე = 255 - მწვანე;

ლურჯი = 255 - ლურჯი;

analogWrite (redPin, წითელი);

analogWrite (greenPin, მწვანე);

analogWrite (bluePin, ლურჯი);

}

ახლა ჩვენ უნდა დავამატოთ ბათილი მარყუჟი (). აქ ჩვენ ვაწარმოებთ შემთხვევით რიცხვებს და გამოვიყენებთ if განცხადებების სერიას მოთამაშისთვის თამაშის გასაკონტროლებლად. მიმდინარე ცვლადი, ზემოთ მითითებული, არის მიმდინარე მანძილისთვის, როდესაც მოთამაშემ უნდა დაშორდეს სენსორს.

ვინაიდან ბათილი მარყუჟის კოდი () ძალიან გრძელია, მე ვათავსებ ბმულს დოკუმენტზე, რომელსაც აქვს ეს კოდი:

docs.google.com/document/d/1DufS0wuX0N6gpv…

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

გრძელი მიკროწამები ToInches (გრძელი მიკროწამები) {

დაბრუნების მიკროწამები / 74/2;

}

ახლა ჩვენ ვუერთდებით სადენიანი არდუინოს კომპიუტერს კოდთან ერთად, ვაყენებთ პორტებს და ვუშვებთ მას! ამ თამაშს აქვს ორი რეჟიმი. თქვენ შეგიძლიათ გამოიყენოთ მხოლოდ LCD დისპლეი, სერვო ძრავა, სენსორი და RGB LED და თქვენ იცით მხოლოდ მანძილი, რომელიც უნდა იყოს სენსორთან შედარებით, რაც უფრო რთული რეჟიმია. უფრო მარტივი რეჟიმი მოიცავს სერიული მონიტორის გამოყენებას ინსტრუმენტებში> სერიული მონიტორი, რომელიც ყოველ წამს გაცნობებთ სენსორისგან დაშორების შესახებ, ასე რომ თქვენ შეძლებთ საჭირო კორექტირების გაკეთებას.

Მადლობა წაკითხვისთვის!

გირჩევთ: