Перейти к содержанию

Цифровой Спидометр На Atmega8


Stels

Рекомендуемые сообщения

датчик скорости 2110 вместо троса

я не хочу избавляться от троса, если сломается цифровая приборка, просто достать из багажника родную и вперед.

Пока процесс встал на стадии изготовления программатора((. Да еще и времени нет вообще...переезд....ремонт..

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

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

  • Ответов 50
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

  • 8 месяцев спустя...

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

люди, появилось время, собрал stk200, с помошью него собрал prottoss'а, теперь хочу вернуться к теме. Более-менее понял принципы программирования на С для авр, но никак не могу научиться как реализовать что-то на подобии многозадачности, т.е. динамическую индикацию с частотой около 24Гц, да и еще частотомер.... Да и с кодом реализующим функции частотомера трудности.... Набросайте пожалуйста код с пояснениями... Дополнительные функции адеюсь сам как-нибудь прикручу...

Схема будет такая http://speed-light.on.ufanet.ru/speedometr-m1.shtml только пока не в курсе, с общим анодом или катодом семисегментники....

Благодарен за любую оказанную помошь.

Изменено пользователем Stels
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

запускаете 2 таймера, на динмическую индикацию порядка 100-500Гц, эт дело вкуса), а второй не знаю на сколько, смотря какая частота импульсов входящих, ну допустим раз в 100 больше. В обработчике прерывания от таймера частотометра считается 2 счетчика, один (1) счетчик с каждым счетом таймера, второй (2)- прибавляется если есть импульс. Когда счетчик (1) накликает количество, за которое проходит например пол секунды, считывается значение счетчика (2) и умножается на какой то коэфициент свзывающий скорость и частоту., и выводится на экран. В прерываниях ничего кроме прибавлений счетчиков не делается, в мейне все анализируется и загружается в буффер динамической индикации. В прерывании таймера динамической индикации обновляется очередная циферка, но прежде она гасится. Вот вобщем то все вроде...

чем шире кругозор, тем тупее угол обозрения

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

... Да и с кодом реализующим функции частотомера трудности.... Набросайте пожалуйста код с пояснениями... Дополнительные функции адеюсь сам как-нибудь прикручу...

Здесь лежат мои исходники (Си) к тахометру. Можете глянуть для ознакомления...

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

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

пусть порог будет в 180 км (хотя больше 110 я не поеду...), в км 1000 м это 180000 метров в час, делим на 3600 = 50 метров в секунду Х 6 импульсов в метр итого 300Гц максимальная частота..... Думаю пару раз за секунду более чем достаточно для нормальной информативности, это 150 импульсов в полсекунды, это так, мысли вслух...

а как вообще лучше считать, сколько импульсов за полсекунды и потом вычислять или интервал между двумя импульсами? Насколько я понял, обычно делают как в первом случае.

Я все-же не могу понять, как одновременная индикация не будет влиять на пдсчеты импульсов... аа, понял, импульсы считаются прерыванием...

Насчет примера, он разбит на несколько файлов и я пока не вьехал как это все работает.....

Извиняюсь за некоторый тупизм в вопросах и рассуждениях, несколько лет программил на ООП, да еще и на делфи...., а "линейное" программирование пока дается с большим скрипом.....

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

...а как вообще лучше считать, сколько импульсов за полсекунды и потом вычислять или интервал между двумя импульсами? Насколько я понял, обычно делают как в первом случае.

...Насчет примера, он разбит на несколько файлов и я пока не вьехал как это все работает.....

Зачем вам полсекунды? Для малых частот временные ворота организуются измеряемой длительностью, то бишь импульсами на катушке в вашем случае. Разбирайтесь с примером, там ответы на большинство возникших вопросов...

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

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

  • 2 недели спустя...

Здраствуйте. встретил знакомую мне тему. Хочу поделиться знаниями.

1. В автомобилях используются два типа электронных датчиков шести импульсный и десяти импульсный. Ращёт ведётся таким образом (в шестиимпульсных): один оборот колеса = один оборот датчика = 6 импульсов.(За априори принято что один оборот колеса = 1 метр. Поэтому по любому есть отклонение. Производителю это не интересно.) Алгоритм подщёта до гениальности прост. Измеряем количество импульсов от датчика за 0.6 секунды. Данное количество будет сооответствовать скорости автомобиля. Т.е. если за 0.6сек прошёл один импульс значит скорость равна 1км/час, если прошло 150 импульсов - значит 150 км/час.

2.Есть электронные датчики-переходники стоили когда то 28 гривень. Вкручиваеш его заместо троса, атросс вкручиваеш в него.

3. Не используй жк индикаторы типа 2х16 - не читабельно при движении. Не используй семисегментник красного цвета - режет глаза ночью. Рекомендую зелёный. Частота индикации должна быть више 50 Гц потому как при движении в тёмное время суток когда смотриш на дорогу периферийное зрение видит мерцание хотя когда смотриш на индикатор мерцания не заметны. Я делал индикацию 100Гц.

4. Устанавливать индикатор нужно в затенённом месте. Либо утопленом либо под козырёк. Потому что при попадании на него прямых солнечных лучей ни черта не видно.

5. Если нужно иметь на конкретном авто точную скорость. Калибровка возможна с помощю изменения длительности измеряемого времени 0.6 сек. Н о чтобы проделать такую калибровку нужен GPS и ещё один человек в машине. ( не рекомендую делать это самому).

6. Чтобы сделать свой девайс без знаний, нужно как миниму изучить чужой работающий. Чтобы понять как оно работает.

7. Stels Могу предоставить незавершённый исходник Спидометр/одометр на мега 8. Забросил год назад. Хотя вспоминаю что плату под него вытравил. Значит есть вероятность что прога всё таки завершена надо посмотреть.

По тахометру. У тебя зажигание электронное или нет. То что она шла с завода с механическим зажиганием мне известно. Мне интересно переделывал ты её под электронное или нет. Если да то есть прога тахометра с индикацией на 2 цифры, с плавающей точкой. (до 1000 об. точность измерения -30об. показывает сотни и десятки, а после тисячи точность измерения -100об. показывает тысячи и сотни через точку.

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

Спасибо за пояснения. Очень полезно. Датчиков в продаже полно, с этим проблем нет...

Индикаторы будут утопленны в панель, под козырьком, может за стеклом с наклеенной тонировкой, красным цветом на приброрке ничего кроме аварийных ламп зарядки, давления и пр. ничего не будет....

Вот с работающим девайсом с известными исходниками и рабочей схемой худо... Буду рад на ваш взглянуть, выше мне дали исходники, но они к какому-то неизвестному компилятору разбиты на несколько файлов, пока их ковыряю в свободное время...

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

...выше мне дали исходники, но они к какому-то неизвестному компилятору разбиты на несколько файлов, пока их ковыряю в свободное время...

Компилятор то совсем не неизвестный: AVRGCC 4.3.2 Binutils 2.19 avr-libc 1.6.6

Дело в том, что CAVR такой код банально съесть не может - компилировать то компилирует (под завязку), но не работет.. Из-за 5-ти цифр, местами использованы long-и, и тут засада выходит... Поэтому решил на gcc-м компиляторе обкатать. С ним все гуд еще и места осталось немало :) . AtmanAVR - лишь среда разработки. Мой Вам совет - возьмите AVRStudio, поставьте WinAVR и попробуем перенести все туда. Там чистый Си и проблем быть не должно. Вместо Студии можно KamAVR использовать - красивый редактор (для того же WinAVR), не так режет глаза. А по коду спрашивайте, что не понятно - пока не забыл...

Любой, заслуживающий внимания, опыт приобретается себе в убыток...

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

  • 1 месяц спустя...
  • 2 месяца спустя...

Добрый день! Интересна данная тема.

Хочу собрать девайс, который бы выполнял определенные действия, при достижении машиной скорости >= 5км/ч. На моей стоит датчик скорости 8 импульсный. Устройство хочу собрать на ПИКе (16F84a), т.к. есть опыт работы с ним. В этой ветке обнаружил схему(прикрепил заново).

Опираясь на нее...

Вопросов два:

1) Самое главное это подключить на вход датчик. Пойдет ли вариант подключения по этой схеме?

