MATLAB и Simulink R2011a:
что нового?
Владимир ДЬЯКОНОВ, д. т. н., профессор
В электротехнике, радиотехнике и во многих других отраслях науки и техники исключительно велика роль матричных методов. Они положены в основу современного математического моделирования электрических и радиотехнических устройств, систем и их компонентов. На реализации матричных методов основана система компьютерной математики МА^АВ (от слов МАТмх LABoratory) с ее основным пакетом расширения SimuHnk, осуществляющим блочное имитационное моделирование. Система МА^АВ признана лучшим в мире языком программирования для решения научно-технических задач. В статье рассматриваются новые возможности реализации 1?2011а.
Знакомство с новыми возможностями MATLAB R2011a
По системе MATLAB+Simulink выпущено немало книг, например [1-7]. Большинство из них представлены на сайте корпорации The MathWorks — разработчика этой системы. Среди них изданная уже в 2011 г. книга по системе MATLAB+Simulink для радиоинженеров [1] объемом в 976 стр. (рис. 1). Однако быстрое совершенствование системы и смена ее версий дважды в год приводит к тому, что авторы книг уже не успевают отразить новинки реализаций систем.
Познакомиться с новыми возможностями MATLAB R2011a можно по справке системы — в разделах Realise Notes и New Products. Изменений в интерфейсе системы MATLAB традиционно мало. Окно справки по новым возможностям MATLAB R2011a показано на рис. 2. Все справочные материалы, естественно, даны на английском языке. Но надо отдать должное разработчикам системы: язык справки предельно краток и понятен пользователю, владеющему минимальными навыками перевода технического текста.
Помимо справки, знакомству с новой версией помогают видеофайлы с демонстрацией фрагментов видеофильмов о работе с системой. Они размещены в Интернете, и для их просмотра требуется достаточно скоростное подключение к Интернету и наличие на ком-
Рис. 2. Окно справки по новым возможностям MATLAB R2011a
Рис. 1. Книга [1] на сайте корпорации The MathWorks
Рис. 3. Просмотр видеофильма по работе с системой MATLAB R2011a
пьютере стандартного браузера. На рис. 3 показан пример просмотра видеофильма с помощью браузера Opera.
Математические возможности новой реализации MATLAB 7.12 (R2011a) изменились мало. Введены две новые функции генерации случайных чисел и матричная функция ichol. Интерфейс изменился также незначительно. Обеспечена более точная индикация ошибок, точнее отображаются интернациональные символы. С системой поставляется пакет расширения Simulink 7/7 (R2011a). Основные его изменения описаны далее.
Просмотр каталога графиков и демонстрационных примеров
Хотя интерфейс MATLAB R2011a изменился мало, есть некоторые «приятные мелочи». Например, в меню правой клавиши мыши при просмотре имеющихся в рабочем пространстве системы (специальной области памяти компьютера) массивов появилась новая позиция Plot Catalog («Каталог графики»). Ее активизация выводит окно Plot Catalog (рис. 4), в котором систематизированы все очень обширные возможности двумерной и трехмерной графики MATLAB. Как известно, графика системы MATLAB — одна лучших в системах компьютерной математики. Она непрерывно расширяется и улучшается.
Рис. 5. Окно демонстрационных примеров MATLAB R2011a
зиция Demos. В новых реализациях MATLAB большинство примеров представлено наглядными пиктограммами. На рис. 5 показаны эти пиктограммы для видеороликов, демонстрирующих работу с системой MATLAB. Отметим, что ссылки на такие ролики есть и в других разделах справки по MATLAB 2011a.
Об эффективности системы MATLAB можно судить по скорости ее работы на компьютере пользователя. Для запуска программы тестирования служит команда bench, запускаемая в окне командного режима. Результат тестирования показан на рис. 6. В ходе тестирования проводятся тесты на скорость выполнения матричных операций, выполнение быстрого преобразования Фурье (FFT), решение алгебраических и дифференциальных уравнений, скорость построения двумерных (2D) и трехмерных (3D) графиков. Программа тестирования непрерывно модифицируются, и в нее включаются данные тестирования современных персональных компьютеров (ПК).
Рис. 4. Просмотр каталога графики MATLAB R2011a
Одно время казалось, что графика МА^АВ стала трудно обозримой. Теперь для просмотра многообразия видов графики следует создать массивы нужных типов и воспользоваться каталогом. Например, на рис. 4 показано создание массива графики функции одной переменной Бт(я:)/я: с помощью следующих, очевидных для пользователя системы МА^АВ команд в окне командного режима:
>> x=-15:0.1:15; >> y=sin(x)./x;
Для построения графика функций одной переменной нужно два массива — массив абсцисс точек ж и массив ординат точек у. Они и создаются этими командами и появляются в окне обзора рабочего пространства Workspace: оно показано на рис. 4 в правой части окна интерфейса системы MATLAB. Теперь для наблюдения графика того или иного типа достаточно активизировать его пиктограмму в окне Plot Catalog (рис. 4).
Многие предпочитают знакомиться с возможностями системы путем просмотра ее демонстрационных примеров. Доступ к ним обеспечивается из окна демонстрационных примеров, показанного на рис. 5. Для его вывода в позиции Help меню активизируется по-
Рис. 6. Тестирование MATLAB R2011a на скорость вычислений
Как видно по результатам тестирования, MATLAB R2011a работает даже на мобильных компьютерах (включая нетбуки и планшетные ПК) с микропроцессором Intel Atom. Скорость вычислений на таких компьютерах примерно в 1,5 раза меньше, чем на компьютере с микропроцессором Pentium 4 HT c частотой 2,5 ГГц. Современные компьютеры на 64-разрядных микропроцессорах с 2-4 ядрами работают намного «резвее», особенно при использовании новых операционных систем Windows 7 и Linux.
Новые пакеты расширения MATLAB R2011a
>> hw = phased.LinearFMWaveform('SweepBandwidth',1e5,... 'PulseWidth',1e-4);
В MATLAB R2011a введено два новых пакета расширения: MATLAB Coder — преобразование MATLAB-кодов в коды языков программирования C и C++;
Phased Array System Toolbox — средства создания нового класса массивов Phased Array.
В данном случае создается сигнал с частотной модуляцией по линейному закону. В рабочем пространстве создается массив точек сигнала hw. Теперь для просмотра графика этого сигнала (рис. 8) достаточно выполнить команду:
>> рЫ^);
Следующий пример иллюстрирует создание phased-массива сигнала в виде прямоугольного (RectangularWaveform) импульса и оценку его параметров:
>> Rmax = 15e3; Rres = 1500; c = 3e8;
>> prf = c/(2*Rmax); bw = c/(2*Rres); fs = 2*bw;
>> hrect = phased. RectangularWaveform('SampleRate',fs,...'PRF,prf,'PulseWidth',1/bw)
hrect =
Description 'Rectangular pulse waveform'
SampleRate 200000
PulseWidth 1e-005
PRF 10000
OutputFormat 'Pulses'
NumPulses 1
>> bw_rect = bandwidth(hrect)
bw_rect =
1.0000e+005
Рис. 7. Окно справки по пакету расширения Phased Array System Toolbox
Пакет расширения MATLAB Coder представляет интерес для профессиональных программистов, решающих в основном системные задачи на совместное применение языков программирования MATLAB, C и C++. А вот новый пакет Phased Array System Toolbox (рис. 7) наверняка заинтересует специалистов в области электроэнергетики и радиотехники. Phased Array, введенный в этом пакете, описывает сигналы различной формы. Он позволяет осуществлять поэтапное проектирование и моделирование сигналов и придать им общий характер.
Phased-массивы и их применение
В пакет расширения Phased Array System Toolbox входят десятки новых функций с именами, задаваемыми по особым правилам: сначала указывается первая часть имени phased, а затем после точки указывается вторая часть имени, например:
В этот пакет расширения введен новый интересный аппарат представления сигналов с помощью неоднозначных (или неопределенных) ambiguity-функций. Он применяется при анализе акустических и радиолокационных сигналов [8, 9], как и аппарат вейлет-преобразований [10]. Так, для получения такого представления прямоугольного импульса достаточно выполнить команды:
>> х = step(hrect);
>> ambgfun(x,hrect.SampleRate,hrect.PRF);
Представление прямоугольного импульса показано на рис. 9. Обратите внимание на то, что неоднозначные функции дают очень четкое представление о границах прямоугольного импульса, имеющего отличные от нуля значения в пределах 10% от общей ширины области их существования. За пределами этой зоны уровень сигнала и ambiguity-функций нулевой.
Теперь рассмотрим представление частотно-модулированного (БМ) сигнала с помощью ambiguity-функций. Для этого зададим phased-массив сигнала:
Рис. 8. Пример создания сигнала, частотно-модулированного по линейному закону, и просмотра его графика
Рис. 9. Представление прямоугольного импульса неоднозначными (ambiguity) функциями
{h № М >1 ДОаи ГУ*
ba j -j lit \ '■■ s* ii- с □ sz no
J. M II* P/Jf. "A * M I. ■ J^fc. n
Рис. 10. Представление частотно-модулированного сигнала с линейным законом модуляции с помощью аmbiguity-функций
которого должна вписаться в белую область (рис. 11) и не входить в запрещенные серые области.
Пример задания исходных параметров (шаблон на рис. 11) полосового фильтра представлен командами:
>> A_stop1 = 60; F_stop1 = 8400; F_pass1 = 10800;
>> F_pass2 = 15600; F_stop2 = 18000; A_stop2 = 60; А_раээ = 1;
Проектирование фильтров с помощью команд, вводимых в окне командного режима, осуществляется за два шага. На первом шаге вводятся исходные параметры фильтра:
>> d = fdesign.bandpass;
>> BandPassSpecObj = ...
fdesign.bandpass('Fst1,Fp1,Fp2,Fst2,Ast1,Ap,Ast2,, ... F_stop1, F_pass1, F_pass2, F_stop2, A_stop1, A_pass, ... A_stop2, 48000);
>> set(BandPassSpecObj, 'Fpass2', 15800, 18400);
>> BandPassSpecObj.Fpass2=15800;
На втором шаге вводятся команды проектирования фильтра и задается команда построения его АЧХ (рис. 12):
>> hlfm = phased.LinearFMWaveform('SampleRate',fs,'SweepBandwidth',bw,s'PRF',prf,'PulseWidth',5/bw)
hlfm =
Description 'Linear FM pulse waveform'
SampleRate 200000
PulseWidth 5e-005
PRF 10000
SweepBandwidth 100000
SweepDirection 'UP'
Envelope 'Rectangular'
OutputFormat 'Pulses'
NumPulses 1
>> bw_lfm = bandwidth(hlfm)
bw_lfm =
100000
Mag. (дБ)
т
Astopl
J 1
_^_Apass
Ллор2
J
Fs/2 f (Гц)
>> designmethods(BandPassSpecObj)
>> BandPassFilt = design(BandPassSpecObj, 'equiripple');
>> fvtool(BandPassFilt)
Построим более информативное трехмерное представление этого сигнала (рис. 10):
>> x = step(hlfm);
>> ambgfun(x,hlfm.SampleRate,hlfm.PRF,'Cut7Doppler');
>> [afmag_lfm,delay_lfm,doppler_lfm] = ambgfun(x,hlfm.SampleRate,...hlfm.PRF); >> surf(delay_lfm*1e6,doppler_lfm/1e3,afmag_lfm,'LineStyle','none'); >> axis tight; grid on; view([140,35]); colorbar; >> xlabel('Delay \tau (us)');ylabel('Doppler f_d (kHz)'); >> title('Linear FM Pulse Waveform Ambiguity Function');
Проектирование фильтров в командном режиме с помощью GUI проектировщика фильтров
The MathWorks продолжает расширять и совершенствовать пакет цифровой обработки сигналов DSP System Toolbox. Этот пакет имеет мощные средства для проектирования фильтров различного типа. В новейших реализациях MATLAB в него вошли средства и примеры применения, ранее разбросанные по другим пакетам расширения.
Покажем, насколько просто осуществить проектирование полосового фильтра средствами командного режима. Пусть требуется построить фильтр, амплитудно-частотная характеристика (АЧХ)
Рис. 12. Амплитудно-частотная характеристика спроектированного фильтра
Рис. 11. Шаблон АЧХ проектируемого фильтра
Рис. 13. Средства GUI для проектирования фильтров пакета DSP System Toolbox
>> N = 32; wvtool(blackmanharris(N))
Аналогично для просмотра окна другого симметричного фильтра — Нутталла (рис. 16) достаточно использовать команды:
>> L = 64; w = blackmanharris(L); >> y = nuttaHwin(L); wvtool(w,y)
Оба типа окна отличаются большим подавлением паразитных лепестков спектра. Эти окна, в частности, применяются для построения
Рис. 14. АЧХ спроектированного Lowpass-фильтра, спроектированного в окне GUI конструктора
Программные коды этих шагов могут быть объединены в одну программу и записаны в память с помощью редактора программ. Но гораздо проще осуществлять проектирование фильтров средствами графического интерфейса пользователя GUI. Такие средств были введены в пакет расширения Signal Processing Toolbox и описаны в [1, 2]. В MATLAB R2011a они появились и в пакете расширения DSP System Toolbox (рис. 13). При этом число фильтров значительно выросло. Для доступа к окнам GUI проектировщика фильтров в этом пакете нужно использовать команду:
>> filterbuilder
После открытия небольшого окна с перечнем возможных типов проектируемых фильтров (рис. 11, слева) нужно выбрать тип фильтра, например Lowpass (низкочастотный фильтр). В окне конструктора фильтров (рис. 13, справа) следует задать параметры фильтра (или согласиться с представленными по умолчанию). После этого можно просмотреть АЧХ фильтра, активизируя кнопку View Filter Response в окне конструктора фильтров. Появится окно с АЧХ спроектированного фильтра (рис. 14).
Для просмотра нового симметричного окна Блэкмана-Харриса (рис. 15) достаточно выполнить команду:
спектрограмм. Следующие команды строят спектрограмму (рис. 17) БМ-сигнала, модулированного по пилообразному закону:
>> fs = 10000; t = 0:1/fs:2;
>> x = vco(sawtooth(2*pi*t,0.75),[0.1 0.4]*fs,fs);
>> spectrogram(x,kaiser(256,5),220,512,fs,'yaxis')
Рис. 15. Пример задания симметричного окна Блэкмана-Харриса
Спектрограмма получается методом короткого оконного преобразования Фурье, при котором область анализа сигнала сканируется окном (в нашем случае окном Кайзера) с малой длительностью. Спектры окон различны для каждого временного периода. В отличие от классического спектрального анализа, этот метод позволяет по-
лучать спектры нестационарных сигналов, параметры которых меняются во времени. К таким сигналам относятся модулированные сигналы, к примеру, сигналы с частотной модуляцией. На рис. 17 видно, насколько четко спектрограмма представляет закон модуляции (в данном случае пилообразный).
Фильтры с нулевой фазой и очистка сигналов от шума
Новая функция filtfilt служит для построения фильтров с нулевой фазой. Они создаются с помощью следующих команд:
x=ecg(500)'+0.25*randn(500,1); %noisy waveform
h=fdesign.lowpass('N,F3dB',12,0.15);
d1 = design(h,'butter');
y = filtfilt(d1.sosMatrix,d1.ScaleValues,x);
plot(x,'b-.'); hold on;
plot(y,'r','linewidth',3);
legend('Noisy ECG','Zero-phase Filtering','location','NorthEast');
В этом фрагменте программы (он вводится с помощью редактора) задается зашумленный сигнал, а затем — его обработка созданным фильтром Баттерворта с нулевой фазой (рис. 18).
Решение задач на очистку сигналов от шума возможно и с применением пакета расширения по имитационному моделированию Simulink. На рис. 19 представлен пример построения устройства для очистки звукового сигнала от шума методом короткого оконного
преобразования. Три кнопки под диаграммой модели служат для прослушивания исходного звукового сигнала речи, того же сигнала с примесью сильного шума и очищенного от шума сигнала. Пример демонстрирует прекрасную степень очистки сигнала. Разумеется, для реализации этого примера компьютер должен быть оснащен звуковой картой и акустическими системами. Микрофон не требуется, так как обрабатываемый сигнал берется из файла.
Примеры реализации адаптивных фильтров
В пакет расширения DSP System Toolbox вошли многие новые демонстрационные примеры. Пожалуй, особый интерес представляют различные примеры реализации адаптивных фильтров. На рис. 20 представлен пример очистки сигнала с помощью адаптивного RLS-фильтра. Применение адаптивного рекурсивного метода наименьших квадратов (recursive least squares, RLS) иллюстрирует диаграмма Simulink модели устройства для очистки сигнала от шума. Можно наблюдать, как постепенно устройство типа управляемого эквалайзера формирует сигнал с уменьшенным шумовым компонентом. Осциллограммы даны для короткой вырезки сигнала.
Пример построения адаптивного фильтра приведен на рис. 21. Здесь используется метод least mean square (LMS). Наблюдение сигнала с меняющейся во времени степенью очистки от шума реализовано аналогично ранее описанному примеру.
Рис. 21. Пример построения адаптивного LMS-эквалайзера
Рис. 22. Пример конвергенции сигналов тремя методами
Рис. 23. Диаграмма модели характериографа для снятия семейства ВАХ диода Шоттки при разных значениях температуры
Пример конвергенции сигналов, полученных тремя методами, показан на рис. 22. Для демонстрации сходимости этих методов применяется построитель «звездных» диаграмм.
Учет температуры
в моделях полупроводниковых приборов
Значительной переработке в MATLAB R2011a подвергся пакет расширения по математическому моделированию электронных схем — SimElectronix. Главное дополнение пакета — это введение средств учета температуры в модели полупроводниковых приборов. Эти средства введены в следующие модели приборов:
• Diode (диод).
• Light-Emitting Diode (светодиод).
• N-Channel IGBT (n-канальный биполярный транзистор с полевым управлением).
• N-Channel JFET (n-канальный полевой транзистор с управляющим p-n-переходом).
• N-Channel MOSFET (n-канальный полевой транзистор с изолированным затвором).
• NPN Bipolar Transistor (биполярный транзистор типа n-p-n).
• Optocoupler (оптрон — пара светодиод-фотодиод).
• Photodiode (фотодиод).
• P-Channel JFET (р-канальный полевой транзистор с управляющим р-п-переходом).
• P-Channel MOSFET (р-канальный полевой транзистор с изолированным затвором).
• PNP Bipolar Transistor (биполярный транзистор типа p-n-p).
На рис. 23 показана диаграмма модели характериографа для снятия семейства ВАХ диода Шоттки при разных значениях температуры. Под диаграммой показано окно параметров диода с открытой новой вкладкой Temperature Dependence (температурная зависимость). Справа от модели — окно задания вектора температур, для которых строятся ВАХ.
Для снятия каждой из ВАХ через диод пропускается ток с линейным нарастанием от управляемого источника тока и строится зависимость напряжения на диоде от тока. Осциллограмма напряжения на диоде строится виртуальным осциллографом и иллюстрирует характерную полочку при напряжении на диоде менее примерно 0,4 В. Построенное семейство ВАХ показано на рис. 24. Ось токов задана в логарифмическом масштабе.
В пакет SimElectronics, наконец, включен пример построения модели характериографа для снятия семейства выходных ВАХ биполярного транзистора с полевым управлением (IGBT) — рис. 25. Окно параметров для задания ВАХ показано под диаграммой модели. В нем задается вектор значений управляющего напряжения на затворе.
Рис. 24. Семейство ВАХ диода Шоттки при разных значениях температуры
Рис. 25. Диаграмма модели характериографа для снятия семейства выходных ВАХ IGBT
семейство выходных ВАХ показано на рис. 26. У выходных ВАХ видна характерная полочка внизу: для любой ВАХ ток при напряжении на коллекторе меньше 1 В становится очень малым. Это семейство ВАХ дано для мощного IGBT с токами до 600 А.
К новым демонстрационным примерам в пакете расширения SimElectronics относятся примеры на оценку состояний тиристоров в статике (рис. 27) и динамике (рис. 28). Эти примеры довольно очевидны. При оценке динамических состояний учитывается собственная инерционность тиристоров, что позволяет строить более точные временные диаграммы переключения тиристора.
Еще один новый демонстрационный пример — Master-Slave J-K Flip-Flop (рис. 29). Он служит для исследования работы J-K-триггера, управляемого тактовыми импульсами. С помощью управляемых мышью переключателей можно задавать различные состояния триггера и наблюдать осциллограммы его работы.
Каждая ВАХ снимается с помощью управляемого источника напряжения, задающего линейную зависимость напряжения во времени: она контролируется виртуальным осциллографом. Построенное
Рис. 29. Диаграмма модели для просмотра состояний тактируемого J-K-триггера
И еще один новый пример — моделирование вращательного момента серводвигателя. Диаграмма модели этого примера показана на рис. 30.
Рис. 27. Диаграмма модели оценки состояния тиристора в статике
Рис. 28. Диаграмма модели оценки состояния тиристора в динамике
Серводвигатель — сложная электромеханическая система. Не пытаясь объяснить ее в этой обзорной статье, приведем графики ряда зависимостей, которые характеризуют работу данного примера. Они представлены на рис. 31. Как видно на этом рисунке, для некоторых зависимостей от двух переменных удобно применять 3D-графики.
Рис. 31. Графики некоторых зависимостей, характеризующих работу вращательного момента серводвигателя
Рис. 33. Диаграмма модели синхронного инвертора на мощных полевых транзисторах с широтно-импульсной модуляцией
Рис. 32. Диаграмма модели соленоида
Рис. 34. Осциллограммы работы инвертора
Более простым устройством является соленоид, имеющий большую инерционность. Диаграмма модели соленоида, управляемого перепадами напряжения, представлена на рис. 32. Там же показаны результаты моделирования работы соленоида.
Моделирование синхронного обратного преобразователя на мощных полевых транзисторах
Обновленные модели полупроводниковых приборов пакета расширения SimElectшmx можно использовать для детального моделирования широко применяемых устройств. Для примера на рис. 33 показана диаграмма модели синхронного, понижающего напряжение инвертора на мощных полевых транзисторах с широтно-импульсной модуляцией. Инвертор нагружен на постоянную нагрузку со сглаживающим конденсатором и на циклическую нагрузку, позволяющую оценивать реакцию инвертора на короткие броски тока нагрузки различной полярности.
Работу инвертора отражают осциллограммы виртуальных осциллографов. Они показаны на рис. 34. Особенно интересна реакция преобразователя на действия циклической нагрузки. Она представлена осциллограммой выходного напряжения, на ней можно заметить появление заметных выбросов напряжения при набросе и сбросе дополнительной нагрузки.
Помимо осциллограмм от виртуальных осциллографов, данная модель позволяет строить временные диаграммы ее работы с по-
-Ли»? втек:
ЮТ1 ~п N. ИЯ «мая
р£1 У - Ь \ ъ Г? в и л - я о:, по
а < ■ . ' 1 .
[ -' ■ - 1- - -1 | - 1 -^
1Ю Т. г 1 1« - 1 / - Л: В 1Г '} £3 1»'
1
л ■ 1К1 и ■ ■■■ ■ .1 ■
| |.К - П! ■ ■ 1 ; сн Н | 1.1' 1 гл; ш 1
—»»
_1_1_1_1_1_1_1_ -V*.
кН 115 " Н! 1 ХШ И 131! г га •у
Ш " -ЗЖ" 1
* ■ к 1 Л 4
ьн 114 " 1К 1 ¿И »1 1.Г Г Л? 111 1 ей <1^
Рис. 35. Временные диаграммы работы инвертора
Рис. 36. Окно редактора программного кода
Рис. 37. Пример применения блока вычислений S-функций
мощью плоттера (рис. 35). Для вывода диаграмм нужно активизировать клавишу с надписью Plot logged data под диаграммой модели (рис. 33).
Активизация другой клавиши с надписью Open plot file открывает окно редактора программного кода с листингом файла, строящего временные диаграммы. Оно показано на рис. 36.
Новые функции в Simulink R2011a
В пакете расширения Simulink R2011a введено множество изменений в блоках его библиотек. Некоторые из них описаны в приведенных выше примерах. Из принципиально важных дополнений можно отметить два блока — задания функций MATLAB и вычисления S-функций. Пример использования блока вычисления S-функций представлен на рис. 37. Под диаграммой показано окно редактора с листингом S-функции этого примера.
Заключение
Приведенные примеры показывают, что версия MATLAB R2011a открывает новые возможности в анализе, проектировании и моделировании электро- и радиотехнических систем и устройств, устройств силовой электроники и их компонентов. Новые возможности появились и в реализации математических методов анализа сигналов,
особенно тех, что базируются на численных методах. Постоянно
улучшается и графическая визуализация методов расчета и проектирования различных систем и устройств. ■
Литература
1. Дьяконов В. П. MATLAB и Simulink для радиоинженеров. М.: ДМК-Пресс, 2011.
2. Дьяконов В. П., Пеньков А. А. MATLAB и Simulink в электроэнергетике. М.: Горячая линия - Телеком, 2009.
3. Дьяконов В. П. MATLAB R2006/2007/2008 + Simulink 5/6.7. Основы применения. М.: СОЛОН-Пресс, 2008.
4. Дьяконов В. П. MATLAB 6.5/SP1/7.0+Simulink 5/6 в математике и моделировании. М.: СОЛОН-Пресс, 2005.
5. Дьяконов В. П. MATLAB 6.5/SP1/7.0+Simulink 5/6. Обработка сигналов и проектирование фильтров. М.: СОЛОН-Пресс, 2005.
6. Ануфриев И., Смирнов А., Смирнова Е. MATLAB 7. СПб.: БХВ-Петербург, 2005.
7. Кетков Ю., Кетков А., Шульц М. MATLAB 7. Программирование и численные методы. СПб.: БХВ-Петербург, 2005.
8. Levanon N., Mozeson E. Radar Signals. Wiley-IEEE Press, 2004.
9. Richards M. Fundamentals of Radar Signal Proces-sing. McGraw Hill, 2005.
10. Дьяконов В. П. MATLAB — новые возможности в технологии осциллографии // Компоненты и технологии. 2009. № 10.