ПЗ (Виртуальная лаборатория для проведения занятий по дисциплине Электротехника), страница 3
Описание файла
Файл "ПЗ" внутри архива находится в следующих папках: Виртуальная лаборатория для проведения занятий по дисциплине Электротехника, Цай В.С. Документ из архива "Виртуальная лаборатория для проведения занятий по дисциплине Электротехника", который расположен в категории "". Всё это находится в предмете "дипломы и вкр" из 8 семестр, которые можно найти в файловом архиве ДВГУПС. Не смотря на прямую связь этого архива с ДВГУПС, его также можно найти и в других разделах. .
Онлайн просмотр документа "ПЗ"
Текст 3 страницы из документа "ПЗ"
– постоянного и переменного напряжения;
– управляемые напряжением или током.
В реальности, любой источник ЭДС обладает внутренним сопротивлением r, которое имеет обратную зависимость от мощности источника. То есть, чем больше мощность, тем меньше сопротивление. И наоборот. Наличие внутреннего сопротивления отличает реальный источник ЭДС от идеального.
3 Структурная схема
На основе выше приведенной классификации разрабатываемая виртуальная лаборатория является набором простых моделей.
Виртуальная лаборатория представляет собой набор лабораторных работ по электротехнике. Главным требованием к лаборатории является высокая наглядность и интерактивность.
Для достижения наглядности используются реальные фотографии измерительных приборов и приспособлений. При этом большая часть элементов являются интерактивными, например при нажатии на кнопки сменяется канал с которого поступает сигнал.
Первая лабораторная работа представляет собой расчет цепей переменного и постоянного тока. Рабочее поле состоит из источника тока, набора резисторов и измерительных приборов. Обучаемому необходимо задать параметры резисторов и источника тока, а затем соединить элементы цепи. Для снятия показаний необходимо подключить измерительные приборы в соответствующие места цепи.
Рисунок 11 – Структурная схема
При запуске программы пользователю необходимо выбрать тип цепи, а затем схему по которой необходимо проводить расчет.
После этого появится окно в котором необходимо правильно соединить элементы и указать их параметры. Для получения показаний к цепи нужно правильно соединить измерительные приборы. Амперметр включается в цепь последовательно, а вольтметр параллельно.
Соотношение между током I, напряжением U и сопротивлением R участка электрической цепи выражается законом Ома:
.
В последовательных цепях эквивалентное сопротивление цепи равно сумме всех сопротивлений:
Сила тока на каждом участке одинакова и расчитывается по закону Ома.
Напряжение на каждом резисторе различно и зависит от силы тока в цепи и сопротивления резистора:
При параллельном соединении общее сопротивление находится иначе:
Сумма токов каждой ветви равна общей силе тока.
Для расчета цепей переменного тока используются уравнения связывающие между собой электрические параметры цепи – правила Кирхгофа. Для произвольного участка цепи, не содержащего источников напряжения, эти правила могут быть сформулированы следующим образом:
– алгебраическая сумма токов, сходящихся в узловой точке, равна нулю;
– напряжение на участке цепи равно алгебраической сумме падений напряжения на отдельных последовательно соединенных элементах, составляющих рассматриваемый участок цепи.
При этом уславливаются, что токи, подтекающие к узловой точке, записываются со знаком плюс, а оттекающие от нее – со знаком минус. Падение напряжения на S элементе записывается со знаком плюс, если направление обхода цепи совпадает с направлением электрического тока через этот элемент и со знаком минус в противоположном случае. Если направления электрического тока в участках цепи заранее не известны, то они выбираются произвольным образом для какого-то определенного момента времени. При этом выбранные колебания электрического тока в участках цепи могут и не совпадать с истинными. В результате решения задачи вычисленные значения электрического тока в таких участках цепи окажутся отрицательными, что или изменению эквивалентно изменению фазы колебания электрического тока на его направления на противоположное.
4 Выбор программных средств
Основными требованиями при выборе среды разработки были возможность создания кроссплатформенных приложений и удобство работы с графическим интерфейсом.
4.1 Языки программирования
4.1.1 C#
На сегодняшний момент язык программирования C# один из самых мощных, быстро развивающихся и востребованных языков в ИТ-отрасли. В настоящий момент на нем пишутся самые различные приложения: от небольших десктопных программок до крупных веб-порталов и веб-сервисов, обслуживающих ежедневно миллионы пользователей.
Первая версия языка вышла вместе с релизом Microsoft Visual Studio .NET в феврале 2002 года. Текущей версией языка является версия C# 7.0, которая вышла в 7 марта 2017 года вместе с Visual Studio 2017.
C# является языком с Си-подобным синтаксисом и близок в этом отношении к C++ и Java.
C# является объектно-ориентированным и в этом плане много перенял у Java и С++. Например, C# поддерживает полиморфизм, наследование, перегрузку операторов, статическую типизацию. Объектно-ориентированный подход позволяет решить задачи по построению крупных, но в тоже время гибких, масштабируемых и расширяемых приложений.
Когда говорят C#, нередко имеют в виду технологии платформы .NET (WPF, ASP.NET). Фреймворк .NET представляет мощную платформу для создания приложений. Можно выделить следующие ее основные черты:
– Поддержка нескольких языков. Основой платформы является общеязыковая среда исполнения Common Language Runtime (CLR), благодаря чему .NET поддерживает несколько языков: наряду с C# это также VB.NET, C++, F#, а также различные диалекты других языков, привязанные к .NET, например, Delphi.NET. При компиляции код на любом из этих языков компилируется в сборку на общем языке CIL (Common Intermediate Language) - своего рода ассемблер платформы .NET. Поэтому мы можем сделать отдельные модули одного приложения на отдельных языках.
– Кроссплатформенность. .NET является переносимой платформой (с некоторыми ограничениями). Например, последняя версия платформы на данный момент .NET Framework поддерживается на большинстве современных ОС Windows (Windows 10/8.1/8/7/Vista). А благодаря проекту Mono можно создавать приложения, которые будут работать и на других ОС семейства Linux, в том числе на мобильных платформах Android и iOS.
– Мощная библиотека классов. .NET представляет единую для всех поддерживаемых языков библиотеку классов. И какое бы приложение мы не собирались писать на C# - текстовый редактор, чат или сложный веб-сайт – так или иначе мы задействуем библиотеку классов .NET.
– Разнообразие технологий. Общеязыковая среда исполнения CLR и базовая библиотека классов являются основой для целого стека технологий, которые разработчики могут задействовать при построении тех или иных приложений. Например, для работы с базами данных в этом стеке технологий предназначена технология ADO.NET. Для построения графических приложений с богатым насыщенным интерфейсом - технология WPF. Для создания веб-сайтов - ASP.NET и т.д.
Также еще следует отметить такую особенность языка C# и фреймворка .NET, как автоматическая сборка мусора. А это значит, что нам в большинстве случаев не придется, в отличие от С++, заботиться об освобождении памяти. Вышеупомянутая общеязыковая среда CLR сама вызовет сборщик мусора и очистит память.
4.1.2 C++
Язык программирования С (си) является одним из самых популярных и распространенных языков. Он представляет компилируемый язык программирования общего назначения со статической типизацией, разработанный в 1969 – 1973 годах в компании Bell Labs программистом Деннисом Ритчи (Dennis Ritchie).
Язык С нередко называют языком программирования «среднего уровня» или даже «низкого уровня», так как он сочетает элементы языков высокого уровня с функциональностью и производительностью ассемблера и работает близко к аппаратной части компьютера. В итоге можно манипулировать данными на низком уровне и при этом использовать высокоуровневые конструкции для управления работы программы.
Си является компилируемым языком, а это значит, что компилятор транслирует исходный код на Си в исполняемый файл, который содержит набор машинных инструкций. Но разные платформы имеют свои особенности, поэтому скомпилированные программы нельзя просто перенести с одной платформы на другую и там уже запустить. Однако на уровне исходного кода программы на Си обладают переносимостью, а наличие компиляторов, библиотек и инструментов разработки почти под все распространенные платформы позволяет компилировать один и тот же исходный код на Си в приложения под эти платформы.
Развитие Си оказало большое влияние в целом на развитие языков программирования. В частности, его синтаксис стал основой для таких языков как С++, С#, Java, PHP, JavaScript. Особо следует сказать про связь с C++. C++ напрямую произошёл от Си. Но впоследствии их развитие происходило отдельно друг от друга, и даже появилась несовместимость между ними. Стандарт C99 добавил в язык Си ряд конфликтующих с C++ особенностей. В итоге в настоящее время оба языка являются фактически самодостаточными и развиваются независимо.
Основные особенности Си:
– универсальность - один и тот же код может быть скомпилирован на почти каждой платформе (при наличии для нее компилятора);
– Высокая скорость выполнения
– Компактность, небольшой размер выходных скомпилированных файлов
4.1.3 Java
На сегодняшний момент язык Java является одним из самых распространенных и популярных языков программирования. Первая версия языка появилась еще в 1996 году в недрах компании Sun Microsystems, впоследствии поглощенной компанией Oracle. Java задумывался как универсальный язык программирования, который можно применять для различного рода задач. И к настоящему времени язык Java проделал большой путь, было издано множество различных версий. Текущей версией является Java 8, официальный релиз которой произошел в марте 2014 года. А Java превратился из просто универсального языка в целую платформ, которая объединяет различные технологии, используемые в целого ряда задач: от создания десктопных приложений до написания крупных веб-порталов и сервисов. Кроме того, язык Java активно применяется для создания программного обеспечения для целого ряда устройств: обычных ПК, планшетов, смартфонов и мобильных телефонов и даже бытовой техники. Достаточно вспомнить популярность мобильной ОС Android, большинство программ для которой пишутся именно на Java.
Ключевой особенностью языка Java является то, что его код сначала транслируется в специальный байт-код, независимый от платформы. А затем этот байт-код выполняется виртуальной машиной JVM (Java Virtual Machine). В этом плане Java отличается от стандартных интерпретируемых языков как PHP или Perl, код которых сразу же выполняется интерпретатором. В то же время Java не является и чисто компилируемым языком, как С или С++.
Подобная архитектура обеспечивает кроссплатформенность и аппаратную переносимость программ на Java, благодаря чему подобные программы без перекомпиляции могут выполняться на различных платформах - Windows, Linux, Solaris и т.д. Для каждой из платформ может быть своя реализация виртуальной машины JVM, но каждая из них может выполнять один и тот же код.
Еще одной ключевой особенностью Java является то, что она поддерживает автоматическую сборку мусора. А это значит, что вам не надо освобождать вручную память от ранее использовавшихся объектов, как в С++, так как сборщик мусора это сделает автоматически за вас.
Java является объектно-ориентированным языком. Он поддерживает полиморфизм, наследование, статическую типизацию. Объектно-ориентированный подход позволяет решить задачи по построению крупных, но в тоже время гибких, масштабируемых и расширяемых приложений.
4.1.4 Python
Python – это интерпретируемый алгоритмический объектно-ориентированный язык со строгой динамической типизацией .
Для многих основное преимущество языка Python заключается в удобочитаемости, ясности и более высоком качестве, отличающими его от других инструментов в мире языков сценариев. Программный код на языке Python читается легче, а значит, многократное его использование и обслуживание выполняется гораздо проще, чем использование программного кода на других языках сценариев. Единообразие оформления программного кода на языке Python облегчает его понимание даже для тех, кто не участвовал в его создании. Кроме того, Python поддерживает самые современные механизмы многократного использования программного кода, каким является объектно-ориентированное программирование (ООП).
По сравнению с компилирующими или строго типизированными языками, такими как C, C++ и Java, Python во много раз повышает производительность труда разработчика. Объем программного кода на языке Python обычно составляет треть или даже пятую часть эквивалентного программного кода на языке C++ или Java. Это означает меньший объем ввода с клавиатуры, меньшее количество времени на отладку и меньший объем трудозатратна сопровождение. Кроме того, программы на языке Python запускаются сразу же, минуя длительные этапы компиляции и связывания, необходимые в некоторых других языках программирования, что еще больше увеличивает производительность труда программиста .
Большая часть программ на языке Python выполняется без изменений на всех основных платформах. Перенос программного кода из операционной системы Linux в Windows обычно заключается в простом копировании фай-лов программ с одной машины на другую. Более того, Python предоставляет массу возможностей по созданию переносимых графических интерфейсов, программ доступа к базам данных, веб-приложений и многих других типов программ. Даже интерфейсы операционных систем, включая способ запуска программ и обработку каталогов, в языке Python реализованы переносимым способом.
В составе Python поставляется большое число собранных и переносимых функциональных возможностей, известных как стандартная библиотека. Эта библиотека предоставляет массу возможностей, востребованных в прикладных программах, начиная от поиска текста по шаблону и заканчивая сетевыми функциями. Кроме того, Python допускает расширение как за счет ваших собственных библиотек, так и за счет библиотек, созданных сторонними разработчиками. Из числа сторонних разработок можно назвать инструменты создания веб-сайтов, программирование математических вычислений, доступ к последовательному порту, разработку игровых программ и многое другое. Например, расширение NumPy позиционируется как свободный и более мощный эквивалент системы программирования математических вычислений Mathlab.
Сценарии Python легко могут взаимодействовать с другими частями при-ложения благодаря различным механизмам интеграции. Эта интеграция позволяет использовать Python для настройки и расширения функциональных возможностей программных продуктов. На сегодняшний день программный код на языке Python имеет возможность вызывать функции из библиотек на языке C/C++, сам вызываться из программ, написанных на языке C/C++, интегрироваться с программными компонентами на языке Java, взаимодей-ствовать с такими платформами, как COM и .NET, и производить обмен дан-ными через пследовательный порт или по сети с помощью таких протоколов, как SOAP, XML-RPC и CORBA.