Mündəricat:
- Addım 1: IR Alıcı Dövrə qurun
- Addım 2: Servo, Sütun və Telefon Tutucusunu bağlayın
- Addım 3: Servo Oxunması üçün LCD Ekranı bağlayın
- Addım 4: Arduino proqramlaşdırmaq üçün əlavə edilmiş koddan və kitabxanalardan istifadə edin
- Addım 5: Arduinoya İstədiyiniz Güc mənbəyini bağlayın və Dağı Döndürmək üçün Uzaqdan istifadə edin
- Addım 6: Mənbə Kodunun Açıqlanması üçün bunu oxuyun
- Addım 7: Yardım üçün Youtube videosuma baxın
Video: Fırlanan Telefon Montajı: 7 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:46
Bu təlimat, Cənubi Florida Universitetindəki Makecourse -in layihə tələbinin yerinə yetirilməsi üçün yaradılmışdır (www.makecourse.com).
Telefonunuzun məzmununu tutmadan portret və ya landşaft istiqamətdə görmək üçün fırlanan bir telefon qurğusu etmək istəyirsiniz? Sonra, başqa bir şeyə baxma.
Bu layihəni yaratmaq üçün sizə lazım olacaq:
- Arduino Mikrokontrolör və IDE
- Kodu yükləmək üçün USB Kabel
- Çörək lövhəsi
- Jumper telləri
- LCD Ekran
- Servo
- Servoya qoşula bilən sütun
- IR Uzaqdan
- IR qəbuledicisi
- 10k ohm müqavimət
- Kenu Airframe+ Telefon Klipi (və ya telefonu yerində saxlamaq üçün bir şey)
- Portativ güc üçün 9 V Batareya və ya sadəcə USB ilə işləyən Arduino
Addım 1: IR Alıcı Dövrə qurun
Birincisi, Arduinodan çörək taxtanızdakı elektrik raylarına GND və +5V atlayın. Sonra, 10k ohm müqavimətinizi +5V elektrik rayından İR qəbuledici fototransistorunuzun çıxış pininə atlayın. Sonra, IR qəbuledicisinin çıxış pinindən Arduino -dakı pin 11 -ə qoşulmaq üçün bir keçid teli istifadə edin. Sonra, IR alıcısındakı müvafiq pinlərə torpaq və +5V göndərmək üçün iki keçid teli istifadə edin. Yuxarıdakı sxematik şəkildə göstərilən RC filtrinə ehtiyac yoxdur. Nəhayət, bu addımda göstərilən sxemi etmədim və bunun mənbəyi şəkildə mövcuddur.
Addım 2: Servo, Sütun və Telefon Tutucusunu bağlayın
İndi yerdən və +5V çörək taxtası elektrik raylarından sırasıyla qəhvəyi və qırmızı tellərə keçmək üçün iki keçid teli istifadə edin. Sonra, Arduino üzərindəki pin 9 -u servonun narıncı telinə bağlamaq üçün bir keçid teli istifadə edin.
Sonra, ikinci şəkildə göstərildiyi kimi servonun başına bir sütun əlavə edin.
Nəhayət, telefonu üçüncü şəkildə göstərildiyi kimi Kenu Airframe+kimi sütuna tutmaq üçün bir şey əlavə edin.
Addım 3: Servo Oxunması üçün LCD Ekranı bağlayın
Çörək taxtanızın elektrik raylarından +5V -ə keçərək LCD Ekrandakı müvafiq pinlərə keçin. Ayrıca, SDA və SCL pinlərini LCD -dən Ardiuno'ya atlayın. Arduino SDA və SCL pinləri Arduino lövhəsinin arxasından müəyyən edilə bilər və AREF və Ground pin 13 -dən yuxarı olan iki sancaqdır. SCL pin ən yüksəkdir. Bu, LCD ekranın cari servo mövqeyini oxumasına imkan verir.
Addım 4: Arduino proqramlaşdırmaq üçün əlavə edilmiş koddan və kitabxanalardan istifadə edin
RotatingMountCode.zip faylını yükləyin. Arduino IDE -ni quraşdırın və yüklənmiş faylı Documents / Arduino -da açın. Eskizlərim və kitabxana qovluğumun məzmununu eskizlər və kitabxana qovluğuna kopyaladığınızdan əmin olun. ServoIRandLCD eskizini açın və Arduino -ya yükləyin.
Kodun izahı üçün sonrakı addımlara baxın.
Addım 5: Arduinoya İstədiyiniz Güc mənbəyini bağlayın və Dağı Döndürmək üçün Uzaqdan istifadə edin
Arduino'yu ya kompüterinizə qoşun, ya da kompüterinizdən ayırın və Arduinoya DC gücü təmin etmək üçün 9V batareya istifadə edin. Nəhayət, servo və buna görə də telefon qurğusunun istiqamətini idarə etmək üçün ucuz bir IR uzaqdan istifadə edin!
Pultdakı 1 nömrə servo mövqeyini 0 dərəcəyə, 2 nömrəsini 90 dərəcəyə, 3 nömrəsini isə 180 dərəcəyə təyin etməlidir. Bu arada pultdakı + və - düymələri servonun açısını müvafiq olaraq 1 dərəcə artırmalı və ya azaltmalıdır.
Qeyd: Burada göstəriləndən fərqli bir IR Uzaqdan istifadə edirsinizsə, müxtəlif düymələrə uyğun olan IR kodlarının dəyişdirilməsi mümkündür. Əgər belədirsə, bu IR kodlarını istifadə etmək üçün ServoIRandLCD eskizini dəyişdirin.
Addım 6: Mənbə Kodunun Açıqlanması üçün bunu oxuyun
Arduino eskizinin mənbə kodunu aşağıda və ya əvvəllər əlavə edilmiş.zip faylında tapa bilərsiniz. Lazımi kitabxanalar yalnız 4 -cü addımda əvvəllər əlavə edilmiş.zip faylında tapıla bilər.
Kodun etdiyi ilk şey, eskizdəki bütün funksiyaları yerinə yetirmək üçün lazım olan kitabxanaları daxil etməkdir. Daha sonra, Arduino üzərindəki 9 pinini servo üçün PWM effektiv siqnal pimi olaraq elan edir. Arduino -da İQ alıcısı üçün istifadə olunan pin 11 -i də düzəldir. Sonra, servonun mövqeyini dərəcələrlə izləmək üçün istifadə olunan bir tamsayı dəyişən elan edir və əvvəlcə 0 dərəcəyə təyin edir. Daha sonra, IRrecv obyekti, bir servo obyekt və myDisplay LCD obyekti (eyni sətirdə konfiqurasiya edilmiş) üçün lazım olan obyektləri hazırlayır, beləliklə bu obyektlər sonradan istifadə oluna bilər.
Ardından, quraşdırma funksiyasında serial port 9600 bit/saniyədə işə salınır, buna görə də istəsəniz servo mövqeyini izləmək üçün serial monitordan istifadə oluna bilər. Ayrıca myservo obyektini 9 -cu pinə bağlayır, İQ alıcısını işə salır və LCD ekranı işə salır.
Bədəni yalnız İQ qəbuledicisindən bir İQ ötürülməsi alındıqda yerinə yetirilən əsas döngə funksiyasında İQ alıcısı, IR kodundan (və nəticələr) istifadə edərək İQ uzaqdan ona göndərilən siqnalın kodunu açar və sonra ifadələr nəyi müəyyən edərsə alınan servo dəyərini İQ -dən asılı olaraq təyin etmək. Yazma funksiyası servonun uyğun dərəcələrini təyin etmək üçün istifadə olunur və oxumaq funksiyası servonun cari açısını tapmaq və lazım olduqda artırmaq və ya azaltmaq üçün istifadə olunur.
Nəhayət, servonun mövcud açısı myservo.read () funksiyasından istifadə edərək həm seriyalı monitora, həm də LCD ekrana göndərilir və əsas döngələr qeyri -müəyyən müddət ərzində təkrarlanır.
Mənbə Kodu:
#daxil edin // Arduino standart kitabxanası #daxildir // IR kitabxanası #"Wire.h" //Wire.h üçün LCD (bəzən lazım olur) #"LiquidCrystal_I2C.h" daxil edin // LCD kitabxana
#deffine servopin 9 // bu, pin 9 -u servo idarəetmə qurğusu üçün istifadə olunan pin olaraq təyin edir (narıncı)
int RECV_PIN = 11; // IR foto-tranzistor çıxışını pin 11-ə göndərir
int currentAngle = 0; // currentAngle tam ədəd dəyişənini elan edin və 0 olaraq təyin edin
IRrecv irrecv (RECV_PIN); // IR qəbuledici obyektinin decode_results nəticələrini yaratmaq; // bir decode_results obyekti hazırlayın. Bu obyekt İQ alıcısından ayrıdır.
Servo xidməti; // 'myservo' adlı bir Servo obyekti hazırlayın // maksimum səkkiz servo obyekt yaradıla bilər
LiquidCrystal_I2C myDisplay (0x27, 16, 2); // LCD obyektini işə salın və konfiqurasiya qurun
boş quraşdırma () {
Serial.begin (9600); // seriya limanına başlayın
myservo.attach (servopin); // 9 nömrəli servo servo obyektə əlavə edir
irrecv.enableIRIn (); // qəbuledicini işə salın
myDisplay.init (); // LCD -ni işə salın
myDisplay.backlight (); // LCD arxa işığı yandırın
}
boşluq döngəsi () {
əgər (irrecv.decode (& nəticələr)) // ötürülmə alınsa…
{Serial.print ("IR dəyəri alındı:");
Serial.println (results.value); // ekran dəyəri alındı
// alınan əmrləri şərh edin… if (results.value == 16724175) // 1 {// left myservo.write (0); }
if (results.value == 16718055) // 2 {// orta myservo.write (90); }
if (results.value == 16743045) // 3 {// sağ myservo.write (180); }
if (results.value == 16754775) //+ {// artım currentAngle = myservo.read (); myservo.write (currentAngle + 1); } if (results.value == 16769055) //- {// currentAngle = myservo.read () azalır; myservo.write (currentAngle - 1); }}
irrecv. resume (); // Növbəti dəyəri alın
// Serial monitor çapı Serial.print ("Cari servo mövqeyi:");
Serial.println (myservo.read ()); // bu servo mövqeyi alır və serial monitora göndərir
// LCD çap myDisplay.clear ();
myDisplay.print ("Servo dərəcə.:");
myDisplay.print (myservo.read ());
gecikmə (200); // servo hərəkətini sabit etmək üçün gecikmə
}
Addım 7: Yardım üçün Youtube videosuma baxın
Suallarınız olarsa layihəni tam müzakirə edən və nümayiş etdirən siyahıya alınmamış YouTube videosuma baxın!
Tövsiyə:
İki motorlu fırlanan DIY: 10 addım (şəkillərlə)
İki mühərrikli bir fırlanan DIY: Əvvəlcə həmişə atəş açan bir döngə almaq istəyirəm və bu yaxınlarda iki boş işləyən dişli mühərrikin olduğunu gördüm. Beləliklə, onlarla bir dönərçi edə biləcəyimi düşündüm. Daha çox uzatmadan, sınayacağam! Prinsip: Azalma
Portativ şarj cihazı ilə telefon montajı: 5 addım
Portativ Şarj Cihazı ilə Telefon Montajı: Bu layihədə sizə telefon montajının və içərisinə uyğun portativ şarj cihazının necə hazırlanacağını göstərəcəyəm
Proqram əsaslı fırlanan günəş plitələri: 9 addım
Proqrama əsaslanan fırlanan günəş lövhələri: Artan əhaliyə və ehtiyaca görə daha az xərclə daha çox məhsul tələb edirik. Proqrama əsaslanan fırlanan günəş lövhəsi təklif etdik. Həmişə günəş işığının intensivliyi istiqamətində işləyir. Bu yarışmada xüsusi bir növ təklif etdik
Tualet kağızı rulonlu telefon montajı: 7 addım (şəkillərlə birlikdə)
Tualet Kağıdı Roll Telefon Dağı: Telefonunuzu hələ də dik vəziyyətdə olması üçün şarj edərkən onu saxlamaq üçün bir yerə ehtiyacınız varmı? Telefon montajı buna cavabdır. Evinizin ətrafında bir neçə ehtiyat tualet kağızı rulonu və bir az karton varmı? Əgər etsəniz, onda
Karbon Fiber Telefon Kılıfı Montajı: 10 addım
Karbon Fiber Telefon Kılıfı Montajı: Məqsəd: Bu Təlimatın məqsədi karbon lifindən istifadə edilə bilən bir telefon qutusu yaratmaqdır. Karbon lifi bir telefon çantası üçün əla bir materialdır, çünki kompozit material olduğuna görə nəinki yüngül, həm də möhkəmdir. St izləyin