Дипломная (вкр): Программное обеспечение для вибродиагностики технологического оборудования

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Для удобства работы в состав ПО включены уже готовые вибродиагностические системы:

1)   автоматизированная система диагностики технического состояния и поиска дефектов вращающегося оборудования по спектрам вибросигналов;

)     язык написания диагностических правил, при помощи которого пользователь может использовать все свои диагностические наработки;

3)     система ранней диагностики дефектов состояния и монтажа подшипников качения по спектрам огибающей вибросигнала;

)       проведения балансировки и успокоения роторов в собственных подшипниках - до 14 плоскостей коррекции и 42 точек контроля.

Выводы по разделу 3

На данный момент существует много разработок для вибрационной диагностики промышленного оборудования. Их можно разделить на два типа:

1)   выполненные в виде отдельного прибора;

)     программы для ПК, получающие данные из сторонних источников.

Разрабатываемая программа относится ко второму типу. Приведенные в этом разделе программы и приборы можно использовать для получения виброакустических сигналов, но интерпретация полученных данных ложится на пользователя, так как эти программные продукты и приборы не заточены под конструктивные особенности ЦБН.

4. Обоснование средств разработки

Одним из важных этапов разработки любой серьезной программы является оптимальный выбор средств и методов разработки. Для реализации данного программного продукта в качестве таковых были выбраны и согласованы с заказчиком следующие: среда разработки Microsoft Visual Studio 2008, профессиональный набор компонентов для создания интерфейса и визуализации результатов Nevron Vision Q3 и язык программирования C#.

4.1 Среда разработки Microsoft Visual Studio

Среда разработки Microsoft Visual Studio - это набор инструментов и средств, предназначенных для помощи разработчикам программ любого уровня квалификации в решении сложных задач и создания новаторских решений [11]. Разработчикам программного обеспечения часто приходится решать ряд проблем, чтобы создавать удачные программы. Роль Visual Studio заключается в том, чтобы улучшить процесс разработки и упростить разработку высокоэффективных программ.

Как в Visual Studio улучшен процесс разработки:

1)   Производительность

Средства Visual Studio позволяют разработчикам работать с большей отдачей и затрачивать меньше усилий на повторяющиеся задачи. Следует отметить высокопроизводительные редакторы кода, поддержку технологии IntelliSense, мастеров и различных языков кодирования в одной интегрированной среде разработки (IDE), а также продукты управления жизненным циклом приложений (ALM) в Microsoft Visual Studio Team System. В новых версиях Visual Studio постоянно появляются новые средства, позволяющие разработчикам сосредоточиться на решении основных проблем, а не на рутинной работе.

2)   Интеграция

Разработчики, применяющие Visual Studio, получают в свое распоряжение интегрированный продукт, включающий инструменты, серверы и службы. Продукты Visual Studio отлично работают вместе - не только один с другим, но и с прочими программами Майкрософт, включая серверные продукты и приложения Microsoft Office.

3)   Комплексность

В Visual Studio содержатся инструменты для всех этапов разработки программного обеспечения (разработка, тестирование, развертывание, интеграция и управления) и для разработчиков любого уровня квалификации, от новичков до опытных специалистов. Visual Studio поддерживает разработку для различных типов устройств - ПК, серверов, сетевых и мобильных устройств.

4)   Надежность

Visual Studio разрабатывается таким образом, чтобы обеспечить высокую надежность и совместимость. Visual Studio обладает удачным сочетанием безопасности, масштабируемости и взаимодействия. В Visual Studio всегда поддерживаются новейшие технологии, но везде, где это возможно, обеспечивается обратная совместимость.

4.2 Технология .Net Framework 2.0

Microsoft.NET Framework - программная технология, предназначенная для создания как обычных программ, так и веб-приложений (в качестве платформы для разработок впервые предложена корпорацией Microsoft).

