Научная статья на тему 'Методика синтеза программного обеспечения MatLab/Simulink и отладочной платы Arduino Mega 2560'

Методика синтеза программного обеспечения MatLab/Simulink и отладочной платы Arduino Mega 2560 Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
165
35
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
SIMULINK-МОДЕЛЬ / SIMULINK-MODEL / ПЛАТА ARDUINO MEGA 2560 / ARDUINO MEGA 2560 BOARD

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Петров Павел Анатольевич

В статье описана методика коммуникации программного обеспечения MatLab/Simulink c отладочной платой Arduino Mega 2560. Приведена экспериментальная модель этого синтеза.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Петров Павел Анатольевич

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

THE METHOD OF SYNTHESIS OF MATLAB/SIMULINK SOFTWARE WITH ARDUINO MEGA 2560 DEBUG BOARD

This paper presents the method of communication of MatLab/Simulink software with Arduino Mega 2560 debug board. Shows an experimental model of this synthesis.

Текст научной работы на тему «Методика синтеза программного обеспечения MatLab/Simulink и отладочной платы Arduino Mega 2560»

www.sibac.info

СЕКЦИЯ

«ИНФОРМАТИКА, ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА И УПРАВЛЕНИЕ»

МЕТОДИКА СИНТЕЗА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ MATLAB/SIMULINK И ОТЛАДОЧНОЙ ПЛАТЫ ARDUINO MEGA 2560

Петров Павел Анатольевич

докторант специальности «Радиотехника, электроника и телекоммуникации» Северо-Казахстанского государственного университета им. М. Козыбаева, Республика Казахстан, г. Петропавловск E-mail: paolo1988@mail.ru

THE METHOD OF SYNTHESIS OF MATLAB/SIMULINK SOFTWARE WITH ARDUINO MEGA 2560 DEBUG BOARD

Pavel Petrov

phd student

of «Radioengineering, electronics and telecommunications» speciality, M. Kozybayev North Kazakhstan State University, Kazakhstan, Petropavlovsk

АННОТАЦИЯ

В статье описана методика коммуникации программного обеспечения MatLab/Simulink c отладочной платой Arduino Mega 2560. Приведена экспериментальная модель этого синтеза.

ABSTRACT

This paper presents the method of communication of MatLab/Simulink software with Arduino Mega 2560 debug board. Shows an experimental model of this synthesis.

Ключевые слова: Simulink-модель; плата Arduino Mega 2560. Keywords: Simulink-model; Arduino Mega 2560 board.

В сети Интернет очень мало методических указаний о синтезе программного обеспечения (ПО) MatLab/Simulink и отладочных плат Arduino. Между тем, этот процесс является достаточно объемным и требует соответствующего анализа. Аппаратные платформы Arduino обладают огромным потенциалом в области автоматизации производственных процессов, а программное обеспечение MatLab/Simulink совершенствует процесс программирования и управления самой платой. Пример использования такой синтезированной модели приводится в [2].

В качестве целевой платы выбрана Arduino Mega 2560, подробно описанная в [1]. Она обладает широким спектром возможностей, в первую очередь, обусловленных самим микроконтроллером ATmega2560. Также большим достоинством платы является большое количество цифровых входов-выходов (54) и 16-и аналоговых входов. Плата подсоединяется к персональному компьютеру с помощью USB-шнура. Сама плата Arduino Mega 2560 и процесс коммуникации с ноутбуком изображены на рисунке 1.

а) б)

Рисунок 1. а) Внешний вид платы Arduino Mega 2560 б) Процесс коммуникации с ноутбуком посредством USB-кабеля

Прежде чем непосредственно начать работать с MatLab, плату предварительно необходимо прошить программой для обмена данными с последовательным портом персонального компьютера. Варианты загрузочных файлов достаточно обширны, можно выбрать любой из них. В данном случае, выбран файл загрузки adioеs.pde, написанному непосредственно в среде Arduino. Среда Arduino -специальная программная оболочка для работы с отладочными платами Arduino. При открытии программной среды необходимо выбрать COM-порт, на котором установилась плата и целевую плату

www.sibac.mfo

(вкладка «Инструменты»). Далее открывается необходимый файл прошивки и функциональной клавишей «Загрузить» осуществляется прошивка микроконтроллера ATmega2560 платы. Внешний вид интерфейса среды Л^тго с загруженным файлом adioеs.pde изображен на рисунке 2.

© adioes | Arduino 1.6.4

Файл Правка Эскиз Инструменты | Помощь

QO АвтоФормзтировзние Архивировать эскиз CtrkT

к—:—i

■ adioes ■ Исправить кодировку и перезагрузить. Монитор последовательного порта L_ 1

