Акустические Контрольные Системы
Приборы для неразрушающего контроля металлов, пластмасс, бетона. Разработка, производство, поставка.
Авторы: Козлов В.Н., Мелешко И.А.
Проблема разработки общих принципов построения эффективных информационных систем актуальна для большинства сфер прикладного программирования. Под эффективностью информационной системы, в данном случае понимается:
Ксожалению, принципиальные различия в предъявляемых требованиях делает невозможным создание универсальных принципов разработки подобных систем. Однако для информационных систем неразрушающего контроля можно выделить ряд особенностей, позволяющих объединить их в единый класс задач.
Информационные системы в неразрушающем контроле в общем случае служат для получения первичной информации, ее предварительной обработки и хранения (с возможностью информационного сопровождения), окончательной обработки и представления результата в требуемом виде. Подобная система может быть реализована в виде самостоятельного устройства, обладающего законченной функциональностью, выполненным на базе стандартного вычислительного комплекса, или же быть разделенной между несколькими независимыми функциональными компонентами с возможностью обмена информацией между ними.
В зависимости от реализации, для системы часто можно выделить несколько точек взаимодействия с пользователем. Разработка интерфейса каждой из этих точек должна вестись с учетом предполагаемой квалификации работающего с ней пользователя. При этом, важно учесть как его квалификацию пользователя данной системы, так и квалификацию в вопросах собственно неразрушающего контроля. В зависимости от этого, форма предоставления информации может быть приближенна как к виду результата измерения исходной физической величины, так и абстрактного показателя, отражающего результат операции контроля.
Ряд особенностей вызван спецификой самого процесса разработки программного обеспечения для систем неразрушающего контроля. К интерфейсу подобных систем, их устойчивости и надежности предъявляются крайне высокие требования.В тоже время, затраты разработку системной части проекта, существенно меньше чем для программ широкого потребления или крупнобюджетных бизнес систем. Это связанно с сосредоточенностью основных усилий программистов на разработке математических алгоритмов обработки информации и аппаратных интерфейсов. Следует отметить также практически полное отсутствие стандартов на интерфейсы, методики обработки и форматы данных, используемые в системах неразрушающего контроля. Как следствие, невозможность использования библиотек стандартных решений. Поскольку программное обеспечение для систем неразрушающего контроля следует отнести к системам средней сложности, использование современных высокопроизводительных методов программирования при разработке системной части проекта является оптимальным вариантом.
В системах неразрушающего контроля, используются, как правило, весьма сложные методы обработки информации, составляющие порой, основу комплекса. Для этой части программы одним из важнейших факторов является переносимость. Под ней подразумевается и возможность переноса алгоритмов обработки между различными частями комплекса, аппаратная реализация которых может принципиально различаться. И если задача портирования хорошего программного кода на языке высокого уровня может быть решена стандартными методами, то для кода написанного на ассемблере она, скорее всего, выльется в полное переписывание проекта. Задача же переноса пользовательского интерфейса вообще не может быть удовлетворительно решена стандартными средствами.
На данный момент перспективным выглядит использование машинонезависимых систем программирования на всех этапах работы. До недавнего времени этому препятствовало отсутствие эффективных систем программирования высокого уровня для микроконтроллеров широко используемых в аппаратной части комплексов. Современный уровень развития специализированных аппаратных средств ориентированных на использование таких систем (в частности Java процессоров) позволяет надеяться достичь практически полной интеграции различных частей информационной системы.
Применение Java позволяет также решить проблему полностью переносимых интерфейсов, что существенно облегчит освоение потребителями системы в целом и позволит использовать широкий спектр вычислительных платформ. К недостаткам такого решения можно отнести сравнительно невысокую производительность Java систем в традиционном исполнении, тем не менее, это невысокая плата за максимально возможную на данный момент переносимость и долгий срок жизни системы. К сожалению, Java процессоры пока еще слабо представлены на рынке и их использование в аппараной части системы является вопросом перспективы.
Также, хотелось бы отметить вопрос поддержки и сопровождения информационных систем. Системы неразрушающего контроля обладают долгим сроком жизни. Этот срок может превышать десять лет. На протяжении всего этого срока может возникнуть вопрос об адаптации старой системы к новым аппаратным платформам или замены морально устаревших компонентов. Может также потребоваться перенос наработок потребителя со старой системы на новую. Этот вопрос особенно актуален при разработке крупных комплексов, где этот аспект может порой сыграть решающую роль при выборе архитектуры системы.