Файл: Средства создания программ, выполняемых на стороне сервера (АНАЛИЗ ЭТАПОВ ПРОЕКТИРОВАНИЯ ПРОГРАММ).pdf
Добавлен: 26.05.2023
Просмотров: 48
Скачиваний: 3
СОДЕРЖАНИЕ
ГЛАВА 1 ОСНОВЫ ПРОЕКТИРОВАНИЯ ПРОГРАММ
1.1 Постановка задачи и определение компонентной базы
1.2 Обзор методов составления математического представления схем
ГЛАВА 2 АНАЛИЗ ЭТАПОВ ПРОЕКТИРОВАНИЯ ПРОГРАММ
2.1 Обзор существующих подходов проектирования программ
2.2 Выбор среды проектирования программ
ВВЕДЕНИЕ
Наша повседневная жизнь немыслима без электричества и устройств, которые работают благодаря нему, начиная с обычной настольной лампы и заканчивая смартфоном, не уступающим по функционалу персональному компьютеру.
Разработка любого устройства начинаемся с оформления технического задания (ТЗ) на основе одного из таких стандартов и методологий, как ГОСТ 34, ГОСТ 19, IEEE STD 830-1998, ISO/IEC/IEEE 29148-2011 и других, в котором описываются технические и функциональные характеристики, которыми должен обладать готовый продукт, программа, устройство или автоматизированная система. Кроме того, в ТЗ устанавливаются общие требования к продукту, требования к процессу разработки, к программному и аппаратному обеспечению, к документации, описывается содержание работы и основных этапов создания системы, а также определяются сроки выполнения каждой стадии работы по разработке системы.
После написания технического задания идет этап разработки тестового прототипа устройства в рамках установленной компонентной базы. На основе прототипа происходит оценка эффективности выбранных технических решений, как аппаратных, так и программных, осуществляется поиск потенциально возможных проблем и ошибок, которые могут возникнуть в конечной реализации устройства. По итогу данного этапа имеется прототип разрабатываемого устройства с ограниченными функциональными возможностями, а также отчет с результатами оценки ошибок и обоснованием выбранных технических решений.
Следующим этапом идет разработка устройства на основе сформированного прототипа и установленной базы используемых электронных компонентов. Разработка начинается с проектирования принципиальной схемы аппарата, ее дальнейшего синтеза, а также функционального и временного моделирования работы схемы. Именно в этот момент разработки к собранной электрической схеме может быть применен разрабатываемый в рамках данной работы программный модуль построения макромоделей электрических схем. Помимо разработки внутренней составляющей устройства, производится разработка корпуса для герметичной защиты внутренних компонентов устройства от повреждений, пыли, влаги и других внешних факторов, оказывающих негативное воздействие на работоспособность устройства. Наиболее часто используемыми материалами для создания корпуса устройства считаются различные виды пластика, такие как ABS, EK, PC, PVC и другие, металлы и сплавы, а также различные породы древесины. Выбор материала зависит от их механических, физических, технологических свойств. В результате выполнения данной стадии разработки имеется набор конструкторской документации, описывающий принятые технико-конструкторские решения и их обоснование. Кроме того, разрабатываются всевозможные программные и аппаратные тесты для проверки корректности работы разрабатываемого устройства.
Завершающий этап включает в себя непосредственное создание аппаратной части устройства, прошедшей множественные тесты, разработанные на предыдущем этапе, а также конструирование корпуса.
Отсюда можно сделать вывод, что процесс разработки электронного оборудования довольно сложен и требует больших вычислительных мощностей для синтеза, обработки и моделирования корректности работы схемы разрабатываемого устройства во временном и функциональных режимах, исходя из всего этого возникает острая необходимость в упрощении схемы создаваемого прибора. Сокращение количества, входящих в состав электрической схемы, элементов способствует
- ускорению прохождения сигнала по схеме, что, соответственно, приводит к увеличению производительности устройства;
- уменьшению себестоимости разработанного устройства и его последующей стоимости на рынке.
Из вышесказанного можно сделать вывод, что решение проблемы сокращения количества элементов в электрической цепи имеет огромное значение в сфере проектирование цифровых и аналоговых устройств, и в электротехнике и электронике, в целом.
Для решения задачи сокращения количества элементов в электрической схеме используются макромодели. Макромоделью называется упрощенное математическое представление функциональных узлов схемы, отражающее значения токов и напряжений в них с достаточной степенью точности. Различают два типа макромоделей: физические и информационные. Физические макромодели строятся на основе законов электротехники путем математического преобразования системы уравнений, составленных по первому и второму закону Кирхгофа. Второй тип макромоделей – информационный, основывается на функциональной зависимости входных и выходных векторов переменных и выражается в качестве зависимости y = f(x). Более подробно данные методы будут рассмотрены в следующей главе.
Разработка программного модуля построения макромоделей электрических схем ведется в рамках академического исследования для расширения области профессиональных знаний в сфере схемотехники, электротехники, линейной алгебры, улучшения навыков программирования, синтеза электрических схем и симуляции их работы в различных режимах, усовершенствования навыков работы в среде моделирования электрических схем. Данный программный модуль также может найти свое применение в качестве учебной среды для обучения учеников и студентов младших курсов технических специальностей различным методам упрощения систем дифференциальных уравнений.
Данная разработка внесет значительный вклад в различные разделы науки и техники. Помимо вышеупомянутого проектирования устройств, создаваемый модуль может быть применен в рамках космического аппаратостроения, в частности, для решения проблемы обнаружения области, которая наиболее подвержена возникновению тока короткого замыкания. Поверхность космического аппарата покрыта солнечными батареями, которые в упрощенном виде можно представить, как сеть из параллельно и последовательно подключенных резисторов, конденсаторов и катушек индуктивности. Однако, полученная модель будет содержать сотни тысячи элементов и расчет подверженной току короткого замыкания области будет занимать достаточно долгое время, даже если выполнять вычисления на мощном оборудование. Упростив заданную модель, тем самым уменьшив количество входящих в схему элементов, сократится время обработки модели в системах, способных детектировать наиболее неустойчивую к повреждениям область.
Для достижения основной цели выпускной квалификационной работы, она будет разделена на несколько этапов. Разработка программного модуля будет основана на данных, полученных из среды моделирования LTspice. Основная идея разработки заключается в том, что информация о компонентах схемы извлекается из файла с метаданными, полученных после построения схемы в LTspice. После этого производится обработка метаданных и преобразование полученных данных к линейным матрицам, хранящие внутри себя значения емкостей, индуктивности и сопротивления. После этого к полученным матрицам будут применены математические алгоритмы и методы, позволяющие сократить размерность данных матриц. Заключительный этап состоит в создании программного обеспечения для представления результатов упрощения.
Таким образом, можно выделить несколько основных этапов для решения поставленной цели:
- разработка тестовой схемы в среде моделирования LTspice;
- извлечение метаданных из файла со схемой;
- преобразование полученных данных в матричный вид;
- применение методов и алгоритмов к матрицам;
- разработка графического интерфейса.
В следующих главах будет определена компонентная база, используемых элементов, а также описаны существующие методы и подходы к задаче сокращения количества элементов в электрической схеме.
ГЛАВА 1 ОСНОВЫ ПРОЕКТИРОВАНИЯ ПРОГРАММ
1.1 Постановка задачи и определение компонентной базы
Основной задачей в разработке программного модуля является нахождение наиболее эффективного метода упрощения электрической схемы. Для удобства и простоты вычислений будем рассматривать схемы, состоящие из пассивных электрических элементов, таких как резисторы, конденсаторы и катушки индуктивности (Рис. 1).
Рис. 1. Пассивные компоненты электрической цепи: резистор, катушка индуктивности, конденсатор
Выбор такой элементной базы помимо простоты и удобства, основывается на том факте, что различного рода полупроводниковые приборы, такие как биполярные и полевые транзисторы, фотодиоды, тиристоры и другие, могут быть упрощенно представлены через резисторы, катушки индуктивности, конденсаторы и диоды. Например, биполярный транзистор может быть представлен в схеме посредством упрощенной модели Эберса-Молла [4].
Биполярный транзистор (БТ) [3] представляет собой полупроводниковую структуру, состоящую из трех областей: эмиттера (Э), коллектора (К) и базы (Б). Различают два типа биполярных транзисторов: n-p-n (эмиттер – c n-проводимостью, база – c р-проводимостью и коллектор – c n-проводимостью) и p-n-p. Стоит отметить основные особенности данного вида транзисторов:
- слой базы обладает малой толщиной, что обеспечивает беспрепятственный переход основных носителей из зоны эмиттера в область коллектора;
- область коллектора значительно шире зоны эмиттера, это делается для того, чтобы захватить большую часть инжектируемых носителей из эмиттера.
Работа биполярного транзистора основана на двух p-n переходах (ЭБ – эмиттерном и БК – коллекторном). В активном режиме транзистора эмиттерный p-n переход находится в прямом смещении, что обеспечивает инжекцию основных носителей из эмиттера в базу. При попадании в базу, часть носителей рекомбинируют с носителями, находящимися в области базы, остальная же часть диффундирует в зону коллектора. Это происходит за счет того, что область базы достаточно мала и слабо легирована. А за счет обратно смещенного коллекторного p-n переход, носители из базы экстрагируют в область коллектора. Таким образом, носители из эмиттера практически без потерь переходят в коллектор, другими словами, ток коллектора равен току эмиттера, за исключением потери части носителей, рекомбинирующих в базе.
Рис. 2. Схематичное представление p-n переходов в БТ
Для анализа работы биполярного транзистора применяется модель Эберса-Молла. В рамках этой модели биполярный транзистор рассматривается как система из двух взаимодействующих p-n переходов. Взаимодействие между p-n переходами происходит через общую область базы. С электрической точки зрения каждый p-n переход моделируется диодом. Эквивалентная схема представляет собой два диода через которые протекают токи инжекции I’к и I’э, моделирующие коллекторный переход и эмиттерный, соответственно. Как было описано ранее, при прохождении носителей через слой базы часть зарядов рекомбинирует и образует ток базы. Следовательно, ток через базу передается с потерями, учтем это обстоятельство с помощью специально подключенных генераторов переменного тока. Пусть коэффициент передачи основных носителей через базу от эмиттера к коллектору равен , а от коллектора к эмиттеру – (, ). При нормальном включении транзистора через эмиттерный p-n переход течет ток I’э, а через коллекторный - меньший ток в раз, вследствие рекомбинации носителей в области базы. При инверсном же включении прямому коллекторному току будет соответствовать эмиттерный ток . Математическое представление модели Эберса-Молла имеет следующий вид:
(1) (2) |
Сама же модель является функций, зависящей от значений напряжений база-эмиттер и база-коллектор (3).
(3) |
Уравнения, описывающие функциональное поведение диодов (4) и (5).
(4) (5) |
Подставив (4) и (5) в (1) и (2) получится,
(6) (7) |
Полученная система уравнений (6) и (7) описывает искомые величины силы тока.
Рис. 3. Модель Эберса-Молла биполярного транзистора
Установив рамки элементной базы можно перейти к конкретизации основной задачи данной работы. Для построения макромодели требуется получить систему уравнений, содержащую значения токов и напряжений в функциональных узлах схемы и упростить ее, применяя различные численные методы и алгоритмы по решению дифференциальных уравнений. В следующей главе будут рассмотрены основные подходы к решению поставленной задачи, начиная с простого метода, основанного на законах Кирхгофа, и заканчивая более сложными алгоритмами на законах Эйлера, методе PRIMA и алгоритме Крылова.