Система управления движением локомотива с использованием ГЛОНАСС/GPS

Разработка системы управления для обеспечения передачи данных с бортовой аппаратуры локомотива на диспетчерскую станцию для ее обработки. Удобное отображение полученной информации на цифровой карте или схеме путеводного развития объекта внедрения.

Рубрика Коммуникации, связь, цифровые приборы и радиоэлектроника
Вид курсовая работа
Язык русский
Дата добавления 09.06.2016
Размер файла 1,9 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

.

При асинхронном режиме передаче вначале и в конце сообщения посылается соответственно старт и 2 стоп-бита. Следовательно, длина сообщения составляет 11 бит. Тогда длительность сообщения определяется по формуле:

Длительность импульса определяется по формуле

, (4.5)

где Q - скважность, примем .

Подставив значения, получим

Практическая полоса частот при передаче радиоимпульсами определяется по формуле:

. (4.5)

Скремблирование не расширяет полосу практическую полосу частот, фактически получаем:

7. Системные расчёты

7.1 Расчет и построение спектра сигналов в линии связи

Зная мощность передатчика, вычисляем амплитуду носителя:

В

Как известно, спектр ЧМП сигнала состоит из бесконечного множества гармонических составляющих вида . Согласно используемому виду модуляции (GMSK) реализуется модуляция вида MSK, которая является видом ЧМ с индексом манипуляции=0,5.

.

Тогда выражение для указанного ЧМП сигнала будет иметь вид:

Расчет амплитуд гармонических составляющих сведем в таблицу 8.2.

Таблица 8.2 - Значения амплитуд гармонических составляющих спектра ЧМП сигнала

Вид составляющей

Выражение для расчета амплитуд

Амплитуда, В

0,135

-3,288

-0,009

0,05

-0.00215

Спектр ЧМП сигнала, построенный в соответствии с таблицей 4.3, показан на рисунке 4.26.

Определим среднюю мощность сигнала в полосе.

Вт.

Рисунок 8.2 - Практический спектр сигнала

7.2 Расчёт помехоустойчивости

Вероятность искажения одиночного сигнала P1 = 5*10-3, исходя их этого возможно сразу вычислить помехоустойчивость.

В проектируемом устройстве используется циклический код с d=4, что позволяет обнаруживать ошибки до тройных, включительно, исправление ошибок не производится, длина посылки - 1600 бит. Вероятность правильного приема при таких условиях составляет:

(8.5)

Подставив численное значение, получаем:

Вероятность обнаружения ошибки вычисляется по формуле:

(8.6)

Вероятность необнаруженной ошибки вычисляется по формуле:

(8.7)

Вероятности правильного приема , возникновения обнаруженной ошибки и возникновения необнаруженной ошибки образуют полную группу событий.

(8.8)

Т.о. произведем проверку . Помехоустойчивость устройства в пределах нормы.

7.3 Расчет надежности

Надежность - свойство изделия выполнять заданные функции, сохраняя эксплуатационные показатели в заданных пределах в течение требуемого промежутка времени. Надежность является комплексным свойством, которое обуславливается качественными характеристиками (безотказностью, долговечностью, ремонтопригодностью и сохраняемостью) и количественными:

вероятностью безотказной работы

, (8.5)

где е - основание натурального логарифма;

t - заданное время работы изделия;

средней наработкой до отказа

To = 1/ лсх; (8.6)

интенсивностью отказа схемы

лсх = лR · k1 + лC · k2 + лпайки · k3 + …, (8.7)

где лi - интенсивность отказов элементов данной группы;

ki - количество элементов данной группы;

Q= 1 - P - вероятностью отказа

Порядок расчета:

выбираем значения лi для элементов, которые входят в состав нашего изделия;

по выражению (8.7) рассчитываем интенсивность отказа схемы;

из выражения (8.6) находим наработку до отказа;

по выражению (8.5) определяем вероятность безотказной работы.

Произведем расчет количественных показателей надежности изделия, заданного в условии задачи. Для удобства расчета лсх составим таблицу 7.

Таблица 7 - Таблица расчета интенсивности отказа схемы

Тип элемента

л, 1/час

Кол-во, шт

лi, 1/час

Цифровые интегральные микросхемы

2,5 · 10-7

14

35 10-7

Конденсаторы керамические

