Использование Wi-Fi модуля семейства ZG2100 компании Microchip совместно с процессорами SiLabs.

 

(Using Wi-Fi module family ZG2100 Microchip's co-processors SiLabs.)

 

Модули ZG2100MC привлекли меня своей невысокой ценой, определенной доступностью, и заверениями продавца в их высокой экономичности ( последнее, впрочем, оказалось не более чем рекламой). Дистрибютор так же убеждал меня в неимоверной простоте создания устройств на базе предлагаемого модуля. Правда жизни оказалась на много более прозаичной. Коммерческая стратегия компании Microchip, на мой непросвещенный взгляд, заключается в том, чтобы заставить разработчика использовать в проектах процессоры исключительно Microchip и никак иначе. Компания предлагает свои готовые библиотеки для разработки систем на на базе PIC-контроллеров и полностью закрывает информацию о внутренней структуре, регистрах и работе модуля ZG2100MC. К своему стыду, я не работаю с контроллерами Microchip, наверное это предубеждение, но пересилить себя не могу. Поэтому, разработка устройства совмещающего ZG2100MC и C8051F340 была скорее торжеством духа над разумом и не поддавалась какому -то логическому и коммерческому обоснованию. Мои многочисленные стенания на самых различных радиофорумах не принесли ни какой пользы, учавствовать в этой авантюре никто не захотел. К счастию, в ряду своих близких друзей, я имею несколько приличных (в отличии от меня самого ) программистов. Один из них ( V.Ronkin), будучи человеком увлекающимся, сумел преодолеть сопротивление Microchip и трансформировать взятый за исходное продукт, в нечто вменяемое, и даже полезное в работе. Другой (Мike Shved), кстати, мой сын, написал тестовую программу, которая позволила нам быстро отладить всю эту ерунду. За основу мы взяли известный проект ( http://www.heesch.net/wireless-rgb.aspx ). Большую часть оттуда выкинули сразу и попробовали модифицировать ZG2100 Driver под наш набор команд. Причем, изначально я пытался разработать систему, способную решить определенную задачу - передачу непрерывного потока данных по протоколу UDP, без необходимости инициации каждого передаваемого пакета. В общем, некий микс между клиентом и сервером. Поставленная задача была решена, и на мой взгляд, даже успешно. Передача данных сервером инициируется приемом пакета от клиента, далее пакеты формируются и передаются в сеть по прерыванию таймера сервера.Прерывается поток данных так же по приходу пакета от клиента.То есть, имея сеть. включающую в себя несколько подобных устройств, каждое, обладающее своим IP-адресом, я могу поочередно опрашивать каждое устройство, не сильно перегружая сеть.

В прилагаемом архиве - отладочная плата для модуля, проект SILABS и тестовая программа для отладки устройства.

 

 

Несколько замечаний по проекту:

Питается все от стабилизатора C8051F340, то есть, достаточно подключить USB кабель.

Джампер - для измерения потребляемого тока.

Разьем на три пина - для программирования и отладки C8051F340.

В файле wlan.c укажите

название своей сети - у меня - code const char ssid[]={"shved"};

тип шифрования - у меня - unsigned char security_type = ZG_SECURITY_TYPE_WPA2;

пароль - у меня - code const char security_passphrase[] = {"8848884888"};

IP-адрес;

Порт;

После сбороса ( либо подачи питания на плату ) модуль инициализируется, и пытается подключиться к сети. При этом, горит светодиод. Если подсоединение состоялось - светодиод гаснет. В зависимости от типа шифрования и чего-то еще, этот процесс занимает 20-50 секунд. После этого, можно запускать тестовую программу, предварительно убедившись, в соответствии IP-адреса и порта, прошитому в устройстве. Первое нажатие на кнопку "Send" приводит к к появлению в сети ARP пакета, следующее нажатие - UDP пакета, и инициации потока данных от сервера к клиенту. За один раз, выбрасывается пачка, состоящая из 10 пакетов по 512 байт. Каждый пакет отличается от предыдущего записанным в него числом (для контроля потери пакетов). В дальнейшем, поток данных не прерывается.

Устройство тестировалось на двух типах роутеров, Dir320 и NETGEAR. При необходимости, воспользуйтесь Wireshark для отслеживания пакетов. Я сознательно не стал убирать закомментированные строки, дабы был осязаем напряженный процесс нашей умственной деятельности. Буду благодарен информации обо всех обнаруженных ошибках, коих в программе должно быть немало. Еще один вопрос, который меня сильно занимает-экономичность устройства. При активном CE_N модуль потребляет около 60 mA если модуль отключить-ток падает, но затем, при очередной активации модуля, снова повторяется процедура подключения к сети.

 

Загрузить файлы проекта

 

( Выложено на сайт     WWW.SUGAN.COM.UA     07.01.2012 ).

 

 

 

Вопросы разработки малых индустриальных локальных сетей.

 

К данному типу сетей (МИЛС) я отношу локальные сети многофункциональных контроллеров, использующих один сетевой протокол,  работающих автономно либо под управлением  программы запущенной на персональном компьютере (ПК) и обслуживающих одно, функционально автономное индустриальное устройство. МИЛСы занимают нишу локальных сетей с ограниченным числом узлов (20-30) и общей протяженностью сети 100-200 метров.

В отличие от распространенных сетей на ПЛК (программируемых логических контроллерах) типичным представителем которых является продукция фирмы OMRON, МИЛСы, за счет упрощенного интерфейса и отсутствия избыточных функций дают возможность разработчику быстро и экономно решать вопросы управления и автоматизации  локальных индустриальных объектов. Причем, это касается как разработки программного обеспечения, так и конструированию самих контроллеров сети.

Целью этой статьи является демонстрация конкретных инженерных решений по разработке и применению МИЛСов на примере сети «Sugan», хорошо зарекомендовавшей себя при организации систем управления ростовыми печами             «Кристалл», используемых  для выращивания сцинтилляционных монокристаллов методом Чохральского. Первая установка с системой управления, работающая на изложенных ниже принципах была запущена в эксплуатацию в НТК "Институт монокристаллов" в 2002 году. Естественно, что конфигурация сети легко может быть адаптирована к решению других задач.

 

Архитектура и интерфейс сети "Sugan".

 

Архитектура и интерфейс сети, определяется спецификой  и условиями функционирования данного типа сетей. Это, прежде всего, требование высокой надежности сети, способность контроллеров выполнять свои задачи при выходе из строя отдельных  узлов сети, способность работать в условиях  неблагоприятной электромагнитной среды. Предъявляемым требованиям, на мой взгляд, лучше всего отвечает сеть на базе интерфейса RS-485 (EIA/TIA-485) [Стандарт485] с топологией  «шина», использующая в качестве шинного арбитража метод передачи маркера. Такая идеология построения сети, оптимально использует возможности микропроцессоров контроллеров для организации межконтроллерного обмена в режиме UART с высоким девятым битом данных.

 Контроллеры сети соединяются между собой  посредством стандартного сетевого кабеля содержащего 4 витых пары, две из которых используются для питания контроллеров сети (+9V_NET, GND_NET), одна – собственно RS-485, и еще одна – дискретный сигнал «Alarm», и  разъемов DB9. 

 

 

Рис.1 Структурная схема установки  « Кристалл ».

 

BUT1, 2, 3 – блок управления тиристорами, система регулирующая мощность, подаваемую на нагреватели.

ADC1, 2, 3 – аналогово-цифровой преобразователь, измеряющий температуру посредством платиновой термопары.

TERMINAL – аварийный терминал, предназначен для управления системой при выходе из строя ПК либо конвертора интерфейсов USB-RS-485.

RUR – регулятор уровня расплава. Устанавливает в 1 уровень сигнала « Alarm » при касании зеркалом расплава платинового щупа.

USB<>RS485 – конвертор интерфейсов.

 

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

 

Особенности реализации сети "Sugan".

 

Все устройства, функционирующие в сети  «Sugan»,  делятся на два типа, активные и пассивные. Такое разделение позволяет исключить из перечня устройств, получающих контроль над передачей данных в сети, те устройства, которые в таком контроле не нуждаются. В качестве примера можно привести контроллер АЦП термопары. Если его данные в настоящий момент никого не интересуют, зачем предоставлять ему возможность управлять потоком данных в сети? Такой подход позволяет оптимально перераспределить время контроля над сетью между теми устройствами, которые в таком контроле действительно нуждаются. Активные устройства способны принимать  маркер от других активных устройств сети, и передавать маркер другим активным устройствам сети. Диапазон адресов активных устройств сети  «Sugan» 0x00H – 0x0FH. Адрес ПК - 0x00H. Таким образом, количество активных устройств в сети не превышает 16. Это ограничение связано с тем, что в качестве базового адреса активных устройств используется младшая тетрада адресного байта пакета команда/данные. Понятно, что это ограничение можно легко обойти, но для МИЛСов такое количество активных устройств более чем достаточно.

 

Ряд пассивных устройств, жестко связанных с активными устройствами (например, пассивный контроллер АЦП связанный с  активным блоком управления тиристорами, обслуживающие один и тот же нагреватель) имеют адреса, совпадающие в младшей тетраде. Например, адрес BUT3 - 0001011B, адрес AD3 -0011011B. Это позволяет использовать для задания адресов на плате контроллера сборку из четырех переключателей. То есть, базовую часть адреса контроллер при инициализации считывает с блока переключателей, а оставшуюся часть дописывает программно, исходя из своего функционального назначения.

Пассивные устройства не участвуют в процессе циркуляции маркера в сети, и вступают в процедуры приема команд и передаче данных, инициированных активными устройствами. Всего, допускается функционирование 64 устройств  (16 активных и 48 пассивных) в адресном пространстве сети.       

Питание для контроллеров сети - (+9V_NET) подается от активных устройств - БУТов.  Диод D4  и резистор R14 служат для выравнивания напряжений, подаваемых от нескольких БУТов на одну шину. Диод D4 также предохраняет обесточенный БУТ от запитанной шины (+9V_NET). Такой распределенный источник питания позволяет не только улучшить масс-габаритные характеристики контроллеров, но и обеспечить работоспособность сети, при выходе из строя отдельных контроллеров.

 

Формат пакетов в сети "Sugan".

 

Первый (адресный) байт пакета содержит информацию об адресе устройства, которому предназначен пакет, и о назначении пакета – передача маркера, либо передача команда/данные (7 бит).

 

Структура первого (адресного) байта пакета.

 

X000XXXX

Адреса активных устройств

X001XXXX

Адреса сопряженных пассивных устройств первого уровня

X010XXXX

Адреса сопряженных пассивных устройств второго уровня

X100XXXX

Адреса иных пассивных устройств .

7 бит

1-передача маркера, 0-команды и данные.

 

Пакет передачи маркера состоит из 3 байт. Второй байт всегда 0x55H, третий байт - контрольная сумма. Например, пакет передачи маркера ПК (конвертору USB/RS-485),  выглядит следующим образом: 0x80H, 0x55H, 0x2BH. Причем, первый байт передается с высоким девятым битом, остальные – с низким.  Подтверждение приема маркера - возвращение той же последовательности, но  все байты передаются с низким девятым битом.

При получении маркера, активное устройство останавливает процедуру регенерации маркера и запускает таймер, отсчитывающий время удержания маркера. Пока это время не истекло, активное устройство реализует свои потребности в обмене с другими устройствами. По истечению времени удержания маркера, активное устройство с номером Numb пытается передать маркер устройству с номером Numb+1. Не получив в течении определенного времени подтверждения приема маркера устройством с номером Numb+1, устройство пытается передать маркер устройству с номером Numb+2. После номера 0x0FH, вызывается номер 0x00H (то есть ПК). Если, в процессе передачи маркера устройство вернулось к собственному номеру, не получив подтверждения в приеме маркера другими устройствами, устройство с номером Numb считает себя снова обладателем маркера и перезапускает таймер, отсчитывающий время удержания маркера. Таким образом, сеть будет функционировать даже при наличии одного активного устройства в сети. При подтверждении передачи маркера устройство запускает процедуру регенерации маркера.

ПК, посредством специальной команды, может запретить  передачу маркера конвертором USB/RS-485 контроллерам сети,  в этом случае он восстанавливается в системе процедурой регенерации маркера.

Пакет передачи команд/данных состоит из 9 байт. Второй байт всегда 0x55H, третий байт – байт-команда, 4,5,6,7,8-байты данных, 9 байт – контрольная сумма. Здесь, аналогично пакету передачи маркера, первый байт также передается с высоким девятым битом, остальные – с низким. В ответ контроллер передает пакет, состоящий из 9 байт, все с низким девятым битом, содержащим либо затребованные данные, либо подтверждение приема команды. Второй байт - метка 0x55H и девятый байт -  контрольная сумма  входят в состав ответного пакета. Наличие байта-метки 0x55H, упрощает сортировку пакетов в ПК, контрольная сумма позволяет отсортировать сбойные пакеты.  

 

Процедура регенерации маркера.

 

Потеря маркера в системе является одной из самых опасных коллизий для сетей с циркуляцией маркера. Для предотвращения такой коллизии реализована следующая процедура, которая  перезапускается в трех случаях:

 

  1. После системного сброса процессора контроллера (например, при включении питания или срабатывании  сторожевого таймера (WDT)).
  2. После приема байта, с высоким девятым битом, младшая тетрада которого не совпадает с адресом данного устройства.
  3. После успешной передачи маркера другому устройству.

 

При этом, процессор начинает отсчет временного интервала, который можно представить как T = X*t+Numb*t.  Где t- интервал, определяемый переполнением задействованного в этой процедуре таймера процессора, X-число, выбираемое в зависимости от того, сколько времени активное устройство обладает маркером до начала процесса его передачи,  Numb – сетевой номер активного устройства. По истечению этого интервала контроллер выдает в сеть пакет передачи маркера со своим номером, (который перезапускает процедуру регенерации маркера на всех, не успевшие захватить маркер контроллерах) и, не ожидая ответа, считает себя обладателем  маркера.

 Таким образом, при одновременной подаче питания на все контроллеры сети,  маркер захватывает контроллер с младшим номером. Теперь становится ясным необходимость присвоить ПК адрес 0x00H. Так как ПК, посредством специальной команды, может запретить  передачу маркера конвертором USB/RS-485 контроллерам сети, и маркер будет потерян, процедура регенерации маркера даст возможность захватить маркер устройству, с младшим номером, и исключает возможность пропуска каких либо активных устройств в очереди на обладание маркером. Очевидно, что величины X и t должны быть одинаковыми для всех активных устройств сети. Кстати, ПК не участвует в захвате маркера. Это связано с тем, что  питание для пассивных устройств сети представляют активные устройства. При их отсутствии, сеть обесточена, и ПК нет никакого смысла пытаться инициировать какой-то обмен.

(Это специфика конкретной реализации сети, при необходимости, такой запрет может быть снят).

Наличие такого механизма позволяет производить горячее подключение активных и пассивных устройств к сети, не беспокоясь о сбоях в системе циркуляции маркера

 

Конвертор интерфейсов USB/RS-485.

 

Надежность сети и простота разработки программного обеспечения в большой мере определяются конструкцией и внутренним протоколом конвертора интерфейсов USB/RS-485 связывающим сеть «Sugan» с управляющим ПК. На момент ввода в эксплуатацию первых систем управления на базе сети «Sugan»  (2002 год) сеть сопрягалась с ПК по последовательному порту RS-232. При этом, ПК работал под управлением операционной системы QNX (операционная система реального времени, обеспечивающая прямую работа с регистрами UART). Связано это было прежде всего с тем, что я не сумел реализовать надежную идентификацию высокого девятого бита при работе с OS Windows. Такой конвертор RS-232/RS-485 был достаточно неудобен. Питание  в сторону RS-232  приходилось подавать посредством  гальванически развязанного преобразователя DC-DC, и главное, весь объем задач по первичной обработке пакетов ложился на ПК. Затем я все же перешел на OS Windows XP и  реализовали конвертор USB/RS-485   на паре  FT245+C8051F330. В настоящее время эта задача достаточно просто решается при использовании процессора C8051F340. Этот процессор, с одной стороны,  позволяет чрезвычайно легко организовать с ПК обмен пакетами произвольной длины по USB порту, с  другой стороны, обладает всеми аппаратными возможностями для работы с 9 высоким битом данных по UART. К тому же сверхпроизводительный восьмиразрядный процессор с тактовой частотой 48 МГц  позволяет возложить на него большинство задач по организации обмена между ПК и контроллерами сети. ПК связывается с  конвертором  посредством восьмибайтных пакетов, повторяющих формат пакетов сети, за исключением девятого байта – байта контрольной суммы. Основной режим работы конвертора – режим прозрачности, когда весь информационный обмен между контроллерами сети передается ПК. ПК, специальной командой, может замаскировать адреса устройств, то есть, в ПК будут передаваться пакеты генерируемые контроллером с адресом, совпадающим с адресом  маски. В трех старших битах первого байта пакета, конвертор передает ПК  свое BSW (Block Status Word – слово состояния блока). В частности, высокий седьмой бит свидетельствует о переполнении буфера передатчика конвертора. Шестой бит отражает состояние линии   «Alarm» . При передаче команд адресованных конвертору, а также, при передаче служебной информации от конвертора к ПК используется нулевой адрес. То есть, получив пакет, с нулями в семи младших битах первого байта пакета, конвертора воспринимает его как служебную команду, не обрабатывает и не помещает в буфер передачи. Вычленив из обмена в сети пакет, команда/данные, конвертор проверяет корректность контрольной суммы пакета, отбрасывает девятый байт (контрольная сумма), дописывает в первый байт BSW (7,6,5 биты) и отправляет модифицированный пакет ПК посредством USB интерфейса. Таким же образом, получив от ПК пакет, команда/данные (8 байт), конвертор подсчитывает его контрольную сумма и прописывает ее в 9 байт, затем помещает этот модифицированный пакет в буфер передачи конвертора. Таким образом, в буфере передачи накапливаются подготовленные пакеты, и как только конвертор получает маркер, эти пакеты передаются в сеть. Программа конвертора предусматривает устранение коллизии, связанной с отсутствием в сети устройства, для которого в буфере передачи имеется подготовленный пакет. Отсутствие такой блокировки может привести к зависанию обмена при выходе из строя какого-либо контроллера.

 

У всех контроллеров сети имеется унифицированный модуль, обслуживающий интерфейс RS-485. Характерной особенностью этого модуля является использование транзистора T2 в цепи управления направлением прием/передача ADM485. Это сделано для того, чтобы при сбросе процессора контроллера, когда его выводы находятся в высокоимпедансном состоянии, ADM485 не перешел в состояние – передача данных, и не помешал текущему обмену в сети. Такой механизм обеспечивает корректное горячее подключение контроллеров сети. Самовосстанавливающиеся предохранители U2 позволяет отрезать блок по питанию от +9V_NET, и тем самым, сохранить работоспособность остальных контроллеров сети, в случае нештатной работы блока конвертора. Термистор U10, защищает ПК от похожих проблем. Свечение светодиодов VD1 и VD2 свидетельствует о штатной работе блока. R21, R22 - смещающие резисторы для  RS-485. Их номинал подбирается в зависимости от предполагаемого количества контроллеров в МИЛС. R20 – терминальный резистор витой пары, впаивается в разъем DB9 на двух концах сети.

 

 

Рис.2 Принципиальная схема конвертора интерфейсов USB/RS-485 сети « Sugan ».

 

Команды управления конвертора интерфейсов USB/RS-485 сети « Sugan »

 

 

Команда.

Код.

1.

Разрешить/запретить работу в сети.

 

2.

Разрешить/запретить передачу маркера.

 

3.

Наложить маску на адреса сетевых контроллеров.

 

4.

Установить время удержания маркера.

 

5.

Передать ПК список адресов активных контроллеров.

 

6.

Очистить список адресов активных контроллеров.

 

7.

Очистить буфер передачи команд/данных в сеть.

 

8.

Запретить захват маркера конвертором интерфейсов USB/RS-485.

 

 

Блок управления тиристорами.

 

Блок управления тиристорами (БУТ)  предназначен для обеспечения заданной температуры (либо мощности) на нагревательном элементе. Блок является активным устройством и работает в паре с пассивным блоком АЦП обеспечивающем измерение температуры на том же нагревательном элементе. Блок АЦП имеет тот же адрес, что и БУТ, разница в 4 бите (у БУТа – 0, у АЦП – 1). В зависимости от необходимого тока нагрузки, блок может управлять как парой тиристоров, включенных во встречном направлении, так и мощным  симистором.

 

 

Рис.3 Принципиальная схема блока управления тиристорами.

 

 

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

 БУТ способен поддерживать два режима работы, автоматический - режим постоянной температуры, и ручной – режим постоянной мощности. Метод управления мощностью - фазовый. 

После инициализации процессор извлекает из флеш-памяти необходимую информацию и переносит ее в оперативную память. Затем, считывает с блока ключей (U3) четырехбитное слово, которое также заносится в оперативную память в качестве сетевого адреса контроллера. Трансформатор TR содержит две вторичных обмотки, первая – используется для питания БУТа и обеспечения питанием контроллеров сети, вторая – в качестве датчика напряжения на нагрузке. Очевидно, что мощность трансформатора TR должна в несколько раз превышать суммарную мощность потребляющих устройств, чтобы не дать обмоткам трансформатора приблизится к насыщению и исказить результаты измерения напряжения. Для идентификации перехода через ноль сетевого напряжения используется компаратор (входы P1.4, P1.5). В момент начала роста входного напряжения, процессор запускает процедуру измерения мощности текущего полупериода сетевого напряжения. Вплоть до того момента, когда компаратор зафиксирует новый переход через ноль, процессор, посредством встроенного 10- разрядного АЦП измеряет напряжение на входе P0.7, возводит полученный результат в квадрат и суммирует с предыдущими  результатами измерений. Таким образом, по истечению полупериода сетевого напряжения процессор имеет результат, характеризующий мощность этого полупериода. Этот результат воспринимается как максимально возможная в данный момент мощность, подаваемая на нагреватель - Pact. Она в большую или меньшую сторону может отличаться от 100% мощности – P100% (мощность, измеренная при напряжении 220V и записанная в память контроллера как константа). Следующий полупериод тоже измеряется,  и результат записывается в оперативную память. Такой подход связан с тем, что соседние полупериоды сетевого напряжения могут быть не симметричными, и регулировать мощность в текущем полупериоде на основании данных о мощности предыдущего не корректно. Следующий полупериод уже предполагает подачу мощности в нагрузку. Предположим, что текущая мощность, подаваемая в нагрузку должна составлять 25%. После перехода через ноль процессор запускает процедуру измерения мощности. Когда текущая измеренная мощность достигнет значения  Pact - P100%*25/100 ,  процессор меняет состояние выхода P1.0, что приводит к формированию мультивибратором U12 строба определенной длительности, который открывает симистор U8, который в свою очередь открывает выходной симистор U11. Исходя из этого, до конца текущего полупериода на нагреватель будет подана мощность, составляющая 25% от базовой мощности P100%, выбранной в качестве константы. Результат мощности полупериода Pact каждый раз обновляется, что позволяет стабилизировать мощность, подаваемую на нагреватель при изменении входного напряжения сети. Использование мультивибратора для формирования строба, открывающего симистор, позволяет избежать ситуации подачи максимальной мощности в нагрузку при зависании процессора. Транзистор T1 используется для того, чтобы избежать перехода U5 в состояние передачи в линию при сбросе процессора U2. Вся схема БУТа находится под потенциалом сети (GND_NET) и развязана от источника питания трансформатором TR и оптосимистором U8.

 

Блок АЦП.

 

Блок АЦП предназначен для измерения температуры нагревателей и работает как автономно, под управлением ПК, так и в паре с блоком управления тиристорами. В последнем случае сетевой адрес блока АЦП совпадает с адресом соответствующего БУТа, различие в четвертом бите, у блока АЦП - 1, так как устройство пассивное. Блок способен работать с 4 термопарами при дифференциальном подключении, и с 8 термопарами, при подключении с общей землей, но в конкретном применении, для повышения надежности системы, обслуживает одну термопару.

Принципиальная схема блока подобна схеме блока конвертора интерфейсов USB/RS-485. Питание на процессор подается от сети (+9V_NET) посредством гальванически развязанного преобразователя. Сетевой адрес устанавливается блоком ключей, как и в случае с БУТом.

 

 

Рис.4 Принципиальная схема блока АЦП.

 

Модификация сети "Sugan" для выращивания монокристаллов методом Стокбаргера.

 

 

Суть выращивания кристаллов методом Стокбаргера, заключается в том, что кристалл растет в колбе, перемещаемой в градиентном тепловом поле из горячей зоны в холодную. Температура горячей зоны выше температуры кристаллизации, холодной -ниже. Этот метод, в отличие от метода выращивания кристаллов на установках «Кристалл», требует управления и контроля температуры минимум в 4 зонах. (Для формирования нужного температурного градиента). Однако и мощности, подаваемые на нагреватели, на порядок ниже.

 

 

5 Структурная схема установки для выращивания кристаллов методом Стокбаргера.

 

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

 

 

Рис.6 Принципиальная схема блока управления тиристорами для выращивания кристаллов методом Стокбаргера.

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

 

 

 

 

   Выложено на сайт     WWW.SUGAN.COM.UA     07.10.2010. Дополнено 15.04.18

   ® SUGAN

   Все права на материалы, размещенные на сайте, охраняются в соответствии с законодательством Украины.

Locations of visitors to this page