Инновации 1 октября 2024

Не надо паять — просто программируй

На Международном технологическом конгрессе в Москве представлена уникальная отечественная разработка — отладочный комплекс MILUINO. При его помощи создается, тестируется и отлаживается программное обеспечение для микросхем российского производства
Не надо паять — просто программируй
Отладочный комплекс MILIUINO - совместная разработка сотрудников кафедры конструирования приборов и установок №18 Института физико-технических интеллектуальных систем МИФИ и АО «НПО КАДЕТЕК»
Фото предоставил В. Флоренцев

MILUINO — совместная разработка сотрудников кафедры конструирования приборов и установок № 18 Института физико-технических интеллектуальных систем МИФИ и АО «НПО КАДЕТЕК».

Через отладочную плату микроконтроллер или процессор подключается к компьютеру, и программист может увидеть на экране, как работает написанная им программа, используемая при создании различных приборов. Изделие изготовлено по образцу известной во всем мире итальянской отладочной платы Arduino Uno, созданной в начале XXI века. Однако начинка и софт устройства — российская оригинальная разработка, комплекс предназначен для работы с микросхемами российского производителя микросхем — АО «ПКК Миландр» (участник проекта «Национальные чемпионы»).

Поясним, что на Arduino российские процессоры отлаживать нельзя, потому что на этих платах стоят старые — 1990-х годов разработки — 8-битные микроконтроллеры на архитектуре AVR производства США. А в MILUINO используется чип компании «Миландр» на ядре Cortex-M3 с другой архитектурой — ARM.


ПЛАТА + МИЛАНДР.jpg
Отладочная плата MILUINO с микроконтроллером АО «ПКК Миландр»
Фото предоставил В. Флоренцев

«Мы сотрудничаем с НПО КАДЕТЕК относительно недавно, с 2021 года. Являемся поставщиками микроконтроллеров и иных микросхем для продукции, производимой этой компанией, — рассказал “Стимулу” специалист по маркетингу компании “Миландр” Семен Хузин. — У них ведется активная работа по внедрению курсов программирования на отечественных микроконтроллерах, в том числе производства “Миландра”, в ряде крупных компаний, занимающихся онлайн образованием, таких как SkillBox и Академия SoftLine. Кроме того, программа КАДЕТЕК уже несколько лет как успешно внедрена в НИЯУ МИФИ, а комплекты MILUINO выполняют роль лабораторных стендов».

По словам специалистов компании «Миландр», изготовление и дизайн комплектов — высокого качества, на уровне мировых стандартов.

«Это решение призвано популяризировать отечественные микроконтроллеры и в целом отечественную элементную базу в гражданском секторе российского рынка и рынка дружественных государств, что для нас, как для производителя элементной базы, тоже является немаловажным фактором, открывающим новые горизонты экспортного потенциала», — говорит Семен Хузин.

Кроме основной отладочный платы в набор MILUINO входят еще восемь плат расширения периферии, которые предназначены для отладки взаимодействия с периферийными устройствами, такими как различные ЖК-индикаторы, светодиодные панели, интерфейсные микросхемы отечественного производства и потенциометр для работы с АЦП. Можно работать и со многими другими платами расширения сторонних производителей, соответствующих стандарту Arduino Uno R3, что существенно расширяет возможности программирования в соответствии с российским национальным стандартом электроники, применяемым во всех сферах промышленности, а также при исполнении государственного оборонного заказа.


ФЛОРЕНЦЕВ.jpg
Генеральный директор АО «НПО КАДЕТЕК» Виталий Флоренцев
Фото предоставил В. Флоренцев

Без отладки никак

Чтобы узнать предысторию проекта — почему изначально родилась одна плата, а потом возник целый набор, для чего он нужен и каковы его перспективы, — мы поговорили с вдохновителем этой идеи генеральным директором АО «НПО КАДЕТЕК» Виталием Флоренцевым. Его компания занимается производством электроники и приборостроением в области измерительной техники и систем автоматизации исключительно с использованием отечественных комплектующих. А сам Виталий — выпускник и бывший аспирант НИЯУ МИФИ, в ближайшее время он планирует защитить в университете диссертацию в области квантовой механики.

«Я занимаюсь приборостроением и являюсь инженером-программистом, а не только руководителем компании. И в одном из проектов потребовалось создать цифровое устройство — дозиметрический комплекс для исследования нейтронных потоков. По требованию заказчика нужно было использовать только отечественную элементную базу. Это связано с тем, что данная продукция изготавливалась в основном для “Росатома”. А все, что делают коллеги из “Росатома”, нацелено на долгую перспективу и максимальную независимость от каких-либо внешних факторов, связанных с санкционной политикой. Да и мы, как русские инженеры, хотим в своей стране производить изделия из своих компонентов», — рассказывает Виталий Флоренцев.

Но возникла непредвиденная сложность: чтобы создать полноценный продукт, нужно было отечественные электронные компоненты по отдельности отладить и испытать прототип устройства.

