Mündəricat:
- Addım 1: Hazırlıq
- Addım 2: Qutunun Layoutunu Dizayn edin
- Addım 3: Ölçün və qazın
- Addım 4: Düymələri, Dönərləri və Keçidləri uyğunlaşdırın
- Addım 5: Kabel Planını Dizayn edin
- Addım 6: Lehimləmə
- Addım 7: Kod yazmaq
- Addım 8: Qurğunuza əlavə edin
Video: Sim Yarışı Düymə Qutusu: 8 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:47
Xoş gəldiniz sim yarış asılısı!
Bütün avtomobil idarəetmələrinizi xəritəyə salmaq üçün düymələriniz tükənirmi? Yəqin ki, bir düymə qutusuna ehtiyacınız var! Bu Təlimat kitabında sıfırdan birini yaradacağıq. Düymə qutusunda 32 (!) Mövcud düymə vəziyyəti olacaq. Bu düymə qutusundan istifadə etmək üçün əlavə proqram tələb olunmur. Arduino yükləmək üçün bir düymə matrisi qurmağı və kod yazmağı (və ya kopyalamağı) öyrənəcəksiniz.
Düymə qutusunun eyni vaxtda basılan bir çox düyməni dəstəkləmədiyini bilmək vacibdir.
Gəlin başlayaq!
Addım 1: Hazırlıq
Düymə qutusu yaratmaq üçün bəzi vasitələrə, düymələrə və daha çox elementə ehtiyacınız olacaq. İstəyinizə görə düymə qutusu yaratmaqdan çekinmeyin.
Elektronika:
- Düymələr
- Keçir
- Rotary kodlayıcılar
- Arduino Pro Micro
- Mini USB -dən USB kabelinə
- Tellər
Alətlər:
- Qazma
- Lehim
- Kaliper
- Tornavidalar
- Kəsici
- Açar
Proqram təminatı:
- Arduino IDE
- Photoshop/Paint (isteğe bağlı; əl ilə çəkilə bilər)
Digər:
- Korpus (bir qutu; alına bilər və ya xüsusi olaraq 3D çap edilə bilər)
- Karbon vinil sarğı (isteğe bağlı)
- Döner kodlayıcı düymələri
- Ötürücü qapaqlar (isteğe bağlı)
- Etiket printeri (isteğe bağlı)
- Kauçuk tutacaq
Bütün (və ya başlamaq üçün kifayət qədər) maddələr əldə etdikdən sonra düymə qutusunun dizaynını tərtib etməyə başlaya bilərik.
Addım 2: Qutunun Layoutunu Dizayn edin
Bu addım üçün lazım olan vasitələr:
Photoshop/Paint (isteğe bağlı; əl ilə çəkilə bilər)
Bir düymə qutusunun dizaynı hər kəs üçün fərqli ola bilər. Bununla birlikdə, bu Təlimat üçün aşağıdakılardan ibarət bir düzeni istifadə edəcəyik:
- 4x üç yollu keçid açarları
- 2x bir tərəfli keçid açarları
- 10 dəfə sadə düymələr
- Sadə düymə ilə 4x dönər kodlayıcı
Üç yollu keçid açarları:
Bir çox növ keçid açarı var. Bəziləri bir anlıqdır, bəziləri isə geri dönənə qədər yerində qalır. Hansı növdən istifadə etməyiniz sizə bağlıdır, amma bu düymə qutusunun eyni anda birdən çox düyməni aktiv etməsinə qadir olmadığı üçün bir anlıq açarlardan istifadə etməyi məsləhət görürəm. Keçid açarları üç tərəfli olduğundan (açma/söndürmə/açma), bizdə səkkiz (4x2) düymə mövcuddur.
Bir tərəfli keçid açarları:
Bunlar sadə düymələr hesab edilə bilər (söndürmə/açma). Bunlar da bir anlıq və ya keçidli ola bilər. Yenə hansı şəxsi seçəcəyinizə görə. Bunlar bizə iki (2) mövcud düymə verir.
Sadə düymələr:
Bu kimi düymələrdən sadəcə basmaqla (açmaq/açmaq) istifadə etmək olar. Bunlar bizə on (10) düymə verəcək.
Sadə düymə ilə fırlanan kodlayıcılar:
Əksər dönər kodlayıcılar (hamısı olmasa da) sonsuza qədər hər iki istiqamətə çevrilə bilər. Hər dəfə onları bir düyməyə basmaq kimi istifadə etdiyiniz istiqamətə döndərin. Bu fırlanan kodlayıcılara başqa bir düymə verməklə də basmaq olar. Döner kodlayıcılar on iki (12 = 4x3; sola döndür/sağa döndür/bas) düymələri verir.
32 düymə:
Hamısının bir arada olması bizə 32 (8+2+10+12) düymə basma imkanı verir!
Layihədən razısınızmı? Tikintiyə başlamaq vaxtıdır!
Addım 3: Ölçün və qazın
Bu addım üçün lazım olan vasitələr:
- Kaliper
- Qazma
- Elektronika (düymələr, açarlar və s.)
Düymə qutunuza əlavə etmək istədiyiniz bütün düymələri ölçün. Elektronikinizin ölçülərini tapmaqda çətinlik çəkirsinizsə, diametrini əldə etmək üçün (rəqəmsal) kaliperdən istifadə edin.
Kassanızın ön tərəfindəki elektronikanın mərkəz nöqtələrini qeyd edin və düzgün ölçülərdə deliklər qazın. Korpusu bir az daha estetik etmək istəyirsiniz? Düymələri bağlayaraq gözləyin!
Delikləri qazmağı bitirdikdən sonra əsl düymə qutusu kimi görünməyə başlaya bilərik!
Addım 4: Düymələri, Dönərləri və Keçidləri uyğunlaşdırın
Bu addım üçün lazım olan vasitələr:
- Elektronika (düymələr, açarlar və s.)
- Açar
- Karbon vinil sarğı (isteğe bağlı)
- Kəsici (isteğe bağlı)
Bütün elektronikləriniz vidalanması üçün bir qoz ilə gəlməlidir. Əgər olmasa; onları ölçün və uyğun ölçüdə qoz alın.
Düymə qutunuzun görünüşünü yaxşılaşdırmaq istəyirsinizsə (şəxsi rəy) karbon lifli vinil örtükdən istifadə edə bilərsiniz. Delikləri qazdığınız korpusun üzünün ölçüsünə (və bir az daha böyük) kəsin. Vinili tətbiq edin və küncləri arxa tərəfə sarın. Bu, qapaq bağlandıqda sarğının yerində qalmasını təmin edəcək. Artıq delikləri bağlayan həddindən artıq vinil bir kəsici istifadə edərək çıxarıla bilər.
Sarğı taxdıqdan sonra (və ya etmədən) düymə qutunuzun ön hissəsini yaratmaq üçün elektronikaya sığdıra bilərsiniz. İndi həqiqətən bənzər bir şeyə sahib olmalısınız! Təəssüf ki, hələ də işləmir…
Addım 5: Kabel Planını Dizayn edin
Bu addım üçün lazım olan vasitələr:
Photoshop/Paint (isteğe bağlı; əl ilə çəkilə bilər)
Bir matris yaratmaq:
Bir matrisdən istifadə etməklə vaxtımıza və bir çox lazımsız naqillərə və lehimləməyə qənaət edəcəyik. Özüm çox təfərrüata girməyəcəyəm, ancaq bir matris anlayışı ilə əlaqəniz yoxdursa, bu məqaləyə baxmağınızı təklif edərəm.
Öz matrisinizi dizayn edin və ya bu Təlimatçının sxemindən istifadə edin. Matrisdə beş qrupdan istifadə edəcəyik. Qruplar Arduino üzərindəki aşağıdakı pinoutlara bağlıdır:
- 15: dörd dönər kodlayıcı
- A0: beş düymə
- A1: iki üç yollu keçid və bir düymə
- A2: iki üç yollu keçid və bir düymə
- A3: beş düymə
Addım 6: Lehimləmə
Bu addım üçün lazım olan vasitələr:
- Lehimleme dəmir
- Lehim
- Elektronika (korpusunuza quraşdırılmışdır)
- Arduino Pro Micro
- Tellər
İsteğe bağlı:
Lehimləməkdən narahat olsanız, ilk növbədə kodu növbəti addımdan yükləyin. Bu, əlaqələrinizi yoxlamağa imkan verəcəkdir
Əvvəlki mərhələdə hazırlanmış matrisi faktiki düymə qutusuna tətbiq etmək istəyirik. Bunun üçün bir az vaxt ayırın, xüsusən də ilk dəfə lehimləyirsinizsə.
Bəzi məsləhətlər:
- Bir anda bir qrup edin
- Bəzən test etmək üçün Arduino'yu kompüterinizə qoşun
- Plastik düymələri çox qızdırmayın, çünki onlar əriyib əlaqələri kəsə bilər
- Çox lehim istifadə etməyin, daha az yaxşıdır
- Hər qrup/torpaq üçün fərqli rəngli tellərdən istifadə edin
Addım 7: Kod yazmaq
Bu addım üçün lazım olan vasitələr:
- Arduino IDE
- Joystick kitabxanası
- Keypad.h (Arduino IDE> Eskiz> Kitabxanaya Daxil Et> Kitabxanaları İdarə Edin …> Klaviatura axtarın və Mark Stanley və Alexander Brevig tərəfindən yaradılanı quraşdırın)
#daxil edin #daxil edin
#ENABLE_PULLUPS -u təyin edin
#NUMROTARIES 4 #NUMBUTONS təyin 24 #NUMROWS 5 #NUMCOLS 5 təyin et
bayt düymələri [NUMROWS] [NUMCOLS] = {
{0, 1, 2, 3, 4}, {5, 6, 7, 8, 9}, {10, 11, 12, 13, 14}, {15, 16, 17, 18, 19}, {20, 21, 22, 23}, };
struktur rotariesdef {
bayt pin1; bayt pin2; int ccwchar; int cwchar; uçucu işarəsiz char vəziyyəti; };
rotariesdef rotaries [NUMROTARIES] {
{0, 1, 24, 25, 0}, {2, 3, 26, 27, 0}, {4, 5, 28, 29, 0}, {6, 7, 30, 31, 0}, };
#DIR_CCW 0x10 təyin edin
#define DIR_CW 0x20 #define R_START 0x0
#ifdef YARIM_ADAM
#define R_CCW_BEGIN 0x1 #define R_CW_BEGIN 0x2 #define R_START_M 0x3 #define R_CW_BEGIN_M 0x4 #define R_CCW_BEGIN_M 0x5 const imzasız tablo [6] [4] RST_ST_RIN_RIN R_CCW_BEGIN {R_START_M | DIR_CCW, R_START, R_CCW_BEGIN, R_START}, // R_CW_BEGIN {R_START_M | DIR_CW, R_CW_BEGIN, R_START, R_START}, // R_START_M (11) {R_START_M, R_CCW_BEGIN_M, R_CW_BEGIN_M, R_START}, // R_CW_BEGIN_M {R_START_M, R_START_M | R_START_M | DIR_CW}, // R_CCW_BEGIN_M {R_START_M, R_CCW_BEGIN_M, R_START_M, R_START | DIR_CCW},}; #başqa #define R_CW_FINAL 0x1 #define R_CW_BEGIN 0x2 #define R_CW_NEXT 0x3 #define R_CCW_BEGIN 0x4 #define R_CCW_FINAL 0x5 #define R_CCW_NEXT 0x6
const imzasız tablo [7] [4] = {
// R_START {R_START, R_CW_BEGIN, R_CCW_BEGIN, R_START}, // R_CW_FINAL {R_CW_NEXT, R_START, R_CW_FINAL, R_START | DIR_CW} // R_CW_BEGIN {R_CW_NEXT, R_CW_BEGIN, R_START, R_START} // R_CW_NEXT {R_CW_NEXT, R_CW_BEGIN, R_CW_FINAL, R_START} // R_CCW_BEGIN {R_CCW_NEXT, R_START, R_CCW_BEGIN, R_START} // R_CCW_FINAL {R_CCW_NEXT, R_CCW_FINAL, R_START, R_START | DIR_CCW}, // R_CCW_NEXT {R_CCW_NEXT, R_CCW_FINAL, R_CCW_BEGIN, R_START},}; #endif
bayt sıraPinləri [NUMROWS] = {21, 20, 19, 18, 15};
bayt colPins [NUMCOLS] = {14, 16, 10, 9, 8};
Keybad buttbx = Klaviatura (makeKeymap (düymələr), rowPins, colPins, NUMROWS, NUMCOLS);
Joystick_ Joystick (JOYSTICK_DEFAULT_REPORT_ID, JOYSTICK_TYPE_JOYSTICK, 32, 0, yalan, yalan, yalan, yalan, yalan, yalan, yalan, yalan, yalan, yalan);
boş quraşdırma () {
Joystick.begin (); rotary_init ();}
boşluq döngəsi () {
CheckAllEncoders ();
CheckAllButtons ();
}
yoxlayın CheckAllButtons (etibarsız) {
if (buttbx.getKeys ()) {for (int i = 0; i
boş rotary_init () {
üçün (int i = 0; i
imzasız char rotary_process (int _i) {
imzasız char pinstate = (digitalRead (rotaries [_i].pin2) << 1) | digitalRead (fırlanan [_i].pin1); rotaries [_i].state = ttable [rotaries [_i].state & 0xf] [pinstate]; qayıt (dönərlər [_i]. dövlət & 0x30); }
void CheckAllEncoders (void) {for (int i = 0; i <NUMROTARIES; i ++) {
işarəsiz char nəticə = rotary_process (i); if (nəticə == DIR_CCW) {Joystick.setButton (dönərlər .ccwchar, 1); gecikmə (50); Joystick.setButton (fırlanan .ccwchar, 0); }; if (nəticə == DIR_CW) {Joystick.setButton (dönərlər .cwchar, 1); gecikmə (50); Joystick.setButton (fırlanan .cwchar, 0); }; }}
- USB kabelini qoşaraq Arduino Pro Micro -nu kompüterinizə qoşun
- Kodu yükləmək üçün Alətlər> İdarə Heyəti:…> Arduino/Genuino Micro -ya gedərək Arduino növünü seçin.
- Doğru USB portunu seçmək üçün Alətlər> Port:> COM x (Arduino/Genuino Micro) bölməsinə keçin.
- Sol üst küncdəki ✓ düyməsini tıklayaraq eskizi yoxlayın (Faylın altında)
- Arduinoya yükləmək üçün yanındakı → düyməsini basın
Addım 8: Qurğunuza əlavə edin
Təbrik edirik! Sən bu qədər irəli getdin. İndi yarışma vaxtıdır!
Tövsiyə:
Microsoft Teams Səssiz Düymə: 4 addım
Microsoft Teams Mute Button: Microsoft Teams zəng edərkən səsinizi çıxartmaq/açmaq üçün əlçatmaz bir düymə yaradın! Çünki 2020. Bu layihə, Adafruit Circuit Playground Express (CPX) və böyük bir düymədən istifadə edərək, Microsoft Teams üçün qısa düymə ilə səssiz düyməni yaratmaq üçün istifadə edir
D.I.Y Avtomobil Yarışı -- Makershala: 15 addım
D.I.Y Avtomobil Yarışı || Makershala: Giriş Dostunuz sənə bir oyun göstərib oynamağı istəsə və sənin üçün çətin olsa. Nə daha çətin bir iş verərək ona meydan oxumaq istəyirsənsə və bu maşın sürməklə əlaqəli olsa, əyləncəli olacaq
Sim Yarışı Düymə Qutusu: 7 Adım (Şəkillərlə birlikdə)
Sim Yarışı Button Box: Düymə qutusu, Sim Racing -də istifadə olunan, müxtəlif avtomobil idarəetmə düymələrini, açarları və düymələri təyin etməyə imkan verən bir cihazdır. Ümumi düymə tapşırıqları, başlanğıc düyməsi, PTT, istək çuxuru və s. Kimi şeylərdir
Gecə yarısı oyun meydançası: 7 addım
Gecə yarısı oyun meydançası: xəbərdarlıq! Zəhmət olmasa bunu əvvəl oxuyun! Ev heyvanınıza zərər verməyin! Lazerlər təhlükəlidir! Bir neçə səbəbdən bu layihəni olduğu kimi qurmağı məsləhət görmürəm. Bir pişiyin lazerə baxması çox asandır Bəlkə də lazeri "f" ilə əvəz edin
Tez və asan FPV Mini RC Avtomobil Yarışı: 3 addım
Tez və asan FPV Mini RC Avtomobil Yarışı: Bir neçə WLToys K979 avtomobilim var və qapalı mini FPV yarışlarını sınamaq istədim. Ucuz All In One (AIO) kameralarının və ötürücülərinin yayılması ilə onu qurmaq olduqca asan idi. Lazım olan budur: RC Car (WLToys K979 istifadə edirəm) $