Компактное энергоэффективное устройство сбора и оперативной передачи геомагнитных данных
Автор: Алешин Игорь Михайлович, Гетманов В.Г., Груднев А.А., Добровольский М.Н., Иванов С.Д., Корягин В.Н., Красноперов Р.И., Кудин Д.В., Передерин Ф.В., Соловьев А.А., Холодков К.И.
Журнал: Научное приборостроение @nauchnoe-priborostroenie
Рубрика: Работы с конференции
Статья в выпуске: 3 т.28, 2018 года.
Бесплатный доступ
Предложена схема регистрации и передачи данных в режиме реального времени. Схема реализована на базе одноплатного компьютера с ARM-процессором, имеющим малое потребление энергии, небольшой размер и вес. Использован унифицированный подход к регистрации, передаче и хранению данных, основанный на применении протокола SeedLink для взаимодействия между программными компонентами. Этот протокол позволяет также осуществлять оперативную (в режиме реального времени) передачу данных. В сетях IPv4 информационное взаимодействие устройства и центра сбора данных осуществляется по защищенному каналу с использованием технологии виртуальной частной сети. Реализована возможность удаленного управления как самим устройством, так и соединенным с ним измерительным оборудованием. В качестве примера устройство было адаптировано для работы с рядом магнитных вариометров.
Регистрация данных, оперативная передача данных, arm-процессор
Короткий адрес: https://sciup.org/142214871
IDR: 142214871 | DOI: 10.18358/np-28-3-i513
Текст научной статьи Компактное энергоэффективное устройство сбора и оперативной передачи геомагнитных данных
Возросшая производительность обработки информации, увеличение объемов систем хранения, появление и широкое распространение скоростных каналов связи привели к качественным изменениям в информационных технологиях (ИТ). На наш взгляд, эти изменения обусловлены двумя взаимосвязанными обстоятельствами. С одной стороны, широкое распространение компьютерной техники привело к снижению ее доли в общих затратах на создание конечных продуктов, и соответственно возрастанию роли разработчика. С другой стороны, производительность современных компьютеров позволяет существенно повысить уровень абстракции при взаимодействии с аппаратурой, что дает возможность использовать для разработки значительно более простые в применении средства создания программных продуктов. Последние не только обеспечивают доступ к имеющимся ресурсам без необходимости вникать в особенности реализации, но, как правило, предоставляют большой выбор библиотек, содержащих решения широкого круга задач из разных областей знаний. Новые возможности, предоставляемые современными ИТ, кардинально изменили не только требования к информационным продуктам и сервисам, но и подход к их созданию. Простота реализации удаленного доступа к данным и службам, а также передачи информации в реальном времени привели к развитию облачных серви- сов, обеспечивающих решение ряда задач, включая хранение данных, выполнение вычислений и пр., с использованием удаленных серверов, не требуя от пользователя каких-либо знаний об аппаратной и программной составляющих службы.
К сожалению, такого рода изменения не затронули системы регистрации геомагнитного поля, включая современные разработки, как, например, [1]. Используемое здесь программное обеспечение ориентировано на физический доступ к регистратору по крайней мере для настройки оборудования. Учитывая специфику геомагнитных наблюдений, требующих размещения обсерваторий в удаленных труднодоступных местах, это по крайней мере не упрощает настройку и обслуживание системы. Для передачи данных используются протоколы общего назначения FTP, HTTP, SMTP, возможность использования протоколов реального времени не обсуждается. Как следствие, отсутствуют регулярные средства удаленного мониторинга и удаленного управления оборудованием.
Формально практически все из перечисленных здесь задач, а также ряд других, могут быть решены средствами, предоставляемыми существующими регистраторами. Так, удаленный доступ может быть организован на основе комбинации доступа по протоколу SSH и технологии Virtual Network Computing [2], а небольшой объем передаваемых данных, даже при секундной регистрации вкупе с большой величиной допустимой временнóй задержки позволяет организовать опе- ративную трансляцию измерений штатными средствами операционной системы. Однако решения такого рода будут ненадежными, ресурсоемкими, без возможности тиражирования и масштабирования. Поэтому мы в своей разработке изначально отказались от использования каких-либо программных компонент, поставляемых в составе штатного оборудования, заменив их средствами, отвечающими, на наш взгляд, современному состоянию ИТ. Первая реализация программноаппаратного комплекса регистрации, передачи данных и управления регистрирующим оборудованием [3] была адаптирована для работы с абсолютным магнитометром POS1 [4], [5]. В данной работе представлен результат включения вариометра FGE [6] в разработанную нами схему передачи данных.
Состав регистрирующего комплекса с использованием оборудования фирмы MinGeo схематически изображен на рис. 1. Аналоговый сигнал вариометра преобразуется в цифровой с помощью 24-разрядного АЦП, с точностью привязки отсчетов по времени порядка 0.01 с.
Чтобы повысить точность временных меток до 1 мс можно использовать модуль синхронизации PalmAcq [8]. Дальнейшая обработка данных происходит в регистраторе, который представляет собой компьютер на базе процессора с архитекту- рой x86 с минимальным потреблением энергии для систем этого типа. В качестве операционной системы используется один из дистрибутивов Linux. Управление компонентами системы, включая запуск, настройку и контроль функционирования, осуществляется проприетарным программным обеспечением, которое также решает задачи сохранения данных, передачи по протоколу FTP и/или HTTP. На данном этапе мы ограничились модификацией последнего компонента в этой схеме. Кроме того, для упрощения тестирования, модуль синхронизации нами не использовался.
СХЕМА ОРГАНИЗАЦИИ СБОРА И ПЕРЕДАЧИ ДАННЫХ НА БАЗЕ ПРОТОКОЛА SeedLink
Аппаратную основу нашего устройства составляет компактный (размер 85.6×53.98×17 мм), недорогой (цена порядка $20) одноплатный компьютер, построенный на основе процессора с архитектурой ARM (Advanced RISC Machine). Современные системы оснащены многоядерными ARM-процессорами с тактовой частотой порядка 1 ГГц, оперативной памятью объемом до 1 ГБ, сетевыми интерфейсами Ethernet, WiFi, Bluetooth, несколькими разъемами USB и слотом для установки карты в формате Secure Digital.

