Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » ТЕХНИЧЕСКАЯ ПОДДЕРЖКА / TECHNICAL SUPPORT TRACE MODE 6 » Редактор проекта TRACE MODE 6 / » Отобразить дату и время

   
Автор / Author Тема / Topic: Отобразить дату и время
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Хотелось бы более гибко отображать время и дату.
Т.е. управлять отображением через настройки проекта или МРВ.

Вообщем хочу написать форматированную строку для отображения времени в ГЭ "Текст" или ГЭ "Дата и время"
Если задавать формат отображения времени через настройки ОС, то это может привести к некорректному отображению в других программах, что не желательно.

В настройках узла нашел подобное поле для задания формата, но огорчился потому что оно было только для отчета тревог.

И было бы совсем чудесно, если для каждого ГЭ можно было бы задавать такую строку. Ну хотя бы через настройки канала типа TIME, к которому привязан через аргумент ГЭ.

Наверное я прошу невозможного ? [Улыбка / Smile]

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
А не проще сделать программку на ST, в которой самому формировать строку нужного вам вида, а потом уже эту строку отображать на экране оператору? [Улыбка / Smile]
IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Ну как бы не проще [Улыбка / Smile]
Это же делать надо.
Да еще там что-то с отображением строк не более 39 символов...

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Что же у вас за формат даты такой, что 39 символов не хватает? [Усмешка / Big Grin]
IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вводить произвольные форматы отображения даты-времени не считаем целесообразным.
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Сейчас возникла проблема, что не читаются значения с ОПС сервера. Не могу понять.
Переменная на ОПС типа "date". В тестовом клиенте отображает дату и время правильно.
В Трэйс Моде
Создан ОПС-компонент, привязанный к ОПС-переменной.
Далее создан канал типа "Time" к нему привязана компонента.
Далее Аргумент типа "Date_and_time"
И ГЭ "Текст" с форматом вывода "по умолчанию.

Не работает!! Нужно что-то еще?

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
quote:
Отправитель / Originally posted by AdAstra Technical Support:
Вводить произвольные форматы отображения даты-времени не считаем целесообразным.

[Улыбка / Smile] Хорошо, вам виднее как покупателей привлекать.

Но вот хотя бы специализированный ГЭ "Дата и время" сделайте, чтобы к настройкам ОС привязывался. А то он вообще деревянный, формат никак не меняет.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
1. Формат представления реального значения канала TIME включает в себя как вариант "Дата и время ОС" в формате ОС.
Это можно увидеть в окне "Просмотр компонентов" профайлера.

2. Надо разделить проблему: прием данных из OPC-сервера и их отображение.
Если OPC-сервер указывает клиенту на тип передаваемых данных "Дата/время", то они принимаются и преобразуются в LONG.
В окне "Просмотр компонентов" профайлера можно увидеть это число в атрибуте ВХОД канала TIME.
Там же можно увидеть отображение РЕАЛЬНОГО значения в формате OC.
Если данные принимаются правильно и передаются на экран через аргумент DANE&TIME, то и отображаться они должны правильно.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Сделал скриншоты
1. канал соответствует ОПС-переменной с датой 01.01.1970 т.е. "0" в формате Виндоус
 -
2. канал соответствует ОПС-переменной с сегодняшней датой и временем
 -

Прикинул на калькуляторе. Значение на входе канала отсчитывается от 1900 года, как в прошлом веке под досом [Улыбка / Smile]

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Во всех приложениях, работающих с системным временем, время измеряется числом секунд с 01.01.1970 в формате LONG.
""0" в формате Виндоус" был бы именно "0", а получено от OPC-сервера 25569. И это соответствует по Гринвичу 01.01.1970 7:06:09, а по Москве 01.01.1970 10:06:09.
Во втором случае от OPC-сервера принято число 40200, что опять-таки соответствует 01.01.1970 14:10:00 по Москве.
Отсюда ясно, что OPC-сервер передает время в каком-то другом формате. В каком именно, можно узнать только у него.
Вы, похоже, правы. OPC-сервер передает только дату в днях с 1900 года.
Даже в древнем DOSe дата/время тоже исчилялось в секундах, хотя и с другого начала.

Придется Вам либо OPC-сервере приводиться эту переменную к стандартному формату, либо в Trace Mode 6 программным путем конвертировать до нужного вида.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Вообщем нужен третий OPC клиент, чтобы разрешить вопрос. К вечеру что-нибудь сделаю.

А пока отвязал канал от ОПС и посмотрел его в профайлере. Вот скриншот.
 -
Если записать в канал какое-то число, то все становится нормально от 1970 года. Т.е. при инициализации какая-то заморочка.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Действительно, значение "0" канал TIME не обрабатывает.
Это, однако, никак не влияет на отработку любых целочисленных значений больше 0.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
И так...
Протестировал ОПС-сервер с третьим клиентом.
Работает все отлично. Выводится дата, вводится дата.
Все изменения также наблюдаются и в первом ОПС-клиенте.
Контроллер используется Beckhoff
К нему фирменный ОПС-сервер Beckhoff
1 клиент: Beckhoff OPC test client
2 клиент: Trace Mode 6 - работает не корректно
3 клиент: MasterScada 3.1 - работает корректно.

