Mündəricat:
- Addım 1: Dövrə baxın
- Addım 2: Bağlayın
- Addım 3: PWM dəyərləri olan faylları qurun
- Addım 4: DOS ilə oynayın: COM portunuzu konfiqurasiya edin və faylları kopyalayın
- Addım 5: Bir Proqramdan Motoru İdarə Edin
- Addım 6: Təcrübə edin
Video: Seriyalı Nəzarət Dəyişən Sürətli Motor: 6 Addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:48
Kiçik bir DC motorunun sürətini kompüterinizdəki serial portu, tək bir MOSFET və bəzi mənasız proqramlardan başqa heç bir şey olmadan idarə edin. (MOSFET və serial portu "sürət nəzarətini" təşkil edir; yenə də bir motora və bu motor üçün uyğun bir enerji təchizatına ehtiyacınız olacaq; serial portu bir mosfeti açıb söndürmək üçün gərginliyi təmin edə bilər, ancaq tipik bir motora lazım olan cərəyanı təmin edir.)
Addım 1: Dövrə baxın
Kompüterin rs232 portundan Məlumat ötürmə pininə qoşulmuş ümumi bir N-kanal güc MOSFET istifadə edərək Pulse Width Modulation edəcəyik. Seriya portu boş qaldıqda, pin rs232 -ə çevrildiyi zaman -12V (sürücülərdən asılı olaraq -9V və ya -5V -ə yaxın ola bilər) kimi "1" vəziyyətində oturacaq. tranzistor olduqca OFF olacaq. Serial portda "0" bitini ötürdüyümüz zaman, rs232 pin +12V -ə qədər gedəcək və bu, əksər mosfetləri olduqca yaxşı açmaq üçün kifayətdir.
Ardıcıl olaraq bir çox "0" bis ötürsək, motor tam olaraq AÇIK vəziyyətə yaxın olacaq və motor sürətlə işləyəcək. Əsasən "1" bit ötürsək, motor daha yavaş işləyəcək.
Addım 2: Bağlayın
Yalnız bir komponent və yalnız bir neçə əlaqə olduğundan, sadəcə "sərbəst formada" tellər əlavə edə bilərsiniz.
MOSFETlər statik həssasdır, buna görə bir az diqqətli olun, amma çox az şey kritikdir.
Addım 3: PWM dəyərləri olan faylları qurun
Hər hansı bir proqram yazmadan mühərriki idarə etməyin bir yolu, uyğun baytları olan (az -çox 0 bit ilə) bəzi faylları hazırlamaq və sadəcə motoru bağladığınız COM portuna kopyalamaqdır. Bir neçə fayl hazırladım (emacs istifadə edərək, amma sizin üçün işləyən hər şey yaxşıdır):
- 0.
- 1.pwm:: 5000 nəzarət-A simvolunu (ascii 01) ehtiva edir (hər simvol üçün bir "1" bit)
- 3.pwm:: 5000 nəzarət-C simvolu (ascii 03) ehtiva edir (hər bir char üçün iki "1" bit)
- 7.pwm:: 5000 nəzarət-G simvolunu (ascii 07) ehtiva edir (hər char üçün üç "1" bit)
- 15.pwm:: 5000 nəzarət-O simvolu (ascii 15) ehtiva edir (hər char üçün dörd "1" bit)
- 31.pwm:: 5000 nəzarət-_ simvolu (ascii 31) ehtiva edir (hər char üçün beş "1" bit)
- 63.pwm:: 5000 "?" Ehtiva edir simvol (ascii 63) (hər bir xarakter üçün altı "1" bit)
- 127.pwm:: 5000 DEL simvol (ascii 127) ehtiva edir (hər bir xarakter üçün yeddi "1" bit)
(İndi şəkillər çəkdiyimə görə, əsl bit nümunələrinin ideal olmadığını görürsünüz. Rs232 seriyası əvvəlcə LSB -ni ötürdüyündən, həqiqətən də sıfırlarla əvəz etmək istəyirik. Tələbə üçün bir məşq!)
Addım 4: DOS ilə oynayın: COM portunuzu konfiqurasiya edin və faylları kopyalayın
9600 bps ümumi bir bit sürətidir. Millisaniyədə "təxminən" bir baytla yaxşı uyğun gəlir, buna görə də bu vəziyyətdə, kiçik motorlar üçün yaxşı olacağını düşündüyüm 1000Hz PWM tezliyinə uyğun gəlir. İşin necə işlədiyini görmək üçün fərqli bit nisbətləri ilə təcrübə edə bilərsiniz, bu metodun üstünlüklərindən biridir. DOS (və ya "Əmr əmri") pəncərəsi yaradın (bir Windows OS istifadə etdiyinizi fərz etsəniz) və com portunuzu konfiqurasiya edin.: mode com1: 9600, n, 7, 1 "Bu, ticarət limanına 9600 saniyədə işləməsini və hər bir xarakterə 7 bit göndərməsini (7 fərqli bit uzunluğumuzla uyğunlaşmaq üçün) bildirir." n "heç bir parite yoxdur, "1", motoru sonuna qədər açmağımıza mane olacaq bir "dayanma" bitinin olması deməkdir (yaxşı.) Beləliklə, indi motoru əmrlərlə aça bilərsiniz. kimi: copy 0.pwm com1: Millisaniyədə təxminən 1 -də 5000 simvol göndərdiyimiz üçün motor təxminən 5 saniyə ərzində tam sürətlə işə düşməlidir. 5 saniyədən az istəsəniz daha qısa bir fayl yaradın., edə bilərsiniz: surəti 127.pwm com1: mühərriki mümkün olan ən aşağı sürətlə işlətmək. Sahib olduğum quraşdırma ilə motor 31. pwm -dən daha "yavaş" heç bir şeylə dönməzdi, ancaq YMMV (k 5V batareya ilə işləyən 12V mühərrikim var idi.) COPY əmri faylları bir araya gətirməyə imkan verir, buna görə də motorunuzun sürətlənməsini və sonra yenidən yavaşlamasını istəyirsinizsə, belə bir şey edə bilərsiniz: copy 31.pwm+15. pwm+7.pwm+0.pwm+7.pwm+15.pwm+31.pwm com1:
Addım 5: Bir Proqramdan Motoru İdarə Edin
Bir proqram yazırsınızsa, ehtimal ki, COM1: fayl olaraq aça və başqa bir fayl kimi yaza bilərsiniz. Müəyyən sayda simvol çıxarmaqla motorun işlədiyi dövrləri təyin edə bilmək çox lazımlı görünür. Unutmayın ki, sistemin seriya portuna göndərdiyiniz simvolları tamponlama ehtimalı çox yüksəkdir, buna görə də WRITE zənginin geri qayıtması motorun dediklərinizi yerinə yetirməsi demək deyil. Com port siqnalları ilə "xülya" bir şey etmədiyimiz üçün, dəstəkləyə biləcəyi gizli variantları araşdırmamalısınız. (baxmayaraq ki, com portuna bir BREAK ardıcıllığının necə göndəriləcəyini anlaya bilsəniz, bu davamlı bir "0" vəziyyətidir və motoru hər tərəfə aparacaq; davamlı 0 simvol göndərməkdən daha çox.)
Proqramlaşdırma diliniz COM1: -ə çıxmağa icazə vermirsə, kopyalama əmrlərini yerinə yetirmək üçün DOS -a "zəng vuraraq" motoru idarə edə bilərsiniz. (Tamam. Mən Microsoft -un Visual Basic Express 2005 -ni yüklədim (pulsuzdur) və seriyalı port vasitəsilə idarə olunan motor sürətinə üfüqi bir sürüşmə çubuğu bağlamağı bacardım. Zip əlavə edildi. Yəqin ki, proqramı təkrarlamaq üçün lazım olandan çox şey var. sisteminizdə, ancaq tam olaraq hansı bitlərə ehtiyac olduğunu anlaya bilmədim. Proqram həm çox sadələşdirilmiş, həm də çox yivli olması ilə başa düşülməsini çətinləşdirdi (üzr istəyirəm). əsas mövzu, sürüşmə çubuğunu oxuyur və serial mövzu tərəfindən istifadə olunan məlumatları yeniləyir.)
Addım 6: Təcrübə edin
İşlər əsasən işləyirsə, bu təcrübə üçün çoxlu yer təmin edir.
- Bit nümunələrimi düzəldin!
- Bit sürətinin çox əhəmiyyəti varmı?
- "Açıq" və "söndürülmüş" impulsların genişliyinə nəzarət etməlisiniz, yoxsa onların nisbətinə nəzarət etmək kifayətdir?
- Yalnız nisbətə nəzarət etmək məcburiyyətindəsinizsə, daha çox sürət səviyyəsi əldə etmək üçün daha yüksək bit nisbətlərində çoxsaylı xarakterli ardıcıllıqları nəzərdən keçirə bilərsiniz. 0 -dan sonra 127 -nin çıxması təxminən yarısı olardı.
- Bu da fənər ampullərinin qaralması üçün işləməlidir.
Tövsiyə:
Ucuz Hesablama: TTL Seriyalı Arduino: 3 Addım
Ucuz Hesablama: TTL Seriyalı Arduino: UNO kimi tam miqyaslı arduinoların dəyərinin çox hissəsi USB interfeysinin qiymətidir (qeyd edin, bu yazılarkən doğrudur, amma bu artıq doğru deyil, usb indi ucuzdur. hələ də başqa səbəblərdən TTL serialına getmək istəyirəm.). Bundan yaxa qurtarın
Dəyişən Sürətli Cəngavər Sürücü: 3 addım
Dəyişən Sürətli Cəngavər Sürücü: Bu mənim ilk təlimatımdır, zəhmət olmasa bəyənin! 1980 -ci illərin Knight Rider adlı televiziya şousundan ilhamlanaraq KITT adlı bir LED skaneri olan bir avtomobili bu və buna bənzər şəkildə irəli getdi
MQTT üzərində Uzaqdan Nəzarət və Foto Nəzarət: 8 Addım
MQTT üzərində Uzaqdan Nəzarət və Foto Nəzarəti: Salam.Bu gün qaraj qapılarını, işıqlandırmanı, istiliyi, təzyiqi idarə etməyi, temperaturu və bir çoxunu idarə etmək üçün istifadə edilə bilən uzaqdan idarəetmə və izləmə sisteminin necə qurulacağından danışmaq istərdim. parametrlər. Ancaq əsas xüsusiyyət
Çox rəngli LED -lərdən istifadə edərək seriyalı LED işığı: 3 addım (şəkillərlə)
Çox rəngli LED -lərdən istifadə edərək Serial LED İşıq: Serial LED işığı o qədər də bahalı deyil, amma mənim kimi DIY sevgilisiysənsə (özünəməxsus bir hobbiçisənsə), öz seriyalı LED -lərini hazırlaya bilərsən və bazarda mövcud olan işıqdan daha ucuzdur. 5 Voltla işləyən öz Serial LED işığımı hazırlayacağam
Düzgün Seriyalı Vs Paralel Bağlantı LEDləri: 6 Addım
Doğrudan Seriya Vs Paralel Bağlantı Ledləri: Bu təlimatda LED - İşıq Yayan Diodlardan bəhs edirik və birdən çox vahidimiz varsa onları necə bağlaya bilərik. Bu, əvvəldən bilmək istədiyim bir dərsdir, çünki elektron sxemlərlə məşğul olmağa başlayanda bir neçə qurdum