Хотя libiio предоставляет программный интерфейс низкого уровня, в большинстве случаев пользователям требуется такой API-интерфейс, который абстрагирует вызовы драйверов низкого уровня и предоставляет набор функций для доступа и настройки системных параметров, а также потоковых данных из системы. По этой причине платформа прототипирования лидара поставляется со специальным API-интерфейсом с привязками для широко распространенных платформ и языков программирования, например C/C++, MATLAB или Python [10]. Этот интерфейс позволяет взаимодействовать с системой с помощью предпочитаемого языка программирования и целиком заняться разработкой алгоритмов и приложений, что является несомненным преимуществом [11].
ВыводыПри проектировании любой системы, когда создается архитектура и принимаются проектные решения, имеется некоторая неопределенность. В результате возникает риск, что система после сборки не станет работать или как минимум функционировать должным образом, что, в свою очередь, приведет к многочисленным повторным циклам проектирования, доработкам и росту затрат. Исходные проекты, созданные на базе уже разработанных систем и учитывающие особенности взаимодействия, снижают риски, повышают общую предсказуемость поведения и надежность изделий по сравнению с использованием нестандартных одноразовых решений, созданных с чистого листа.
Разработчикам систем требуются такие платформы для подтверждения правильности проектных решений, которые позволяют снизить риски и повысить надежность конечных изделий. Начало проекта, основанное на четких и стандартизованных решениях, в значительной мере облегчает процесс планирования за счет использования общего языка для согласования поставленных задач и тесного сотрудничества разработчиков разных узлов одной системы, благодаря чему намного быстрее достигается одна общая цель [12] и минимизируются последствия неизбежных компромиссов.
Платформа прототипирования лидаров, предлагаемая компанией ADI, позволяет удовлетворить эти потребности, обеспечив аппаратные и программные решения с открытым исходным кодом, которые можно использовать на самых начальных этапах закладки архитектуры системы. Аппаратная платформа и программный стек могут применяться на всех стадиях разработки изделия.
Техническая документация исходного проекта обеспечивает построение стандартной локализованной системы проектирования. Модульная конструкция оборудования позволяет использовать разные варианты конфигурации для удовлетворения конкретных требований приложений, а программный стек с открытым исходным кодом на основе стандартных платформ, языков программирования и примеров приложений позволяет целиком сосредоточиться на разработке приложений, не тратя усилия на проектирование низкоуровневых частей стека.
Еще одну технологию несканирующего лидара компании Analog Devices см. в [13–14].
Литература
1. Csomortáni I., Bogdan D., Orian C., Cozma A. Open-Source LIDAR Prototyping
Platform // Analog Dialogue. February 2020. Vol. 54.
www.analog.com/en/
analog-dialogue/articles/open-source-lidar-prototyping-platform.html#
2. AD-FMCLIDAR1‑EBZ.
www.wiki.analog.com/resources/eval/user-guides/ad-fmclidar1‑ebz3. AD9528 Генератор тактовых сигналов JESD204B с 14 выходами LVDS/HSTL.
www.analog.com/ru/products/ad9528.html4. LTC6561 Four-Channel Multiplexed Transimpedance Amplifier with Output
Multiplexing.
www.analog.com/ru/products/ltc6561.html5. Fast Axis Collimator Lenses. FISBA, 2019.
www.fisba.com/expertise/expertisecomponents/
fast-axis-collimator-lenses-facs6. JESD204 Interface Framework. Analog Devices, Inc., 2019.
www.wiki.analog.com/resources/fpga/peripherals/jesd2047. What Is Free Software? Free Software Foundation, Inc., 2019.
www.gnu.org/philosophy/free-sw.en.html8. The Linux Driver Implementer's API Guide. The kernel development community.
www.kernel.org/doc/html/latest/driver-api/iio/intro.html9. About libiio. Analog Devices, Inc., 2019.
www.wiki.analog.com/resources/
tools-software/linux-software/libiio_internals10. PyADI-IIO: Analog Devices Python Interfaces for Hardware with Industrial I/O
Drivers. GitHub, Inc., 2020.
www.github.com/analogdevicesinc/pyadi-iio11. Hennerich M., Getz R. Free and Open-Source Software —
An Analog Devices Perspective // Analog Dialogue. Mar. 2010. Vol. 44. No. 3.
www.analog.com/media/en/analog-dialogue/volume‑44/number‑1/
articles/free-and-open-source-software.pdf12. Рентюк В. Устранение конфликта интересов и оптимизация организации
работ при проектировании РЭА // Технологии в электронной промышлен-
ности. 2014. № 7.
13. Рентюк В. Технология распознавания глубины от компании Analog Devices
для современных и перспективных приложений. Часть 1. Основы //
Компоненты и технологии. 2020. № 2.
14. Рентюк В. Технология распознавания глубины от компании Analog Devices
для современных и перспективных приложений. Часть 2. Основы //
Компоненты и технологии. 2020. № 3.