donec

Инструменты Для Разработки И Испытания Систем Зажигания

117 сообщений в этой теме

IGO61    170

Всем привет!

Пока не спеши обновлять прошивки. Есть вопрос, "дребезг" УОЗ, и "дребезг" оборотов при постоянстве входной частоты. Входной сигнал симметричен из полуоборота в полуоборот, а на график выводится "гребёнка" из красных и синих линий. Я пока не готов доходчиво пояснить, раскидаюсь с делами (дня 3...4) и поснимаю данные с макета. Теоретически, УОЗ может "дребезжать", а "дребезг" оборотов в почти 50об/мин в обе стороны - как бы много при постоянной частоте и симметрии.

Это не предъява, просто хочу разобраться в происходящем.

Изменено пользователем IGO61

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    133

Точно, есть там такое, в районе +-34 на 1600, это устранимо до точности +-1 на оборотах 6000, сегодня попробую алгоритм придумать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170

Всем привет!

Попробовал обновление.

Вот заархивированный лог записи:T-0.zip.

А это скрин:

post-71758-0-27657300-1471075527_thumb.png

Прошивка ФУОЗ от 18.07.2016 из темы "ФУОЗ-676(продолжение)".

Покрутил сначала ДАД, потом термокоррекцию, потом ручную октанкоррекцию. На закусь - изменение оборотов.

К работе "измерителя" вопросов не имею.

Работа собственно ФУОЗа тоже согласно заложенному алгоритму. "Всплески" УОЗ в местах "перегибов" графиков оборотов - предсказуемое явление, не раз оговоренное в вышеуказанной теме (последний раз 01.08.2016).

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UTSource

Найдите миллионы труднодоступных

электронных компонентов

Pilulkin    161

Доброго дня всем!

Если позволите, несколько замечаний по поводу лога из поста №79:

1. Нет самой первой синхры (вместо двух байтов FF всего один), ну это можно списать на переходные процессы при включении, да и конечному пользователю оно до лампады;

2. Есть 2 неполных пакета (всего по 3 байта данных из 7ми) - смещение 9A31 и A0AE в исходном файле .dcc В измерителе они выглядят, как 2 иголки вниз в районе 4500 отсчета - нефеншуй, который сбивает с толку;

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170

Всем привет!

Перед записью лога я сначала подал питание на макет, сразу же "заработал двигатель". И только потом открыл порт и начал запись. Вполне могла пройти неполная синхронизация, хотя данные об оборотах и ДАД в первой посылке проскочили неповреждённые. Наверное, так устроен алгоритм логера. Две "иголки", с моей стороны, тоже объяснимы. Макет ФУОЗ, генератор оборотов и измеритель подключены к блоку питания были на "лёгеньких" скрутках - мог нарушиться контакт питания. Вот если бы кто испытал измеритель в походных условиях. Как он будет помехоустойчив в реальном подкапоте?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Pilulkin    161

Игорь, я немного не то имел в виду. Сбойные пакеты могут (и будут) возникать - спрогнозировать это невозможно и причин сбойности великое множество. А вот как с этим пакетом поступить дальше - задача программиста. Но выводить на график заведомо неверные данные (точнее отсутствие данных) считаю неправильным. Потому как доверчивый пользователь будет искать причину такого провала параметров в своем устройстве. И будет думать, что графики действительно резко упали. И виной тому прошивка, схемное решение, некачественный монтаж... А на самом деле прошла какая-нить внешняя помеха на кабель связи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170

А если зайти с другой стороны. Признать "иглу" как некий маркер сбойности? "Зализывать", сглаживать графики, ИМХО, тоже не очень правильно. Тот же доверчивый пользователь, увидев чистый, ровный график, будет думать что у него всё хорошо. Хотя на самом деле иногда пробегают сбои. Видеть даже единичные или неритмичные помехи очень даже полезно при отладке как программ, так и схем.

выводить на график заведомо неверные данные (точнее отсутствие данных) считаю неправильным

Под этими словами подпишусь всеми конечностями.

Другое дело, сглаживание сделать отключаемым (на время отладки) - вот это было бы неплохо.

П.С. ИМХО, логер как раз и нужен для поиска недостатков. Больше чем уверен, что доведя систему до совершенства, отловив косяки (програмные, схемные, монтажные, эксплуатационные), большинство пользователей отложит логер в дальний угол нижнего ящика стола.

Изменено пользователем IGO61

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
donec    133

По пикам на графике это скорее всего старая песня с пропуском пакетов, не знаю в чем причина, но Я записываю по 2 часа через USB-COM и сбоев с приемом нет.

Пока обновить прошивки не могу, ноут в ремонте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
GoIIIa    0
В 07.12.2013 в 21:45, Eugene70 сказал:

Модель свечи зажигания и распрелелителя, для микрокап 9.

post-148879-0-45330000-1386442043_thumb.png

Почему то в этой симуляции длительность разряда катушки составляет всего 0.11 mc.
Дело определённо в индуктивности, но как грамотно поправить не знаю (((

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Eugene70    5

Что то не так у вас, или не там смотрите. Вот анализ. Чтоб ошибки не было, схему скачал, ту что в раздаче. Соответствует искрению ваз2108, под неё и подгонялось, только напряжение тлеющего разряда чуть выше, под увеличенный зазор свечи.

Снимок.PNG

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170

Всем привет!

Тахометр, измеритель УОЗ, напряжения ДАД и напряжения бортсети в месте подключения девайса в одном бокале (девайсе):

takh_LCD.zip

В архиве- рекомендуемая схема, прошивка, ассм-текст. Устройство предназначено для совместной работы с ФУОЗами из этой и этой тем. Для работы с ДХ в трамблёре (сигнал подаётся на опорный вход "REF") пин 2 контролика должен быть подтянут резистором к питанию контролика. Для работы в системе "ФУОЗ+ДПКВ" на вход "REF" подаётся сигнал "выбор канала искрения". Сигнал "FUOZ" берётся соответственно с выхода формирователя УОЗ как в случае с ДХ в трамблёре, так и в режиме "статика". Напряжение ДАД снимается непосредственно с выхода датчика и выводится на дисплей в вольтах. Напряжение бортсети измеряется в месте подключения измерителя. Измеренные величины выводятся на 2-строчный 16-символьный экран одновременно. Обновление экрана - раз в полсекунды. Если двигатель заглушен, но зажигание включено - выводится сообщение об остановленном двигателе. В этом случае обновление экрана раз в примерно 2,3сек. Прибор меряет обороты от 57об/мин, напряжение ДАД - до 4,97В, напряжение бортсети - до 19В.

Печатку не придумывал - девайс планировался в единичном экземпляре, поэтому собран на макете. Вот немного фоток:

598eeda63b651_0030_.jpg.e3f5070d61dc196d5f1706a44f6cd834.jpg598eed9ebea16_0031.jpg.e72f66379507b4aa70d5f05c1b556af9.jpg598eed96caf8f_0032.jpg.7469cf285175f3cbbd954d86465ecd90.jpg598eed91257fd_0033.jpg.1ca769b6dcdeff58cc94c866db75dc41.jpg598eed881fd33_0034.jpg.cfa198eeba0c4f8aba6c98e9de868344.jpg

Нижайше прошу пардона за качество картинок - делалось убогим телефоном.

  • Одобряю 9

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170
8 часов назад, IGO61 сказал:

Устройство предназначено для совместной работы с ФУОЗами из этой и этой тем

Досадное недоразумение. При написании текста сообщения пропали ссылки на темы. Уточняю, тахоуглометр предназначен для работы с ФУОЗами из тем "ФУОЗ-676(продолжение)" и "ФУОЗ+ДПКВ".
 

Изменено пользователем IGO61
  • Одобряю 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170
10 часов назад, semister сказал:

где покупали RC1602D-YKY  не могу найти

Я покупал в соседнем радиомагазине из того что было в наличии. Загорелись "гимнА" собрать девайс после написания программы. Подойдёт любой 16-символьный 2-строчный индикатор на контроллере HD44780. Система команд для них одинаковая, даже допустимо применение индикатора с кирилицей в знакогенераторе - она всё равно не используется (но пытливый ум может без проблем заменить латынь в текущей прошивке на кирилицу). Подсказанный leon21 тоже подойдёт, но...

leon21, что-то "космодром" загнул цену - очень деньги нужны? Я в магазине за 120грн брал. За что и  получил люлей от сына - он нашёл подобные индикаторы по 40...50грн.

 

Изменено пользователем IGO61

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
leon21    8

День добрый . цена конечно не радует , я привёл ссылку не как рекламу а как пример . находил тоже дешевле но они без подсветки . Спасибо  IGO61 за прибор . Есть один вопрос слегка гуляет отображение напряжения где-то 0.5 вольта при питании от блока питания , это что то у меня не так или это нестрашно ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170
42 минуты назад, leon21 сказал:

гуляет отображение напряжения где-то 0.5 вольта при питании от блока питания

Это, похоже, блок питания балюется. Мой тах сейчас стоит на машине показвает 13,68В на ХХ (+/-0,06В) и 14,11В на 2500об/мин (тоже +/-0,06В), но никак не +/-0,5В.

А моему генератору, походу, внимание уделить надо - напруги маловаты. 
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
toxin    2

Обратите внимание,при повторении схемы,питание на дисплей пере-полюсовано.

 

Поначалу тоже плавали показания вольтметра,заменил 78L05 на  7805,и всё выровнялось.

(печатка:

tach.lay6

панельки стоят со стороны дорожек(согнуты ножки).)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170
21 минуту назад, toxin сказал:

Обратите внимание,при повторении схемы,питание на дисплей пере-полюсовано.

Если это касается архива со схемой, выложенного мной, то скажу "ничего подобного" - вот скрин части схемы тахометра и распиновки индикатора из даташита:

59c69df80b2e8_.jpg.b9683308ddebfc54371464c4f3f8abc5.jpg

У меня индикатор указанного типа и полярность питания дисплея не переполюсована. Возможно, на индикаторах других типов иная полярность?


 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
IGO61    170

К тому ж, "RC1602" и  "TC1602" - индикаторы от разных производителей. "Raystar Optronics"  и "Tinsharp" соответственно. Чтоб не было мучительно больно, смотрим внимательно доку при подборе аналогов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
toxin    2

(Исправил печатку tach.lay6).

 

 

в общем,бился я с измерителем два вечера - сдаюсь.

всё работает правильно кроме уоз,показывает 65градусов.

@IGO61 ,подскажите,насколько критично применение CD4093P? у меня 561ла7,может из за этого?

и ещё вопрос:куда подцеплять "FUOZ",на вывод микроконтроллера,или после транзистора?спасибо.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас


  • Похожие публикации

    • Автор: LukaS_St
      Всем привет. Столкнулся с такой проблемой: Пишу программу для устройства мониторинга оборотов двух валов используя датчик холла. Настроил прерывания,  перевод в RPM, все проверил, в .порт отправляются верные значения, и после настройки индикации столкнулся с проблемой неадекватного поведения переменных считающих millis, а после и индикации. В Arduino я не спец, Гляньте на код, может чем помогите. Заранее благодарен.
      #include <EEPROM.h> #define CLOCK 13 //SH_CP #define DATA 11  //DS #define LATCH 10  //ST_CP int numbers[5]; boolean ee = 0; int mh; int hh; int et_mah; int et_shl; int ot_mah; int ot_shl; volatile  int rpm_mah = 0; volatile  int rpm_shl = 0;  int rpmmah_count = 0;  int rpmshl_count = 0; unsigned long lastmillis_mah = 0; unsigned long lastmillis_shl = 0; unsigned long lastmillis_show = 0; unsigned char number[] = {   0b01111110, //0   0b00110000, //1   0b01101101, //2   0b01111001, //3   0b00110011, //4   0b01011011, //5   0b01011111, //6   0b01110000, //7   0b01111111, //8   0b01111011, //9   0b00000001, //-   0b00000000  //тушим индикатор }; void setup() {   Serial.begin(9600);   attachInterrupt(0, rpm_mahovik, FALLING);   attachInterrupt(1, rpm_shluz, FALLING);   pinMode(CLOCK, OUTPUT);   pinMode(DATA, OUTPUT);   pinMode(LATCH, OUTPUT); } void rpm_mahovik() { /* this code will be executed every time the interrupt 0 (pin2) gets low.*/   rpmmah_count++; } void rpm_shluz() { /* this code will be executed every time the interrupt 0 (pin2) gets low.*/   rpmshl_count++; } // чтение //int EEPROM_int_read(int addr) { //  byte raw[2];  // for (byte i = 0; i < 2; i++) raw[i] = EEPROM.read(addr + i);  // int &num = (int&)raw; //  return num; //} // запись //void EEPROM_int_write(int addr, int num) { //  byte raw[2];  // (int&)raw = num;  // for (byte i = 0; i < 2; i++) EEPROM.write(addr + i, raw[i]); //} void show () {   int x;   for (x = 5; x >= 0; x--) {    Serial.print("x= "); Serial.println(x);     //включаем LATCH (Начинаем общение)     digitalWrite(LATCH, LOW);     shiftOut(DATA, CLOCK, LSBFIRST, number[numbers[x]]);     //выключаем LATCH     digitalWrite(LATCH, HIGH);     //отключаем LATCH (чтобы регистр не ждал данных)     digitalWrite(LATCH, HIGH);   } } //void ee_write () {  // EEPROM_int_write(0, mh); //  EEPROM_int_write(2, hh); //  EEPROM_int_write(4, et_mah); //  EEPROM_int_write(6, et_shl); //  EEPROM_int_write(8, ot_mah); //  EEPROM_int_write(10, ot_shl); //} void loop() { //  if ((millis() <= 100) & (ee == 0)) {   //  mh = EEPROM_int_read(0);  //   hh = EEPROM_int_read(2); //    et_mah = EEPROM_int_read(4);  //   et_shl = EEPROM_int_read(6);  //   ot_mah = EEPROM_int_read(8);  //   ot_shl = EEPROM_int_read(10);  //   ee = 1;  // }   if (millis() - lastmillis_mah == 1000) {     detachInterrupt(0);     rpm_mah = rpmmah_count * 60;     rpmmah_count = 0;     lastmillis_mah = millis();     attachInterrupt(0, rpm_mahovik, FALLING);   }   if (millis() - lastmillis_shl == 5000) {     detachInterrupt(1);     rpm_shl = rpmshl_count * 12;     rpmshl_count = 0;     lastmillis_shl = millis();     attachInterrupt(1, rpm_shluz, FALLING);   }   if (millis() - lastmillis_show == 1000) {     numbers[0] = rpm_mah / 1000;     numbers[1] = (rpm_mah % 1000) / 100;     numbers[2] = ((rpm_mah % 1000) % 100) / 10;     numbers[3] = ((rpm_mah % 1000) % 100) % 10;     numbers[4] = rpm_shl / 10;     numbers[5] = rpm_shl % 10;     lastmillis_show = millis();   show(); Serial.print("RPM mah= "); Serial.println (rpm_mah);  Serial.print("RPM shl= "); Serial.println (rpm_shl);   Serial.print("Show millis= "); Serial.println(lastmillis_show); Serial.print("Show mah= "); Serial.println(lastmillis_mah); Serial.print("Show shl= "); Serial.println(lastmillis_shl);   } }
    • Автор: Курдль
      Привет!
      Прошу доподлинно разъяснить мне, как долго биполярные датчики Холла (ДХ)  могут хранить своё состояние без источника питания.
      Подробнее: биполярный датчик переходит из состояния в состояние под воздействием строго определенного магнитного поля, например, в "0" при  прохождение рядом с полюсом "N" и в "1" - рядом с полюсом "S".
      Это известный факт. Но лично для меня было неожиданностью, что они сохраняют это состояние и после выключения источника питания 
      Я думал, что отключил фазу - датчик обнулился. А вот фиг!
      Теперь не знаю, как жЫть дальше! :/
      Т.е. можно ли полагаться на то, что без внешнего воздействия состояние ДХ будет оставаться таким, каким оно было в момент последнего прохождения через магнитное поле?
      Существует ли какое-то "гарантированное время сохранения состояния"?
      Заранее благодарен всем, кто согласиться ткнуть меня носом в моё невежество! 
    • Автор: shtin92
      Ребята подскажите где можно найти некалиброванный датчик холла (ДХК-0.5А)? может где в старой технике использовался гдето выпаять можно?
    • Автор: shtin92
      Ребят доброго времени суток! Подскажите пожалуйста влияет ли площадь датчика холла на чувствительность и получаемое выходное напряжение на вольтметре?Подключаю по такой схеме.Заранее спасибо за помощь!
       
       
       

    • Автор: shtin92
      Добрый день дорогие форумчане! подскажите пожалуйста реально ли сделать датчик холла HALL IC SS495A (марк. 95A) 3pin более чувствительным? или можно датчик собрать самому и сделать его более чувствительным?