Тема: Эмулятор дизельного двигателя Perkins
Доброго времени суток
Для отладки разрабатываемого контроллера управления гидравлической станцией
пришлось написать эмулятор дизельного двигателя Perkins
Переписываю систему с контроллера Bosch - импортозамещение
Может идея пригодится кому-то
Логику приема команд по CAN выделил в составной блок
Ловит простые и Ext пакеты. На выходе индикатор приема команды, длина пакета и данные.
Сделал выход Led. К нему можно подключить светодиод или один из выходов контроллера, а внутри блока подключить к нужной точке. Удобно для отладки...
Режим эмуляции включается/выключается командой по CAN и записывается в энергонезависимую память.
Старт/Стоп производится CAN командой
В состоянии Старт ловим команды по CAN на установку оборотов и с периодом 200 мс отправляем 6 CAN пакетов с состоянием двигателя. Пакеты отправляются с помощью драйвера асинхронной передачи CAN.
Команды на установку оборотов сыпятся постоянно от контроллера гидростанции. После запуска - прогрев, снижение до холостых, в рабочем режиме - изменение оборотов PID регулятором для управления производительностью гидро насосов.
Обороты меняем не чаще чем 1 раз в 500 мс.
Динамичными сделал пока только установку оборотов. Остальные параметры в статике, но легко можно добавить.
Не судите строго, первый проект на таком контроллере.
Очень непривычно программировать - нет скриптов и мониторинга состояния
У большинства конкурентов такие возможности есть...
Модераторское: вынесено в отдельную тему