Სარჩევი:

ვარსკვლავური ომები ოსტატი Arduino MEGA– ით: 5 ნაბიჯი (სურათებით)
ვარსკვლავური ომები ოსტატი Arduino MEGA– ით: 5 ნაბიჯი (სურათებით)

ვიდეო: ვარსკვლავური ომები ოსტატი Arduino MEGA– ით: 5 ნაბიჯი (სურათებით)

ვიდეო: ვარსკვლავური ომები ოსტატი Arduino MEGA– ით: 5 ნაბიჯი (სურათებით)
ვიდეო: “ვარსკვლავური ომების” თიზერი გამოქვეყნდა 2024, დეკემბერი
Anonim
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად
ვარსკვლავური ომები ოსტატი Arduino MEGA– სთან ერთად

ეს აჯანყების არასასურველი დროა. მიუხედავად იმისა, რომ სიკვდილის ვარსკვლავი განადგურებულია, იმპერიული ჯარები იყენებენ უფასო ტექნიკას და არდუინოს, როგორც საიდუმლო იარაღს.

ეს არის უფასო ტექნოლოგიების უპირატესობა, ნებისმიერ ადამიანს (კარგს თუ ცუდს) შეუძლია გამოიყენოს ისინი.

ფარული ბაზაზე, რომელიც მდებარეობს პლანეტა ანოატზე, ისინი აშენებენ 3D პრინტერს, რომელსაც შეუძლია გაიმეოროს იმპერიული გამანადგურებელი.

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

ეს გასაღები შედგება 4 ფერისგან და თქვენ გაქვთ 10 მცდელობა მისი გაშიფვრისთვის. არსებობს მხოლოდ ოთხი წესი:

  1. ფერები შეიძლება განმეორდეს
  2. თეთრი შუქი მიუთითებს იმაზე, რომ თქვენ მოხვდა მარჯვენა ფერი და პოზიცია
  3. იისფერი შუქი მიუთითებს იმაზე, რომ თქვენ მოხვდა ფერი, მაგრამ არა პოზიცია
  4. თუ შუქი არ არის, თქვენ ვერ გამოიცანით ფერი და პოზიცია.

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

პატარა პადავან, შეიძლება ძალა დაგემართოს გასაღების გასაშიფრად და ამით შეძლო გალაქტიკის გადარჩენა.

ნაბიჯი 1: მასალა

მასალა
მასალა

არდუინოსთან ვარსკვლავური ომების შესაქმნელად საჭირო მასალა დაყოფილია სამ ნაწილად.

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

დავიწყოთ ხუროთმოძღვრებით. საჭიროა შემდეგი მასალა:

  • 2 x MDF დაფა 90x60– დან
  • 1 x მცენარეული ქაღალდის ფურცელი

ელექტრონულ ნაწილში საჭიროა შემდეგი მასალა:

  • 1 x NeoPixel Strip 5 მეტრი
  • 1 x Arduino MEGA
  • 1 x კონდენსატორი 100 µF
  • 4 x წინააღმდეგობა 470 Ω
  • 5 x შავი ღილაკი
  • 5 x თეთრი ღილაკი
  • 1 x სიმძლავრე 5V-5A
  • 1 x სიმძლავრე 5V-2A

დაბოლოს, ინსტრუმენტის ნაწილში ჩვენ გამოვიყენეთ შემდეგი:

  • სილიკონის იარაღი ცხელი
  • ლაზერული CNC de MxN
  • ელექტრო შემდუღებელი
  • შემდუღებელი თუნუქის

ნაბიჯი 2: დიზაინი

დიზაინი
დიზაინი
დიზაინი
დიზაინი
დიზაინი
დიზაინი

ამ პროექტის ერთ -ერთი ყველაზე მნიშვნელოვანი ნაწილია საცხოვრებლის დიზაინი. იგი შედგება ლაზერული საჭრელით დაჭრილი 3 ნაწილისგან.

ბაზა აღებულია MDF- ში 90x60 ცალიდან. გაითვალისწინეთ მასალის ზომები, რადგან თქვენ დაგჭირდებათ ლაზერული საჭრელი საკმარისად დიდი.