Одной из основных идей Microsoft.NET является совместимость различных служб, написанных на разных языках. Например, служба, написанная на C++ для Microsoft.NET, может обратиться к методу класса из библиотеки, написанной на Delphi; на C# можно написать класс, наследованный от класса, написанного на Visual Basic.NET, а исключение, созданное методом, написанным на C#, может быть перехвачено и обработано в Delphi. Каждая библиотека (сборка) в.NET имеет сведения о своей версии, что позволяет устранить возможные конфликты между разными версиями сборок.

.NET является патентованной технологией корпорации Microsoft. Тем не менее, после заключения договоренности с компанией Novell, была признана технология Mono как реализация.NET на Unix-подобных системах (GNU/Linux, Mac OS X). Однако договорённость касается Novell и клиентов Novell, также технологии ASP.NET, ADO.NET и Windows.Forms не были стандартизированы ECMA/ISO и использование их в Mono находится под угрозой претензий со стороны Microsoft. Mono предоставляет реализацию ASP.NET, ADO.NET и Windows.Forms, но в то же время рекомендует обходить эти API.

Среды разработки.NET-приложений:

1)   Microsoft Visual Studio (C#, Visual Basic.NET, Managed C++).

)     SharpDevelop.

3)     MonoDevelop.

)       Eclipse.

)       Borland Developer Studio (Delphi for.NET, C#).

6)     PascalABC.NET и т. д.

Приложения также можно разрабатывать в текстовом редакторе и использовать консольный компилятор.

Так же как и технология Java, среда разработки.NET создаёт байт-код, предназначенный для исполнения виртуальной машиной. Входной язык этой машины в.NET называется MSIL (Microsoft Intermediate Language), или CIL (Common Intermediate Language, более поздний вариант), или просто IL. Применение байт-кода позволяет получить кроссплатформенность на уровне скомпилированного проекта (в терминах.NET: сборка), а не только на уровне исходного текста, как, например, в С. Перед запуском сборки в среде исполнения CLR байт-код преобразуется встроенным в среду JIT-компилятором (just in time, компиляция на лету) в машинные коды целевого процессора. Также существует возможность скомпилировать сборку в родной (native) код для выбранной платформы с помощью поставляемой вместе с.NET Framework утилиты NGen.exe.

Преимущества.Net:

1)   Полные возможности взаимодействия с существующим кодом. Существующие двоичные компоненты СОМ отлично работают вместе с двоичными файлами.NET.

)     Полное и абсолютное межъязыковое взаимодействие. В отличие от классического СОМ, в.NET поддерживаются межъязыковое наследование, межъязыковая обработка исключений и межъязыковая отладка.

3)     Общая среда выполнения для любых приложений.NET, вне зависимости от того, на каких языках они были созданы. Один из важных моментов при этом - то, что для всех языков используется один и тот же набор встроенных типов данных.

)       Библиотека базовых классов, которая обеспечивает сокрытие всех сложностей, связанных с непосредственным использованием вызовов API, и предлагает целостную объектную модель для всех языков программирования, поддерживающих.NET.

)       Отсутствие сложности, присущей СОМ. IClassFactory, IUnknown, код IDL и VARIANT-совместимые типы данных (BSTR, SAFEARRAY и остальные) не используются в коде программ.NET.

)       Действительное упрощение процесса развертывания приложения. В.NET нет необходимости регистрировать двойные типы в системном реестре. Более того,.NET позволяет разным версиям одного и того же модуля DLL мирно сосуществовать на одном компьютере.

. Строительные блоки.NET (CLR, CTS и CLS)

Технологии CLR, CTS и CLS очень важны для понимания смысла платформы.NET. С точки зрения программиста.NET вполне можно рассматривать просто как новую среду выполнения и новую библиотеку базовых классов. Среда выполнения.NET как раз и обеспечивается с помощью Common Language Runtime (CLR, стандартная среда выполнения для языков). Главная роль CLR заключается в том, чтобы обнаруживать и загружать типы.NET и производить управление ими в соответствии с вашими командами. CLR берет на себя всю низкоуровневую работу - например, автоматическое управление памятью, межъязыковым взаимодействием, развертывание (с отслеживанием версий) различных двоичных библиотек.

