Страница 102 из 119
Re: ФУОЗ на базе AC-CDI
Добавлено: Чт ноя 26, 2020 16:58:53
madi044
Господа, если у кого есть вопросы, пишите в личку, так как ветка померла.. Все проблемы с CDI я решил... Флешу и
fcftdbx - благодарности..
Конструктивная критика (типа., а вот тут косяк и т.д) и разъяснение определённых методов - приветствуется. Требования, типа, напиши новый мануал - нифига не понятно и просто - хреново (без объяснения причины) -ИДУТ ЛЕСОМ...
Просто поделился своими доработками... Схема на стр 101, там же плата и фотки готовых устройств- всего 4 архива.
По просьбе
fcftdbx добавил выбор порта для выдачи искры-перезалил архив (программа и ПО конфигурации). Теперь подходит любая схема. И всё... Удачи всем.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс ноя 29, 2020 08:55:43
madi044
Выявилась одна интересная особенность, при низких оборотах иногда (за 3 месяца я наблюдал 6-7 раз, половина -в движении, половина - при прогреве, на холостых) глохнет двигатель, светодиод после этого горит, как-будто мотор работает по ранней метке. При остановке он должен гаснуть. МК зависает и перезапуск возможен только после снятия питания. Об этом ещё год назад писал ats4. Особо не напрягало, но факт оставался фактом. Вспомнил, что такой сбой даёт подключение UART-кабеля. Даже если комп не подключать, просто кабель. В конфигурации прошивки отключил UART, т.е. убрал лишний активный вход. Помехи прекратились, смотрел стробоскопом.
Эта фича (UART) хороша, но только во время настройки. В финале отключайте её, уберёте возможный источник помех, да и скорострельность программы незначительно возрастёт..
====
Сейчас езжу на версии с вакуумом (последняя версия - 4.1), правда, из-за отсутствия ДАДа, в нагрузочных таблицах везде поставил 0. Багов не замечаю.. ДАД придёт в следующую субботу, там посмотрим...
Re: ФУОЗ на базе AC-CDI
Добавлено: Пн ноя 30, 2020 17:52:13
asel
Пытался стыковать программу Флэша "фуоз-уарт" по блютус. Стоимость копейки и никаких проводов.
Никак

Хелп
1. Почему то у блютус забивается порт на вход и порт на выход.

Не понимаю.
2. Затем включаю фуоз-уарт, ..предлагает только "com1"
3. Выключаю блютус, фуоз-уарт предлагает много портов...

Не понимаю.
Пока так ..

