Преобразование данных «Time» из формата Regul в формат Labview»

Простейшие вопросы в области инженерной разработки
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Сообщение удалено, так по другому все.
Если можно напишу позже
Последний раз редактировалось JohnChaban 04 апр 2022, 16:40, всего редактировалось 3 раза.
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

Сам не работал с таким, но общие принципы:
Для контроллера пишется софт. Если вы его будете писать, то вы должны знать в каком формате время храните, и вообще, как передаёте.
Если это делает кто-то другой, то вопрос о формате к нему.

Ну, или если это что-то готовое-универсальное, то опять же вопросы к документации
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Всем привет еще раз
На картинке приклепленной к сообшению есть строка "Time Regul".
Её необходимо преобразовать в строку вида "день-месяц-год часы:минуты:секунды и милисекунды".
Как можно это сделать?
Спасибо за ответы
Вложения
Преобразовать строку Time Regul в необходимую строку
Преобразовать строку Time Regul в необходимую строку
Time Regul v1.1.vi
Файл VI
(5.78 КБ) 44 скачивания
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

Чтобы это дело преобразовать, надо знать, как оно там зашифровано.
Возможно (но не факт), в посылке число 4603238836986390, что это такое я не знаю.
Время можно передавать разными путями:
- число /(милли)секунд с какого-то момента (есть :labview: точка отсчёта, есть Юникс, есть Excell, наверняка ещё много других)
- прям строка в каком-то формате
- составная последовательность, где каждый байт или из набор отвечает за какую-то часть даты.
Как это у вас запаковано, я не знаю. На количество чего-то "с момента Х" это не похоже, слишком много даже для миллисекунд.
time.PNG
time.PNG (3.34 КБ) 1968 просмотров
Что за система/программа в контроллере?
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Контроллер регул,
программа пишется на Epsilon.
А можно попростить код как вы преобразовали?
Надо чтобы получилось на выходе дата-месяц-год часы:минуты:секунды.милисекунды.
Каким прибором ввиртуальным вы пользовались?
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

JohnChaban писал(а): 04 апр 2022, 20:27 А можно попростить код как вы преобразовали?
Нет там никакого кода, просто правой кнопкой на строку - отобразить в hex
JohnChaban писал(а): 04 апр 2022, 20:27 Надо чтобы получилось на выходе дата-месяц-год часы:минуты:секунды.милисекунды.
Чтобы так получилось, надо понимать, как оно туда "упаковано", я этого не понимаю
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Пытаюсь сделать как вот тут:
https://reddeveloper.ru/questions/labvi ... scii-aO6Eb
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

JohnChaban писал(а): 05 апр 2022, 09:57 Пытаюсь сделать как вот тут:
https://reddeveloper.ru/questions/labvi ... scii-aO6Eb
Что это за дичь? Прочитал меньше половины, там все функции не по назначению используются.
Если уж прям хочется, то вот элементарное преобразование. Только я не понимаю, как это поможет увидеть время?
Снимок.PNG
Аватара пользователя
Vasiliy Baev

Activity Gold Bronze
leader
leader
Сообщения: 545
Зарегистрирован: 31 окт 2011, 09:02
Награды: 4
Версия LabVIEW: 2019
Откуда: Санкт-Петербург
Благодарил (а): 9 раз
Поблагодарили: 10 раз
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Vasiliy Baev »

Добрый день!
Попробуйте наладить коммуникацию с ПЛК через OPC.
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Мои исходные данные это первая строка он приходят в Labview по UDP (строка называется "Исходные данные с контроллераь Regul").
Ниже "Time Regul" строка это теже данные только размером 8 байт
Вот как их в чиатемый формат перевести.
В Labview аналогичное преобразование:
дата/время преобразуются в DBL, DBL предаётся по UDP, принимается String, String преобразуются в DBL, DBL в дата/время.
Собрал эммитатор передачи по UDP.
Не могу понять почему длина строки в приемнике равна 0
Вложения
10.jpg
Time Regul v1.1.vi
(5.78 КБ) 46 скачиваний
2017.jpg
udp_resvd.vi
(14.53 КБ) 39 скачиваний
udp_resvd1.vi
(14.53 КБ) 40 скачиваний
udp_sendet.vi
(8.06 КБ) 40 скачиваний
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

JohnChaban писал(а): 06 апр 2022, 11:42 Не могу понять почему длина строки в приемнике равна 0
Вы вообще пытаетесь читать, что вам пишут?
Длина строки НЕ ноль.
Искать число в наборе символов БЕСПОЛЕЗНО
Искать время в нулевом смещении ещё более БЕСПОЛЕЗНО
t.PNG
t.PNG (4.24 КБ) 1785 просмотров
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Разобрались чучуть:
Ситуация такая в контроллере Regul формируется строка (Дата и время) они переводятся в формат Ulint, Ulint передается в виде строки по UDP в программу Labview.
Необходимо раскрутить формат Ulint в программе labview.
В программе контроллера есть ULINT_TO_TIME
В Labview программу приходит в виде строки первые 8 байт это дата_время
Ulint- двойное целое без знака
Да я точно узнал что программа пишется Epsilon LD
Вложения
ttt3.jpg
Исходная строка от Regul первые 8 байт это время
Исходная строка от Regul первые 8 байт это время
sptk1.jpg (36.28 КБ) 1721 просмотр
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

Если бы там реально была строка, вы бы видели дату, а не бессмысленный набор символов.

Вообще, что это за абсурд?
Ситуация такая в контроллере Regul формируется строка (Дата и время) они переводятся в формат Ulint, Ulint передается в виде строки по UDP в программу Labview.
сформировать строку, конвертировать её в число, а потом передать число как строку. Зачем? Если сделали строку, так и отправляйте её.
Дальше, ддммггг... - там штук 19 символов, т.е 19байт. Как вы умудряетесь запихать их в 8 байт Ulint?
Исходники этого хитрого кода у вас есть?
Аватара пользователя
JohnChaban
leader
leader
Сообщения: 669
Зарегистрирован: 18 фев 2010, 13:26
Версия LabVIEW: 2015,2016
Откуда: Город Сосновый Бор Ленинградская Область
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение JohnChaban »

Исходники кода написаны на Epsilon. Оттуда приходит строка "аброкадабра".
Вяснилось что кода там время формирует модуль контроллера железка
Artem.spb

Activity Автор
professor
professor
Сообщения: 3402
Зарегистрирован: 31 июл 2011, 23:05
Награды: 2
Версия LabVIEW: 12-18
Благодарил (а): 49 раз
Поблагодарили: 172 раза
Контактная информация:

Re: Преобразование данных «Time» из формата Regul в формат Labview»

Сообщение Artem.spb »

JohnChaban писал(а): 07 апр 2022, 15:34 Вяснилось что кода там время формирует модуль контроллера железка
Видимо, точно так же вы и строку "даты" формируете.
Я вот ничего не понял из этой фразы.
А "Исходники кода написаны на Epsilon" практически ничего не даёт.
Это примерно так же как сказать, "этот файл создаёт программа написанная на паскале, помогите его прочитать"
Ответить
  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Для чайников»