Комплексная отладка системы с реальным объектом — завершающий этап отладки автоматизированных систем. При этом корректируется взаимодействие программного обеспечения в реальном масштабе времени и уточняется автономное решение задач АСУ ТП в реальных условиях. Проверяются и отлаживаются система функционального контроля, системы контроля подсистем передачи данных, а также всего комплекса средств, обеспечивающих устойчивость ПО программируемых логических контроллеров (ПЛК).
На этом этапе происходит уточнение целей управления, выбранных методов решения задач АСУ ТП, используемых математических моделей и способов реализации ПО, приводящее к пересмотру проектных решений и повторению этапов проектирования.
Эффективным отладочным средством на этапе динамической отладки является диалоговая отладочная система реального времени с использованием языков высокого уровня. Такая система обычно обеспечивает следующее:
Операторы или команды для установления и изъятия контрольных
точек в любом месте программы. При достижении программой этой точки ее текущее, состояние «замораживается» и управление передается программисту. Точка устанавливается заданием номера оператора относительно какой-либо метки или входной точки. Следовательно, отладочная система должна иметь доступ к таблице символов или к исходному тексту программы. Проблема значительно упрощается при работе с интерпретирующими трансляторами (типа языка БЕЙСИК).
Расширением простой контрольной точки является контрольная точка с условиями. Например, введение параметра N может означать, что выход с передачей управления человеку должен осуществляться только после N-го прохода точки.
Способность системы возвращать управление программисту в случае установления факта наличия ошибки (например, при попытке извлечь квадратный корень из отрицательного числа, при превышении границ массива и т. п.). Компилятор должен генерировать отладочный код так, чтобы выполнение программы отслеживалось как можно тщательней.
Если произошла ошибка, программисту автоматизированных систем должно быть выдано ясное диагностическое сообщение. Информация, необходимая для прослеживания источника ошибки, должна выдаваться в терминах исходного языка, т. е. должно быть указано место относительно метки в конкретной программе. Полезным является использование механизма защиты переменной или массива — система сообщает о любой попытке использовать эти элементы.
Средства анализа и изменения любого элемента данных в программе после того, как ее состояние «заморожено» и управление передано программисту. Для этого в простейшем случае может понадобиться выполнение операторов назначения или печати, из чего следует, что система должна быть в состоянии вызвать компилятор. Более сложные операции могут, например, использовать операторы цикла для распечатки элементов массива.
Язык отладочной системы автоматизированных систем обычно оказывается шире исходного языка. Например, могут понадобиться последние N наборов параметров, с которыми происходил вызов какой-либо процедуры и т. п.
Возможность перезапуска программы автоматизированных систем не обязательно с той точки, где она прервана.
Средства для изъятия, замены и вставки новых частей в программы систем управления технологическими процессами. Идеальным случаем является возможность получить требуемые изменения немедленно. Если программа хранится в скомпилированной форме, единственным способом внесения изменений является редактирование символьного текста и перекомпиляции (повторная трансляция). Если в системе используется интерпретатор, то модификация программы легко реализуема.
Однако при использовании интерпретатора скорость выполнения программы резко уменьшается. Используют смешанный способ: одна часть программы скомпилирована, другая — интерпретируется в процессе выполнения. При этом первый прогон программы при отладке осуществляется в режиме интерпретации. После отладки основных подпрограмм, они компилируются в дальнейшей модификации могут быть подвергнуты только интерпретируемые части программы. Постепенно, по мере отладки, все ПО переводится в скомпилированную форму.
Средства получения статистической информации о поведении программы (список операторов и подпрограмм, которые не выполнялись, список неиспользованных переменных и др.).
Средства конструирования тестового обрамления. В качестве средства общения с программистом обычно используется видеотерминал.
Достарыңызбен бөлісу: |