Расчёт на ЭВМ характеристик выходных сигналов электрических цепей
Приведение выходного сигнала к аналитическому вид. Программа расчёта характеристик выходного сигнала электрической цепи. Таблица идентификаторов и описаний пользовательских подпрограмм. Построение графиков по массивам входного и выходного сигналов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 28.09.2012 |
Размер файла | 594,2 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Санкт-Петербургский Государственный университет телекоммуникаций им. проф. М.А. Бонч-Бруевича
ФАКУЛЬТЕТ ВЕЧЕРНЕГО И ЗАОЧНОГО ОБУЧЕНИЯ
КУРСОВАЯ РАБОТА НА ТЕМУ:
Расчет на ЭВМ характеристик выходных сигналов электрических цепей
по дисциплине «ИНФОРМАТИКА»
СОДЕРЖАНИЕ
1. Постановка задачи
2. Приведение выходного сигнала к аналитическому виду
3. Программа расчета характеристик выходного сигнала электрической цепи
4. Таблица идентификаторов
5. Таблица описаний пользовательских подпрограмм
6. Контрольный расчет
7. Построение графиков по полученным массивам входного и выходного сигналов в MathCAD
1. ПОСТАНОВКА ЗАДАЧИ
Дана нелинейная безынерционная цепь:
Входной сигнал задан в виде аналитического выражения (код А=23):
Рабочий набор исходных данных:
; ;
Передаточная характеристика задана в виде графика (код Б=10):
Рабочий набор исходных данных:
; ;
Вычислить:
- максимальное значение выходного сигнала (код В=00)
2. ПРИВЕДЕНИЕ ВЫХОДНОГО СИГНАЛА К АНАЛИТИЧЕСКОМУ ВИДУ
программа сигнал массив электрический
Выходной сигнал задан в виде графика. Перейдём к аналитическому выражению. Из графика видно, что имеет три линейных участка. Поэтому аналитическая запись будет иметь вид:
при
= при
при
Для определения составим систему из четырех уравнений для четырех значений аргумента и решим их.
при
при
Подставив во второе уравнение, получаем:
;
при
при
Подставив во второе уравнение, получим:
;
Подставив в , получим:
В итоге получаем:
при , где ,
= при ,где ,
при
3. ПРОГРАММА РАСЧЕТА ХАРАКТЕРИСТИК ВЫХОДНОГО СИГНАЛА ЭЛЕКТРИЧЕСКОЙ ЦЕПИ
program kurs_1;
uses crt;
const
maxind=160;
type
arraytype=array[1..maxind] of real; {описание глобальных параметров}
{-------------------------------------------------------------------------}
{Процедура ввода исходной информации}
procedure data (var kl:byte;
var tn,tk,uin2,uin3:real);
begin
writeln('Введите kl=1, если хотите вывести результаты на монитор');
writeln('Введите kl=0, если хотите записать результаты в файлы f1 и f2');
write('kl=');
readln(kl);
writeln('Введите ваши исходные данные:');
write('Начальный момент наблюдения ');
write('tn=');
readln(tn);
write('Конечный момент наблюдения ');
write('tk=');
readln(tk);
writeln('Введите Uвх1');
write('uin2=');
readln(uin2);
writeln('Введите Uвх2');
write('uin3=');
readln(uin3);
end;
{---------------------------------------------------------------------}
{Процедура формирования массива входных отсчетов}
procedure uin1(kl:byte;tn,tk:real;
var uin:arraytype); {список формальных параметров}
const
t1=2; k=4; u0=0;
var
t,s,del:real; {описание локальных переменных}
i:integer;
u:array[1..4]of integer;
begin
u[1]:=15;u[2]:=5;u[3]:=3;u[4]:=2;
t:=tn;
del:=(tk-tn)/(k-1);
s:=0;
for i:=1 to k do
begin
s:=s+u[i]*sin(i*2*Pi*t/t1);
t:=t+del;
uin[i]:=u0+s;
end;
end;
{---------------------------------------------------------------------}
{Процедура формирования массива выходных отсчетов}
procedure uout1(kl:byte;uin2,uin3:real;uin:arraytype;
var uout:arraytype);
const
u0=5; u1=10; u2=50;
var a1,a2,b1,b2:real;
i:integer;
begin
a1:=(u1-u0)/uin2;
b1:=u0;
a2:=(u2-u1)/(uin3-uin2);
b2:=u1-a2*uin2;
for i:=1 to 4 do
begin
if uin[i]>=uin3 then
uout[i]:=u2;
if (uin[i]>=uin2) and (uin[i]<uin3) then
uout[i]:=a2*uin[i]+b2;
if uin[i]<uin2 then
uout[i]:=a1*uin[i]+b1;
end;
end;
{---------------------------------------------------------------------}
{Процедура функции нахождения максимального значения выходного сигнала}
function maxi(uout:arraytype):real;
var max:real;
i:integer;
begin
max:=uout[i];
for i:=2 to 4 do
if uout[i]>max
then max:=uout[i];
maxi:=max;
end;
{---------------------------------------------------------------------------}
{процедура записи массивов входного и выходного сигналов на диск в файлы}
procedure writeinfo(uin,uout:arraytype);
var
f1,f2:text;
i:integer;
begin
assign(f1,'f1.prn'); {связывание и открытие файлов}
assign(f2,'f2.prn');
rewrite(f1); {открыть файл для записи}
rewrite(f2);
for i:=1 to 4 do
begin
writeln(f1,uin[i]:7:3); {запись в файл}
writeln(f2,uout[i]:7:3);
end;
close(f1); {закрытие файлов}
close(f2);
end;
{--------------------------------------------------------------------------}
{Процедура вывода на экран результатов программы}
procedure rezult(kl:byte;
uin,uout:arraytype);
var
i:integer;
begin
if kl=1 then {признак вывода результатов на экран монитора}
begin
writeln('отсчеты входного сигнала');
for i:=1 to 4 do
writeln('Uвх[',i,']',uin[i]:7:3); {вывод входных отчетов}
writeln('отсчеты выходного сигнала');
for i:=1 to 4 do
writeln('Uвых[',i,']=',uout[i]:7:3); {вывод выходных отчетов}
writeln('Макс.значение вых. сигнала=' ,maxi(uout):7:3);
end
else {kl - любое число, например 0}
begin
writeln;
writeln;
writeln('Программа закончила свою работу. Массивы');
writeln('входных и выходных отсчетов сформированы');
writeln('и записаны в файлы f1.prn и f2.prn соответственно');
end;
end;
{--------------------------------------------------------------------}
var
kl:byte; {глобальные параметры}
tn,tk,uin2,uin3:real;
uin,uout:arraytype;
{--------------------------------------------------------------------}
Begin {начало главной программы}
clrscr;
data(kl,tn,tk,uin2,uin3); {тело программы}
uin1(kl,tn,tk,uin);
uout1(kl,uin2,uin3,uin,uout);
writeinfo(uin,uout);
rezult(kl,uin,uout);
readln;
end. {конец программы}
4. ТАБЛИЦА ИДЕНТИФИКАТОРОВ
Обозначение в задаче |
Идентификатор |
Назначение |
|
k |
k |
Количество отсчетов входного сигнала |
|
kl |
Признак - ключ, определяющий режим работы kl=1, если вывод на монитор, kl - любое число, например 0, если вывод в файл на диск. |
||
uin |
Массив для хранения отсчетов входного сигнала. |
||
uout |
Массив для хранения отсчетов выходного сигнала. |
||
tn |
Начальный момент наблюдения входного сигнала. |
||
tk |
Конечный момент наблюдения входного сигнала. |
||
t |
t |
Текущий момент наблюдения. |
|
T |
t1 |
Период. |
|
u0 |
Коэффициенты для нахождения входного сигнала. |
||
u1 |
|||
u2 |
|||
u3 |
|||
u4 |
|||
del |
Интервал между двумя соседними отсчетами входного сигнала. |
||
i |
Счетчик цикла. |
||
Uin2 |
Параметры передаточной характеристики. |
||
Uin3 |
|||
u0 |
|||
u1 |
|||
u2 |
|||
max |
Переменная для хранения макс. значения выходного сигнала. |
||
f1,f2 |
Логические имена файлов. |
||
a1 |
Коэффициенты, появляющиеся при переходе от графического изображения сигнала к его аналитическому виду. |
||
a2 |
|||
b1 |
|||
b2 |
|||
s |
s |
Сумма (промежуточное значение), для нахождения значений входного сигнала. |
5. ТАБЛИЦА ОПИСАНИЯ ПОЛЬЗОВАТЕЛЬСКИХ ПОДПРОГРАММ
Подпрограмма |
Входные и выходные параметры |
Назначения |
|
procedure data (var kl:byte; var tn,tk,uin2,uin3:real); |
все формальные параметры процедуры являются выходными (var - параметры) |
Позволяет ввести с клавиатуры необходимые для решения задачи исходные данные и передать эти данные в другие подпрограммы. |
|
procedure uin1(kl:byte;tn,tk:real; var uin:arraytype); |
kl, tn, tk - входные параметры. Используются процедурой при формировании массива входных отсчетов сигнала. uin - входной var - параметр, хранит значения отсчетов входного сигнала. |
Процедура формирует массив отсчетов входного сигнала, который в дальнейшем может быть использован в других подпрограммах. |
|
procedure uout1 (kl:byte;uin2, uin3:real;uin:arraytype; var uout:arraytype); |
kl, uin2, uin3, uin- входные параметры. Используются процедурой при формировании массива выходных отсчетов сигнала. uout - выходной var - параметр, хранит значения отсчетов выходного сигнала. |
Процедура формирует массив отсчетов выходного сигнала, который в дальнейшем может быть использован в других подпрограммах. |
|
function maxi (uout:arraytype): real; |
uout - входной параметр, с его помощью функция рассчитывает своё единственное значение - максимальное значение выходного сигнала. |
Функция находит максимальное значение выходного сигнала и возвращает его в точку вызова. |
|
procedure writeinfo(uin,uout:arraytype); |
uin, uout - входные параметры, которые процедура использует для проведения операции записи массивов входных и выходных сигналов в файлы на диск. |
Процедура записывает отсчеты входного и выходного сигналов в нужном формате в файлы f1.prn и f2.prn соответственно. |
|
procedure rezult (kl:byte; uin,uout:arraytype); |
kl, uin, uout - входные параметры, используемые процедурой для вывода результатов на экран монитора. |
выводит результат работы программы на экран монитора, если пользователь ввел с помощью процедуры data нужное значении признака kl=1. |
6. КОНТРОЛЬНЫЙ РАСЧЕТ
Назначение набора данных |
Набор данных |
Ручные вычисления |
Вычисления на ЭВМ |
|||||||||||
k |
tn |
tk |
i |
i |
||||||||||
Контрольный |
4 |
10 |
20 |
10 |
15 |
1 2 3 4 |
0 4,33 4,33 4,33 |
5 7,165 7,165 7,165 |
7,165 |
|||||
Контрольный |
4 |
10 |
20 |
1 |
8 |
1 2 3 4 |
0 4,33 4,33 4,33 |
5 29,029 29,029 29,029 |
29,029 |
|||||
Контрольный |
4 |
10 |
20 |
1 |
3 |
1 2 3 4 |
0 4,33 4,33 4,33 |
5 50 50 50 |
50 |
|||||
Рабочий |
4 |
10 |
40 |
1 2 3 4 |
7. ПОСТРОЕНИЕ ГРАФИКОВ ПО ПОЛУЧЕННЫМ МАССИВАМ ВХОДНОГО И ВЫХОДНОГО СИГНАЛОВ В MATHCAD
1. График по первому контрольному расчету:
График входного сигнала.
Размещено на http://www.allbest.ru/
График выходного сигнала
Размещено на http://www.allbest.ru/
2. График по второму контрольному расчету:
График входного сигнала.
График выходного сигнала.
3. График по третьему контрольному расчету:
График входного сигнала.
График выходного сигнала.
Размещено на Allbest.ru
Подобные документы
Процедура формирования массивов отсчетов входного и выходного сигналов и времени; вычисление величины заданной характеристики выходного сигнала: функция нахождения длительности импульса; организация текстовых файлов; построение графиков в системе MathCad.
курсовая работа [75,9 K], добавлен 28.09.2012Вычисление значения входного и выходного сигналов в n-равноотстоящих точках, вывод на экран таблицы. Структура программы: модули, список идентификаторов функций, интерфейс. Исходный код программы. Проверка расчетов в Maxima и построение графиков.
курсовая работа [1,4 M], добавлен 14.07.2012Разработка проектов на языке программирования высокого уровня. Составление алгоритма решения. Определение длительности переднего фронта входного, выходного сигнала. Работа с дисковыми файлами. Представление программы в виде иерархической структуры блоков.
курсовая работа [163,2 K], добавлен 28.05.2015Разработка программного обеспечения на языке C. Определение сигнала на выходе цепи, формирование его передаточной характеристики. Расчет длительности переднего фронта входного и выходного сигнала. Выбор структуры, отладка и тестирование программы.
курсовая работа [83,0 K], добавлен 26.09.2014Функции формирования массива времени. Формирование массива входного напряжения, массива выходного напряжения. Функция вывода таблицы, расчета заданной точности, вывода титульного листа. Запись в файл массива времени. Блок–схема и текст программы.
курсовая работа [155,6 K], добавлен 22.04.2012Проведение идентификации модели по схеме МНК. Запись исходной модели в дискретной форме. Сравнение параметров модели и результатов идентификации. Анализ графиков модельного выходного сигнала и оценки выходного сигнала, восстановленных по схеме МНК.
лабораторная работа [461,0 K], добавлен 19.02.2015Арифметико-логическое устройство. Мультиплексирование как передача различных сигналов по одной линии в разные моменты времени. Дешифрация как преобразование входного двоичного кода в номер выходного сигнала. Оперативное запоминающее устройство (ОЗУ).
тезисы [15,1 K], добавлен 15.03.2009Определение характеристик точности выходного параметра вероятностным расчетно-аналитическим методом. Моделирование на электронно-вычислительной машине точности выходного параметра каскада. Сравнение его точности. Обоснование числа реализаций каскада.
курсовая работа [870,4 K], добавлен 23.06.2014Исследования амплитудных и временных параметров электрического сигнала. Классификация осциллографов по назначению и способу вывода измерительной информации, по способу обработки входного сигнала. Классы SignalObject, Ostsilograf, Setka, Signal и Form2.
курсовая работа [841,8 K], добавлен 08.09.2014Порядок и методика моделирования входного сигнала, общие принципы представления сигналов математическими моделями. Взаимосвязь математических моделей с компьютерными, их место и значение на современном этапе. Пакеты для моделирования различных процессов.
реферат [1,1 M], добавлен 19.04.2009