Контроллер зажигания для оппозита | OPPOZIT.RU | мотоциклы Урал, Днепр, BMW | оппозитный форум, ремонт и тюнинг мотоциклов
Home

Контроллер зажигания для оппозита

оппозитчик koren
чтоб поменять аватар - читай FAQ
нахождение: г. Жуковский

Народ! Сегодня добился корректной работы контроллере зажигания для "Урал" собственной разработки. Основной концепцией при разработке были: надёжность, ремонтопригодность, дешевизна. Контроллер предназначен для:
1) управления опережением зажигания.
2) формирования выходных импульсов для коммутатора
3) управления начальным углом опережения зажигания с помощью кнопки.
4) работы в качестве иммобилайзера + простейшей сигнализации.
5) имеется возможность сделать вакуумную регулировку опережения зажигания (не заморачивался пока)
Конструктивные особенности контроллера:
1) Для синхронизации используется сигнал от датчика положения коленвала от "Волги" 23.3847 (РФ). Датчик установлен в корпусе картера слева где кронштейн крепления троса сцепления. (все фотки если интересно будут потом)
2) На маховике просверлено отверстие (углубление на боковой поверхности маховика где-то на 4 мм сверлом 8) на 110 градусов раньше ВМТ (точность градусов особой роли не играет, т.к. потом можно точно настроить в программе по стробоскопу).
3) Вызодные импульсы поступают на обычный коммутатор от ВАЗ (Рекомендую "ВТН")
4) В качестве катушки зажигания применяется катушка от "Оки"
5) Во время завода мотоцикла с кикстартера используется сигнал с контакта штатного механического прерывателя
6) Штатное механическое зажигание (вместе с катушкой и штатными ВВ проводами) оставлено в качестве резервного (мало ли что бывает в пути :). Перекомутируется с электронным зажиганием простым перетыком разъёма питания и ВВ проводов.
7) контроллер выполне на базе микроконтроллера ATMega8-16PI
8) в качестве задающего генератора для микроконтроллера используется (для надёжности) внутренний RC-генератор самого микроконтроллера.
9) Схема собрана на относительно легкодоступных элементах
10) Диапазон рабочих оборотов коленвала - до 10000 об/минуту.
11) График зависимости угла опережения зажигания от оборотов можно заложить любой. У меня заложен как у AlexeyZ с точностью до 0,5 градуса.
12)Кнопкой начальный угол регулируется с точностью до 0,25 градуса.

Есть всё: схемы, перечень элементов, даже топология печатной платы имеется. Прошивка тоже есть. Так что если интересно могу всё выложить.
зы: на создание контроллера в своё время вдохновил AlexeyZ :) Только не хотелось как у него зубцы нарезать на маховике, поэтому разработал свой вариант с одной единственной "меткой" на маховике.
зыы: Вариант опробован в прошлом сезоне. Были недостатки (в определённых режимах неправильно работал). Сегодня исправил всё полностью.

Ну дык ты даже ОЧЕНЬ молодец, конешно выкладывай, в любом случае лучше чем контакты.

Dmitry's picture

толкай тему в массы,конечно интересно

Ждемссс.

koren's picture

Вот принципиальная схема контроллера:

Отладочный разъём для прошивки микроконтроллера - Х1 Это стандартный разъём для подключения прожигалок Аtmel типа STK-500. Внутренняя частота микроконтроллера - 8 МГц.

koren's picture

Это первый лист перечня элементов:

Вот второй лист перечня элементов:

koren's picture

anarhist, Не понял? Что громоздко? Если ты про конструктив, то платка контроллера размером чуть больше спичечного коробка.

А прошивка будет ???

ksvserega's picture

ИМХО, зажигалка Сарумана попроще будет в плане реализации, настройки и функционального наполнения.
А данную схемку,учитывая неслабый МК, более разумно завязывать с инжектором.
Эт чисто моё личное мнение.

Static's picture