2) Как мне в проге отловить приход импульса? 6ая нога это 0й вход порта B. Т.е. просто проверять RB0 постоянно в таймере, и когда на нем будет 1, значит пошел импульс? а когда 0 значит нет? Хватит ли напр-я на датчике при импульсе для сработки входа?

Потом, как я понимаю просто подбираю коэффициент для пересчета кол-ва импульсов в км/ч, точность большая не нужна.

Спасибо

post-60934-1264764111_thumb.jpg

Изменено пользователем Except
Ссылка на комментарий
Поделиться на другие сайты

Добрый день!............

Как мне в проге отловить приход импульса?...........

Спасибо

Ключевое слово - "ПРЕРЫВАНИЕ"...

ЗЫ. Нет никакой разницы при работе с разными контроллерами одного семейства. Так что забудьте про 84-ый...

Возьмите PIC12F683 и на его модуле ССР реализуйте заявленную функцию в режиме Capture (Захват).

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

戦う前に相手のベルトの色に注目

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

Ещё вариант (без CCP). Вам, по сути, нужно мерить частоту, т.е. период между двумя приходящими импульсами. Настраиваем МК на внешнее прерывание и считаем таймером время между двух прерываний. Это и будет период. Затем сравниваем с заявленным, и если он будет меньше, значит скорость превысила отметку - делаем что то там .....