10-7

11

11 · 10-7

Резисторы пленочные

2 · 10-8

8

1,6 10-7

Кварцевые резонаторы

10-7

1

10-7

Аналоговые интегральные микросхемы

10-8

21

2,1 10-7

лсх = 50,7 · 10-7

Тогда наработка до отказа составит

ч.

Вероятность безотказной работы при времени работы изделия, равным 1000000 ч., будет

.

Следовательно, вероятность отказа составит

.

8. Разработка программного обеспечения

8.1 Программа работы микроконтроллера на передатчике

Программа работы формирователя блока:

ORG 00H

JMP M0

ORG03H; формирование вектора

JMPINT; внешнего прерывания

ORG06H; основная программа

M0: SETBEA; разрешение всех прерываний

SETBEX0; разрешение внешнего прерывания

MOVP1, #FFH;

MOV R0, #00H; запись начального адреса

MOV R7, #00H; запись адреса приемника

M1: JMPM1; ожидание прерывания

INT: MOVP1, A; подпрограмма обработки прерывания

MOVA, P1; ввод данных

MOVX @R0, A; из А в ячейку BПД

CJNE R0, #96H, M2;

CLR EA; запрет внешних прерываний

M2: INC R0

RETI; возврат из подпрограммы

SETBP3.0; запрос разрешения выдачи информации

M3: JNB P3.1, M3; ожидание подтверждения

MOVR0, #00H

MOVX A, @R0; выдача блока данных в порт P2

MOVP0, A

INCR0

CJNER0, #AFH, M3

END

Программа работы УОД передающей стороны:

ORG06H; начало основной программы

SETBEA; разрешение всех прерываний

SETBEX0; разрешение внешнего прерывания

MOVDPTR, #0000H; обнуление регистра DPTR

MOVR2, #96H; длина блока данных в байтах

MOVP0, #FFH; открытие фиксаторов на портах

SETBP1.0; ввода-вывода

SETBP1.1

POLL: JBP1.0, DATA1; опрос линий 0,1 порта P1

JBP1.1, DATA2; о готовности выдачи

JMPPOLL

Подпрограмма записи информации от источника:

DATA1: MOV@R1, #01H; номер источника информации

MOV@R0, #01H; номер приемника информации

MOVR3, R2; длина блока информации

MOVDPTR, #0000H;

; сохранение информации

SAVE1: SETBP3.0; строб формирователя блока

MOVA, P1; данных на выдачу информации

CLRP3.0; снятие строба

MOVX@DPTR, A; запись в ВПД

INCDPTR;

DJNZR3, SAVE1; проверка длины блока данных

JMPSHIFR

Подпрограмма для шифрования данных методом шифрования с открытым ключом:

SHIFR: MOV R1, #ABH; адрес ВПД куда записываются

; зашифрованные данные

MOV R0, #00H; начало ВПД (Ai)

MOV R7, 10H; размер ключа

MOV R3, #00;

LKLUCH: MOV A, @R0;

MOV R6, A;

MOVX A, @R0;

SUBB A, R6;

MOVX @ R1, A;

INC R0;

INC R1;

DJNZ R7, LKLUCH;

REPEAT: MOV R4, R0;

MOV R0, R3;

MOVX A, @R0;

MOV R7, A;

MOV R0, R4;

MOVX A, @R0;

SUBB A, R7;

MOVX @R1, A;

INC R3;

INC R1;

INC R0;

CJNE R0, # 06, REPEAT

JMPRLE;

Подпрограмма сжатия методом RLE:

; подпрограмма сжатия данных

RLE: CLRES; запрещение прерываний

CLRET1; последовательного порта и

CLRET0; таймеров

MOVSCON, #0C8H; настройка последовательного

; порта на третий режим работы

; установка программируемого

; девятого бита в единицу, как

; второго стоп-бита

MOVTMOD, #20H; настройка и подготовка к работе

;

MOVTH1, #0E6H;

MOVTL1, #0E6H;

;

MOVR6, #00H; в регистр R6 заносится

очередной байт

MOVDPTR, #1B00H;

MOVR0, #18H; очередной блок данных

; сравнивается с о следующим

MOVA, @R0;

ANLA, #0FH;

MOVDPL, R3;

MOVX@DPTR, A; если есть совпадения инкремен INCR3; тируется счетчик числа