Re: ФУОЗ на базе AC-CDI
Добавлено: Вт дек 01, 2020 11:30:24
Flash.#13
asel тоже понравились дешевые блютуз модули ардуинок, но там нужно прединициализацию самого модуля делать до использования, они при включении не UART а именно универсальные что требуют конфига до передачи, чтобы комп видел как надо там нужно сперва обучить его, и делать это надо при каждом включении. Позднее подружим такой с ФУОЗ, получится дешево и доступно, а еще кажется они со смартфонами дружат.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вт дек 01, 2020 15:42:26
asel
Flash.#13
Итого. Провода - каменный век.
1. Подключаю к ФУОЗ blu h05 или h06. К буку usb-blu. Все конектится. И прямо или через программы (есть такие).
Но насколько я понял. У блю почему то два порта - на вход и на выход. И создаются какие то виртуальные под блю.
Твоя прога конектится напрямую к порту. И , наверно, поэтому не получается связи.
2. Пробовал со смартфона программой блютус терминал. (их много, но одна заработала хорошо).
Посылаю команду 212 или d4, и ФУОЗ отвечает. Если посылаю другую, Фуоз не отвечает.
Потом в программе ФУоз закоментировал
;sbrc R30, 3 ;if bitX,n='1' then do (ожидание команды с ПК)
и ФУоз начал выдавать ...............
ПС. Понял как это работает. Есть программки для смартфона - графики.. Можно потренироваться.
Есть программа AppInventor, с примерами..
3. Ну и напоследок сделал. Работает. (На стенеде

)
ldi R20,0b10000001 ;РОН статуса (0=1, при пуске МК свободен)
.................
sbrs R20, 0 ;if bitX,n='0' then do (занят?)
rjmp main4 ;если занят,вых.
ldi R27, 1 ;задаем "highX"таблица№1
sbis PinC,5 ;выполнить если бит порта "0"
ldi R27, 2 ;задаем "highX"таблица№2
sbis PinC,4 ;выполнить если бит порта "0"
ldi R27, 3 ;задаем "highX"таблица№3
sbi ADCSRA,6 ;старт замер АЦП
andi R20, 0b11111110; МК занят
sbrc R20, 6 ;if bitX,n='1' then do (пуск от ПК)
rcall usart_data_copy;по одному пакету uart
main4:
и т.д.
Освободил регистр 30 и поменял на 20. Выбор таблицы после искры. Замер АЦП после искры. И МК занят, чтобы "не лопатил" во время всего оборота.
4. И еще коечто доделываю... Хорошо, что есть стенд. Все изменения сразу на осциллографе.
Re: ФУОЗ на базе AC-CDI
Добавлено: Сб дек 05, 2020 16:41:04
asel
В предыдущем посту ошибка. Так не работает выбор таблиц. .. Вернул назад.
Чтобы ветка не усохла
1. Эксперимент №1
Вывод графика в прогу SFmonitor. Выводил R21 и R25.
Идея. Проверить SFmonitor и что покажет график при не необработанных R21 и R25.
Итого. Монитор фигня. Но график какой то показывает Фото1.
2. Эксперимент №2
Подключаем HC-06. Фото2
Вставляем фишку. Фото3.
Устанавливаем соединение по Bluetooth.
Вкл программу. И ...вуаля. График УОЗ от Флэша на ноуте ... без проводов!! Фото4
3. Эксперимент №3.
Готовой адекватной программы "График" под смартфон не нашел. Прога "блютус терминал" соединяется, видит передачу данных.
Итого. Нужно писать свою.
Re: ФУОЗ на базе AC-CDI
Добавлено: Пт дек 18, 2020 17:52:07
madi044
Привет всем! Что-то ветка стала усыхать.. Подкинем дров для огонька.. Потестил - потестил я прогу, да и исправил некоторые баги… Обо всём по порядку.
1. По Конфигуратору – перестроил таблицы в божеский вид, начиная с малых оборотов. Ввёл возможность отсечки (пропуска искры) – вставляем в поле угла звёздочку. Появилась возможность выбора характеристики кривой ДАД, так как мы пользуемся не 16 кривыми, а одной. Линейная характеристика лучше для маломощных двигателей, квадратичная – для кубатуры. Также можно выбрать диапазон оборотов для определения длины метки. Подробнее – в мануале Конфигуратора.
2. По самой программе – добавлен выбор характеристики ДАД и изменён принцип ослепления. В авторской проге ослепление работало по 3 событиям: сигнал с датчика 1, сигнал сравнения счётчиков и сигнал искры. За оборот таймер ослепления по датчику 1 запускался (от помехи датчика), потом – по искре ещё раз перезапускался (от помехи искры) и просто – сразу по датчику.
Это отнимало определённое время, когда нужна искра, и приводило к излишку кода. Время ослепления было фиксировано и не зависело от оборотов.
Я сделал ДИНАМИЧЕСКОЕ ослепление. Суть. Счётчик Т1 кружится с частотой 500 кГц. По старшему байту, соответственно, 500/256=около 2 кГц. За 1 оборот он выдаёт определённые данные в старший байт (R9). Если взять некий счётчик с частотой 4 кГц и передать ему эти данные, то он пройдёт за эти же данные пол-оборота, в 2 раза быстрее. Запуск всего один раз - по датчику 1, ослепление не по времени, а углу 180 град.
Для этого можно Т2 перешить на 4 кГц (было 16 кГц), там вшит делитель /1024. По приходу прерывания от датчика 1 текущие обороты записываются в этот таймер, и он запускается. Проверка ослепления – старая. Т.е. ослепление работает на пол-оборота. Вход простыми средствами закрывается на 180 градусов. Всё…
При этом часть кода выбрасывается за ненужностью и освобождается время от отлавливания событий. За один оборот мотора скорость измениться в 2 раза не может, поэтому пропуска датчика гарантированно не будет. В программе это уже сделано, на вид косяков не обнаружил, мопед бегает. Также выпрямил код в программе, убраны заплатки, оптимизированы код и области памяти и параметров, нашёл несколько ошибок в определении длины – программа переписана заново. UART перенесён за искру, в свободное время. Часть обработки прерывания датчика 2 вытащена в основную программу. Включение в работу UART и ДАД в инициализации - установкой режима работы оборудования и т.д. Алгоритм расчёта задержки остался авторский.
3. По ДАДу. Пришёл по почте, ребята выточили пиптик, прикрутил я его на место. Патрубок стальной, сварки там не надо. Пока прикрутил так, без нифига, резьбу немного не дорезАл. Даже не запиливал снутри. Диаметр отверстия в пиптике – 2 мм. Трубку ПХВ одел, ртом всосал воздух, на языке висело пол-минуты, ничего не пропускает. Трубку желательно толстостенную, так как на вакууме пульсирует, как гадюка, но не двигается. Подключил на проводах к осциллографу. Завёл мотор…. И немного охренел… Сигнал с него не плавный а квантованный с частотой 400 Гц. Всё на фото (в аттаче), осцилл-ещё тот динозавр, но что имеем…. Внутри квадратик 10х10 мм, залитый белым герметиком. Процессор туда чоли запихнули? Нигде в интернете подобного безобразия- квантования не видел. Верх сигнала – около 4В, а низ – по минимуму – спускается до 1В (от степени вакуума).
В общем - 2 варианта… 1- делать замер АЦП в НМТ, у нас тут получается как раз после окончания ослепления где-то... Но пускать импульсный сигнал через пол-мопеда – это не есть гуд. Тем паче, при 9000 об/мин = 6,7 мсек/об , датчик при квантовании 2,5 мсек выдаст неполные 3 шага. ..На низах – больше, но картины особо не меняет.
2 вариант – сглаживать сигнал, только не по среднему, а по минимуму. Усякими бензофильтрами и RC-цепями на входе успеха не будет. Посему надо собирать пиковый детектор (минимумов) на паре ОУ, типа как на картинке в аттаче. Заодно и чувствительность будет выше. Благо места в ДАД хоть отбавляй. Затем двигаться дальше..
Поменял, кстати, генератор с 2-х катушечного на 6-катушечный. На старом генераторе магниты расположены так (по свободе притянулись к полюсам), что пик напряжения с катушек приходится точно на ВМТ (риска посреди окна) и далее через 90 град.
Пишу сейчас это потому, что у нас в Крыму уже до-3 порой, и ездить достаточно холодно… Возможно до весны.. Архив прог в аттаче, схемы, фото – на стр 101 в моих постах… Пока так…
Re: ФУОЗ на базе AC-CDI
Добавлено: Сб дек 19, 2020 14:06:30
С.Н.
[uquote="madi044",url="/forum/viewtopic.php?p=3943494#p3943494"]Завёл мотор…. И немного охренел… Сигнал с него не плавный а квантованный с частотой 400 Гц. Всё на фото (в аттаче), осцилл-ещё тот динозавр, но что имеем…. Внутри квадратик 10х10 мм, залитый белым герметиком. Процессор туда чоли запихнули? Нигде в интернете подобного безобразия- квантования не видел. Верх сигнала – около 4В, а низ – по минимуму – спускается до 1В (от степени вакуума).[/uquote]
Мое мнение, как специалиста по ЦОС - выглядит как сигнал с ЦАП.
Скорее всего там не процессор, а некоторая схема из счетчика, ЦАП и компаратора. Второй вариант (более вероятный) - несколько датчиков типа вкл/выкл от разного уровня давления + приоритетный шифратор и простой ЦАП в виде набора резистов с сопротивлением по степеням двойки, не думаю, что ребята там ЦАП в интегральном исполнение установили.
А вот про 400 ГЦ не понял, что имеется в виду..Если ширина по времени ступеньки - то это характерное поведение выходного сигнала ЦАП при изменении входного кода на нем (давления). В теории RC ФНЧ сделает "красивым" сигнал.
Re: ФУОЗ на базе AC-CDI
Добавлено: Сб дек 19, 2020 14:42:45
madi044
400 Гц = 2,5 мсек. Ширина ступеньки не зависит от скорости нарастания сигнала - т.е. походу там всё-таки счётчик стоит. Сам склоняюсь к мысли, что там так и есть. Если бы компараторы стояли, менялась бы ширина ступеньки от скорости нарастания. ФНЧ думаю не пойдёт, причину указал выше постом. В Микрокапе пока моделирую детектор...

