Синхронізація та таймінг
Першочерговими пріоритетами кожної програми реального часу є належний вибір часу, синхронізація та детермінована реакція системи, і цим аспектам необхідно приділяти особливу увагу під час проектування.керування двигуномпрограмне забезпечення. По суті, процес звучить дуже просто: система зчитує значення датчиків, обробляє алгоритм керування, контролює безпеку системи та керує вихідним каскадом, регулюючи шпаруватість виходу ШІМ.
Невеликі помилки синхронізації можуть призвести до серйозних помилок реагування системи, нестабільної роботи та низької продуктивності. Щоб забезпечити належну роботу, вкрай важливо залишатися синхронізованим та забезпечувати детермінізм системи. Тут я хотів би наголосити, що ми маємо справу з «системою жорсткого реального часу», і дотримання стислих термінів є абсолютно критичним.
Програмне забезпечення контролера двигуна може бути реалізовано як рішення "на голому залізі" без операційної системи, використовуючи відповідну RTOS (операційну систему реального часу), або як багатоядерне гібридне рішення, де деякі ядра процесора працюють у режимі "на голому залізі", а інші використовують операційну систему. Рішення "на голому залізі" завжди базуються на конструкції, керованій перериваннями, де переривання обробляють критичні за часом завдання та забезпечують, щоб усе відбувалося з точними інтервалами.
Незалежно від того, чи це рішення на базі ОС, RTOS чи гібридне рішення, для забезпечення ефективної та надійної роботи системи необхідно виконати аналіз синхронізації, визначення пріоритетів завдань та аналіз безпеки.
Аналіз синхронізації забезпечує своєчасне виконання всіх завдань. Це включає врахування найгіршого часу виконання кожного завдання. Деякі з найважливіших завдань в управлінні двигуном включають збір даних датчиків, виконання алгоритмів керування за допомогою генерації ШІМ-сигналу, виявлення та обробку несправностей, функції аварійної зупинки та безпеки, зв'язок у режимі реального часу з іншими компонентами системи та синхронізацію із зовнішніми системами.
Операційна система реального часу (RTOS)
Вибір правильної RTOS для вашої системи керування двигуном має вирішальне значення для забезпечення високої продуктивності, надійності та безпеки. Ключові міркування включають продуктивність RTOS у реальному часі, ефективність використання ресурсів, включаючи обсяг пам'яті та використання процесора, а також обробку планування на основі пріоритетів. Ефективні та швидкі переривання, а також надійність та стійкість системи також є ключовими факторами. Важливу роль відіграють підтримка та документація постачальників, сумісність з апаратним забезпеченням, а також наявність інструментів розробки (таких як IDE, налагоджувачі та аналізатори) та екосистем (включаючи бібліотеки та зразки коду). Нарешті, слід також враховувати умови ліцензування та вартість RTOS.
Враховуючи різні фактори та специфічні вимоги програм керування двигунами, FreeRTOS, популярна операційна система реального часу з відкритим кодом, відома своєю ефективністю та універсальністю, є чудовим вибором. Цей вибір особливо вигідний у сценаріях, де ключовими факторами є економічна ефективність, операційна ефективність, гнучкість системи, надійність та стійкість, простота використання, широка підтримка апаратного забезпечення та ефективність використання ресурсів.
Час публікації: 08 травня 2024 р.