; совпадений и инкрементирует

SETBTR1; ся счетчик длины сжатого

; блока

MOVSBUF, R3;

MOVDPL, #00H; сравнение с сгенерированным

MOVXA, @DPTR; служебным символом и

MOVR5, A; занесение в устройство

MOVR1, #00H; записи

; начало цикла кодирования

CYCL: CLRC; сброс флага перенос

MOVA, R5; RRC A;

MOVR5, A;

MOVA, R6;

RRA;

ANLA, #7FH;

ORLA, #40H;

JMPCYCLIC

Подпрограмма кодирования циклическим кодом P (x) = x16 + x12 + x5 + 1:

CYCLIC: MOVR0, #0AH; состояния триггерных ячеек

CYCL_1: MOV@R0, #00H; 0 - 15 записываются в трёх

INCR0; байтах РПД: #0AH - #0CH и

CJNER0, #10H, CYCL_1; первоначально равны нулю

; предыдущие состояния:

; #0DH - #0FH

MOVDPTR, #1B00H; начало зашифрованного

; блока информации

MOVXA, @DPTR; первый байт блока

MOVR6, A; записывается в регистр R6

MOVDPL, R3; добавление к блоку

DECDPL; информации трёх нулевых

MOVX@DPTR, #00H; байт, исходя из того, что

INCDPL; старшая степень

MOVX@DPTR, #00H; образующего полинома

INCDPL; равна 16

MOVX@DPTR, #00H;

MOVDPL, #00H;

MOVA, R3; новая длина блока

ADDA, #03H; информации равна длине

MOVR1, A; блока исходных данных

; плюс три дополнительных байта

; начало основного цикла

CYCL_B: MOVR4, #08H; количество бит

; начало внутреннего цикла

CYCL_M: CLRC; сброс флага переноса

MOVR0, #0EH; организация циклического

MOVA, @R0; сдвига вправо всех ячеек

RRCA; сдвигового регистра деления

INCR0; длиной в три байта и

MOVA, @R0; перезапись нового состояния

RRCA; ячеек с адресов для их

MOVR0, #0CH; предыдущего состояния на

MOV@R0, A; адреса для их текущего

INCR0; состояния

MOVA, @R0;

RRCA;

MOVR0, #0AH;

MOV@R0, A;

MOVR0, #0EH;

MOVA, @R0;

RRCA;

MOVR0, #0BH;

MOV@R0, A;

DECR0; установка указателя адреса

; на старший байт ячеек

; сдвигового регистра деления

MOVA, R6; анализ байта входных

; данных

RLCA; проверка старшего бита и

CLRA.0; переход к следующему биту

MOVR6, A; сохранение сдвинутого байта

JNCBYTE_1; переход к анализу старшего

; байта ячеек сдвигового

; регистра деления, если

; старший бит входных

; данных нулевой

; подпрограмма суммирования

; по модулю 2 старшего бита входных данных и старшего

; бита старшего байта ячеек

; регистра деления

CLRC; сброс флага переноса

MOVA, @R0; старший байт регистра

RLCA; проверка старшего бита

RRA;

JNCC_0; переход, если старший бит

; нуль

CLRC; если старший бит единица,

CLRA.7; то после сложения по

JMPBYTE_1; модулю два, он равен нулю

C_0: SETBA.7; если старший бит нуль, то

JMPBYTE_1; после сложения по модулю

; два, он равен единице

; подпрограмма обработки

; старшего байта ячеек

; регистра в соответствии с

; образующим полиномом

BYTE_1: MOV@R0, A; определение последнего бита

MOVR0, #0FH; ячеек регистра деления из

MOVA, @R0; его предыдущего состояния

RRCA;

JNCSAVE; переход, если бит равен

; нулю

CLRC; если бит равен единице, то

MOVR0, #0AH; старший байт регистра

MOVA, @R0; деления изменяется в

ANLA, #2AH; соответствии с полиномом

XRLA, #2AH;

MOVB, @R0;

ANLB, #0D5H;

ORLA, B;

MOV@R0, A;

MOVR0, #0CH; аналогично производится

MOVA, @R0; обработка младшего байта

ANLA, #01H;

XRLA, #01H;

MOVB, @R0;

ANLB, #0FEH;