По схеме. Если у Вас диод запрётся (напряжение К-А будет меньше напряжения открытия ), нога окажеться в воздухе. А это не есть гуд.

Поправьте меня если ошибаюсь. :rolleyes:

Я бы поставил сопротивление + стабилитрон. И в плюс много не даст, и отрицательный импульс урежет.

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

ЗЫ. Нет никакой разницы при работе с разными контроллерами одного семейства. Так что забудьте про 84-ый...

Возьмите PIC12F683 и на его модуле ССР реализуйте заявленную функцию в режиме Capture (Захват).

Нууу, посмотрел я на PIC12F683, ничего знакомого :( половина ног незнакома, обвязка вроде другая. Программа наверное тоже по другому строится, со своими тонкостями. Программатора нет. Т.е. надо мануалы изучать.

А F84 я знаю. Тем более для F84 у меня есть программатор и сама микруха.

По схеме.

Спасибо!

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

Незнакома, не значит другая. Система команд - один в один... Программатор и протокол программирования идентичны.

Кварц можно и не вешать, если особой точности не требуется. Цена 40 руб, т.е. в 2,5 раза дешевле 84-го. Периферии больше, и есть полезный для описанной задачи ССР. Ног всего 8, т.е. компактнее...

Вопрос. Лень заела?

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

戦う前に相手のベルトの色に注目

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

Просто я в МК новичок.

Расскажу задумку. В автомобиле, в девайс подводятся провода от лампочки паркинга коробки передач и сигнал с концевиков дверей. Выходом служит сигнальный вход центрального замка авто. Устройство будет дозакрывать двери при трогании с места. Так же открывать их при остановке и переводе селектора в паркинг.

Снимаем машину с сигналки - девайс запитывается. Набросал примерный алгоритм работы.

если (не ПАРКИНГ)

{

если (ФЛАГ_ОТКРЫВАЛАСЬ_ДВЕРЬ)

{

если (ИзмеритьСкорость() >= 5км/ч)

{

ЗакрытьДвери();

ДВЕРИ_ЗАКРЫВАЛИСЬ = 1;

}

}

}

если (не ПАРКИНГ)

{

если ((СчитатьСостояиеАКПП() == ПАРКИНГ))

{

если (ДВЕРИ_ЗАКРЫВАЛИСЬ == 1)

{

ОткрытьДвери();

ДВЕРИ_ЗАКРЫВАЛИСЬ = 0;

}

ПАРКИНГ = 1;

}

}

Примерно так! Посмотрел даташит.

Не совсем понял по входам. Мне надо 2 входа обычных, 1 выход, и 1 вход CCP как я понял.

на OSC1 и OSC2 кварцевый резонатор.

на MCLR кнопку сброса.

на CCP1 сигнал с датчика скорости.

на GP1 вешаем управляемый элемент.

VSS земля и VDD +5в.

остается тока GP0 к примеру, для определения, что двери открывались. А мне надо еще один вход для АКПП.

Источник питания для преобразования 12в->5в на LM2576.

Для управление нагрузками с помощью мк я использовал до этого ULN2803. Сейчас мне нужно только подать 12в на одно устройство.

Сильно не пинать, еще только учусь. На пик PIC12F683 в инете практически ничего нету. Тем еще меньше на русском. Пока изучаю даташит.

Изменено пользователем Except
Ссылка на комментарий
Поделиться на другие сайты

Да вообщем все так... Только подумайте насчет необходимости кварца. Вам же не нужно дикой точности, а откалибровать внутренний генератор не сложно. Две ноги прибавятся. Можно взять 16F684 - это тоже самое, но ног будет 14 (стоит дороже на 1руб 50 коп :) , совместим с точность до одной ноги...). На микрочип.ру есть русский перевод универсального даташита 12-х...16-х по разделам. Пользуйтесь - Reference Manual - Справочник по среднему семейству микроконтроллеров PICmicro: http://www.microchip.ru/lit/?mid=1x0 Только сверяйте с оригинальным на конкретный камень, там есть и расхождения, но в частностях.

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

