МРВ+ версии 6.08 работает с 2011 года на ПК Диспетчера. Периодически обновляет, добавляются объекты и функции. Последнее обновление было в середине ноября. Работало нормально. Но 9 декабря вдруг произошло непонятно что. И сейчас вот такая ситуация: МРВ запущен, сервер по обработке параметров работает (вижу это через жука и удаленных консолей) а на экране Диспетчера висит главное окно, часть окон открываются (мнемосхемы), но без обновления параметров, а встроенные переходы (ссылка на экран) не обрабатываются. В чем может быть причина? Срочный вопрос. Получается что не обрабатывается визуализация.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Можно предположить, что обновление, функциональное развитие проекта потребовало больших ресурсов. Безграничное расширение проекта вряд ли допустимо.
Возможная диагностика текущей ситуации в релизе 6.08 (без остановки узла): - по файлу tm6_log.txt в папке узла, - по диспетчеру задач (ресурсы - загрузка процессора, память, объекты GDI, объекты USER), - вкладка SYSTEM DIAG в окне "Просмотр компонентов" (продолжительность цикла обработки, ресурсы - см. документацию "Отладка проекта в ИС/Профайлер с поддержкой графических экранов").
Если проблема в каких-то конкретных экранах, в протоколе tm6_log.txt должны быть соответствующие записи.
Posted by AlKon (Участник № / Member № 1919) on :
в лог файле ничего особенного: LOAD [0] 608 Jan 23 2012 09:58:14 0000 00000000[0] 13.12.2016 09:58:14 0000 00000000[1544] Start 09:58:18 0000 00000032[7] DTOX_No408 11:21:02 0000 00000001[1] Calc loop is big 11:22:19 0000 00000003[0] Stop LOAD [0] 608 Jan 23 2012 11:22:46 0000 00000000[0] 13.12.2016 11:22:46 0000 00000000[223] run default 11:23:02 0000 00000001[1544] Start 11:23:06 0000 00000032[7] DTOX_No408
загрузка процессора 5 %. Просмотр компонентов - не открывается.
В чем причина пока непонятно.
Posted by AlKon (Участник № / Member № 1919) on :
Вопрос не решен! У себя на ПК запустил - работает корректно! Какие системные библиотеки использует МРВ? У меня даже версий о неработе графики нет... Может как то лицензионный ключ влиять?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Лицензионный ключ влиять не может. Запуск "у себя на ПК" не адекватен реальному процессу.
Почему не открывается "Просмотр компонентов"? Узел запущен от ПОЛЬЗОВАТЕЛЯ, у которого нет прав на открывание этой панели? В правах должны быть все флажки в разделе SCADA и "Изменение".
Posted by AlKon (Участник № / Member № 1919) on :
Пока вопрос не решен! Непонятно, после очередной перезагрузки ПО - временно заработало, потом вновь перестало корректно работать.
Posted by AlKon (Участник № / Member № 1919) on :
Расчетный механизм работает, а вот обновление графики застревает. В чем может быть причина?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Вы не ответили на вопрос "Почему не открывается "Просмотр компонентов"? Узел запущен от ПОЛЬЗОВАТЕЛЯ, у которого нет прав на открывание этой панели? В правах должны быть все флажки в разделе SCADA и "Изменение". " Окно действительно не открывается, или открывается, но ничего не показывает? Или показывает но не поддерживает Ваших действий?
Posted by AlKon (Участник № / Member № 1919) on :
"Просмотр компонентов" не открывается из-за того, что пользователь задан с ограничениями. Но я пробовал и от другого пользователя загружать, но не работает в нормальном режиме (то что я описывал выше) - графика совсем не перерисовывается, некоторые всплывающие окна не появляются, а параметры на мнемосхемах не изменяются, хотя сам сервер работает и через жука и через консоли я вижу изменяющиеся параметры. Когда выбираю "Просмотр компонентов" - экран моргает но не появляется. Если я удалю пользователей из проекта - тогда возможно заработает.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Если окно "Компоненты" "пытается" открыться, но не открывается, то, скорее всего, перегружен основной цикл и на графику не остается времени.
Если Вы можете заглянуть в сервер со стороны консолей, введите в сервере каналы, связанные с системной переменной @Calculate_Cycle и диагностической переменной @Above, и выведите их на экран консоли. Эти каналы должны показать реальное значение цикла обработки базы каналов и количество ситуаций, когда реальное время цикла CALC превышало заданное.
Posted by AlKon (Участник № / Member № 1919) on :
Произвели переустановку ОС (установили Windows 7 вместо XP). Запустил проект. все заработало. Через 5 дней стабильной работы ночью случился обрыв связи с контроллерами, после восстановления вновь нарушилась работа диспетчерской программы (перезагружали практически все по несколько раз). В чем причина - непонятно! Параметры работы: время цикла вычисляемого колеблется от 10000 до 30000 мсек, в момент записи в БД достигает 60000 мсек. Да в программе задан цикл 1 сек. В проекте около 4500 каналов. Увеличить время цикла до минуты - очень проблематично - получится очень долгое обновление информации в режиме реального времени. Что можете посоветовать?
Posted by AlKon (Участник № / Member № 1919) on :
Проект пусть и расширяется, но незначительно (за последний год добавилось не более 200-300 каналов), до сих пор работал более 4 лет стабильно.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
То, что цикл пересчета в основном потоке доходит до минуты, допускать нельзя. Надо искать и устранять причину такой перегрузки. Видимо, при "развитии" проекта менялось не просто количество каналов, менялись функции, внешние интерфейсы. Если обмен с БД резко увеличивает величину цикла основного потока, говорит о том, поток SQL-обращений находится в основном потоке. Надо вывести его в поток IDLE или в "Свой" поток. В любом случае надо исключать такие катастрофические перегрузки.
Posted by AlKon (Участник № / Member № 1919) on :
@Calc_Loop - это реальное время цикла (990-1015) @Calculate_Cycle - что считает эта переменная?
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
@Calculate_Cycle. В данную переменную типа INPUT записывается реальное время (в миллисекундах), затраченное монитором на выполнение задач основного потока (см. "Каналы и системные переменные/Пересчет базы каналов/Потоки монитора"). Это время может быть существенно меньше "реального времени цикла", которое измеряется переменной @Calc_Loop.
Posted by AlKon (Участник № / Member № 1919) on :
Вопрос по-прежнему актуален... 24 декабря после очередной перезагрузки ПО заработало в штатном режиме! 6 января, когда все были на каникулах - вечером опять произошел сбой и вновь графика не отрабатывает (и не только - еще и запись в БД тоже не отрабатывает, хотя команды для записи формируются и параметры изменяются - смотрел через компоненты).
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Пока реальный цикл обработки базы каналов будет близок или больше заданного в проекте цикла, графика не будет устойчиво работать. Графика имеет приоритет значительно более низкий, чем основные и интерфейсные потоки.
Что было в настоящее время сделано для проведения диагностики и обеспечения устойчивого режима? SQL-запросы выведены из основного потока? Проведен системный мониторинг ресурсов (памяти, загрузки процессора всеми работающими приложениями)? Проанализированы сообщения файла tm6_log.txt?
У Вас есть возможность с помощью каналов, связанных с переменными @Calc_Loop, @Above и @Calculate_Cycle, вывести эти параметры в архив, ОТ или профайлерный протокол.
Posted by alex_lsz (Участник № / Member № 7439) on :
Добрый день! Подскажите, пожалуйста, почему после запуска МРВ появляется окно с системными сообщениями, которое мешает обзору нужной информации на экране. Убираем галку во вкладке ВИД/Системные сообщения1 (Ctrl+4) исход тот же. Проект не менялся на протяжении 3 лет и таких проблем не было. Заранее благодарю за ответ.
Posted by AdAstra Technical Support (Участник № / Member № 4) on :
Какое сообщение при этом индицируется? Сообщения не могут просто так появиться, необходимо выяснить причину. Показ системных сообщений можно отключить с использованием tmcom6.cnf. В справке описано: Содержание - Приложения - Задание параметров работы мониторов - tmcom6.cnf.