Вы зашли на страницу описания комплекса автоматизации физического эксперимента для проведения магнитотранспортных измерений на постоянном или переменном токе. Этот комплекс создан в Физико-Техническом Институте имени Иоффе РАН в Санкт-Петербурге в лаборатории кинетических явлений в твёрдом теле при низких температурах Парфеньева Р.В.
Для навигации по страницам справки используйте ссылки в левой части заголовка каждой страницы. Контекстная навигация внутри каждой страницы расположена справа. Между ними находится краткое описание содержимого раздела справки.
В главном разделе собрана информация общая для всего комплекса - назначение и состав комплекса, рассказ о выборе программной среды и сравнение разных подходов, советы по подключению цифровых приборов, в конце раздела приведена контактная информация.
Как следует из названия, комплекс предназначен для измерения удельных сопротивлений образцов с использованием двух методик - на постоянном токе и на переменном токе через образец. В обоих случаях регистрируются два основных сигнала, которые могут коммутироваться на различные контакты образца.
Комплекс представляет собой новое поколение в системе сбора, хранения и обработки информации. Исторически сложилось, что интегрированная система измерений поддерживалась с самого первого комплекса автоматизации, разработанного автором на базе компьютера ДВК, системы КАМАК и бытового телевизора. Для своего времени это был прорыв в производительности измерений, получивший первую премию ФТИ за автоматизацию.
Вторым поколением была автоматизация измерений в импульсном магнитном поле, сделанная на базе LabView. Версии этой автоматизации до сих пор успешно работают в физической лаборатории Вихури университета Турку и в отделении физики технологического университета Лаппеенранты.
Нынешний комплекс соблюдает приемственность и собирает в себе все лучшие черты своих предшественников. Прежде всего это - интегрированная среда для обслуживания всего рабочего цикла проведения эксперимента - от описания образцов до итоговой кривой - проведение самих экспериментов, упорядочение данных измерений, хранение, поиск и обработка данных. Система "всё включено" сильно экономит время и нервы экспериментатора, это удобство, скорость и эффективность.
Во всех программах комплекса проведена оптимизация интерфейса - это означает, что всё важное всегда находится перед глазами и одним взглядом можно оценить общее положение дел. В то же время на передней панели нет ничего лишнего. Комплекс старается решить все проблемы сам и обращается к экспериментатору только для принятия ключевых решений. Многолетняя совместная работа с настоящими экспериментаторами позволила сделать непростой выбор, какие из параметров являются важными. Автор выражает глубокую благодарность сотрудникам лаборатории Парфеньева, без использования опыта работы которых создание комплекса было бы невозможным.
Гибкая система настроек ключевых параметров позволяет адаптировать работу комплекса к конкретным измерениям. Во всех программах комплекса эти параметры сохраняются между включениями установки, так что можно однажды выбрать свой стиль работы, который будет восстанавливаться при каждом старте.
Традиционное внимание уделяется автоматическому выбору режима работы, обеспечивающему максимальное отношение сигнал/шум. Для этого комплекс старается максимально уменьшить паузы в измерениях всех приборов для последующего накопления и усреднения.
Как и в самой первой версии для ДВК, вольтметры общего назначения взаимозаменяемы, то есть любой из них можно назначить на измерение любого канала измерений. Разумеется, в своём классе - не стоит пытаться использовать вольтметр общего назначения вместо синхронного детектора или термоконтроллера.
Быстрая специализированная обработка результатов измерений в редакторе данных - огромное преимущество интегрированных сред эксперимента. Если сравнивать скорость обработки в специализированной среде со скоростью обработки в редакторе общего назначения, например в программе Origin - разница будет на порядки, среда экономит недели монотонной работы.
Упорядоченное хранение результатов эксперимента - ещё одно преимущество интегрированной среды. Во втором поколении (для импульсного поля) для упорядочения информации использовалась иерархическая структура файловой системы Windows. При этом имена файлов внутри отдельного каталога жёстко задавались средой, но выбор и взаимное положение самих каталогов были произвольными и отдавались на откуп пользователю. Как показала практика, в деле хранения данных свобода выбора в конечном счёте оборачивается низкой эффективностью. Поэтому в нашем комплексе используется принципиально новый подход к хранению данных - в реляционной базе данных на сервере в интернете. Это обеспечивает простой доступ к экспериментальным данным из любой точки земного шара, автоматическое упорядочение данных, мгновенный поиск нужных данных и надёжную защиту от потери данных и несанкционированного доступа . К тому же новый подход позволяет забыть о переносных носителях - теперь данные хранятся на сервере в интернете и носить их с собой нет необходимости.
Среди новинок в работе с железом - полная устойчивость к ошибкам аппаратуры. Задержки в работе, сбои и даже отключение цифровых приборов никоим образом не снижают готовность и функциональность программ комплекса. Если какое-то цифровое значение померить не удалось, вместо него записывается NaN (not a number), а логика работы не нарушается.
Новая концепция лёгкого старта эксперимента значительно повышает надёжность измерений и делает момент начала эксперимента чисто логическим событием.
Стабилизация температуры образца производится с помощью термоконтроллера LakeShore 340 , управление которым осуществляется отдельной независимой программой комплекса . Это позволяет использовать одну программу для разных методик измерения, в нашем случае это измерения на постоянном и переменном токе .
Парк приборов для регистрации сигналов на постоянном токе составляют три вольтметра Agilent 34410A и один вольтметр Keithley 2000 . Все эти вольтметры общего назначения взаимозаменяемы и любой из них можно назначить на измерение любого источника сигнала.
Для измерения на переменном токе используются два синхронных детектора фирмы Signal Recovery 7265 и Stanford Research SR830 . Поскольку их всего два, используются они оба и при выходе из строя заменять их нечем, говорить о взаимозаменяемости было бы немного странно. Кроме того, для точного измерения температуры в районе гелия используется датчик давления паров гелия, обозначенный как P .
Цифровые сигналы с приборов используются в программах регистрации эксперимента для переменного тока AC и постоянного тока DC . В процессе измерений данные записываются в локальную базу данных . База данных может находиться как на локальном компьютере, так и на удалённом сервере, в любом случае соединение с ней происходит по IP протоколу.
Для поиска, просмотра и обработки данных служит редактор данных , который является основным инструментом комплекса.
Все приборы подключаются к компьютеру через оболочку VISA, которая позволяет абстрагироваться от конкретного интерфейса подключения приборов к компьютеру и работать с ними единообразно. Мы используем оболочку Agilent IO Libraries Suite версии 15, предоставляющую COM-интерфейс для управления приборами. Эта оболочка позволяет проверить правильность подключения приборов и назначить им имена. Для подключения выполните следующие действия:
После запуска программы управления термоконтроллером и до завершения её работы запрещается ручное управление термоконтроллером LakeShore и запуск сторонних программ для работы с ним, не входящих в комплекс. Это может привести к потере данных и порче оборудования.
После запуска программ измерений на переменном токе либо на постоянном токе и до завершения их работы запрещается ручное управление всеми цифровыми устройствами, участвующих в проведении эксперимента, а также запуск сторонних программ для работы с ними, не входящих в комплекс. Это может привести к потере данных и порче оборудования.
Рассмотрим процедуру переназначения вольтметра общего назначения для измерения другого канала. Например, вольтметр Keithley раньше измерял ток образца, а нужно, чтобы он стал измерять магнитное поле.
90-е годы прошлого века, когда создавался комплекс автоматизации предыдущего поколения для импульсного магнитного поля, были годами безраздельного господства LabView. В те годы она победно шествовала от одной экспериментальной группы к другой, да и по сей день является фактически лабораторным стандартом для автоматизации во всём мире. Для победы был использован ряд чрезвычайно удачных маркетинговых приёмов, обращённых непосредственно к экспериментаторам. На флаг Labview подняла идею визуального программирования потоков данных. Подобно тому, как приборы соединяются проводами, так и программные блоки соединяются линиями, по которым текут данные, это близко и понятно любому специалисту по электронике. На второй флаг был поднят лозунг программирование без написания программ. В самом деле, ведь создать блок схему из кубиков и соединить их линиями - это скорее детская игра, чем программирование. Наверняка у меня это получится. Гениальный ход! Наконец, LabView обещала (и даже выполняла обещания) обеспечить совместимость практически со всеми цифровыми приборами. К тому же код, однажды нарисованный в LabView, можно было запускать в разных операционных системах. Поэтому вполне естественно, что комплекс был выполнен в среде LabView.
Отрезвление пришло не сразу и к сожалению в момент, когда отыграть назад было уже нельзя. Во-первых, оказалось, что в программировании потоки данных иногда адекватно предствляют суть программы, но в большинстве случаев только создают массу неудобств программисту. Если для простых модельных примеров вроде подлючения вольтметра всё просто и красиво, то при попытках создать серьёзный программный продукт код получается неочевидный и нечитаемый по сравнению с обычными языками программирования. Вместо нескольких ясных строчек кода пользователю LabView приходится создавать целую картину из значков, этакое Пикассо, при взгляде на которое через месяц даже у самого автора, нарисовавшего подобное, возникает лёгкий ступор - что бы это значило и с какого боку это надо осматривать.
Но настоящий удар LabView нанесла в самом конце разработки. Ладно, пусть неудобно, пусть некрасиво, но всё должно в конце концов работать. Оказалось, что сладкая песня LabView о всеобщей совместимости приборов относится не к самой LabView, а к оболочке VISA, на которую на самом деле перекладывается вся связь с оборудованием и которая устанавливается отдельно. Когда же дело доходит до уникальных приборов и LabView приходится самой с ними работать через порты ввода-вывода - вот тут производительность падает. Реальность превзошла все разумные ожидания - падение скорости работы была на три порядка! То есть одиночное обращение к порту из программы на С занимало несколько микросекунд, а из Labview - несколько миллисекунд . В результате для всех критичных частей программы, общающихся с аппаратурой, пришлось делать вставки на языке C.
Настоящий комплекс целиком реализован в среде .NET Framework, созданной и активно пропогандируемой Microsoft. Давайте сравним эти два конкурирующих подхода.
Структура работы с измерительными приборами
из различных программных сред
На схеме языки программирования представлены стопками с волнистой линией внизу, фиолетовые заголовки отображают среды программирования, оранжевые прямоугольники - служебные программы, установленные в операционной системе, а зелёные коммуникаторы - интерфейсы подключаемых цифровых приборов.
Идея, взятая за основу обоих разработок одна и та же - создать некий универсальный язык, который можно было бы выполнять на разных платформах без изменений (под платформами понимаются все версии Windows, все клоны Unix, MAC и даже мобильные устройства). Если для LabView в этой роли выступает язык графического программирования G, то Microsoft разработала язык для процессора своей мечты MSIL - Microsoft Intermediate Language. Все программы записываются на этом универсальном языке, а во время запуска программы интерпретируются соответствующей средой - либо LabView Runtime, либо .NET Framework. Два одинаковых подхода, а как различается результат! Если в одном случае потери в скорости могут достигать до 1000 раз, то в другом можно добиться даже выигрыша в скорости выполнения. Это звучит невероятно - как интерпретируемая программа может быть быстрее программы, написанной и оптимизированной для именно этого процессора? Но это так. Главный секрет Microsoft - экономия ресурсов компьютера. Использование ленивых вычислений позволяет загружать только самые необходимые на данный момент ресурсы, и только в последний момент, когда без них уже не обойтись. Куски кода программы тоже считаются ресурсом. Если какой-то кусок выполняется несколько раз, он оперативно переводится в родные машинные коды - это технология JIT - just-in time compilation, а когда надобность в коде отпадает выгружается из памяти. Поэтому заметное увеличение в скорости выполнения в среде .NET Framework даже по сравнению с обычными программами можно ждать на старых машинах с ограниченными ресурсами.
Большим реальным преимуществом технологии .NET является её независимость от компьютера и операционной системы. В самом деле, одна и та же программа будет работать и на Windows XP 32bit и на Windows 7 64bit, всё необходимое для работы будет предоставлено местной редакцией .NET Framework. На первый взгляд LabView тоже предоставляет такую совместимость, но реально все VI довольно жестко завязаны на версию LabView, перевод работающей программы на следующую версию обычно долгий и сложный процесс. А будет ли новая версия Windows поддерживать старую LabView - это ещё вопрос. К тому же старые программы и старое оборудование морально устаревает. При выборе же технологии .NET можно всегда выбирать самые последние обновления программ и топовые компьютеры без необходимости что-то менять в программном обеспечении.
И конечно нельзя не сказать об удобствах и сервисе для программиста. После того, как сменишь среду LabView на Visual Studio первое время кажется, что ты попал в рай.
Для работы с аппаратурой обе платформы используют одну и ту же оболочку - VISA (Virtual Instrument Systems Architecture). Как бы не были приборы подключены к компьютеру, какой бы интерфейс не использовали, VISA позволяет обращаться к ним совершенно одинаково, с помощью языка одних и тех же текстовых команд. Это уровень абстракции от оборудования, который переводит одни и те же команды программы в совершенно разные действия, зависящие от способа подключения прибора.
В нашем комплексе мы используем VISA от компании Agilent, поскольку он предоставляет сервис VISA-COM, при котором на локальном компьютере устанавливается сервер и обращение к приборам происходит через протокол клиент-сервер. Это критично для программ, написанным в среде .NET Framework, потому что они живут в своём собственном мирке и для них высунуться в обычный Windows и вызвать обычный код из DLL связано с большими накладными расходами. COM сервер на локальном компьютере снимает эти ограничения.
Комплекс магнитотранспортных измерений создан в Физико-Техническом Институте имени Иоффе Российской Академии Наук в Санкт-Петербурге в отделении физики диэлектриков и полупроводников, лаборатории кинетических явлений в твёрдом теле при низких температурах Парфеньева Р.В.
Телефон +7 (812) 515-9131, местный 731
Руководитель группы ведущий научный сотрудник д.ф.м.н. Березовец Вячеслав Анатольевич
Главный научный сотрудник д.ф.м.н. Фарбштейн Иосиф Ильич
PhD Сафончик Михаил Олегович
почта: miksafgmail.com
голосовая связь: Skype - miksaf
телефон: +7 (911) 710-1741