Re: ФУОЗ на базе AC-CDI
Добавлено: Сб дек 19, 2020 16:00:43
С.Н.
[uquote="madi044",url="/forum/viewtopic.php?p=3944079#p3944079"]...пока моделирую детектор...

[/uquote]
Главный вопрос - Зачем Вам показания ДАД на каждом акте измерения периода вращения?
Делюсь своими наработками:
Наверняка есть основной цикл программы - зацикленный кусок. Пусть измеряет его показания там и просто перемнную в памяти изменяет. Тут не нужна эквидистантность! А вот на акте измерения периода вращения учитывать значение именно этой переменной в своей математике. Именно так поступаю в своей системе с ДПЗД, только там таблицы активные переключаю в ОЗУ.
Кроме того, еще отсчеты АЦП в кольцевой буфер длинной 2^N "пихать" - а в алгоритме брать простое среднее значение этого кольцевого буфера - железная защита от наводок по линии этого датчика. 2^N чтобы не делить сумму, а просто сдвигать вправо среднее.
Будет инертность в 2-3 оборота двигателя или больше. Это не будет так важно.
Между прочим, если вообще всю систему разделить на независимые куски - исполнительную и измерительную, то получиться интегральный способ управления. Кто вообще сказал, что УОЗ надо изменять каждый оборот двигателя?
А вот это я не пробовал.
Re: ФУОЗ на базе AC-CDI
Добавлено: Сб дек 19, 2020 16:35:40
madi044
С.Н., Возможно, я неправильно выразился - мне нужен "запоминатель" минимума - как раз обратная задача. Кстати, препарировал ДАД - плата не сидела в посадочном гнезде, герметизацию переделаю. Алгоритм вакуума - строки 276, 319-324, 639-660, комментарии есть... 1 к 1 почти чистый Шкильменский в поздних вариантах... Там может ещё что-то корректироваться будет, в остальном, судя по всему, ничего уже меняться не будет (если не будут дописываться новые фичи). При таких уровнях защиты, считаю, теряем быстродействие, да и не та техника, чтобы высчитывать всё это... Овчинка - выделка.. Хотя каждый смотрит по своему... Частоту надо поднимать для этого, да и предпосылок у меня нет. Такое ослепление делал для страховки ..
====================
В Микрокапе посмотрел схемку детектора, вроде работает... Ну и схема ДАД - во вложении, а также плата в .lay на пиковый детектор.. Там выход с открытым коллектором (LM393), поэтому на выходах ОУ добавлены нагрузки 10к..
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 20, 2020 15:07:58
gordei
madi044 У меня вопрос по варианту вашей схемы. Как то напрягает глушилка. Получается, что высокое напряжение через диод поступает на ручку. Мне кажется коротить высоковольтную катушку через диод не очень хорошо. Но в тоже время управляющий вывод тиристора загосить через диод не получится, да и транзистор в оптопаре может сгореть. Может резистор что на 330 поменять на 10к и тогда транзистор не сгорит и глушилка сработает. Только возможно диод дбш применить придется.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 20, 2020 16:26:56
madi044
[uquote="gordei",url="/forum/viewtopic.php?p=3944644#p3944644"]madi044 ... Мне кажется коротить высоковольтную катушку через диод не очень хорошо..[/uquote] Диод, замыкая катушку на обратном напряжении, не даёт экстратоков катушки (у неё достаточное сопротивление и на постоянке, и тем более на переменке, но самое главное - магнитная связь катушки с генератором недостаточно сильна). Назначение диода - запасти магнитную энергию в катушке на обратной полуволне. На положительной полуволне эта энергия сложится с ЭДС катушки. Кроме того, на низких оборотах эта особенность является стабилизирующей. Подробно - где-то в моих постах месяц- два назад. Если у вас правильно сфазирована высоковольтная катушка (в момент открытия тиристора - отрицательная полуволна) - то ничего у вас гореть и перегреваться не будет. Об этом мало здесь говорят, но это так. Диод обычный.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 20, 2020 17:16:30
gordei
Понятно. Меня смутило, что высокое напряжение будет висеть на ручке. В плане чтобы его не поймать случайно. Хотя это мало вероятно, но все же.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 20, 2020 17:26:04
madi044
gordei, Тю, пардон, я чего-то машинально подумал про обратный диод. Прямой диод для глушения тоже экстратоков не даст по той же причине, тем более, что через пол-секунды мотор заглохнет. Ну а то, что висит высокое... Управление лучше не глушить, можете помехогенератор

