Тут-то я и подкинул идейку считать импульсы - по аналогии с колесиками на компьютерных мышках - в них были проделаны щели, через которые то проходил, то не проходил свет от светодиодов - схема считала количество импульсов и таким образом вычисляла проходимое расстояние. Попробовали. Точность повысилась до десятой доли миллиметра - сотни микрон - этого было достаточно для девяноста процентов всех обрабатываемых поверхностей, что потенциально избавит от ручного управления станками на большинстве операций. Но, раз мы взялись за решение этой проблемы, нам хотелось довести точности до микронных допусков. А для этого требовалось вообще избавиться от механических элементов в системе измерений, а то сейчас колесико с прорезями каталось по длинной зубчатой рейке, да к тому же для повышения разрешающей способности его подключили через мультипликатор - сами-то размеры колесиков и реек были небольшими, как в часах, но, раз есть механический контакт, он будет изнашиваться, тем более что мультипликатор был очень нагруженной частью.

К счастью, такие приборы у нас уже были - дифракционные решетки. Когда по ним перемещается световое пятно, решетка разлагает его на полосы, которые также двигаются - вот и появляются импульсы, которые можно считать. Ну а считать мы уже умели. И, так как точность разложения зависела от шага решетки, то ею можно было управлять, создавая решетки с разным шагом - то есть мы могли управлять и нужной точностью измерений. А если ее не хватит либо решетки получатся слишком трудоемкими - ставим две решетки, которые последовательно разлагают световое пятно и затем получающиеся из него полосы. Дело в шляпе.

Класс ! Точность измерений возросла до единиц микрон. Это если двигать решетки вручную, при неработающем станке. Когда же началось точение, аппаратура повела себя как взбесившийся заяц - постоянные включения-переключения привода каретки вперед-назад, причем неравномерно - то проедет вперед, а назад не стронется, то наоборот - отскочит на пару миллиметров - поверхность получалась даже хуже, чем с первоначальным вариантом - с механическими контактами. Вырубили станок, проверили схему, привод - ничего подозрительного. Снова включили, получили "зайца" и снова выключили. Сели думать.

Вибрации ! Резание создавало вибрации, которые передавались на решетку и она гоняла импульсы туда-сюда, причем интенсивными пакетами - дернет вперед - пошли импульсы одного направления, дернет назад - другого. Причем импульсы бегали настолько быстро, что часть импульсов пакета проскакивала мимо схемы - она просто не успевала их отработать, так как шел перенос от предыдущего импульса, и новый попадал между тактами, поэтому измеренное передвижение получалось небольшим, меньше чем фактический сдвиг от вибрации. А от других пакетов все импульсы успевали отработаться, так как толчок от вибрации был медленнее - и вот каретка отъезжала на большее расстояние.

Ну, "дребезг клавиш" был для меня не пустым звуком. Ввели соответствующую схему - поставили стандартную схему на триггерах и RC-цепочке. Н-н-ну-у-у-у ... да-а-а-а, количество импульсов снизилось, хотя что-то все-равно порой проскакивало мимо кассы. В общем - импульсы из-за вибрации - все-таки не дребезг - они и в самом деле показывают положение инструмента. Вот только надо их как-то фильтровать - считать, но не использовать. В итоге пока поставили обычный сдвиговый регистр - в нем не было переноса разрядов, поэтому он работал гораздо быстрее счетчика и успевал отработать все имупльсы. А уже его выход поступал на счетчик. То есть счетчик теперь считал импульсы не непосредственно от решетки, а от сдвигового регистра - последний как бы делил количество импульсов на количество своих разрядов - скажем, работает в нем четыре разряда - и частота тиков будет в четыре раза меньше. Это снижало точность измерений в те же четыре раза.

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

- Ха ! - сказали наши разработчики - Так это из-за изношенности резца ! Он притупляется, точение начинает идти хуже - вот и возрастают вибрации !!!

- Ну молодцы. И как это отслеживать автоматически ?