ORLA, B;

MOV@R0, A

SAVE: MOVR0, #0AH; перезапись текущего

MOVA, @R0; состояния ячеек регистра

MOVR0, #0DH; деления на адреса для их

MOV@R0, A; предыдущего состояния

MOVR0, #0BH;

MOVA, @R0;

MOVR0, #0EH;

MOV@R0, A;

MOVR0, #0CH;

MOVA, @R0;

MOVR0, #0FH;

MOV@R0, A;

DJNZR4, CYCL_M; проверка прохождения цикла

; по всем восьми битам

; входного байта

; если предыдущий цикл

INCDPL; завершён, то производится

MOVXA, @DPTR; обработка следующего байта

MOVR6, A; входных данных

DJNZR1, CYCL_B; проверка завершения

; основного цикла

MOVDPL, R3; добавление полученных

DECDPL; контрольных символов в

MOVR0, #0DH; ячейках регистра деления к

CYCL_2: MOVA, @R0; исходной кодовой

MOVX@DPTR, A; комбинации

INCR0;

INCDPL;

CJNER0, #10H, CYCL_2;

MOVR3, DPL;

MOVP1, 11111111; формирование синхросигнала

JMPCDP

9.2 Программа работы микроконтроллера на приемнике

Подпрограмма декодирования циклическим кодом:

CYCLIC: MOVR5, #0AH; состояния триггерных ячеек 0 - 15

CYCL_1: MOV@R5, #00H; записываются в двух байтах РПД

INCR5; 0A - 0C и первоначально равны

CJNER5, #10H, CYCL_1; нулю предыдущие состояния: 0D - 0F

MOVDPTR, #2000H; начало зашифрованного блока

MOVXA, @DPTR; первый байт блока записывается в

MOVR7, A; регистр R7

MOVDPL, R4; добавление к блоку информации

DECDPL; двух нулевых байт, исходя из того,

MOVX@DPTR, #00H; что старшая степень образующего

INCDPL; полинома равна 24

MOVX@DPTR, #00H;

INCDPL;

MOVX@DPTR, #00H;

MOVDPL, #00H;

MOVA, R4; новая длина блока информации

ADDA, #03H; равна длине блока исходных

MOVR3, A; данных плюс два дополнительных байта

Начало основного цикла:

CYCL_B: MOVR6, #08H; количество бит

; начало внутреннего цикла

CYCL_M: CLRC; сброс флага переноса

MOVR5, #0EH; организация циклического сдвига

MOVA, @R5; вправо всех ячеек сдвигового

RRCA; регистра деления длиной в три

INCR5; байта и перезапись нового

MOVA, @R5; состояния ячеек с адресов для их

RRCA; предыдущего состояния на адреса

MOVR5, #0CH; для их текущего состояния

MOV@R5, A;

INCR5;

MOVA, @R5;

RRCA;

MOVR5, #0AH;

MOV@R5, A;

MOVR5, #0EH;

MOVA, @R5;

RRCA;

MOVR5, #0BH;

MOV@R5, A;

DECR5; установка указателя адреса на

; старший байт ячеек сдвигового

; регистра деления

MOVA, R7; анализ байта входных данных

RLCA; проверка старшего бита и переход

CLRA.0; к следующему биту

MOVR7, A; сохранение сдвинутого байта

JNCBYTE_1; переход к анализу старшего байта

; ячеек сдвигового регистра

; деления, если старший бит

; входных данных нулевой

Подпрограмма суммирования по модулю два старшего бита входных данных и старшего бита старшего байта ячеек регистра деления:

CLRC;

MOVA, @R5; старший байт регистра

RLCA; проверка старшего бита

RRA;

JNCC_0; переход, если старший бит нуль

CLRC; если старший бит единица, то

CLRA.7; после сложения по модулю два, он

JMPBYTE_1; равен нулю

C_0: SETBA.7; если старший бит нуль, то после

JMPBYTE_1; сложения по модулю два, он равен

; единице

Подпрограмма обработки старшего байта ячеек регистра в соответствии с образующим полиномом:

BYTE_1: MOV@R5, A; определение последнего бита

MOVR5, #0FH; ячеек регистра деления из

MOVA, @R0; предыдущего его состояния

RRCA;

JNCSAVE; переход, если бит равен нулю