ksvserega, поддерживаю. у меня лично Сарумановское.
но... как вариант интересно глянуть на это koren, давай инфы побольше. и фото платы :)

ksvserega's picture

koren, и чуток не понял, зачем тебе сигнал с контактов?

koren's picture

Сегодня выложу топологию платы и сборку, схему соединений с внешними устройствами.
ksvserega, У меня сигнал с контактов используется во время завода с кикстартера. Потому, что когда маховик только начинает раскручиваться контроллер выдавал неправильный момент искры и в результате кик "пинался". Поигравшись с программой, я понял, что устранить это программно не удастся, т.к. это связано с тем, что метка на маховике всего одна и при заводе происходит ошибка. Чтобы это исправить программно нужно минимум 2 метки на маховике. А это уже другая программа :) Поэтому я решил это элементарным считыванием логического состояния на контактах прерывателя и формированием выходной последовательности импульсов на коммутатор именно от синхроимпульсов прерывателя. После 30 оборотов колена схема автоматически переходит в режим работы от ДПКВ. Кстати в программе реализована динамическая поправка момента искры (это нужно при резком угловом ускорении коленвала).
зы: Я не в коей мере не навязываю никому мой контроллер :) Каждый решает сам. В качестве прошивки - отладки была следующая мысль: Один единственный раз подобрать начальный угол опережения, прошить его. А потом уже больше никогда не понадобиться что-то крутить механически. Но... если вдруг всё-таки приспичило поиграться начальным углом опережения зажигания, лёгким прикосновение одной единственной кнопки угол меняется в нужную сторону с любой (запрограммированной заранее) точностью. У Сарумана на PICе сделано вроде. Я с ними не работал. У меня для прошивки нужен программатор Atmel типа STK-500. В принципе AlexeyZ делал типа переходника на LPT. Но этой информацией я не владею. Микроконтроллер ATMega8 стоит порядка 60 рублей...

koren's picture

anarhist, Ебыисстественно :) Нахрен использовать старинную элементную базу если завались самой новейшей :) Ты бы ещё спросил: а у тебя микроконтроллер случайно не на лампах собран :))) Хой!!

koren's picture

VladCrimea, Конечно ;)

ksvserega's picture

koren, а не думал поставить еще один ДПКВ и разместить его скажем симметрично относительно основного? Я эт к тому, что если делать электронное зажигание, то от механики нужно избавляться по-максимуму. Из личного опыта - отъездил на зажигалке Сарумана 2 сезона, из поломок - 1 сгоревший через 100км коммутатор, который явно собирался дето в подвале. Первый сезон откатал с механикой в бардачке, во втором - положил её в гараж на полку, а потом вообще подарил знакомому, потому как о зажигании и не вспоминаю, да и после того, как по ездил на электронике, на механику ни в жизнь не пересяду.

koren's picture

ksvserega, Можно и так. Но программа уже отлажена, все дырки просверлены, все провода подпаяны... :) И работает как часы. А наличие прерывателя - это не только дополнение для запуска - это полноценное резервирование в пути на всякий случай. Я же писал: в основе концепции - надёжность и ремонтопригодность. Даже если прерыватель умрёт (что маловероятно, т.к. его контакты не обгорают), мот можно завести с толкача. В принципе, этот сезон начну, тогда поиграюсь с программой, чтобы заводить от штатного ДПКВ, а не прерывателя. Может быть те косяки программы, что я устранил сейчас, как раз влияли на процесс запуска (очень вероятно). По любому всё работает

Quote:

от механики нужно избавляться по-максимуму
именно в этом ключе. Из механики только маховик да датчик индуктивный :) А прерыватель - для резерва.

koren's picture

