Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1
  • 2
  • 3

ТЕМА: ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 26 янв 2017 23:17 #1

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
За основу взята разработка Soir
Необходимо разделить устройство на два блока: TX и RX.
Передатчик обрабатывает сигнал и передает его приемнику. Приемник принимает сигнал и выводит индикацию на семисегментный трех разрядный индикатор. Все установки и настройки ведутся в приемнике.
Приемнопередающие модули nRF24L01+

Прошу помощи в составлении схемы и работоспособной модели. Естественно к Soir огромная просьба с программным обеспечением приемника и передатчика.

Структурно вижу себе такое устройство.



Передающая часть (TX).
Питание 12,8 – 14 Вольт.
Значение показания датчика уровня (Data) относительно шины GND от MIN – 3,7 V, до MAX – 2,3 V
Пробуждение МК для опроса датчика и передачи данных в приемную часть 1 раз в 120 секунд. Опрос датчика ведется в течении 3 секунд.
Схема передающей части.
Добавлен резистивный делитель. По достижению напрядения питания 12,8 вольт, устройство начинает работу. В противном случае - глубокий сон.



Приемная часть (RX).
Получает сигнал от передатчика, анализирует его, обрабатывает и выводит среднее значение на 4-х разрядный дисплей.
1. Функции.
– измерение напряжения бортовой сети. Шкала 0,0 ÷ 20,0V. В младшем разряде символ U.
– измерение уровня топлива в баке. Диапазон 0,0 ÷ 99,0 л, в младшем разряде символ L. Три порога срабатывания сигнализации по минимальному уровню. При срабатывании первого порога, каждые 10 сек происходит одно мигание светодиодом. При срабатывании второго порога - 2 мигания каждые 10 сек. При срабатывании третьего - постоянные не прекращающиеся мигания.
– выбор индикации ручной кнопками PLUS/MINUS или автоматическая смена с выбранным периодом.
– раздельная регулировка яркости индикатора для ночного и дневного режимов. (Ночной режим определяется значением фоторезистора)
– использование энергонезависимой памяти микроконтроллера для сохранения настроек при отключении питания.