magnifier.png «Это решение призвано популяризировать отечественные микроконтроллеры и в целом отечественную элементную базу в гражданском секторе российского рынка и рынка дружественных государств»

«Без отладки никак, — говорит гендиректор КАДЕТЕК. — Ты можешь все долго и продуманно проектировать, моделировать, симулировать. Но потом собираешь устройство, а оно не работает. Вроде все правильно, а оно не функционирует».

Участники команды начали искать отладочные средства. Это так называемый одноплатный компьютер с целевым процессором. Должна быть также возможность заливки кода и отслеживания на экране компьютера, как этот код будет вести себя внутри чипа, взаимодействуя с иными компонентами прибора.

«Такие средства были, но они нас не устраивали либо по срокам поставки, либо по цене и функционалу, — продолжает Виталий Флоренцев. — И мы посмотрели, что есть у западных коллег. На Западе давно этим занимаются. Они не только чипы продают, а еще и отладочные комплекты. Чтобы пользователи смогли разобраться в этой электронике, написано очень много вспомогательного материала. Все зарубежные производители современных отладочных плат стандартизируют их под Arduino Uno, потому что под нее сделано очень много всяких плат — расширений. А наши отладочные решения не пользуются спросом, потому что, чтобы в них что-то воткнуть, чтобы правильно подключить все проводки, надо быть доктором наук. И, работая с этими платами, ты не понимаешь, где ты ошибся: в проводках, программе, подаче питания или просто контакта нет».

В результате был создан отладочный комплект, который позволил сотрудникам компании КАДЕТЕК решить задачи по разработке дозиметрического комплекса. Этот комплект соответствует общемировой стандартизации, в нем также можно использовать отладочные средства из западных решений, которые у нас пока еще не повторили.


ПЛАТА+ДИСПЛЕЙ.jpg
Отладочная плата MILUINO, на которой установлена плата расширения (из набора) со знакосинтезирующим дисплеем фирмы МЭЛТ (Россия)
Фото предоставил В. Флоренцев

Просто и удобно

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

«Платформа Arduino Uno, как и наша MILUINO, — это “мозги”, — рассказывает Виталий Флоренцев. — К Arduino у меня, к примеру, накопилось много плат расширения, или, говоря на сленге, шилдов: дисплейчики, чипы интерфейса, межмашинного обмена данными, датчики, акселерометры, гироскопы и многие другие типы интегральных устройств, которые необходимы, чтобы собрать какой-то прибор. К нынешним средствам отладки, которые есть в России, эти так называемые шилды можно подключить только с помощью паяльника и проводов. А к нашему комплекту они подсоединяются просто — USB-шнурами. Мы и дальше планируем развивать экосистему шилдов, только уже отечественных, чтобы они подходили и к плате Arduino, и к нашей».

Второй важный момент — наличие программатора. Это устройство, которое соединяет среду разработки на компьютере, где пишется программа, непосредственно с памятью чипа. Функция программатора — записать программу на микросхему. На нынешних российских платах предусмотрено подключение стороннего программатора. То есть надо купить отладочную плату, купить программатор, все это соединить, подключить, настроить, прописать драйвера.

А в MILUINO программатор уже встроен, можно сразу начинать писать программу и ее отлаживать. В самом простом варианте, чтобы помигать заветным светодиодом, единственное, что надо сделать, — воткнуть его в плату через кабель мини-USB.

И третье — это наличие дополнительной информации. В отличие от других российских средств отладки к плате MILUINO прилагается большое количество примеров и решений. Причем они пригодятся не только студентам, но и инженерам, которые проектируют устройства. Потому что, когда специалист берется за новую задачу, он всегда изучает справочную литературу, он не может знать всего.


ПАНОВ.jpg
Слушатель курсов «Программирование микроконтроллеров» Артём Лузин держит в руках отладочную плату MILUINO, совместную разработку сотрудников МИФИ и компании КАДЕТЕК
Фото предоставил В. Флоренцев

Научить искусству программирования

Как рассказывает гендиректор КАДЕТЕК, постепенно стали привлекать к разработке продвинутых студентов, умеющих работать с аналогичными платами Arduino. И выяснилось, что эти студенты берут из интернета уже написанные блоки, копируют, меняют ряд параметров, что-то дорабатывают, но делают это совершенно неосознанно, не понимая происходящего внутри кристалла.

«В связи с этим мы с ребятами из МИФИ, с кафедры конструирования приборов и установок, где я обучался в лаборатории, решили расширить функционал комплектов и научить уже не одного-двух студентов разбираться в написании кода, а сразу группу. И внедрили в образовательный процесс дисциплину по программированию микроконтроллеров производства компании “Миландр”. В результате, получив эти знания, студенты не только миландровские микроконтроллеры научились программировать, но вообще поняли принципы работы с любыми ARM-чипами», — говорит Виталий Флоренцев.

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

