«От безделья в кризис 1998 года»: как один зеленоградский инженер создал легендарную модульную платформу
При разработке своей макетно-отладочной платы на базе отечественного микроконтроллера я проводил анализ существующих решений. Одно из них заинтересовало меня особенно — модули фирмы «Фрактал». В частности, интерес мой был вызван ореолом таинственности: сайт их не работал, а сторонней информации в сети оказалось крайне мало: помимо новостей 2012 года, единственными источниками были YouTube-канал Андрея Владимировича Тарасова и его страница в LinkedIn. Мне удалось связаться с ним и получить информацию о созданных решениях, истории и нюансах работы компании, а также новых вызовах и перспективах электроники.
Сегодня мы с вами погрузимся в историю проекта: от первых самодельных ПК на базе Intel i8080 до применения модулей в космосе, промышленности и их роли в эпоху ИИ. Держитесь крепче, ведь мы переносимся в 1990-е, где задолго до массовых плат Arduino, в Зеленограде появился отечественный модульный конструктор для создания автоматики — «Фрактал».
С чего все начиналось
Андрей Тарасов окончил МИСиС в 1987 году по направлению полупроводниковой электроники. Свои первые два компьютера он вместе с другом собрал еще в 1986 году на базе процессора Intel i8080 (отечественный аналог — КР580ИК80А).
«Схемы мы полностью разработали сами. Все спаяли на макетных платах проводом МГТФ. Видеоадаптер поддерживал «настоящую» графику 384 × 256, а интерпретатор BASIC взяли от «Радио-86РК». Защищали выпускную работу мы прямо на своих же компьютерах», — вспоминает Андрей Тарасов.
Позже, во время учебы в аспирантуре МИСиС, были проекты на Intel i8086 и ZX Spectrum — со своими схемами и теми же макетками-проводами. Для персонального компьютера на i8086 разработчик создал собственный видеоадаптер CGA: в отличие от оригинального решения, он содержал в три раза меньше микросхем и работал без тактов ожидания. Версию ZX Spectrum собрали на собственной схеме с использованием «знаменитого кристалла 216». При этом плата содержала минимальное число чипов и оснащалась дисководом.
Дальнейшая работа в НИИНЦ позволила инженеру прикоснуться к архитектуре MicroVAX — «со стороны железа, конечно».
Импульс кризиса 1998 года и рождение концепции «Фрактал»
В 1994 году была создана фирма «АТАС» (название образовали по инициалам создателей). Это была эпоха расцвета радиорынка — от стихийной торговли на Тушинской до известного всем Митино. Позже, в 1996 году, зарегистрировали компанию «Фрактал». Андрей Владимирович так вспоминает это время: «Предприятие создать не сложно. Трудности, конечно, были, но сейчас они выглядят несерьезно. Делали разную автоматику, на заводе «Квант» запустили в серийное производство наш ZX Spectrum — версию с контроллером флопика».
Серьезным импульсом для развития проекта стал экономический кризис 1998 года.
«В этот период появилось много свободного времени. И, можно сказать, от безделья, имея за плечами опыт разработок и наблюдательность, я устал в каждом новом устройстве проектировать повторяющиеся узлы. За три месяца я сделал набор универсальных модулей для построения различной электроники.
Идея модульности просто витала в воздухе. Ведь в любой автоматике есть процессор, входы и выходы, пусть даже с теми или иными нюансами. Можно было быстро набрать блоки с нужными параметрами и объединить их общей шиной — кроссом. Если в наборе не хватало какой-то функции, достаточно было разработать небольшой модуль по уже сложившимся правилам. Это сильно экономило силы и время. А для программирования — все тот же BASIC, куда же проще?», — рассказывает Андрей Владимирович.
Как программировались модули «Фрактал»
Вычислительные модули Fractal (например, FR-MCX53 или MCU32-1) программировались в любой IDE с подсветкой синтаксиса языка BASIC. Программа отправлялась в модуль в виде ASCII-страниц текста через интерфейс USB (на базе аппаратного контроллера USB в микроконтроллерах STM32®, где со стороны ПК создавался CDC-интерфейс) или через конвертер USB-UART.