В итоге пришли к следующему. Нам ведь известно, куда движется станок. И если поступают импульсы обратного значения - значит, это вибрация. Вот и стали считать такие импульсы - как только они начинали "зашкаливать" за текущую разрядность сдвигового регистра - программа просто увеличивала количество его разрядов - так-то его разрядность была уже восемь бит, а с какого конкретно бита брать сигнал переноса и зацикливания - за это отвечал отдельный регистр-маска. Заодно мы научились программным способом отслеживать износ инструмента -подизносился - и уменьшаем подачу, а то и сигнализируем оператору, что пора менять резец.

А в конце мая сорок третьего я как-то зашел к ЧПУшникам - а у них на станке какой-то короб длиной десять сантиметров.

- Что это ?

- Оптическая линейка ! - а сами сияют от радости.

Оказалось, к ним как-то зашли микроэлектронщики чтобы пошушукаться насчет автоматического управления перемещением исполнительных органов - благо и у тех и других такого хватало с избытком, да и общались плотно, так как станочникам постоянно требовались дополнительные элементы для блока управления станком, вот они и бегали к электронщикам, ну а те мало того что предоставляли нужные микросхемы, так еще и помогали составлять принципиальные схемы узлов, а потом их отлаживать. Так что контакт был плотным. Вот и дообщались до того, что электронщики сделали закрашенную стеклянную полосу, но с прорезями. Вдоль нее ездила каретка со стеклянной пластиной, тоже с прорезями, но короткая. Прорези то оказывались друг напротив друга, то нет - соответственно, просвет то возникал, то пропадал. И через эту систему прорезей то проходил то не проходил свет от ламп, который ловился фотоэлементами. Ну понятно - они развернули "колесико мышки" в длинную планку.

- А в чем выгода ?

- Так пропадает колесико ! Отсутствует механическая передача, соответственно, нет люфта, износа - каретка просто ездит вдоль планки.

- Ну и как ?

- Да отлично ! Правда, мы кое-что усовершенствовали.

А усовершенствования заключались в добавлении второй решетки и дифференцирующих схем. Прорези решеток были сдвинуты на половину Пи, с них снимали четыре прямоугольных сигнала, три из которых сдвинуты на половину Пи, с их фронтов - нарастающего и убывающего - получали дифференцированные короткие сигналы, и через схему совпадения получали импульсы и направление движения.

Первая простенькая схема выдавала разрешение в половину шага растра, то есть при шаге в сто микрометров - одну десятую миллиметра - получали точность измерений в пятьдесят микрометров - уже в два раза лучше, чем со старым колесиком. Так дополнительным усложнением схемы совпадения сигналов точность была повышена сначала до четверти шага решетки, а потом и до восьмой части, так что вскоре эта же линейка с шагом в сто микрометров выдавала точность уже 12,5 микрометра. А этого достаточно уже для 95% всех поверхностей обработки, а по ряду деталей - и для 100%.

Так, точность изготовления валов "пляшет" от так называемой единицы допуска - кубического корня из диаметра вала, но в микрометрах. Например, для вала диаметром восемь миллиметров единица допуска равна двум (кубический корень из восьми), но микрометрам, а для вала диаметром 27 миллиметров - три микрометра. И уже для каждого класса точности принимается определенное количество этих единиц. Например, для первого класса количество единиц допуска - не более 3,5, то есть для вала диаметром 8 миллиметров максимальное отклонение для первого класса - 2 х 3,5 = 7 микрометров, а для вала диаметром 27 миллиметров - 3 х 3,5 = 11,5 микрометров. Для второго класса точности количество единиц уже 4,8 - то есть для наших валов максимальное отклонение от диаметра будет уже 2 х 4,8 = 9,6 и 3 х 4,8 = 14,4 микрометра соответственно. Класс 2а требует 7,5 единиц, 3 - 15, 3а - 30 - и так далее до 9го класса, у которого уже 475 единиц - то есть для вала диаметром 8 миллиметров допустимое отклонение в таком классе будет 2 х 475 = 950 микрометров - почти миллиметр. Вряд ли, конечно, конструктор назначит такой допуск для такого сравнительно тонкого вала - но как знать.

