Siberian Conference on Control and Communications, SIBCON-2015. 2015. С. 7147248.
3. Dobronets B., Popova O. Numerical probabilistic approach for data nonparametric analysis // Applied methods of statistical analysis. Nonparametric approach : Proceedings of the international workshop. 2015. С. 376384.
4. Popova O. A. Optimization problems with random data // Журнал Сибирского федерального университета. Сер. «Математика и физика». 2013. Т. 6. № 4. С. 506-515.
5. Scott D. W. Multivariate density estimation: theory, practice and visualization / Rice University. Houston, Texas, 1993.
References
1. Popova O. A. Tekhnologiya izvlecheniya i vizualizatsii znanii na osnove chislennogo veroyat-
nostnogo analiza neopredelennykh dannykh // Informatizatsiya i svyaz'. 2013. .№ 2. S. 63-66.
2. Uglev V. A., Popova O. A., Dobronets B .S. The accuracy calculation control of reliability indices for equipment responsible appointment // International Siberian Conference on Control and Communications, SIBCON-2015. Proceedings 2015. С. 7147248.
3. Dobronets B., Popova O. Numerical probabilistic approach for data nonparametric analysis // Applied methods of statistical analysis. Nonparametric approach. Proceedings of the international workshop. 2015. С. 376-384.
4. Popova O. A. Optimization problems with random data // Zhurnal Sibirskogo federal'nogo universiteta. Seriya: Matematika i fizika. 2013. T. 6. № 4. S. 506-515.
5. Scott D. W. Multivariate density estimation: theory, practice and visualization / Rice University, Houston, Texas, 1993.
© Погорелый Е. С., 2016
УДК 004.45
ПРОГРАММНАЯ АРХИТЕКТУРА АВТОНОМНОЙ РОБОТИЗИРОВАННОЙ ПЛАТФОРМЫ ДЛЯ ОБУЧЕНИЯ СТУДЕНТОВ
А. В. Саяпин*, А. Г. Зотин
Сибирский государственный аэрокосмический университет имени академика М. Ф. Решетнева Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31
E-mail: alstutor@gmail.com
Студенты аэрокосмических университетов встречаются с трудностями в процессе изучения таких дисциплин, как «Системы нечеткой логики» и «Нейронные сети» в связи с их малой практической направленностью. Для устранения этого была разработана роботизированная платформа, программное обеспечение которой взаимодействует, используя протокол mqtt.
Ключевые слова: робот, обучение студентов, автономная платформа, программная архитектура, протокол mqtt, нечеткая логика.
PROGRAM SYSTEM ARCHITECTURE FOR AUTONOMOUS ROBOTIC PLATFORM
FOR EDUCATIONAL PURPOSES
А. V. Sajapin*, A. G. Zotin
Reshetnev Siberian State Aerospace University 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation E-mail: *alstutor@gmail.com
The students of aerospace universities face difficulties dealing with fuzzy logic systems and neural networks due to lack of practice. To make the disciplines more practical the robotic platform was developed. Its software includes a set of programs that interoperate using mqtt protocol.
Keywords: robot, education, autonomous platform, program architecture, mqtt protocol, fuzzy logic control.
Введение. В последнее время все более широкое распространение получают автономные системы, предназначенные для разведки местности, взятия образцов и т. п., при этом они находят применение не только на земле, но и в космосе [1]. В связи с этим
повышается спрос на специалистов, которые могли бы разрабатывать подобные системы. При разработке таких систем от специалиста требуются знания и навыки в различных областях, в том числе и в области микроконтроллерных систем. Для обучения студентов
<Тешетневс^ие чтения. 2016
в данной области была разработана мобильная колесная платформа с использованием видео- и сенсорной информации [2], с распределенной системой управления [3]. Система управления позволяет студентам на основе визуальной настройки задать логику поведения колесной платформы.
Дальнейшим развитием системы стала возможность написания студентами программ для микроконтроллера [4].
Описание архитектуры системы. Реализованный ранее подход к обучению студентов предполагал использование готовой ранее собранной платформы. Однако для увеличения степени вовлеченности и повышения мотивации студентов в качестве основы очередной версии учебного комплекса был выбран робоконструктор [5]. Детали шасси робота были распечатаны на 3D-принтере (см. рисунок).
Автономная роботизированная платформа с установленными датчиками
В качестве основного бортового компьютера выступает Raspberry Pi 3, управляющий микроконтроллер - Arduino Uno.
Программное обеспечение платформы состоит из следующих элементов:
- прошивка микроконтроллерной отладочной платы Arduino Uno, предназначенная для управления исполнительными устройствами робота (двигатели, сервоприводы), а также съема информации с датчиков (магнетометр HMC5883L, акселерометр ADXL345, гироскоп L3G4200D) и передачи их в бортовой компьютер;
- программа для обмена информацией с микроконтроллером Arduino, запущенная на Raspberry Pi, и передачи ее брокеру сообщений;
- программа-контроллер нечеткой логики, основанная на библиотеке pyfuzzy [6].
Все программы, запускаемые на бортовом компьютере, реализованы на языке Python ветки 2.7 и используют многопоточность.
Основной особенностью данной версии системы является использование протокола MQTT для обмена информацией между программным обеспечением системы, что позволяет как менять отдельные компоненты системы, не затрагивая остальные (например,
для управления платформой можно использовать нейронную сеть вместо системы нечеткой логики), так и реализовать распределенную систему управления. Кроме того, это позволяет вести разработку на любом языке программирования, для которого существует реализация протокола MQTT.
Библиотека pyfuzzy была выбрана по причине использования файлов формата FCL для описания правил работы нечеткого логического контроллера. Входные и выходные данные для контроллера доставляются также по протоколу MQTT.
Обмен информацией между микроконтроллером Arduino и бортовым компьютером реализован с использованием формата JSON.
Заключение. Использование данной автономной платформы позволяет продемонстрировать студентам принципы построения роботизированных систем, проводить практические занятия по дисциплинам «Системы искусственного интеллекта», «Системы нечеткой логики», «Нейронные сети».
Библиографические ссылки
1. Jerry Colen Areas of Ames Ingenuity: Autonomy and Robotics [Электронный ресурс]. URL: http://www.nasa.gov/centers/ames/research/area-autono-my-and-robotics.html (дата обращения: 16.09.2016).
2. Зотин А. Г., Саяпин А. В. Разработка полуавтономной исследовательской системы с использованием видеоданных и сенсорных устройств // Решетневские чтения. 2013. Т. 2. № 17. С. 203-204.
3. Зотин А. Г., Саяпин А. В. Учебная распределенная система управления мобильной колесной платформой с использованием видео- и сенсорной информации // Программные продукты и системы. 2016. № 1. С. 146-151.
4. Саяпин А. В., Зотин А. Г. Система управления движением автономной колесной платформы // Ре-шетневские чтения : материалы XIX Междунар. науч.-практ. конф. (10-14 нояб. 2015, г. Красноярск). В 2 ч. Ч. 2 / под общ. ред. Ю. Ю. Логинова ; Сиб. гос. аэрокосмич. ун-т. Красноярск, 2015. С. 187-189.
5. Nikolay Grigoryev Arduino Educational Robotics Kit, Autonomous [Электронный ресурс] // RC controlled. URL: http://www.thingiverse.com/thing:1398660 (дат обращения: 16.09.2016).
6. Pyfuzzy - Python fuzzy package [Электронный ресурс]. URL: http://pyfuzzy.sourceforge.net/ (дата обращения: 16.09.2016).
References
1. Jerry Colen Areas of Ames Ingenuity: Autonomy and Robotics. URL: http://www.nasa.gov/centers/ames/ research/area-autonomy-and-robotics.html (accessed: 16.09.2016).
2. Zotin A. G., Sayapin A. V. Razrabotka poluav-tonomnoy issledovatel'skoy sistemy s ispol'zovaniem videodannykh i sensornykh ustroystv [The semiautono-mous exploration vehicle equipped with video sensor development] // Reshetnevskie chteniya. 2013. T. 2, № 17. Рр. 203-204.
3. Zotin A. G., Sayapin A. V., Uchebnaja raspredelen-naja sistema upravlenija mobil'noj kolesnoj platformoj s ispol'zovaniem video- i sensornoj informacii [Educational distributed system for mobile wheeled platform control using video and sensor information] // Programmnye pro-dukty i sistemy. 2016. № 1, pp. 146-151.
4. Sayapin A. V., Zotin A. G., Sistema upravlenija dvizheniem avtonomnoj kolesnoj platformy [Movement
control system for an autonomous wheeled platform] // Reshetnevskie chteniya, 2015. P. 2, pp. 187-189.
5. Nikolay Grigoryev Arduino Educational Robotics Kit, Autonomous / RC controlled. URL: http://www. thingiverse.eom/thing:1398660 (accessed 16.09.2016).
6. Pyfuzzy - Python fuzzy package. URL: http:// pyfuzzy.sourceforge.net/ (accessed: 16.09.2016).
© CamHH A. B., 3OTHH A. r., 2016
УДК 004.422.81
О СОЗДАНИИ ПРОГРАММЫ «ИЗУЧЕНИЕ КОДОВ РИДА-СОЛОМОНА»
В. А. Ушаков
Санкт-Петербургский государственный университет аэрокосмического приборостроения Российская Федерация, 190000, г. Санкт-Петербург, ул. Большая Морская, 67 E-mail: mr.vitaly.ushakov@yandex.ru
Описывается создание программы «Изучение кодов Рида-Соломона», коды, которые используются в различных областях, в том числе и в ракетно-космической области, а также использование кодов на практике.
Ключевые слова: коды Рида-Соломона, поля Галуа, программная реализация, кодирование с исправлением ошибок, помехоустойчивое кодирование.
ON THE ESTABLISHMENT OF THE "STUDY REED-SOLOMON CODES"
V. A. Ushakov
Saint-Petersburg State University of Aerospace Instrumentation 67, Bolshaya Morskaya Str., Saint-Petersburg, 190000, Russian Federation E-mail: mr.vitaly.ushakov@yandex.ru
It describes the establishment of program "Study of Reed-Solomon codes", which are used in different areas, including the aerospace area; and in practice the use of codes.
Keyword: Reed-Solomon code, Galois field, software implementation, error correction code, error correcting coding.
Многие наверняка слышали о существовании помехозащитных кодов Рида-Соломона [1], которые были изобретены в 1960 году сотрудниками лаборатории Линкольна Массачусетского технологического института. Однако эффективные алгоритмы декодирования были предложены в 70-е годы XX века. А первое применение код Рида-Соломона получил в лишь 1982 году из-за отсутствия достаточных вычислительных мощностей ЭВМ. Сегодня они широко используются в устройствах передачи и хранения данных для обнаружения и исправления ошибок. Область их применения необычайно широка: коды Рида-Соломона над полем Галуа GF(28) можно найти в системах цифровой записи CD-ROM и DVD, а также наземных системах HDTV, расширенные (128, 122, 7) коды HC над GF(27) - для модемов на кабельных линиях [2]. Кроме этого, они используются при передаче данных по сетям WiMAX, в оптических линиях связи, в спутниковой и радиорелейной связи. И конечно, они используются в ракетно-космической области,
а именно, в системах передачи космических данных и информации, о чем рассказано в [3]. Кроме того, можно упомянуть знаменитый (255, 223, 33) код в системах космической связи НАСА(^А^А) [2].
Программная реализация корректирующих кодов Рида-Соломона достаточно сложна и требует определенной математической подготовки, поэтому для облегчения этой задачи и помощи в изучении этой темы была создана программа «Изучение кодов Рида-Соломона» [4]. В приложении реализованы следующие основные этапы решения: построение расширенного поля Галуа, несистематическое кодирование, проверка кодовых слов, а также декодеры по алгоритму Евклида (определение синдромов, процедура Ченя, метод Форни) и по алгоритму Питерсона-Горенстейна-Цирлера. Теоретической основой для разработки послужили материалы из [5].
Для запуска приложения необходимо ввести начальные данные: порядок расширенного поля Галуа, примитивный многочлен, длина кода, число инфор-