ARDUINO для детей: "как Лего"

Насколько полезна тема и стоит ли расписывать детально далее?

  • 2. Может кому-то и полезно, лично мне нет, я уже вырос, обучать? Есть кружки, школы..

    Голосов: 0 0.0%
  • 3. Может кому и полезно, но сам повторять не собираюсь, полно готовых изделий.

    Голосов: 0 0.0%
  • 4. Фигня и мазохизм. Проще купить готовое, тема бесполезна.

    Голосов: 0 0.0%
  • 5. Тема вредна, учит делать своими руками - кто покупать будет то, что я продаю?

    Голосов: 0 0.0%

  • Всего проголосовало
    4
  • Этот опрос будет закрыт: .
09.06.2019
32
4
8
#1
Здравствуйте, всем!
Хочу перенести сюда (в т.ч. и с других ресурсов по Ардуино) свои наработки по обучению сына робототехнике и Ардуино в частности в варианте "как Лего".
Большая просьба: пока не комментировать тему, материала очень много, буду выкладывать постепенно и переносить с других ресурсов, по мере наличия времени.

Назначение проекта: для обучения детей от 8 до 12 лет: "Ардуино как Лего"
Основные особенности проекта:

а) отказ от самостоятельного (детьми) изготовления крепежных изделий и их замена на Лего-детали, в основном Лего - техник.
б) Применение визуального программирования (по типу лего-скретч) - Ardublock (github:: tawelli) в качестве расширения Arduino IDE.

.. позже проект "вырос" до изготовления собственных плат на базе Atmega128a, ATmega2560 с дополнением их платой расширения ОЗУ (прямой доступ к массивам до 32кбайт) на 512 килобайт сегментированной памяти и доработку avr-gcc линкера и ИДЕ (1.8.5) по аналогии с проектом Arduino MegaCore для полноценного использования всего объема расширенной памяти в программах (статическое выделение места под массивы до 32кб непрерывного адресного пространства).
Есть герберы и опыт изготовления плат с заказом в Китае.
Но, это "позже".
 
09.06.2019
32
4
8
#2
Как понятно из названия темы, ничего особо специального тут нет. Решение банальное - просто блоки Ардуино загоняем в "лего-детали" и получаем готовый, широко разрекламированный и достаточно удобный комплект для быстрой сборки изделий: "придумал - собери - проверь".
Первые "успешные" опыты выглядели так:
MegaCorps1-1top.JPG
(* не понял как можно уменьшить размер картинки, ну да ладно *)

Плата Ардуино Мега 2560 рев.3 аккуратно вставлена в "корпус из лего-деталек". Сверху смонтирован расширительный шилд для УНО, снизу добавлен такой же лего-блок для батареек.

Недостатки такого подхода:
1. Получается очень тяжелый монстр, хотя и всё остается полностью разбираемым и целым.
2. Катастрофический недостаток линий земли и питания для подключения периферии просто требует применения расширительного шилда.

Второй релиз платы Мега2560:
Last_Blocks-3.JPG
Тут лего детали уже склеены как между собой так и с платой, что позволило существенно снизить общий вес, и сделать конструкцию модульной.
На снимке: сама плата с виде "слоя", справа от неё "блок питания" из 8-и гнезд "АА", с отводами от 4, 5, 6 и 8 гнезда на разное питание модулей. Материал БП - картон для детского труда + снятые с детских игрушек кнотакты для батареек. Тут момент изготовления, окончательно к нему подклеен разьем и 2 кнопки с фиксацией для включения 4-х напряжений попарно.
Выполнено сыном примерно в его 9 лет.
И сверху - вариант компоновки драйверов моторов на базе двух шилдов L298N со снятыми радиаторами.

Ну и "применение" этого пирога:
IMG_0070.JPG
Тут иной вариант компоновки драйверов моторов + оформление дисплея LCD 1602 I2C.

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

Ещё пример построения робота, движущегося по линии с объездом препятствий сыном (около 9 лет)
 
Последнее редактирование:
09.06.2019
32
4
8
#3
Окончательно, Мега2560 была дополнена отсутствующими ножками ( +16пинов ):


И окончательно оформлена примерно так:

На боковых сторонах были доклеены угловые крепежные детали шириной 1/2 (из тонких пластинок, фото не нашел пока). Все лего-крепления тут условно соответствуют расположению креплений блока Lego EV3, но применить на практике такое совпадение нам так ни разу и не пригодилось. Оказалось что старый блок был значительно удобней. :) Существенного уменьшения габаритов и веса - также не получилось, что и послужило переходом на платы Ардуино НАНО.

Здесь только Ардуино Мега2560 с дополнением 16-и ножек и блок питания на 3-х банках Li-ion 18650 Samsung 2400mah. В среднем одной зарядки хватает примерно на неделю запусков роботов в процессе отладки и настройки по 1.5-2.5 часа в день. :)
 
09.06.2019
32
4
8
#4
Ардуино НАНО "как Лего".

С учетом предыдущих мытарств с ножками питания и земли, тут сразу был сделан "расширительный шилд", примерно такой:


На фото ниже также можно обнаружить самодельный драйвер моторов на базе АО4606 (до 30в, 5А на мотор), блок питания на базе 2х Li-ion 18560, сами моторы, а также датчики.
Обо всем этом - постепенно выложу тут, по мере наличия времени.





Применение НАНО как Лего для прошивки прототипа платы на ATmega128a (ещё без БП):
Прошивка_Нано-128А.JPG
Таких плат НАНО было изготовлено 5шт, с небольшими отличиями: изменения в расположении второго питающего контакта от аккумуляторного блока + добавление кнопки включения платы со сдвигом "взад" левого ряда контактов, если смотреть со стороны USB-разьема.

Прототип платы на ATmega2560-16au изготовленный вручную методом ЛУТ. Первый вариант со стабилизатором питания на базе AMS1117-5.0 из-за слабости стабилизатора был переработан и уже он отдавался китайцам на изготовление. Тут оказался "битым" сам микроконтроллер: память flash имела участок около 1кб плохо прошиваемый и почти в самом начале. Успешно заливать, кроме блинка удавалось очень мало чего.

Mega2560-blink.JPG
 
Последнее редактирование:
Симпатии: Понравилось EandV
09.06.2019
32
4
8
#6
Спасибо, интересно. Но у этого проекта уже давно есть название: "Ардуино как Лего".

Часть 2 "Моторы".

Как ни странно, но в нашем Лего дома увы .. не оказалось поначалу никаких моторов. То, что было в первом наборе "сервомотор SG90 + шаговик" в данную категорию никак не попадало, т.к. мы планировали делать разного рода машинки.

Поэтому были закуплены Downsol strong motor with encoder (12в, 8000rpm, 0.07a - 0.4a, 45g*cm) в количестве 10шт. Под спойлером их внешний вид, то что они представляют себя "изнутри", и то что получилось собрать из них (+разбор плохих детских моторчиков этого же класса: DC-130-motor)
и итоговый мотор-редуктор (примерно после года эксплуатации и нескольких соревнований, в т.ч. общероссийского уровня)


IMG_9102.JPG

IMG_9141.JPG

IMG_9107.JPG

IMG_2829.JPG

Что было переделано:
1. разбор якоря + наращивание его пластин (они по 0.5мм толщиной) с 12шт до 18шт на якорь. Дело в том что ширина статорных постоянных магнитов около 10мм, что позволяет иметь якорь до 18 пластин, дальше нет смысла только рост веса. Можно впихнуть и 20 (как на фото), но придется обойтись без передней и задней накладки и слегка укоротить коллектор, что оказалось не так уж и сложно на самом деле, чем казалось вначале. Часовая лупа в глаз, канцелярский нож и твердая рука - в помощь. :)
2. Снят оптический энкодер и его диск с якоря. Вал якоря укорочен до разумного размера. Ось просто взята от другого "игрушечного" моторчика.
3. Намотка якоря "синхронно вручную в три обмотки виток к витку". Опять же под той же часовой лупой.
Тут надо пояснить: дело в том, что все покупные (заводские) моторчики мотаются автоматически и последовательно - сначала первая обмотка, потом вторая и т.д. Это не позволяет достичь даже 60% заполнения каркаса - просто не влезет последняя обмотка - не останется места для пропихивания провода.
Поэтому, вручную мотали (2 моторчика перемотал и сын, примерно в теже 9 лет самостоятельно) сразу все обмотки "одновременно": сначала по 40-60 витков на каждую (сколько влезает не мешаясь), потом по 2 слоя (туда-обратно) виток к витку, по очереди все катушки. Каждая такая пара слоев проклеивалась цианакрилатом (клей "Секунда").
В итоге получается, хоть и не разборный, но очень центрированный якорь с почти 100% заполнением.

Параметры якоря в 18 пластин: провод ПЭВ-2 0.125 около 200витков на катушку (5м30см на обмотку? не помню, не нашел записи), сопротивление обмотки всего якоря (треугольник) - около 7 ом.
Итого параметры мотора в корпусе Downsol strong motor (очень сильная магнитная система) на 8.4в (2хLi-ion):
обороты холостого хода 11400 в минуту, ток ХХ - 74мА(!), останавливающий момент близок к 100гр*см при токе КЗ около 1.2А
Собственно этих данных достаточно, чтобы нарисовать его механическую характеристику и получить КПД за 60% :)

Они были установлены в этом "синем" мотор-редукторе с передаточным отношением 30:1 и показали себя с самой лучшей стороны, что видно по потертости корпуса на фото. До сих пор это лучшее что у нас есть. Механическая мощность незначительно превышает Lego EV3 моторы.
 
Последнее редактирование:
09.06.2019
32
4
8
#7
Прочие наши моторы и моторчики. Как легко применить Лего моторы в Ардуино.

IMG_2826.JPG
IMG_2824.JPG

LargeMotor.JPG

motorReductors1.jpg
Первые 2 фото - попытка изготовить мотор-редукторы со сменным редуктором и/или мотором. На нижнем фото - Downsol strong motor with encoder что называется "в чистом виде", то есть с энкодером. Пробная эксплуатация, хоть и показала что энкодер, имеющий по 32 полосы "черное/белое" и сидящий на валу мотора, хоть и генерирует большое количество прерываний, но вполне можно одновременно применять 2 мотора.
В конце-концов от сменных моторов и редукторов отказались и в эксплуатации остались только "красные" мотор-редукторы с передаточным числом 40:1 На фото выше они присутствуют.

На третьем фото можно увидеть простое решение как применить Лего Power Function Large motor в Ардуино. Разрезаем провод мотора и впаиваем разьем. :)

(* найти фото medium motor для Ардуино *)

На нижнем фото - наш самый мелкий мотор-редуктор с передаточным числом 64:1 :) Там же - разные попытки изготовления первых "сборных конструкций" мотор-редукторов (2015г). Голый якорь - тот самый что перематывал сын в свое время самостоятельно.

..продолжение следует .. (мотор-редукторы на базе N20, мотор-редуктор со сменными шестернями и встроенным энкодером а-ля EV3 средний мотор)
 
Последнее редактирование:
#8
Самодельный драйвер 2-х DC-моторов 6-30в х 5(20)А. Схема электрическая, svg для самостоятельного изготовления методом ЛУТ платы на 2 или 4 мотора. Описание, особенности работы с драйвером.

DC-motor12v_1.png
Электрическая схема (кажется эта - уточню по разводке) драйвера на 1 DC-мотор. Основная идея - сократить количество управляющих выводов и тут их всего 2.
Dir - направление вращения "вперед/назад" и Pwm - скорость вращения (ШИМ сигнал).
Полумост АО4606 согласно даташиту держит до 30в напряжения и терпит до 5А непрерывного тока через себя. Импульсно способен терпеть до 20А. Его низкая стоимость (брал 50шт по 5.5руб) и определила выбор.
Описание работы:
Транзисторы VT1, VT2 - управление p-канальной частью полумостов. В их стоках стоят делители, ограничивающие напряжение на истоках до допустимых 20в, при питающем в 30в на моторах (AVCC). Это ограничивает нижний предел питающего моторы напряжения до 6в для уверенного открытия верхних плеч полумостов. (таки схема не совсем эта..)
Номиналы резисторов в делителях правильные 1.2кОм + 2.4кОм вместо указанных. Это для рассеиваемой на них мощности в 250мВт.
Транзистор Q1 - инвертор, разрешающий/запрещающий тот или иной полумост (ШИМ) подачи на нижние плечи. Резисторы R1.3, R1.4 - токоограничивающие на выходах схемы "2И" до допустимых 40мА.