Причем микроэлектронщики твердо обещали станочникам сделать планки с шагом уже в пятьдесят микрометров - а это точность измерений уже 6,3 микрона. И начали подумывать - как бы делать планки с шагом в двадцать микрон, что даст точность 2,5 микрона. Правда, пока все эти планки были короткими, всего пять сантиметров, то есть подходили для небольших измерений - либо поперечного хода суппорта, либо небольших продольных ходов. Впрочем, этого было достаточно для многих ответственных деталей - тех же пуансонов для выдавливания гильз, да и многих других деталей, требовавших повышенной точности - мы пока решили сосредоточиться на станках для таких небольших изделий, а для более габаритных использовать эти планки с растром только для измерения поперечных перемещений, а для продольных - датчики перемещения на колесиках - для большинства деталей диаметр обработки гораздо важнее чем длины - допуски совершенно различны.

И это я говорю только про прямое измерение линейных перемещений, а если такие датчики совместить с винтовыми подачами, точность еще больше увеличивается. Например, для винта диаметром два сантиметра длина витка грубо говоря два-пи-эр = 6,28 сантиметра. Которые мы можем измерять с точностью 2,5 микрона (если электронщики все-таки выдадут растры с шагом в двадцать микрометров, в чем я не сомневался). То есть на один виток придется 25 000 единиц измерения (62,8 миллиметра делить на 2,5 микрона). Соответственно, при шаге винтовой поверхности в 1 миллиметр мы на каждом обороте получим эти 25 000 измерений, то есть продольное перемещение можем измерять с точностью 1 / 25 000 = 40 нанометров (ха-ха). Да там вибрации и тепловые деформации могут быть больше этой величины ! И этого с учетом резерва на погрешности измерений более чем достаточно для измерений с точностью, скажем, в 200 нанометров. Ну или с учетом погрешности изготовления резьбы - пусть даже полмикрона. Собственно, электронщики активно пользовались резьбовыми приводами для повышения точности измерений и без растровых решеток, да и металлообработка массово применяла микрОметры на винтовом ходу - а по другому ловить микроны и не получится.

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

Впрочем, и помимо этих тонкостей с люфтами работы предстояло еще много. Мы ведь научились измерять только перемещения агрегатов станка, но не размеры обрабатываемой детали. А там было еще много тонкостей, и даже если суппорт перемещается с высокой точностью, это не значит, что деталь попадет в размеры - там и износ резца, и тепловые деформации при обработке, и отгиб детали или резца из-за недостаточной жесткости - для измерения всех этих величин требовались датчики и алгоритмы. А для алгоритмов были нужны не только программы, но и аппаратура, которая сможет их отрабатывать.

Тут как раз и пригодилась случайно разработанная станочниками схема измерения вибраций, которую электронщики утащили на свое оборудование. А то у них была беда - они вышли на проектные нормы менее десятка микрон, но все получалось очень размытым. И было подозрение, что из-за вибраций, а чем их померять - непонятно. А тут - готовая схема, а главное - идея, которая в дальнейшем помогла во взятии новых рубежей. Ведь с новыми проектными нормами было еще много проблем, а спускаться ниже десяти микрометров мы в массовом производстве пока точно не могли - опыт изготовления в лабораториях единичных микросхем по более тонким процессам ставил больше вопросов чем давал ответов.

Взять тот же фоторезист. Методы фотолитографии вообще-то известны уже давно. Так, в 1852 году в Англии было запатентовано использование смеси бихроматов - солей дихромовой кислоты - с желатиной - эта смесь становилась нерастворимой на освещенных участках. Эти "хромированные коллоиды" применяют в полиграфии и сейчас. В тридцатых годах уже двадцатого века были открыты фоторезисты на основе коричной кислоты в матрице природных пленкообразующих смол. И получение этого фотореактива дело не слишком сложное - в реакциях участвуют либо ацетон с бензальдегидом, либо бензойный альдегид с уксусной кислотой - в присутствии каких-нибудь хлорных соединений - все эти реакции были известны и как минимум на уровне лабораторного производства не представляли никаких сложностей.

