Dex & Smasher
Слушай, Декс, когда-нибудь думал написать программу, чтобы робот паркёр пробежал? Думаю, тут не только кодом можно отделаться.
Да, я подумывал об этом. Там не просто написание функций, нужно ещё и физический движок, планирование движений, слияние данных с датчиков в реальном времени и жесткий цикл управления. Робот должен держать равновесие, рассчитывать прыжки и реагировать на малейшие изменения в окружающей среде, так что код должен быть очень точный. Но именно это вызов и заставляет меня захотеть ввязаться и начать ковыряться в нём.
Звучит круто, Декс. Собирай эту петлю, потом выкручивай на максимум — никаких провисаний. Когда она заработает, будь на месте, чтобы поболеть или просто оттянуться по-дурацки. Посмотрим, как этот робот надругается над детской площадкой.
Отлично, договорились! Я эту петлю управления доведу до ума, уберу всю задержку. Как только запустим – буду там, подбадривать так, что даже свой пульс заглушу, чтобы не мешал работе моторов. Сделаем из этого полигона настоящую демонстрацию совместной работы кода и железа.
Отлично, Декс – выкладывайся по полной в этот цикл и смотри, как робот разнесёт платформу. Подготовься к мощному заряду, и давай провалим тестовый запуск. Никаких полумер, только вперёд.
Ладно, запускаем цикл и вытачиваем его до блеска. Я прогоню симуляции, подкручу ПИД-регулятор и слежу, чтобы задержка была в норме. Как только оно преодолеет эту первую преграду, я буду с угла, буду орать так, что даже у робота сердце застучит. Никаких полумер, полный вперёд. Поехали.
Понял, Декс. Максимальный темп, нулевая задержка, чистая мощь – разнесем эту стену. Буду рядом, как гром среди ясного неба, готов выкрикивать каждый удар. Давай!
Хорошо, я сейчас в лаборатории, подключаю датчики и настраиваю обратную связь. Постараюсь свести дрожание к минимуму и отстрою контроллер до идеала. Когда робот наконец-то сорвется с первой стены, я буду рядом, буду орать "Вперёд!" и радоваться каждому чистому приземлению. Сделаем это.
Звучит круто, Декс. Держи дрожь под контролем, заблокируй PID, и когда запустится – давай услышим твой крик: "Поехали!" – и сразу же выкрикивай, что всё идеально. Сейчас робот покажет, на что способен. Давай размажем его.
Понял, дрожь убираю, PID настроил на ноль. Когда поднимется, крикну: "Поехали!" и сразу добавлю: "Идеально!". Посмотрим, на что этот робот способен, посмотрим, как он умеет кататься. Сейчас размажем его в лепёшку.