получить- это не КУ202 - чувствительность. Тогда уж лучше глушить сам датчик, можно тоже через диод. Ток не размагнитит датчик, ездил года 3 - всё нормально...
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 20, 2020 17:37:01
gordei
Спасибо за разъяснения.
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 27, 2020 13:57:41
gordei
Re: ФУОЗ на базе AC-CDI
Добавлено: Вс дек 27, 2020 19:42:58
madi044
gordei, Там, в формировке сигнала ДАД надо заменить регистр R1 на R0, т.е. старший младшим байтом. Я как-то сделал сразу для настройки так, чтобы без ДАДа код 255 на входе по мл.байту не мешал. Да и забыл про него. По старшему байту там 00, поэтому в отсутствие ДАДа никто никому не мешает. Для справки - поменять R1на R0 в двух последних строках
Код: Выделить всё
mul R17,R16 ;R1=Абс*Диап/256(Отн.единицы,%)
lds R16,158 ;характеристика (лин-0,квадр-2) из [158]
cpse R16,R2 ;если =0?, то перемножение пропустить
mul R1,R1 ;R1=Отн.ед^2/256(квадр.хар-ка)
sts 159,R1 ;нормир сигнал ДАД в ОЗУ
И ешё в строке, где комментарий "+поправка..."
Если пока ездите без ДАДа, ничего менять не надо. В остальном - функциональных изменений нет. По свободе причёсываю программу, упорядочил регистры по парам и по старшинству байтов - это открыло путь к новым командам, работающими не с байтами , а словами. Функционально ничего не изменилось, алгоритм старый. Конец года, работы навалом, поэтому пока времени нет на ДАД. Скоро будет упорядоченная версия с улучшенной читабельностью...
Задумался о применении ADUM1201 для развязки зажигания от массы мопеда, так как часто при подключении к мопеду мышка живёт своей жизнью, окна меняют размер и т.д.
Да ещё, для подключения ДАД можно использовать свободный штырёк на разъёме программирования, там же и земля и +5. Только на программаторе отключить провод от шлейфа, если подключён.
Re: ФУОЗ на базе AC-CDI
Добавлено: Пн дек 28, 2020 07:16:42
gordei
Как я и писал выше пока без ДАДа да и холодно сейчас делать какие-то испытания. Насчет влияния помех на комп я использую самодельный адаптер на ft232rl вроде такого как у вас не наблюдал. Но и давно и комп подключал. До адаптера желательно использовать экранированный УСБ шнур, а на зажигание можно от адаптера коротким шнурком подать и тоже в экране.
Re: ФУОЗ на базе AC-CDI
Добавлено: Пн дек 28, 2020 18:19:13
madi044
Ни какие экраны не помогают в данном случае - идёт не ошибка, а зависание МК. Достаточно соединить массы. Так что в моём случае - только опторазвязка (лучше ещё ADUM 1201 - эл/магн развязка). Помеха по массе А по Rx, Tx обмен нормально, ну пару-тройку ошибок за минуту... При подключении через ноутбук, то что писал, не проявляется, но зависания остаются, особенно при заводке - поэтому коннектюсь уже при заведённом..
==
ДАД с детектором собрал, поставил на мопед, но провода пока ещё не подключал.. На столе работает..Программу причесал, в тестировании..