Зажигание на ардуино для мотоцикла
А так как я электрик и вообще с детства любил ковыряться с низковольтным мусором. Притом отец занимался ремонтом мото ( да даже иномарки были!) двигатель, облик, покраска, вообщем капиталкой полной, а я помогал с проводкой (первый зароботок))) зато на скольких мотоциклах я покатался ребятааа!мм!)
Ну да ладно, ближе к телу.
Качаю прогу!! Прочёл описание всех блоков. Оказалось всё легко и просто. Ну и по автоматике когда учился у меня было всё хорошо.
Тестирую со светодиодом, кнопками и релюшками.
Даю себе успокоиться сутки, так как не веря во всё это, был поражён гениальностью проги.
На тот момент я был готов носить на руках автора программы. ))))
Переходим на другой уровень «программирование для не программистов».
Дальше без секретов никак,простите.
Один ДХ.
(стоящий очень рано до ВМТ на энное количество градусов.
Самое сложное это выставить вмт и получение лог 0/1 с ДХ, транспортир помог и приспособа для выставления зажигания которая закручивается вместо свечи.)
Этот ДХ можно назвать ДПКВ и ДФ одновременно.
1- Ну если с оборотами всё понятно!
2- То как быть с нагрузкой двигателя? Мутить на карбюратор различные датчики безполезно! Ставить ДАД без рессивера плохая затея. Так рождается новая система—->
Изготовлю впускной коллектор с рессивером, 2-мя форсунками(одна рабочая, другая для ХХ и она же как обогатитель-пускавая.), попробую ДМРВ и ДАД(если получится сгладить пульсации), ДЗ выпилю из какого нибудь подходящего авто карба конечно с приводом сервой и концевиками, короче полное подобие автомобильного дросселя.
И если для того что сейчас в более менее рабочем состоянии потребывалось 3 УНКИ. То для того чтобы реализовать задуманное потребуются МЕГИ и самодельные шилды. По хорошему конечно ДУИ!!
Ещё кстати есть проект(могу скинуть),полностью переделаной проводки касаемо осветительных приборов и т.п. на релюшках теперь всё.
В данный момент мотоцикл частично разобран, снята вся проводка, будут прокинуты новые провода в основном экранированые везде и всюду,, и переделывается выхлопная система!
Микропроцессорная система зажигания (МПСЗ) на Arduino: проект завершен
Решил для удобства собрать информацию со всех записей об этом проекте в одну общую.
На рынке существует множество как готовых, так и DIY микропроцессорных систем
зажигания, с красочными и удобными ПО для настройки — был бы доволен заполучить
подобную, но при уточнении ценового диапазона как-то начинает давить жаба.
Существуют также Hand made системы, которые используют микропроцессоры
типа PIC. Цена уже поменьше, но понадобится еще приобрести программатор
и учесть множество нюансов- вообщем такой вариант тоже не нравился.
Месяц назад познакомился с платформой Arduino- штука весьма занимательная,
позволяет воплотить в жизнь множество технических идей. Главными плюсами
этой платформы есть простота программирования, модульная конструкция ( все
продается отдельными модулями- достаточно соединить нужные модули кабелями),
ну и в случае с китайскими клонами (с которыми и имею дело) — смешная цена.
Вот так выглядит Arduino Nano — модуль, который включает микропроцессор ATmega328P
со всей необходимой обвязкой и микросхему Serial-USB, которая избавляет от
необходимости использования отдельных программаторов. Еще присутствует стабилизатор
питания. Цена- немногим менее 2$.
После баловства со светодиодами, сервоприводами и т.п. решил приступить к более
практичным решениям — МПСЗ и «мозгам» для бункерного дозатора зерна (но это уже
совсем другая история 🙂
МПСЗ получилась вполне работоспособной — на тестовой прошивке (зависимость УОЗ
от оборотов ) завелась без проблем и поехала. Стробоскоп адекватно показывает
движение метки при изменении оборотов (центробежный регулятор при этом заблокирован).
Осталось лишь все аккуратно оформить (для теста все висело на соплях), изготовить
датчик давления в коллекторе (покупать готовый ДАД все та же жаба), сделать
температурную коррекцию ну и откатать оптимальный график УОЗ для своего двигателя.
Для оперативной коррекции прошивки наличие ноута необязательно — это можно делать
даже при помощи телефона на Android.
Есть, конечно, и минусы — отсутствие привычной для онлайн-прошивки проги, где наглядно
видно карту УОЗ. Для любой коррекции необходимо вручную править код прошивки.
Здесь диапазон оборотов делится на нужное количество отрезков, с произвольным шагом-
хоть до 10 об/мин., и для каждого отрезка УОЗ задается формулой. При изменении формулы
для одного отрезка также необходимо корректировать формулы для соседних отрезков чтобы
не было разрывов графика.
График родного трамблера, к примеру, задается 4 отрезками — с 4 линейными функциями.
Можно тот же график задать 2 отрезками используя функцию параболы.
Вообщем простор для творчества есть.
Насчет надежности- пока не знаю, но делаю с учетом возможности быстро переключиться
на родные механизмы управления УОЗ.
Ну и на конец видео, где все это подключено к обычному кулеру для демонстрации изменения
УОЗ в зависимости от оборотов.
Итак, небольшое продолжение в истории моей затеи.
Оформил все это в более-менее нормальный вид- все компоненты зафиксированы,
сделал разъемы- теперь можно кататься не опасаясь что на яме отвалится какой-либо
проводок. Разве что корпуса нет, временная мера- пакет. От влаги не спасет, но на массу
точно не закоротит.
В общем, как и писал в комментариях, все работает как и запланировано- стрельбы в
карб/глушитель нет, перебоев нет- работает как и ранее, разве что слегка подтупливает-
но это уже дело настройки кривой УОЗ.
Пробовал заснять как происходит смена УОЗ в зависимости от оборотов, но, как и
предполагал, в свете стробоскопа едва ли что можно разглядеть. Тем не менее видео
предоставляю.
Смотреть нужно на расстояние от прорези до датчика- его изменение и демонстрирует
изменение УОЗ. Но т.к. разница между максимальным и минимальным углом составляет
всего 14 градусов, разглядеть это на видео сложно. Поэтому лучше все же смотреть видео
из предыдущей записи, где угол намерено увеличен до 56 градусов.
Сегодня покатался и откорректировал прошивку для имитации центробежного корректора.
До 3000 об/мин откатывалась по границе детонации, далее — исходя из литературных данных,
что максимальный суммарный УОЗ для камер сгорания подобных вазовской должен быть в
пределах 35 +/-2 градусов. Максимальный суммарный УОЗ в моем случае получился 36 градусов
(10 начальный + 13х2). Полностью рассказывать как определял угол не стану, ибо это весьма
запутанное дело. В результате получил по субъективных мерках как минимум былую резвость.
От 1500 до 3000 об/мин на 4 передаче при резком нажатии на газ присутствует пара-тройка
детонационных стуков, при дальнейшем разгоне в данном диапазоне и выше
детонация отсутствует.
Визуально график выглядит вот так:
В прошивке- вот так:
Вряд ли здесь что-то можно разобрать, поэтому в графическом редакторе немного позатирал
лишние линии, перевернул картинку, переделал оси- чтобы увидеть его в привычном виде.
Также для сравнения присутствуют графики трамблеров ваз 2103 и 21083 (красные).
Хоть настройка производилась на 95 бензине, все же удивлен насколько близко получился мой
график к родному (с учетом степени сжатия 1:9,8).
(удивительного, как оказалось, здесь ничего нет, т.к. настройка производилась при подаче
воды в двигатель. Без воды пришлось настраивать по детонации во всем диапазоне, а график получается более близким к таковому для 21083)
Стоит отметить что данный график имитирует работу центробежного регулятора, т.е. показывает
УОЗ при нагрузке на двигатель близкой к максимальной (педаль в пол)- в этом режиме и
тестировался. Для повседневной езды общий график будет уже другой с учетом нагрузки на
двигатель, Но все это будет позже, когда изготовлю датчик давления в коллекторе.
Итак, сделал некоторую альтернативу ДАД.
В качестве роли датчика были рассмотрены следующие варианты:
1. Готовый промышленный ДАД — быстро, удобно, но стоит денег.
А) на базе вакуумника траблера- просто переделать, но он работает у весьма узком диапазоне
давлений- грубо говоря он покрывает лишь 40% рабочего диапазона давления в коллекторе.
Б) газовый редуктор— неплохой вариант, но была нужна довольно жесткая пружина, которой
не нашел.
В) стрелочный вакуумметр, на котором все и реализовал.
Вариантов реализации было 2:
1) индуктивно — резонансный — включает намотку катушки индуктивности, изготовление
источника импульсов высокой частоты. Честно говоря было лень всем этим заниматься.
2) на базе датчика Холла. Вариант для ленивых: нужен лишь аналоговый датчик Холла и магнит.
Оба элемента закреплены на вакуумметре (в прошлом это был манометр).
Слегка проблемным был поиск оптимального положения элементов, чтобы движение механизма
в рабочем диапазоне давления двигателя полностью попадали в рабочий диапазон датчика.
Другой трудностью были сами показания: датчик-то линейный, но вот магнит двигается
нелинейно, следственно и характеристика нелинейная- на первые 20% диапазона попадает
38 условных единиц выходящего сигнала, на последние 20% — лишь 10. Поэтому весь диапазон
был разбит на 7 отрезков, для равномерной конвертации в градусы опережения.
Также сам микроконтроллер был упакован в корпус октан-корректора, с которого также были
позаимствованы органы управления (тумблер и потенциометр)
Все это успешно было протестировано на ходу, для 6-ти опорных точек давления были заданы
градусы опережения, которые были определены в ходе испытаний.
Основным преимуществом подобного датчика перед обычным вакуумником считаю более
широкий диапазон работы. Например, для первых 40% диапазона мои значения почти
повторяют таковы для стандартного классического вакуумника. На этих же 40% опережение
почти равно тем самым 7 градусам вакуумника. Но вот при увеличении разряжения (уменьшении
нагрузки на двигатель) вакуумник упирается в ограничитель и УОЗ в дальнейших 60% диапазона
все так же равен 7 градусов. С датчиком диапазон заканчивается на отметке 15(!) градусов.
Это предположительно даст некоторую прибавку в динамике/экономичности при движении на
малых дросселях (например при скорости до 100км/ч по трассе).
А вот картинка с тем, о чем я говорю. Внимание к графику справа.
Осталось добавить зависимость градусов опережения датчика давления в зависимости от
оборотов, подключить датчик температуры двигателя и все задуманное будет практически готово.
Был вопрос по поводу штатных центробежника и вакуумника:
Они не демонтируются — чтобы обеспечить в случае необходимости быстрый переход от
электроники до родной механики/вакуумника.
Центробежник блокируется стальной пластиной, которая упирается в ограничитель на валу трамблера.
Вакуумник просто отключается от подачи вакуума.
Единственная проблема моей системы- периодически жесткий запуск двигателя- когда запускается, все работает отлично — со временем как-то решу и эту проблему.
Стоимость аналогового датчика Холла 15 грн. Заказать с Китая- еще дешевле.
Сегодня наконец-то завершил все свои задумки по теме зажигания.
— коррекция УОЗ по оборотам;
— коррекция УОЗ по нагрузке на двигатель;
— коррекция УОЗ по температуре двигателя;
— ручная коррекция УОЗ (октан-корректор);
Начальный УОЗ 5 градусов по коленвалу. График УОЗ по оборотам коленвала выглядит так:
График УОЗ по разряжению выглядит вот так:
Также очень целесообразным было введение зависимости УОЗ по разряжению от
оборотов двигателя. Введена переменная множителя, график которой выглядит
следующим образом.
т.е. система вычисляет угол по разряжению и умножает его на множитель для
текущих оборотов двигателя, выдавая конечный угол по нагрузке.
С подобным ухищрением получил лучшую динамику при частичных открытиях
дросселя.(Впоследствии выяснилось что с этим коэффициентом я интуитивно
создал свое подобие типичной трехмерной инжекторной карты УОЗ)
Однако, появился и косяк: дело в том, что суммарный УОЗ в некоторых режимах
( например 80 км/ч на 4 передаче) начал зашкаливать за 40 градусов, а это вылилось
в странные звуки с двигателя — определенно не детонация — скорее похожее на грохот
ненатянутой цепи. Проблема решена введением ограничения на максимальный УОЗ
в 34 градуса.
В общем системой доволен, работает как и планировалось.
В денежном эквиваленте все это обошлось в менее чем 3$. Из приобретений
могу назвать сам микроконтроллер и датчик холла для изготовления датчика
давления. Все остальное в том или ином виде у меня уже было.
Полная стоимость системы, конечно, еще будет включать стоимость проводков, припоя,
макетной платы, панельки под микроконтроллер, амортизацию паяльника, стоимость
электричества потребленного паяльником и компьютером за время написания программы,
стоимость манометра, с которого был изготовлен вакуумметр/датчик, стоимость выпитого
кофе за время написания программы… Но я, пожалуй, остановлюсь на 3$ 🙂
Возможности микроконтроллера далеко не исчерпаны- при желании можно повесить
на него автоуправление подсосом, ЭПХХ, актуатор ЭМР, заменить коммутаторы на
обычные полевые транзисторы (микроконтроллер вполне успешно может задавать
время накопления для катушек), различные задержки для подсветок и много чего другого.
В интернете есть даже открытый проект ЭСУД на Arduino. Только там используется
более продвинутый модуль Arduino Mega.
Прилагаю демо-версию Фактически тот, на котором впервые откатывал УОЗ
под максимальной нагрузкой. Присутствует регулировка УОЗ в зависимости от
оборотов. Зависимость от температуры, давления в коллекторе а также ручная
регулировка начального УОЗ заложена, но здесь еще не реализована.
Т.к. это промежуточный вариант здесь могут быть косяки и «лишние» переменные.
Применять непосредственно в таком виде на обычной бсз нельзя- будет неправильная
скважность управляющего сигнала. Необходимо увеличивать время логического 0 до
30 градусов.
По вопросам полной версии скетча с полным функционалом и возможностью
легко задавать графики в виде таблицы (а не функций, как здесь) по точкам оборотов
коленвала с шагом 500 об/мин и разряжения с шагом 10 КПа а также температурной
и ручной коррекцией, обращаться в л.с.
byte sensorstate;
byte lastsensorstate;
float vac = 0;
word cor = 0;
float temp= 0;
float C = 0;
float D = 0;
float E = 0;
float F = 0;
bool S = false;
long count = 0;
long counthigh;
long countlow;
float count1rev;
float count1deg;
float ignitiondeg;
float rpm;
float z;
word counton;
word countoff;
unsigned long time;
unsigned long oldtime;
D12_Out;
D13_Out;
D5_In;
D5_High;
pinMode(A0, INPUT_PULLUP);//Corrector Switch off before use!
pinMode(A1, INPUT_PULLUP);//vacuum Switch off before use!
pinMode(A2, INPUT_PULLUP);//temperature Switch off before use!
>
if ((rpm =1000) && (rpm =2351) && (rpm =5000)
counton = count1deg * (ignitiondeg+10);//10
countoff = counton+(count1deg * 7);//7
ФУОЗ по дешману
Ребята на базе ардуино запилили фуоз, дешево и просто
https://www.youtube.com/watch?v=XP1SUmiTKZY
Каково мнение общественности?
Думаю надо попробовать, ради эксперимента.
Ссылки на инструкцию
https://customcult.netlify.app/
Прикольная тема. Пойду закажу себе парочку платок у китайцев на эксперименты..
Уже заказал 🙂 попробуем
Интересная тема, послежу. Давно подумывал про ФУОЗ на ардуинке, но пока знаний по написанию кода не хватает.
___________________________________________________________________
«Человека можно уничтожить, но его нельзя победить» (Э. Хемингуэй)
Интересная тема.
Удалось пока вроде разобраться с углами опережения, можно в самом скетче прописать более детальный диапазон, например с шагом в 500об/мин
Пока не понял, можно ли сделать второй сигнал через нужное время. Вроде выход Р4 можно использовать, но до конца не разобрался.
Второй сигнал зачем? На 4 горшка?
Кстати вопросик, в этом зажигании имеет значение разница в пропорциях шторка-окно, как оно обороты считает? На ютубе задал вопрос создателям сего, но они чего-то игнорируют.
Ниже задаётся для каких оборотов как угол использовать (но через формулу, в экселе подобрать удалось обратным методом)
Второй сигнал в целом можно использовать и для двух свечей в один цилиндр, и для v-моторов, и пр.
проще наверно вторую такую платку подвесить, со своим отдельным датчиком.
А вот сделать как в сарумановском несколько графиков, хотя-бы два, уже интереснее.
(Скетч использует 2970 байт (49%) памяти устройства. Всего доступно 6012 байт.
Глобальные переменные используют 41 байт динамической памяти.)
Именно эту часть поправил, чтобы без разрывлв было, пример куска ниже., с чем удалось поиграться. Как прописать сдвиг например в формате + n градусов или + %
И свыше каких-то оборотов можно вывести на нужную полку как сделано у ребят. У меня скетч получился с учетом детализации на 60%, и пришлось коэффициент до 4го знака прописывать
За знак спасибо, упустил при копипасте.
Я с программированием не очень знаком, если по переводу uint16 и uint8, а также IF ELSE в SWITCH CASE подскажешь, это очень поможет 🙂
Если дальше отодвинуть от системы зажигания?
Ага. Только комменты всё равно сильно отличаются от истинных расчётных значений. Да и расчёт совсем не гибкий.
Я бы переписал чуть иначе.
Сначала надо придумать график и объявить его в самом начале кода в виде констант:
#define RPM_700 700 // Первая точка у нас на 700 об/мин
#define ANGLE_700 0
#define RPM_1000 1000
#define ANGLE_1000 22 // богомерзкий float умножаем на 10, пусть пока побудет целочисленным, а так это 2,2 градуса
#define RPM_2000 2000
#define ANGLE_2000 150
#define RPM_3000 3000
#define ANGLE_3000 251
#define RPM_4000 4000
#define ANGLE_4000 337
Вот мы получили график из 5 точек, соответствующий комментариям (не фактическим формулам!)
Так как графики между точками линейные, то вместо диких вычислений с плавающей точкой, волшебными коэффициентами и магическими слагаемыми можно взять более красивую функцию экстраполяции (map), а для наглядности и простоты добавления точек использовать switch case:
// расчёт угла по таблице из 5 точек с возможностью расширения до 60
float get_angle (unsigned int rpms) < // функция расчёта угла. Возвращает число с плавающей точкой, в качестве входного параметра принимает целочисленное значение оборотов в минуту
byte tempRPM = rpms / 100; // Делим обороты на 100, чтобы не расписывать варианты для каждого значения
switch (tempRPM) <
int tempDEG; // временная переменная, чтобы не трогать float
CASE 1:
CASE 2:
CASE 3:
CASE 4:
CASE 5:
CASE 6:
tempDEG = ANGLE_700; // вот мы поставили для первых 699 об/мин нулевой угол
break; // Не забываем ставить break там, где нужно прекратить проверку, если найдено сов падение
CASE 7:
CASE 8:
CASE 9:
tempDEG = map(rpm, RPM_700, RPM_1000, ANGLE_700, ANGLE_1000); // Вот пример использования функции. Приводим положение текущего значения оборотов в минуту в заданном диапазоне 700. 1000 к соответствующей точке графика в диапазоне 0. 22
break; // Не забываем ставить break!
CASE 10:
// мне лень выписывать все строки от 10 до 19, да и пост слишком уж длинным получается, но они должны быть!
CASE 19:
tempDEG = map(rpm, RPM_1000, RPM_2000, ANGLE_1000, ANGLE_2000);
break;
CASE 20:
CASE 29:
tempDEG = map(rpm, RPM_2000, RPM_3000, ANGLE_2000, ANGLE_3000);
break;
CASE 30:
CASE 39:
tempDEG = map(rpm, RPM_3000, RPM_4000, ANGLE_3000, ANGLE_4000);
break;
CASE 40:
CASE 59:
tempDEG = ANGLE_4000; // А тут усреднение уже не нужно, тут полка угла.
break;
default:
tempDEG = 0; // По дефолту угол 0, если будет какое-то непредвиденное значение (например, 7000 RPM, или кто-то тоже поленится и не напишет CASE 25:, то при 2500 RPM тоже :-))
break;
>
return float(tempDEG) / 10; // и только сейчас переводим результат в число с плавающей точкой, делим на 10 и возвращаем в место вызова функции, хотя подозреваю, что оно нафиг не надо, т.к. в других местах тоже можно переписать под целые числа.
>
Этот кусок можешь вставить в конец кода.
А всю магию можно заменить на одну строчку:
ignitionDegree = get_angle(rpm);
Это можно написать ещё красивее, но мне лень. 🙂
Peacedeath подкрался незаметно, но слышен был издалека
Подправил шрифт в комментариях к коду, для лучшей читабельности. BuffoG
В общем, если ты решил всерьёз заняться этим вопросом, то:
— Создай отдельную тему.
— Вынеси в её шапку ВЕСЬ код, а не отдельные куски.
— Обсудим в комментах к теме реализацию с участием других коллег-оппозитчиков
— Потом поправишь код в шапке исходя из того, что у нас наваяется.
Но вообще для совместной разработки принято использовать gitHub 🙂
Peacedeath подкрался незаметно, но слышен был издалека
Скинь текст шестерёнкой, погляжу и покажу.
Увы, у меня несколько иная цель. Мне нужен в электронный тахометр сигнал системы зажигания, но гальванически развязанный от катушки, чтобы не спалить МК, и имеющий чёткие фронты без дребезга. Пока экспериментирую с оптопарой.
Peacedeath подкрался незаметно, но слышен был издалека
Отправил шестерней, потом можно сюда запостить итоговый вариант, чтобы при необходимости каждый сам мог просто углы свои проставить
Arduino.ru
ФУОЗ на ардуино НАНО с 328 чипом
Итак версия 2 ФУОЗа готова.
Искру нужно установить четко в ВМТ. Тут как кто умеет.
Непосредственно скетч (огромное спасибо dimax и SU-27-16)
Так же усилитель (на фотке под чипом) на n-p-n (STBV42) и p-n-p (2N2907A) транзисторах
Упаковываем.
и проверяем работу.
. обороты двигателя от 600 до 5500 с интерватол 1 Гц.
Как я могу получить Zaderg [], чтобы преуспеть?
Как я могу получить Zaderg [], чтобы преуспеть?
сорри, что так долго не отвечал((
данные для массива
по количеству тиков определяется индекс элемента массива
Попробуйте лак plastik 71.
Залить всю Ардуинку.
Да, погуглите про этот лак, он неплохо работает.
Привет, спасибо за файл. Я прочитал и попытался узнать, но есть трудности. Там нет подробное описание в файле, как вы можете получить результаты расчетов и формул, из которых они были получены.
Привет, спасибо за файл. Я прочитал и попытался узнать, но есть трудности. Там нет подробное описание в файле, как вы можете получить результаты расчетов и формул, из которых они были получены.
В файле Excel есть графический рисунок, от него ноги и растут,
Это как. На 5м питание коммутатора, а на 4м питание ДХ. Как их можно менять? И можно подробную схему подключения?
Подскажите пожалуйста, можно ли эту программу адаптировать под один цилиндр и шторку датчика с двумя лепестками по 120 градусов, и обороты 500-5500, очень нужно.
Автору респект и уважуха.
Выложил все как есть в отличии от барыжных фирм, предлагающих подобные устройства за охренение деньги.
Програмное исполнение, на мой взгляд, простое, доступное и оригинальное.
Мной был переделан код под индуктивный датчик установленый на коробке, импульс формировался штифтом на маховике (ВАЗ-2109).
Один импульс на оборот коленвала, искра два раза за оборот.
Для отладки сделал стенд, моторчик, диск, тахометр, стробоскоп, индуктивный датчик на стяжке, на диске болтик, потом
преобразователь уровня на компараторе, и вход на ардуинку, выход на стробоскоп. Сробоскоп работает по снятию импульса с катушки, тоесть повторяет искру.
На стенде все великолепно, метка на диске и бумажечка с углами показывают всю зависимость.
Перемеником регулирую обороты движка, другая ардуинка их показывает, по метке видно угол, можно прям на ходу менять табличку.
На авто пока не ставил (тайм и лень).
Датчик давления купил в радиомагазине, соответственно в програме изменения на даный датчик.
Планирую поставить еше переменик типа октан-коректора.
Для amator, думаю, можна переделать судя из алгоритма.
По поводу точности регулировки, не проверял, но думаю достаточная если стравнивать с механикой (5-7 градусов), 0,5 градуса на скорость не влияют.
Доброго времени суток. Собираю зажигание на ардуинке (очень нужно сделать опережение/опаздание) зажигания. Выложите или скиньте пожалуйста скетч на электронку puschistic@list.ru
Ссылки к сожалению не работают по которым как я понял был выложен скетч.
Ссылки к сожалению не работают по которым как я понял был выложен скетч.
скетч в первом сообщении ветки без всяких ссылок
Нумерация впереди скетча не нужна? При ее удалении скетч прогружается.
Уже «вдоль и поперек» изучил данную схему. Как я понял данная схема работает на 2108. Но я не могу понять как происходит распределение зажигания между цилиндрами (бегунком или катушками на каждую пару цилиндров) Судя по выходам, он один похоже по бегунку.
Суть моей проблемы, мне нужно собрать полностью зажигание на 4 цилиндровый двигатель (установлен на багги). Схема подключения цилиндров 14 и 23. Установлено 2 датчика холла на коленвале, 2 коммутатора ваз и 2 катушки с парным выводом проводов. При такой схеме двигатель работает, но не развивает оборотов выше 5-6 тысяч.
Прошу помощи с освоением этого девайса.
Установлено 2 датчика холла на коленвале, 2 коммутатора ваз и 2 катушки с парным выводом проводов.
Каков алгоритм работы двух датчиков на коленвале, если учитывать то, что за полный цикл работы двигателя коленвал совершает два оборота?
Как поменять направление движения метки? Чем больше обороты тем раньше поджигаем!
Таблицу с переменными значениями так и не получилось запустить, подключил второй датчик хола приблизил магнит снял с него значения вписал в эту строку
Из всего текста программы не смог понять причем здесь чтение аналогово входа, который никуда не подключен, ну если смотреть на схему.
Ни у кого не возникло сомнений для чего это сделано?
Исходя из названия переменной Vak, я так понял, что аналоговый вход подключен к датчику вакуума, чтобы мерять разряжение во всасывающем коллекторе на автомобиле.
В данном случае будет вносить только помеху, если ножка аналогового входа просто будет висеть в воздухе.
Всем доброго дня. Воспроизвожу скетч топикстартера для мотоциклетного двигателя.
Двигатель двухтактный, двухцилиндровый, поршни в противофазе, установлен вот такой оптодатчик https://www.compel.ru/item-pdf/f9aa89e4955802089b277aeaac567a6d/pf/autonics
bs5.pdf, шторка с вырезом 180 градусов. В настоящее время оптодатчик напрямую подключен к двум вазовским коммутаторам https://tov54.ru/components/com_virtuemart/shop_image/product/full/hm/vaz/b01485.jpg и все работает с холостой искрой в нижней мертвой точке.
Есть давнее желание избавиться от холостой искры и изменять УОЗ в зависимости от оборотов. Скетч автора темы был изменен, вот, что получилось
В схемотехнике у меня опыта нет. На основе букваря по подключениям https://www.drive2.ru/c/1735998/сделал вот такую схему. Вход на оптопаре, а выход на транзисторе Дарлингтона.
Пожалуйста, помогите сделать вход и выход для ардуины.
На схеме у 7805 попутаны вход и выход местами и в цепи +5 в нет напряжения.
Верно. А я и не заметил. Этот 7805 на реальной схеме отсутствует, 3 нога подтянута через 10 кОм к 5 В от стабилизатора ардуины.
Симуляция по прежнему работает, а реальная схема нет.
Классный букварь подключений. Очень понравилось. Особенно череп с костями.
Классный букварь подключений. Очень понравилось. Особенно череп с костями.
Всем доброго дня. Воспроизвожу скетч топикстартера для мотоциклетного двигателя.
А мне кажется, что функция digitalWrite будет медленней работать по сравнению с битовой операцией «PORTB &=
(1 Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии
Если бы было больше места, то поставили катушки от ВАЗ 2110 инжектор, они дешевле стоят, но длиннее, ну и конечно качество у них по хуже и исполнение тоже хуже, но тоже работают по такому принципу.
ULN2003 как раз в помощь.
Я просто не помню точно, но какие-то совдеповского автопрома вроде нашли типа аналог советский какого-то нового ваза, а может продавец просто не знал, мы ему объясняли объясняли какую нам катушку нужно, что именно со встроенным коммутатором, он нам пытался впарить какую-то супер новую))) Хорошо, что не влезла под бак))) Потом нашли от мазды катушку, они короткие, но блин провода втыкаются в верху, и как раз из-за этого тоже не влезла, разъем начал упираться в бак. А вообще на разборке иномарок можно найти много чего интересного, ну и в общем то и нашли, что нужно!))
Вот еще, может кому интересная информация по разным катушками и их подключению:
http://www.vems.hu/wiki/index.php?page=IgnitionPage%2FCOP
Датчик оптический BS5-T2M. Спасибо, попробую со встроенным диодом.
У меня и так выход на двух транзисторах Дарлингтона КТ972А (их просто в протеусе нет). И это не работает.
Датчик оптический BS5-T2M. Спасибо, попробую со встроенным диодом.
У меня и так выход на двух транзисторах Дарлингтона КТ972А (их просто в протеусе нет). И это не работает.
Ребят у меня машина ваз-21013 Любимая. У неё трамблёр без вакумника. заводится просто огонь. Но бензин кушает. Когда была 4х ступка кушала 10литров на 110 км. Сейчас решил поизмуватся над ней. Вообщем есть Ардуино нано, есть контактный трамблёр и есть контактная бабина. Задумка такова сделать обратную связь по резистору, который чем больше делаешь газ тем больше сопротивление это вход в ардуино. Второй вход это контакт трамблёра подпитанный резистором. Третий вход со спидометра тахометра чтобы ардуино видела с какой скоростью едим (это для цифрового спидометра тахометра и счётчика моточасов). Теперь выхода: на оптронный модуль 80А( с запасом) для управления бабиной. Ещё выход для управления приборной панелью на светодиодах ws2812. Алгоритм сдвига УОЗ таков: при нажатии на педаль газа изменяется сопротивление соответственно изменяется рассогласование между резистором и оборотами двигателя, соответственно на этот угол должен сдвигается УОЗ. И кроме того вы замечали когда на холостом ходу поворачиваешь трамблёр изменяются обороты двигателя вот и скетч надо сделать так, чтобы он следил за оборотами двигателя и поддерживал их на максимуме возможного изменяя УОЗ т.е. была следящая система. Если вам попадалось что то такое дайте ссылочку или подскажите на какой библиотеке лучше написать такой скеч. Вообщем скетч должен эмитировать операционный усилитель. (сразу скажу датчик холла не хочу, коммутатор не хочу, бабину без контактную покупать не хочу, трамблёр без контактный не хочу. делать обратную связь по вакуму не хочу.)