2. Настройка.
2.1. При включении питания прибор в основном режиме.
Из основного режима кнопками PLUS/MINUS можно по очереди менять выводимую информацию.
2.2. Нажатием на кнопку SET производится вход в режим настроек и выбор параметра в пределах одной страницы меню. Переключение страниц меню кнопками PLUS/MINUS при отображение на индикаторе названия страницы меню.
Меню SET:
– настраиваемый уровень в баке. Диапазон установки 0,0 ÷ 99,0, шаг 1 литр. В младшем разряде символ L;
– текущее измеренное напряжение с датчика уровня, В. В младшем разряде символ U;
– устанавливаемое напряжение с датчика уровня, соответствующее выбранному уровню. Диапазон установки 0 ÷ 5 В. В младшем разряде символ U.
Группа FUEL:
– коэффициент усреднения данных с датчика уровня. Диапазон установки 1 ÷ 99. В младшем разряде символ n.
– прямая или обратная зависимость напряжение-уровень. В старших разрядах символы In, в младшем 1, если зависимость обратная, 0 если прямая.
– максимальная емкость бака. Диапазон установки 0 ÷ 99 л. В старшем разряде символ C, в младшем символ L.
– первый порог срабатывания сигнализации минимального уровня. Диапазон установки 0 ÷ 99 л. В младшем разряде символ ∟. По умолчанию 7.
– второй порог срабатывания сигнализации минимального уровня. Диапазон установки 0 ÷ 99 л. В младшем разряде символ L. По умолчанию 5.
– третий порог срабатывания сигнализации минимального уровня. Диапазон установки 0 ÷ 99 л. В младшем разряде символ E. По умолчанию 3.
Группа diSP:
– выбор режима индикации. В старшем разряде символ A. Если выбрана автоматическая смена индикации, в младших разрядах символы On. Если ручной выбор – OF.
– выбор отображения температуры. В старшем разряде символ t. В младших On, если вывод разрешен, OF – если запрещен.
– выбор отображения уровня в баке. В старшем разряде символ F. В младших On, если вывод разрешен, OF – если запрещен.
– выбор отображения напряжения бортовой сети. В старшем разряде символ U. В младших On, если вывод разрешен, OF – если запрещен.
– период индикации для автоматического режима. В старшем разряде символ P. Диапазон установки 1÷99 сек.
– Lnxx – яркость индикатора в ночном режиме. Диапазон установки 0÷99.
– Ldxx – яркость индикатора в дневном режиме. Диапазон установки 0÷99.
2.3. Устанавливаемый параметр мигает.
2.4. Удержанием кнопок PLUS/MINUS производится ускоренная установка параметра.
2.5. Через 10 сек от последнего нажатия на кнопки новые настройки запишутся в энергонезависимую память МК.
Последнее редактирование: 07 июнь 2017 16:04 от Vakula.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 27 янв 2017 14:43 #2

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Igr44 пишет:
Какой смысл делать безпроводную передачу данных если проще
Частично занимаюсь установкой газовой аппаратуры на авто. И авто порой не ланосы. А то, что идет в комплекте, указатель, что в салон, что на баке, просто убожище. А люди хотят видеть, сколько осталось. Причем, нужно, что бы все это шло по беспроводному интерфейсу.
Это не от того, что мне делать нечего. Это необходимость.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 янв 2017 20:49 #3

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Vakula пишет:
что бы передатчик потреблял как можно меньше энергии.
Это зависит от того, насколько часто необходимо обновлять показания.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 янв 2017 20:57 #4

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
Это зависит от того, насколько часто необходимо обновлять показания.
Да, походу немного вникаю в суть. Так же зависит от частоты работы. Думаю, тут можно выбирать не столь быстрые опросы. Да и частотой можно пренебречь. Без фанатизма конечно.
К примеру, показания уровня топлива (механические) в авто, довольно таки вяло показывают. В противном случае, стрелка прыгала бы, як скажэна.

Проект заинтриговал все больше и больше. Уже продумываю над дальним управлением несколькими каналами. Но пока вот это, что я описал.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 янв 2017 08:51 #5

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Vakula пишет:
можно выбирать не столь быстрые опросы. Да и частотой можно пренебречь. Без фанатизма конечно.
Вы определяйтесь с цифрами, я не могу написать в программе "опрос без фанатизма". Поэтому за Вами подробное ТЗ с конкретными цифрами. Пока что НИ ОДНОЙ цифры и подробной информации я не увидел. Ни касательно измерений и передачи данных, ни по работе приемной части, ни по индикации, ни по настройкам...
Поэтому за реализацию проекта пока не берусь.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 янв 2017 09:38 #6

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
Поэтому за Вами подробное ТЗ с конкретными цифрами.
По приемной части данного проекта, это Ваша разработка (прикреплено) с добавлением модуля nRF. Опрос здесь по умолчанию. Питание проводное.
По передающей части важно потребление, поэтому опрос датчика 20 мс. Но надо эксперимнтировать.
По поводу приемно-передающей части немного затрудняюсь ответить, потому как я вижу в модулях двусторонние приемо-передатчики. Но ими надо управлять как то.
Тут бы наводящие вопросы?
Вложения:
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 янв 2017 16:18 #7

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Vakula пишет:
По приемной части данного проекта, это Ваша разработка (прикреплено) с добавлением модуля nRF.
Но Вы рисуете другие схемы. Даже по числу разрядов индикатора у Вас то три, то четыре... На Ваших схемах нет остальной периферии, как в проекте, на который Вы ссылаетесь.
Наверно нужно рисовать новую схему с учетом всех новшеств и изменений.

Vakula пишет:
Опрос здесь по умолчанию.
Опрос чего? И что означает "по умолчанию"? Это сколько?