CLRC; если бит равен единице, то

MOVR5, #0AH; старший байт регистра деления

MOVA, @R5; изменяется в соответствии с

ANLA, #2AH; полиномом

XRLA, #2AH;

MOVB, @R5;

ANLB, #D5H;

ORLA, B;

MOV@R5, A;

MOVR5, #0CH; аналогично производится

MOVA, @R5; обработка младшего байта

ANLA, #01H;

XRLA, #01H;

MOVB, @R5;

ANLB, #FEH;

ORLA, B;

MOV@R5, A;

SAVE: MOVR5, #0AH; перезапись текущего состояния

MOVA, @R5; ячеек регистра деления на адреса

MOVR5, #0DH; для их предыдущего состояния

MOV@R5, A;

MOVR5, #0BH;

MOVA, @R5;

MOVR5, #0EH;

MOV@R5, A;

MOVR5, #0CH;

MOVA, @R5;

MOVR5, #0FH;

MOV@R5, A;

DJNZR6, CYCL_M; проверка прохождения цикла по

; всем восьми битам входного байта

; если предыдущий цикл завершён,

INCDPL; то производится обработка

MOVXA, @DPTR; следующего байта входных

MOVR7, A; данных

DJNZR3, CYCL_B; проверка завершения основного

; цикла

MOVDPL, R4; добавление полученных

DECDPL; контрольных символов в ячейках

MOVR5, #0DH; регистра деления к исходной

CYCL_2: MOVA, @R5; кодовой комбинации

MOVX@DPTR, A;

INCR5;

INCDPL;

CJNER5, #10H, CYCL_2;

MOV R3, FC; восстановление длины блока

MOV A, R4; данных

ADD A, R3;

MOV R3, A;

JMP DESHIFR;

Подпрограмма декодирования шифра с открытым ключом:

На вход подаются данные с адреса 00h ВПД

DESHIFR: MOV R1, #ABH; адрес ВПД куда записываются

; расшифрованные данные;

MOV R0, #00H; начало ВПД (Ai)

MOV R7, 10H; размер ключа

MOV R3, #00;

LKLUCH: MOV A, @R0;

MOV R6, A;

MOVX A, @R0;

ADD A, R6;

MOVX @ R1, A;

INC R0;

INC R1;

DJNZ R7, LKLUCH;

REPEAT: MOV R4, R0;

MOV R0, R3;

MOVX A, @R0;

MOV R7, A;

MOV R0, R4;

MOVX A, @R0;

ADD A, R7;

MOVX @R1, A;

INC R3;

INC R1;

INC R0;

CJNE R0, # 06, REPEAT;

JMP RLE;

Подпрограмма декомпрессии данных методом RLE:

RLE:.; программа сохраняет

.; разархивированные данные в

.; ВПД на адресах #0200H -

.; #0296A длина

.; разархивированного блока

.; данных - 150 байт регистр

.; R2 - длина блока данных

JMPMOVE; переход к подпрограмме

; выдачи данных к приёмнику

MOVE: MOVX A, @R0; выдача блока данных в порт P1.0

MOVP0.1, A

INCR0

CJNER0, #AFH, M3

Подпрограмма выдачи информации к приёмному устройству:

MOVE: MOVDPTR, #0200H; адрес начала блока данных

STROB: MOVXA, @DPTR;

SETBP1.0; выдача стробирующего

; импульса на линию 0 порта

; P1

MOVP0, A; выдача данных в порт P0

CLRP1.0; снятие строба

INCDPL; переход к следующему байту

; данных

CJNEDPL, R2, STROB; проверка завершения цикла

; выдачи информации

JMPDATA; переход к подпрограмме

; приёма информации

END

Подпрограмма модуляции и демодуляции ФМ-8 радиосигнала:

function varargout = psk8 (varargin)

% PSK8 M-file for psk8. fig

% Begin initialization code - DO NOT EDIT

gui_Singleton = 1;

gui_State = struct ('gui_Name', mfilename,.

'gui_Singleton', gui_Singleton,.

'gui_OpeningFcn', @psk8_OpeningFcn,.

'gui_OutputFcn', @psk8_OutputFcn,.

'gui_LayoutFcn', [],.

'gui_Callback', []);

if nargin & isstr (varargin{1})

