Mündəricat:
- Addım 1: Konsepsiya
- Addım 2: hissələri
- Addım 3: Parçaların montajı
- Addım 4: Arduino IDE üçün kitabxana
- Addım 5: Breadboard Quraşdırması
- Addım 6: Kod
- Addım 7: Demo və Nəticə
Video: Saat işi: 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).
Addım 1: Konsepsiya
Bu layihə üçün bir fikir üçün beyin fırtınası aparmağa çalışarkən, istifadə edilə bilən və gündəlik həyatım üçün faydalı bir şey hazırlamağa qərar verdim. Bunun kimi bir çox şeyin iki dərəcə sərbəstlik tələbi ola bilməz, buna görə də tələbi yerinə yetirmək üçün sadə bir saat düzəltmək və saatı göstərmək üçün masamda göstərmək qərarına gəldim. Əvvəlcə fikir qol saatı etmək idi, amma 3D çap hissəsi çox kiçik olardı və saatı idarə edən mühərriklər hələ də qol saatı üçün çox böyük olardı.
Bu layihə nəticəsində mənzilimin ətrafında ehtiyat hissələri tapdım və bu işlə məşğul olmaq qərarına gəldim.
Addım 2: hissələri
- 3D çaplı hissələr
- 2 28BYJ-48 5V DC Stepper Motoru
- 2 ULN2003 Step Motor Sürücü Kartı
- Arduino Uno
- HC-05 Bluetooth Modulu
Saat əqrəbləri istisna olmaqla, bütün bu hissələri mən hazırlayıram. Çox yaradıcı deyiləm. Aşağıda onun yaradıcısının bağlantısı verilmişdir.
www.thingiverse.com/thing:1441809
Addım 3: Parçaların montajı
(1)- Gear_1 və 2-ni step motorlarına qoymalısınız. Sıx bir şəkildə oturacaqlar, buna görə yerlərində qalmaları üçün bir az güc lazımdır.
(2)- Base_0 montajın altında qalacaq.
(3)- Base_1 SpurGear_1-in üstünə qoyulacaq, bu dəqiqə əlinin əsas komponentidir. Bu iki komponenti bir -birinə yapışdıra bilərsiniz, əsasın dişli çarxın üstündə olduğundan əmin olun.
(4)- Base_2 SpurGears_2-in üstünə qoyulacaq, bu saat əli üçün əsas komponentdir. Eyni addım (3) olaraq bu hissəyə aiddir
(5)- Saatların əli Base_1 və Base_2-nin üstünə yapışqan ola bilər və ya yerində oturması üçün kiçik bir delik aça bilərsiniz.
(6)- Dəqiqə əli dişlisinin düz dişli ilə uyğun olması üçün, bütün mühərriki step motorlarından biri ilə üst-üstə qoymaq üçün 1 sm-lik bir platforma ehtiyacınız var.
Bunun səbəbi, digər pilləli motorun yüksək sürətə çata bilməyəcəyi üçün əsas bazanın yüksək ola bilməməsidir. Hər halda, step motorlardan biri üçün bir platforma lazımdır.
Addım 4: Arduino IDE üçün kitabxana
Bu layihənin kodu tyhenry tərəfindən CheapStepper.h adlı bir kitabxanaya əsaslanır
github.com/tyhenry/CheapStepper
Arduino üçün bu kitabxananı qurmaq üçün. Klon vurun və ya yuxarıdakı linkdən yükləyin və zip faylı olaraq yükləyin.
Arduino IDE -də. Sketch -> Kitabxanaya daxil et -> ZIP Kitabxanası əlavə et
İşləyən bütün kitabxana içərisində bu, ən yaxşı və istifadəsi çox asan olan step motorundan istifadə edirdi.
Addım 5: Breadboard Quraşdırması
Arduino UNO ilə getmək üçün bir Arduino qalxanı istifadə etdim. Daha təmiz görünür, ancaq kiçik bir çörək taxtası alıb Arduino UNO -nun üstünə qoya bilərsiniz. Şəbəkədəki rəngi izləyin, çünki bəzi tellər üst -üstə düşür. Sancaqlar 4-7 bir addım üçün, 8-11 pinlər isə ikinci pillə üçündür.
Bluetooth modulu Arduino lövhəsinə RX -> TX və TX -> RX ilə bağlanmalıdır.
Mavi tellər Sürücülərdən Arduino UNO -ya olan əlaqələrdir
Yaşıl tellər RX və TX əlaqələridir
Qara tellər torpaqdır.
Qırmızı tellər 5V -dir.
Addım 6: Kod
Aşağıda bu layihənin kodu verilmişdir.
Kodun izahı burada olacaq.
Ucuz Stepper (8, 9, 10, 11); Ucuz Stepper_2 (4, 5, 6, 7);
boolean moveClockwise = doğru;
//37.5 dəqiqə = 4096;
// 1 dəq = 106.7;
// 5 dəq = 533.3;
// 15 dəq = 1603;
// 30 dəq = 3206;
// 60 dəqiqə = 6412;
int full = 4096;
int yarım = tam/2; // 2048
float full_time = 6412; // 1 saat
float half_time = full_time/2; // 30 dəq 3026
float fif_time = half_time/2; // 15 dəq 1603
float one_time = full_time/60; // 1 dəq 106
float five_time = one_time*5; // 5 dəq 534.3
float one_sec = one_time/60; // 1 saniyə 1.78
// motoru 3206 döndərmək və sıfırlamaqla hər birini 30 dəqiqə edə bilərik
Bu layihə üçün əsas hesablama budur. Stepper tam 360 dərəcə dönmək üçün 4096 addım atacaq, ancaq düz dişlilər pilləyə bağlanmış dişlilərdən daha böyük olduğundan tam fırlanma üçün daha çox addımlar atılmalıdır. Düz dişli əlləri fırladan əsas komponentdir. Dəyərlərin doğru olduğundan əmin olmaq üçün müxtəlif testlər etməliyəm.
full_time, əlin tam fırlanması üçün təyin etdiyim dəyişəndir. Bu olduqca ardıcıldır, lakin xüsusi hərəkət əldə etmək üçün addımlar 2 -yə bölündükcə, üzmə dəyəri kiçilir və bu da sürücünün işini çətinləşdirdi.
MoveClockwise = doğru; step motorunu saat yönünde hərəkət etdirməkdir, ancaq dişli dişlini saat əqrəbinin tersi istiqamətində fırladığından, quruluşda boolean yalançı etməliyik. Başlanğıcda da yalan elan edə bilərsiniz, ancaq bunun necə işlədiyini izah etmək üçün.
void setup () {Serial.begin (9600);
Serial.println ("Hərəkətə başlamağa hazırsınız!");
pos = birdəfəlik; del = 900; nisbət = 60;
moveClockwise = yanlış; }
Burada moveClockwise boolean saxta elan etdiyim yerdir. pos addımların sayı, del gecikmə olacaq və nisbət ya dəqiqə/san = 60 və ya saat/dəq = 12 -dir
Əlləri Bluetooth modulu ilə idarə edirik. Birincisi, Android cihazınızdan bir serial Bluetooth terminalına ehtiyacınız var. 0000 və ya 1234 PIN kodu ilə Hc-05-ə qoşulun. Arduino IDE-dən düzgün işlədiyini görmək üçün bəzi nümunə kodlardan istifadə edə bilərsiniz. Qoşulduqda, bağlı olmadıqda sürətlə yox, çox yavaş yanıb sönməlidir.
void loop () {vəziyyət = 0;
əgər (Serial.available ()> 0) {
vəziyyət = Serial.read (); }
üçün (float s = 0; s <(pos); s ++) {
step.step (MoveClockwise); }
üçün (float s = 0; s <(pos/oran); s ++) {
stepper_2.step (MoveClockwise); }
gecikmə (gecikmə);
Serial.available ()> 0 vacibdir, çünki Bluetooth modulunuz necə işləyəcək. Arduino ilə cihazınız arasında ünsiyyət olduqda bu ifadə düzgün olacaq. Vəziyyət dəyişənləri, setup () üstündə elan etdiyim 3 digər dəyişəni təyin edəcək, eyni zamanda kodun hansı əməliyyatı işlədiyini yazacaq. Döngü üçün ikisi, addım motorunun necə hərəkət edəcəyini idarə edən əsas funksiyadır.
əgər (vəziyyət == '1') {
pos = birdəfəlik; del = 0; nisbət = 12;
Serial.println ("Əməliyyat 1: Gecikmə yoxdur"); }
Bu, sistemin işini dəyişdirmək üçün Bluetooth cihazınızın girişini istifadə etməyin bir nümunəsidir. Əlləri idarə etmək istədiyiniz halda bu dəyişənləri düzəldə bilərsiniz.
Addım 7: Demo və Nəticə
Bu necə işlədiyini göstərən sistemin bir demosudur. Qapaq üçün içərisindəki bütün komponentlərə uyğun bir şey istifadə edə bilərsiniz. İlk dəfə 3D çap etdiyim üçün bu layihə sadə və əyləncəli idi. Bluetooth modulu anlamaq və istifadə etmək çox əyləncəli idi. Etdiyim bir neçə səhv var ki, dəyişdirmək üçün çox gec idi, amma son məhsul yaxşıdır.
Tövsiyə:
Arduino istifadə edərək Led Strip ilə Analog Saat və Rəqəmsal Saat Necə Hazırlanır: 3 Addım
Arduino istifadə edərək Led Strip ilə Analog Saat və Rəqəmsal Saat Necə Hazırlanır: Bu gün biz Analog Clock & Led Strip və Arduino ilə MAX7219 Dot modulu olan rəqəmsal saat yerli vaxt qurşağı ilə saatı düzəldəcək. Analog saat daha uzun bir LED şeridi istifadə edə bilər, buna görə də sənətkar olmaq üçün divara asıla bilər
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: Heç ağıllı bir saat istəmisinizmi? Əgər belədirsə, bu sizin üçün bir həlldir! Ağıllı Zəngli Saat hazırladım, bu veb saytına görə zəngli saatını dəyişə biləcəyiniz bir saatdır. Siqnal çalınanda bir səs (zil) olacaq və 2 işıq yanacaq
C51 4 Bit Elektron Saat - Taxta Saat: 15 Addım (Şəkillərlə)
C51 4 Bit Elektron Saat - Taxta Saat: Bu həftə sonu bir az boş vaxtım oldu, buna görə də bir müddət əvvəl AliExpress -dən aldığım 2.40 dollarlıq 4 bitlik elektron elektron rəqəmsal saatı yığdım
M-Saat Miniatür Çox Modlu Saat: 11 addım
M-Clock Miniatür Çox Modlu Saat: Minimalist Saatı? Çox rejimli saat? Matrix Clock? Bu MSP430G2432-ə əsaslanan çox rejimli bir saat layihəsidir. Lehim olmadan və minimum alət istifadə etmədən yığıla bilər. Məhdud 8x8 piksel ekran qətnaməsi ilə bu 12 saatlıq saat göstərir
Saat işi Bionicle Robot: 4 addım
Clockwork Bionicle Robot: Bu təlimatla (mənim ilk), Bionicle hissələrindən idarə olunan qol hərəkətləri ilə bir robot qura bilərsiniz