AVR Раздел по микроконтроллерам компании Atmel - AVR / ATtiny / ATmega / ATMega128 / ATxmega, вопросы по программированию в AVR studio и все, относящееся к AVR... |
17.10.2016, 11:05
|
#241
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: Спидометр атмега 8
По поводу шести импульсов. Можно каждый раз ожидать отсчета шести импульсов, и только после этого вычислять скорость. Но может показаться, что это слишком долго, особенно на малых скоростях. Тогда можно применить кольцевой буфер, объемом 6 ячеек, в который помещать период каждого очередного импульса. А для вычисления скорости каждый раз суммировать эти шесть результатов. Другими словами, это метод скользящего среднего. С этим уже разобрались ранее, так что проблем не должно возникнуть.
|
|
|
|
18.10.2016, 17:25
|
#242
|
Гражданин KAZUS.RU
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от Alex9797
|
Не слушай тех, кто говорит такие глупости! Главное - результат. Заказчику, пользователю - глубоко пофиг, где выполняются действия, и сколько операторов goto было написано в исходном тексте. Ему надо, чтобы все работало, и чтобы стоило подешевле.
У меня есть несколько изделий, в которых только инициализация происходит вне прерывания, а основная программа состоит из бесконечного пустого цикла. Все остальное происходит в прерывании.
|
Алекс, не сбивай Мишутку. Он уже столкнулся в этой теме с тем, что у него не выполнялся основной код потому, что прерывания были забиты вычислениями, да еще и float. Получается, что пока прерывание пройдет, поднимается флаг следующего.
|
|
|
|
18.10.2016, 17:34
|
#243
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от МВА
|
не сбивай Мишутку
|
Что-то долго он не появляется.
|
|
|
|
18.10.2016, 18:17
|
#244
|
Гражданин KAZUS.RU
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от Alex9797
|
По поводу шести импульсов. Можно каждый раз ожидать отсчета шести импульсов, и только после этого вычислять скорость. Но может показаться, что это слишком долго, особенно на малых скоростях. Тогда можно применить кольцевой буфер, объемом 6 ячеек, в который помещать период каждого очередного импульса. А для вычисления скорости каждый раз суммировать эти шесть результатов. Другими словами, это метод скользящего среднего. С этим уже разобрались ранее, так что проблем не должно возникнуть.
|
А не проще просто замерить длительность между двумя импульсами и просто умножить ее на шесть?
|
|
|
|
18.10.2016, 18:33
|
#245
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от МВА
|
А не проще просто замерить длительность между двумя импульсами и просто умножить ее на шесть?
|
Проще. Но неправильно. Я ведь писал, что разбивка окружности датчика на шесть частей не блещет равномерностью. Фактически, длительности всех шести импульсов в течение одного оборота - разные. И если обсчитывать скорость по одному отдельному импульсу, то за один оборот получим шесть разных значений. А вот если брать шесть смежных, идущих подряд - то каждая такая шестерка будет такой же длительности, как и соседняя.
|
|
|
|
18.10.2016, 18:44
|
#246
|
Гражданин KAZUS.RU
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
|
Re: Спидометр атмега 8
Ну, это спорный вопрос. Не обязательно там стоит шесть датчиков или шесть зубьев. В момент набора скорости, или сброса, даже сумма в шесть импульсов будет не одинакова. А при медленном изменении скорости показания будут более реальные, без отставания. Да и у машины довольно большая инерционность. Кстати, Мишутке на тахометр я давал такие же вычисления. Я их описывал в посте 69, на 6 или 7-й странице.
|
|
|
|
18.10.2016, 18:52
|
#247
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от МВА
|
Не обязательно там стоит шесть датчиков или шесть зубьев.
|
А я даже соглашусь с этим. Потому что несколько раз упоминалось о том, что "датчик дает шесть импульсов на метр". Но не припомню, чтобы говорилось, что при этом датчик проворачивается на один оборот. Действительно, он может делать один оборот, проезжая два метра, и выдавая при этом 12 импульсов. Или проезжать полметра на оборот, выдавая три импульса...
Ладно, будем решать проблемы в порядке их поступления. Сперва дождемся Мишутку, и свежих новостей от него.
|
|
|
|
18.10.2016, 20:07
|
#248
|
Гражданин KAZUS.RU
Регистрация: 15.08.2010
Адрес: Днепр
Сообщений: 842
Сказал спасибо: 74
Сказали Спасибо 199 раз(а) в 174 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от Alex9797
|
А я даже соглашусь с этим. Потому что несколько раз упоминалось о том, что "датчик дает шесть импульсов на метр". Но не припомню, чтобы говорилось, что при этом датчик проворачивается на один оборот. Действительно, он может делать один оборот, проезжая два метра, и выдавая при этом 12 импульсов. Или проезжать полметра на оборот, выдавая три импульса...
Ладно, будем решать проблемы в порядке их поступления. Сперва дождемся Мишутку, и свежих новостей от него.
|
А может датчик дает один импульс на оборот и провернется 6 раз на метр.
|
|
|
|
18.10.2016, 23:14
|
#249
|
Почётный гражданин KAZUS.RU
Регистрация: 05.07.2009
Адрес: Запорожье
Сообщений: 1,531
Сказал спасибо: 309
Сказали Спасибо 53 раз(а) в 48 сообщении(ях)
|
Re: Спидометр атмега 8
Со спидометром решил не заморачиваться. Поверил математике. Как-нибудь напрягу местных полицаев замерить скорость еще ))) Новый вопрос появился.... У меня на ВАЗ2103 стоит бесконтактное зажигание. Я подключался к катушке для измерения оборотов мотора. Там исциллографом увидел затухающие колебания. Поэтому обороты неправильно измерялись. Подключился к датчику на трамплере - все стало отлично. У кента такой же "ТАЗ" только мотор от приоры 16 клапанный. Там есть датчик положения коленвала. На коленвале 58 меток по окружности.(вычитал). Вопрос: чтобы было проще можно ли както эти затухающие колебания с катушки превратить в подобие импульсов как от моего трамплера с датчиком холла? Или нужно брать сигнал от датчика положения коленвала??
P.S. В осциллографе есть генератор сигналов. С этим всё стало решаться на много быстрей..... Осцилл+ генератора - сила ))) Нехватает лог. анализатора ))
Последний раз редактировалось miwutka; 18.10.2016 в 23:19.
|
|
|
|
19.10.2016, 00:27
|
#250
|
Почётный гражданин KAZUS.RU
Регистрация: 20.08.2010
Адрес: Днепр
Сообщений: 8,565
Сказал спасибо: 5,041
Сказали Спасибо 10,615 раз(а) в 3,604 сообщении(ях)
|
Re: Спидометр атмега 8
Сообщение от miwutka
|
можно ли както эти затухающие колебания с катушки превратить в подобие импульсов как от моего трамплера с датчиком холла?
|
Можно. Длительность этих колебаний не такая уж большая. Поэтому есть несколько вариантов.
1. Если эти импульсы распознаются программно - это отлично. Тогда ничего не надо изменять в схеме. Достаточно лишь в программу ввести паузу, примерно как при защите от дребезга контактов кнопки. То есть, при обнаружении первого импульса, выполнить все действия, которые связаны с этим, а после этого тупо игнорировать поступающие импульсы, в течение некоторого времени. Полторы миллисекунды - самое то. За это время гарантированно затухнут все колебания, и гарантированно не успеет появиться следующая искра. Таким образом, после этих полутора миллисекунд программа снова перейдет к ожиданию следующего импульса.
2. Если эти импульсы распознаются аппаратно, то есть, они подаются на запуск счета таймера, придется внести добавки в схему. Небольшие. Достаточно диода последовательно с сигналом от катушки, после диода - небольшой конденсатор на землю, несколько нанофарад, И параллельно этому конденсатору - резистор, примерно 10 килоом. При этом пакет затухающих импульсов сольется в один импульс, что не будет приводить к многократному срабатыванию.
Да, не помешает еще стабилитрон, параллельно конденсатору и резистору. Мало ли какая амплитуда импульсов от катушки.
|
|
|
Сказали "Спасибо" Alex9797
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 01:11.
|
|