Но основным нашим фоторезистом стали соединения на основе диазосмол. Собственно, диазотипия - светокопирование с использованием солей диазония - было открыто еще в 1923 и с тех пор массово использовалось для копирования чертежей и других изображений (а до того - с 1902 года - для этих же целей использовалась цианотипия - пресловутая "синька", чье название перешло у нас и на диазотипию, хотя цвет чертежей был уже не синим). Эти процессы подходили для светокопирования, но не для фотолитографии, которая требовала плотного покрытия, а не просто покрытия слоем кристалликов - между их гранями все-равно к подложке будут проникать ненужные вещества. Поэтому-то мы и использовали полиграфические методы фотолитографии - там также требовалось сплошное покрытие, которое образовывали полимеризующиеся молекулы какого-нибудь органического вещества.

Как раз диазониевые соли для этого и подходили - они выступали катализатором отверждения разнообразных органических соединений - например, еще в 1931 ее использовали для отверждения слоя животного клея под действием света. Правда, для газет было достаточно разрешения и в две-четыре линии на миллиметр, но с помощью этой же технологии получали и печатные формы для журналов, где требовалось более высокое качество - собственно, после освобождения Минска в начале сорок второго у нас и появились как технологии, так и настоящие специалисты по фотолитографии - минские типографии были оборудованы можно сказать по последнему слову техники. С их-то помощью мы в конце концов и получили на небольших площадях разрешение уже двести линий на миллиметр, то есть пять микрометров - как раз с некоторым запасом для проектных норм в десять микрометров. Дальше пока был затык - там и слишком сильное набухание частей фоторезиста, которые будут смываться - они сдвигали незасвеченные участки, да и других возникающих дефектов хватало, так что работы предстоит еще много - ведь чем толще слой пленки фоторезиста - тем сильнее набухание и деформации, а чем этот слой тоньше - тем вероятнее возникновение проколов и просто дырок, разрывов, когда при сушке слой фоторезиста несколько стягивается, так что может даже порваться.

В плане оптики мы также сделали шаг вперед, позволивший нам перейти к десяти микронам. Так, мы начали получать первые партии синтетического стекла - из кремния, очищенного для микроэлектроники - просто потом окисляли его до оксида кремния, то есть до кварца. Чистейшего - такого не было даже в природе. Сто грамм в сутки, на пару линз - и вот микроэлектронщики получили первую проецирующую установку на топологические нормы в десять микрон. Сама установка была высотой в два метра и засветку приходилось делать пошагово - засветить одну микросхему - и передвигаться к следующей - все для того, чтобы максимально уменьшить аберрации проецируемого изображения, хотя мы и так отлично постарались - помимо линз из чистейшего стекла мы впервые применили мощные монохроматоры - вырезали из спектра излучения паров цезия нужную линию света - четыреста с чем-то нанометров - и ею засвечивали фоторезист. Это хотя и уменьшало энергию засветки, зато избавляло нас от хроматических аберраций - теперь через оптическую систему шла только одна волна, а сама оптическая система была рассчитана именно на нее.

И, несмотря на все эти ухищрения, поначалу выход годных микросхем был равен нулю. Немного поигравшись с параметрами толщины фоторезистов, интенсивности источника света, длительности засветки, с легированием - народ отчаялся получить годные микросхемы и стал варварски выдергивать их из техпроцесса на разных стадиях - изучать, а что там вообще происходит ? Стандартная практика. Проблема была в нечеткости линий, причем иногда что-то все-таки сначала получалось и затем портилось уже на последующих этапах.

Тут-то и подоспели оптические датчики вибраций. Понатыкав их пару десятков, электронщики и обнаружили, что внешне неподвижная проекционная колонна дрожит как лист на ветру. Загвоздка крылась в системе охлаждения - дело в том, что еще раньше оптики наелись с температурными деформациями, из-за которых начинали ехать оптические оси и изображение расплывалось. Поэтому они встроили в систему множество трубок, по которым текла охлаждающая жидкость - они проходили через держатели линз и охлаждали как сами держатели, так и линзы - те ведь тоже нагревались проходящим через них светом. А сами трубки были жесткими - по ним-то вибрация и пробиралась внутрь оптической системы. Введение гибких сочленений частично решило проблему - оптика стала выдавать нужные десять микрон разрешения. Но было понятно, что дальше проблема встанет во весь рост. Конечно, можно было бы на время засветки вырубать охлаждение и потом запускать его чтобы вернуть температуру, а следовательно и размеры элементов оптической системы в норму, на которую они и были рассчитаны. Но это потребует остановок, что снизит коэффициент использования аппаратуры. Делать более жесткой систему оправок для линз тоже не выход - там требовалось множество регулировочных винтов, которыми выставлялись сами линзы - а то не все получались с нужными параметрами и таким перемещением - вдоль или поперек оптической оси, а то и с наклоном к ней - частично компенсировали погрешности изготовления - ведь передвинуть линзу зачастую проще, чем сделать ее точно в размер. Была еще мысль охлаждать воздухом, но это приведет к высоким турбулентностям внутри световой колонны, то есть коэффициент преломления воздуха будет меняться самым непредсказуемым образом, что опять же приведет к искажениям. Оптикам было над чем поразмыслить.