Готов протестировать на любом другом клиенте, который вы предложите.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Если используемый Вами OPC-сервер и OPC-клиент Beckhoff могут работать в демо-режиме без связи с контроллерами, пришлите нам, пожалуйста, OPC-сервер и OPC-клиент вместе с конфигурацией и Вашим проектом, на котором описанную Вами ситуацию можно воспроизвести у нас.
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Чтобы подготовить файлы проекта, мне потребуется время. Тем более симуляция ОПС-сервера без контроллера затруднительна для меня. Лучше это делать через тех поддержку Beckhoff.
Дистрибутив сервера можно скачать на сайте Beckhoff.ru
Клиент внутри дистрибутива с сервером.

Ключ к серверу - "DEMO" открывает триал версию на 30 дней.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Уважаемая поддержка.
Наметились ли какие-то сдвиги в решении этой проблемы?

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Выяснилось, что OPC-сервер Beckhoff возвращает переменные с типами данных ДАТА и ДАТА_И_ВРЕМЯ в виде строк. Trace Mode 6 не поддерживает строкового OPC-интерфейса.

Пока предлагаем процедурой трансляции преобразовать получаемое от OPC-сервера число в дату.

Например, так.

PROGRAM
VAR_INPUT ARG_000 : UDINT; END_VAR
VAR_OUTPUT ARG_001 : UDINT; END_VAR
VAR_INPUT ARG_002 : UDINT; END_VAR

ARG_001 = (ARG_000 - ARG_002) * 86400;

Здесь
ARG_001 - РЕАЛЬНОЕ значение канала TIME, привязанного к OPC-источнику,
ARG_000 - его ВХОДНОЕ значение,
ARG_002 - количество дней с 01.01.1900 до 01.01.1970.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Наверное нужно сделать на одну дату минимум два канала типа TIME.
входное значение ОПС и обработанное значение для экрана.
Иначе получится, что два разных числа будут записываться во входной атрибут канала.

Потом будет обрабатываться только дата, но хотя бы половина, чем ничего.

Буду ждать обновления ... [Улыбка / Smile]

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
В Trace Mode внутренний формат переменных, связанных с датой и временем, всегда LONG.
Поэтому, если Вы предполагаете обрабатывать эту переменную средствами Trace Mode (например, сопоставлять ее с текущим временем ОС), то она обязательно должна быть в формате LONG.
Поэтому, я думаю, что Вам нужно иметь 1 канал TIME, получающий переменную из OPC и преобразующий ее в LONG.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Обнаружилась еще какая-то заморочка.

Булевы(Boolean) значения с ОПС сервера Beckhoff не читаются...
Записываются, но не читаются.

Создаю ОПС-компонент, привязываю его к каналу HEX16.
Играюсь переменной на ОПС сервере, канал не реагирует. [Неодобрение / Frown]

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Ох... выяснилось, что другие типы тоже не читаются.
Не читаются, но записываются.

Похоже от версии ТМ зависит. Знакомый говорил, что надо какие-то обновления скачать...
Между релизами промежуточные обновления что-ли существуют?
Две недели назад поменял комп и все проги переставил. Данные на предыдущем компе читались нормально. Видимо там нужные обновления были.
Проясните ситуацию.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Хех...
обновил редактор версию 6.06.3 до версии 6.06.3 пакетом
http://www.adastra.ru/files/support/tm6/commercial/updates/tm6b_ide_update_6.06.3.zip
Чтение ОПС в профайлере сразу заработало.
подскажите чем теперь обновить МРВ 6.06.3 базовую версию, чтобы там тоже чтение заработало.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Обновлением со странички http://www.adastra.ru/support/get_support/commer/get_support_tm6/TM6_commercial_updates/
Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Проблема с временем полностью решилась.
В контроллера поменяли тип у переменных со временем на DWORD.
В TraceMode даже ничего не меняли. Сразу все заработало.

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Romсheg
unregistered



Icon 1 отправлено / posted            Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
DWORD - это по сути long, а ТМ6 как раз в long и воспринимает Дату/Время. [Пдмигивание / Wink]
IP / IP: IP адрес / IP address | Report this post to a Moderator
Serex
Forum Member / Участник форума
Участник № / Member № 3942


Icon 1 отправлено / posted      Профиль для / Profile for Serex           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Ну понятно.
[Улыбка / Smile] Не просто же так 4 часа переименовывали переменные в контроллере.
А целенаправленно.!!! [Пдмигивание / Wink]

Сообщения / Posts 59 | Из / From: РФ  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Avsiannikova
Active Forum Member / Активный участник форума
Участник № / Member № 5946


Icon 1 отправлено / posted      Профиль для / Profile for Avsiannikova           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте! Не хотелось создавать новую тему для моего вопроса, поэтому задам его здесь.
Возможно ли стандартным средством ГЭ "Дата и время" отображать более 23 часов? Например 72:05:00.

Сообщения / Posts 64 | Из / From: Беларусь  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
АдАстра. Техподдержка
Administrator
Участник № / Member № 4


Icon 1 отправлено / posted      Профиль для / Profile for АдАстра. Техподдержка           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Надо в ГЭ "Дата и время" задать свойство "Показывать"="Интервал".
При этом тип данных должен быть UDINT и принимать число секунд.

Сообщения / Posts 17106 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
Avsiannikova
Active Forum Member / Активный участник форума
Участник № / Member № 5946


Icon 1 отправлено / posted      Профиль для / Profile for Avsiannikova           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Спасибо, разобралась)
Сообщения / Posts 64 | Из / From: Беларусь  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2