5 и 6 июня 2015 года в Помоне (Калифорния) прошли крупнейшие соревнования роботов — DARPA Robotics Challenge (DRC). Их организатор, Агентство по перспективным оборонным научно-исследовательским разработкам США (DARPA), поставил своей целью найти наилучшую автономную машину, способную заменить человека при ликвидации последствий чрезвычайных ситуаций.
Но немногие знают, что аналогичный проект стартовал в СССР в 1990 году.
Основная задача — разведка в условиях сильной радиации в завалах Чернобыльской АЭС.
В те времена такие проекты носили закрытый характер и им присваивался высокий уровень секретности, поэтому точные сроки начала разработки назвать не могу.
Основным подрядчиком был НИИКП, изготовителем «железного» исполнения, возможно я могу ошибаться, был МФТИ. Вычислительный комплекс, ОС, прикладные программы должны были быть изготовлены в Томском Политехническом Институте.
В то время я был отвественным исполнителем за программно-аппаратный комплекс по программированию робота.
Начало проекта было многообещающим, на первом этапе был реализована подвижная платформа в виде двух тележек на полигоне, примерно как у DAPR, только меньше по размерам. Я, к сожалению, только раз был при просмотре изделия.
В Томске наши электронщики реализовали 2-х процессорный компьютер с 2-х портовой памятью. Память была, как и процессор: радиационно стойкая и энерго-независимая, то что мы сейчас, через 25 лет, еше не реализовали в современных компьютерах.
Руководителем этой части проекта был Н.Г. Марков, ныне д.т.н. профессор кафедры АВТФ ТПУ.
Руководитель всего проекта в НИИКП (имя я его уже не помню) издалека показывал мне радиационо-стойкий процессор ВМ6, даже не давая в руки. Архитектура компьютера была сходной с дековской.
Компьютер дублировался – на каждой тележке, связанной друг с другом была своя, независимая копия компьютера. Предпологалось, что робот будет иметь массу сенсоров и датчиков и способность передвигаться в условиях сильной радиации в завалах чернобыльской АЭС.
Если бы связь с ЦУ терялась, то робот должен был бы самостоятельно вернуться на базу.
При аппаратном сбое компьютер обеспечивал тестирование, перегрузку и старт ОС с доступного, целого места ОЗУ. Для этого А. Смирнов (кафедра АВТФ) переделал OSRT11SJ и сделал ее многозадачной, многопроцессорной и перемещаемой (то есть могла стартовать с любого адреса ОЗУ). В принципе, ничего не было особого, чтобы заставить ее расползаться по ОЗУ даже в оставшихся дырках. Сейчас, понятное дело такие вещи делаются на аппаратном уровне с выделением виртуальных адресов с фиксированными адресами и единым адресным пространстом. Но в то время это было бы сложнее на той текущей элементной базе. Хотя и передeлывать код на ассемблере было тоже сложнейшей задачей – все таки исходники были на ассемблере — спасибо компании DEC — в те времена софт поставлялся с исходным текстами.
На мою долю также досталось написание препроцессора для С, чтобы научить программы распределять задачи между 2 процессорами. Кроме того, одной из фишек ОС была способность откатывать, при сбое и ре-старте, ОС и задачи с последнего сохраненного места.
Примерно как сейчас делает это ноутбук – закрыл – открыл крышку – все задачи бегут, как будто не останавливались. Для этого в С добавилась возможность для каждой задачи сохранять промежуточные данные, с которых она могла ре-стартовать.
Разработка должна была вестись на IBM PC/AT в то время, и через COM порт отлаженный код на С собирался уже на изделии.
Поскольку это был первый этап, то дальше дело не пошло, и вот почему – СССР развалился.
Чернобыль остался на Украине. Проект сгинул в небытие. А жаль, ведь технически он должен был быть более способным противостоять внешним условиям чем луноходы.
Я почему назвал заголовок Терминатор – в итоге, если бы кто попытался его уничтожить (а первым кандидатом была радиация) – он гарантированно бы сопротивлялся смерти до последнего живого блока, но политика оказалось сильнее таланта советских инженеров.
Автор: BalinTomsk