Научная статья на тему 'Информационная система сопровождения разработки встраиваемого программного обеспечения для беспроводных сенсорных сетей'

Информационная система сопровождения разработки встраиваемого программного обеспечения для беспроводных сенсорных сетей Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
254
83
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СЕНСОРНАЯ СЕТЬ / СЕНСОРНАЯ ПЛАТФОРМА / ПЕРЕДАЧА ДАННЫХ / ОБРАБОТКА ДАННЫХ / АДАПТИВНЫЕ РАСПРЕДЕЛЕННЫЕ СЕНСОРНЫЕ СЕТИ / РАСПРЕДЕЛЕННЫЕ СЕНСОРНЫЕ СЕТИ / РАСПРЕДЕЛЕННЫЕ СЕТИ / АВТОМАТИЗИРОВАННЫЙ СИНТЕЗ КОДА / МОДЕЛЬНО-ОРИЕНТИРОВАННОЕ ПРОЕКТИРОВАНИЕ / КОДОГЕНЕРАЦИЯ / МODEL-BASED DESIGN / LEGACY CODE TOOL / MATLAB / SENSOR NETWORK / SENSOR PLATFORM / DATA TRANSFER / DATA PROCESSING / ADAPTIVE DISTRIBUTED SENSOR NETWORKS / DISTRIBUTED SENSOR NETWORKS / DISTRIBUTED NETWORKS / AUTOMATED SYNTHESIS CODE / THE CODE GENERATION

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

В рамках информационной системы разработана библиотека пакета расширений среды МаthWоrкs МАТLАВ&аmр;Simulinк для микроконтроллера на базе технологий Nоrdiс Sеmiсоnduсtоr. Разрабатываемый пакет позволит реализовать подход модельно-ориентированного проектирования с возможностью последующей генерации исходного кода из разработанных моделей для сенсорных сетей на базе технологий Nоrdiс Sеmiсоnduсtоr.

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

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

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

Текст научной работы на тему «Информационная система сопровождения разработки встраиваемого программного обеспечения для беспроводных сенсорных сетей»

УДК 004.75

ИНФОРМАЦИОННАЯ СИСТЕМА СОПРОВОЖДЕНИЯ РАЗРАБОТКИ ВСТРАИВАЕМОГО ПРОГРАММНОГО' ОБЕСПЕЧЕНИЯ ДЛЯ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЕ:

---------- К. И. Володин, А. И. Переходов --

В последнее время наблюдается бурное развитие сенсорных сетей и расширение сферы их применения. Использование недорогих беспроводных сенсорных устройств контроля параметров открывает новые области для применения систем телеметрии и контроля в различных областях: от мониторинга окружающей среды до промышленной автоматизации и здравоохранения [1-3] (рис. 1).

Рис. 1. Применение сенсорных сетей различного назначения

В связи с этим необходимо учитывать потребность в эффективных алгоритмах работы узлов сенсорных сетей. Современные методы проектирования позволяют упростить процесс создания алгоритмического и программного обеспечения сенсорных сетей, используя модельноориентированный подход. При применении данного подхода разработчику необходимо лишь продумать алгоритм работы и реализовать его через системную модель, а программное обеспечение узлов сенсорной сети будет синтезировано автоматически из модели [4, 5].

Основной задачей является разработка информационной системы сопровождения разработки встраиваемого программного обеспечения для беспроводных сенсорных сетей, в рамках которой необходимо разработать пакет расширений среды MathWorks MATLAB&Simulink [6] для целевого оборудования на базе технологий Nordic Semiconductor [7], обеспечивающий возможность генерации кода из моделей Simulink для узлов сенсорной сети. Данный пакет расширений даст возможность синтеза встраиваемого программного обеспечения узлов адаптивных распределенных сенсорных сетей, что в свою очередь позволит упростить процесс построения поведенческих моделей для беспроводных сенсорных сетей, сократить время и издержки [8].

Для декларативного описания того, как устроен и функционирует разрабатываемый пакет расширений среды MathWorks MATLAB&Simulink UML, используется диаграмма вариантов использования (рис. 2).

