Re: Микропроцессорное зажигание на вихрь
Daryinalexej, доброе время суток. Появилась возможность продолжить.
1. Первое (и главное) – Вы продемонстрировали работоспособный вариант МПСЗ, что уже весьма не мало. Взгляд на его развитие – совершенно адекватный. Ваш собственный потенциал высокий и, как иногда говорят, голова и руки на месте. А что ещё нужно? Вывод однозначный – всё получится.
2. Мои некоторые мысли вслух по поводу Вашей ссылки на, так называемое, адаптивное зажигание, пока «не берите в голову». Не в этом суть дела. И сложность получения аналитического (не численного) решения интегро-дифференциальных уравнений Колмогорова-Феллера, даже методом характеристических функций, здесь обсуждать не будем. Действительно, это не совсем подходящее место.
3. Ваше стремление уйти от решения многопараметрической задачи (система из многих датчиков) понятна, хотя, на мой взгляд, рано или поздно всё к этому и сведётся. Однако минимизировать эту задачу, хотя бы по числу используемых датчиков, при реализации действительно адаптивной МПСЗ, бесспорно, стоящее дело.
4. Итак, у меня на борту Ваш вариант МПСЗ и передо мной на пульте кнопочный интерфейс управления формой «кривой» УОЗ. Размерно-весовые характеристики и обводы лодки известны, положение ОЦТ известно, реальный двигатель со всеми своими реальными параметрами висит на транце, диаметр и шаг винта известны. Все реальные метеоусловия налицо. Водитель «адекватный». Задача водителя (рулевого, как хотите…) состоит в том, чтобы, работая кнопками, подобрать такое положение реперных точек кусочно- линейной аппроксимации кривой УОЗ, при котором (вот здесь возможны варианты): получим в этих конкретных условиях максимум скорости движения лодки (Vmax), или - Vmax при минимуме путевого расхода горючего, или … здесь возможны ещё и другие варианты.
5. В приведенной Вами выше ссылке часто встречается словосочетание «оптимальный УОЗ», но никак не разъясняется, что под этим имеется в виду. А вообще- то существует теория оптимизации, там рассматриваются, естественно, и методы оптимизации. В любом случае, предварительно должен быть сформулирован критерий оптимальности и лишь тогда можно говорить конкретно о какой-либо оптимизации того или иного процесса или какой-либо системы. Если такого критерия нет, то говорить об оптимизации просто не имеет смысла.
6. Рассмотрим самый простой вариант. Необходимо так построить профиль «кривой УОЗ», чтобы в каждой реперной точке получить Vmax . Ясно, что для каждой такой точки Vmax будет своей. В итоге, такая «кривая» УОЗ будет оптимальной в смысле получения Vmax во всём диапазоне изменения числа оборотов КВ при заданных условиях.
7. Действия рулевого в ручном варианте. Единственный орган управления в этом случае – ручка газа, определяющая положение заслонки карба. Необходим контроль оборотов и скорости движения лодки. Ведущим фактором для решения поставленной задачи здесь является скорость лодки, а не обороты. Вспомним, как ведёт себя лёгкая лодка под грузовым винтом! Какие обороты и какая скорость? Для начала (с целью упрощения) выберем линейный характер изменения УОЗ в пределах двух точек, определяемых паспортными данными. Предполагается, конечно, что карб отлажен и устойчивые холостые обороты обеспечены. Этот упрощённый однолинейный профиль изменения УОЗ, безусловно, далеко не оптимальный, но мотор работать будет. Далее, выводим обороты КВ на середину диапазона (средние обороты) и начинаем, в кнопочном режиме, не меняя положения заслонки карба, варьировать по ординате положением срединной точки линейной зависимости УОЗ =y =f(n), где n – число оборотов, наблюдая при этом за изменением скорости лодки. Практика показывает, что зависимость y=f(n) нелинейная и, следовательно, у неё где-то должен быть некоторый максимум. Ориентироваться при этом нужно на изменение скорости лодки при изменении УОЗ. Работая конкретной кнопкой, нужно найти такое значение УОЗ, которое, при заданном положении заслонки, обеспечит Vmax . Как только такое положение УОЗ будет найдено, фиксируем новый профиль УОЗ в памяти. Он теперь будет состоять из двух линейных отрезков, иметь выраженный максимум и, конечно, будет работать эффективнее, чем просто зависимость y=a+bn. Некоторые считают (и не без оснований), что и этого уже вполне достаточно. Это тем более верно, что такая подстройка может быть, при необходимости, повторена и не раз и не два. Можно разбить каждый из двух полученных поддиапазонов по оборотам ещё на две равные части и произвести аналогичную процедуру настройки по каждой из двух новых реперных точек. В итоге получим более тонкую оптимизацию профиля УОЗ, подчёркиваю, если в этом будет необходимость.
Таким образом, Ваш вариант ручной подстройки профиля УОЗ, позволяет оптимизировать работу движка по достижению Vmax лодки во всём диапазоне оборотов. Кстати, никто не мешает точно также осуществить оптимизацию УОЗ для крайних точек (по оборотам) исходного линейного профиля.
8. Переключаемся с ручной настройки на автомат. Алгоритм решения задачи в этом случае аналогичный. Разница состоит только в том, что теперь при заданном положении заслонки надо в автоматическом режиме, используя данные датчика скорости лодки, найти экстремум в виде максимума для функции V=f(УОЗ), а для этого, как известно, надо проанализировать знак первой производной от скорости по УОЗ. Смена знака производной скорости с (+) на (-) – признак экстремума в виде max. Значение УОЗ, при котором производная обращается в 0, соответствует Vmax. Функция V=f(УОЗ) эмпирическая и получается автоматическим (программным) сканированием УОЗ в заданных границах с заданным шагом и считыванием для каждого УОЗ значения текущей скорости с датчика. Задача определения и анализа производной в этом случае должна решаться методом конечных разностей. Шаг сканирования можно задать, опять же, эмпирически, а можно определить с использованием теоремы отсчётов Котельникова (думаю, Вы в курсе). Таким именно образом может быть просчитан и оптимизирован по Vmax профиль УОЗ для конкретной реальной лодки, с конкретным мотором и винтом, в конкретных погодных условиях, загрузкой и сохранён в памяти процессора. Иными словами, получается автоматическая самонастройка профиля управления УОЗ под реальную систему и реальные условия, что, собственно, и требуется. Очевидно также, что подобным образом можно обеспечить и автоматическую перестройку профиля под меняющиеся (например, погодные) условия.
9. Описанный вариант решения проблемы, конечно, далеко не единственный. Думаю, Вы сами видите, сколько возможностей для этого существует и, в принципе, никакой математики, выходящей за пределы курса средней школы пока здесь не используется, нет необходимости.
Всего самого наилучшего.