anarhist, Здесь не так всё просто. Дело в том, что для получении информации об точном моменте (не важно какое опережение, например без опережения) искры. Контроллеру необходимо, чтобы коленвал прокрутился минимум 2-3 раза. Потому что у меня датчик стоит по ходу движения коленвала, но опережая момент ВМТ на 110 градусов. Потом он начинает замедлять момент искры исходя из ТЕКУЩЕЙ скорости и соответствующему ей углу опережения зажигания. Я выделил слово ТЕКУЩЕЙ потому, что для её определения используется время, измеренное между 2-мя предыдущими моментами срабатывания датчика. А когда пинаешь кик, то наиболее благоприятный момент наоборот при первом же обороте (т.к. скорость максимальна). В моём случае получается, что колено к этим 2-мя 3-мя оборотам успевает замедлиться. Хорошо тем у кого стартер :) Там этой проблемы нет.

koren's picture

moto-roker, Нет сигнал от ДПКВ правильный. Просто для правильного расчёта момента искры нужна "предистория" скорости вращения колена. Вот если бы коленвал останавливался всегда в одной и той же точке или на маховике было бы много меток всё было бы пучком. А оптика - это ненадёжно.

koren's picture

Quote:

просто добавь функцию которая при первом обороте после простоя без сигнала на входе давала бы искру///
Вопрос КОГДА дать эту искру. Надо ведь ещё попасть в ВМТ например. У меня-то датчик стоит гораздо раньше ВМТ.
Quote:

ты вобщет на каком языке еод писал///
на С

koren Чт, 28/02/2008 - 22:42
koren's picture

anarhist, Штатный прерыватель не отключается, просто после завода (у меня сделано после 30 оборотов колена) контроллер начинает использовать синхроимпульсы от ДПКВ, а не от прерывателя.
В коммутатор можно и мою плату уместить :) А Мегу я выбрал, потому, что там классные таймеры и компараторы, к тому же flash больше. А так-как я писал всё на С это важно. У меня ведь помимо собственно самого контроллера зажигания на ней куча разных сервисных функций написана. Так что на С не уместилось бы. У меня С-код забил Мегу под 61%. Да и вообще, когда начинаешь что-то новое разрабатывать лучше заложиться на что-то с запасом. По поводу tiny: У меня есть неплохой опыт программирование мк-ра ATtiny26L на С. Могу с уверенностью сказать, что мой проект на нем я бы реализовать не смог.

koren Чт, 28/02/2008 - 22:49
koren's picture

Quote:

koren, на сколько грабусов раньше стоит датчик?

Quote:

у меня датчик стоит по ходу движения коленвала, но опережая момент ВМТ на 110 градусов.

Quote:

чет непойму у тя весь девайс не привязывается к ВМТ///

Не понял? У меня контроллер считывает импульс с ДПКВ и запоздняет его на определённое время, зависящее от угла опережения зажигания и скорости угловой вращения колена. В результате генерит момент искры.
Quote:

можно так же посчитать сколько градусов до ВМТ и сделать задержку ну типо после первого прерывания выждет до ВМТ и даст искру///

Для этого необходимо знать СКОРОСТЬ вращения колена, которая у меня высчитывается только после 1-2-х (2-х потому что сделана динамическая поправка колено-то вращается с ускорением/замедлением) оборотов колена.
Quote:

у тебя есть алгоритм работы///

UP

koren Чт, 28/02/2008 - 23:00
koren's picture

Вот схема соединений контроллера с внешними устройствами:

У меня всё электрооборудование сделано как у Мановара на полевиках мощных р-типа. На схеме сигнал, который идёт на затвор сигнала штатного мотоцикла, используется в качестве сирены тревожной. Но можете чего-нибудь другое приделать. Этот сигнал сделан по схеме открытый коллектор.

koren Чт, 28/02/2008 - 23:09
koren's picture

Вот верх печатной платы (есстественно в масштабе):

Вот низ:

Доработки на плате соответствуют доработкам на схеме.

how_eee Пт, 29/02/2008 - 09:17
how_eee's picture