Андрей Тарасов для своего первого компьютера взял BASIC от компьютера «Радио-86РК», опубликованный в журнале «Радио», за ним был ZX Spectrum и далее по списку. Основная цель заключалась в максимальном упрощении программирования и отладки, чтобы созданием приборов мог заниматься любой желающий, а не только квалифицированный программист или инженер-электронщик. Для исправления ошибки достаточно было отредактировать или добавить строчку текста прямо в терминале.
Как это все работало
Вычислительные модули системы эволюционировали вместе с элементной базой: первые версии строились на аналогах Intel® i8051, затем — на Microchip® PIC24® и микроконтроллерах STM32® (в частности, STM32F103). Модуль получал через COM-порт или USB/VCP текстовый код ASCII, проверял синтаксис и исполнял его построчно. Это позволяло в любой момент прервать выполнение программы, внести изменения и продолжить отладку с того же места.
Если у вас возник вопрос, чем были мотивированы решения касательно модульности — проприетарными или, может быть, промышленными решениями, то все несколько прозаичнее (хотя, тут как посмотреть): основной движущей силой было собственное видение. Использовался самый простой и доступный тип разъема — штыревые линейки и их ответные части. Электрические характеристики вполне подходили для целей набора, и ответные части также можно было выбирать: с пробивкой на шлейф, разъемы на плату или просто чтобы обжать проводники в PLS.
Модуль рассматривался так: одна сторона — «внешний мир» (входы-выходы, интерфейсы), другая сторона — внутренние интерфейсы и линии системы. Размер главным образом определяли типичные габариты использовавшихся компонентов. Тогда SMD-технология начинала выходить на рынок, и уже были доступны и микроконтроллеры, и память, и пассивные компоненты.
Для физического соединения блоков выбрали 20-контактный разъем. При использовании двухрядного штыревого разъема с шагом 2,54 мм ширина модуля составила ровно 1 дюйм (25,4 мм). На этом этапе все было в целом логично и складно. А вот с программным интерфейсом взаимодействия модулей дело обстояло несколько сложнее.
«Раньше для соединения узлов часто применяли параллельную шину. Но даже в минимальном варианте она требует много линий и создает накладные расходы: каждый модуль должен выделять шину как для управления, так и для данных.
Поэтому основным решением стали последовательные интерфейсы — SPI и I2C. Если какой-то из них не был задействован, его линии можно было использовать как сигналы общего назначения для связи между модулями в обход главного вычислителя. Периферийные блоки могли возвращать часть линий на кросс-плату или управлять пассивными модулями без собственного микроконтроллера (все-таки эти чипы тогда стоили немалых денег)», — объясняет создатель системы.
От океанариумов до космических аппаратов
Модули применялись в различных областях, и даже сами их создатели не всегда знали, где именно — что, кстати, подтверждало выполнение одной из задач набора: дать людям из совершенно разных, порой не связанных напрямую с программированием областей, возможность самостоятельно применять технологии. Клиенты редко делились своими целями, однако известно, что модули применялись в горнодобывающей промышленности, дорожной и климатической технике, системах водоподготовки, автоматике для океанических аквариумов и даже побывали в космосе.
Из материалов «Вестника МГТУ им. Н.Э. Баумана» (2011, №3):
«В состав ПДУ входит микропроцессорный набор модулей MCU4 (ООО «Фрактал», г. Зеленоград). Управляющей единицей в этом наборе является вычислительный модуль, построенный на базе микроконтроллера PIC24FJ64GA004, имеющий 2 МБ встроенной энергонезависимой программируемой памяти, в которой хранится рабочая программа ПДУ. На борту вычислительного модуля имеется порт шины USB для организации терминального режима с отладочным ПК и контроллер шины I2C, обеспечивающий взаимодействие модулей набора между собой».
Модули «Фрактал» применялись и при реконструкции автоматики автоматизированного склада на заводе «Квант». Старая управляющая система занимала площадь небольшой комнаты, а заменяющий блок на базе «Фрактала» поместился в объем обычного детского ранца. Для этого проекта в линейку добавили новый модуль с интерфейсом «токовая петля».
Обязательной сертификации для применения наборов не требовалось, а надежность и простота документации позволяли заказчикам внедрять решения самостоятельно, без обращения в техподдержку.
Соперничество и сотрудничество
Хотя концептуально «Фрактал» предвосхитил появление массовых отладочных плат, прямую конкуренцию с Arduino® Андрей Тарасов не ощущал:
«Это принципиально разные продукты. Наш набор строился на унификации, модульности и легком наращивании на единой шине. У Arduino вертикальное стекирование модулей выглядело менее эстетично и не всегда было удобно при сборке сложных систем. Да и временной разрыв был довольно большой: мы вышли на рынок в 1998, а Arduino — только через 6 лет, и даже тогда особой конкуренции не чувствовалось.
Однако для испытания идеи или первого включения конкретного чипа формат Arduino оказался очень удачным. Сейчас почти все производители выпускают отладочные платы для новых микроконтроллеров именно в таком виде — действительно удобно, но просто «Фрактал» изначально создавался для иных целей».
Здесь вставлю свои пять копеек: действительно, наращивать модули Arduino может быть довольно неудобно, но нельзя не отметить их куда более открытое сообщество, открытые исходные коды и схемы, а также направленность на образование и позиционирование «обучение через действие» для студентов творческих профессий.
Компания также сотрудничала с проектом «Мастер Кит», адаптируя некоторые модули под их требования. Андрей Владимирович на мой вопрос о них ответил следующее:
«Отличные ребята! В отличие от меня, отлично владеют маркетингом. Но здесь, вероятно, с нашей стороны для взаимодействия было сделано недостаточно, и в итоге все потихоньку заглохло».
В планах развития системы был заложен переход на интерпретатор Python, который удалось полностью реализовать уже в современных версиях платы. Создатели проекта не хотели сужать область применения только промышленной автоматизацией, так как верили, что диапазон применения их набора охватывал максимально широкую аудиторию — от хобби до нестандартной техники, учебного процесса и автоматизации в широком смысле.
Есть ли будущее у модульной автоматики в эпоху ИИ
Сейчас Андрей Тарасов работает инженером-разработчиком электроники в немецкой компании SOREL, однако продолжает развивать концепцию «Фрактал» в формате инженерного хобби: «Пару последних лет в свободное время я разрабатываю очередной набор универсальных модулей. Это диагноз!».
В новой версии проекта появились современные модули связи с интерфейсами CAN и RS-485, а также обновленные материнские платы, однако пока что без коммерческого аспекта — Андрей Владимирович скромно отметил, что маркетинг не относится к его сильным сторонам, но вот мысли, железо и софт есть, а остальное приложится.
«Конечно, сегодня на все без исключения сферы давит махина решений на базе искусственного интеллекта. В ближайшее время мы увидим две тенденции: умощнение облачных платформ и попытки создать производительные локальные решения.
В этой экосистеме у модульной автоматики появится новая роль. Искусственному интеллекту при контакте с материальным миром нужны не только вычислительные мощности, но и то, что даст возможность видеть, слышать, «чувствовать» и, конечно, что-нибудь своими железными ручками поделать!
Сам я периодически прибегаю к функциям ИИ. Например, даю мои описания модулей и прошу соединить по блютузу готовый комплект с телефоном. Пара предложений — и с первого раза готовый результат. Это позволяет освободить время на более интересные задачи и проекты», — подводит итог Андрей Тарасов.
Заключение
Было интересно вспомнить про «Фрактал», проследить путь компании и то, как развивались их решения. Во время подготовки материалов и общения с Андреем Владимировичем мне удалось найти школьные заметки, схемы, диск с программным обеспечением и снова погрузиться в работу с этими замечательными устройствами.
Простой язык программирования, универсальные модули для многих случаев жизни, подробные описания и подход к клиентам — определенно те факторы, которые в свое время позволили создать хороший продукт и долго находиться на рынке.