Файл: Средства создания программ, выполняемых на стороне сервера (ГЛАВА 1 ОСНОВЫ ПРОЕКТИРОВАНИЯ ПРОГРАММ).pdf
Добавлен: 04.07.2023
Просмотров: 51
Скачиваний: 2
СОДЕРЖАНИЕ
ГЛАВА 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 и алгоритме Крылова.