85

Надежность и качество сложных систем. № 1(9), 2015

Рис. 2. Диаграмма вариантов использования разрабатываемого пакета расширений среды MathWorks MATLAB&Simulink

На диаграмме вариантов использования проектируемый пакет расширений среды MathWorks MATLAB&Simulink для целевого оборудования представляется в виде актеров, взаимодействующих с системой с помощью вариантов использования. Данная диаграмма указывает назначение проектируемого пакета, но не указывает на методы реализации.

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

Диаграмма компонентов разработана для визуализации общей структуры исходного кода программной системы, спецификации исполняемого варианта программной системы, представления концептуальной и физической схем данных. Она обеспечивает согласованный переход от логического представления к конкретной реализации проекта в форме программного кода (рис. 3).

86

Менеджмент качества предприятий и организаций

Рис. 3. Диаграмма компонентов разрабатываемого пакета расширений среды MathWorks MATLAB&Simulink

Для реализации проекта была выбрана среда Matlab&Simulink, поскольку она позволяет реализовать данный проект в рамках одной целостной системы, не прибегая к сторонним ресурсам, а также пакеты расширений к ней, в частности Embedded Coder[9], Simulink Coder [9], Matlab Coder, Legacy Code Tool и др. [11, 12].

В результате анализа существующих пакетов расширений среды Matlab&Simulink была выявлена типовая структура пакета расширений.

Каждый пакет расширений среды MathWorks MATLAB&Simulink для целевого оборудования имеет индивидуальный набор необходимых для работы компонентов, но обязательными являются исходный код специфичных функций оборудования, библиотека блоков Simulink, основной набор файлов-шаблонов для генерации (.m, .tlc, .tmf), отринты автоматизированной установки и настройки [13].

В процессе разработки пакета расширений возникла необходимость интеграции внешнего ^ кода в MATLAB&Simulink, который будет использоваться для реализации блоков Simulink.

Legacy Code Tool - утилита, которая позволяет автоматически генерировать «S'-функцию из существующего Си кода и спецификаций, описанных с помощью кода MATLAB, а также преобразовывать С функции в С MEX «S'-функции для использования в моделях Simulink. Legacy Code Tool дает возможность интегрировать существующие C (или C + + ) функции и интерфейсы в модели Simulink. Используя написанные на языке MATLAB спецификации, которые указывает разработчик, инструмент преобразует существующие функции в C MEX «S'-функции, которые можно использовать в моделях Simulink [14].

По сравнению с использованием S-Function Builder или написанием «S'-функции вручную, инструмент Legacy Code Tool проще в использовании, и он генерирует оптимизированный код, что необходимо для встраиваемых систем.

87

Надежность и качество сложных систем. № 1(9), 2015

Рисунок 4 иллюстрирует общую процедуру интеграции Си кода в Simulink с использованием Legacy Code Tool.

Для взаимодействия с Legacy Code Tool, необходимо инициализировать структуру данных Legacy Code Tool, указав имя для ^-функции, спецификации для существующих функций C, файлы исходного кода на языке Си и пути, необходимые для компиляции, опции для генерируемой £-функции. Затем происходят генерация исходного кода для ^-функции, ее компиляция и создание блока S-function с маской.

К основным преимуществам Legacy Code Tool следует отнести возможность автоматизированного синтеза ^-функций и автоматизированного создания блока ^-function. Кроме того, это самый быстрый способ переноса Си кода в Simulink. Основным недостатком Legacy Code Tool является отсутствие возможности автоматически добавить дополнительный код к вызовам внешних функций и ограниченные возможности по управлению внешним видом ^-функций.

Разрабатываемый пакет расширений дает возможность создавать поведенческие модели узлов сенсорных сетей на базе технологий Nordic Semiconductor и автоматически синтезировать встраиваемое программное обеспечение для них.