Еще один строительный блок платформы.NET - это Common Type System (CTS, стандартная система типов). CTS полностью описывает все типы данных, поддерживаемые средой выполнения, определяет, как одни типы данных могут взаимодействовать с другими и как они будут представлены в формате метаданных.NET.

Важно понимать, что не во всех языках программирования.NET обязательно должны поддерживаться все типы данных, которые определены в CTS. Common Language Specification (CLS) - это набор правил, определяющих подмножество общих типов данных, в отношении которых гарантируется, что они безопасны при использовании во всех языках.NET.

2. Библиотека базовых классов.NET

Помимо спецификаций CLR и CTS/CLS платформа.NET предоставляет в распоряжение программиста также и библиотеку базовых классов, доступную из любого языка программирования.NET. Библиотека базовых классов не только прячет обычные низкоуровневые операции, такие как файловый ввод-вывод, обработка графики и взаимодействие с оборудованием компьютера, но и обеспечивает поддержку большого количества служб, используемых в современных приложениях.

4.3 Язык программирования С#

Специально для платформы.NET Microsoft был разработан новый язык программирования С# [12]. С# - это язык программирования, синтаксис которого очень похож на синтаксис Java (но не идентичен ему). Например, в С# (как в Java) определение класса состоит из одного файла (*.cs), в отличие от C++, где определение класса разбито на заголовок (*.h) и реализацию (*.срр). Однако называть С# клоном Java было бы неверно. Как С#, так и Java основаны на синтаксических конструкциях C++. Если Java во многих отношениях можно назвать очищенной версией C++, то С# можно охарактеризовать как очищенную версию Java.

Синтаксические конструкции С# унаследованы не только от C++, но и от Visual Basic. Например, в С#, как и в Visual Basic, используются свойства классов. Как C++, С# позволяет производить перегрузку операторов для созданных типов (Java не поддерживает ни ту, ни другую возможность). С# - это фактически гибрид разных языков. При этом С# синтаксически не менее (если не более) чист, чем Java, так же прост, как Visual Basic, и обладает практически той же мощью и гибкостью, что и C++.

Подводя итоги, еще раз выделим основные особенности С#:

)     Управление памятью производится автоматически.

3)     В С# предусмотрены встроенные синтаксические конструкции для работы с перечислениями, структурами и свойствами классов.

)       В С# осталась возможность перегружать операторы, унаследованные от C++. При этом значительная часть возникавших при этом сложностей ликвидирована.

)       Предусмотрена полная поддержка использования программных интерфейсов. Однако в отличие от классического СОМ применение интерфейсов - это не единственный способ работы с типами, используя различные двоичные модули,.NET позволяет передавать объекты (как ссылки или как значения) через границы программных модулей.

)       Также предусмотрена полная поддержка аспектно-ориентированных программных технологий (таких как атрибуты). Это позволяет присваивать типам характеристики для описания в будущем поведения данной сущности.

Возможно, самое важное, что необходимо сказать про язык С#, - это то, что он генерирует код, предназначенный для выполнения только в среде выполнения.NET. Например, вы не сможете использовать С# для создания классического СОМ-сервера.

4.4 Nevron.Net Vision Q3 for VS2008

evron.Net Vision Q3 - профессиональный программный набор компонентов для создания современных стильных GUI-программ. Состоит из Nevron Chart for.NET и Nevron UI for.NET [3].

Nevron Chart for.NET - ведущий компонент по построению графиков для.NET. Он обеспечивает обширную функциональность, подходящую для презентаций, научных, финансовых и деловых графиков. Поддерживает рендеринг GDI+ и OpenGL, множество видов построения графиков со встроенными логическими блок-схемами, гибкими осями, и прочее. Благодаря сочетанию встроенной возможности презентации качественно созданных графиков и мощной серверной поддержки, этот компонент является единственным в своем роде.