А не проще было бы просверлить маховик в месте ВМТ и считать оттуда? Ну или за 20-25 градусов до ВМТ? А потом давая задержку получать более позднее зажигание. Что-то как-то изначально девайс не завязан на моменте ВМТ. Не правильно это. Точнее на ВМТ было бы правильней.

koren Пт, 29/02/2008 - 10:26
koren's picture

how_eee, Дело всё в том, что этот контроллер - real-time. Посему ему необходимо время на вычисления между событием прихода синхроимпульса с ДПКВ и событием выдачи импульса на коммутатор. В случае, как ты предлагаешь привязать датчик к ВМТ: получается время на вычисления = 0 (либо задержка на один оборот). В случае

Quote:

Ну или за 20-25 градусов до ВМТ

получается время на вычисление очень маленьким (не справится микроконтроллер по быстроте, надо будет ставить что-то с намного большей частотой тактовой). Кроме этого угол опережения зажигания в оппозите достигает 36 градусов, а "предугадывать" (опережать) контроллер не умеет (за исключением случая опять с задержкой на один оборот). Поэтому так нельзя. Так можно было бы делать если весь маховик в метках равномерных. Но мне изначально при разработке впадлу было снимать и протачивать маховик :) Я ограничился лишь сверловкой его сбоку через картер в одном единственном месте :))
Quote:

извини конечно но мне сей девайс кажется или сильно мудренным или просто не нужным потому как можно все сделать проще///

Да, ради бога :)

how_eee Пт, 29/02/2008 - 16:47
how_eee's picture

Я вообще удивляюсь как 8 мегагерц может не хватить???

koren Пт, 29/02/2008 - 20:53
koren's picture

Мне хватает :) Я вообще-то привык работать с сигнальными процессорами 32-хразрядными с частотой 600 МГц. Так что для меня, что 8, что 1 МГц пофиг. Также пофиг стоит микроконтроллер 30 рублей (tiny) или 60 (Меga8). Потребление тоже пофиг плюс-минус 100мВт. Но загоняя себя в узкие рамки tiny надо извращаться при написании программы, оптимизировать код, отсутствие аппаратных функций микроконтроллера компенсировать опять же программно. Мне своё время важней :) Поэтому я тупо не думаю пишу на С математику с ПЛАВАЮЩЕЙ точкой, с несколькими ДЕЛЕНИЯМИ с ПЛАВАЮЩЕЙ точкой, незадумываясь, что у меня код не влезет, не хватит быстродействия и тем более не задумываясь как там компилятор это всё реализует на ассемблере :)))) Я же делал контроллер для реальной работы, а не заморачивался как бы покрасивей и пооптимальней с точки зрения объёма кода написать программу. Чувствуете разницу? Это всё время :) А время, как известно, - деньги!

koren Сб, 01/03/2008 - 15:23
koren's picture

anarhist, Это понятно. Но, можно потратить больше времени на проработку всего проекта, программы, а потом уйдёт меньше времени на вылизывании ошибок :) Сама программа - это буквы. Важен конечный результат готового изделия.

how_eee Сб, 01/03/2008 - 16:29
how_eee's picture

koren, ты не прав. Какими средствами и способами достигнута цель тоже немаловажно. И неизвестно еще что важнее в программировании. Или по твоему все программисты для ПК просто от нефиг делать заморачиваются с оптимизацией? Хотя ресурсов на нем на порядки больше!
Для себя я увидел неверный подход к делу. Нет прямой привязки к ВМТ это раз. И Забивание ресурсов микры лишними тактами и неоптимизированность это два.
Но еще больше настораживает подход к делу типа "не заморачивался как бы покрасивей и пооптимальней".
Все ИМХО, без обид. Удачи на дорогах.

пешеход Сб, 01/03/2008 - 17:15

how_eee а зачем привязка к ВМТ ???? если ее можно задать программно !!! Согласись программно подстроить легче и на мой взгляд правильней .

