Реализовать отображение данных с физического устройства. C# WPF
Реализовать отображение данных с физического устройства (анемометра) средствами С# 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.
Что нужно сделать:
На входе - анемометр с 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 – линия визуального предела снизу