Автоматизированная генерация Си кода из модели Simulink осуществляется в рамках концепции модельно-ориентированного проектирования. Таким образом, встраиваемое программное обеспечение будет синтезировано автоматически из моделей Simulink при использовании продукта Embedded Coder, являющегося расширением среды MathWorks MATLAB&Simulink.

Для реализации автоматизированного синтеза кода из моделей, созданных с использованием разрабатываемого пакета расширений были разработаны файлы-шаблоны с расширением *.m, *.tlc, позволяющие автоматически генерировать из модели Си код, используя пакеты расширения среды MATLAB&Simulink Embedded Coder, Simulink Coder и MATLAB Coder, и шаблонный make-файл *.tmf, указывающий правила сборки кода. Затем код компилируется под определенный вид целевого оборудования.

Полученный таким образом исполняемый hex-файл [13] с микропрограммным обеспечением записывается в память микроконтроллера на базе технологий Nordic Semiconductor с использованием разработанной утилиты nrfflasher. Схема автоматизированной генерации кода из модели Simulink представлена на рис. 5.

Embedded

Coder

Си код

-> Компиляция

Исполняемый файл *.hex

Рис. 5. Схема автоматизированной генерации кода из модели Simulink

Одним из неотъемлемых элементов пакета расширения работы для целевого оборудования является скрипт автоматической установки и настройки. Он дает возможность установить WSN Target и добавить новую библиотеку блоков WSN Target к уже установленным библиотекам Simulink.

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

Данная технология автоматизированного синтеза кода может быть применена для других технически сложных систем [14-18].

Работа проведена на базе учебно-научной лаборатории «Проектно-ориентированное обучение» кафедры «Информационные технологии и системы» ПензГТУ.

88

Менеджмент качества предприятий и организаций

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

1. An Active Cooperation-Aware Spectrum Allocation Mechanism for Body Sensor Networks / Fu Jiang, Ying Guo, Jun Pengand, Jiankun Hu. - URL: http://www.mdpi.com/1424-8220/15/2/2812.

2. Proactive and Reactive Transmission Power Control for Energy-Efficient On-Body Communications. - URL: http://www.mdpi.com/1424-8220/15/3/5914.

3. Secure Publish-Subscribe Protocols for Heterogeneous Medical Wireless Body Area Networks. - URL: http://www.mdpi.com/1424-8220/14/12/22619.

4. Володин, К. И. Применение модельно-ориентированного подхода при сквозном проектировании адаптивных распределенных сенсорных сетей / К. И. Володин // Инновационные технологии в экономике, информатике и медицине : сб. ст. VIII Межрег. науч.-практ. конф. студентов и аспирантов. - Пенза : Изд-во Пенз. гос. технол. акад., 2011. - 266 с.

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

A. И. Переходов // Современные информационные технологии : тр. Междунар. науч.-техн. конф. -Пенза : ПГТА, 2012. - С. 99-112.

6. Официальный сайт компании MathWorks. - URL: www.mathworks.com/, свободный.

7. Официальный сайт компании Nordic VLSI. - URL: http://www.nordicsemi.com/, свободный.

8. Володин, К. И. Разработка программно-аппаратной платформы тестирования алгоритмов адаптивных распределенных сенсорных сетей / К. И. Володин, А. И. Переходов // Современные информационные технологии : тр. Междунар. науч.-техн. конф. - Пенза : ПГТА, 2013. - С. 187-194.

9. Официальный сайт компании MathWorks. - URL: http://www.mathworks.com/products/embedded-coder/, свободный.

10. Переходов, А. И. Анализ программных средств MathWorks MATLAB&Simulink для синтеза поведенческих моделей узлов сенсорных сетей / А. И. Переходов // Молодой ученый. - 2013. - № 7 (54). - С. 63-67.

11. Володин, К. И. Анализ основных возможностей Legacy Code Tool среды MATLAB&Simulink и его применимости для создания библиотеки блоков Simulink в рамках концепции синтеза программного обеспечения беспроводных адаптивных распределенных сенсорных сетей / К. И. Володин, А. И. Переходов // Современные информационные технологии : тр. Междунар. науч.-техн. конф. - Пенза : ПГТА, 2014. - С. 54-59.

12. Официальный сайт компании Microsym Computers Inc. - URL: http://microsym.com/editor/assets/ intelhex.pdf, свободный.

13. Способ автоматической поверки кориолисовых расходомеров на месте их эксплуатации / М. Ю. Михеев,

B. А. Юрманов, Н. К. Юрков, К. В. Гудков // Измерительная техника. - 2012. - № 2.- С. 29-32.

14. Михеев, М. Ю. Реализация модельно-ориентированного подхода при проектировании системы сбора данных / М. Ю. Михеев, Е. А. Гудкова, К. В. Гудков // Современные проблемы науки и образования. -2014. - № 6. - С. 64-69.

15. Современные технические решения и проблемы в обеспечении комплексной безопасности / C. В. Волков, В. И. Кулапин, А. В. Светлов // Надежность и качество сложных систем. - 2014. - № 4. - С. 61-68.

16. Методика обеспечения информационной безопасности / В. В. Шишкин, Н. К. Юрков, Н. Ж. Мусин // Надежность и качество сложных систем. - 2013. - № 4. - С. 9-13.

17. A method of automatic verification of Coriolis flowmeters in the field / N. K. Yurkov, K. V. Gudkov, M. Yu. Mikheev, V. A.Yurmanov // Measurement Techniques. - 2012. - V. 55. - May. - Issue 2. - Р. 151-155.

18. Systems of Coriolis flowmeters in the field / N. K. Yurkov, K. V. Gudkov, M. Yu. Mikheev, V. A. Yurmanov // Measurement Techniques. - 2012. - V. 55. - November. - Issue 6. - P. 132-139.

Володин Константин Игоревич старший преподаватель,

кафедра информационных технологий и систем, Пензенский государственный технологический университет (440039, Россия, г. Пенза, ул. Гагарина, 13) (8412) 49-60-09

e-mail: [email protected] Переходов Александр Игоревич студент,

Пензенский государственный

технологический университет

(440039, Россия, г. Пенза, ул. Гагарина, 13)

(8412) 49-60-09

E-mail: [email protected]

Volodin Konstantin Igorevich

senior teacher,

sub-department of information technologies and systems,

Penza State Technological University (440039, 13 Gagarin street, Penza, Russia)

Perekhodov Aleksandr Igorevich student,

Penza State Technological University (440039, 13 Gagarin street, Penza, Russia)

89

Надежность и качество сложных систем. № 1(9), 2015

Аннотация. В рамках информационной системы разработана библиотека пакета расширений среды MathWorks MATLAB&Simulink для микроконтроллера на базе технологий Nordic Semiconductor. Разрабатываемый пакет позволит реализовать подход модельно-ориентированного проектирования с возможностью последующей генерации исходного кода из разработанных моделей для сенсорных сетей на базе технологий Nordic Semiconductor.

Ключевые слова: сенсорная сеть, сенсорная платформа, передача данных, обработка данных, адаптивные распределенные сенсорные сети, распределенные сенсорные сети, распределенные сети, автоматизированный синтез кода, Legacy Code Tool, MATLAB, модельно-ориентированное проектирование, кодогенерация.

Abstract. As part of information system was developed library with extensions for MathWorks MATLAB & Simulink for microcontroller which based on Nordic Semiconductor technology. Developing a package will implement the approach Model-Based Design with the possibility of generating source code from models developed for sensor networks based on Nordic Semiconductor technologies.

Key words: sensor network, sensor platform, data transfer, data processing, adaptive distributed sensor networks, distributed sensor networks, distributed networks, automated synthesis code, Legacy Code Tool, MATLAB, мodel-based design, the code generation.

УДК 004.75 Володин, К. И.

Информационная система сопровождения разработки встраиваемого программного обеспечения для беспроводных сенсорных сетей / К. И. Володин, А. И. Переходов // Надежность и качество сложных систем. - 2015. - № 1 (9). - С. 85-90.

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