gui_State. gui_Callback = str2func (varargin{1});

end

if nargout

[varargout{1: nargout}] = gui_mainfcn (gui_State, varargin{: });

Else

gui_mainfcn (gui_State, varargin{: });

end

% End initialization code - DO NOT EDIT

function psk8_OpeningFcn (hObject, eventdata, handles, varargin)

handles. output = hObject;

%< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %<

handles. menu_data = {{.

'Передаваемое сообщение [In] '.

'Сигнал [C1] '.

'Сигнал [C2] '.

'Сигнал [C3] '.

'Сигнал I [U1] '.

'Сигнал Q [U2] '.

'Носитель [G1] '.

'Носитель [G2] '.

'Модулирующий сигнал [U3] '.

'Модулирующий сигнал [U4] '.

'ФM-8 радиосигнал [M] '} {.

'ФM-8 радиосигнал [M] '.

'Носитель [G1] '.

'Носитель [G2] '.

'Сигнал [U5] '.

'Сигнал [U6] '.

'Сигнал [U7] '.

'Сигнал [U8] '.

'Сигнал генератора [G3] '.

'Сигнал [D1] '.

'Сигнал [D2] '.

'Сигнал [D3] '.

'Принятое сообщение [Out] '}};

handles. map = {.

[1,1; 1,2; 1,3; 1,4; 1,5; 1,6; 1,7; 1,8; 1,9; 1,10; 1,11].

[1,11; 1,7; 1,8; 2,1; 2,2; 2,3; 2,4; 2,5; 2,6; 2,7; 2,8; 2,9] };

guidata (hObject, handles);

set (handles. menu2,'String',handles. menu_data{1});

