Страница 1 из 1

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 14 дек 2015, 10:54
ingwar_85
Задача простая.  Вывести значения аналогового входа масштабируя их в в соответствии с измеряемой величиной.
Вывести данные получилось без особых проблем, однако младший регистр выводимого на дисплей числа постоянно "скачет" очень быстро меняет значение, что воспринимается как мерцание.  Иногда к нему присоединяется предыдущий регистр.. Наверное это нормально. только вот наблюдать такую картину на готовом устройстве не хотелось бы.   Видимо нужно применить какое-то усреднение. Или снизить частоту опроса канала.
Подскажите пожалуйста, как это можно реализовать?

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

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

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 14 дек 2015, 12:39
Amator
ingwar_85 писал(а):Так же возник вопрос, каким образом вывести значения аналогового ввода в виде числа с запятой. Например температура 22.5 С. ?  Насколько я понял,  такое возможно осуществить в настройках блока SConv но только в тех случаях если данные на входе в формате Float.По
Попробуй так, в протеусе не моделировал!

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 14 дек 2015, 14:03
DWD
Amator писал(а):Попробуй так...
Мне кажется, что константе 10 в делителе нужно присвоить тип Float, а не Integer. В этом случае в преобразователе число-строка появится возможность выставить число знаков после запятой.
ingwar_85 писал(а):...младший регистр выводимого на дисплей числа постоянно "скачет" очень быстро меняет значение...
Для "устреднения" нужно поставить RC фильтр на аналоговом входе - измеряемое напряжение подавать через резистор, например, на 10КОм а вход зашунтировать конденсатором на 1...100мкФ.
Чем больше ёмкость конденсатора, тем меньше будут прыгать цифры, но увеличивается время установления значения.

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 14 дек 2015, 15:45
scadapack
Рекомендую применить мой блок пользователя "сглаживающий фильтр"

Вывод данных аналогового ввода на дисплей. Скачут регистры.

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

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

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 15 дек 2015, 17:03
ingwar_85
Огромное спасибо всем кто откликнулся! На ближайшие несколько дней переключаюсь на другой проект, а то он "нужен вчера".   Как только разгребусь испробую предложенные варианты.
Разве что за исключением  RC цепочки. Она уже в схеме имеется. 10к + 100nF.  Каждый раз перепаивать кондеры не хочется. Желательно получить некий универсальный программный инструмент.
Для понимания о с каким девайсом я упражняюсь прикладываю фото.

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 16 дек 2015, 06:27
jonik22sm
Ребят а чем  8072508.ubi открыть?

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 23 дек 2015, 09:26
ingwar_85
jonik22sm писал(а):Ребят а чем  8072508.ubi открыть?
FLProg ) В части окна проекта где расположены блоки есть вкладка "Пользовательские" там есть кнопка загрузить.  Сам только что нашел))

Добавлено (23.12.2015, 09:26)
---------------------------------------------
scadapack писал(а):Рекомендую применить мой блок пользователя "сглаживающий фильтр"
Спасибо! То что нужно!

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 23 дек 2015, 16:40
kulibinsvv
jonik22sm писал(а):Ребят а чем 8072508.ubi открыть?
Учите матчасть!
Блоки пользователя (FBD)
Блок пользователя (LAD)

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 08 июн 2021, 19:18
Vuktor
scadapack писал(а): 14 дек 2015, 15:45 Рекомендую применить мой блок пользователя "сглаживающий фильтр"
Это последняя версия? Блок работает?

Вывод данных аналогового ввода на дисплей. Скачут регистры.

Добавлено: 09 июн 2021, 05:39
scadapack
Вот рабочие блоки