戦う前に相手のベルトの色に注目

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

Спасибо! Будем читать и схемку накидывать.

Еще вопросик, чтобы подавать 12В в качестве сигнала на МК использовал оптроны. Прикрепляю скрин.

На деле же получилось, что 10% оптронов погорело, пришлось перепаивать. Чем можно заменить, чтобы возможные перепады по напряжению в авто не пожгли МК?

Так же вопрос, чем можно заменить массив дарлингтона, который использовал ранее, каким-нибудь одиночным элементом, который будет коммутировать 12В по сигналу МК?

(гадство. в нашей дыре нету в наличие таких пиков. придется заказывать)

post-60934-1265018303_thumb.jpg

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

Странное решение. Зачем включать резистор в эмиттер? Обычно включают резистор между коллектором и питанием МК. Кроме того, объединять землю авто и МК у оптрона категорически неверно. Пара проводов до светодиода должны идти витой парой прямо от источника сигнала (резистор балласта светодиода можно либо пополам разделить - половину номинала у источника, половину на светодиоде, либо весь у источника).

Наконец последнее. А откуда такой сумашедший номинал резистора в балласте светодиода? Вообще то ток отпирания не меньше 5...10 ма и даже более... Т.е. для 11 вольт источника максимум этого резистора 2кОм.

Чтобы защититься от бросков, поставьте параллельно светодиоду стабилитрон вольт на пять (анод стабилитрона на землю авто)...

Про Дарлингтона не понял. Зачем?

В коллекторе хватит и 10 кОм.

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

戦う前に相手のベルトの色に注目

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

Спасибо, щас буду переваривать.

Про Дарлингтона не понял. Зачем?

ну.... чтобы, сигналом с МК управлять нагрузкой в авто, чтобы подать на центральный замок 12вольт. Тут я точно не помню, возможно там по земле срабатывает.

Изменено пользователем Except
Ссылка на комментарий
Поделиться на другие сайты

У Вас нет жесткой привязки светодиода оптрона. Нужно включить в плюс - пожалуйста... лишь бы ток коммутировался и случайное замыкание в линии до МК не привело к КЗ источника (поэтому балласт у источника сигнала, а не на плате МК).

戦う前に相手のベルトの色に注目

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

Т.е. мне управление внешней нагрузкой сделать тоже на оптроне? если это будет сигнальный провод то ок. А если это окажется цепь 4х электрозамков автомобиля, то в оптроне транзистор не выгорит? если им коммутировать эту цепь?

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

Вообще то гальваническая развязка всегда гут. Однако по выходу (управлению замками и пр.) это не обязательно. Это управление у Вас потенциальное и помеха не будет отработана. Поэтому достаточно поставить мощный N-канальный МОСФЕТ с логическим управлением в качестве исполнительного ключа. Если нужно коммутировать не общий, а питание, то потребуется P-канальный мощный мосфет, а перед ним N-канальный маломощный с логическим управлением.

Для инфы. Логическое управление - это отпирание МОСФЕТА логическими уровнями. Таких достаточно много мощных, а маломощные почти все.

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

戦う前に相手のベルトの色に注目

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...