Реализовать отображение данных с физического устройства. C# WPF

Цена договорная
13 ноября 2024, 12:43 • 5 откликов • 33 просмотра
Реализовать отображение данных с физического устройства (анемометра) средствами С# WPF

На входе - анемометр с tcp соединением, частота получения данных от 4 до 20 в секунду, передается строка формата Q,-000.06,-000.04,-000.03,M,00,2E
Где -000.06 значение по осиX
-000.04 значение по осиY
-000.03 значение по осиZ

Количество самих анемометров тоже может варьироваться от 1 до 7.

Что нужно сделать:
  • Реализовать пользовательский интерфейс добавления и подключения анемометра и отображение информации полученное с анемометра.
  • Реализовать пользовательский интерфейс добавления графика и отображения информации привязанного/привязанных к нему анемометра/анемометров.
  • Числовое отображения данных с анемометра.
  • 3D анимация направления в зависимости от значений.
  • Сохранение изменений в настройки каждого анемометра и графика в xml файл.
  • Загрузка настроек каждого анемометра и графика из xml файла.
  • Отслеживание статуса соединения, переподключение при потере соединения.
Данные закрепленные за анемометром:
  • Ip адрес
  • Port
  • X – значение полученное по оси X
  • Y - значение полученное по оси Y
  • Z - значение полученное по оси Z
  • W – вектор, вычисленный из X,Y,Z
  • T – вектор, вычисленный X,Z
  • PosX – позиция 3D элемента на форме по оси X
  • PosY – позиция 3D элемента на форме по оси Y
  • InfoX - позиция информационного элемента на форме по оси X
  • InfoY - позиция информационного элемента на форме по оси Y
Данные закрепленные за графиком:
  • Анемометр один или несколько для отображения
  • Данные для вывода W или T, если анемометров несколько, то нужно выводить среднее значение
  • PosX – позиция графика на форме по оси X
  • PosY – позиция графика на форме по оси Y
  • MaxY – граница графика сверху
  • MinY – граница графика снизу
  • Time – отображаемое время по оси X в минутах
  • Width – высота графика в пикселях
  • Height – ширина графика в пикселях
  • AlarmMaxY – линия визуального предела сверху
  • AlarmMinY – линия визуального предела снизу
Приблизительные схемы интерфейса в файлах.


Файлы