FLProg
Вход на сайт
Логин:
Пароль:
Мы в VK
Поиск
Статистика


Яндекс.Метрика
Воскресенье, 04.12.2016, 17:16
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Вывод данных аналогового ввода на дисплей. Скачут регистры. (Плата самоделка (на базе Mega2560) FLProg 10.1.2)
Вывод данных аналогового ввода на дисплей. Скачут регистры.
ingwar_85
Дата: Понедельник, 14.12.2015, 10:54 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 14
Награды: 0
Репутация: 0
Статус: Offline
Задача простая.  Вывести значения аналогового входа масштабируя их в в соответствии с измеряемой величиной.
Вывести данные получилось без особых проблем, однако младший регистр выводимого на дисплей числа постоянно "скачет" очень быстро меняет значение, что воспринимается как мерцание.  Иногда к нему присоединяется предыдущий регистр.. Наверное это нормально. только вот наблюдать такую картину на готовом устройстве не хотелось бы.   Видимо нужно применить какое-то усреднение. Или снизить частоту опроса канала.
Подскажите пожалуйста, как это можно реализовать?

Так же возник вопрос, каким образом вывести значения аналогового ввода в виде числа с запятой. Например температура 22.5 С. ?  Насколько я понял,  такое возможно осуществить в настройках блока SConv но только в тех случаях если данные на входе в формате Float.

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


Сообщение отредактировал ingwar_85 - Понедельник, 14.12.2015, 10:56
 
Amator Дата: Понедельник, 14.12.2015, 12:39 | Сообщение # 2
Рядовой
Группа: Проверенные
Сообщений: 19
Награды: 1
Репутация: 0
Статус: Offline
Цитата ingwar_85 ()
Так же возник вопрос, каким образом вывести значения аналогового ввода в виде числа с запятой. Например температура 22.5 С. ?  Насколько я понял,  такое возможно осуществить в настройках блока SConv но только в тех случаях если данные на входе в формате Float.По
Попробуй так, в протеусе не моделировал!
Прикрепления: 1111.flp(73Kb)
 
DWD Дата: Понедельник, 14.12.2015, 14:03 | Сообщение # 3
Подполковник
Группа: Проверенные
Сообщений: 279
Награды: 12
Репутация: 5
Статус: Offline
Цитата Amator ()
Попробуй так...

Мне кажется, что константе 10 в делителе нужно присвоить тип Float, а не Integer. В этом случае в преобразователе число-строка появится возможность выставить число знаков после запятой.

Цитата ingwar_85 ()
...младший регистр выводимого на дисплей числа постоянно "скачет" очень быстро меняет значение...

Для "устреднения" нужно поставить RC фильтр на аналоговом входе - измеряемое напряжение подавать через резистор, например, на 10КОм а вход зашунтировать конденсатором на 1...100мкФ.
Чем больше ёмкость конденсатора, тем меньше будут прыгать цифры, но увеличивается время установления значения.




Сообщение отредактировал DWD - Понедельник, 14.12.2015, 14:06
 
scadapack Дата: Понедельник, 14.12.2015, 15:45 | Сообщение # 4
Лейтенант
Группа: Проверенные
Сообщений: 60
Награды: 2
Репутация: 5
Статус: Offline
Рекомендую применить мой блок пользователя "сглаживающий фильтр"
Прикрепления: 8072508.ubi(78Kb)
 
alges Дата: Вторник, 15.12.2015, 00:09 | Сообщение # 5
Рядовой
Группа: Проверенные
Сообщений: 20
Награды: 1
Репутация: 0
Статус: Offline
Я тоже рекомендую его блок - очень уж он хорош
Я его везде использую - только там есть заморочки с типом данных - но методом проб и ошибок все решается!

Добавлено (15.12.2015, 00:09)
---------------------------------------------
Я тоже рекомендую его блок - очень уж он хорош
Я его везде использую - только там есть заморочки с типом данных - но методом проб и ошибок все решается!

 
ingwar_85 Дата: Вторник, 15.12.2015, 17:03 | Сообщение # 6
Рядовой
Группа: Проверенные
Сообщений: 14
Награды: 0
Репутация: 0
Статус: Offline
Огромное спасибо всем кто откликнулся! На ближайшие несколько дней переключаюсь на другой проект, а то он "нужен вчера".   Как только разгребусь испробую предложенные варианты.
Разве что за исключением  RC цепочки. Она уже в схеме имеется. 10к + 100nF.  Каждый раз перепаивать кондеры не хочется. Желательно получить некий универсальный программный инструмент.
Для понимания о с каким девайсом я упражняюсь прикладываю фото.
Прикрепления: 2872495.jpg(198Kb) · 4290647.jpg(131Kb)
 
jonik22sm Дата: Среда, 16.12.2015, 06:27 | Сообщение # 7
Лейтенант
Группа: Проверенные
Сообщений: 63
Награды: 0
Репутация: 1
Статус: Offline
Ребят а чем  8072508.ubi открыть?
 
ingwar_85 Дата: Среда, 23.12.2015, 09:26 | Сообщение # 8
Рядовой
Группа: Проверенные
Сообщений: 14
Награды: 0
Репутация: 0
Статус: Offline
Цитата jonik22sm ()
Ребят а чем  8072508.ubi открыть?
FLProg ) В части окна проекта где расположены блоки есть вкладка "Пользовательские" там есть кнопка загрузить.  Сам только что нашел))

Добавлено (23.12.2015, 09:26)
---------------------------------------------

Цитата scadapack ()
Рекомендую применить мой блок пользователя "сглаживающий фильтр"

Спасибо! То что нужно!
 
kulibinsvv Дата: Среда, 23.12.2015, 16:40 | Сообщение # 9
Рядовой
Группа: Проверенные
Сообщений: 20
Награды: 1
Репутация: 0
Статус: Offline
Цитата jonik22sm ()
Ребят а чем 8072508.ubi открыть?
Учите матчасть!
Блоки пользователя (FBD)
Блок пользователя (LAD)
 
Форум » Основной » Спросить у знатоков » Вывод данных аналогового ввода на дисплей. Скачут регистры. (Плата самоделка (на базе Mega2560) FLProg 10.1.2)
Страница 1 из 11
Поиск:

FLProg © 2016
Яндекс.Метрика