Свершилось, новая версия программы с двухполярным сигналом датчика. Небольшая предистория, система расчета ФУОЗ базируется на раннем(первом) импульсе индукционного датчика, при работе двигателя все хорошо, но вот при запуске возникает инерционная временная составляющая. Выглядит это так, в момент старта двигателя, особенно на кик-стартере, поршень пересекает раннюю магнитную метку вала, дается импульс, МК считает, но из-за нестабильности оборотов, и инерционности схемы, в момент расчетной искры поршень может не дойти до нужной точки. Для запуска эта точка 1-2 градуса после ВМТ, но если инертность вращения ее отбросит, на 5-7 градусов до ВМТ, мы почувствуем неприятную "отдачу".
Эта погрешность расчета носит сугубо механический характер, вес поршневой группы, и моменты трения+инерция не позволяют раскрутить движок на старте, линейно и быстро. При чем с увеличением объема это сказывается сильнее. Например на двигателях 150сс и менее, этот "эффект" почти незаметен, а на 400сс он уже может травмировать.
В стоковых решениях с этой проблемой борются использованием обеих фронтов импульса магнитного датчика. Ранний импульс хорош для работы двигателя, а поздний отстает от него, на угол длинны металлического наплыва метки вала, и хорош для запуска.
Логика здесь простая, импульс запуска проходит после второго сигнала, но в связи с особенностями работы МК, пришлось изменить схему, а именно: ввести второй канал с оптроном. Включен второй РС817 с обратной полярностью, это обеспечивает приход сигналов на разные ноги МК.
По схеме, входы сигнала были изменены по двум причинам: использование хардварного прерывания захвата сигнала, и необходимостью освободить линии даты RXD/TXD для связи с ПК "онлайн". А вот выход сигнала не столь критичен, в ПО правки графиков теперь предусмотрена настройка пина выходного сигнала, поскольку в DIP и SMD удобность разводки отличается. Появился выход PB2, на нем происходит индикация работы МК по второму сигналу, проще говоря светодиод на нем светится, когда мотор заводится, и на низких оборотах. Еще есть РВ7 - выход управления flyback, отключает генерацию питания на момент искры, его работа показана в схеме от Altium. Этот пин не мешает процессу, в схеме где он не используется, можно просто повесить в воздухе. На PD0/PD1 планируется подключать связь к ПК, в беспроводном варианте переходника это довольно удобно. РС1 пока что остается за резистором/вакуумом, но код по нему не готов. По схемным изменением вроде все.
Программные изменения, тут все гораздо сложнее, совокупность правок довольно большая, код можно считать новой версией - 2.0, и он не совместим с ПО графиков старой версии, точно так же как ПО графиков не совместимо с файлами ранних версий. Но есть и хорошие новости, ФУОЗ версии 2.0 может нормально работать со старой платой(один импульс), правда ногу сигнала придется перекинуть по новой схеме, с PD0 на PD2.
В программе графиков как и раньше нужно задавать угол первого (раннего) импульса, а вол угол второго МК определит самостоятельно. Работает это так:
- заводим;
- держим обороты от 1200 до 1500;
- ждем 10 секунд.
Обычно МК достаточно 3-5 секунд для замера, ну максимум 10, результат фильтруется от ошибок и хранится в ПЗУ чипа. При последующих включениях он будет проверять ничего ли не изменилось, но уже при старте будет использоваться замеренная величина угла позднего импульса. При этом если схема старая, и импульс один, МК это распознает и понимает. Замеренный угол уже сейчас можно считать с EEPROM, например с eXtreme Burner. Поскольку режим новый и мало ли что случается, в памяти МК имеется защита от сбоев замеров, и хранится число самих замеров. Так же на всякий случай в ПО правки углов есть настройка "ручного" ввода угла второго(позднего) импульса. При "ручном" вводе МК не будет делать "автозамер" и не будет использовать ПЗУ.
Если изначально не хотите использовать второй(поздний) импульс, и не хотите автозамер, в ПО графиков, в ручной настройке углов нужно задать угол заведомо превышающий реальный график, например 100 градусов. При этом МК будет работать в точности по старой версии расчета, с одним импульсом.
Основные изменения в версии 2.0:
- два фронта импульса;
- автозамер второго импульса
- защита от помех импульса
- использование ПЗУ
Важно, на текущий момент нет системы распознавания первый/второй импульс, по текущей схеме PD2(INT0) - первый(ранний) импульс, PD3(INT1) - второй(поздний).
В данный момент схема прошла тестирование на осциллографе и стробостенде, а вот испытывать на мото сейчас холодно. Чуть позднее будет видео.
- Вложения
-
- CDI_v2.0.zip
- Исходники, ассемблер, AVR Studio 4.
- (155.87 KiB) Скачиваний: 227
-
- CDI_v2.0.part3.rar
- CDI версии 2.0, ПО графиков + .asm, кусок 3
- (249.3 KiB) Скачиваний: 219
-
- CDI_v2.0.part2.rar
- CDI версии 2.0, ПО графиков + .asm, кусок 2
- (1000 KiB) Скачиваний: 228
-
- CDI_v2.0.part1.rar
- CDI версии 2.0, ПО графиков + .asm, кусок 1
- (1000 KiB) Скачиваний: 233
Последний раз редактировалось
Flash.#13 Вс фев 04, 2018 20:52:19, всего редактировалось 1 раз.