Рис. 1. Схема подключения регистратора Magrec-4.
Измерения магнитометра (в нашем случае это был вариометр FGE [6]) передаются в 24-разрядное АЦП [7]. Результат оцифровки вместе со значениями температур сенсора и электронного блока датчика поступает в блок синхронизации PalmAcq [8], а затем в регистратор [9]
Хотя производительность ARM-процессоров заметно меньше, чем процессоров с архитектурой x86, максимальное потребление составляет всего 3 Вт, что на порядок меньше по сравнению даже с самыми энергоэффективными x86-системами, у которых минимальная потребляемая мощность ~15 Вт. В настоящее время имеется широкий выбор одноплатных компьютеров, среди которых следует упомянуть открытый проект BeagleBone [10], а также продукцию отечественного производителя [11]. Мы использовали продукт от наиболее распространенного производителя Raspberry PI Foundation [12], как и авторы работы [1].
Практически все из перечисленных модификаций ARM-устройств ориентированы на функционирование под управлением операционной системы (ОС). Под ARM адаптированы большинство популярных дистрибутивов Linux, для некоторых платформ доступна ОС Windows 10. Преимущества использования ОС очевидны, главное из которых — доступность штатных инструментов разработки, что существенно упрощает разработку как при создании программного обеспечения, так и при сопряжении с внешними устройствами. При выборе ОС мы остановились на Arch Linux [13], решающим обстоятельством стала возможность тонкой настройки состава установленных пакетов и программ. С целью экономии ресурсов мы стремились обойтись минимальными средствами. В частности, в нашем подходе предполагается, что управление устройствами, изменение настроек и пр. выполняются удаленно с доступом по протоколу SSH, либо из веб-приложения, без обязательного физического доступа к устройству. Это позволяет нам отказаться от использования локальных средств визуализации как программных, так и аппаратных (монитор).
Хотя средства ОС позволяют организовать передачу данных по сетевым протоколам общего назначения, таким как HTTP, FTP и их разновидности, однако стандартные программные реализа- ции их поддержки ориентированы на решение максимально широкого круга задач без учета их специфики. Нашей задачей является создание системы сбора, локального хранения, а также передачи геомагнитных данных в режиме реального времени. Учитывая возможную удаленность магнитных обсерваторий, система должна обеспечить гарантированную доставку данных по любым каналам связи, включая нестабильные и каналы со слабой пропускной способностью.
Основу нашего решения составляет протокол реального времени SeedLink [14], который широко применяется в сейсмических наблюдениях. Идея функционирования протокола состоит в передаче данных в формате miniSEED [15] средствами протокола TCP (Transmission Control Protocol). Механизм TCP обеспечивает передачу данных, при необходимости устраняет дубликаты, при потере повторяет запрос и уведомляет отправителя о результатах передачи, что в целом гарантирует целостность переданных данных. Имеется несколько программных реализаций серверов и клиентов протокола SeedLink. Мы воспользовались пакетом SeisComP3 [16], разработанном в Центре геофизических исследований (GeoForschungsZentrum), Потсдам, Германия. В состав пакета помимо SeedLink-сервера входит большое количество утилит, удобных для организации непрерывной регистрации данных. Он уже применялся нами ранее для сбора и передачи данных сейсмических [17], наклономера [18] и абсолютного магнитометра [3].
Технически оперативная передача данных подразумевает непрерывно функционирующую службу, которая по запросу пользователя предоставляет соответствующий поток данных. В нашем случае такой службой является сервер SeedLink, который транслирует данные, находящиеся в его кольцевом буфере. Последний непрерывно пополняется измерениями, преобразованными в формат miniSEED (см. рис. 2).