ამ ნაბიჯის ბოლოს შეგიძლიათ იპოვოთ SVG ფაილი.

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

მას აქვს იგივე ფორმა, როგორც ბაზა.

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

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

ნაბიჯი 3: ელექტრონული შეკრება

ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება
ელექტრონული შეკრება

ელექტრონიკის შეკრების პირველი ეტაპი იყო NeoPixel- ის 5 მეტრიანი ზოლის მოჭრა 8 პიქსელის 8 ზოლად და თითოეული მოთამაშისთვის 4 ცალკეული პიქსელი. საერთო ჯამში 84 პიქსელი თითო მოთამაშეს. ერთის მხრივ, 10 ზოლები ერთმანეთზეა აწყობილი, რასაც მოჰყვება მეორე და ტოვებს საკმარის კაბელს, რათა თითოეული ზოლი რამდენიმე მილიმეტრის პარალელურად მოთავსდეს. პიქსელების ეს მატრიცა იქნება თითოეული თამაშისა და შედეგის ჩვენება. 4 პიქსელი აჩვენებს გასაღების ოთხ ფერს და დანარჩენი ოთხი პიქსელი აჩვენებს შედეგს. შეგახსენებთ, რომ შედეგად ჩვენ უნდა:

  • თუ პიქსელი არის თეთრი, ის წარმატებული პოზიცია და ფერია.
  • თუ პიქსელი იისფერია, ფერი სწორია, მაგრამ არა პოზიცია.
  • თუ პიქსელი გამორთულია, არც ფერი და არც პოზიცია არ არის სწორი.

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

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

თითოეულ ზოლს სერიულად უკავშირდება 470Ω რეზისტორი მონაცემების დასაცავად. პიქსელების თითოეული ზოლის მონაცემთა კაბელი დაკავშირებულია ციფრულ პინთან. Arduino MEGA- ში არჩეული ქინძისთავებია 6, 7, 8 და 9.

მაგალითად, 6 და 7 არის მოთამაშეს 1 და 8 და 9 მოთამაშეს 2.

ღილაკები, რომლებიც ჩვენ გამოვიყენეთ, არის არკადული მანქანების ტიპიური ღილაკები. ჩვენ ვფიქრობდით, რომ ისინი კარგად გამოიყურებოდნენ და ასე იყო.

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

მოთამაშეების განასხვავებლად, ზოგიერთი ღილაკი თეთრია, ზოგი კი შავი.

თითოეულ მოთამაშეს აქვს 4 ღილაკი ზემოთ და 1 ღილაკი ქვემოთ. 4 ზედა ღილაკი ემსახურება გასაღების თითოეული პოზიციის ფერის შერჩევას.

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

ყველაფრის აწყობამდე შევაერთეთ ყველა კაბელი. ასე რომ თქვენ დაგჭირდებათ ბევრი კაბელი. ეს დამოკიდებული იქნება თამაშის ზომაზე. ჩვენს შემთხვევაში, ეს საკმაოდ დიდი იყო.

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

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

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

კვება გარკვეულწილად გართულდა. პრინციპში და სქემის დათვალიერებისას, ჩვენ მხოლოდ ერთი დამტენის გამოყენებას ვაპირებდით. თუმცა, პირველი ტესტებისა და NeoPixel- ის მოხმარების შემდეგ ჩვენ ვნახეთ, რომ მას დასჭირდება ორი დამტენი.

თითოეულ პიქსელს შეუძლია მოიხმაროს მაქსიმუმ 60 mA. თუ გავამრავლებთ 168 პიქსელზე, მიიღებთ მოხმარებას დაახლოებით 10 ა.

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

ჩვენ 50% -საც კი არ მივაღწევთ, ამიტომ 5V და 5A დამტენი საკმარისზე მეტია.

მეორეს მხრივ, Arduino MEGA– ს აქვს ცალკე დამტენი, რომლის დაკავშირება შესაძლებელია ჯეკის კონექტორის საშუალებით ან USB პორტის საშუალებით. ერთი შესაძლო გაუმჯობესება იქნება ერთი დამტენი მთელი სისტემისთვის.

ნაბიჯი 4: თამაშის პროგრამირება

