По другую сторону квартала Линь Дун ещё не знал, что стряслось у Сюев.
Завтра суббота, в школу не идти, да и дома сегодня отменили запрет ложиться спать до девяти.
Он взял цифровой фотоаппарат, купленный в прошлом году отцом, Линь Вэйляном, навёл объектив на прозрачную стеклянную банку для квашения, внутри которой сидели несколько комаров, и начал снимать.
Щёлк...
Щёлк...
Один за другим снимки летящих комаров под разными углами перекочевали в компьютер.
Линь Дун открыл программу обработки изображений и принялся по крупицам анализировать их морфологию.
— Размер тела комара от трёх до девяти миллиметров, траектория полёта имеет ярко выраженную ломаную линию, форма тела – вытянутый овал...
Извлёк характерные признаки строения, загрузил их как образец для распознавания в программу управления лазером и настроил порог срабатывания.
По сравнению с доработкой самого лазера работа над программой распознавания и управления для Линь Дуна была делом простым.
Всё же в прошлой жизни он учился на аниматора, имел базу по компьютерной анимации и программированию, а вдобавок – опыт взаимодействия проджект-менеджеров с техническим отделом. Да и с алгоритмами будущего был знаком.
Сейчас, слегка освежив в памяти книги по программированию да присовокупив к этому дар духовного зрения, он стал почти что богом кода этой эпохи.
От захвата изображения камерой, распознавания цели-комара, вычисления пространственных координат до управления движением турели и пуска лазера – на всё ушло не больше тысячи строк кода. Весь процесс распознавания и управления был реализован.
— Модуль распознавания: двойная верификация – сопоставление контура и детекция движения, чтобы снизить вероятность ложного срабатывания...
— Управление движением турели – алгоритм ПИД-регулятора, обеспечивающий плавность слежения...
— Логика безопасности – наивысший приоритет. При срабатывании любого из датчиков – ИК-датчика или распознавания силуэта человека – немедленно прерывать все выходы...
— При нынешней мощности лазера, исходя из поглощения лазерной энергии комаром, импульса в 0,1 секунды на расстоянии до пяти метров достаточно, чтобы комар издох...
Линь Дун писал и тут же тестировал: заканчивал функциональный модуль – компилировал, запускал, отлаживал на тех самых снятых заранее фото и видео.
Время утекало под стук клавиш.
Когда он дописал последнюю строку, часы показывали почти десять вечера.
— С программной частью покончено. Завтра дождусь от дяди Сюя детали – и можно будет собирать всю лазерную турель.
Линь Дун взял материнскую плату с уже установленной видеокартой, залил программу, убедился, что всё в порядке, зевнул и отправился в соседнюю комнату – спать.
На следующее утро, в девять часов.
Солнце, просочившись сквозь тюль в гостиной, разлило по полу тёплый золотистый свет.
Чжан Сяли и Линь Вэйлян вдвоём наводили порядок со швабрами.
Тут.
Дверной звонок задребезжал несколько раз.
Супруги переглянулись. Чжан Сяли стянула перчатки и пошла открывать. На пороге стояла вся семья Сюев – трое.
Сюй Цзымин держал в руках две бутылки, Чжоу Сяоянь – пакет с фруктами. А Сюй Цинлин, одетая в платьице и прижимавшая к груди коробку, вся светилась от возбуждения, стоя за родителями.
— Конструктор Сюй, сестра Чжоу! Проходите, проходите скорее!
Чжан Сяли на миг опешила, увидев гостей, но тут же спохватилась и вынесла несколько новых тапочек, на ходу крикнув вглубь дома:
— Вэйлян! Конструктор Сюй и его семья пришли! Приберись да завари чай.
— Простите за беспокойство, конструктор Чжан, — вежливо улыбнулся Сюй Цзымин, переобулся и шагнул в прихожую.
Сюй Цинлин прошла в коридор, заглянула внутрь, но Линь Дуна не обнаружила; обернулась к Чжан Сяли:
— Тётя Чжан! А где Линь Дун? Я к нему играть.
— Спит ещё. Сейчас разбужу.
Чжан Сяли протянула Сюй Цинлин новые детские тапочки:
— Я только что полы вымыла, аккуратнее.
— Я сама его найду!
Сюй Цинлин, дитя малое, не стесняясь, переобулась и с коробкой в руках побежала в комнаты.
Как раз в этот момент Линь Дун, услышав шум, не стал дожидаться, пока его позовёт Чжан Сяли. Вышел сам – в домашней майке и шортах, взлохмаченный, как после драки.
— Линь Дун, смотри!
Сюй Цинлин, завидев его, радостно взвизгнула и открыла коробку: внутри аккуратными рядами лежала дюжина металлических деталей.
— Твои детали! Папа вчера вечером сделал! Когда начнём собирать лазерного истребителя комаров?
— Не торопись. Дай позавтракать сначала.
Линь Дун взял коробку, мысленно переключился в духовное зрение и погрузился сознанием в лежащие перед ним детали. Фью! Форма, структура, размерные параметры каждой из них сами собой всплыли в мозгу – каждое измерение идеально совпало с чертежами.
— Спасибо, дядя Сюй! Потрясающая работа. На вид – просто совершенство.
Линь Дун вернул сознание в реальность и вежливо поблагодарил Сюй Цзымина.
— Играйся, — бросил тот, глядя на вежливого Линь Дуна, а затем – на прилипшую к нему Сюй Цинлин. Выражение его лица, только что улыбчивое, тут же померкло. Голос прозвучал сдавленно, словно нехотя протолкнулся сквозь горло.
— Старый Сюй, иди сюда, садись. Ребячьи дела пусть ребята и решают – тебе-то какое дело?
Чжоу Сяоянь легонько подтолкнула его и улыбнулась Линь Дуну:
— Сяодун, ступай завтракать. Возьми Цинлин, поиграйте. Мы пока с твоими родителями поболтаем.
— Хорошо, тётя Сяоянь, болтайте.
Линь Дун в разговоры взрослых встревать не стал. Достал из холодильника пакет чистого молока, из кухни притащил миску лапши дань-дань с отдельно поданной приправой, вывалил всё вместе, перемешал – вот тебе и завтрак.
Поев, Линь Дун повёл Сюй Цинлин в кабинет. Достал материнскую плату с залитой вчера программой и приготовился к сборке.
— Линь Дун, а лазеру видеокарта нужна? — Не утерпела и спросила Сюй Цинлин, глядя на материнку в его руках.
— Чтобы распознавать комаров, требуется высокая производительность, — коротко пояснил Линь Дун.
Лазерная турель должна была приводиться в движение электромоторами. Логично – для управления моторами лучше всего подошёл бы промышленный микроконтроллер.
Но задача – сбивать лазером комаров. Управление направлением – это вторично.
Главное – распознать и отследить комара. Мощности микроконтроллера для этого не хватило бы. Нужен чип, способный выполнять вычисления.
Но на дворе стоял 2008 год, понятия «вычислительный чип» ещё не существовало. Пришлось, скрепя сердце, брать то, что есть: мощную видеокарту – GPU.
Говоря это, он достал камеру, инфракрасный датчик, доработанный триггерный лазер, сервомоторы и прочие компоненты – всё это было разложено на полу в ряд.
Первым делом установил основание лазера. На него смонтировал механизм горизонтального поворота, отрегулировал зазор в червячной паре, потом механизм наклона и приводной мотор. Следом – крепёжную стойку, и, наконец, поверх неё – сам лазер.
Камеру и ИК-датчик жёстко закрепил над лазером, выставив угол как можно более параллельно лазерному лучу для точности прицеливания.
Последней шла управляющая плата. Сигнальные провода от сенсоров, контрольные – от моторов, провод инициирования выстрела – всё стянул к ней, закрепил стяжками и примотал к боковине основания.
Сюй Цинлин сидела на корточках рядом, серьёзно следя за каждым движением Линь Дуна. То и дело, не говоря ни слова, протягивала ему то одну, то другую нужную вещь. Сама тихая, словно ручной котёнок.
Вскоре был затянут последний винт.
Перед ними стояло устройство: круглое основание диаметром около тридцати сантиметров, на котором крепилась лазерная установка с возможностью поворота на 160° по горизонтали и регулировкой наклона.
— Можно тестировать.
Линь Дун воткнул вилку в розетку, включил лазер, соединил с компьютером и открыл отладочный интерфейс управляющей программы.
Пи!
Лазер запустился.
На стене загорелась яркая красная точка.
Глядя на её положение и сверяя с реальной точкой фокуса камеры, Линь Дун ввёл в отладочный интерфейс поправку на смещение между камерой и лазером, корректируя данные прицеливания.
Пять метров дистанции стрельбы он разделил на тысячу пространственных точек с интервалом в 0,5 сантиметра. Этого хватало, чтобы любой комар, залетевший в зону поражения, оказался под прицелом.
— Осталась временна́я задержка...
Линь Дун открыл интерфейс отладки, несколько раз измерил задержку срабатывания камеры и задержку перемещения турели. На основе полученных данных подкорректировал работу моторов и доработал алгоритм управляющей программы...
Час работы над настройкой и калибровкой – и Линь Дун взял вчерашнюю стеклянную банку. Выпустил содержавшихся в ней комаров на волю.
— Не стой перед камерой.
Крикнул он, велев Сюй Цинлин отойти подальше, и запустил лазерную турель.
Пи!
На мониторе отобразилось изображение с камеры.
В то же мгновение код распознавания засёк комара. Моторы пришли в движение, лазер навёл ствол и захватил цель.
Тсс-тсс-тсс...
Лазерные импульсы с интервалом в 0,1 секунды.
Двое из трёх комаров, круживших в воздухе, на миг вспыхнули красным и рухнули вниз, источая запах гари.
Тсс-тсс-тсс...
Лазер продолжал добивать.
Не прошло и секунды, как третий комар, сражённый, упал, превратившись в обугленный трупик.

Комментарии

Загрузка...