Motor Driver

📟 Micro:bit Project: LED Blink



មុខងារសំខាន់ៗ
  • ការពង្រីកថាមពល ៖ ជំរុញសញ្ញាចរន្តទាបទៅទិន្នផលថាមពលខ្ពស់។
  • ការគ្រប់គ្រងទិសដៅ ៖ ប្រើ សៀគ្វីស្ពាន H ដើម្បីបញ្ច្រាសលំហូរចរន្ត និងផ្លាស់ប្តូរទិសដៅម៉ូទ័រ។
  • ការគ្រប់គ្រងល្បឿន ៖ ផ្លាស់ប្តូរល្បឿនម៉ូទ័រដោយប្រើ Pulse Width Modulation (PWM)។
  • ការការពារ ៖ ការពារពីការឡើងកំដៅខ្លាំងពេក ចរន្តលើស និងការកើនឡើងវ៉ុល (Back EMF)។ [1, 2, 3, 4, 5, 6]







ប្រភេទទូទៅនៃកម្មវិធីបញ្ជាម៉ូទ័រ
  • កម្មវិធីបញ្ជាម៉ូទ័រ DC ៖ ប្រើសម្រាប់ម៉ូទ័រដុសខាត់ជាមូលដ្ឋាននៅក្នុងប្រដាប់ក្មេងលេង និងមនុស្សយន្ត; ម៉ូដែលទូទៅរួមមាន L298N និង L293D
  • កម្មវិធីបញ្ជាម៉ូទ័រស្តេបភើរ ៖ ផ្ញើជីពចរច្បាស់លាស់សម្រាប់ចលនាដែលមានភាពត្រឹមត្រូវខ្ពស់នៅក្នុងម៉ាស៊ីនបោះពុម្ព 3D និងម៉ាស៊ីន CNC; ម៉ូដែលពេញនិយមរួមមាន A4988 និង DRV8825
  • កម្មវិធីបញ្ជាម៉ូទ័រស៊ែវ័រ ៖ គ្រប់គ្រងទីតាំងមុំដោយប្រើរង្វិលជុំមតិត្រឡប់ ដែលជារឿយៗត្រូវបានរកឃើញនៅក្នុងដៃមនុស្សយន្ត និងយានជំនិះ RC។
  • ឧបករណ៍បញ្ជា BLDC (គ្មានជក់) ៖ ឧបករណ៍បញ្ជាដែលមានប្រសិទ្ធភាពខ្ពស់ដែលប្រើក្នុងយន្តហោះគ្មានមនុស្សបើក និងយានយន្តអគ្គិសនីដែលគ្រប់គ្រងថាមពលបីដំណាក់កាល។
  • ឧបករណ៍បញ្ជាម៉ូទ័រ AC (VFDs) : កែតម្រូវប្រេកង់ និងវ៉ុលសម្រាប់ម៉ូទ័រអាំងឌុចស្យុងឧស្សាហកម្មនៅក្នុងកង្ហារ និងជណ្តើរយន្ត។ [1, 2, 3, 4, 5]

របៀបជ្រើសរើសមួយ
ដើម្បីជ្រើសរើសកម្មវិធីបញ្ជាដែលត្រឹមត្រូវ អ្នកត្រូវតែផ្គូផ្គងវាទៅនឹងលក្ខណៈបច្ចេកទេសរបស់ម៉ូទ័ររបស់អ្នក៖ [1, 2, 3]
  • វ៉ុល ៖ ត្រូវប្រាកដថាអ្នកបើកបរគាំទ្រវ៉ុលប្រតិបត្តិការដែលបានវាយតម្លៃរបស់ម៉ូទ័រ។
  • ចរន្តជាប់ ៖ អ្នកបើកបរត្រូវតែដោះស្រាយចរន្តដែលម៉ូទ័រទាញក្នុងអំឡុងពេលប្រតិបត្តិការធម្មតា។
  • ចរន្តជាប់គាំង ៖ នេះគឺជាចំនួនដ៏សំខាន់បំផុត។ តាមឧត្ដមគតិ អ្នកបើកបររបស់អ្នកគួរតែដោះស្រាយចរន្តជាប់គាំងរបស់ម៉ូទ័រ (ការទាញនៅពេលដែលអ័ក្សជាប់គាំង) ដើម្បីជៀសវាងការឆេះ។
  • ចំណុចប្រទាក់ត្រួតពិនិត្យ ៖ ជ្រើសរើសដោយផ្អែកលើរបៀបដែលឧបករណ៍បញ្ជារបស់អ្នកទំនាក់ទំនង ដូចជា PWM, I2C ឬ SPI។ [1, 2, 3, 4, 5, 6, 7]
📌 គន្លឹះ​ជំនាញ ៖ តែងតែជ្រើសរើស​ឧបករណ៍​បញ្ជា​ដែល​អាច​ទ្រាំទ្រ​នឹង​ចរន្ត​បាន​យ៉ាង​ហោច​ណាស់ 20% ជាង​ចរន្ត​ជាប់​អតិបរមា​របស់​ម៉ូទ័រ​របស់​អ្នក ដើម្បី​ធានា​បាន​នូវ​គម្លាត​សុវត្ថិភាព​សម្រាប់​កំហុស

💻 JavaScript Code


// Micro:bit LED Blink
basic.forever(function () {
    led.toggle(2, 2)
    basic.pause(500)
})
  

Post a Comment

Previous Post Next Post