Небольшое предисловие. Сам я по большей части ремонтник, чиню ноутбуки и пр. электронику уже так 14+ лет, но что-то серьезное никогда не проектировал и от программирования далек. Недавно купил дрон Autel EVO 2 640t V3 чтоб попробовать свои силы, ну и как игрушка очень интересное устройство учитывая, что на борту по мимо камеры еще и тепловизор. Дрон после падения и аппаратной части для меня +\- понятно, а вот с программной частью там серьезный затык в сопряжении с пультом т.к. внутри дрона очень специфическая прошивка.
По существу - в процессе ремонта мне приглянулся модуль тепловизионной камеры. Для глобального рынка дрон поставляется с камерой iRay (вероятно модуль G1) он же InfiRay Micro III с тепловым разрешением 640*512 пикс.! 8~14 мкм, 30fps. У камеры есть шина USB и внешняя EEPROM, увы контроллер USB который общается с FPGA чипом не имеет RAM для программного кода, а только ROM память в которую при включении дрона по идее записывается необходимый для работы код с материнской платы дрона, но это мои предположения.
Как я писал выше, с программированием у меня туго, все, что я смог сделать - небольшой реверс инжениринг изучив внимательно камеру и переходную IMU плату блока камер. Все, что необходимо для подключения камеры это +12В, земля и дополнительные 2.8В для питания внешнего кварца на 333.33 Гц расположенного на IMU плате.
При запитывании камеры компьютером она определяется как неизвестное устройство "Unknown device" без PID и VID. Как я полагаю, в прошивке дрона есть все необходимое для прошивки камеры и взаимодействия ее как физического устройства с операционной системой дрона на базе андроида. Я пробовал перехватить обмен данными обычным TTL-to-USB (на базе ICH340 + программа Terminal) с шины I2C но безрезультатно, при включении дрона синий диод на модуле камеры должен прерывисто мигать (как я понимаю идет обмен данными/запись в ROM) а с подпаянным преобразователем он просто светится буд-то преобразователь становится помехой. Хотя возможно это не I2C шина вовсе, а линия Analog video, там поднимается 2В и на осциллографе тишина. Хотя по топологии печатной платы и распиновке чипа больше похоже на I2C. Возможно 17ый контакт шлейфа камеры это как раз вывод аналогового видео, но на плате не распаян резистор, в прочем и там тишина (около 2В).
На модуль есть различные даташиты, например User manual для плат расширения пользовательских интерфейсов, заявлено, что есть аналоговое видео и по идее к камере подключается специальный кабель у которого с одной стороны type-C, а с другой USB 2.0, BNC коннектор под AV и какой-то конец под UART/I2C. И еще много разных мануалов ТУТ или ТУТ, даже есть манула по командам протокола. Программы для ПК совместимой с этим модулем пока не нашел, возможно надо попросить у поддержки iRay, но может произойти затык, что модуль не сможет сказать компу и программе что оно такое.
В дататшите ТУТ есть распиновка 70 пиновго разъема и на 10 выводе значится "Output Analog video", пока не подпаивался к нему. Разъем такой имеется, он ведет внутрь самого тепловизора, там одна плата, с одной стороны которой собственно микроболометр, с другой FPGA чип с своей SPI флешкой (MX25U51245GZ4100) и разная рассыпуха. В даташите на FPGA ti60f100s3f2 (100 пиновая версия) я не нашел аналогового вывода для AV видео, кроме того распиновка разъема по пинам GND не совпадает c тем, что в даташите, а "ключ" отмеченный на шлейфе и разъеме платы не совпадают с 1ым пином в даташите.
В общем идею изложил, пока дрон у меня попробую запросить софт у производителя. В принципе вижу в этом отличное, готовое аппаратное решение, только допилить бы и можно функциональное устройство сделать и поэкспериментировать с софтом. Просто рыночное решение с такими характеристиками стоит кругленькую сумму, а такой модуль можно купить относительно не дорого 10-20 тыс. В ремонте и поиске неисправностей незаменимая вещь. У меня правда есть Flir E8 и он просто ну очень как выручает, но хотелось бы что-то с бОльшим разрешением и не просто гляделку, а с функцией измерения температуры.