magnifier.png «Ты можешь все долго и продуманно проектировать, моделировать, симулировать. Но потом собираешь устройство, а оно не работает. Вроде все правильно, а оно не функционирует»

После этого участники команды составили методическое пособие, которое впоследствии превратилось в учебник. Теперь студенты уже могут проходить двухсеместровый учебный курс. Выпускники работают на госпредприятиях, а те, кто поступил в магистратуру и параллельно окончил этот курс, стали полноценными инженерами.

«Сейчас активно развиваем экосистему. Она подразумевает наличие комплекта: коды, примеры, материалы для обучения. Мы не просто сами написали примеры, примеров на все случаи жизни не бывает, а именно создали правила, этот учебник, который позволяет людям понять, как все работает, и самим уже становиться участниками этой экосистемы. Кроме того, мы получили активную поддержку от “Миландра”, чтобы наш продукт можно было интегрировать и для других решений этой компании», — отмечает Виталий Флоренцев.

Человек, окончивший курс, получает от МИФИ официальный сертификат программиста отечественных микроконтроллеров. Разработчики учебной программы предлагают свое решение средним образовательным учреждениям, инженерным классам. К примеру, на занятиях робототехникой можно заменить платформу Arduino Uno на MILUINO, к тому же более современную, которая с точки зрения процессорного ядра существенно превосходит эту платформу.

Проект MILUINO, по словам разработчиков, не только подходит для обучения, но и полностью закрывает потребности инженеров, которые хотят перейти на отечественные микросхемы. В коробке — платы, решения, справочные материалы.

Виталий Флоренцев приводит такой пример. У каждого процессора или микроконтроллера есть дефекты, вызванные человеческим фактором. В программировании существует такое понятие — «костыль» (когда на аппаратном уровне реализован функционал, к которому нельзя получить прямой программный доступ, требуется написать такой код для устойчивой работоспособности микроконтроллера, который в обход стандартных процедур инициализации позволяет активировать труднодоступный функционал). И иногда программами-«костылями» приходится залечивать какой-то аппаратный дефект. Такие особенности есть и у Intel, и у STM, и у «Миландра», и у «Элвиса». Об этих «костылях» очень хорошо написано у западных коллег, но почти ничего не написано в России, только указано, что такие дефекты существуют. И каждый инженер, работая с процессором, должен сам эту проблему решать. В MILUINO же все это описано, и приложены решения, как с этими дефектами справиться.

«Если кому-то надо быстро, буквально за несколько дней, создать какое-то устройство на отечественной электронике, по-научному говоря, “прототипировать устройство”, наш набор тоже можно использовать. На нашей плате стоит чип “Миландра”, который является целевым. Чтобы не надо было ничего паять, просто бери и программируй», — говорит гендиректор КАДЕТЕК».

magnifier.png Проект MILUINO, по словам разработчиков, не только подходит для обучения, но и полностью закрывает потребности инженеров, которые хотят перейти на отечественные микросхемы. В коробке — платы, решения, справочные материалы

А потом надо на такой же чип перенести программу, отлаженную на демонстрационном макете. В комплекте MILUINO есть платы под разные виды процессоров и микроконтроллеров.

«Значительная часть наших компонентов сделана в России, степень локализации мы стараемся повышать максимально. Первый наш партнер — зеленоградский “Миландр”. Платы также произведены в Зеленограде, на заводе “Резонит”. Периферийные устройства — это МЭЛТ, все наши жидкокристаллические дисплеи. Брянский завод “Группа Кремний ЭЛ” поставляет нам ряд сопутствующих полупроводниковых электронных компонентов», — рассказал Виталий Флоренцев.

Компания КАДЕТЕК также начала взаимодействовать с воронежским НИИЭТ для создания полноценного отладочного комплекса под производимые ими микроконтроллеры на развивающейся в настоящее время архитектуре RISC-V. Она открыта для всех чипмейкеров мира и свободна от санкционной политики.

«В ближайшее время мы представим полностью российский одноплатный компьютер на процессоре Baikal-T1 — функциональный и габаритный аналог платы Raspberry Pi, только на “Байкале”, не уступающий зарубежным решениям по техническим характеристикам. Это одновременно и одноплатный компьютер, и отладочная плата», — делится планами гендиректор КАДЕТЕК.

Темы: Инновации

Еще по теме:
03.10.2024
Придут ли на смену литий-ионным батареям для электромобилей твердотельные и когда это случится? Согласно свежим заявлени...
02.10.2024
Сорок лет назад был официально завершен главный инфраструктурный проект послевоенного СССР — строительство основного уча...
17.09.2024
Российская приборостроительная компания «Элрон» представила на форуме «Технопром» новый одноплатный компьютер на отечест...
11.09.2024
Чтобы удовлетворить растущий спрос на двигатели для кубсатов, при НИЯУ МИФИ создали малое инновационное предприятие ООО ...
Наверх