| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Графическая визуализация датчиковой системы |
| Автор: Leviafan 3.4.2009, 13:26 |
| Пишу программку, которая принимает по сети показания сравнительно большого набора акустических датчиков. Разрешение 1 датчика - 4096 различных значений. Минимальное количество датчиков - 900. Датчики объеденены в боксы по 25 штук. Хочется получить графическое представление получаемых показаний. 1. При наведении мышки на представление датчика необходимо отображать во всплывающей подсказке его характеристики, но если каждый датчик представить пользовательским элементом управления, то из-за большого количества датчиков возникают тормоза, причём не только с реакцией на события мыши, но и при отрисовке. Как быть? 2. Для визуализаци показаний хочется использовать цветовую шкалу, причём, в идеале, тождественного разрешения с хорошо просматриваемой системой представления значений. Т.е. хочется отображать все 4096 значений, при этом хочется, чтобы изменения в показаниях на 1-2 пункта были заметны для глаза. Какую траекторию в пространстве RGB (а может каком-то другом, более подходящем) выбрать? Есть ли по этому поводу какие-то общеизвестные рекомендации? 3. Может возникнуть необходимость на небольшие отклонения в одном диапазоне шкалы значений реагировать изменением цвета (яркости/насыщенности) слабо, а в другом - сильно. Как реализовать такое поведение?.. |
| Автор: Leviafan 3.4.2009, 21:27 |
| Хорошая идея, -Mikle-, однако поясни, что ты имеешь ввиду под разницей между двумя соседними показаниями? |
| Автор: -Mikle- 3.4.2009, 23:46 | ||
К примеру с одного датчика идут такие показания: 1003, 1045, 1070, 1020, 1031, 1009, 1009, 1014 и т.д. Разница между двумя соседними показаниями будет такая: +42 (1045-1003), +25 (1070-1045), -50, +11, -22, 0, +5... То есть, мы можем следить за разницей в изменении и соответственно как-то оповещать "смотрящего" об этом. Идея об изменении размера фигурки, при изменении показаний, мне уже чего-то не очень нравится... Вот почему: если показания будут например идти на протяжение долгого периода вниз (от 4000 до 0 с шагом в 1), то невозможно будет постоянно показывать (через изменение размера) что значения падают. Но у меня есть альтернативная идея: показывать изменения через цвет контура фигурки. Берем спектр от красного до зеленого (см.рисунок спектра). Середина у него - это чисто желтый цвет, то есть имеем три точки: красный-желтый-зеленый, которые будут соответствовать -4096 0 +4096 Это означает, что если соседние показания равны - цвет будет желтый, если меньше на 4096 - красный, если больше на 4096 - зеленый. Можно кр. и зел. местами поменять. Если ты уверен, что разница между соседними показаниями в большинстве случаев (не обязательно во всех) будет меньше, чем +4096, то диапазон можно сузить, чтобы увеличить визуальную разницу. Было бы лучше, если бы ты подробнее пояснил где и для каких целей используются аккустические датчики, и для каких целей и с какой задачей они мониторируются пользователем. |
| Автор: Leviafan 7.4.2009, 23:23 |
| Акустические датчики используются для дефектоскопии поверхностей. Устройство-анализатор движется вдоль поверхности, излучая микроимпульс по тику одометра (каждые 5 мм). По обе стороны от излучателя находится пояс датчиковой системы, которая состоит из секторов, секторы - из блоков, блоки - из двух эхо и одного прямого датчика, каждый датчик - из нескольких активных зон. Для обеспечения адекватности получаемых данных излучатели запускаются не одновременно, а в некотором порядке. Снимаемые показания накапливаются в памяти анализатора, формируя микрокадры (срез показаний всех датчиков для одного микроимпульса). При внешнем запросе акустических данных устройство-анализатор формирует кадр, размер которого зависит от пропускной способности канала, количества готовых микрокадров, скорости движения дефектоскопа. Прямые датчики ориентированы на прямой импульс и ловят дефекты по отбрасываемой "тени". Эхо-сенсоры принимают отражённый от дефектов сигнал. Данные одной активной зоны имеют 12-битную разрядность. --> Думаю над визуализацией процесса, прямая задача которой - выявление неполадок в самой датчиковой системе. |
| Автор: -Mikle- 8.4.2009, 08:58 | ||
По каким критериям выявляется неполадка? Т.е. как она определяется и на каких основаниях? |
| Автор: Leviafan 9.4.2009, 18:59 |
| В оперативном режиме, только визуально, по нестандартным отклонениям, посторонним шумам и т.д. Т.е. по искажению картинки, по advanced-анализу некоторых диапазонов показаний датчиков (можно подстроить спектр соответствующим образом, например, гасить низкие и средние частоты, выделяя только нужный спектр). |