Тег: stm32 - сторінка 3
‹ 1 2
Схема керування безколекторним двигуном BLDC, PMSM на STM32
- Напруга живлення плати 12V
- Напруга живлення двигуна 12v ... 72V
- Максимальний струм 30 A
STM32 - PMSM Control
Керування PMSM за допомогою STM32
Викладений нижче матеріал ґрунтується на документації AVR447 від фірми Atmel. Приклад керування PMSM двигуном з трьома датчиками Холла для мікроконтролера STM32 базується на інформації, викладеної в цій документації. Існує деяка плутанина в термінології пов`язаної з безколекторними двигунами. Саме поняття "безколекторний двигун" включає в себе кілька груп двигунів, в тому числі і безколекторні двигуни з постійними магнітами. Далі маються на увазі безколекторні двигуни з постійними магнітами. У більшості літературних джерел двигуни з постійними магнітами розділені на дві категорії за формою зворотного ЕРС (електрорушійна сила). Зворотна ЕРС може мати вигляд трапеції або синусоїди. Хоча термінологія в літературі іноді суперечлива, в більшості випадків вважається, що безколекторні двигуни постійного струму (BLDC) мають зворотну ЕРС у формі трапеції, а синхронні двигуни з постійними магнітами (PMSM) мають синусоїдальну зворотну ЕРС. І BLDC і PMSM можуть збуджуватися синусоїдальними струмами.
STM32 - BLDC Motor Control
Керування безколекторним двигуном постійного струму (BLDC) за допомогою STM32
У якості прикладу розглянемо керування трьохфазним безколекторним двигуном (BLDC Motor) з датчиками Холла. Про алгоритм керування безколекторним двигуном з датчиками Холла я раніше писав у статті Управление бесколлекторным двигателем с датчиками Холла (Sensored brushless motors). У цій статті ми розглянемо лише питання програмування мікроконтролера. Мається на увазі що ви знайомі з алгоритмом керування BLDC з датчиками Холла та розумієтесь на структурі регулятора, а силова частина обрана відповідно до потужності Вашого двигуна. Тому у статті не буде наведена принципова схема, розглядатиметься лише структурна схема з описом призначення виводів мікроконтролера.24. STM32. Програмування STM32F103. Bootloader
У цій статті ми розглянемо що таке Bootloader, навіщо і коли потрібен власний Bootloader, приклад як написати власний Bootloader, приклад як адаптувати прошивку для використання з Bootloader-ом.
Що таке Bootloader?
Bootloader (загрузчик) - це програма яка знаходиться у пам`яті мікроконтролера. Основна функція загрузчика - записати програму (прошивку) у флеш пам`ять мікроконтролера. Тобто, прошивка мікроконтролера. Використовується коли треба дати можливість оновити прошивку кінцевому користувачеві приладу без використання програматора.Keil uVision5 – IDE для STM32
Keil - Keil uVision5
Встановлення і налаштування Keil. Створення першого проекту. Офіційний сайт: http://www.keil.com/ Комерційна IDE для мікроконтролерів STM32. У безкоштовному варіанті має обмеження за обсягом програми до 32Кб. Завантажити можна з офіційного сайту.
IAR Workbench - IDE для STM32
IAR - IAR Embedded Workbench for ARM 7.80
Встановлення та налаштування. Створення першого проекту. Офіційний сайт: https://www.iar.com/ Комерційне IDE для мікроконтролерів STM32. У безкоштовному варіанті має обмеження на 30 днів, або за обсягом програми до 32Кб. Завантажити можна з офіційного сайту.ST-Link Програматори для STM8 / STM32
23. STM32. Програмування STM32F103. Option bytes
Как захистити прошивку мыкроконтролера STM32 выд копыювання? Чи це взагалы реально?
22. STM32. Програмування STM32F103. PWR
Зниження енергоспоживання мікроконтролера частіше за все нас цікавить при розробці приладів, які живляться від акумуляторів чи батарей. STM32 дозволяє керувати власним енергоспоживанням. Перш, ніж ми навчимося застосовувати режими зниженого енергоспоживання, розглянемо, як організоване живлення мікроконтролера та загальні методи зниження енергоспоживання.
21. STM32. Програмування STM32F103. USB
На тестовій платі STM32F103 маємо microUSB роз’єм. І він служить не тільки для подачі живлення. STM32F103 може працювати з USB у якості різних USB - пристроїв. Як USB HID пристрій, у тому числі - як клавіатура чи мишка, як віртуальний послідовний порт, USB Mass Storage, тощо. Ми розглянемо лише пару прикладів. У першому - комп`ютер буде сприймати STM32F103 як віртуальний послідовний порт. У другому прикладі STM32F103 емулюватиме клавіатуру і мишку. STM32F103 буде рухати мишкою, (звісно на екрані :), та емулювати натискання кнопок на клавіатурі.
20. STM32. Програмування STM32F103. I2C Slave
У попередній статті ми розглянули роботу STM32 з шиною I2C у якості Майстра. Тобто, він був ведучий і опитував сенсор. Тепер зробимо так, щоб STM32 був Slave-ом і відповідав на запити, тобто сам працював як сенсор. Ми виділимо 255 байт пам`яті під регістри з адресами від 0 до 0xFF, і дозволимо Майстру в них писати/читати. А щоб приклад був не таким примітивним, зробимо з нашого STM32, ще і аналого-цифровий перетворювач з інтерфейсом I2C. ADC буде обробляти 8 каналів. Результати перетворень контролер буде віддавати Майстру при читанні з регістрів. Оскільки результат перетворення ADC займає 12 біт, нам потрібно буде 2 регістра (2 байта) на кожний канал ADC.
19. STM32. Програмування STM32F103. I2C Master
Шина I2C досить популярна і дуже багато сенсорів та інших пристроїв використовують саме I2C. Я не буду писати хто, коли і для чого винайшов цю шину та як по ній бігають байти. Цієї інформації повно у Інтернеті, для цього існує Вікіпедія. Коли Ви тримаєте в руках сенсор і бажаєте якнайшвидше отримати з нього дані, та вирішити поставлену задачу, Вам вистачить наступного мінімуму знань:
- Шина I2C - це двопровідна шина з лініями SCL, SDA. Теоретично, на одну шину I2C можна паралельно підключити до 112 пристроїв.
- Обидві лінії шини мають бути через резистори підключеними до живлення. Рекомендований номінал резисторів залежить від швидкості та інших параметрів шини. Зазвичай мало хто з цим морочиться і ставлять резистори у межах від 4.7кОм до 10кОм. Резисторів має бути по одному на кожну лінію. Якщо Ви підключаєте декілька модулів, а на кожному модулі вже впаяні підтягуючі резистори, то виходить, що резистори вмикаються паралельно і їх сумарний опір стає меншим. Це не дуже добре. Та, якщо ви вмикаєте лише два таких модуля і на кожному впаяні резистори по 10 кОм, тоді сумарний опір буде 5КОм, що попадає у межі допустимої норми і шина I2C, скоріш за все, буде працювати. Але повторюю: чіпляти на кожну лінію більше одного резистора - не дуже гарна ідея.
- Кожен пристрій на шині I2C має окрему адресу.
- На шині I2C може бути лише один Master і один, або декілька Slave.
- Швидкість шини може бути різною. Зазвичай використовують два стандарти 100 і 400 КГц. Швидкість лінії має визначатися по самому повільному пристрою на шині. Якщо Slave не встигає, він може "притримати" шину і всі його будуть чекати. Та такий підхід, хоч і є стандартом, але на практиці працює не завжди. У випадку, коли Master не вміє чекати (цим, наприклад страждають мікрокомп`ютери), на шині починається безлад. Тобто, некоректна робота одного з пристроїв на шині I2C (не важливо, у якій ролі - Master або Slave) може викликати проблеми у роботі усіх приладів.
- Якщо напруга живлення контролера відрізняється від напруги живлення датчика, вони мають вмикатися через двонаправлену схему узгодження логічних рівнів.
‹ 1 2
Недавні записи
- Деякі думки про точність вимірювань в електроприводі
- Датчики Холла 120/60 градусів
- Модуль драйверів напівмосту IGBT транзисторів
- Драйвер IGBT транзисторів на A316J
- AS5600. Варіант встановлення на BLDC мотор
- DC-DC для IGBT драйверів ізольований 2 W +15 -8 вольт
- U-FOC - Векторне керування безколекторними моторами
- FOC - своя реалізація векторного керування. Підбиваю підсумки 2022 року
- Конструктор регуляторів моторів. Підбиваю підсумки 2022 року.
- Чому трифазні мотори стали такими популярними?
Tags
html uart pmsm hih-4000 mpu-9250 soldering dc-dc ethernet mpx4115a foc programmator ssd1306 bmp280 examples java-script raspberry-pi tim servo books eb-500 mongodb nodemcu docker wifi lcd adc max1674 dht11 python ssd1331 mpu-6050 remap rtc piezo solar displays led web css options dma gpio usart sms rfid esp8266 i2c 3d-printer usb pwm bldc atmega sensors barometer rs-232 git websocket motor meteo encoder bluetooth brushless timer watchdog eeprom battery st-link ngnix nvic smd stm32 flask gps capture avr bme280 flash bkp exti
Архіви