Самодельный передатчик (часть 1)

msv

Прилепил термометр TMP36. Он оказался очень чувствителен к наводкам от передатчика, пришлось выход зашунтировать емкостью непосредственно рядом с датчиком и выдать сигнал в кодер через резистор. Не часто приходится защищать выход от наводок… Каллибровку по одной точке (любой, просто задается текущая температура) все же пришлось сделать, ведь изначально неизвестно сколько квант АЦП на вольт. Выводится температура в главном окне в “advanced mode”. (Переключение между advanced и standart mode - кнопка влево.)
Теперь все бы хорошо, но неожиданно корпус передатчика оказался хорошим термостатом. Время установки температуры после помещения передатчика в холодильник и обратно- несколько часов! ( вот был повод похохмить у моих близких, когда они лезли в холодильник за колбасой и даже тут натыкались на мои “причиндалы к самолетикам” 😃 )

v61
АлександрСамара:

А прошивка со схемой доработки будет?Хотелось бы😒

Присоединяюсь…

msv

Немного потестирую, кое-что поправлю, ~через недельку выложу. Пока можете для тахометра собирать формирователь (схемы - выше). От него в кодер подается сигнал на PD0 (int0), ножка на плате не разведена, но особой проблемы подпаять проводок думаю не будет. Для датчика температуры непосредственно рядом с ним кондеры по питанию и выход на землю ( у меня по 0.01мкф ) и с выхода через резистор 47к на PF1.

Nick_Shl
msv:

С тахометром все решилось. Неплохо работает. Точность 20об/мин, время полного обновления 1,5сек. Промежуточное время обновления на дисплее 0,5сек (типа фильтра получилось).

А меряете что? Частоту(считаете количество импульсов) или период(считаете время между импульсами)? Если использовать период, то точность и скорость обновления получаются гораздо выше. Вот, кстати, статейка про измерение скорости вентилятора. Может быть полезна.

Aleksey_Gorelikov

А если мерить и то и другое, то точность еще выше получается. Неплохой алгоритм в тахометре на этом сайте. Смысл - менять не период, а время, ну скажем 1000 импульсов. при больших оборотах, а при низких - да хоть тот же период. В алгоритме с сайта - время ограничивается полсотней переполнений таймера.

msv

Пока просто меряю частоту. Метки времени 0,5с от формирователя PPM. 3 буфера с количеством прерываний от формирователя за это время. Индикация по сумме от этих буферов div 1.5сек. Выглядит вполне прилично… Во всяком случае для электродрыгателей. И точность для любительского применения имхо вполне достаточная.

ushmax
Nick_Shl:

Это первая версия. Задача была уйти от “неправильной” идеологии хардкодинга

Nick_Shl, ваши идеи – мёд для моих программистских ушей! Поделитесь, пожалуйста, кодом? Или, если у вас есть онлайн-репозитарий, то им 😃

Код должен быть предже всего понятным и легко модифицируемым, а потом уже наполненным функциями! Ибо второе без первого это тупик 😃

Иван

Будет, даже на 35-40хх страница обсуждали этот вопрос;)

10 days later
msv

Выкладываю очередную версию 1.7. Пока альфа, только вчера закончил последние изменения…
По сравнению с версией которую нигде не выкладывал, но упоминал:

  1. Устранил мерцание вывода температуры при нестабильном младшем разряде и добавил модные стрелочки направления ее изменения. Правда для полноценной реализации этого, разрешение не слишком большое, напруга с TMP36 маловата… Подключение датчика TMP36 к PF1.
  2. Тахомер считал только до 15000об/мин, теперь до 60000об/мин. Разрешение (точность) как и была- 20об/мин. Подключение датчика-формирователя к PD0.
  3. Для дискретных каналов добавлен еще один параметр: delay (наверное неправильно назвал…) Им можно задать время перехода из одного состояния в другое от 0 до 10сек с шагом 0.1сек. Ух… неожиданно непросто далось и код тяжеловат получился, но вроде бы четко работает…
  4. Options->Version.
    Вроде бы все…
    ВНИМАНИЕ! Для в этой весии изменена структура EEPROM (из-за п3.). Поэтому восстановить конфигурацию, предварительно считав ее из прошлой версии, увы, нельзя!
    3310(1.7).rar
    Source.rar
    ReadMe.rar
Denn

Вопрос к MSV: а не поделитесь подробностями по узлу измерения тока в антенне - какая катушка, как калибровать?
Заранее спасибо!

msv

Поищите, где-то выше я уже отвечал на этот вопрос. Ну а уж если не найдете, в личку…

Denn

Попробовал доработать прошивку MSV v1.7 для Нокии 3410.
Результат во вложениях, инструкция там-же .
Успехов!

Coder.zipCoder v1_7 3410.zip

ubd

Вот теперь проблема, как бы мне перенести модели которые у меня в старой версии в новую…?
Тримера например, не охото заново тримеровать…

gena_g

Уважаемый Denn Вы могли бы выложить исходники прошивки MSV v 1.7 simple для Nokii 3410. У меня по другому распаяны все каналы и кнопки меню.Заранее благодарен

vint

А можно прошвку, схему и печатку одним архивом, а то запутался где какая?

Denn
gena_g:

Уважаемый Denn Вы могли бы выложить исходники прошивки MSV v 1.7 simple для Nokii 3410. У меня по другому распаяны все каналы и кнопки меню.Заранее благодарен

Держите!

Coder v1_7 3410_light.zip

Denn

Покопался ещё, и придумал некоторые усовершенствования:
увеличена толщина маленьких цифр - мне стало лучше видно.
Столкнулся с проблемой калибровки передатчика “Сигнал”. Оказалось, что изменение сопротивления на ручках мало, и АЦП меняется где-то на 300 ед.
В исходнике MSV при изменении меньше 512 выдаётся ошибка калибровки.

Упростил требования при калибровке - диапазон АЦП должен быть более 256 , а было 512.
Диапазон отклонений от центра ±16%.
В режиме калибровки добавлены цифровые значения АЦП по аналоговым каналам для контроля.
Это работает только на дисплее 3410, так как на 3310 на экран не уберётся.

Успехов!

Coder v1_7 3410_light_bold.zip