Рис. 2. Схема функционирования сервера оперативной передачи данных.
Измерения передаются на вход модуля "Плагин", где они преобразуются в формат miniSEED. Результат разработки помещается в кольцевой буфер SeedLink-сервера, замещая устаревшие данные. Передача начинается по запросу клиента
Практически весь функционал, реализующий службу, имеется в составе пакета SeisComP, пользователю необходимо лишь обеспечить преобразование потока регистрируемых данных в формат miniSEED. Для этого необходимо создать плагин (plugin) — исполняемый модуль, написанный по определенным правилам. В задачу модуля как раз входит преобразование входных данных в требуемый формат и реализация процедур взаимодействия с SeedLink-сервером. Хотя в составе пакета SeisComP имеется ряд стандартных плагинов, которые можно было адаптировать для работы с магнитометром, оказалось, что их использование неоптимально, т. к. затрудняет настройку системы. Поэтому нами был написан собственный модуль с требуемыми свойствами. Таким образом, при старте компьютера происходит инициализация оборудования, стартует SeedLink-сервер, после чего система готова к регистрации и передаче данных. Для получения данных можно использовать любой SeedLink-клиент, например Geopsy [19], см. рис. 3.
Хотя описанное выше состояние системы решает поставленную задачу получения данных в режиме реального времени, однако для полноценного функционирования системы стационарной регистрации геомагнитных данных необходимо провести дополнительные настройки как в регистраторе, так и со стороны сервера. Прежде всего требуется реализовать возможность внесения изменений в конфигурацию системы и изменения настроек оборудования, для этого был создан набор скриптов на языке Python. На данном этапе запуск этих скриптов выполняется "вручную", с командной строки, с использованием удаленного доступа по протоколу SSH. В дальнейшем планируется организовать полноценное удаленное управление системой, например, с помощью RESTful web-приложения аналогично нашей разработке для абсолютного магнитометра POS1 [4].
Еще одной необходимой компонентой системы регистрации является создание и поддержка локального архива регистрируемых данных. Это особенно важно для минимизации риска потери данных при работе в неблагоприятных условиях: удаленное расположения обсерватории, нестабильное электроснабжение, неустойчивые каналы связи. В нашей разработке мы воспользовались
■I Geopsy -
Server Pat*ifjj-u

