Mündəricat:
Video: UChip - 2.4 GHz Radio Tx -Rx ilə Uzaqdan İdarəetmə Motorlarına və/və ya Servoslarına Sadə Eskiz: 3 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
RC dünyasını çox sevirəm. Kiçik bir qayıq, avtomobil və ya pilotsuz uçan aparat olmasına baxmayaraq, RC oyuncağından istifadə etməklə qeyri -adi bir şeyə nəzarət etdiyiniz hissini verirsiniz!
Ancaq oyuncaqlarınızı fərdiləşdirmək və istədiklərinizi etməyə məcbur etmək asan deyil. Ümumiyyətlə, standart ötürücü parametrlərini və ya xüsusi olaraq açar və düymələrin birləşməsini istifadə etmək məcburiyyətindəsiniz.
Hər şeyi həqiqətən istədiyiniz kimi idarə etmək olduqca çətindir, çünki RC dünyasından ən yaxşı şəkildə istifadə etmək üçün aparat səviyyəli proqramlaşdırma haqqında kifayət qədər dərin bilik tələb olunur.
Bir çox platforma və qurğular sınadım, amma RC oyuncağımda real bir fərdiləşdirmə etməzdən əvvəl kodla kifayət qədər rahat olmaq üçün hər zaman böyük səy sərf etdi.
Arduino IDE -dən istifadə edərək yükləyə biləcəyim və Radio RX -dən (qəbuledicidən) gələn dəyərləri istədiyiniz Motor/Servo idarəetməsinə çevirməyimə imkan verən sadə bir eskiz çatışmırdı.
Buna görə də, uChip və Arduino IDE ilə bir az oynadıqdan sonra yaratdığım budur: 2.4GHz Radio Tx-Rx vasitəsi ilə uzaqdan idarə olunan motorlara və/və ya servolara sadə bir eskiz!
Hesab materialları
1 x uChip: Arduino IDE uyğun lövhə
1 xTx-Rx Radio sistemi: cPPM qəbuledicisi olan hər hansı bir radio sistemi yaxşıdır (mənim kombinatım köhnə Spectrum DX7 Tx + Orange R614XN cPPM Rx), Tx və Rx-i bağlamaq üçün düzgün bağlama proseduruna əməl etdiyinizə əmin olun.
1 x Batareya: mühərriklər və servolarla işləyərkən yüksək axınlı cərəyan batareyaları lazımdır.
Motorlar/Servolar: ehtiyaclarınıza uyğun olaraq
Motorları/Servoları idarə etmək üçün elektron komponentlər: sadə rezistorlar, MOSFETlər və Diodlar sürücülük məqsədini yerinə yetirməyə imkan verir.
Addım 1: Kabel çəkmə
Şematikada göstərildiyi kimi komponentləri bir -birinə bağlayın.
Rx birbaşa uChipand -a bağlıdır və heç bir xarici komponent tələb etmir. Fərqli bir alıcıdan istifadə edirsinizsə, səviyyə dəyişdiriciyə ehtiyacınız olub olmadığını yoxlayın. CPM siqnalını uChip PIN_9 -a bağladığınızdan əmin olun (kodu başqa bir SAMD21 lövhəsinə uyğunlaşdırmaq istəsəniz PORTA19).
Qalan naqillər motoru və/və ya servoyu idarə etmək üçün lazımdır. Əlavə edilmiş sxem, uChip -i induktiv yükləri idarə edərkən baş verən sıçrayışlardan/aşmalardan qorumaq üçün əsas dövrəni təmsil edir. UChip təhlükəsizliyini qorumağın əsas komponenti, VEXT (uChip pin 16) və GND (uChip pin 8) ilə paralel olaraq qoymalı olduğunuz 5.1V (sxemdə D1) gücündə Zener diodudur. Alternativ olaraq, Zener diodunu istifadə etmək əvəzinə, əks sıçrayışların uChip komponentlərinə zərər verməsinin qarşısını alan D2, C1 və C2 ilə təmsil olunan əlavə dövrə seçə bilərsiniz.
Sxemanı təkrarlayaraq idarəetmə pinlərini dəyişdirərək ehtiyac duyduğunuz qədər çox motor/servo idarə edə bilərsiniz (güc pinlərindən (PIN_8 və PIN_16) və cPPM pinindən (PIN_9) başqa hər hansı bir pin istifadə edə bilərsiniz). Nəzərə alın ki, Zener diyotu (və ya isteğe bağlı devre üçün komponentlər) ilə təmsil olunan yalnız bir qoruyucu dövrə ehtiyacınız olsa da, motor/servo sürücülüklə əlaqəli elektrik komponentləri, mühərriklərin sayı qədər təkrarlanmalıdır. idarə etmək istədiyiniz servolar.
Ən azı 2 mühərrik və 2 servo idarə etmək istədiyim üçün təsvir olunan sxemləri tətbiq edən və şəkildən görə biləcəyiniz kiçik bir PCB hazırladım. Bununla birlikdə, ilk prototip uçan tellərdən istifadə edərək bir proto-lövhədə hazırlanmışdır.
Beləliklə, bu sadə layihəni həyata keçirmək üçün heç bir lehimləmə/PCB dizayn bacarıqlarına ehtiyacınız yoxdur:)
Addım 2: Proqramlaşdırma
Budur sehr! İşlərin maraqlı olduğu yer budur.
Əvvəlki sxemdə təsvir olunan dövrəni qurmusunuzsa, "DriveMotorAndServo.ino" eskizini yükləyə bilərsiniz və hər şey işləməlidir.
Kodu nəzərdən keçirin və necə işlədiyini yoxlayın.
Başlanğıcda müəyyən etmək üçün istifadə edilən az #define var:
- Rx -in nömrə kanalları (Orange 614XN ilə 6Ch)
- motorların/servoların bağlandığı sancaqlar
- Servo və mühərriklər üçün istifadə olunan maksimum və min
- Radio kanalları diapazonu üçün istifadə olunan maksimum və min
Daha sonra, mühərriklərin/servo dəyişənlərinin elan edildiyi dəyişənlərin bəyannaməsi bölməsi var.
Əvvəlki sxemdə göstərildiyi kimi birdən çox motor və bir servo idarə edirsinizsə, eskizi dəyişdirməlisiniz və əlavə motorları/servoları idarə edən kodu əlavə etməlisiniz. İstifadə etdiyiniz qədər Servo, servo_value və motor_value əlavə etməlisiniz.
Dəyişənlərin bəyannaməsi bölməsində, cPPM siqnalının Capture Compare üçün istifadə olunan bəzi uçucu dəyişənlər də var. BU DEYİŞMƏYİ DƏYİŞMƏYİN!
Bundan sonra etməli olduğunuz şey loop () funksiyasındadır. Burada, daxil olan kanalların dəyərindən nəyin istifadə olunacağına qərar verə bilərsiniz.
Mənim vəziyyətimdə daxil olan dəyəri birbaşa motora və servoya bağladım, ancaq ehtiyaclarınıza uyğun olaraq dəyişdirə bilərsiniz. Bu dərslikdə əlaqəli olan video və şəkillərdə 2 motor və 2 servo bağladım, ancaq 3, 4, 5,… maksimum pulsuz pinlərə qədər ola bilər (uChip vəziyyətində 13).
Çıxarılan kanal dəyərini "indeksi" 0 -dan NUM_CH - 1 -ə qədər olan ch [index] massivində tapa bilərsiniz. 1. Hər bir kanal radiounuzdakı çubuq/açar/düyməyə uyğundur. Nə olduğunu başa düşmək sizə aiddir:)
Nəhayət, baş verənləri başa düşməyi asanlaşdırmaq üçün bəzi debug funksiyalarını tətbiq etdim. Kanalların dəyərini yerli SerialUSB -də çap etmək üçün #define DEBUG -u şərh edin/şərh edin.
İPUCU: loop () funksiyasının altında daha çox kod var. Kodun bu hissəsi, uChip güc sancaqlarını təyin etmək, çəkmə müqayisə xüsusiyyətindən yaranan fasilələri idarə etmək, taymerləri və ayıklama məqsədini təyin etmək üçün lazımdır. Reyestrlərlə oynayacaq qədər cəsarətli hiss edirsinizsə, onu dəyişdirməkdən çekinmeyin!
Düzəliş: Yenilənmiş eskiz, Xəritəçəkmə funksiyasında bir səhv düzəldildi.
Addım 3: Oyna, Sür, Yarış, Uç
Tx və Rx sistemini düzgün bağladığınızdan əmin olun. Batareyanı bağlayaraq işə salın. Hər şeyin işlədiyini yoxlayın. İstədiyiniz kimi hər bir kanalın funksiyalarını genişləndirə və ya funksiyasını dəyişə bilərsiniz, çünki indi gələcək RC modelinizə tam nəzarət edirsiniz.
İndi xüsusi RC modelinizi qurun!
P. S.: bağlamaq olduqca darıxdırıcı ola biləcəyi üçün, tezliklə Tx-Rx sisteminizi əl ilə etmədən bağlamağa imkan verən bir eskiz buraxmağı planlaşdırıram. Yeniliklər üçün bizi izləyin!
Tövsiyə:
ESP8266 - İnternet / ESP8266 ilə Taymer və Uzaqdan İdarəetmə ilə Bağ Suvarması: 7 Addım (Şəkillərlə)
ESP8266 - İnternet / ESP8266 ilə Taymer və Uzaqdan İdarəetmə ilə Bağ Suvarması: ESP8266 - Suvarma uzaqdan idarə və tərəvəz bağları, çiçək bağları və çəmənlər üçün vaxtı ilə. ESP-8266 sxemindən və suvarma qurğusu üçün hidravlik / elektrikli klapandan istifadə edir
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə - 433mhz ilə HT12E və HT12D istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: 5 addım
HT12D HT12E istifadə edərək RF 433MHZ Radio İdarəetmə | HT12E və HT12D -dən 433mhz istifadə edərək Rf Uzaqdan İdarəetmə edilməsi: Bu təlimatda sizə HT12E kodlu 433mhz ötürücü qəbuledici modulu istifadə edərək RADIO uzaqdan idarə etməyi göstərəcəyəm. HT12D kod deşifratoru IC. Bu təlimatda çox ucuz komponentləri istifadə edərək məlumat göndərə və ala bilərsiniz: HT
Adi Uzaqdan İdarəetmə Dəsti Dörd Kanallı RC Oyuncaq Uzaqdan İdarəetmə Sisteminə Çevrildi: 4 Addım
Adi Uzaqdan İdarəetmə Dəsti Dörd Kanallı RC Oyuncaq Uzaqdan İdarəetmə Sisteminə Çevrildi: 如何 通用 遥控 器 套件 转换 为 玩具 中 中 遥控 采用 采用 6 6 6 6 6 6 6 6 2262 和 2272 和 433 模块 构建 构建改造 方法 简单。 只需 准备 一些 瓦楞纸 板 , 然后 按照
Arduino MEGA ilə RFID-RC522 ilə əlaqə qurmaq sadə bir eskiz: 4 addım
Arduino MEGA ilə sadə bir eskiz ilə RFID-RC522-nin qarşılıqlı əlaqəsi: Hai bu təlimatda RFID-ni oxumaq və məlumatları Serial Monitorda göstərmək üçün Arduino Mega 2560 ilə RFID-RC522-ni birləşdirməkdə sizə kömək edəcəyəm. Buna görə də bunu təkbaşına genişləndirə bilərsiniz: Arduino Mega və ya Arduino Uno
Sadə MediaCenter və Təkmilləşdirilmiş İstifadə ilə Uzaqdan İdarəetmə: 6 Addım
Sadə MediaCenter və Təkmilləşdirilmiş İstifadə Edilməsi ilə Uzaqdan İdarəetmə: Bəli, bu başqa bir DIY PC-yə əsaslanan Media Mərkəzidir (və ya HTPC), ancaq bir özünəməxsus xüsusiyyəti var: idarə etmək çox sadədir, buna görə də yaşlı insanlar, əlillər, və ya sadəcə tənbəl istifadəçilər. Vikipediyadan: “