А ведь линзовики уже активно шлифовали стекляшки для засветки сразу всей площади пластины, что увеличит размеры элементов оптической системы а, следовательно, и их абсолютные перемещения при тепловых деформациях - головной боли еще прибавится. С другой стороны, при этом можно будет и останавливать засвечивание без особой потери производительности - ведь при засветке целой пластины тонкие работы по перемещению шаблона уйдут с этапа изготовления пластин на этап изготовления фотошаблонов, что существенно уменьшит время прохождения одной пластины, так что можно будет немного и потерять в производительности - на круг все-равно будет выходить существенная прибавка.

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

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

Пока же установка была мало того с шаговой засветкой, так еще и одна, поэтому все операции выполнялись на ней с многочисленными возвратами - отлегируют каналы - и снова на засветку, теперь уже шаблонами стоков или истоков, потом отлегируют их - и обратно на засветку - уже для металлизации. Одна пластина возвращалась в эту проецирующую установку до десяти раз. Зато мы уже получали микросхемы памяти емкостью 256 бит - почти на десять килобайт в сутки, при выходе годных целых пять процентов - шла отладка технологии, и тут оптические приборы для измерения малых перемещений были очень кстати. Пока эти перемещения выполнялись вручную, но электронщики уже прикрутили и управляющую ЭВМ, отлаживая автоматизированную засветку пластин - мы начиная с апреля снизили выпуск микросхем памяти в пользу микросхем логики, чтобы ее хватило на все эти эксперименты с управляющими ЭВМ, тем более что их требовалось уже много - народ входил во вкус.

Так, тем же электронщикам управляющая ЭВМ была нужна в том числе и для проверки микросхем перед металлизацией - как я упоминал, выход годных микросхем с проектными нормами в 10 микрон поначалу был очень мал. Проблема, напомню, заключалась прежде всего в качестве монокристалических пластин - там было слишком много дефектов, и если для более "толстых" процессов они зачастую были некритичными, то для десяти микрон каверна на поверхности запросто могла перекрыть полностью весь канал - ведь в местах дислокаций все процессы происходят интенсивнее - в том числе и диффузия, и травление, и адсорбция. Это я еще молчу про неоднородность легирования кристаллов и пластин - мало того что кристаллы могли иметь разное сопротивление по длине, а значит пластины из одного кристалла также могли различаться по степени базового легирования, так еще и сами пластины могли иметь неоднородное легирование по своей поверхности - тепловые потоки в расплаве были неоднородны, и эта неоднородность приводила к неоднородности материала, присоединявшегося к растущему кристаллу - в какой-то момент подошел материал с чуть повышенным уровнем легирующих добавок, в какой-то - с чуть пониженным - и вращение тигля и кристалла, с помощью которого пытались как-то выровнять конвекционные потоки, как бы размазывало эту неоднородность по поперечному сечению. И если первый вариант неоднородности - от пластины к пластине - еще можно было выровнять изменением времени диффузионной обработки, то со вторым типом неоднородности бороться было сложно - тут уже все зависело от того, как эти неоднородности попадут на элементы транзисторов. Наши разработчики сделали тестер с массивом из двадцати пяти иголок - пять рядов по пять иголок, с шагом два миллиметра - и им измеряли сопротивление пластин в отдельных участках - и исходя из этого пытались поиграться параметрами легирования при обработке конкретной пластины, чтобы получить максимальный выход нормальных микросхем. Сплошная морока.