Рис. 3. Снимок экрана свободно распространяемой программы Geopsy [19].
Данные — вариация X-компоненты геомагнитного поля, зарегистрированные тестовой установкой Геофизического центра РАН, принимаются клиентом SeedLink в центре данных ИФЗ РАН
Seed I .nt ygnjl к>юег
L» Begirt t*TiC 2018Д)4/зомсо_ ara 2№05/H(fr R«OMd dati «fznr. 13000 fito 188.91106.9 5:18000 Reduei^ng i®t o# еУмлв Re^artir^ #be^rm Vt_QF: ^^U 5 Рис. 4. Схема организации центра обработки данных. Функционирующий в центре SeedLink-сервер ретранслирует данные SeedLink-серверов, обеспечивающих регистрацию данных. Передача осуществляется по защищенному каналу по технологии VPN утилитой slarchive, входящей в состав пакета Seis-ComP. Программа slarchive является специализированным SeedLink-клиентом, ориентированным на ведение локального архива данных. Для получения данных, предназначенных к архивации, она подключается к локальному серверу SeedLink. Полученные данные максимально сжимаются и добавляются к архиву, расположенному на локальном носителе. Размер архива определяется на- стройками утилиты slarchive. Обычно используются суточные архивы для каждой регистрируемой компоненты, число таких архивов зависит главным образом от объема локального хранилища. В заключение раздела отметим, что локально сохраненные данные используются исключительно как элемент резервного копирования. Создание долговременного архива, а вместе с тем публикация, распространение данных осуществляется непосредственно в центре обработки данных (ЦОД). На рис. 4 приведена возможная схема соответствующей службы, основанной на SeedLink-сервере. Здесь эксплуатируется возможность протокола SeedLink трактовать данные регистраторов как входные каналы сервера, функционирующего в ЦОД. В состав каждого из элементов имеется SeedLink-клиент, который, соединяясь с SeedLink-сервером, обеспечивает доступ к поступающим данным. Защитить передаваемые данные от несанкционированного доступа можно с помощью технологии приватных частных сетей, см. напр. [20]. РЕАЛИЗАЦИЯ СБОРА ГЕОМАГНИТНЫХ ДАННЫХ НА БАЗЕ ПРОТОКОЛА SeedLink В качестве демонстрации разработанная нами система сбора данных была использована для ре- Рис. 5. Схема службы оперативной публикации данных. Необходимой составляющей службы является клиент, предназначенный для получения данных, предоставляемых SeedLink-сервером гистрации данных вариометра FGE [6], размещенного на территории Геофизического центра РАН (Москва). Для этого в исходной схеме регистрации, изображенной на рис. 1, мы полностью исключили даталоггер MagRec4, заменив его устройством собственной разработки. В качестве аппаратной основы мы использовали одноплатный компьютер RaspberryPI-3B: четырехъядерный ARM-процессор с тактовой частотой — 1.2 ГГц, оперативной памятью — 1 ГБ, максимальной потребляемой мощностью — 2.4 Вт. Операционная система, специализированное программное обеспечение и локальный архив хранятся на SD-карте. Данные, поступающие из АЦП, захватываются разработанным нами плагином, который преобразует их в формат miniSEED, и передаются на вход SeedLink-сервера. Таким образом, мы получаем пять временн х рядов в формате miniSEED: три компоненты вариаций магнитного поля с частотой дискретизации 10 Гц, температура внутри сенсора магнитометра и температура внутри его электронного блока — с частотой дискретизации 1 Гц. Для обмена информацией с ЦОД используется защищенный VPN-канал, созданный с использованием свободно распространяемого пакета OpenVPN [21]. Данные измерений передаются в ЦОД, размещенный в Институте физики Земли им. О.Ю. Шмидта РАН (Москва), все последующие манипуляции с ними осуществляются в этом центре. Как было описано выше, в ЦОД функционирует экземпляр сервера SeedLink, который, выступая в роли клиента, получает оперативные измерения со всех доступных ему регистрирующих устройств, включая данные интересующего нас вариометра. В то же время SeedLink-сервер обеспечивает доступ к полученным им данным всем локальным службам, функционирующим в ЦОД. Рассмотрим в качестве примера схему функционирования службы оперативной визуализации данных (см. рис. 5). Компонент службы, обеспечивающий поступление оперативных данных, представляет собой SeedLink-клиент, настроенный на нужный канал сервера. Полученные данные также записываются в базу данных InfluxDB [22], адаптированную к работе с временн ми рядами. Она используется для визуализации данных веб-приложением Grafa-na [23], рис. 6. Рис. 6. Визуализация данных вариометра, переданных в ЦОД ИФЗ РАН, на веб-сайте Института. Показано отображение текущего значения X-компоненты вариации геомагнитного поля и значений температур Описанная схема организации ЦОД с SeedLink-сервером в качестве источника данных оказалась надежной и достаточно гибкой. В частности, она позволяет легко реализовать передачу данных в реальном времени не только внутри ЦОД, но и внешним потребителям с помощью любого клиента SeedLink, например упомянутого ранее пакета Geopsy, см. рис. 3. Для этого достаточно сделать соответствующие настройки сервера и обеспечить доступ по выделенному TCP-порту. ЗАКЛЮЧЕНИЕ Опытная эксплуатация описанного выше устройства показала, что разработанная и реализованная схема регистрации геомагнитных данных, основанная на использовании специализированного протокола SeedLink, обеспечивает устойчивое и бесперебойное функционирование службы. Все компоненты, использованные в разработке, основаны на открытом программном обеспечении. Использование одноплатных компьютеров с ARM-процессорами позволяет в несколько раз снизить потребление энергии. Тем не менее представленная схема регистрации может быть развернута и на x86-системах, т. к. программное обеспечение является кроссплатформенным. Использование протокола SeedLink позволяет реализовать единый подход к созданию служб, связанных с регистрацией данных, что, в частности, позволит увеличить степень автоматизации поддержки системы. Наконец, наличие большого числа программных продуктов (приложений, библиотек и пр.), ориентированных на работу с данными в формате miniSEED и протоколом SeedLink, существенно упрощают разработку собственных приложений. Работа выполнена в рамках бюджетных тем Геофизического центра РАН и Института физики Земли им. О.Ю. Шмидта РАН.
Список литературы Компактное энергоэффективное устройство сбора и оперативной передачи геомагнитных данных
- Morschhauser A., Haseloff J., Bronkalla O. et al. A low-power data acquisition system for geomagnetic observatories and variometer stations//Geoscientific Instrumentation. Methods and Data Systems. 2017. Vol. 6, no. 2. P. 345-352.
- Richardson T., Stafford-Fraser Q., Wood K.R., Hopper A. Virtual network computing//IEEE Internet Computing. 1998. Vol. 2, no.1. P. 33-38.
- Передерин Ф.В., Алешин И.М., Холодков К.И. и др. Программная реализация удаленного управления процессами регистрации и оперативной передачи геомагнитных измерений.//Сейсмические приборы. 2016. Т. 52, № 4. С. 76-82.
- Сапунов В.А., Денисов А.Ю., Савельев Д.В. и др. Абсолютный Оверхаузеровский магнитометр POS-1 и опыт его применения на магнитных обсерваториях//Метрологические основы магнитных наблюдений Сибири и Дальнего Востока. Сб. докладов. Петропавловск-Камчатский, ИКИР ДВО РАН, 2003. С. 22-31.
- Aleshin I.M., Burguchev S.S., Kholodkov K.I. et al. Software for realtime acquisition of geomagnetic data and station management//Russ. J. Earth. Sci., Vol. 16. ES5004 DOI: 10.2205/2016ES000582
- Fluxgate magnetometer. Manual. Technical University of Denmark, 2014. Rev. 01/4-2014.
- 24-bit fast A/D converter module for analog output magnetometers. URL: http://www.mingeo.com/prod-obsdaq.html (дата обращения: 25.05.2018).
- USB data acquisition module with GPS time synchronization. URL: http://www.mingeo.com/prod-palmacq.html (дата обращения: 25.05.2018).
- LINUX based geomagnetic acquisition system. URL: http://www.mingeo.com/prod-legacy.html#tabs-3 (дата обращения: 25.05.2018).
- BeagleBoard.org Foundation. About us. URL: https://beagleboard.org/about (дата обращения: 25.05.2018).
- О компании НТЦ "Модуль". URL: http://www.module.ru/company.
- Raspberry Pi Foundation. About us. URL: http://www.raspberrypi.org/(дата обращения: 25.05.2018).
- Arch Linux. URL: http://www.archlinux.org (дата обращения: 25.05.2018).
- SeedLink. IRIS. URL: http://ds.iris.edu/ds/nodes/dmc/services/seedlink/(дата обращения: 25.05.2018).
- Ahern T., Casey R., Barnes D. et al. SEED Reference Manual. International Federation of Digital Seismograph Networks Incorporated Research Institutions for Seismology United States Geological Survey, 2014. Version 2.4.
- SeisComP. Applications. Seedlink. URL: http://www.seiscomp3.org (дата обращения: 25.05.2018).
- Ильинский Д.А., Алешин И.М., Бургучев С.С. и др. Опыт создания портативной автономной сейсмологической станции, работающей по протоколу реального времени//Сейсмические приборы. 2011. Т. 47, № 1. С. 52-67.
- Алешин И.М., Иванов С.Д., Корягин В.Н.и др. Оперативная публикация данных наклономеров серии НШ на основе протокола SeedLink//Сейсмические приборы. 2017. Т. 53, № 3. С. 31-41.
- Geopsy project. URL: http://www.geopsy.org (дата обращения: 25.05.2018).
- Алешин И.М., Васильев А.Е., Холодков К.И., Передерин Ф.В. Использование технологий виртуальных частных сетей для организации оперативных систем геофизических наблюдений//Сейсмические приборы. 2014. Т. 50, № 1. С. 63-69.
- OpenVPN. URL: http://openvpn.net (дата обращения: 25.05.2018).
- Influxdata. URL: https://www.influxdata.com/time-series-platform/influxdb/(дата обращения: 25.05.2018).
- Grafanalabs. URL: http://grafana.com (дата обращения: 25.05.2018).