თამაშის პროგრამირება
თამაშის პროგრამირება
თამაშის პროგრამირება
თამაშის პროგრამირება

პროგრამირება განხორციელდა ორი ბიბლიოთეკის გამოყენებით: OneButton და Adafruit_NeoPixel.

OneButton ბიბლიოთეკა საშუალებას გაძლევთ გააკონტროლოთ ღილაკები მარტივი გზით შეფერხებებით.

Adafruit_NeoPixel ბიბლიოთეკამ მოგვცა საშუალება NeoPixel ზოლის გაკონტროლება ძალიან მარტივი გზით.

პროგრამირება ემყარება სხვადასხვა მდგომარეობას, რომელშიც პროგრამული უზრუნველყოფის პროგრამა შეიძლება იყოს:

თამაშის დაწყება. მდგომარეობა = 0

ამ მდგომარეობაში თამაში იწყება და ორივე მოთამაშეს აქვს განათების თანმიმდევრობა, რაც მიუთითებს იმაზე, რომ თამაში დაიწყება. ამ მდგომარეობის დროს ღილაკები არ რეაგირებენ.

საწყისი მდგომარეობა. მდგომარეობა = 1

საწყის მდგომარეობაში დაელოდეთ ორი მოთამაშედან ერთს ორჯერ დააწკაპუნეთ დადასტურების ღილაკზე (მეხუთე ღილაკი). ეს მოქმედება საშუალებას მოგცემთ დაიწყოთ თამაში.

თამაშის მომზადება. მდგომარეობა = 2

თამაშის მომზადების პროცესში ყველა ცვლადი გადატვირთულია და იწყება ფერის გასაღების შემთხვევითი შერჩევა.

თამაშის მდგომარეობა = 3

მე -3 მდგომარეობაში თამაში იწყება. თითოეული მოთამაშე ირჩევს ღილაკს ღილაკებით და ამტკიცებს მას დადასტურების ღილაკზე დაჭერით. ეს მდგომარეობა შეიძლება დასრულდეს ორი გზით: როდესაც მოთამაშე აღმოაჩენს გასაღებს ან როდესაც ორი მოთამაშე მოიხმარს მათ 10 მცდელობას.

ერთი გამარჯვებული სახელმწიფო = 4

თუ მოთამაშემ მოიგო, მწვანე დაფა ნაჩვენები იქნება მის დაფაზე, ხოლო მომგებიანი კომბინაცია და წითელი ჯვარი დამარცხებულზე.

მიბმული თამაში. მდგომარეობა = 5

გათანაბრების შემთხვევაში არაფერია ნაჩვენები არცერთ დაფაზე და ორივე მოთამაშის დაფაზე მომგებიანი კომბინაცია.

იქნება გამარჯვებული თუ თამაშში ფრე, მომდევნო მდგომარეობა იქნება საწყისი, რომელიც ელოდება ორმაგ დაწკაპუნებას.

თქვენ შეგიძლიათ იპოვოთ ყველა კოდი ქვემოთ. ერთადერთი რაც ესპანურად არის:)

ნაბიჯი 5: ტესტირება და გაუმჯობესება

თამაში შემოწმებულია თამაშით. ზემოთ ვიდეოში შეგიძლიათ ნახოთ სრული თამაში.

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

შემდეგ მე ჩამოვთვლი მათ.

  • ორი მოთამაშისთვის სულ 10 მცდელობით შეძლებს რიგრიგობით თამაშს. როდესაც მოთამაშე გასაღებს ცდილობს, მეორე მოთამაშე ნახავს სპექტაკლს.
  • ინდივიდუალური თამაშის რეჟიმი ისე, რომ მხოლოდ ერთ ადამიანს შეუძლია თამაში.
  • გაააქტიურეთ თითოეული თავისი გასაღებით.
  • ჩართეთ OLED ეკრანი.
  • გამოიყენეთ ერთი დამტენი ყველაფრისთვის.
  • დაუკავშირდით NodeMCU ESP8266

დარწმუნებული ვარ, ბევრი ადამიანი მოვა ბევრ გაუმჯობესებას. ველოდები კომენტარებს ქვემოთ.

და შეიძლება ძალა შენთან იყოს.

გირჩევთ: