Как стать автором
Обновить
40
0
Алексей Столяренко @jaiprakash

Инженер

Отправить сообщение
Хотя, если подумать, в данном случае
micros() - micros_prev == 0
означает дребезг, и нужно просто выходить из обработчика.
В статье по ссылке 1440x2560 называют 4k. Это какая-то новая мода?
rpm_sum += micros() - micros_prev;
Может arduino не поддерживает, но в С обычно пишут так (труднее ошибиться и лишнее не мешает):
rpm_sum += (micros() - micros_prev);

Я бы при делении просто проверил делитель на == 0 и если да, то установил некое максимальное значение RPM_MAX.
И всё же нужно переписать строку с возможностью деления на 0. Это же авионика, а не мигание светодиодом на столе, тут всё должно быть по MISRA C, даже двух команд на строке нельзя:
micros_prev = micros(); rpm_val++;

Из кода я так и не понял откуда взялось micros(), приведён фрагмент программы?

Хоть статья понравилась, выглядит странным использование ардуино (как софта) в таком ответственном изделии. Программа на чистом С почти ничем не будет отличаться от приведённого скетча, за исключением полного контроля за происходящим. А так — остаётся элемент магии.
Как в SketchUp с параметризацией?
Дают.
точная калибровка и доводка датчика

Вся соль в этом.
И ещё нужен акселерометр, т. к. если автомобиль стоит немного под углом, то показания будут отличаться.
Что-то криолита нет (
Здесь есть и таблицы, и приближённые формулы для nλ большого количества материалов.
Я не спорю, мне любопытно. Просто в статье не хватает вводной что ли.
Почему вообще надо ставить датчик? Я наивно полагал что все современные автомобили оборудованы оным. Вот даже совсем несовременные содержат поплавок с потенциометром, его не нужно ставить. Добавить только электронный обвес для точности и трекинга расхода [и слива].
Тем не менее, штатный ДУТ во многих автомобилях, не только дизельных, — потенциометрический поплавковый (на датчике холла даже безопаснее по идее). Что не так со штатным датчиком? Сопротивление мы умеем измерять легко и точно, нелинейность «уровень — напряжение» можно откалибровать, всплески топлива можно отфильтровать программно.
Туда бы дальномер.
LM358D вместо LM258D

Т. е. Заменили ОУ рассчитанный на -25… 85 °C на аналог для 0… 70 °C ?!!!
Я вместо них ставлю LM2904 (-40… 125), чего и вам советую, а лучше LM158 (от -55).
Так как же это посчитать, имея данные по толщине слоёв, показателю преломления и длине волны?
Похоже, у таких двигателей не очень с балансировкой…
В схеме из даташита для термокопенсации холодного спая указан некий диод D1 без обозначений. Видимо, измерительный термочувствительный диод, но какой именно?
Обычно это или тензодатчики с обвесом или MEMSы
С аналоговым выходом 10 мВ/К и термокомпенсацией: AD594/595/596/597. AD8495 — 5 мВ/К.
Есть с АЦП, например, ADS1118.
Maxim выпускает в ассортименте всякие драйверы.
Разумеется, практической значимости данная халтурка не представляет и для измерения температуры с помощью термопары нужно использовать более точные АЦП. Хорошим встроенным АЦП обладает к примеру микроконтроллер ADuCM360, причем он рассчитан именно на столь малые входные сигналы.

Крайне странный вывод.
Обычно для усиления сигнала и температурной компенсации используют специальный драйвер. Если хотят бюджетного и доступного решения — усиливают сигнал с помощью операционного усилителя. Но переходить на другую архитектуру микроконтроллера только из-за 24-битного АЦП…
Большинство курсов написаны для людей, начинавших с чего-то попроще: 8051 и подобных, PIC, AVR.
Поколение эмбеддеров стартующих сразу с ARM только появляется. Отсюда часть сложностей.

Информация

В рейтинге
Не участвует
Откуда
Россия
Дата рождения
Зарегистрирован
Активность