Vakula пишет:
По передающей части важно потребление, поэтому опрос датчика 20 мс.
Датчика уровня? Если каждые 20 мсек опрашивать, то микроконтроллеру особо и спать некогда. А отправлять как часто?

Vakula пишет:
Тут бы наводящие вопросы?
Вот какие-то задал. Но я не буду про каждый параметр выпытывать. Опишите работу прибора и в ней все укажите. Если это будет проект, близкий к выложенному - возьмите описание оттуда, внесите изменения (желательно выделить цветом, так проще будет ориентироваться). Добавьте новшества. По новшествам очень подробно. Например, что за датчик уровня, пределы изменения напряжения, зависимость напряжение-уровень. Опрос, отправка...
Администратор запретил публиковать записи гостям.
Спасибо сказали: Vakula

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 24 апр 2017 16:02 #8

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Начал проект. Пока только приемная сторона, схема. Посмотрите, все ли на месте. Прошивка пока еще не все умеет, буду дорабатывать.

Для передающей стороны будет отдельный проект.
Вложения:
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 24 апр 2017 20:21 #9

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
Посмотрите, все ли на месте.
Да, что нужно все есть. Тут то и много не нужно. Главное подружить приемный и передающий модули.
Думаю проектировать плату с разъемом программирования, что бы иметь возможность отладки в железе.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 24 апр 2017 21:11 #10

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Возможность перепрошивки должна быть обязательно (и на передатчике, и на приемнике). Не уверен, что с первого раза все заработает так, как нужно.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 24 апр 2017 21:16 #11

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Ну тут да. =Потому и проектировать плату буду, как отладочную. Все таки не простой проект.Больше всего переживаю за передатчик.
А именно: правильный ли микроконтроллер выбрал (его и в наличии то нет); режим энергосбережения.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 14:09 #12

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Продолжил прошивку, но к сожалению, Proteus некорректно симулирует ATTINY26 в части энергосбережения. В железе проверять не могу. Поэтому, когда у Вас будет этот МК, тогда продолжу.

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

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 20:12 #13

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
В проекте я предлагал ATTINY24. Или она не устраивает? Хотя нет не той, не той. Но это дело времени. Я вообще то хотел бы использовать Attiny13, но вижу ног маловато.
По поводу схемы тут, как бы не без помощи извне. Тем более, если так требовательно к этой части проекта.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 20:39 #14

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Vakula пишет:
В проекте я предлагал ATTINY24. Или она не устраивает?
Устраивает, это я ошибся в написании.
Vakula пишет:
Хотя нет не той, не той
Тогда чем обоснован выбор?
Vakula пишет:
Я вообще то хотел бы использовать Attiny13, но вижу ног маловато.
У меня есть почти такой проект на ATTINY13. Но, почти... в нем цифровой вход от датчика. Можно и тут как-то выкручивать, использовать Reset, например, программно тоже есть вариант, но или памяти не хватит или еще чего...

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

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 21:32 #15

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
У меня есть почти такой проект на ATTINY13.
Меня Reset совершенно не пугает. Правда в железе не удобно чуток будет прошивки проверять. Но можно пробовать на DIP корпусе.
Если почти такой же проект есть и возможно на тринадцатой тиньке, я был бы просто счастлив.
Из потребителей только модуль и датчик активный. То мне надо определить и его потребление. А может и питание ему "сонливое" сделать.

