Разработка внутреннего программного обеспечения для системы управления
Цель данного проекта – разработка системы, состоящей из трех контроллеров перемещения, каждый из которых управляет драйверами шаговых двигателей с использованием потенциометров в качестве датчиков абсолютного положения и концевых переключателей в качестве датчиков конечных положений. Система должна поддерживать функции ручного (при помощи кнопок на пульте управления) и автоматического (командами от центрального контроллера) управления шаговыми двигателями.
Система должна обеспечивать синхронное и поочередное управление двигателями в соответствии с заданными режимами работы, возможность взаимодействия между контроллерами перемещения и сбор информации о текущем положении с последующей передачей данных в центральный контроллер.
2. Цели и задачи
2.1. Разработка ВПО для каждого из трех контроллеров перемещения:
- Разработка алгоритмов управления драйверами шаговых двигателей.
- Интеграция с сенсорными системами для определения положения и препятствий (потенциометры и концевые выключатели).
- Обеспечение связи между контроллерами перемещения и центральным контроллером управления;
- Реализация функции распределенного управления контроллерами перемещения.
- Реализация общей системы управления, позволяющей задавать целевые позиции для всех двигателей с центрального контроллера;
- Реализация функции калибровки нулевых позиций, скорости перемещения для каждого двигателя;
- Реализация алгоритмов обработки и преобразования данных от датчиков положения (потенциометров) в общую систему координат;
- Реализация функции «ручного» управления с использованием клавиатуры.
- Реализация загрузчика (Bootloader) с целью централизованного программирования контроллеров перемещения основным приложением по интерфейсу CAN.
- Платформа - контроллеры перемещения производства НИПК Электрон;
- Интерфейс связи между контроллерами перемещения и центральным контроллером – CAN;
- Аналоговые входы для получения данных о состоянии концевых переключателей, клавиатуры;
- Аналоговые выходы для управления драйверами шаговых двигателей и управления периферией;
- Поддержка ADC для считывания значений с потенциометров.
- Язык программирования: C/C++;
- Среда разработки ВПО IAR 8.31 Embedded Workbench.
- Использование RTOS для многозадачности и упрощения управления потоками данных.
- Алгоритмы управления двигателями, включая интерполяцию и плавность движения.
- Обеспечение защиты от перегрузок двигателей;
- Обработка ошибок считывания данных с потенциометров;
- Реализация механизма аварийной остановки двигателей в случае критических сбоев;
- Механизмы восстановления после сбоев.
- Еженедельные отчёты о ходе выполнения задачи и выявленных проблемах.
- Финальный отчет по завершению проекта.
Оплата по договорености!