Mündəricat:

Arduino Layihəsi // Simon Söylədi (Fövqəladə Nəticə ilə): 5 Addım
Arduino Layihəsi // Simon Söylədi (Fövqəladə Nəticə ilə): 5 Addım

Video: Arduino Layihəsi // Simon Söylədi (Fövqəladə Nəticə ilə): 5 Addım

Video: Arduino Layihəsi // Simon Söylədi (Fövqəladə Nəticə ilə): 5 Addım
Video: Arduino - Ağıllı Hər Şey layihəsi - Elçin Abbasov / Elchin Abbasov 2024, Iyul
Anonim
Arduino Layihəsi // Simon Deyir (Dəqiq Nəticə ilə)
Arduino Layihəsi // Simon Deyir (Dəqiq Nəticə ilə)

Salam!

Bu çox başlanğıc dostudur, çünki bu mənim ilk arduino layihəmdir. Bu layihəni hal -hazırda izlədiyim "Əgər bu o zaman" adlanan kursu keçmək üçün yaratdım.

Bu Təlimat kitabında, Arduino -dan istifadə edərək cəza nəticəsində öz Simon Says oyununuzu necə edəcəyinizi sizə göstərəcəyəm. Oyuna bir az da gözəllik qatmaq üçün cəza nəticəsi əlavə etməyi seçdim; istifadəçiyə yalnız işıqları izləmək və əvəzində düymələri basmaq əvəzinə arduino ilə daha çox qarşılıqlı əlaqə yaradır.

Cərimənin nəticəsi istifadəçinin təzyiq sensoruna basmasıdır. Arduino, istifadəçinin verdiyi təzyiqə reaksiya verəcək və təzyiqə əsaslanaraq, arduino qırmızı və ya yaşıl LED işıqlandırmasını geri qaytarır. Qırmızı LED yanarsa, bu, oyunçunun çıxma nöqtəsi alması deməkdir, yaşıl LED yanarsa heç bir şey olmaz. Yalnız oyunu sıfırlaya və yenidən oynaya bilərsiniz.

Ağ lövhə işarəsi ilə sistemin özündə neçə çıxılma nöqtəsi olduğunu qeyd edə bilərsiniz. Bu, layihənin dizaynı ilə bir az əlavə qarşılıqlı əlaqə yaradır.

Addım 1: MALZEMELER

Əvvəlcə materialları özünüz əldə etmək istəyə bilərsiniz. Bir elektronika dəsti almışdım və daha çox elektronika almaq istəmədiyim üçün həmin dəstdə olan əşyaları və alətləri istifadə etmək istədim. Özünüzə əyləncəli bir şey əlavə etməkdən çekinmeyin.

İstifadə olunan maddələr:

- Arduino Uno (1x)

- Çörək paneli (1x)

- LEDlər (4x və mümkünsə fərqli rənglərdə, çünki oyunu daha rəngli edir)

- PCB düymələri (4x, 6x6mm ölçüdə)

- 200 ohm müqavimət (4x)

- 10K ohm rezistorlar (5x)

- Təzyiq Sensoru (1x)

- Çörək taxtası tullanan tellər dəsti

- Perf / Strip board (1x)

- Köpük lövhəsi (ağ)

- asetat folqa

- Washi lenti

- Pambıq yastiqciqlar

- Rəngli lent

- Yapışqan

İstifadə olunan alətlər:

- Lehimleme dəmir

- Kəsicilər

- Kəsmə kəlbətinləri

- Lazer kəsici

- Stanley bıçağı

Addım 2: KODUNUZU QURUN

Özümü proqramlaşdırmağa başlamazdan əvvəl arduinoya əsaslanan digər Simon Says oyunlarına baxdım. Bunları kodlaşdırmada müqayisə etdim. Bunlardan istinad olaraq istifadə etdim:

- Sxematik və kod I ilə təlimatlandırıla bilər. Kodlaşdırma ilə tanış deyilsinizsə, bunu bir anda başa düşmək çətin ola bilər.

- Sxematik və kod II ilə təlimatlandırıla bilər

- Sxematik və kod III ilə təlimatlandırıla bilər

Oyun üç ayrı vəziyyətə bölünür: START, PLAY və GAMEOVER. Bu, oyunu oynayanda hər dəfə təkrarlanan bir dairəyə bənzəyir. Kodun qalan izahatını burada tapa bilərsiniz.

Cərimə nəticəsi üçün bir taymer istifadə etdim. Sensorun nə qədər təzyiq göstərdiyini izləyir. If/else ifadələrini istifadə edərək, qırmızı LED və ya yaşıl LED yanarsa təzyiqinizdən asılıdır.

int onGameOver () {//Serial.print (millis ());

Serial.print (" -");

Serial.println (taymer);

əgər (analogRead (A0)> 0)

{// Timer zetten biz 2 saniyə (əgər setOnce)

{Serial.println ("tıklandı");

setOnce = doğru;

taymer = millis () + 2000; }}

if (millis ()> timer && setOnce)

{// Taymer dəyişdi

Serial.println ("afgelopen.");

blinkOnce = yalan; setOnce = yalan;

qayıt (analogRead (A0) <512? 2: 1); }}"

