Файл: Средства разработки клиентских программ (Разработка программного модуля).pdf
Добавлен: 19.06.2023
Просмотров: 103
Скачиваний: 3
ВВЕДЕНИЕ
Наша повседневная жизнь немыслима без электричества и устройств, которые работают благодаря нему, начиная с обычной настольной лампы и заканчивая смартфоном, не уступающим по функционалу персональному компьютеру.
Разработка любого устройства начинаемся с оформления технического задания (ТЗ) на основе одного из таких стандартов и методологий, как ГОСТ 34, ГОСТ 19, IEEE STD 830-1998, ISO/IEC/IEEE 29148-2011 и других, в котором описываются технические и функциональные характеристики, которыми должен обладать готовый продукт, программа, устройство или автоматизированная система. Кроме того, в ТЗ устанавливаются общие требования к продукту, требования к процессу разработки, к программному и аппаратному обеспечению, к документации, описывается содержание работы и основных этапов создания системы, а также определяются сроки выполнения каждой стадии работы по разработке системы.
После написания технического задания идет этап разработки тестового прототипа устройства в рамках установленной компонентной базы. На основе прототипа происходит оценка эффективности выбранных технических решений, как аппаратных, так и программных, осуществляется поиск потенциально возможных проблем и ошибок, которые могут возникнуть в конечной реализации устройства. По итогу данного этапа имеется прототип разрабатываемого устройства с ограниченными функциональными возможностями, а также отчет с результатами оценки ошибок и обоснованием выбранных технических решений.
Следующим этапом идет разработка устройства на основе сформированного прототипа и установленной базы используемых электронных компонентов. Разработка начинается с проектирования принципиальной схемы аппарата, ее дальнейшего синтеза, а также функционального и временного моделирования работы схемы. Именно в этот момент разработки к собранной электрической схеме может быть применен разрабатываемый в рамках данной работы программный модуль построения макромоделей электрических схем. Помимо разработки внутренней составляющей устройства, производится разработка корпуса для герметичной защиты внутренних компонентов устройства от повреждений, пыли, влаги и других внешних факторов, оказывающих негативное воздействие на работоспособность устройства. Наиболее часто используемыми материалами для создания корпуса устройства считаются различные виды пластика, такие как ABS, EK, PC, PVC и другие, металлы и сплавы, а также различные породы древесины. Выбор материала зависит от их механических, физических, технологических свойств. В результате выполнения данной стадии разработки имеется набор конструкторской документации, описывающий принятые технико-конструкторские решения и их обоснование. Кроме того, разрабатываются всевозможные программные и аппаратные тесты для проверки корректности работы разрабатываемого устройства.
Завершающий этап включает в себя непосредственное создание аппаратной части устройства, прошедшей множественные тесты, разработанные на предыдущем этапе, а также конструирование корпуса.
Отсюда можно сделать вывод, что процесс разработки электронного оборудования довольно сложен и требует больших вычислительных мощностей для синтеза, обработки и моделирования корректности работы схемы разрабатываемого устройства во временном и функциональных режимах, исходя из всего этого возникает острая необходимость в упрощении схемы создаваемого прибора. Сокращение количества, входящих в состав электрической схемы, элементов способствует
- ускорению прохождения сигнала по схеме, что, соответственно, приводит к увеличению производительности устройства;
- уменьшению себестоимости разработанного устройства и его последующей стоимости на рынке.
Из вышесказанного можно сделать вывод, что решение проблемы сокращения количества элементов в электрической цепи имеет огромное значение в сфере проектирование цифровых и аналоговых устройств, и в электротехнике и электронике, в целом.
Для решения задачи сокращения количества элементов в электрической схеме используются макромодели. Макромоделью называется упрощенное математическое представление функциональных узлов схемы, отражающее значения токов и напряжений в них с достаточной степенью точности. Различают два типа макромоделей: физические и информационные. Физические макромодели строятся на основе законов электротехники путем математического преобразования системы уравнений, составленных по первому и второму закону Кирхгофа. Второй тип макромоделей – информационный, основывается на функциональной зависимости входных и выходных векторов переменных и выражается в качестве зависимости y = f(x). Более подробно данные методы будут рассмотрены в следующей главе.
Разработка программного модуля построения макромоделей электрических схем ведется в рамках академического исследования для расширения области профессиональных знаний в сфере схемотехники, электротехники, линейной алгебры, улучшения навыков программирования, синтеза электрических схем и симуляции их работы в различных режимах, усовершенствования навыков работы в среде моделирования электрических схем. Данный программный модуль также может найти свое применение в качестве учебной среды для обучения учеников и студентов младших курсов технических специальностей различным методам упрощения систем дифференциальных уравнений.
Данная разработка внесет значительный вклад в различные разделы науки и техники. Помимо вышеупомянутого проектирования устройств, создаваемый модуль может быть применен в рамках космического аппаратостроения, в частности, для решения проблемы обнаружения области, которая наиболее подвержена возникновению тока короткого замыкания. Поверхность космического аппарата покрыта солнечными батареями, которые в упрощенном виде можно представить, как сеть из параллельно и последовательно подключенных резисторов, конденсаторов и катушек индуктивности. Однако, полученная модель будет содержать сотни тысячи элементов и расчет подверженной току короткого замыкания области будет занимать достаточно долгое время, даже если выполнять вычисления на мощном оборудование. Упростив заданную модель, тем самым уменьшив количество входящих в схему элементов, сократится время обработки модели в системах, способных детектировать наиболее неустойчивую к повреждениям область.
Для достижения основной цели данной работы, она будет разделена на несколько этапов. Разработка программного модуля будет основана на данных, полученных из среды моделирования LTspice. Основная идея разработки заключается в том, что информация о компонентах схемы извлекается из файла с метаданными, полученных после построения схемы в LTspice. После этого производится обработка метаданных и преобразование полученных данных к линейным матрицам, хранящие внутри себя значения емкостей, индуктивности и сопротивления. После этого к полученным матрицам будут применены математические алгоритмы и методы, позволяющие сократить размерность данных матриц. Заключительный этап состоит в создании программного обеспечения для представления результатов упрощения.
Таким образом, можно выделить несколько основных этапов для решения поставленной цели:
- разработка тестовой схемы в среде моделирования LTspice;
- извлечение метаданных из файла со схемой;
- преобразование полученных данных в матричный вид;
- применение методов и алгоритмов к матрицам;
- разработка графического интерфейса.
В следующих главах будет определена компонентная база, используемых элементов, а также описаны существующие методы и подходы к задаче сокращения количества элементов в электрической схеме.
ГЛАВА 1 ТЕОРЕТИЧЕСКИЕ АСПЕКТЫ ПОСТРОЕНИЯ КЛИЕНТСКИХ ПРОГРАММ
1.1 Постановка задачи и определение компонентной базы
В наш век, когда офисы теряют четкие границы, средства удаленного доступа к локальным сетям обеспечивают мобильным пользователям, надомным работникам и даже деловым партнерам связь с корпоративной сетью.
В 1995г. производители средств удаленного доступа начали обеспечивать поддержку протоколов Internet, в частности PPP и SLIP, в результате чего появились продукты, способные обеспечивать такую связь удаленных узлов с локальными сетями, как если бы эти узлы были напрямую подключены к сети. Кроме того, они предоставляют возможность удаленного доступа по интрасетям при помощи Web-браузеров.
Производители средств удаленного доступа также обеспечили поддержку более широкого круга удаленных клиентов, в частности, платформ Windows 95 и Windows NT, усовершенствовали процедуры идентификации пользователей, необходимые для предотвращения вредоносной деятельности хакеров, начали включать функции удаленного доступа в сетевые операционные системы, что позволило повысить степень информационной безопасности и упростить управление, а также приступили к поиску возможностей для ускорения работы WAN-каналов, в настоящее время обычно реализуемых на базе какой-нибудь коммутируемой сети. Одной из таких технологий была технология SCADA, использованная для технологии клиент-сервер.
В результате всех этих событий средства удаленного доступа быстро становятся товаром широкого потребления, который может пригодиться кому угодно и где угодно. Как считает Робин Абер, директор по развитию компании 3Com, в настоящее время уже нельзя сказать, что средства удаленного доступа нужны только для удаленных офисов или подразделений компании. "Современный сервер удаленного доступа должен работать с весьма широким сообществом клиентов и удовлетворять самым разным требованиям конечных пользователей", - утверждает он. Число пользователей средств удаленного доступа быстро растет, и это заставляет производителей выпускать изделия, более пригодные для масштабирования, со значительно большим числом портов, легче интегрируемые с оборудованием других типов, в частности с концентраторами.
Таким образом была выработана концепция создания клиентской части ПО, по удалённой работе с серверами используя не только корпоративные сети, но и быстро растущую сеть Интернет.
1.2 Клиентские программы
Клиентской называется часть приложения, с которой напрямую взаимодействует конечный пользователь. Это может быть либо приобретенное компанией серийное коммерческое программное обеспечение, либо прикладная программа, разработанная внутри компании с помощью инструментальных средств третьих фирм.
Наличие клиентских приложений способствует упрощению работы конечного пользователя базы данных. От него скрыты объекты базы данных, содержащие реальную информацию, программный код, а также происходящие внутри нее события. Современные технологии делают работу с прикладными программами для конечного пользователя более интуитивной: они дают ему возможность сосредоточится на выполнении своих прямых обязанностей и, тем самым, способствуют повышению производительности его труда. [1.]
1.3 Стратегия клиентских приложений
Доступ с любого компьютера предприятия к информации, поступающей от производственного технологического процесса, от любой подсистемы становится необходимостью. Одним из основных компонентов АСУТП (автоматизированная система управления технологическим процессом), способным поставлять технологическую информацию, является приложение SCADA (Supervisory Control and Data Acquisition). А различного типа клиентские приложения могут предоставлять соответствующие производственному процессу в огромном объеме данные в приемлемом для пользователя виде
Традиционно SCADA-системы выполняют следующие функции:
- сбор данных с контроллерного уровня, в том числе на основе стандартных протоколов DDE, OPC;
- отображение данных с использованием графических анимированных объектов (простых и сложных);
- обработка данных с использование встроенных языков программирования.
- алармирование данных;
- архивирование, хранение данных.
Самым простым и распространенным клиентским приложением являются клиенты в локальной сети (Приложение.1).
Клиент-серверная организация SCADA-систем предполагает наряду с серверными конфигурациями применение клиентских компонентов двух типов: c возможностью передачи управляющих воздействий с клиентского приложения и чисто мониторинговые приложения. Такие клиентские компоненты SCADA-систем традиционно объединяются с серверными приложениями с помощью протоколов локальных сетей (TCP/IP, NetBEUI). Однако развивающиеся технологии Internet/Intranet не оставили безучастными разработчиков SCADA-систем, баз данных реального времени и т.п. программных продуктов и привели к появлению следующих типов клиентских приложений: