bash.im ithappens.me zadolba.li
4686

Не множьте сущности

14 ноября 2010, 12:45

Не так давно выяснилось, что некоторые корейцы — очень даже индусы.

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

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

На софт из комплекта поставки были натравлены лучшие программисты из имеющихся. Оказалось, что при «размножении» рисунка платы только имеющая индекс (1, 1) получала нормальные координаты всех технологических элементов, а у остальных они умножались на соответствующее порядковому номеру число.