how_eee Сб, 01/03/2008 - 17:50
how_eee's picture

VladCrimea, Затем чтобы хотябы заводить по-человечески, а не контактами. Чтобы выкинуть родное зажигание и поставить туда например шкив для гены. И какая разница делать задержку около 90 градусов или 340? Гораздо проще было бы выкрутить свечи, установить момент вмт, и просверлить метку через туже дырку в картере. Повторить ту же операцию через 180 градусов во второй вмт. Получили бы задержку на пол-оборота. но выиграли бы в точности (меток стало бы две), в запуске (выкинули бы лишнее зажигание, бобину и кучу проводов).
Зачем делать через ... не пойму.

how_eee Сб, 01/03/2008 - 17:53
how_eee's picture

anarhist, нужна для запуска очень даже.

пешеход Сб, 01/03/2008 - 18:29

how_eee, 90 градусов в погрешности это круто :) но 5 скажем 30 градусов логично (не там просверлил , не там поставил ДПКВ). А так поставил , процу объяснил на сколько ты неправ и забыл! а эту погрешность проц должен считать сам , иначе зачем он там нужен ?

пешеход Сб, 01/03/2008 - 18:34

Лично я с нетерпением жду когда будут все данные чтоб повторить ! По поводу печаток у меня не получается в естественном масштабе их распечатать но нече подберем :) (получаются гораздо больше )

how_eee Сб, 01/03/2008 - 18:39
how_eee's picture

думайте сами решайте сами.... я бы не стал... мучайтесь и геммортесь тогда

пешеход Сб, 01/03/2008 - 19:17

anarhist, ВОТ ТУТ Я С ТОБОЙ СОГЛАСЕН !!!!
Метка должна быть одна иначе вторую ну не просверлить под 180 градусов,разве ну очень надо поднатужится , а отсюда выплывает куча гадостей (под вторую точку нужно вносить свои коррективы что не есть гуд)!!! Все должно быть до беспредела простым!
Отступлюсь от темы . Сегодня пошел по магазинам (мото) посмотреть что по чем! так вот типа электронного зажигания (со шторками) которые ставятся в место штатного стоит чуть больше 100S и сравним сколько будет стоить такое!!! (если собирать самаму) да при том если автор захочет сделать его гибким (учтет все высказывания в теме :) )! То я буду всеми руками за такую конструкцию !

koren Сб, 01/03/2008 - 22:44
koren's picture

VladCrimea, Точный размер пп 65х40. Это чтоб масштаб точно соблюсти. Я плату разводил в PCAD2001 ,в принципе, кому надо могу скинуть pcb-файл. Ещё я на заводе заказал штук 7 плат. Так что пару штук готовых могу выслать :) Но сначала, вы по перечню все детали купите :) В Москве их купить без проблем. В других городах - незнаю. Есстественно такие детали как диодные сборки, транзисторы, компаратор и оптрон можно заменить на аналоги. Ещё я дополнительно на входе поставил фильтр по питанию состоящий из качественного проходного конденсатора и проходного трансформаторного фильтра. Это лучше сделать, так как по питанию мотика всегда лезет всякая бяка. А это помогает очень сильно от нежелательных пичков с которыми не справляется линейный стабилизатор (его кстати тоже можно заменить на аналог).
На счёт гибкости: У меня всё написано на С. Все основные параметры (такие например, как угол между датчиком и ВМТ) задаются константами. Так что адаптировать под конкретный мот не составит труда. Можно кстати было датчик поставить в дырку где метки на маховике смотрят обычно, но в таком случае мы лишаем себя возможности настройки зажигания по стробоскопу. Поэтому выбрал положение датчика с противоположной стороны. У меня получилось где-то 110 градусов до ВМТ.
Ещё: там на плате место разведено под датчик разряжения. Это единственная дорогая деталь. Меня в своё время жаба задушила его покупать :) Но может доберусь до него со временем. Тогда можно будет зажигание ещё раньше сделать на всех статических режимах, что увеличит КПД двигателя. Но и без него работает очень приятно.