Сегодня пока работу работал подумал: хорошо, что бы приемная часть выдавала тревогу от низкого заряда в передатчике. Такое возможно?
В принципе, меня устроила бы и ATMEGA8, но у неё потребление довольно таки высокое. Или мне кажется? Это, как вариант.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 21:51 #16

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Vakula пишет:
Меня Reset совершенно не пугает.
Мне нужно еще посмотреть по объему памяти.
Vakula пишет:
приемная часть выдавала тревогу от низкого заряда в передатчике. Такое возможно?
Да, я об этом писал в предыдущем сообщении.
Vakula пишет:
В принципе, меня устроила бы и ATMEGA8, но у неё потребление довольно таки высокое.
Больше, чем у ATTINY. У ATTINY спящем режиме <0,1мкА, а у ATMEGA 0,5мкА.. Так пишут в даташит, проверить такие токи у меня нечем.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 29 апр 2017 22:26 #17

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
Больше, чем у ATTINY. У ATTINY спящем режиме <0,1мкА, а у ATMEGA 0,5мкА.
Как вариант еще - ATTINY2313.
Последнее редактирование: 29 апр 2017 23:18 от Vakula.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 05:59 #18

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
С ATTINY2313 было бы проще - есть в наличии. Но она не умеет измерять напряжение.
Последнее редактирование: 30 апр 2017 06:03 от Soir.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 07:37 #19

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
она не умеет измерять напряжение.
Н-да. А тут как раз датчик с условием - Значение показания датчика уровня (Data) относительно шины GND от MIN – 3,7 V, до MAX – 2,3 V :S
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 07:51 #20

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Значит питание должно быть +5V. А напряжение питания модуля nRF24L01 - +3,3V. Почему и спрашиваю полную схему...

Что касается выбора МК, то ATTINY24 подойдет. Сложность только в том, что не смогу сам отладить, если возникнут проблемы.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 07:55 #21

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Soir пишет:
ATTINY24 подойдет. Сложность только в том, что не смогу сам отладить, если возникнут проблемы.
После выходных начну проектировать в железе.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 08:56 #22

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Спроектируйте сначала на бумаге.
Затем на макете.
А потому уже в железе.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 10:17 #23

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
Для меня макет и железо - одно и то же. На бумаге ясно дело.
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 21:35 #24

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 5752
  • Спасибо получено: 2013
Провел серию экспериментов по работе модуля nRF24L01. Уместил в ATTINY13 с измерением уровня топлива. На макете работает.

Но потребление всего устройства большое - 1,2-1,5 мА. Сам модуль включается редко потребляет мало, большую часть времени он не активен. Больше всего потребляет входной делитель измерителя уровня (напряжения) - больше миллиампера. Номиналы делителя можно немного изменить, но проблему это не решит. Да и не факт, что их можно изменить. Каким образом устроен датчик уровня? Он откуда питается? Если у него свое питание, тогда картина может улучшиться... Но, если у него есть свое питание, тогда нет смысла городить аккумулятор или батарейки и гоняться за микроамперами.

Без делителя в режиме ожидания ток потребления 15-20 мкА. Тоже много, но это я найду куда уходит, должно быть менее 1 мкА.

Это без учета собственного потребления источника питания (стабилизатора +3,6V). Тут есть разные варианты, зависящие от того чем и как Вы будете все это питать. Пока не нарисуете, трудно сказать, но тоже добавится...
Администратор запретил публиковать записи гостям.

ПРОЕКТ. Измеритель уровня топлива (газа), беспроводной. 30 апр 2017 22:01 #25

  • Vakula
  • Vakula аватар
  • Не в сети
  • Moderator
  • ich bin Ukrainian
  • Сообщений: 903
  • Спасибо получено: 103
По поводу датчика, то все больше и больше склоняюсь к простому, резистивному. Но у него малая дискретность.
Этот, питается от общей схемы (должен, во всяком случае). Если потребление его будет предельно низкое, то его можно оставить. Как он устроен? ХЗ. Залито все герметиком. Но надо будет разобрать, что бы до истины добраться.
Питаться вся схема скорее всего будет через линейный стабилизатор на 3,3 В, сегодня смотрел какие, но так и не определился.

Если делитель на себя берет много, то скорее всего надо будет отказаться от опроса состояния батарейки. Конечно не желательно, но...
Администратор запретил публиковать записи гостям.
  • Страница:
  • 1
  • 2
  • 3
Модераторы: wolf2000, Vakula, Айнцвайдрайченко