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