Addım 3: ŞEMATİK

Sxematik
Sxematik

Oyununuzu prototip etmək üçün çörək taxtanızdan istifadə edin. Çörək taxtasının bağlı olduğunu unutmayın.

Çox güman ki, bir çox çörək lövhəsinin fərqli sətirlərdə və sütunlarda işarələnmiş nömrələri və hərfləri olduğunu gördünüz, ancaq bunlar dövrə qurarkən sizə rəhbərlik etməkdən başqa bir məqsəd daşımır. Etməyə çalışdığınız əlaqənin sıra nömrəsini bilirsinizsə, yüz dəfə yox, bu nömrəyə bir tel bağlamağı daha asanlaşdırır.

Üfüqi cərgələrdən başqa, çörək lövhələrində adətən tərəflər boyunca şaquli uzanan elektrik rayları var.

Addım 4: Lehimləmə

Lehimləmə
Lehimləmə

Müəllimlərimin mənə qiymət verəcəyi müddətdə layihəmin sanki dağılacağı riskini almaq istəmədiyim üçün (ictimai nəqliyyatda da səyahət etməliyəm), layihəmi davam etdirmək əvəzinə onu da lehimləməyi seçirəm. çörək taxtası.

Simvolları və əşyaları necə istifadə edəcəyimi bilmədiyim üçün dövrəni xəritəyə salmadım, amma lehim etməzdən əvvəl özünüz üçün daha yaxşı bir üsul taparsanız, bu da yaxşıdır.

Çörək taxtamda prototipimi öyrəndim və çörək taxtamda baş verənləri tam olaraq anladığımdan əmin oldum. Mən əlaqələr qurdum və mənfi tərəfin müsbət tərəfə bağlanmalı olduğunu unutmadım.

Lehim edərkən bunu hansı LED / düymə / tel / sensorun əlində saxladığını, hansı pinə getdiyini yazdım. Bir anda, ehtimal ki, sahib olduğunuz tellərin miqdarı ilə çox məyus olacaqsınız. Etdiyim şey, telin hansı funksiyasını və hansı pinlə boyalı lentə keçəcəyini və telin ətrafına sarılmasını yazmaq idi ki, bütün fərqli tellərin nə üçün olduğu daha aydın olsun.

Yalnız hər şeyin bağlı olduğundan əmin olun və getməyə hazırsınız!

Ancaq sizə vermək istədiyim bir ipucu, lehimləmə zamanı prototipinizi yanınızda saxladığınız çörək taxtasını saxlamaqdır ki, nə etdiyinizdən əmin olmadığınız zaman istinad olaraq istifadə edə bilərsiniz. Bir çox tələbə yoldaşlarının prototiplərini parçaladıqlarını və sonra bəzi şeyləri necə bağladıqlarını unuduqlarını gördüm.

Addım 5: AMBALAJ

Qablaşdırma
Qablaşdırma
Qablaşdırma
Qablaşdırma
Qablaşdırma
Qablaşdırma
Qablaşdırma
Qablaşdırma

Arduinonu əhatə edən bir kub sahibi olmaq istəyirdim. Illustrator -da bir kub düzəltdim və lazerlə kəsməyə getdim. Materiallar üçün, köpük taxtasını seçirəm, düşündüyüm kimi düzəltmək asandır və möhkəm bir materialdır. Hər bir lazer kəsici fərqli olduğundan, materialınızın qalınlığından asılı olaraq lazerin sürətini və gücünü özünüz yoxlamaq istərdiniz.

İki müntəzəm kvadrat kubun üst və alt tərəfi olacaq, qalanları isə yan tərəfə yapışacaq. Bunun üçün yapışqan istifadə edə bilərsiniz. Başqalarından daha qısa olan bir tərəfi var, çünki hər hansı bir dəyişiklik əlavə etmək və ya oyunu açmaq istəsəniz, USB kabelinizi arduinodan bu kubdan və dizüstü kompüterinizə yapışdıra bilərsiniz.

Əlavə təhlükəsizlik üçün tərəfləri bir -birinə sürüşdürüb yapışdırdım. Son olaraq kubun üst tərəfini yapışdırdım, çünki arduinonun dayana biləcəyi pambıq yastıqlarla doldurmaq istədim. LED -lərin çıxacağı dairələri, düymələrimin basıldığı kvadratları və təzyiq sensörümün çıxa biləcəyi yeri kəsmək üçün Stanley bıçağı istifadə etdikdən sonra perf / stripperimi kubun üst tərəfinə yapışdırdım. və sıxılmağa hazır olun.

Asetat folyonunuzu LED -lərin üstünə yapışdırmaq üçün yuyucu lentdən istifadə edin və öz Simon oyununuzun yaxşı olduğunu söyləyir!

Tövsiyə: