Научная статья на тему 'РАЗРАБОТКА ПРОГРАММЫ ДЛЯ СБОРА И ОБРАБОТКИ ДАННЫХ С АНАЛОГОВЫХ ДАТЧИКОВ В РОБОТОТЕХНИЧЕСКИХ СИСТЕМАХ'

РАЗРАБОТКА ПРОГРАММЫ ДЛЯ СБОРА И ОБРАБОТКИ ДАННЫХ С АНАЛОГОВЫХ ДАТЧИКОВ В РОБОТОТЕХНИЧЕСКИХ СИСТЕМАХ Текст научной статьи по специальности «Компьютерные и информационные науки»

344
30
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДАТЧИКИ / ПИД РЕГУЛЯТОР / СБОР ДАННЫХ / SENSORS / PID CONTROLLER / DATA ACQUISITION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Абазоков М.Б., Макоева Д.Г., Сундуков З.А.

В данной статье описаны основные алгоритмы работы программы для сбора и обработки данных с датчиков, применяемой при анализе данных с аналоговых датчиков в робототехнических системах. В разработанной программе реализован опрос нескольких датчиков с помощью COM-порта, вывод данных в числовом и графическом виде на экран, расчет параметров сигнала с датчиков и сохранение результатов работы. При анализе данных датчиков рассчитываются максимум, минимум и среднее значение сигнала, а также интегральные и дифференциальные показания датчиков. Результаты сохраняются в виде файла с таблицей в формате csv или в виде изображения в формате jpg. Проводимые в программе расчеты параметров сигнала позволяют оценивать влияние шума на сигнал и выбирать методы его устранения, в том числе и за счет пропорционально-интегрально-дифференциального (ПИД) регулятора.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Абазоков М.Б., Макоева Д.Г., Сундуков З.А.

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

DEVELOPMENT OF A PROGRAM FOR COLLECTING AND PROCESSING DATA FROM ANALOG SENSORS IN ROBOTIC SYSTEMS

This article describes the basic algorithms of the program for collecting and processing data from sensors, used in the analysis of data from analog sensors in robotic systems. The developed program implements a survey of several sensors using the COM port, data output in numerical and graphical form on the screen, calculation of sensors signals parameters and saving the results of work. Sensor data analysis includes calculation of maximum, minimum, average signal values and the integral and differential readings of the sensors. The results are saved as a file with a table in csv format or as an image in jpg format. The calculations of the signal parameters carried out in the program make it possible to assess the effect of noise on the signal and choose methods for its elimination, including due to the proportional-integral-differential (PID) controller.

Текст научной работы на тему «РАЗРАБОТКА ПРОГРАММЫ ДЛЯ СБОРА И ОБРАБОТКИ ДАННЫХ С АНАЛОГОВЫХ ДАТЧИКОВ В РОБОТОТЕХНИЧЕСКИХ СИСТЕМАХ»

Известия Кабардино-Балкарского научного центра РАН № 6 (92) 2019

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

УДК 004.4

DOI: 10.35330/1991-6639-2019-6-92-5-9

РАЗРАБОТКА ПРОГРАММЫ ДЛЯ СБОРА И ОБРАБОТКИ ДАННЫХ С АНАЛОГОВЫХ ДАТЧИКОВ В РОБОТОТЕХНИЧЕСКИХ СИСТЕМАХ *

М.Б. АБАЗОКОВ, Д.Г. МАКОЕВА, З.А. СУНДУКОВ

ФГБНУ «Федеральный научный центр «Кабардино-Балкарский научный центр Российской академии наук» 360002, КБР, г. Нальчик, ул. Балкарова, 2 E-mail: cgrkbncran@bk.ru

В данной статье описаны основные алгоритмы работы программы для сбора и обработки данных с датчиков, применяемой при анализе данных с аналоговых датчиков в робототехниче-ских системах. В разработанной программе реализован опрос нескольких датчиков с помощью COM-порта, вывод данных в числовом и графическом виде на экран, расчет параметров сигнала с датчиков и сохранение результатов работы. При анализе данных датчиков рассчитываются максимум, минимум и среднее значение сигнала, а также интегральные и дифференциальные показания датчиков. Результаты сохраняются в виде файла с таблицей в формате csv или в виде изображения в формате jpg. Проводимые в программе расчеты параметров сигнала позволяют оценивать влияние шума на сигнал и выбирать методы его устранения, в том числе и за счет пропорционально-интегрально-дифференциального (ПИД) регулятора.

Ключевые слова: датчики, ПИД регулятор, сбор данных.

Введение

На современном этапе развития робототехники все еще актуальна задача очувствления роботов и разработки новых датчиков. При этом стоит учитывать не только вид датчика, но и требования к выходному сигналу, условия работы и возможные шумы [ 1 ]. При этом рынок робототехники стремительно развивается (по оценкам Сбербанка, за 2019 год будет продано более 484000 промышленных роботов [2]). Поэтому задача автоматизации исследований и тестирования разрабатываемых сенсорных узлов для робототехники становится более актуальной. В статье предложены алгоритмы сбора и анализа данных с датчиков и описана разработанная программа для сбора этих данных.

Алгоритм работы программы для сбора и обработки данных

с аналоговых датчиков

Для анализа сигнала с датчиков в первую очередь необходимо провести сбор данных. В разработанной программе предусмотрена возможность опроса нескольких датчиков, что позволит проводить сравнительный анализ их поведения. Поэтому после начала работы необходимо установить количество опрашиваемых датчиков. Основной цикл программы опрашивает все датчики и записывает полученные значения в соответствующие переменные sensor [i]. После проведения опроса проводится обработка полученных данных. Полученные данные выводятся на экран и добавляются в массив data [i, j]. При этом элементы массива постоянно смещаются, то есть в памяти могут храниться только данные за последние несколько секунд работы программы. Использование массива позволит выводить на экран или в файл не только текущие значения с датчиков, но и анализировать динамику изменения измеряемых параметров. Соответственно, данные из массивов выводятся на экран и при необходимости сохраняются в файл. Алгоритм работы программы приведен на рисунке 1.

* Работа выполнена при поддержке проекта РФФИ 18-01-00658 А

ввод количества датчиков (п)

i = 0 .. п

опрос датчиков обработка данных (расчет max, min, sum, average, delta, smooth и др.) вывод данных на экран добавление данных в массив (data[i,j]) вывод графика на экран

запрос на охранени

j = 0 .. m

запись в файл data [i, j]

Рис. 1. Алгоритм опроса данных с датчиков

Для каждого датчика в программе проводился расчет ряда параметров сигнала. Рассчитываются максимальное и минимальное значение сигнала (с помощью выражений (1) и (2)), интегральный показатель (3), среднее значение (4), дифференциальный показатель (5) и сглаженные данные (6). Расчет максимума (max) и минимума (min) позволяет отслеживать диапазон изменений входящего сигнала:

Г data , data > max max = i г г г , (1)

г I max г j, data < max г

min

data , data < min

г ? г г

min ,, data > min

(2)

Интегральный показатель (sum) рассчитывается как сумма всех значений входящего сигнала. Данный параметр интересен для сигналов, показывающих отклонение от нормального (нулевого) значения и позволяет отследить накопление ошибки:

sum = X data .

(3)

i=0

Среднее значение (average) рассчитывается как отношение суммы к количеству измерений (n):

sum

averaget

n

(4)

Изменение сигнала (дифференциальный показатель delta) определяется как разница текущего и предыдущего сигналов с датчика. Данный параметр характеризует скорость изменения сигнала и вместе с sum может использоваться при подборе коэффициентов ПИД регулятора [3]:

М.Б. АБАЗОКОВ, Д.Г. МАКОЕВА, З.А. СУНДУКОВ

delta = data - data .. (5)

¡ ¡ ¡-i ^ ^

Сглаживание производится за счет усреднения последних k измерений. Коэффициент k задает степень сглаженности сигнала и позволяет фильтровать случайные всплески и высокочастотные шумы с датчика:

¡

^ dataj

smooth = -. (6)

¡ k

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

Интерфейс программы для сбора и обработки данных

с аналоговых датчиков

Программа для сбора и обработки данных с датчиков была разработана на языке C# для ЭВМ на базе операционных систем Windows. Выбор обусловлен широким функционалом языка программирования и доступностью свободно распространяемых сред разработки для него [4]. Внешний вид окна программы представлен на рисунке 2. На нем есть область настройки соединения с АЦП. В качестве протокола связи используется виртуальный COM-порт, в который передаются значения с датчиков. Для этого в программе реализован поиск активных портов, а также возможность выбора порта и подключения к нему.

Рис. 2. Внешний вид программы для сбора и обработки данных с аналоговых датчиков

Полученные данные выводятся в виде чисел и графических индикаторов (ProgressBar) в области «принятые данные». В программе реализована возможность получения данных сразу с 10 датчиков, причем выбор исследуемого осуществляется в этой же области окна программы. В области «линии» выводятся (в числовом и графическом виде) параметры исследуемого сигнала (выражения (1)-(6)). При выборе определенного вида данных линия, показывающая эти данные на графике, выделяется. Основная часть программы используется для вывода графика зависимостей параметров исследуемого сигнала от времени. Данные выводятся за последнюю минуту работы программы.

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

используется диалог SaveFileDialog, позволяющий пользователю выбрать папку для хранения файла, после чего в цикле перебираются все значения data [i, j] и записываются в файл.

Тестирование программы для сбора и обработки данных

с аналоговых датчиков Разработанная программа тестировалась на АЦП, встроенных в микроконтроллеры At-mega. На микроконтроллер подавалось переменное напряжение (сигнал в виде синусоиды) через неэкранированные провода. Полученные данные оцифровывались и отправлялись в COM-порт, откуда программа считывала данные. На рисунке 3 показан график зависимости сигнала от времени, полученный в разработанной программе. На графике видны основной сигнал (синяя линия) и результат его сглаживания (серая линия). Сглаженный сигнал, полученный выражением (4), лишен колебаний, вызванных шумом в проводах, и незначительно запаздывает относительно основного сигнала. Дифференциальная составляющая (темно-синяя линия) позволяет оценить влияние шума на основной сигнал - на нем гораздо заметнее колебания, вызванные шумом.

-204.6

-613.8

-1023 Ч---

0 200 400 600

Рис. 3. График зависимости данных с датчиков давления при переменной нагрузке,

полученных в программе

Стоит отметить, что полученные данные позволили проанализировать возможные проблемы при использовании неэкранированных проводов, а также провести предварительное сглаживание сигнала.

Заключение

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

М.Б. АБАЗОКОВ, Д.Г. МАКОЕВА, З.А. СУНДУКОВ

ЛИТЕРАТУРА

1. Информационные устройства и системы в робототехнике и мехатронике: учеб. пособие. (Серия: Интеллектуальные технические системы). Томск: Изд-во Том. ун-та, 2016. 524 с.

2. Лаборатория робототехники Сбербанка. Аналитический обзор мирового рынка робототехники 2019. URL: http://www.sberbank.ru/common/img/uploaded/pdf/ sberbank_ robot-ics_review_2019_17.07.2019_m.pdf

3. Денисенко В.В. ПИД регуляторы: принципы построения и модификации // Современные технологии автоматизации. 2006. № 4. С. 66 74.

4. Ian Griffiths Programming C# 5.0 / Sebastopol: O'Reilly Media, Inc, 2012. 884 p.

REFERENCES

1. Informatsionnyye ustroystva i sistemy v robototekhnike i mekhatronike [Information devices and systems in robotics and mechatronics]: textbook. (series: Intellektual'nyye tekhnicheskiye sistemy). Tomsk: Izd-vo Tom. un-ta, 2016. 524 p.

2. Laboratoriya robototekhniki Sberbanka. Analiticheskiy obzor mirovogo rynka roboto-tekhniki ["Sberbank Robotics Laboratory" Analytical review of the global robotics market], 2019. URL:http://www.sberbank.ru/common/img/uploaded/pdf/sberbank_robotics_rview_2019_ 17.07.2019_m.pdf.

3. Denisenko V.V. PID regulyatory: printsipy postroyeniya i modifikatsii [PID controllers: principles of construction and modification] // Sovremennyye tekhnologii avtomatizatsii. 2006. № 4. P. 66 74.

4. Ian Griffiths Programming C# 5.0 / Sebastopol: O'Reilly Media, Inc, 2012, 884 p.

DEVELOPMENT OF A PROGRAM FOR COLLECTING AND PROCESSING DATA FROM ANALOG SENSORS IN ROBOTIC SYSTEMS

M.B. ABAZOKOV, D.G. MAKOEVA, Z.A. SUNDUKOV

Federal state budgetary scientific establishment "Federal scientific center "Kabardin-Balkar Scientific Center of the Russian Academy of Sciences" 360002, KBR, Nalchik, 2, Balkarov street E-mail: cgrkbncran@bk.ru

This article describes the basic algorithms of the program for collecting and processing data from sensors, used in the analysis of data from analog sensors in robotic systems. The developed program implements a survey of several sensors using the COM port, data output in numerical and graphical form on the screen, calculation of sensors signals parameters and saving the results of work. Sensor data analysis includes calculation of maximum, minimum, average signal values and the integral and differential readings of the sensors. The results are saved as a file with a table in csv format or as an image in jpg format. The calculations of the signal parameters carried out in the program make it possible to assess the effect of noise on the signal and choose methods for its elimination, including due to the proportionalintegral-differential (PID) controller.

Keywords: sensors, PID controller, data acquisition.

Работа поступила 06.12.2019 г.

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