Skip to main content

Представлення даних

Основною метою Fledge і плагінів є маніпулювання даними, які передаються системою та представлені кількома способами. У цьому розділі буде представлено формати представлення даних, які використовуються в різних місцях у системі Fledge. Концептуально одиницею даних, яку ми використовуємо, є зчитування. Зчитування відображає стан контрольованого пристрою в певний момент часу та складається з кількох елементів.

НазваОпис
assetНазва активу або пристрою, до якого відносяться дані
timestampМомент часу, коли спостерігаються ці значення
data pointsНабір іменованих значень для даних, що зберігаються для активу

У зчитуванні фактично є дві позначки часу, і вони можуть відрізнятися. Існує user_ts, який є часом, призначеним плагіном для даних читання, і може надходити від самого пристрою та ts. Мітка часу ts встановлюється системою, коли дані зчитуються у Fledge. Якщо плагін не може визначити мітку часу з пристрою, user_ts зазвичай збігається з ts.

Самі точки даних — це набір пар імен і значень, при цьому значення підтримують кілька різних типів даних. Вони будуть описані нижче.

Дані для читання номінально зберігаються та передаються між API за допомогою JSON, однак для зручності доступ до них різними способами в межах різних мов можна використовувати для впровадження компонентів і плагінів Fledge. У JSON читання представлено як JSON DICT, тоді як у C++ Зчитування є класом, як і точка даних. Спосіб представлення різних типів точок даних наведено нижче.

ТипJSONC++Python
ЦілийAn integerAn intAn integer
З плаваючею точкоюA floating point valueA doubleA floating point
ЛогічнийA string either "true" or "false"A boolA boolean
РядокA stringA std::string pointerA string
Список чиселAn array of floating point valuesA std::vector<double>A list of floating point values
Дворозмірний список чиселA list of lists of floating point valuesA std::vector of std::vector<double> pointersA list of lists of floating point values
Буфер данихA base64 encoded string with a headerA Databuffer classA 1 dimensional numpy array of values
ЗображенняA base64 encoded string with a headerA DPImage classA 2 dimensional numpy array of pixels. In the case of RGB images each pixels is an array