Программирование:
Переключение направления вращения, для избежания сквозных токов через полумост, следует производить только при отключенном входе Pwm (=0) с задержками около 6 микросекунд "до" и "после" перевода Pwm в низкий уровень. Собственно время рассасывания зарядов на верхних плечах около 2мксек, но для надежности у нас делаются задержки в 6мксек.
Переключать направление вращения при включенном сигнале Pwm - гарантия сквозных токов, которые тут могут достигать до 36-40А с шансом вывести АО4606 из строя.

Недостаток:
Драйвер не имеет режима "короткозамкнутый ротор", что однако не мешает нам применять его и очень широко в своей практике.
Также нет "защиты по току", но для наших моторов с токами потребления до 3А оно оказалось и не нужным.

Разводка платы сделана для пары моторов для полного использования микросхемы 2И и выполнена на одном слое так, что допускается травление двухстороннего варианта, что в итоге дает драйвер на 4 мотора (есть и те и эти, дополню фотками)
Выложил svg для ЛУТ в виде архива внизу поста.

Выложил под спойлер последнюю версию драйвера на 1 мотор. Плата размером 32х16мм, назначение: размещение драйвера непосредственно на самом моторе DC-130-мотор или больших.
DC-v5 схема.png

DC-v5 pcb.png

Синим цветом обозначены перемычки проводом (5-11 нога + земли). Плата односторонняя, чип "2И" задействован полностью, есть все режимы работы мотора. Управляющих ножек тут уже 3шт. :(

Добавлен архив с svg-файлами для самостоятельного изготовления драйвера 5-й версии. Открываем, печатаем на лазерном принтере (можно накопировать в редакторе несколько изображений рядышком) переносим рисунок платы на фольгу утюгом, снимаем под теплой водой бумажку и травим как обычно. Расположение деталек есть на своем слое отдельно.

Критика имеющихся в продаже готовых драйверов (почему взялся за изготовление самопальных):

L293D - предзназначен исключительно для слаботочных моторов (N20, высокоомные варианты DC-130 и пр.), поскольку имеет ограничение на потребляемый ток мотором всего до 0.5А. По сути, для мамомальски рабочего применения этого категорически недостаточно и нами (с сыном) даже не приобретались.

L298N - приобреталось 4шт, делались попытки обрамить их в Лего самыми разными способами (есть примеры в постах), но оказались наверное худшим представителем драйверов в целом. Выходные транзисторы - это "схема Дарлингтона", на которой теряется напряжение "чем больше ток мотора - тем больше" и в критических случаях токов около 2А можно легко терять до 3вольт от поданного питания! Греется он в таких случаях тоже весьма весело. Это практически полностью исключает применение низковольтных моторов с небольшим питанием - потери на драйвере могут даже превышать полезную нагрузку мотора .. финиш.

Monster Shield - отличный вариант, видел в работе. Очень хороший шилд, но его цена .. в общем моя жаба взбунтовалась, и осознав что цена такого драйвера "3 копейки" решил получить приемлемый результат за меньшие деньги, что и удалось.

Другие варианты на мосфетах .. то что видел, тоже "слаботочно", в основном на 1.5 - 2А этого часто "маловато" или "на пределе". Ну и на тот момент (2015-2016гг) мне были или не известны или их ещё не было в продаже.

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

P.S. Добавил архив для изготовления 2 или 4-х моторного драйвера. Схема электрическая (вроде бы все верно), SVG файл для травления под ЛУТ и размещение деталек и перемычек на стороне платы.
Можно использовать 2-х сторонний текстолит, и травить симметрично на обоих сторонах. Окружности обозначают места соединения питания моторов для второй стороны. Контакты управления 3 и 4 мотором - "с обратной стороны" также.
Найду, дополню фотками готовых драйверов.
 

Вложения

Последнее редактирование:
#9
Наши самодельные ИК-датчики, особенности, учет требований АЦП AVR микроконтроллеров.
IRsensorAnalog1.JPG
IRsensorAnalog2.JPG
ИК датчики из мышей.JPG



IRsensorsSchemas.jpg
ИК-Датчики:

Электрическая схема ИК-датчика на паре фот- свето- диода ИК области достаточно примитивна (схема #1):
а) Типовое подключение ИК-светодиода на ограничение заданного тока (как правило хватает 10-25мА) жестко токоограничивающим резистором или в паре с подстроечным для регулировки яркости освещения. Не думаю, что может вызывать какие-то проблемы. Мы использовали почти везде жесткое ограничение на 10-25мА (в разных по-разному).
б) подключение ИК-фотодиода практически тоже стандартно ("встречно") через "токосьемный" резистор. Для нормальной отдачи приходится ставить очень высокоомный резистор - 510..750кОм. Подбор резистора мы делали увеличением его сопротивления до появления шумового напряжения от темногого тока. после чего уменьшали его номинал на примерно 20%. Темновой ток - для нас это было то, что "видит" фотодиод с одетой трубкой и направленный "в пол" (ок 1м) при дневном освещении без подсветки.
Чем больше номинал резистора - тем выше "отдача", но и тем хуже отношение "сигнал/шум" - каждый выбирает нечто свое.. :)

Первые 2 фото - "сьемный резистор" - М75 (видно на фото). Таких датчиков сделано 2 шт. Оба полностью (в т.ч. и пайка, корпусирование) сделаны сыном в его 11лет. :)

Третье фото - 6шт датчиков собранных на базе пар из оптических энкодеров сломанных "мышей". Технология их изготовления аналогична нижней серии датчиков, а электрическая схема - точно такая же как у верхнего.

Недостаток такого простого решения в том, что выходное сопротивление датчика - это фактически номинал этого токосьемного резистора и оно оказывается далеко выше, чем рекомендовано даташитом на микроконтроллеры Меги, НАНО и т.д. Согласно даташиту он не должно превышать .. 10кОм если мы "хотим что-то измерить". Проверка показала, что ошибка при последовательном измерении нескольких датчиков даже на типовой скорости составляет не менее 30%!

Соответственно (схема #2), была изготовлена серия (8шт) "правильных" датчиков - нижние фото под спойлером: выход токосьемного резистора подключен к ОУ LM358 в режиме "единичного усилителя" и уже его низкоомный выход подключается к микроконтроллеру. Сам ОУ закреплялся клеем поверх пары резисторов, что видны на фото, всё тем же клеем "секунда". :) Получилась очень компактная (не разборная) конструкция а-ля "микросборка", что видно на нижнем фото.

Особенности изготовления:
а) Надо помнить что значительное количество материалов (в т.ч. ПВХ!) практически прозрачны для ИК-излучения, соответственно требуется изоляция ИК-фотодиода от засветки своим же ИК-светодиодом.
Решается размещением изолирующей прокладки (нижнее фото), которая предварительно оклеена .. алюминиевым скотчем. Просто и надежно.
Аналогично, на фотодиод мы одеваем ПВХ трубку из термоусадки, обвернутую тем же алюминиевым скотчем.

Все получается "хорошо" если датчик имеет разницу показаний между "белое" и "черное" больше 10 крат (отношение сигнал/шум > 20Дб).

б) Можно задействовать вторую половину ОУ как усилитель сигнала (дополнение схемы #2 куском #3). Для этого достаточно добавить ему типовой подстроечный резистор для изменения коэффициента усиления. Такая серия (8шт) датчиков у нас тоже была сделана. В итоге оказалось что коэффициент усиления поднять больше 8-9 раз не представляется возможным, но и этого оказалось достаточно, чтобы при токе светодиода в 30мА (по даташиту до 50мА) датчик имел чувствительность около 5метров.

в) изготовление "линейки датчиков" для самобеглых тележек по линии. Собственно все то же самое, но для узкой линии удобно расставлять датчики на расстоянии 2/3 от заявленной толщины линии. В этом случае "поперечная ширина" срабатывания для одного датчика и для пары становятся одинаковыми и ПО несколько упрощается.

г) линейку датчиков для тележек "по линии" правильнее размещать не по "прямой", а по радиусу окружности, центр которой находится "на оси вращения тележки в поворотах". В этом случае шанс "зацепить" не тем датчиком "перекресток" оказывается тоже значительно меньше.

д) Отдельный вывод "земли" светодиода (если позволяет ток!) позволяет подключать его к управляющему выводу микроконтроллера и подсвечивать датчик только "когда надо" (в процессе замера), что дает возможность дополнительной экономии батарейки. Кроме этого, к нему можно довешивать доп. сопротивления для "снижения яркости" в том или ином применении.
(* найти фотки *)