Возможности Nevron Chart for.NET позволяют вмещать в интуитивную и исчерпывающую модель программирования большое количество свойств. Компонент виртуально отображает любые 2D или 3D графики (см. рисунок 4.2), включая: Bar, Line, Step Line, Area, Pie, Point, Bubble, Stock, Floating Bar, Radar, Polar, High Low, Mesh Surface, Grid Surface, Shape, Smooth Line, Float Bar, Venn и Error, со множеством изменений (таких как Scatter XY и XYZ Line, Stacked Bars и т.д.).

Рисунок 4.2 - Графики в Nevron Chart for.NET

Nevron UI for.NET - это решение для приведения приложений.NET в соответствие с последними стандартами и технологиями GUI. Набор предоставляет множество расширенных управляющих элементов, таких как MS Outlook 2003 Navigation Pane, Windows XP Explorer Bar и полный набор элементов управления Windows Forms, упрощая создание безупречного, стильного и современного уровня представления для конечного пользователя.

Выводы по разделу 4

Выбранные средства и методы разработки позволяют достаточно быстро разрабатывать эффективные приложения. Visual C# мощный инструмент для создания приложений на базе Windows и.NET. К тому же платформа.NET сейчас является фактическим стандартом при разработке программ для новых операционных систем Microsoft Windows. Набор компонентов Nevron Vision Q3 позволяет виртуально отображать любые 2D или 3D графики и создавать стильные и современного уровня интерфейсы для конечного пользователя.

5. Описание процесса разработки программы

.1 Требования заказчика

Программа «Триггер 2В» предназначается для диагностирования состояния центробежных нагнетателей газоперекачивающих агрегатов на компрессорных станциях.

Заказчик ЗАО «ПромСервис» поставил следующие требования к программному продукту:

1)   реализовать удобный пользовательский интерфейс;

)     использовать среду визуального проектирования Visual Studio.NET 2008;

3)     реализовать получение исходных данных из текстовых файлов и Excel-файла;

)       реализовать разработанную заказчиком методику диагностирования;

)       визуализировать результаты в виде графиков и диаграмм;

)       использовать ОС Windows 2000/2003/XP/Vista с Framework 2.0.

5.2 Структура классов

Основными объектами данных в данной программе выступают однородные наборы данных - массивы. Но часто с ними нужно совершать или на основе их получать новые данные. Например, с набором сигналов, считанных с опор оборудования, нужно производить следующие действия:

1)   добавлять данные;

2)   обращаться к конкретному сигналу;

3)     получать значения статистических параметров набора, таких как максимальный/минимальный элемент, дисперсия, среднее арифметическое, коэффициент асимметрии и коэффициент эксцесса.

Для работы с такими набором данных был создан класс Massiv.

class Massiv:IEnumerable

{ArrayList Mas; //контейнер данных

private double Max; //статистические параметрыdouble Min;double Sred;double Dispersia;double KoefAssimetr;double KoefEcses;double xSred;Massiv()

{= new ArrayList();

}

}

Данный класс содержит элемент ArrayList в качестве контейнера данных. ArrayList позволяет реализовывать массив переменной длинны для хранения неоднородных объектов, не заботясь о выделении памяти. Но сигналы являются однородными объектами типа double, поэтому требуется проверять однородность данных. Это реализовано через интерфейс IEnumerable. IEnumerable позволяет индексировать массив, т.е. через запись mas[i] получать значение i-того элемента массива в требуемом типе данных, в нашем случае типе double. Для предотвращения ошибок, связанных с возможно неправильным типом данных было применено «защитное программирование» - связка try{}…catch{}.

Источник: https://www.bibliofond.ru/detail.aspx?id=723375