регулювання швидкості двигуна постійного струму за допомогою алгоритму pid (stm32f4)
додому » Блог » Регулювання швидкості двигуна постійного струму за допомогою алгоритму pid (stm32f4)

регулювання швидкості двигуна постійного струму за допомогою алгоритму pid (stm32f4)

Перегляди: 0     Автор: Редактор сайту Час публікації: 2020-09-02 Походження: Сайт

Запитуйте

кнопка спільного доступу до Facebook
кнопка спільного доступу до Twitter
кнопка спільного доступу до лінії
кнопка спільного доступу до wechat
кнопка спільного доступу в Linkedin
кнопка спільного доступу на pinterest
кнопка спільного доступу до WhatsApp
кнопка обміну kakao
кнопка обміну snapchat
кнопка обміну телеграмою
поділитися цією кнопкою спільного доступу

Привіт усім, я Тахір уль Хак з іншого проекту.
Цього разу настав час зробити MC, який використовувався 2017-11-407.
Це кінець середньострокової програми.
Сподіваюся, вам сподобається.
Для цього потрібно багато концепцій і теорій, тому давайте спочатку розглянемо це.
З появою комп’ютерів і індустріалізованих процесів в історії людства проводилися дослідження, спрямовані на розробку методів перевизначення процесу, і, що більш важливо, використання машин для автономного керування процесом.
Мета полягає в тому, щоб зменшити участь людини в цих процесах, таким чином зменшивши помилки в цих процесах.
Так виник напрям \'системотехніка\'.
Розробку системи керування можна визначити як використання різноманітних методів керування роботою процесу або підтримки постійного та бажаного середовища, ручного чи автоматичного.
Простий приклад - контроль температури в кімнаті.
Ручне керування означає присутність особи, яка перевіряє поточні умови на місці (датчик)
, з очікуваннями (обробка)
і вживає відповідних дій для отримання бажаного значення (привід).
Проблема цього підходу полягає в тому, що він не надто надійний, оскільки людина схильна до помилок або недбалості в роботі.
Крім того, ще одна проблема полягає в тому, що швидкість процесу, який запускає привод, не завжди рівномірна, що означає, що іноді він може бути швидшим за необхідну швидкість, а іноді він може бути повільним.
Рішенням цієї проблеми є використання мікроконтролера для керування системою.
Відповідно до наведеної специфікації, мікроконтролер запрограмований для керування процесом підключення в ланцюзі (
обговорювати пізніше)
значення або умови, таким чином керуючи процесом для підтримки бажаного значення.
Перевага цього процесу полягає в тому, що в цей процес не потрібно втручання людини.
Крім того, швидкість цього процесу стабільна.
Перш ніж ми продовжимо, дуже важливо визначити різні терміни на цьому етапі: Контроль зворотного зв’язку: у цій системі вхідні дані в певний час залежать від однієї або кількох змінних, включаючи вихідні дані системи.
Негативний зворотний зв'язок: у цій системі еталон (вхід)
Як зворотний зв'язок помилка віднімається, а фаза вхідного сигналу становить 180 градусів.
Позитивний зворотний зв'язок: у цій системі
додаються помилки еталонного (вхідного) сигналу, коли зворотний зв'язок і вхідні дані знаходяться в фазі.
Сигнал помилки: різниця між бажаним виходом і фактичним виходом.
Датчик: пристрій, що використовується для виявлення певної кількості пристроїв у ланцюзі.
Зазвичай його розміщують на виході або в будь-якому місці, де ми хочемо зробити якісь вимірювання.
Процесор: частина системи керування, яка обробляється на основі алгоритмів програмування.
Він приймає деякі вхідні дані та виробляє певні результати.
Привід: у системі керування привід використовується для виконання подій на основі сигналу, який генерує мікроконтролер, щоб впливати на вихід.
Система із замкнутим контуром: система з одним або кількома контурами зворотного зв’язку.
Система з відкритим контуром: немає системи для зворотного зв’язку.
Час наростання: час, необхідний для підвищення вихідного сигналу від 10% максимальної амплітуди сигналу до 90%.
Час падіння: час, необхідний для зниження виходу з 90% до 10%.
Пікове перевищення: пікове перевищення – це величина вихідного сигналу, що перевищує значення в стаціонарному стані (
нормальний під час перехідної реакції системи).
Стабільний час: час, потрібний для досягнення стабільного стану виводу.
Стаціонарна помилка: різниця між фактичним виходом і очікуваним виходом після досягнення системою стаціонарного стану. На малюнку вище показаний дуже спрощений варіант системи керування.
Мікроконтролер є ядром будь-якої системи керування.
Це дуже важливий компонент, тому його слід ретельно підбирати відповідно до вимог системи.
Мікроконтролер отримує дані від користувача.
Цей вхід визначає умови, необхідні для системи.
Мікроконтролер також отримує дані від датчика.
Датчик підключається до виходу, а його інформація повертається на вхід.
Цей вхід також можна назвати негативним зворотним зв'язком.
Негативні відгуки були пояснені раніше.
На основі свого програмування мікропроцесор виконує різні обчислення та виводить на привод.
Система керування приводом на основі виходу намагається підтримувати ці умови.
Прикладом може бути водій двигуна, який керує двигуном, де водій двигуна — це водій, а двигун — це завод.
Тому двигун обертається із заданою швидкістю.
Підключений датчик зчитує стан поточної фабрики та передає його на мікроконтролер.
Мікроконтролер знову порівнюється та обчислюється, тому цикл повторюється.
Процес повторюється і нескінченний, і мікроконтролер може підтримувати бажані умови.
Ось два основних способи керування швидкістю двигуна постійного струму)
Ручне керування напругою: у промислових застосуваннях механізм керування швидкістю двигуна постійного струму має вирішальне значення.
Іноді нам може знадобитися швидкість, яка є вищою або нижчою за звичайну.
Тому нам потрібен ефективний метод контролю швидкості.
Контроль напруги живлення є одним з найпростіших методів регулювання швидкості.
Ми можемо змінити напругу, щоб змінити швидкість. b)
Управління ШІМ за допомогою PID: ще один ефективніший спосіб – використання мікроконтролера.
Двигун постійного струму підключений до мікроконтролера через драйвер двигуна.
Драйвером двигуна є мікросхема, яка отримує ШІМ (
широтно-імпульсну модуляцію)
вхід від мікроконтролера та вихід на двигун постійного струму відповідно до входу. Рисунок 1.
2: Розділ 1 сигналу ШІМ.
Вступ 3, розглядаючи сигнал ШІМ, спочатку можна пояснити роботу ШІМ.
Він складається з безперервних імпульсів протягом певного періоду часу.
Період часу - це час, затрачений точкою на переміщення на відстань, що дорівнює довжині хвилі.
Ці імпульси можуть мати лише двійкові значення (ВИСОКИЙ або НИЗЬКИЙ).
У нас також є дві інші величини, ширина імпульсу та шпаруватість.
Ширина імпульсу - це час, коли вихід ШІМ високий.
Робочий цикл - це відсоткове відношення ширини імпульсу до періоду часу.
Протягом решти періоду часу вихід низький.
Робочий цикл безпосередньо контролює швидкість двигуна.
Якщо двигун постійного струму забезпечує позитивну напругу протягом певного періоду часу, він рухатиметься з певною швидкістю.
Якщо позитивна напруга подається протягом більш тривалого періоду часу, швидкість буде більшою.
Тому шпаруватість ШІМ можна змінювати, змінюючи ширину імпульсу.
Шляхом зміни робочого циклу двигуна постійного струму можна змінити швидкість двигуна.
Контроль швидкості для проблем двигуна постійного струму: проблема з першим методом регулювання швидкості полягає в тому, що напруга може змінюватися з часом.
Ці зміни означають нерівномірну швидкість.
Тому перший спосіб небажаний.
Рішення: Ми використовуємо другий метод для контролю швидкості.
Ми використовуємо PID-алгоритм, щоб доповнити другий метод.
PID являє собою пропорційну інтегральну похідну.
В алгоритмі PID поточна швидкість двигуна вимірюється та порівнюється з бажаною швидкістю.
Ця помилка використовується для складних розрахунків для зміни робочого циклу двигуна відповідно до часу.
Цей процес є в кожному циклі.
Якщо швидкість перевищує бажану швидкість, робочий цикл зменшується, а робочий цикл збільшується, якщо швидкість нижча за бажану швидкість.
Це налаштування не виконується, доки не буде досягнуто найкращої швидкості.
Постійно перевіряйте та контролюйте цю швидкість.
Ось компоненти системи, які використовуються в цьому проекті, і короткий вступ до деталей кожного компонента.
STM 32F407: мікроконтролер, розроблений ST Micro-section.
Він працює на ARM Cortex. М Архітектура.
Він лідирує в своєму сімействі з високою тактовою частотою 168 МГц.
Драйвер двигуна L298N: Ця мікросхема використовується для запуску двигуна.
Має два зовнішні входи.
Один з мікроконтролера.
Мікроконтролер забезпечує для нього сигнал ШІМ.
Швидкість двигуна можна регулювати, регулюючи ширину імпульсу.
Його другий вхід є джерелом напруги, необхідної для приводу двигуна.
Двигун постійного струму: двигун постійного струму працює від джерела живлення постійного струму.
У цьому експерименті двигун постійного струму працює за допомогою фотоелектричної муфти, підключеної до драйвера двигуна.
Інфрачервоний датчик: інфрачервоний датчик насправді є інфрачервоним приймачем.
Він надсилає та приймає інфрачервоні хвилі, які можна використовувати для виконання різноманітних завдань.
Оптичний з’єднувач ІЧ-кодера 4N35: оптичний з’єднувач – це пристрій, який використовується для ізоляції низьковольтної частини ланцюга та високовольтної частини.
Як зрозуміло з назви, він працює на основі світла.
Коли частина низької напруги отримує сигнал, струм тече в частині високої напруги.
Система є системою контролю швидкості.
Як згадувалося раніше, система реалізована з використанням ПІД пропорційного інтеграла та похідної.
Система регулювання швидкості має перераховані вище компоненти.
Перша частина - це датчик швидкості.
Датчик швидкості - це інфрачервона схема передавача та приймача.
Коли тверда речовина проходить через U-подібну щілину, датчик переходить у низький стан.
Зазвичай він у високому стані.
Вихід датчика підключено до фільтра низьких частот, щоб усунути загасання, спричинене перехідним процесом, який виникає під час зміни стану датчика.
Фільтр низьких частот складається з резисторів і конденсаторів.
Значення вибрано відповідно до вимог.
Використовується конденсатор 1100 нФ, а опір становить близько 25 Ом.
Фільтр низьких частот усуває непотрібні перехідні процеси, які можуть призвести до додаткових показань і сміттєвих значень.
Потім фільтр низьких частот виводиться через конденсатор на вхідний цифровий висновок мікроконтролера stm.
Інша частина - це двигун, керований ШІМ, що забезпечується мікроконтролером stm.
Це налаштування забезпечено електричною ізоляцією за допомогою оптичного з’єднувача ic.
Оптичний з’єднувач містить світлодіод, який випромінює світло в корпусі мікросхеми, і коли на вхідній клемі подається високий імпульс, він замикає вихідну клему.
Вхідний термінал подає ШІМ через резистор, який обмежує струм світлодіода, підключеного до оптичного з’єднувача.
Вихідний резистор підключається так, що коли клема замикається накоротко, на резисторі генерується напруга, а контакт, підключений до клеми резистора, отримує високий стан.
Вихід фотоелектричного з'єднувача підключений до входу IN1 мікросхеми драйвера двигуна, який підтримує висоту контакту дозволу.
Коли робочий цикл ШІМ змінюється на вході оптичного з'єднувача, штифт драйвера двигуна перемикає двигун і контролює швидкість двигуна.
Після ШІМ, що подається на двигун, драйвер двигуна зазвичай забезпечує напругу 12 вольт.
Потім драйвер двигуна дозволяє двигуну працювати.
Давайте познайомимося з алгоритмом, який ми використовували при реалізації цього проекту регулювання швидкості двигуна.
ШІМ двигуна забезпечує один таймер.
Конфігурація таймера виконана та налаштована на забезпечення ШІМ.
Коли двигун запускається, він обертає щілину, закріплену на валу двигуна.
Щілина проходить через порожнину датчика і створює низький імпульс.
При низьких імпульсах код запускається і чекає, поки щілина переміститься.
Коли щілина зникає, датчик забезпечує високий стан, і таймер починає відлік.
Таймер показує нам час між двома щілинами.
Тепер, коли з’являється ще один низький імпульс, оператор IF виконується знову, очікуючи наступного наростаючого фронту та зупиняючи лічильник.
Після розрахунку швидкості обчисліть різницю між швидкістю та фактичним еталонним значенням і вкажіть pid.
Pid обчислює значення робочого циклу, яке досягає контрольного значення в певний момент.
Це значення надається в CCR (
регістр порівняння).
Залежно від помилки швидкість таймера зменшується або збільшується.
Впроваджено код Atollic Truestudio.
Можливо, для налагодження знадобиться встановити студію STM.
Імпортуйте проект у STM Studio та імпортуйте змінні, які ви хочете переглянути.
Невелика зміна від 2017-11-4xx.
Змініть тактову частоту точно до файлу h на 168 МГц.
Фрагмент коду надано вище.
Висновок полягає в тому, що швидкість двигуна контролюється за допомогою PID.
Однак крива не зовсім плавна лінія.
На це є багато причин: хоча датчик, підключений до фільтра низьких частот, усе ще створює певні дефекти, це пов’язано з деякими неминучими причинами для нелінійних резисторів і аналогових електронних пристроїв, двигун не може обертатися плавно при низькій напрузі або ШІМ.
Він надає мудаки, які можуть змусити систему ввести якесь неправильне значення.
Через тремтіння датчик може пропустити якусь щілину, яка забезпечує більш високе значення, і основною причиною іншої помилки може бути основна тактова частота stm.
Тактова частота ядра Stm становить 168 МГц.
Хоча ця проблема була розглянута в цьому проекті, існує цілісна концепція цієї моделі, яка не забезпечує такої високої частоти.
Швидкість відкритого циклу забезпечує дуже гладку лінію лише з кількома неочікуваними значеннями.
PID також працює і забезпечує дуже низький час стабільності двигуна.
PID двигуна було перевірено при різних напругах, які зберігали еталонну швидкість постійною.
Зміна напруги не змінює швидкість двигуна, вказуючи на те, що PID працює.
Ось деякі сегменти кінцевого результату PID. a)
Замкнутий цикл @ 110 об/хв.
Замкнутий цикл @ 120 об/хв. Цей проект не можна було б завершити без допомоги членів моєї групи.
Я хочу подякувати їм.
Дякуємо за перегляд цього проекту.
Сподіваюся допомогти вам.
Будь ласка, чекайте більше.
Благословляйте до цього :)

Група HOPRIO, професійний виробник контролерів і двигунів, була заснована в 2000 році. Штаб-квартира групи знаходиться в місті Чанчжоу, провінція Цзянсу.

Швидкі посилання

Зв'яжіться з нами

WhatsApp: +86 18921090987 
Тел.: + 18921090987 
Електронна пошта: sales02@hoprio.com
Адреса: No.19 Mahang South Road, Wujin High-tech District, Changzhou City, Jiangsu Province, China 213167
Залиште повідомлення
ЗВ'ЯЖІТЬСЯ З НАМИ
Copyright © 2024 ChangZhou Hoprio E-Commerce Co., Ltd. Усі права захищено. Карта сайту | Політика конфіденційності