Министерство образования и науки Российской Федерации
Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования
«Уфимский государственный нефтяной технический университет»
Филиал в г. Стерлитамаке
Кафедра
автоматизированных технологических и информационных систем
Пояснительная записка к курсовой работе
по дисциплине «Моделирование систем и процессов»
Моделирование
двигателя постоянного тока в системе SCILAB.
Студент Н.С. Пухов
Руководитель Е.А. Шулаева
Стерлитамак
2016
Содержание
Введение
. Анализ сред математического программирования
.1 Среда программирования MathCAD
.2 Maple и Mathematica
.3 MATLAB
.4 Scilab
.5 Выбор среды математического программирования
. Основные сведения о программе Scilab
. Разработка алгоритмов для моделирования двигателя постоянного тока
.1 Основные сведения о двигателе постоянного тока
.2 Описание методик определения характеристик объекта управления
. Моделирование двигателя постоянного тока в системе Scilab
Заключение
Список
литературы
Введение
Высокие технологии не стоят на месте и все глубже проникают в различные сферы деятельности человека. На сегодняшний день уже практически не осталось ни одной науки, которая не применяла бы возможности современных технологий. Математика тому не исключение. Раньше, чтобы подсчитать какую-либо интерполяцию, дискретную функцию, дифференциальное уравнение, инженерам, преподавателям и студентам приходилось затратить множество времени, сил. И технологии здесь сыграли свою роль, тем самым, облегчив человеку жизнь.
В настоящее время существует множество специализированных математических пакетов, прикладных программ, табличных процессоров и языков программирования для вычисления тех или иных задач.
Как же выбрать тот или иной продукт, подходящий для конкретной поставленной цели пользователя, каковы его функциональные свойства, продуктивность и простота использования.
Задачи курсовой работы:
изучить современные программные средства математической автоматизации (деятельности);
дать краткую характеристику;
провести анализ рассмотренных специализированных математических пакетов;
моделирование двигателя постоянного тока в системе Scilab.
. Анализ сред математического программирования
Развитие вычислительной техники и программирования дало возможность
создать специализированные системы компьютерной математики, которые объединяют
в себе свойства редактора текстов, языков программирования, имеют большое
количество встроенных математических функций и методов решения основных задач
математики. Перейдем к их рассмотрению.
.1 Среда программирования MathCAD
- система компьютерной алгебры из класса систем автоматизированного проектирования, ориентированная на подготовку интерактивных документов с вычислениями и визуальным сопровождением, отличается легкостью использования и применения для коллективной работы.имеет интуитивный и простой для использования интерфейс пользователя. Для ввода формул и данных можно использовать как клавиатуру, так и специальные панели инструментов.
Некоторые из математических возможностей Mathcad (версии до 13.1 включительно) основаны на подмножестве системы компьютерной алгебры Maple. Mathcad 15 и его основные новые возможности:
Добавлено 25 функций для расчетов по планированию экспериментов (design of experiments (DoE)). Также имеются шаблоны для проведения нескольких экспериментов, при наличии нескольких уровней эксперимента (режимов тестирования) и различных условий;
Интеграция с базой данных KnovelMath (инженерные и технические стандарты); Интеграция с программным обеспечением Kornucopia (позволяет применять шаблоны процессов для оценки данных натурных экспериментов и результатов расчетов);
Интеграция с базой данных Truenumbers (от True Engineering Technology), предоставляющей доступ к различным справочным материалам и данным (результаты из Mathcad просто передаются в различные форматы документов, что облегчает передачу данных в цепи разработчиков);
Поддержка операционной системы Microsoft Windows 7;
Функция explicit работает полноценно, т.е. показывает после формул соответствующие численные значения, что нагляднее и облегчает контроль вычислений.Prime 3.0, вышедший 12 октября 2013 года, является новейшей версией семейства Mathcad. Обладает повышенной производительностью, удобным интерфейсом пользователя и рядом инновационных инструментов, которые позволяют инженерам работать еще быстрее.
Нововведения новейшей версии MathcadPrime 3.0
Глобальный оператор определения - позволит определить переменную в любом месте рабочего листа
Математика в тексте - позволяет вводить формулы непосредственно в тексте. Шаблоны документов - уникальный инструмент для повторяемых расчетов - позволяет создавать шаблоны для документов любого содержания с неограниченным количеством расчетов.
Форматирование формул - позволяет акцентировать внимание читателя на отдельных моментах расчета.
Встроены математические функции
Улучшены математические расчетыкомпонент
Символьные расчеты
Улучшенный модуль решателя
Улучшена работа с 3D-графиками
Требования к ПК:работает на платформах: Microsoft Windows XP/Vista/7/8, Linux, MacOS X- 700 MHz или выше; рекомендуется 2000+ MHz 512 MB RAM; 1.75 GB свободного пространства на жестком диске установленный Microsoft NET Framework 4.0
Стоимость последней версии MathcadPrime 3.0 с новой лицензией: 2585
рублей. Существует и бесплатная 30-дневная пробная версия.
.2 Maple и Mathematica
предоставляет удобную среду для компьютерных экспериментов, в ходе которых пробуются различные подходы к задаче, анализируются частные решения, а при необходимости программирования отбираются требующие особой скорости фрагменты. Пакет позволяет создавать интегрированные среды с участием других систем и универсальных языков программирования высокого уровня. Когда расчеты произведены и требуется оформить результаты, то можно использовать средства этого пакета для визуализации данных и подготовки иллюстраций для публикации. Для завершения работы остается подготовить печатный материал (отчет, статью, книгу) прямо в среде Maple, а затем можно приступать к очередному исследованию. Работа проходит интерактивно - пользователь вводит команды и тут же видит на экране результат их выполнения. При этом пакет Maple совсем не похож на традиционную среду программирования, где требуется жесткая формализация всех переменных и действий с ними. Здесь же автоматически обеспечивается выбор подходящих типов переменных и проверяется корректность выполнения операций, так что в общем случае не требуется описания переменных и строгой формализации записи.
Пакет Maple состоит из ядра (процедур, написанных на языке С и хорошо оптимизированных), библиотеки, написанной на Maple-языке, и развитого внешнего интерфейса. Ядро выполняет большинство базовых операций, а библиотека содержит множество команд - процедур, выполняемых в режиме интерпретации. Интерфейс Maple основан на концепции рабочего поля (worksheet) или документа, содержащего строки ввода-вывода и текст, а также графику.
Работа с пакетом происходит в режиме интерпретатора. В строке ввода пользователь задает команду, нажимает клавишу Enter и получает результат - строку (или строки) вывода либо сообщение об ошибочно введенной команде. Тут же выдается приглашение вводить новую команду и т.д.
Систему Maple можно использовать и на самом элементарном уровне ее возможностей - как очень мощный калькулятор для вычислений по заданным формулам, но главным ее достоинством является способность выполнять арифметические действия в символьном виде, то есть так, как это делает человек. При работе с дробями и корнями программа не приводит их в процессе вычислений к десятичному виду, а производит необходимые сокращения и преобразования в столбик, что позволяет избежать ошибок при округлении. Для работы с десятичными эквивалентами в системе Maple имеется специальная команда, аппроксимирующая значение выражения в формате чисел с плавающей запятой.
Минимальные требования к системе:
процессор Pentium III 650 МГц;
Мбайт оперативной памяти (рекомендуется 256 Мбайт);
Мбайт дискового пространства;
операционные системы: Windows NT 4 (SP5)/98/ME/2000/2003 Server/XP Pro/XP Home.- система компьютерной алгебры, используемая во многих научных, инженерных, математических и компьютерных областях. Кроме того, Mathematica - это интерпретируемый язык функционального программирования. Можно сказать, что система Mathematica написана на языке Mathematica, хотя некоторые функции, особенно относящиеся к линейной алгебре, в целях оптимизации были написаны на языке C. Mathematica поддерживает и процедурное программирование с применением стандартных операторов управления выполнением программы (циклы и условные переходы), и объектно-ориентированный подход. Mathematica допускает отложенные вычисления. Также в систему Mathematica можно задавать правила работы с теми или иными выражениями.версии 9 обладает такими нововведениями
Обновленный интерфейс (Wolfram Predictive Interface).
Анализ социальных сетей.
Анализ выживаемости.
Анализ надежности.
Работа с временными рядами.
Интеграция с R.
Распознавание лиц на фотографиях.
Аппаратные характеристики:
процессор: Intel Pentium IV 1.6 ГГц или аналогичный
дисковое пространство: 300 Мб
системная память (ОЗУ): 1 Гб требуется; 2 Гб + рекомендуется
Операционная система: Microsoft Windows, Mac OS X, Linux.
Официальный сайт: #"864721.files/image001.jpg">
Рис. 1. Основное окно Scilab 5.3.1
Основное окно Scilab условно можно разделить на две области:
Область меню, которая расположена вверху экрана и панель инструментов.
Рабочую область с командной строкой, в которой, собственно, и происходит решение задачи.
Индикатором ввода в командной строке является символ --> в рабочей области, возле которого находится курсор. Ввод завершается нажатием клавиши Enter. Пока не нажата клавиша Enter, текст в командной строке можно редактировать стандартным способом. После нажатия Enter команда перемещается в область просмотра доступ к ее редактированию закрыт. Если есть необходимость вернуться к этой или другой данной команде, то при помощи клавиши управления курсором ↑ и ↓ ранее выполненные команды могут быть возвращены в командную строку. После этого их можно редактировать и выполнять повторно.
Ввод комментариев
// <текст комментария>
Арифметические вычисления
Для выполнения простейших арифметических операций Scilab использует следующие операторы:
+ сложение;
вычитание;
* умножение;
/ деление слева направо;
\ деление справа налево;
^ возведение в степень.
Чтобы вычислить значение арифметического выражения, необходимо ввести его в командную строку и нажать Enter
-> 5*2 ans=10
При записи выражения следует помнить о приоритете выполнения арифметических операций. В случае необходимости его изменения используйте круглые скобки.
Десятичная запятая в Scilab кодируется точкой.
Диапазон значение задается с помощью :
-> 1:5 ans= 2. 3. 4. 5.
Если вычисляемое выражение длинное и желательно перенести его запись на следующую строку, то в конце незавершенной строки необходимо ввести три (или более) точки … После этого можно нажать Enter и продолжать набор оставшейся части на следующей строке.
Числовые результаты могут быть представлены с фиксированной (например, 4.12, 6.05, -17.5489) или с плавающей (например, -3.2Е-6, -6.42Е+2) точкой. Числа в формате с плавающей точкой представлены в экспоненциальной форме mE±p, где m мантисса (целое или дробное число с десятичной точкой), p порядок (целое число).
Обратите внимание: если результат действия команды отображать не нужно, то ее набор следует завершить символом;
Переменные. Пользователь может определить переменную, чтобы использовать ее в последующих расчетах. Определить переменную означает задать ее имя и значение. С этой целью используется оператор присваивания, в общем случае имеющий вид: имя_переменной = значение_переменной
В Scilab допускается использование в имени переменной множества символов, однако мы рекомендуем использовать только латинские буквы и цифры, причем первой должна быть буква и максимальная длина имени - 24 символа. Система различает большие и малые буквы в именах переменных, это имена разных переменных.
Выражение в правой части оператора присваивания может быть числом, арифметическим выражением, символьным выражением или строкой символов. В последнем случае выражение справа берется в кавычки.
Системные переменные. Если пользователь не задал в командной строке имя переменной, результат будет присвоен системной переменной с именем ans (от англ. answer - ответ). Переменную ans можно использовать в последующих вычислениях, но ее значение будет изменяться каждый раз после выполнения команды без оператора присваивания.
В Scilab существуют другие системные переменные (или системные константы). Их запись начинается символа %:
%i - мнимая единица ( √−1);
%pi - число π = 3.141592653589793;
%e - число e = 2.7182818;
%inf - машинный символ бесконечности (∞);
%NaN - неопределенный результат (0/0,∞/∞ и т. п.);
%eps - условный ноль %eps=2.220Е-16.
Функции. Любой математический пакет или язык программирования оперирует двумя типами функций: встроенными и определенными пользователем.
В общем виде обращение к функции имеет вид: имя_переменной=имя_функции(арг1 [,арг2,...]) где имя_переменной - переменная, куда запишутся результаты работы функции; имя_функции - имя встроенной или введенной ранее пользователем функции; арг1, арг2 и т.д. - аргументы функции.
Встроенные функции. Функций этого типа в Scilab вполне достаточно для
проведения, анализа и оформления инженерных вычислений. Их рассмотрение начнем
с математических функций, как наиболее распространенных в инженерной практике.
|
sin(x) |
синус числа х |
|
cos(x) |
косинус числа х |
|
tan(x) |
тангенс числа х |
|
cotg(x) |
котангенс числа х |
|
asin(x) |
арксинус числа х |
|
acos(x) |
арккосинус числа х |
|
atan(x) |
арктангенс числа х |
|
exp(x) |
экспонента числа х |
|
log(x) |
натуральный логарифм числа х |
|
log10(x) |
десятичный логарифм числа х |
|
log2(x) |
логарифм по основанию 2 числа х |
|
sqrt(x) |
|
|
abs(x) |
модуль числа х |
Справку и помощь можно получить с помощью команды help имя .
Функции пользователя
В Scilab функция f(x) оформляется как функция пользователя двумя способами.
Способ 1. Применение оператора deff, имеющего в общем случае вид: deff (’[имя1,...,имяN]= имя_функции (переменная_1,...,переменная_M)’, ’имя1=выражение1;...;имя N=выражениеN’) где имя1,...,имяN - список выходных параметров, то есть переменных, которым будет присвоен конечный результат вычислений, имя_функции - имя с которым эта функция будет вызываться, переменная_1,...,переменная_M - входные параметры, имя1=выражение1;...;имя N=выражение N- определение (вычисление) выходных переменных.
Способ 2. Применение конструкции function, синтаксис которой следующий: function [имя1,...,имяN] = имя_функции (переменная_1,...,переменная_M) endfunction где имя1,...,имяN - список выходных параметров; имя_функции - имя с которым эта функция будет вызываться, переменная_1, ...,переменная_M - входные параметры. Определение выходных переменных происходит в теле функции.
Логические операторы. При решении задач довольно часто приходится иметь дело с алгоритмом ветвления - ход вычисления зависит от выполнения или невыполнения какого-либо условия: если ... то... иначе (в противном случае).