Определение СИСТЕМНЫХ ТРЕБОВАНИЙ к аппаратному обеспечению при проектировании АСУ ТП в TRACE MODE 6 Глухов Федор, руководитель отдела качества AdAstra Research Group, Ltd Россия, Москва, 107076, а/я 38, тел (495) 771-71-74, факс (495) 518-98-46, E-mail: [email protected], http://www.adastra.ru Авторские права (с) 1997-2008 AdAstra Research Group, Ltd www.adastra.ru Системные требования Для каждого продукта Trace Mode 6 минимальные рекомендуемые реальные Для каждого проекта АСУ ТП www.adastra.ru Инструментальная система Trace Mode 6 IDE Среда разработки Профайлер Загрузка / Сохранение Старт Редактирование проекта Цикл пересчета Сохранение для МРВ Графика OpenGL ОЗУ должно быть достаточно для одновременной работы обоих приложений! www.adastra.ru Инструментальная система Разрешение экрана – не менее 1280 х 1024. Рекомендуемое – 1600 х 1200 и более. Удобно использовать два монитора (на одном – среда разработки, на другом – профайлер) Видеокарта должна поддерживать OpenGL Операционная система – Windows XP Professional Наличие свободного USB-порта или LPT для подключения ключа аппаратной защиты HASP www.adastra.ru Редактор проекта: операции с каналами Зависимость времени обработки от числа каналов (в секундах) 600 500 CPU: P-III, 800 МГц 512 Мб типRAM: каналов: HEX32 300 каждый канал вызывает простейшую программу трансляции Сохранить для МРВ Создание каналов по шаблону Копирование группы каналов 400 каждый канал связан с источником данных (генератором) Сохранить 3 аргумента Сохранить как… 200 Открыть в IDE 100 8191 4095 2047 1023 511 255 127 63 31 15 0 Загрузка в профайлер www.adastra.ru Редактор проекта: операции с каналами Зависимость времени обработки от числа каналов (в секундах) 600 500 CPU: P-IV, 3.0 ГГц RAM: 1 Гб Создание каналов по шаблону Копирование группы каналов Сохранить 400 300 Сохранить для МРВ 200 Сохранить как… Открыть в IDE 100 32000 16000 8191 4095 2047 1023 0 Загрузка в профайлер www.adastra.ru Редактор проекта: операции с каналами Зависимость времени обработки от числа каналов (в секундах) 600 500 Core 2 Duo, 2.66 ГГц RAM: 2 Гб Создание каналов по шаблону Копирование группы каналов Сохранить 400 300 Сохранить дляМРВ 200 Сохранить как… Открыть в IDE 100 32000 16000 8191 4095 2047 1023 0 Загрузка в профайлер www.adastra.ru Сохранение для МРВ Зависимость времени обработки от общего числа аргументов вызываемых программ (в секундах) 600 500 1023 канала типа HEX32 400 Core 2 Duo 2.66 ГГц, 2Гб каждый канал связан с источником данных (генератором) ОЗУ P-IV 3ГГц, 1Гб ОЗУ 300 каждый канал вызывает программу трансляции 200 P-III 800МГц, 512 Мб 0 / 3 / 10 / 30 / 100 аргументов (0 – нет вызоваОЗУ программы) 100000 30000 10000 3000 0 0 100 www.adastra.ru Загрузка проекта в IDE Зависимость времени обработки от числа аргументов вызываемых программ (в секундах) 600 500 400 Core 2 Duo 2.66 ГГц, 2Гб ОЗУ P-IV 3ГГц, 1Гб ОЗУ 300 P-III 800МГц, 512 Мб ОЗУ 200 100000 30000 10000 3000 0 0 100 www.adastra.ru Редактор проекта: операции с группами 600 Зависимость времени обработки от числа каналов Создание каналов по CPU: P-III, 800 МГц шаблону (в 500 секундах) Копирование группы RAM: 512 Мб каналов каждая группа содержит 14 каналов, 1 вызов экрана, 1 вызов Сохранить 400 программы Сохранить дляМРВ один канал в каждой группе связан с источником данных и один с 300 приемником Сохранить как… 200 в программе на языке FBD реализован ПИД-регулятор с Открыть в IDE возможностью перехода в ручной режим управления исполнительным устройством, все каналы группы связаны с 100 Загрузка в профайлер аргументами программы Выгрузка профайлера 32000 16000 8192 4096 2048 1024 2047 1023 0 на экране каждый канал группы отображен в виде динамического текста, 4 параметра выведены на тренд, ползунок для ввода задания регулятора www.adastra.ru Редактор проекта: операции с группами 600 500 Создание каналов по шаблону Копирование группы каналов Сохранить CPU: P-IV, 3.0 ГГц RAM: 1 Гб 400 Сохранить дляМРВ 300 Сохранить как… 200 Открыть в IDE 100 32000 16000 8192 4096 2048 Выгрузка профайлера 1024 0 Загрузка в профайлер www.adastra.ru Редактор проекта: операции с группами 600 500 CPU: Core 2 Duo, 2.66 ГГц RAM: 2 Гб 400 Создание каналов по шаблону Копирование группы каналов Сохранить Сохранить дляМРВ 300 Сохранить как… 200 Открыть в IDE 100 32000 16000 8192 4096 2048 1024 2047 Выгрузка профайлера 1023 0 Загрузка в профайлер www.adastra.ru Добавляем консоли NetLink Light Зависимость времени обработки от числа консолей (в секундах) 600 500 400 Core 2 Duo, 2.66 ГГц RAM: 2 Гб теста на 8192 канала (512 групп) проект из предыдущего в каждой консоли NLL вызывается один экран Сохраненить для МРВ Сохраненить как… Загрузка проекта в IDE 300 вызов экрана связан с 64 каналами МРВ на экране 64 ГЭ «Динамический текст» 200 16 8 4 2 0 1 100 www.adastra.ru Добавляем консоли NetLink Light Зависимость времени обработки от числа вызовов (в секундах) 600 500 400 Core 2 Duo, 2.66 ГГц RAM: 2 канала Гб проект на 8192 8 консолей 300 каждый вызов экрана связан с 64 каналами МРВ на экране 64 ГЭ «Динамический текст» Сохраненить для МРВ Сохраненить как… Загрузка проекта в IDE 200 количество вызовов экрана в каждой консоли варьируется 16 8 4 2 0 1 100 www.adastra.ru TRACE MODE 6 IDE Рекомендации разработчику больших проектов: 1. Отключите автоматическое создание резервных копий в меню «Файл» / «Настройки ИС…» на закладке «ИС» / «Сохранить для МРВ» - опция «Создавать резервную копию» 2. По возможности используйте функцию «Сохранить узел для МРВ» - доступна в контекстном меню узла, позволяет сохранять в формат исполнительного модуля один узел отдельно, а не весь проект 3. При сохранении большого проекта для МРВ закрывайте все ненужные окна редакторов IDE 4. Отключите заставку ОС (Screen Saver) www.adastra.ru Реальное время: CPU Зависимость загрузки процессора от числа каналов (%) 64000 32000 16000 8191 4095 2047 1023 511 255 127 100 90 80 каждый канал связан с генератором 70 Xeon E5335 2 ГГц, 6Гб ОЗУ 60 каждый канал взывает программу: 3 аргумента, одна операция Core 2 Duo, 2.66ГГц, 2Гб сложения 50 ОЗУ P-IV 3ГГц, 1Гб ОЗУ 40 цикл пересчета 0,55 сек (по умолчанию) 30 P-III 800МГц, 512Мб ОЗУ количество каналов варьируется 20 диагностика ведется с помощью переменной @Calculate_Cycle 10 0 www.adastra.ru Реальное время: цикл пересчета Зависимость длительности пересчета от числа каналов (мс) 500 400 каждый канал связан с генератором Xeon E5335 2 ГГц, 6Гб ОЗУ каждый канал взывает программу: 3 аргумента, одна операция Core 2 Duo, 2.66ГГц, 2Гб 300 сложения ОЗУ P-IV 3ГГц, 1Гб ОЗУ цикл пересчета 0,55 сек (по умолчанию) 200 P-III 800МГц, 512Мб ОЗУ количество каналов варьируется 100 64000 32000 16000 8191 4095 2047 1023 511 255 0 127 диагностика ведется с помощью переменной @Calculate_Cycle www.adastra.ru Реальное время: ОЗУ (МРВ) Зависимость выделения памяти для МРВ от числа каналов (Мб) 32000 16000 8191 4095 2047 1023 511 255 127 2000 1800 1600 каждый канал связан с генератором 1400 Xeon E5335 2 ГГц, 6Гб ОЗУ 1200 каждый канал взывает программу: 3 аргумента, одна операция Core 2 Duo, 2.66ГГц, 2Гб сложения 1000 ОЗУ P-IV 3ГГц, 1Гб ОЗУ 800 цикл пересчета 0,55 сек (по умолчанию) 600 P-III 800МГц, 512Мб ОЗУ количество каналов варьируется 400 диагностика ведется с помощью переменной @Calculate_Cycle 200 0 www.adastra.ru Реальное время: ОЗУ (всего) Зависимость выделения памяти ОС от числа каналов (Мб) 2500 2000 каждый канал связан с генератором Xeon E5335 2 ГГц, 6Гб ОЗУ 1500 каждый канал взывает программу: 3 аргумента, одна операция Core 2 Duo, 2.66ГГц, 2Гб сложения ОЗУ P-IV 3ГГц, 1Гб ОЗУ 1000 цикл пересчета 0,55 сек (по умолчанию) P-III 800МГц, 512Мб ОЗУ количество каналов варьируется 500 64000 32000 16000 8191 4095 2047 1023 511 255 0 127 диагностика ведется с помощью переменной @Calculate_Cycle www.adastra.ru Системные требования IDE Инструментальная система TRACE MODE 6 IDE Мощность 16 32 64 128 256 512 1024 2048 4096 8192 32000 64000 Минимальные CPU P-II 300 P-II 300 P-II 300 P-III 800 P-III 800 P-III 800 P-III 800 P-III 800 P-IV 1,4 P-IV 2,4 P-IV 3,0 С2D 2,66 RAM 256Мб 256Мб 256Мб 512Мб 512Мб 512Мб 512Мб 512Мб 512Мб 1Гб 2Гб 4Гб Рекомендуемые CPU P-III 800 P-III 800 P-III 800 P-IV 1,4 P-IV 1,4 P-IV 1,4 P-IV 2,4 P-IV 2,4 P-IV 3,0 С2D 2,66 С2D 3,16 С2D 3,16 RAM 512Мб 512Мб 512Мб 1Гб 1Гб 1Гб 1Гб 1Гб 1Гб 2Гб 4Гб 4Гб www.adastra.ru Системные требования МРВ Исполнительные модули TRACE MODE 6 МРВ / МРВ+ Мощность 15 31 63 127 255 511 1023 2047 4095 8191 32000 64000 Минимальные CPU P-II 300 P-II 300 P-II 300 P-II 300 P-III 800 P-III 800 P-III 800 P-III 800 P-III 800 P-IV 1,4 P-IV 3,0 С2D 2,66 RAM 256Мб 256Мб 256Мб 512Мб 512Мб 512Мб 512Мб 512Мб 512Мб 1Гб 2Гб 4Гб Рекомендуемые CPU P-III 800 P-III 800 P-III 800 P-III 800 P-IV 1,4 P-IV 1,4 P-IV 1,4 P-IV 2,4 P-IV 2,4 P-IV 3,0 С2D 3,16 С2D 3,16 RAM 512Мб 512Мб 512Мб 1Гб 1Гб 1Гб 1Гб 1Гб 1Гб 2Гб 4Гб 4Гб www.adastra.ru Системные требования NLL Удаленные консоли NetLink Light 6 Мощность 1 3 5 10 20 50 Unlim Минимальные CPU P-II 300 P-III 800 P-III 800 P-IV 1,4 P-IV 2,4 P-IV 2,4 P-IV 2,4 RAM 256Мб 512Мб 512Мб 512Мб 1Гб 1Гб 1Гб Рекомендуемые CPU RAM P-III 800 1Гб P-IV 2,4 1Гб P-IV 2,4 1Гб P-IV 3,0 1Гб P-IV 3,0 2Гб С2D 3,16 4Гб С2D 3,16 4Гб www.adastra.ru Средства диагностики: системные переменные TRACE MODE Встройте диагностику в свой проект! @Calculate_Cycle – реальное время, затраченное на выполнение задач основного потока МРВ, мс @Calc_Loop – реальное время цикла монитора, мс @RTM_parameter – в зависимости от настройки параметра данная переменная индицирует загрузку CPU, использование оперативной памяти, файла подкачки и многое другое www.adastra.ru Средства диагностики: диалог «Просмотр компонентов» Теперь диагностика всегда под рукой! www.adastra.ru Средства диагностики: предупредительные сообщения Загрузка CPU превышает норму (по умолчанию >75%) Реальное время цикла пересчета превышает заданное Выделение оперативной памяти ОС приближается к ее физическому объему www.adastra.ru Средства диагностики: предупредительные сообщения Опции CNF файла для управления выводом сообщений: PRCMES = <cpuMES> – загрузка процессора для генерации ошибки (в процентах), 75% по умолчанию NOERRWNDMES – запрет окон с сообщениями об ошибке; этот ключ не отменяет протоколирование ошибок в файл tm6_log.txt; Файл TMcom_<ordinal>.cnf должен располагаться в папке узла, имеет текстовый формат, каждый ключ записывается в отдельной строке. (ordinal – номер узла в проекте) www.adastra.ru Встроенные механизмы нагрузочного тестирования Опции CNF файла для проведения нагрузочного (стресс-) тестирования: STRESS = <hex> 0x01 – все Input пересчитывать SREPT раз 0x02 – все программы пересчитывать SREPT раз 0x04 – все Out пересчитывать SREPT раз SREPT = <dec> www.adastra.ru Прогнозирование реальных системных требований Проведите свой эксперимент! 1. Создайте типовые объекты, из которых будет состоять Ваш проект 2. Введите в проект средства диагностики в виде необходимых системных переменных и средств их отображения на отдельном экране – трендов, диаграмм 3. Создайте по шаблону столько копий типовых объектов, сколько необходимо для адекватного моделирования будущего проекта 4. Запустите проект и отслеживайте показания диагностических переменных, окна просмотра компонентов, диспетчера задач www.adastra.ru Примеры проектов пользователей Каково соотношение источников/приемников, каналов, экранов и программ в реальных проектах? Источников Каналов (ИС) Каналов всего ШЭ ШП Узлов Каналов в узле 108 112 112 25 1 1 112 230 379 379 14 30 4 51-196 265 338 338 20 11 1 338 329 3335 9091 174 74 18 6 - 1108 1203 3241 6470 7 51 6 13 - 1639 2104 3530 3543 211 41 6 405 - 739 16256 64939 80040 250 852 3 6925 - 63614 www.adastra.ru СПАСИБО! www.adastra.ru