koren Сб, 01/03/2008 - 22:53
koren's picture

Вот сборка платы верх:

Вот сборка платы низ:

пешеход Сб, 01/03/2008 - 23:11

koren, В Симферополе купить детали нет проблем (я уже смотрел :) ) с удовольствием купил бы плату заводского изготовления нежели утюгом делать самому !!! но жаль я не в Москве ! прийдется воять утюгом :( но меня интересует больше всего менюшка !!! количество блинков!!!, что за что отвечает , и само собой прошивка (как я спрашивал ранее )!!!

koren Сб, 01/03/2008 - 23:16
koren's picture

VladCrimea, Ты шестерёнку с адресом кинь, я тебе в конверте вышлю. Прошивку намылю. Я правда не понял про какую менюшку и блинки ты говоришь?

пешеход Сб, 01/03/2008 - 23:27

вывод 4-5 я по ,по блок схеме я понял что это индикатор менюшки или я неправ ???? иначе как все контролировать ???? я свой маил скинул тебе !!!

koren Сб, 01/03/2008 - 23:39
koren's picture

Вывод 4 и 5 испотлзуются для подключения светодиода, который индицирует:
1) Режим работы (охрана или снято с охраны)
2) Соответствующим образом моргает или горит когда набран неправильный или правильный код с кнопки при снятии с охраны.
3) по разному моргает когда кнопкой прибавляем начальный УОЗ или убавляем, а также когда доходим до границы допустимой регулировки начального УОЗ.

Другой светодиод "Контр." в схеме у меня вспомогательный. Сейчас я сделал так, что он просто загорается когда зажигание начинает работать от ДПКВ (после 30 оборотов коленвала).

how_eee Вс, 02/03/2008 - 11:28
how_eee's picture

VladCrimea,
1. Чем не нравится сарумановская конструкция?
2.Во время пуска, чтобы правильно дать искру надо пройти 2 оборота (на первом посчитать время между метками, на втором дать искру). А с 2-мя дырками достаточно одного оборота.
3. Просверлить можно очень точно Без всяких приспособ! И вообще как тогда ездят все японцы, где на колене, на гораздо меньшем диаметре находятся 4 и более шторок? А? Там точность значит не страдает.

how_eee Вс, 02/03/2008 - 11:33
how_eee's picture

Лана, делайте на здоровье! Только порадуюсь за вас!!! Каждому свое. Удачи!!!

koren Вс, 02/03/2008 - 20:01
koren's picture

how_eee, Уже сделал, спасибо! :))) Я же не навязываю никому свой вариант. Есть масса других решений... дерзайте. Просто год или 2 назад, когда я начинал это всё мутить были люди на конфе, заинтересованные этой идеей и просили меня выложить результаты. Добить до конца зажигание в силу определённых обстоятельств я смог только недавно. И, как просили, выложил результат.

how_eee Пн, 03/03/2008 - 11:53
how_eee's picture

koren, респект

Pr9nik Пт, 14/03/2008 - 03:06
Pr9nik's picture

извиняюсь,што немного не в касу,не стал создавать новую тему,наткнулся н=в нете на 1 интересную вещицу:http://www.et-k.ru/describe/027.php,кто что может сказать в ее адрес?

Vetal41rus Пт, 14/03/2008 - 10:44
Vetal41rus's picture

Pr9nik
обычное контактнотранзисторное зажигание.

Pr9nik Пт, 14/03/2008 - 13:18
Pr9nik's picture

аа пасиб.я с электрикой не дружу совсем.

koren Пт, 14/03/2008 - 23:45
koren's picture

Quote:

аа пасиб.я с электрикой не дружу совсем.

Это ты зря! :)

12след ›конец »

New forum topics

РАЗДЕЛЫ

Активные обсуждения форума

User login

Новые записи в блогах