set (handles. figure1,'Name', `GMSK);

% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >%

function varargout = psk8_OutputFcn (hObject, eventdata, handles)

varargout{1} = handles. output;

function figure_CloseRequestFcn (hObject, eventdata, handles)

%< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %<

close_system ('psk8m',0);

% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >%

delete (hObject);

function button1_Callback (hObject, eventdata, handles)

set (handles. save,'Enable','on')

Msg = get (handles. edit1,'String');

N = length (Msg);

Fd = eval (get (handles. edit2,'String')); % скорость передачи

Fc = eval (get (handles. edit3,'String')); % частота носителЯ

w0 = eval (get (handles. edit4,'String')); % начальнаЯ фаза носителЯ

Td = 1/Fd; % длительность импульса

for i = 1: N,

Message (i,1) = (i-1) /Fd;

if Msg (i) == '1' Message (i,2) = 1;

else Message (i,2) = 0;

end;

end;

Message (N+1,1) = N/Fd;

Messahe (N+1,2) = 0;

assignin ('base','Message',Message);

%< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %< %<

Tc = (N+2) /Fd+1/Fc; % длительность сообщениЯ

dT = strcat ('1/',num2str (Fd));

MaxF = 5000;

if (rem (Fc,1) ~= 0) | (rem (Fd,1) ~= 0), dF = Fd*Fc;

else dF = lcm (Fd,Fc);

end;

if dF > MaxF, dF = Fc; end;

if fix (MaxF/dF) ~= 0, dF = dF*fix (MaxF/dF); end;

% Запуск модели у установка параметров

open_system ('psk8m');

set_param ('psk8m','StopTime',num2str (Tc));

set_param ('psk8m','MaxStep',num2str (Tc/dF));

set_param ('psk8m/Control/Message','SampleTime',dT);

set_param ('psk8m/Control/Zero-Order Hold','SampleTime',dT);

set_param ('psk8m/Control/Scope1','TimeRange',num2str (Tc));

set_param ('psk8m/Control/Scope2','TimeRange',num2str (Tc));

set_param ('psk8m/Demux/G0','SampleTime',dT);

set_param ('psk8m/Demux/In1','SampleTime',dT);

set_param ('psk8m/G1','Frequency',strcat ('2*pi*',num2str (Fc)));

set_param ('psk8m/G1','Phase',strcat ('pi/2+',num2str (w0)));

set_param ('psk8m/G2','Frequency',strcat ('2*pi*',num2str (Fc)));

set_param ('psk8m/G2','Phase',num2str (w0));

set_param ('psk8m/Filter1/LPF','Wlo',strcat ('2*pi*',num2str (Fc)));

set_param ('psk8m/Filter2/LPF','Wlo',strcat ('2*pi*',num2str (Fc)));

set_param ('psk8m/G3/G3a','Period',strcat ('3/',num2str (Fd)));

set_param ('psk8m/G3/G3a','PhaseDelay',strcat ('2/',num2str (Fd),'+1/',num2str (Fc)));

set_param ('psk8m/G3/G3b','Period',strcat ('3/',num2str (Fd)));

set_param ('psk8m/G3/G3b','PhaseDelay',strcat ('2/',num2str (Fd),'+1/',num2str (Fc)));

sim ('psk8m');

% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >% >%

% Построение осциллограммы и спектра сигнала

ScopeData = {Scope1 Scope2};

assignin ('base','ScopeDat',ScopeData);

ScopeNo = handles. map{get (handles. menu1,'Value') } (get (handles. menu2,'Value'),1);

ScopeIn = handles. map{get (handles. menu1,'Value') } (get (handles. menu2,'Value'),2);

t = ScopeData{ScopeNo}. time;

V = ScopeData{ScopeNo}. signals (1,ScopeIn). values (:,1);

plotter (t,V,Tc,handles. scope,handles. spectrum);

function menu1_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function menu1_Callback (hObject, eventdata, handles)

set (handles. menu2,'Value',1);

set (handles. menu2,'String',handles. menu_data{get (hObject,'Value') });

function menu2_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function menu2_Callback (hObject, eventdata, handles)

function edit1_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function edit1_Callback (hObject, eventdata, handles)

function edit2_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function edit2_Callback (hObject, eventdata, handles)

function edit3_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function edit3_Callback (hObject, eventdata, handles)

function edit4_CreateFcn (hObject, eventdata, handles)

if ispc set (hObject,'BackgroundColor','white');

else set (hObject,'BackgroundColor',get (0,'defaultUicontrolBackgroundColor'));

end

function edit4_Callback (hObject, eventdata, handles)

function save_Callback (hObject, eventdata, handles)

set (hObject,'Enable','off')

dir = evalin ('base','ReportDir');

n = evalin ('base','ExpCount') +1;

assignin ('base','ExpCount',n);

if ~isempty (dir),

txtFile = strcat (dir,'data-',num2str (n),'. txt');

pngFile = strcat (dir,'data-',num2str (n),'. png');

scrshot = getframe (GCF, [5,25,515,390]);

imwrite (scrshot. cdata,pngFile,'png','Transparency',get (gcf,'color'));

txtrep (txtFile,get (handles. menu1,'Value'),get (handles. figure1,'Name'),.

handles. menu_data{get (handles. menu1,'Value') }{get (handles. menu2,'Value') },.

get (handles. edit1,'String'),get (handles. edit2,'String'),.

get (handles. edit3,'String'),get (handles. edit4,'String'));

end;

Заключение

В результате выполнения курсового проекта разработана система передачи данных. Использование данной системы на практике требует корректировки некоторых принципов, используемых в проекте

Система реализована на современной элементной базе. Так в качестве основных элементов передающей и приемной стороны выбраны микроконтроллеры семейства MCS-51, в качестве источника информации - приёмник ГЛОНАСС-МНП-М7, а в качестве модема используется ADL Vantage PRO.

В ходе выполнения курсового проекта был получен опыт построения систем передачи данных, освоены методики расчета необходимых параметров и оценочных критериев.

Произведённые системные расчёты: скорости передачи, пропускной способности, спектров сигнала, надёжностных характеристик позволяют сделать вывод, что курсовой проект полностью соответствует техническому заданию на проектирование.

Список литературы

1. Сорока Н.И., Кривинченко Г.А. Теория передачи информации: Конспект лекций для студентов специальности Т.11.01.00 "Автоматическое управление в технических системах”. - Мн.: БГУИР, 1998. - 88 с.

2. Сорока Н.И., Кривинченко Г.А. Телемеханика: Конспект лекций для студентов специальности Т.11.01.00 "Автоматическое управление в технических системах”. Ч.1: Сообщения и сигналы. - Мн.: БГУИР, 2000. - 128 с.

3. Сорока Н.И., Кривинченко Г.А. Телемеханика: Конспект лекций для студентов специальности "Автоматическое управление в технических системах”. Ч.2: Коды и кодирование. - Мн.: БГУИР, 2001. - 168 с.

4. Сорока Н.И., Кривинченко Г.А. Телемеханика: конспект лекций для студентов специальностей 53 01 03 "Автоматическое управление в технических системах” и 53 01 07 "Информационные технологии и управление в технических системах”. Ч.3: Линии связи и помехоустойчивость информации. Мн.: БГУИР, 2004. - 130 с.

5. Сорока Н.И., Кривинченко Г.А. Телемеханика: Конспект лекций для студентов специальностей 53 01 03 "Автоматическое управление в технических системах” и 53 01 07 "Информационные технологии и управление в технических системах”. Ч.4: Системы телемеханики. - Мн.: БГУИР, 2005. - с.

6. Сорока Н.И., Кривинченко Г.А. Телемеханика: конспект лекций для студентов специальностей: 53 01 03 "Автоматическое управление в технических системах” и 53 01 07 "Информационные технологии и управление в технических системах”. Ч.5: Технологии передачи дискретной информации. - Мн.: БГУИР, 2005. - 184 c.: ил.

Размещено на Allbest.ru


Подобные документы

  • Диспетчеризация, мониторинг автобусов, троллейбусов, трамваев. Разработка диспетчеризации пассажирских перевозок с проектированием системы ГЛОНАСС. Разработка решений для совершенствования управления перевозками. Недостатки применения системы ГЛОНАСС.

    курсовая работа [102,9 K], добавлен 15.04.2019

  • Разработка функциональной схемы блока приемника цифровой системы передачи информации высокочастотным каналом связи по высоковольтным линиям электропередачи. Сохранение преемственности параметров перехода от аналоговой к цифровой форме обработки сигнала.

    дипломная работа [830,0 K], добавлен 14.10.2010

  • Разработка микропроцессорной системы управления объектом, который задан видом и количеством данных поступающих с объекта, потребным ресурсом для обработки данных, видом и количеством управляющих сигналов. Алгоритм передачи через последовательный порт.

    курсовая работа [978,9 K], добавлен 31.05.2019

  • Расчет параметров цифровой системы передачи, спектра АИМ-сигнала. Квантование отсчетов по уровню и их кодирование. Расчет погрешностей квантования. Формирование линейного сигнала. Разработка структурной схемы многоканальной системы передачи с ИКМ.

    курсовая работа [4,9 M], добавлен 08.10.2012

  • Импульсные, частотные коды, многоступенчатая модуляция. Корректирующее кодирование - метод повышения помехозащищенности. Разработка системы передачи цифровой информации повышенной помехозащищенности с использованием одночастотных псевдослучайных сигналов.

    дипломная работа [3,2 M], добавлен 11.06.2012

  • Технологии построения сетей передачи данных. Обоснование программных и аппаратных средств системы передачи информации. Эргономическая экспертиза программного обеспечения Traffic Inspector. Разработка кабельной системы волоконно-оптических линий связи.

    дипломная работа [2,2 M], добавлен 24.02.2013

  • Общая информация и история развития системы "Глонасс", хронология совершенствования. Спутниковые навигаторы. Точность и доступность навигации. Разработка и серийное производство бытовых Глонасс-приемников для потребителей. Двухсистемный GPS навигатор.

    курсовая работа [613,3 K], добавлен 16.11.2014

  • Понятие автоматизации управления объектами с помощью микроЭВМ. Цифровой, импульсный, аналоговый, программно-управляемый виды ввода данных. Ввод-вывод по прерыванию. Взаимодействие с периферийными внешними устройствами. Вывод и отображение информации.

    курсовая работа [6,1 M], добавлен 01.06.2012

  • Общие и тактико-технические требования к конструкции бортовой аппаратуры. Блок ввода данных для энергонезависимого хранения и выдачи в бортовую ЭВМ данных полетного задания, а также приема данных регистрации. Структурная схема и разработка конструкции.

    дипломная работа [207,2 K], добавлен 16.04.2012

  • Постановка задачи синтеза цифровой системы управления с описанием особенностей объекта регулирования. Определение требуемого периода дискретизации работы системы управления. Синтез дискретного модального закона управления по методу Л.М. Бойчука.

    курсовая работа [617,2 K], добавлен 08.07.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.