е) ИК-светодиод вполне может быть применен вместо приемной части. У него несколько хуже шумовые параметры, но отдача явно не хуже, а порой бывает и даже лучше .. так что вполне можно обойтись закупкой только светодиодов. :) Экспериментируйте. По мне так - "все равно", ибо покупалось 2 пакета по 50руб таких пар "свето- фото- приборы на 940нм" .. стоимость по рублю прибор (и это даже ещё и дорого!) :)

P.S. Светодиоды и прочие наши датчики вынесу в отдельные посты ниже.. и так много.
 
Последнее редактирование:
#10
Библиотека Arhat.h - "расширение Cyberlib" для эффективного управления на AVR. Дополнение к ИДЕ. Работа с пинами, таймерами, прерываниями и PWM.
 
#12
Библиотека Arhat.h - автоматное программирование. Конечные автоматы, управляемые по времени ("Светофор"), автоматы Мура, Милли. Табличное программирование конечных автоматов.
 
#13
Датчик цвета TCS3200. Особенности подключения, драйвер с пересчетом освещенности в люксы, восстановлением баланса белого.
 
#16
О, забыл! Наши серводвигатели.. :)
Servo90-1.JPG

SG-90 вид1.JPG

DSCN0141.JPG

Первая и вторая попытка "прикрутить" серводвигатели SG90 в наш проект. На втором варианте обрамления серв, был собран вот такой робот "совенок" и запрограммирован в Ардублок. Для ускорения передвижения, "шаг" ноги был разбит на несколько этапов и пока опорная диагональ перемещала робота вперед, вторая диагональ перемещалась одновременно обратно. Была попытка научить его бегать "прыжками", но мощностей SG90 оказалось катастрофически мало для его веса (475гр).
 
Последнее редактирование:
#18
Зачем же так над ардуинкой издеваться? На фото видно что проц плавится начал. На хрен ещё 16 пинов? Там и так пинов много.
Окончательно, Мега2560 была дополнена отсутствующими ножками ( +16пинов ):
 
#19
@Veselchak, Это не плавление корпуса, это просто неотмытая канифоль ещё. :)
16 пинов, "утерянных" у платы Ардуино Мега 2560 - это пины счетных входов и захвата таймеров, пины прерываний PCINT (и только!) и третий UART.
Если UART3 - в общем-то не нужен, то пины чистого PCINT не смешанного ни с чем (5шт) оказались очень полезны в работе с моторными энкодерами, о чем я постараюсь рассказать в соответствующем посту.
А ножки "захват таймера" (ICP) крайне удобны для получения точной длительности импульса без избыточной загрузки процессора силами pulseIn() и у нас активно использовались для датчика цвета TCS3200. Штатные 2 ноги не позволяют обслуживать больше 2-х датчиков.

Ну и конечно же, это был "эксперимент" можно ли подпаяться к такому мелкому шагу ножек у микросхемы. Проблематично для меня, но оказалось вполне можно. Позже этот опыт пригодился для монтажа этих корпусов на платы собственной разводки, в т.ч. и под комбинацию "Мега + 512килобайт оперативы".. :)
butterbrod-2.JPG

Mega-2560last-2.JPG

Но об этом развитии проекта, несколько позже. Это "вторая иетрация" разводки плат. Уже есть и третья.
Тут выведены все 86 ножек, кроме ног разьема с платой памяти все они имеют свою землю и питание. БП на плате держит 5в х 5А.
Габаритный размер плат считается по "лего-отверстиям". :)
 
Последнее редактирование:

Wan-Derer

Модератор
Команда форума
31.07.2018
875
123
43
Москва
wan-derer.ru
#20
@Arhat109, про память интересно. Я знаю что к многоногим Мега можно подключать внешнюю память и включать её в адресное пространство ядра. Но оно (пространство) всего 64к. Как организовывали доп память? Страничками?
Ну и конечно интересно зачем столько памяти :)
Программирование всего это счастья уже не в Arduino IDE?
В общем, ждём статейку на тему большой платы.
Я тоже развёл плату на 2560, но пока не довёл до практического результата: https://wan-derer.ru/blog/diptrace-первые-впечатления-библиотека-гост/