/* Analog and Dig Ctrl+Shrft+M

/* Giajnpieto Camp Плата: "Arduino Mega от.." ►

Thls £ile ±s n Процессор: "ATmega2560(Mega..." ►

package, hovev Порт; "СОМ6" >! Serial ports

(or any other OeO ¡ assigna Программатор: "AVRISP mkll" '! Записать Загрузчик COM3 COM4 C0M5 COM6

Ofl : assigna digital pin 15 (£) as output 1 Onl : assigna digital pin 113 (n) as output 3

le ! ceads digital pin (с)

le ; teads digital pin 14 <e>

2n0 : sets digital pin 113 (n) lew

2nl : sets digital pin #13 (n) high

2fl i sets digital pin ffS (£) high

2fo ; sets digital pin 05 (f) lov

4j2 ; sets digital pin ¡*S jj) to 50=ascii(2> ovet 255

i sets digital pin *S O) to I22=ascii(z) ovet 255

3a : reacia analog pin 10 (a)

3f : reads analog pin #5 (f)

5j : ceads 3tat\i3 (attached/detached) oC servo on pin #S

5k ! teads status (attached/detached) oC servo on pin 110

£jl : attaches servo on pin #9

8js : noves servo on pin #S ot 122 degrees (122*ascii(z))

7j : reads angle o£ servo on pin §S

Рисунок 2. Внешний вид интерфейса среды Arduino

Теперь плата готова к синтезу с MatLab. В качестве ПО выбрана версия 2012Ь, поддерживающая программирование платы как через командную строку, так и через пакет Simulink.

Необходимо скачать набор файлов ArduinoЮ, для того, чтобы иметь возможность программировать плату через командную строку MatLab. Для этого необходимо прописать команду «тБМ^вМшт» и указать папку, где установлено ПО MatLab2012b. Вскоре выйдет сообщение о том, что файлы добавлены к установленным (рисунок 3).

С'

СибАК

www.sibac.info

Рисунок 3. Добавление файлов АгйитоЮ к файлам МаЛаЪ2012Ъ

Теперь непосредственно можно установить пакеты для работы с Arduino в Simulink. Для этого в командной строке прописывается «targetinstaИer». ПО предлагает перезагрузить MatLab, необходимо нажать «нет». Начинается процесс инициализации загружаемых файлов и MatLab предлагает выбрать способ загрузки (рекомендовано сделать это через Интернет). Окончательно ПО предлагает выбрать аппаратную платформу, для которой загружается пакет (выбирается ЛМшш). Процесс установки пакета Arduino/Simulink представлен на рисунке 4.

а)

www.sibac.info

б)

г)

Рисунок 4. Процесс установки пакета Агйито/БШиНпк: а) операция в командной строке б) инициализация загружаемого пакета в) способ загрузки г) выбор целевой платы

Технические науки — от теории к практике _№ 2 (62), 2017г.

Теперь необходимые пакеты установлены, можно непосредственно синтезировать плату и ПО MatLab/Simulink. Переходим в режим командной строки, выбираем папку, где будем сохранять модели Simulink (по умолчанию это папка, где установлен MatLab, поэтому обязательно её нужно поменять на другую, с латинским названием). Прописываем команду «a=arduino ('COM X')», где X -номер последовательного порта, где расположилась плата. Начинается процесс коммуникации, занимающий несколько секунд. Когда MatLab выдаст сообщение «Arduino successfully connected!», можно запускать пакет Simulink. Теперь можно наблюдать в доступных объектах для моделирования папки «Arduino IO Library» и «Target for use with Arduino hardware».

В качестве экспериментальной модели соберем схему, для мигания контрольного светодиода, расположенного на 13-м пине платы. Для этого собирается модель в новом файле, состоящая из генератора меандров, 13-го пина платы и осциллографа. Во вкладке Tools указывается необходимый COM-порт и плата Arduino Mega 2560, редактируются настройки генератора. После запуска симуляции, микроконтроллер ATmega2560 прошивается графическим кодом и контрольный светодиод на плате начинает загораться и тушиться с указанной задержкой. Экспериментальная модель в Simulink и эпюры, снимаемые с генератора импульсов, представлены на рисунке 5.

www.sibac.info

а)

Р, СибАК

www.sibac.info

Рисунок 5. а) Модель Simulink для тестирования платы б) Эпюры импульсов, подаваемых на 13-й пин платы

Таким образом, процесс коммуникации отладочной платы Arduino Mega 2560 и ПО Matlab/Simulink полностью завершен. Такие синтезируемые модели дают огромный потенциал для автоматизации производственных процессов и упрощают процесс управления и коррекции.

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

1. Общие сведения о плате Arduino Mega 2560 [Электронный ресурс]. URL: http://arduino.ru/Hardware/ArduinoBoardMega2560 (Дата обращения 25.02.16 г.)

2. Петров П.А., Ивель В.П. Синтез адаптивной системы управления вращением-подъемом железнодорожных вагонов // Технические науки -от теории к практике: сб. ст. по матер. LXV междунар. науч.-практ. конф. № 12(60). - Новосибирск: СибАК, 2016. - С. 21-27.

i Надоели баннеры? Вы всегда можете отключить рекламу.