Brad Odhner, Tektronix/Keithley Instruments
Скорость и надёжность электрического тестирования могут иметь огромную важность. В этой статьё рассказано, как достичь и того, и другого.Представьте себе, что вы – инженер, контролирующий производственные процессы предприятия. Именно ВЫ отвечаете за каждый этап производственного процесса, и когда требования высоки, каждая лишняя секунда работы конвейера приводит к потерям времени и прибыли. Вероятно, многим из вас эта ситуация хорошо знакома. Но давайте немного уточним, вы – инженер-электрик, отвечающий за производство аккумуляторных батарей для электромобилей, а на этом быстрорастущем рынке ключевыми показателями являются скорость и эффективность. Разве вы не искали бы любые способы сокращения времени тестирования и повышения эффективности своей работы?
Именно эта проблема привела одного из наших заказчиков в компанию Keithley Instruments в начале этого года. Впрочем, чтобы полнее понять проблему и предложенное решение, давайте вспомним теорию.
При последовательном соединении элементов суммируется напряжение.
При параллельном соединении элементов суммируется ток.
Те, кто не работает с аккумуляторами, часто упускают тот факт, что батареи большой ёмкости, аналогичные тем, что применяются в электромобилях или в больших источниках бесперебойного питания, на самом деле являются набором соединённых между собой элементов меньшего размера. Принцип действия химического источника тока таков, что отдельный элемент может обладать определённым напряжением и определённой ёмкостью. Однако соединяя между собой множество элементов можно создать некую «супербатарею». С точки зрения электричества, соединённые между собой элементы выглядят как один большой элемент. Объединяя элементы разными способами, можно получить необходимые электрические характеристики результирующей «супербатареи». Соединение элементов последовательно позволяет получить более высокое напряжение, а параллельное соединение элементов позволяет увеличить ток. А комбинируя эти схемы, можно получить необходимые характеристики результирующей батареи.
Батарея электромобиля может содержать несколько последовательных и параллельных цепей элементов.
Однако такое объединение элементов порождает свои проблемы, связанные в основном с дополнительным сопротивлением. Сопротивление является неотъемлемым свойством любых электрических цепей, в том числе цепей аккумуляторных батарей. Во-первых, элементы обладают внутренним сопротивлением, которое порождается химическими реакциями, идущими внутри элемента. Наличие внутреннего сопротивления означает, что при потреблении мощности от элемента, т. е. при вытекании из него тока, напряжение на выводах элемента снижается. Просадка напряжения, вызванная потреблением мощности, может вызвать сбои в работе питающегося от батареи оборудования. Не так давно этот факт произвёл фурор в прессе, когда компания Apple приняла меры к тому, чтобы избавить пользователя от неожиданных отключений телефона из-за просадки напряжения состарившейся батареи. Помимо этого, внутреннее сопротивление создаёт ещё одну проблему, более актуальную для электромобилей, – нагрев.
Проходя через резистор, ток генерирует тепло, что вряд ли удивит человека, который хоть раз пользовался лампой накаливания или любым электрическим обогревателем. Это справедливо и для внутреннего сопротивления аккумуляторного элемента. Ток, протекающий через батарею в процессе разрядки или зарядки, генерирует тепло. Все химические реакции, идущие внутри элемента, чувствительны к температуре, и перегрев, возникающий внутри элемента, может быть нежелательным, а во многих случаях даже опасным.
Проблемы, присущие внутреннему сопротивлению, относятся и к внешнему сопротивлению, возникающему при соединении множества элементов. И как бы вы ни уменьшали длину проводников, используемых для соединения элементов, они всё равно будут обладать сопротивлением и будут генерировать тепло. Даже очень небольшие сопротивления, порядка десятков микроом, могут иметь большое значение. Генерируя нежелательное тепло, эти сопротивления снижают КПД, поскольку мощность батареи впустую расходуется на нагрев.
В электромобилях как нигде нужно устранить все источники потерь ёмкости или снижения КПД. Поэтому эти крошечные «резисторы», соединяющие отдельные аккумуляторные элементы в одну «супербатарею», должны быть как можно меньше. На самом деле минимизация этого сопротивления столь важна, что перед дальнейшим продолжением производственного процесса полностью собранную батарею электромобиля нужно протестировать. Если сопротивление соединений окажется слишком большим, батарея бракуется, и специалисты должны выявить причины такого отказа. Конечно, дополнительная работа специалистов может затормозить производственный процесс, поэтому мы хотим выявлять такие отказы быстро и точно указывать их местоположение.
Всё это создаёт интересную проблему тестирования. Сопротивление этих соединений очень мало, и в одной «супербатарее» их может быть много, обычно более 30. Точное измерение даже одного столь малого резистора требует применения специального оборудования и дополнительного времени. Чтобы батарея прошла контроль, все эти малые сопротивления надо проверить, и отказ означает увеличение трудоёмкости. Не забывайте также, что это всего лишь один из этапов производства электромобиля, и недостаток батарей может легко задержать работу всей производственной линии. Таким образом, минимизация времени измерения этих сопротивлений и точное выявление проблем с соединениями является обязательным условием.
Именно с этой проблемой один из инженеров обратился в компанию Keithley Instruments в начале этого года. Он перебрал несколько решений, но ни одно из них по тем или иным причинам не подошло. Один из вариантов давал необходимую точность и достоверность, но был слишком медленным. Другой вариант был очень быстрым, но при многократных запусках выдавал сильно отличающиеся значения. Кроме того, оба варианта были трудно реализуемы, требуя применения нескольких модулей LabVIEW и разъёмов. Как видите, картина ясна, – он оказался в положении Машеньки, выбирающей идеальную кашу на столе у трёх медведей.
Решение
Решение проблемы, стоящей перед нашим инженером, было двухэтапным: сначала были подобраны приборы, способные достоверно выполнять многократные измерения малых сопротивлений, а потом был найден способ быстрого и простого выполнения этой работы. Поиск приборов, соответствующих данным требованиям – довольно простая задача для компании, специализирующейся в области точных измерений электрических величин. Для измерения сопротивления с большим числом контрольных точек был выбран тандем из двух приборов – источник-измеритель (SMU) Keithley Model 2450 SourceMeter®, выступающий в роли прецизионного источника тока, и Keithley Model 3706A, исполняющий роль коммутатора и чувствительного цифрового мультиметра.
Keithley 3706A представляет собой комбинацию 576-канального коммутатора с 7,5-разрядным цифровым мультиметром. Большое число каналов и очень точный мультиметр идеально подходят для тестирования соединений в батарее электромобиля.
2450 SourceMeter® представляет собой источник-измеритель с графическим сенсорным экраном и превосходной точностью по току (максимальное разрешение 10 фА!). В сочетании с невысокой ценой это делает его идеальным прибором для тестирования батарей электромобилей.
Вы можете задаться вопросом, зачем было использовать два прибора для измерения сопротивления, – один в роли источника тока, а другой в роли вольтметра? Если 3706A может работать коммутатором и мультиметром, почему не использовать только его для измерения сопротивления? Во-первых, из-за скорости. Мультиметр измеряет сопротивление, подавая ток и измеряя падение напряжения. Из закона Ома следует, что сопротивление равно измеренному напряжению, поделённому на подаваемый ток. Но мультиметр может подавать ток лишь нескольких фиксированных значений, и эти значения не очень велики. Это значит, что при малых сопротивлениях напряжение будет очень небольшим, что потребует существенного увеличения времени измерения. Используя большой ток, мы получим большее падение напряжения, которое измеряется быстрее. Другая причина кроется в повышенной точности: при измерении малых сопротивлений путём измерения напряжения термоэлектрическая ЭДС может создать постоянное смещение напряжения. Это смещение можно исключить из результата, выполняя два измерения, одно при подаче тока одного направления и другое при подаче тока обратного направления. Эта технология называется «методом обращения тока» и часто применяется для измерения малых сопротивлений. Источник-измеритель модели 2450 является 4-квадрантным источником тока и напряжения, и может точно подавать ток в обоих направлениях. В связи с изложенным было решено, что в данном случае наилучший результат можно получить при использовании двух приборов.
Теперь, когда мы знали, как выполнить точные измерения, нам оставалось решить вторую проблему: выполнить эти измерения быстро.
Скорость измерений была существенно повышена за счёт применения технологии, получившей в компании Keithley название «Процессор сценариев тестирования» или TSP. TSP может значительно повысить эффективность решения, так что давайте рассмотрим его подробнее. Технология TSP состоит из трёх основных частей: процессора, языка программирования и системы связи. Все приборы, поддерживающие TSP, имеют встроенный, доступный пользователю процессор, который может непосредственно исполнять код, управляющий прибором. Это чем-то напоминает Arduino или Raspberry Pi, только работает внутри точного контрольно-измерительного прибора! Под языком программирования понимается тот язык, на котором работает процессор. Это специальный язык, созданный на базе языка Lua, позволяющий встраивать команды прибора прямо в написанный код, а не использовать для отправки команд SCPI отдельный «несущий» язык, такой как Python или MATLAB. Этот язык очень прост в изучении и близок по форме к языку самого процессора, что позволяет получить хорошую скорость исполнения без сложной компиляции кода. И наконец, TSP поддерживает некоторую систему связи. Два поддерживающих TSP прибора могут использовать общую шину запуска и связи с малыми задержками, получившую название TSP-Link и работающую по стандартным (и дешёвым!) кабелям Ethernet. В результате такие приборы могут работать под управлением сценария, взаимодействуя по схеме «ведущий-ведомый». Кроме того, прибор с поддержкой TSP может взаимодействовать с приборами, не поддерживающими TSP, и даже управлять ими по протоколу TSP-Net, но пока мы в это углубляться не будем.
Мысль о том, что код может исполняться на самом приборе, куда интересней, чем может показаться с первого взгляда. В традиционных системах дистанционного управления прибор управляется передаваемыми ему командами SCPI (стандартные команды для программируемых приборов). Эти команды представляют собой обычные строки текста, которые могут интерпретироваться прибором. SCPI не является языком программирования, это только набор команд. Кроме того, SCPI обладает некоторыми ограничениями, главное из которых в том, что команды можно посылать только по одной, поскольку каждая команда требует подтверждения или ответа от прибора. Каждое такое взаимодействие требует времени на передачу данных по шине связи. И подобно тому, как малые сопротивления в нашей батарее суммируются между собой, суммируются и малые задержки, вызванные обменом по шине, а в производственной среде каждая секунда на счету. Сохраняя и исполняя код прямо в приборе, можно исключить время ожидания отклика от отдельного прибора.
Кроме того, язык TSP зачастую более удобочитаем, поскольку команды управления прибором встраиваются прямо в структуру языка. Это всё равно, что объединить возможности языка Python с командами SCPI. Взгляните на следующий пример запроса размера буфера хранения прибора, который называется DataBuffer:
Код на языке Python: BufferLength = instrument.write("TRACe:POINts? \"DataBuffer\"")
Код TSP: BufferLength = DataBuffer.capacity
Обратите внимание, что на языке Python нужно вставить команду в функцию запроса, которая, в данном случае, требует применения управляющих символов с двойными кавычками, необходимыми для команды. В то же время TSP может непосредственно получить размер буфера без функции-оболочки и сложных текстовых команд. Затем переменную BufferLength можно использовать прямо в приборе, не отсылая назад во внешний компьютер, что экономит время и упрощает код за счёт исполнения команд прибора на самом приборе.
Но вы можете сказать: «Я не хочу, чтобы тесты целиком исполнялись на приборе, потому что мне нужны все данные!» Вот именно здесь на сцену выходит гибкость TSP. Код, работающий на приборе, не обязательно должен быть целой программой, вы можете без труда создавать вызовы несложных функций, которые работают как встроенные команды, но полностью адаптированы к вашим задачам! Представьте, что приборы 2450 и 3706A работают вместе, измеряя сопротивление соединений батареи. В традиционной схеме дистанционного управления вы бы посылали все команды установки тока и измерения напряжения отдельно на каждый прибор. Затем вы бы считывали полученные данные и рассчитывали сопротивления в управляющей программе. Но вам не нужны отдельные значения токов и напряжений, вас интересуют только сопротивления, правильно? Допустим, вместо этого вы просто посылаете команду типа «Измерить_Сопротивление()», которая говорит прибору выполнить все эти отдельные шаги самостоятельно и вернуть только нужный вам результат – сопротивление. Именно это и позволяет сделать TSP.
Именно это решение дало инженерам, занятым производством аккумуляторных батарей для электромобилей, наилучшие результаты. Мы написали сценарий, который работал в источнике-измерителе 2450 и исполнял нужный нам тест! Давайте пройдём по всем шагам этого сценария. Источник-измеритель 2450 подключен к коммутатору/мультиметру 3706A через TSP-Link – высокоскоростную шину с малыми задержками для TSP. Сначала 2450 даёт команду коммутатору 3706A замкнуть нужные реле, чтобы подключиться к очередной контрольной точке. Затем 2450 подаёт ток одного направления и командует мультиметру 3706A измерить напряжение. Затем подаваемый ток инвертируется, и на 3706A снова подаётся команда измерить напряжение. И наконец, 2450 получает измеренное напряжение от 3706A и рассчитывает сопротивление контрольной точки по измеренным значениям напряжения и заданному значению тока (используя для этого описанный выше метод обращения тока). Этот цикл повторяется, пока не будут измерены все контрольные точки. В самом конце сценария таблица, содержащая сопротивления всех контрольных точек, возвращается в управляющий компьютер для обработки.
В итоге нашим друзьям-инженерам, выполняющим эти производственные измерения, остаётся сделать один запрос к 2450 и получить в ответ нужные им данные! Сценарий полностью управляет приборами 2450 и 3706A, выполняет измерения во всех контрольных точках и возвращает только нужные инженерам конечные результаты. Помимо повышения скорости за счёт устранения всех задержек, связанных с передачей промежуточных данных, это решение оказалось ещё и более изящным! Для управления тестами заказчики использовали программу собственной разработки и обнаружили, что она не справляется с управлением несколькими приборами и не поддерживает логику операций, необходимую для некоторых тестов. В нашем решении управляющий компьютер требует только одного подключения к 2450 (который имеет интерфейсы USB, LAN и GPIB), а уже 2450 управляет коммутатором 3706A. Язык TSP очень прост и может работать лишь в самом приборе, в результате код для выполнения этого конкретного теста превратился из большого блока, отправляющего команды SCPI и выполняющего логическую обработку, в простой вызов сценария!
Реальные результаты говорят сами за себя. Это решение смогло измерить 30 контрольных точек менее чем за 1,25 секунды. Первый вариант, представленный нашему инженеру, отвечающему за измерения сопротивления, работал более 9 секунд. Наше решение сократило время тестирования более чем на 80 %! А как насчёт достоверности? Вспомните, что один из вариантов, представленных инженеру до разговора с нами, был очень быстрый, но не обеспечивал достоверности измерений. Предложенная комбинация приборов дала превосходную стабильность на протяжении нескольких тысяч измерений с разбросом показаний в пределах сотен наноом, что существенно выше необходимой точности.
Итак, к нам обратился инженер, столкнувшийся с проблемой точного и очень быстрого измерения большого числа малых сопротивлений. Правильно подобрав приборы – источник-измеритель в сочетании с цифровым мультиметром/коммутатором, удалось достичь и скорости, и точности. За счёт применения технологии TSP компании Keithley была получена скорость, недостижимая никакими другими решениями. Дополнительная информация о компании Keithley Instruments и её продуктах приведена на сайте tek.com/keithley. Примеры применения TSP для решения многих реальных проблем, а также учебные материалы можно найти на GitHub по ссылке www.github.com/tektronix/keithley.
Ускорение работы с диодами
Тестирование диодов обычно выполняется с помощью источников-измерителей (SMU), таких как 2450 SourceMeter®, из-за их превосходной способности точно подавать ток или напряжение и одновременно точно измерять напряжение и ток. В простых случаях тестирование диодов включает измерение прямого напряжения, обратного тока и обратного напряжения. Каждый из этих тестов требует применения своей измерительной схемы и соответствующего переключения между ними. В процессе измерения параметров одного диода с помощью упомянутых тестов совершается 38 транзакций между выделенным управляющим компьютером и SMU. Перенос этих отдельных шагов в прибор, исполняющий сценарий TSP, сократило число транзакций до 8. В данном случае манипулятор для компонентов тоже может подключаться к цифровым входам/выходам SMU. Кроме того, потребитель может отказаться от выделенного управляющего компьютера, перенеся всю программу в SMU, что сводит число транзакций к нулю и упрощает схему измерений!
Результирующая схема измерений позволяет использовать источник-измеритель для непосредственного управления манипулятором.
Упрощение ручной сортировки
В небольших установках, в которых не предусмотрен автоматический манипулятор компонентов, его функции выполняет оператор. Упрощение этих ручных операций важно не только для увеличения производительности, но и для повышения выхода годной продукции. Если оператору приходится интерпретировать сложные результаты, он может принять неверное решение. Технология Keithley TSP помогает устранить этот источник ошибок, беря на себя полное управление дисплеем или графическим интерфейсом прибора. Один производитель прецизионных резисторов использовал TSP и SMU для отображения номера лотка, куда нужно положить проверенный резистор. Это сильно упростило жизнь операторам, устранив потребность в ручных расчётах для определения нужного лотка. Это было ещё одним примером запуска TSP полностью на самом приборе, так что производителю не пришлось покупать дополнительные компьютеры или оборудование для улучшения технологического процесса.
Источник-измеритель использовался для отображения номера лотка для резистора прямо на передней панели.