Безколекторні двигуни. Приклади на C
Ці приклади можна розглядати тільки як демонстрацію алгоритмів керування безколекторними двигунами. Для доведення їх до кінцевої технічної реалізації потрібно, як мінімум, додати схеми захисту. Ці приклади розраховані на керування двигунами з напругою живлення від 12 до 24 Вольт. При вищій напрузі живлення доведеться вносити зміни у схеми. У схемах передбачена можливість подачі PWM сигналу (за допомогою перемичок) на верхні та/або нижні ключі. Для керування бездатчиковими двигунами це може відіграти важливу роль.
Sensored BLDC
Приклад керування безколекторним двигуном з датчиками Холла
Приклад, написаний на GCC 3.4.6 для мікроконтролера Atmega168 Містить: схему, приклад коду на С. |
|
Sensorless BLDC (AVR444)
Приклад керування бездатчиковим безколекторним двигуном
Приклад, написаний на GCC 3.4.6 для мікроконтролера Atmega168 Приклад від Atmel, адаптований до GCC Файли від Atmel (AVR444) можна скачати тут Містить: схему, приклад коду на С. |
|
Контролер має працювати на частоті 8МГц. Алгоритм визначення положення ротора заснований на вимірі напруги на вільній фазі під час обертання ротора і визначенні моменту переходу напруги вільної фази через нуль. Для вимірювання напруги використовується АЦП мікроконтролера. У цьому прикладі в якості опорної напруги АЦП використовується живлення мікроконтролера, а рівень напруги переходу фази через нуль (значення АЦП) задається в константі ADC_ZC_THRESHOLD. Це не зовсім коректно, тому що при зміні напруги живлення двигуна, визначення моменту переходу вільної фази через нуль буде неточним. Через використання АЦП цей приклад має деякі обмеження по швидкості, що зазначено у документації від Atmel.
Sensorless BLDC
Приклад керування бездачиковим безколекторним двигуном
Приклад, написаний на GCC 3.4.6 для мікроконтролера Atmega168 Містить: схему, приклад коду на С. |
|
Це ґрунтовна переробка прикладу AVR444. Його головна відмінність у тому, що для визначення моменту переходу напруги вільної фази через нуль використовується внутрішній компаратор мікроконтролера, а не АЦП. Також збільшено частоти роботи мікроконтролера до 16 МГц (тактування від зовнішнього кварцового резонатора). Ці та інші зміни дозволили працювати з більш швидкими двигунами.
Статті по безколекторним двигунам:
- Бесколлекторный мотор постоянного тока. Что это такое?
- Устройство бесколлекторного мотора
- Управление бесколлекторным мотором с датчиками Холла (Sensored brushless motors)
- Управление бесколлекторными моторами без бездатчиков (Sensorless BLDC)
- Запуск бесколлекторного мотора без бездатчиков (Sensorless BLDC)
- Определение положения ротора бесколлекторного мотора в остановленном состоянии
- Регулятор бесколлекторного мотора. Структура (ESC)
- Схема регулятора бесколлекторного мотора (Схема ESC)
- Силова частина регулятора BLDC двигунів
- Література по безколекторним двигунам.
- Безколекторні двигуни. Приклади програм для мікроконтролера
- Схема регулятора BLDC на STM32
- STM32. Приклад. Керування безколекторним двигуном (BLDC)
- STM32. Приклад. Керування PMSM. Приклади програм
- Видео о бесколлекторных моторах. BLDC, PMSM, векторное управление (російською)
Не зрозумію чому у вихіднику Sensored BLDC , ШІМ налаштований як PWM, phase Correct OCRA, начебто має бути Fast PWM 0xFF, і навіщо в ланцюзі VB два bootstrap capacitor, мені здається одного на 1 мкф вистачить.
Стосовно PWM, не зрозумів про який саме приклад йдеться. Їх було декілька і досить давно, понад 6 років тому. Я вже старенький і забуваю що було на минулому тижні. Дайте посилання про який саме код йде мова і де Ви його звантажити. Стосовно конденсаторів. Якщо здається, що 1 мкф вистачить – ставте 1 мкф. Якщо не вистачить – потім можна додати ;) Я ж не знаю у якому режимі і буде використовуватися плата.
Подскажите, почему может возникать ошибка [SPICE] TRAN: Timestep too small; timestep = 1.25e-019: trouble with node #v:q6:fi1#branch при симуляции? Схему выстроил в полном соответствии с вышеописанными доками, но никак не получается решить судя по интернету - самую частую ошибку при симуляции)
Недавні записи
- Фільтрація Back-EMF. Безсенсорні BLDC мотори
- Text to speech. Українська мова
- LCD Display ST7567S (IIC)
- Розпізнавання мови (Speech recognition)
- Selenium
- Комп'ютерний зір (Computer Vision)
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
Tags
barometer dht11 wifi bmp280 meteo ssd1306 uart books dc-dc lcd tim ssd1331 timer programmator battery exti mpx4115a motor flask nodemcu usb dma html java-script rs-232 st-link 3d-printer rfid esp8266 nvic encoder gpio piezo eb-500 brushless docker sms pmsm ngnix servo examples avr led smd i2c bkp eeprom usart solar soldering python flash stm32 raspberry-pi bme280 mpu-9250 hih-4000 foc bldc sensors rtc pwm capture adc max1674 atmega gps bluetooth remap mongodb mpu-6050 websocket css git watchdog displays ethernet web options
Архіви