Раздел 2. Элементная база системы температурного мониторинга

 

2.1. Датчики температуры


            При тщательном изучении датчиков, которые выпускает или когда-либо выпускала фирма Dallas Semiconductor, был отмечен ряд различий датчиков с одинаковыми обозначениями семейств. Датчики DS18S20, выпускаемые в корпусах TO92, имеют то же семейство, что и выпускавшиеся когда-то датчики DS1820 (в корпусах PR35). Хоть и относятся они к одному типу, о чем свидетельствует идентификатор семейства (0х10), но, по всей видимости, эти датчики сделаны по разным технологиям - это видно из представленных в документации графиков «типичной ошибки» на тот и другой. Это говорит о том, что внутри у них разные АЦП и, возможно, сами термочувствительные элементы разные. Кроме того, интерфейсы получения температуры с высоким разрешением - скорее всего, так же дадут разный результат. Испытано, что в корпусе TO92 градация температуры происходит с минимальным шагом в 1/16 градуса, а в корпусе PR35, следует предположить, что разрешение будет как минимум 0.01. Прошу обратить внимание на то, что разрешение и точность - понятия разные.
            Компания Analog Devices выпускает цифровые температурные датчики, которые конкурируют с далласовским семейством DS18x2x. Это приборы TMP03 и TMP04. Разрядность, с которой они позволяют извлекать температуру выше, чем у DS18x20. Основное отличие - это интерфейс, посредством которого происходит передача температуры из датчика в контроллер (интерфейс более простой). Температура зашифрована в широтно-импульсной модуляции. И для получения значения температуры необходимо регистрировать параметры этой модуляции, а именно - время нахождения в 1 и время нахождения в 0, а потом - из специального соотношения вычисляется температура. Как дополнительную возможность, можно было бы реализовать интерфейс и для этого датчика, но в силу ограниченности взятого адаптера, и, все же, малую распространенность таких датчиков, было решено не тратить на него усилия. Точность, которую дают эти датчики, примерно совпадает с точностью датчиков от Dallas, а вот диапазон температур смещен до 150 градусов, что часто может являться хорошим аргументом в сторону выбора этого датчика.

 

2.2. Общие сведения о датчике температуры DS18S20

 

Рис. 2.2.1. DS18S20 - высокоточный 1-проводный цифровой термометр

 

Отличительные особенности

 

            1. Уникальный 1-проводный интерфейс требует только одного вывода порта для подключения;

            2. Каждое устройство имеет 64-битный уникальный серийный номер, хранящийся в ПЗУ на кристалле;

            3. Возможность многоабонентской работы упрощает создание приложений, осуществляющих распределённое измерение температуры;

            4. Не требует внешних компонентов;

            5. Микросхема может быть запитана от линии данных. Рабочее напряжение от 3 до 5,5 В;

            6. Измеряет температуру от -55 до +125 °C (от -67 до +257 °F);

            7. Точность ±0.5 °C в условиях температуры от -10 до +85 °C;

            8. Разрешение термометра - 9-бит;

            9. Преобразует температуру за 750 мс (максимум);

            10. Задаваемые пользователем энергонезависимые параметры настройки температурных сигналов;

            11. Команда поиска сигнала распознаёт и адресует те устройства, температура которых вне запрограммированных границ (условие температурной сигнализации);

            12. Применяется в управлении термостатированием, промышленных системах, устройствах широкого потребления, термометрах или любых чувствительных к температуре системах.

 

Описание

 

            Цифровой термометр DS18S20 обеспечивает 9-12 битные температурные измерения по шкале Цельсия и имеет сигнальную функцию с верхней и нижней точками переключения, программируемыми пользователем и хранящимися в энергонезависимой памяти (EEPROM). Микросхема DS18S20 подключается через 1-проводную шину, которая по определению требует только одной линии данных (а также общей) для взаимодействия с центральным процессором. Она имеет рабочий температурный диапазон от -55 до +125 °C и точность ±0.5 °C в диапазоне от -10 до +85 °C. Также микросхема DS18S20 может запитываться прямо с линии данных («паразитное питание»), устраняя необходимость во внешнем источнике питания.

 

 

 

Рис. 2.2.2. Структура DS18S20

 

            Данный тип приборов зарегистрирован в Государственном реестре средств измерений под №23169-02 и допущен к применению в Российской Федерации.

 

2.3. Получение десятых и сотых долей градуса


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

, где COUNT_PER_C и COUNT_REMAIN - внутренние регистры АЦП.

 

2.4. Базовая микросхема DS1820 и сеть MicroLAN

 

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

            Базовая микросхема DS1820 является совместимым с сетью 9-разрядным цифровым термометром. Диапазон измеряемых температур составляет от -55 до +125 °С с шагом 0,5 °С. DS1820 состоит из ПЗУ с уникальным идентификационным номером, контроллера MicroLAN, температурного датчика и двух регистров для хранения верхнего и нижнего порогов температуры (рис. 2.4.1).

 

Блок-схема цифрового термометра DS1820

Рис. 2.4.1. Блок-схема цифрового термометра DS1820

 

            Термометр не содержит внутреннего источника, а использует «паразитное» питание от однопроводной шины. Однако при измерении температуры и записи данных в ЭППЗУ ток потребления микросхемы превышает 1 мА, в то время как максимальный ток, который может обеспечить ведущий шины с помощью нагрузочного резистора 1,55 кОм, составляет 3,31 мА. Противоречие разрешается или подключением внешнего источника питания, или питанием по сети, но с заменой нагрузочного резистора на низкоомный открытый ключ, который на время преобразования температуры и записи данных в ЭППЗУ подает на однопроводную шину напряжение питания +5 В. Микросхема имеет встроенный детектор используемого режима питания. Схема подключения DS1820 приведена на рис. 2.4.2.

 

Питание DS1820 с использованием ключа на основе полевого транзистора

Рис. 2.4.2. Питание DS1820 с использованием ключа на основе полевого транзистора

 

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

            После завершения преобразования полученное значение сравнивается с величинами, хранящимися в регистрах TH и TL. Если измеренная температура выходит за установленные пределы, устанавливается сигнальный «флаг» (впрочем, его установка производится после каждого измерения). При установленном «флаге» DS1820 отвечает на команду «Поиск сигнала». Это позволяет быстро идентифицировать точку с отклонениями температуры свыше допустимых пределов и сразу считать показания соответствующего термометра. Если команда «Поиск сигнала» не применяется, регистры TH и TL могут быть использованы как регистры общего назначения.

            Цифровой термометр повышенной точности DS18S20 имеет параметры, аналогичные DS1820, и полностью программно совместим с ним. Основное отличие DS18S20 заключается в том, что в диапазоне измеряемых температур от  -10 до +85 °С точность измерения составляет 0,5 °С. Кроме этого, старший байт регистра температуры содержит бит знака (S), указывающий на положительную или отрицательную температуру.

 

2.5. Электронный термометр на основе DS18S20

 

            Такой термометр должен иметь небольшой по размерам датчик для его легкого размещения на различных объектах, датчик должен иметь маленькую инерционность для возможности быстрого проведения измерений, ну и, конечно, достаточно высокую точность измерений. К тому же, термометр должен быть недорогим. Всем этим требованиям удовлетворяют цифровые датчики температуры, выпускаемые фирмой Dallas Semiconductor (теперь это уже MAXIM), которые могут быть подключены к последовательному порту компьютера.

            Широко распространенная микросхема цифрового термометра DS18S20, выпускаемая фирмой Dallas Semiconductor, обеспечивает измерение температуры в диапазоне от –55 до +125 °C с дискретностью 0,5 °C. Стоимость микросхемы DS18S20 составляет примерно 3,5 $, стоимость адаптера для подключения её к COM-порту компьютера – 26 $.


Рис. 2.5.1. Внешний вид микросхемы цифрового термометра DS18S20

 

            С помощью дополнительных вычислений дискретность представления температуры можно уменьшить, в нашем случае она равна 0,1 °C. Самым привлекательным является то, что такой термометр уже откалиброван на заводе, гарантированная точность составляет ±0,5 °C в диапазоне от –10 до +85 °C и ±2 °C во всем диапазоне рабочих температур. Типичная кривая ошибки измерения температуры приведена на рис. 2.5.2.

 


Рис. 2.5.2. Типичная кривая ошибки термометра DS18S20

 

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

            DS18S20 допускает напряжение питания от +3 до +5,5 В. В режиме ожидания потребляемый ток близок к нулю (менее 1 мкА), а во время преобразования температуры он равен примерно 1 мА. Процесс преобразования длится максимум 750 мс.

            Принцип действия цифровых датчиков температуры фирмы Dallas Semiconductor основан на подсчете количества импульсов, вырабатываемых генератором с низким температурным коэффициентом во временном интервале, который формируется генератором с большим температурным коэффициентом. Счетчик инициализируется значением, соответствующим –55 °C (минимальной измеряемой температуре). Если счетчик достигает нуля перед тем, как заканчивается временной интервал (это означает, что температура больше –55 °C), то регистр температуры, который также инициализирован значением –55 °C, инкрементируется. Одновременно счетчик предустанавливается новым значением, которое задается схемой формирования наклона характеристики. Эта схема нужна для компенсации параболической зависимости частот генераторов от температуры. Счетчик снова начинает работать, и если он опять достигает нуля, когда интервал еще не закончен, процесс повторяется снова. Схема формирования наклона загружает счетчик значениями, которые соответствуют количеству импульсов генератора на один градус Цельсия для каждого конкретного значения температуры. По окончанию процесса преобразования регистр температуры будет содержать значение температуры.

            Для DS18S20 температура представляется в виде 9-битного значения в дополнительном коде. Поскольку это значение занимает 2 байта, все разряды старшего байта равны знаковому разряду. Дискретность представления температуры составляет 0,5 °C. Зависимость выходного кода от температуры приведена в таблице:

 

 

 

 

Температура

Выходной код (Binary)

Выходной код (Hex)

Ст. байт

Мл. байт

+125 °C

0000 0000

1111 1010

00FAh

+25 °C

0000 0000

0011 0010

0032h

+0,5 °C

0000 0000

0000 0001

0001h

0 °C

0000 0000

0000 0000

0000h

-0,5 °C

1111 1111

1111 1111

FFFFh

-25 °C

1111 1111

1100 1110

FFCEh

-55 °C

1111 1111

1001 0010

FF92h

 

            Более высокая разрешающая способность может быть получена, если произвести дополнительные вычисления на основе значений COUNT_REMAIN (значение, оставшееся в счетчике в конце измерения) и COUNT_PER_C (количество импульсов на один градус для данной температуры), которые доступны. Для вычислений требуется взять считанное значение температуры и отбросить младший бит. Полученное значение назовём TEMP_READ. Теперь действительное значение температуры может быть вычислено по формуле:

            В нашем случае такой расчет позволяет получить дискретность представления температуры 0,1 °C.

            Каждый экземпляр DS18S20 имеет уникальный 48-битный номер, записанный с помощью лазера в ПЗУ в процессе производства. Этот номер используется для адресации устройств. Кроме серийного номера в ПЗУ содержится код семейства (для DS18S20 это 10h) и контрольная сумма.

            Кроме ПЗУ DS18S20 имеет промежуточное ОЗУ, объемом 8 байт, плюс два байта энергонезависимой памяти. Карта памяти DS18S20 показана на рисунке:

 


Рис. 2.5.3. Карта памяти DS18S20

 

            Байты TH и TL представляют собой температурные пороги, с которыми сравниваются 8 бит каждого измеренного значения температуры (младший бит отбрасывается). С помощью специальной команды можно организовать сигнализацию выхода температуры за пределы этих порогов. Если такая функция не нужна, байты TH и TL можно использовать для хранения любых данных пользователя.

            Считывание значения измеренной температуры, а также передача команды начала преобразования и других команд производится с помощью 1-проводного интерфейса (1-WireTM) фирмы Dallas Semiconductor. На основе этого интерфейса фирма Dallas Semiconductor создала сеть, называемую MicroLAN (или µLAN). Для работы в этой сети выпускается целый ряд устройств, таких как адресуемые ключи, АЦП, термометры, часы реального времени, цифровые потенциометры. Кстати, такой же протокол обмена имеют и цифровые ключи IButton (или Touch Memory), которые сейчас широко используются в системах ограничения доступа.

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

            Вначале рассмотрим аппаратную конфигурацию. 1-проводная шина является двунаправленной. На рис. 2.5.4 показана аппаратная конфигурация интерфейсной части DS18S20 и мастера шины. У каждого 1-проводного устройства к шине подключен вход приемника и выход передатчика с открытым стоком. Открытый сток позволяет подключать к шине множество устройств, обеспечивая логику «монтажное или». Генератор тока 5 мкА обеспечивает на входе 1-проводного устройства низкий логический уровень, когда шина не подключена. Так как линия тактового сигнала отсутствует, обмен является синхронным. Это означает, что в процессе обмена нужно достаточно точно выдерживать требуемые временные соотношения.

 


Рис. 2.5.4. Аппаратная конфигурация интерфейсной части 1-проводных устройств

 

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

            Инициатором обмена по 1-проводной шине всегда выступает мастер. Все пересылки начинаются с процесса инициализации. Инициализация производится в следующей последовательности (рис. 2.5.5):

 


Рис. 2.5.5. Инициализация обмена по 1-проводной шине

 

·                     Мастер посылает импульс сброса (reset pulse) - сигнал низкого уровня, длительностью не менее 480 мкс.

·                     За импульсом сброса следует ответ подчиненного устройства (presence pulse) - сигнал низкого уровня, длительностью 60 - 240 мкс, который генерируется через 15 - 60 мкс после завершения импульса сброса.

            Ответ подчиненного устройства даёт мастеру понять, что на шине присутствует термометр и он готов к обмену. После того, как мастер обнаружил ответ, он может передать термометру одну из команд. Передача ведётся путём формирования мастером специальных временных интервалов (time slots). Каждый временной интервал служит для передачи одного бита. Первым передаётся младший бит. Интервал начинается импульсом низкого уровня, длительность которого лежит в пределах 1 - 15 мкс. Поскольку переход из единицы в ноль менее чувствителен к ёмкости шины (он формируется открытым транзистором, в то время как переход из ноля в единицу формируется подтягивающим резистором), именно этот переход используют 1-проводные устройства для синхронизации с мастером. В подчиненном устройстве запускается схема временной задержки, которая определяет момент считывания данных. Номинальное значение задержки равно 30 мкс, однако, оно может колебаться в пределах 15 - 60 мкс. За импульсом низкого уровня следует передаваемый бит. Он должен удерживаться мастером на шине в течение 60 - 120 мкс от начала интервала. Временной интервал завершается переводом шины в состояние высокого уровня на время не менее 1 мкс. Нужно отметить, что ограничение на это время сверху не накладывается. Аналогичным образом формируются временные интервалы для всех передаваемых битов (рис. 2.5.6):

 


Рис. 2.5.6. Передача бита по 1-проводной шине

 

            Первой командой, которую должен передать мастер для DS18S20 после инициализации, является одна из команд функций ПЗУ. Всего DS18S20 имеет 5 команд функций ПЗУ:

·                     Read ROM [33h]. Эта команда позволяет прочитать содержимое ПЗУ. В ответ на эту команду DS18S20 передает 8-битный код семейства (10h), затем 48-битный серийный номер, а затем 8-битную CRC для проверки правильности принятой информации.

·                     Match ROM [55h]. Эта команда позволяет адресовать на шине конкретный термометр. После этой команды мастер должен передать нужный 64-битный код, и только тот термометр, который имеет такой код, будет «откликаться» до следующего импульса сброса.

·                     Skip ROM [CCh]. Эта команда позволяет пропустить процедуру сравнения серийного номера и тем самым сэкономить время в системах, где на шине имеется всего одно устройство.

·                     Search ROM [F0h]. Эта довольно сложная в использовании команда позволяет определить серийные номера всех термометров, присутствующих на шине.

·                     Alarm Search [ECh]. Эта команда аналогична предыдущей, но «откликаться» будут только те термометры, у которых результат последнего измерения температуры выходит за предустановленные пределы TH и TL.

            Приняв команду Read ROM, DS18S20 будет готов передать 64-битный код, который мастер должен принять.

            При приеме данных от подчиненного устройства, временные интервалы для принимаемых битов тоже формирует мастер. Интервал начинается импульсом низкого уровня, длительностью 1 - 15 мкс. Затем мастер должен освободить шину, чтобы дать возможность термометру вывести бит данных. По переходу из единицы в ноль DS18S20 выводит на шину бит данных и запускает схему временной задержки, которая определяет, как долго бит данных будет присутствовать на шине. Это время лежит в пределах 15 - 60 мкс. Для того чтобы данные на шине, которая всегда обладает некоторой ёмкостью, гарантированно установились, требуется некоторое время. Поэтому момент считывания данных мастером должен отстоять как можно дальше, но не более чем на 15 мкс от начала временного интервала (рис. 2.5.7):

 


Рис. 2.5.7. Чтение бита по 1-проводной шине

 

            Прием байта начинается с младшего бита. Вначале идет байт кода семейства. За кодом семейства идет 6 байт серийного номера, начиная с младшего. Затем идет байт контрольной суммы (CRC). В вычислении байта контрольной суммы принимают участие первые 7 байт, или 56 передаваемых бит. Для вычисления используется следующий полином:

CRC = X8+X5+X4+1

            После приема данных мастер должен вычислить контрольную сумму и сравнить получившееся значение с переданной CRC. Если эти значения совпадают, значит, прием данных прошел без ошибок. Можно также вычислить контрольную сумму для всех 64 принятых бит, которая в этом случае должна быть равна нулю. Блок-схема алгоритма вычисления контрольной суммы показана на рис. 2.5.8. Алгоритм использует операции сдвига и «исключающего или». Квадратиками показаны биты переменной, которая используется для вычисления CRC. Перед вычислением её необходимо обнулить, а затем на вход алгоритма нужно последовательно подать 56 принятых бит в том порядке, в котором они были приняты. В результате переменная будет содержать значение CRC.


Рис. 2.5.8. Блок-схема алгоритма вычисления контрольной суммы

 

            Такой же алгоритм вычисления контрольной суммы используется и в случае чтения промежуточного ОЗУ, только там считанная из термометра CRC (9-й байт) рассчитана для 8-ми байтов данных.

            После обработки одной из команд функций ПЗУ, DS18S20 способен воспринимать еще несколько команд:

·                     Write Scratchpad [4Eh]. Эта команда позволяет записать данные в промежуточное ОЗУ DS18S20.

·                     Read Scratchpad [BEh]. Эта команда позволяет считать данные из промежуточного ОЗУ.

·                     Copy Scratchpad [48h]. Эта команда копирует байты TH и TL из промежуточного ОЗУ в энергонезависимую память. Эта операция требует около 10 мс.

·                     Convert T [44h]. Эта команда запускает процесс преобразования температуры.

·                     Recall E2 [B8h]. Эта команда действует обратным образом по отношению к команде Copy Scratchpad, т.е. она позволяет считать байты TH и TL из энергонезависимой памяти в промежуточное ОЗУ. При включении питания эта команда выполняется автоматически.

·                     Read Power Supply [B4h]. Эта команда позволяет проверить, использует ли DS18S20 паразитное питание. Дело в том, что DS18S20 можно подключать всего с помощью двух проводов, в этом случае для питания используется линия данных.

            При использовании DS18S20 только для измерения температуры, нужны всего две из этих команд: Convert T и Read Scratchpad.

            Последовательность действий при измерении температуры должна быть следующей:

·                     Посылаем импульс сброса и принимаем ответ термометра.

·                     Посылаем команду Match ROM [55h].

·                     Посылаем команду Convert T [44h].

·                     Формируем задержку минимум 750 мс.

·                     Посылаем импульс сброса и принимаем ответ термометра.

·                     Посылаем команду Match ROM [55h].

·                     Посылаем команду Read Scratchpad [BEh].

·                     Читаем данные из промежуточного ОЗУ (8 байт) и CRC.

·                     Проверяем CRC, и если данные считаны верно, вычисляем температуру.

            Для подключения DS18S20 к COM-порту компьютера используется адаптер, схема которого есть на рис. 2.5.9.

 


Рис. 2.5.9. Схема адаптера

 

            DS9097U-009 - усовершенствованный адаптер COM-порта персонального компьютера, используемый для организации на его базе мастера однопроводной линии MicroLAN. Прибор построен на базе микросхемы универсального драйвера последовательного порта DS2480B и обеспечивает активную подтяжку однопроводной линии до 300 м с не более чем 300 устройствами, отвечающими стандартам MicroLAN или iButton.

            Для подключения линии MicroLAN используется стандартная телефонная розетка типа RJ11 (TJC-6P6C). Для идентификации адаптеров типа DS9097U-009 используется встроенная электронная метка DS2502P (групповой код 09H). Выходная цепь адаптера снабжена специальной защитой от электростатических разрядов, которая выполнена с помощью прибора DS9503Р.

            Для питания DS18S20 используется линия DTR последовательного порта. Адаптер обеспечивает на входе RXD порта компьютера однополярные уровни. Конструктивно адаптер выполнен внутри 9-выводного DB-разъема последовательного COM-порта персонального компьютера (рис. 2.5.10):

 


Рис. 2.5.10. Внешний вид адаптера

 

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

            Для генерации импульса сброса и приема ответа порт настраивается на скорость 9600 бод, длина символа 8 бит, и передается число F0h. Это приводит к формированию импульса сброса низкого уровня (с учетом инверсии адаптера), длительностью около 520 мкс (стартовый бит + 4 передаваемых бита). За ним следует импульс высокого уровня такой же длительности (4 передаваемых бита + стоповый бит), в течение которого ожидается ответ термометра. Если термометр не подключен, то порт примет число F0h не искаженным. Но если термометр сформировал импульс ответа, то принятое число будет содержать большее количество единиц, чем четыре. Таким образом, определяется наличие ответа.

            Для генерации интервалов приема и передачи битов порт настраивается на скорость 115200 бод. Стартовый бит начинает временной интервал, затем идут 8 единичных или нулевых бит, в зависимости от значения бита, который нужно передать. Заканчивается последовательность стоповым битом, который на некоторое время устанавливает на 1-проводной шине высокий уровень. Вид этой последовательности полностью соответствует требуемому виду временного интервала передачи бита, за исключением того, что обмен является более медленным, чем способна обеспечить 1-проводная шина: на один бит затрачивается примерно 87 мкс.

            Прием со стороны передатчика последовательного порта ничем не отличается от передачи единичного бита. Проанализировав принятый последовательным портом символ, можно установить - какой бит передал термометр. В случае нулевого бита - один или несколько битов принятого портом байта будут единичными (с учетом инверсии адаптера).

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

Раздел 3. Применение сети MicroLAN в системе температурного мониторинга

 

3.1. Технология сетей MicroLAN


            Однопроводной интерфейс 1-Wire, разработанный в конце 90-х годов фирмой Dallas Semiconductor, и его применение для систем автоматизации (технология сетей MicroLAN).

            Однопроводной интерфейс 1-Wire регламентирован разработчиками для применения в трех основных сферах-приложениях:

 

·                     системы идентификации и контроля доступа (технология iButton или Touch Memory),

 

·                     программирование встроенной памяти интегральных компонентов,

 

·                     системы автоматизации (технология сетей MicroLAN).

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

            Так в чем же особенности этого нового сетевого стандарта? Ведь в качестве среды для передачи информации по однопроводной линии чаще всего возможно использование обычного телефонного кабеля и, следовательно, скорость обмена в этом случае невелика. Однако если внимательно проанализировать большинство объектов, требующих автоматизации, то более чем для 60% из них предельная скорость обслуживания в 16,3 Кбита/сек. будет более чем удовлетворительной. А другие преимущества MicroLAN, такие как:

 

·                     простое и оригинальное решение адресуемости абонентов,

 

·                     несложный протокол,

 

·                     простая структура линии связи,

 

·                     малое потребление компонентов,

 

·                     легкое изменение конфигурации сети,

 

·                     значительная протяженность линий связи,

 

·                     исключительная дешевизна всей технологии в целом.

 

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

 

            MicroLAN представляет собой информационную сеть, использующую для осуществления цифровой связи одну линию данных и один возвратный (или земляной) провод. Таким образом, для реализации среды обмена этой сети могут быть использованы как доступные кабели, содержащие неэкранированную витую пару той или иной категории, так и обычный телефонный провод. Подобные кабели при их прокладке не требуют, как правило, наличия какого либо специального оборудования. Ограничение максимальной длины однопроводной линии, реализуемое без специальных дополнительных вспомогательных устройств (повторителей), регламентировано на уровне 300м.

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

            Конфигурация любой сети MicroLAN может произвольно меняться в процессе ее работы, не создавая помех дальнейшей эксплуатации и работоспособности всей линии в целом, если при этих изменениях соблюдаются основные принципы организации однопроводной шины. Эта возможность достигается благодаря присутствию в протоколе 1-Wire интерфейса специальной команды поиска ведомых устройств (поиск ПЗУ), которая позволяет быстро определить новых участников информационного обмена. Стандартная скорость отработки такой команды составляет ~75 узлов сети в секунду.

            Благодаря наличию в составе любого устройства, снабженного сетевой версией 1-Wire интерфейса, индивидуального уникального адреса (отсутствие совпадения адресов для приборов, когда-либо выпускаемых Dallas Semiconductor, гарантируется самой фирмой-производителем), сеть MicroLAN имеет практически неограниченное адресное пространство. При этом каждый из таких приборов сразу готов к использованию в составе сетей MicroLAN без каких-либо дополнительных аппаратно-программных модификаций. Компоненты однопроводных сетей являются самотактируемыми полупроводниковыми устройствами, в основе обмена информацией между которыми лежит управление изменением длительности временных интервалов импульсных сигналов в однопроводной среде и их измерение. Передача сигналов для 1-Wire интерфейса асинхронная и полудуплексная, а вся информация, циркулирующая в сети, воспринимается абонентами либо как команды, либо как данные. Команды сети генерируются мастером и обеспечивают различные варианты поиска и адресации ведомых устройств, определяют активность на линии без непосредственной адресации отдельных компонентов, управляют обменом данными в сети и т.д.             Стандартная скорость работы сети 16,3 Кбит/сек. была выбрана, во-первых, с учетом обеспечения максимальной надежности передачи данных на большие расстояния и, во-вторых, с учетом быстродействия наиболее широко распространенных типов микроконтроллеров, которые в основном должны использоваться при реализации ведущих устройств однопроводной шины. Это значение скорости обмена может быть уменьшено до любого возможного значения, благодаря введению принудительной задержки между передачей отдельных битов данных. Или увеличено за счет перехода на специальный ускоренный режим обмена (скорость Overdrive - до 142 Кбит/сек.), который допускается для отдельных типов компонентов при небольшой по расстоянию, качественной, не перегруженной другими приборами линии связи.  

При реализации однопроводного интерфейса используются стандартные КМОП/ТТЛ логические уровни сигналов. Питание большинства компонентов сети MicroLAN может осуществляться от внешнего источника с рабочим напряжением в диапазоне от 2,8 до 6 В. Альтернативой применению внешнего питания служит т.н. механизм «паразитного питания», действие которого заключается в использовании каждым из ведомых компонентов однопроводной линии электрической энергии сигналов обмена данными, аккумулируемой специальной, встроенной в прибор емкостью. Кроме того, отдельные компоненты сетей могут использовать режим импульсного питания, когда энергия к приемнику поступает непосредственно по линии связи, при этом обмен на шине принудительно прекращается.

Пожалуй, особенно привлекательным качеством технологии MicroLAN является исключительная простота настройки, отладки и обслуживания сети практически любой конфигурации, построенной по этому стандарту. Действительно, для начала работы достаточно любого персонального компьютера, недорогого стандартного адаптера 1-Wire линии, а также свободно распространяемого фирмой Dallas Semiconductor программного пакета iButton-TMEX Viewer. При наличии этого небольшого числа составляющих, контроль и управление сетью практически любой сложности, построенной на базе стандартных однопроводных компонентов, организуется буквально в течение нескольких минут. Пакет iButton TMEX-Viewer, при этом, позволяет с максимальным комфортом для разработчика идентифицировать любое из ведомых однопроводных устройств на линии MicroLAN и проверить в полном объеме правильность его функционирования в составе всей сети.

            Некоторые виды адаптеров, которые позволяют наделить любой персональный компьютер РС возможностью обслуживать в качестве мастера сеть MicroLAN, выпускаются самой фирмой Dallas Semiconductor. К ним относятся адаптеры для параллельного порта типа DS1410E или для последовательных COM-портов типа DS9097E и DS9097U. Эти приборы имеют различные функциональные возможности и конструктивные особенности, что обеспечивает разработчику максимальную свободу выбора при конструировании. А наличие у пользователя небольших навыков в создании электронной аппаратуры позволяет легко произвести самостоятельную сборку схемы простейшего адаптера сети MicroLAN для компьютера из небольшого числа доступных электронных компонентов.

            Часто в качестве ведущего однопроводной шины выступает не компьютер, а простейший универсальный микроконтроллер. Для организации его сопряжения с сетью MicroLAN используются различные программно-аппаратные методы. От простейшего, когда управляющая программа контроллера полностью реализует протокол 1-Wire интерфейса на одном из своих двунаправленных выводов, который подключен к однопроводной линии, до вариантов, позволяющих высвободить значительные ресурсы контроллера, благодаря использованию специализированных микросхем сопряжения с сетью MicroLAN. Такие микросхемы подключаются к контроллеру, играющему роль ведущего шины, через периферийные узлы ввода/вывода, входящие в состав любого универсального микроконтроллера. Например, устройство DS1481 предназначено для подключения непосредственно к функциональным выводам параллельного обмена контроллера. Если же мастер однопроводной линии организован на базе стандартного узла последовательного интерфейса UART, используется микросхема DS2480В, а микросхема DS2490 адаптирует однопроводную линию для работы от встроенного узла USB-интерфейса. Обе микросхемы реализуют т.н. программируемый механизм активной подтяжки шины данных 1-Wire-магистрали, обеспечивающий качественную передачу сигналов в длинных линиях и увеличение нагрузочной способности ведущего по количеству обслуживаемых им ведомых устройств. Кроме того, DS2480B дополнительно содержит встроенный датчик тока потребления однопроводной линии. Используя его показания, можно обеспечить еще более эффективный алгоритм реализации активной подтяжки в перегруженных и проблемных 1-Wire-линиях.

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

            Проблема подготовки программного обеспечения для управления мастером линии при обслуживании сетей MicroLAN также не представляется неразрешимой. Фирмой Dallas Semiconductor свободно распространяется профессиональный программный пакет разработчика iButton-TMEX SDK, являющийся универсальным средством для профессиональных программистов, который значительно упрощает процесс создания программ для обслуживания устройств с 1-Wire интерфейсом, подключенных через стандартные типы адаптеров к персональным компьютерам РС и некоторым типам карманных компьютеров. Он содержит комплект отлаженных драйверов и утилит для реализации полномасштабного однопроводного протокола. В качестве среды взаимодействия с разработчиком пакет iButton-TMEX SDK использует специальный стандартизованный программный интерфейс API. Кроме того, с ftp-сервера кампании Dallas Semiconductor свободно доступен ряд примеров реализации 1-Wire-протокола для некоторых наиболее популярных видов микропроцессоров, а также готовые библиотеки функциональных программных модулей однопроводного интерфейса для различных программных платформ.

            Ведомые компоненты, содержащие 1-Wire интерфейс, выпускаются в двух различных видах. Либо в корпусах MicroCAN, похожих внешне на дисковый металлический аккумулятор, либо в обычных корпусах для монтажа на печатную плату. Футляр MicroCAN является практически полым внутри и выполняет функции защиты содержащегося в нем небольшого кристалла однопроводной микросхемы, который соединен с внешним миром лишь через две, изолированные друг от друга, половинки корпуса, являющиеся по существу контактными площадками для подключения однопроводной линии. В таких корпусах поставляются, как правило, приборы автоматической идентификации iButton.         Компоненты, которые предназначены для использования в составе сетей MicroLAN, упаковываются в обычные пластиковые корпуса, используемые для изготовления транзисторов и интегральных схем. Такой подход объясняется тем, что в отличие от устройств идентификации, приборы MicroLAN часто имеют более двух выводов. Помимо выводов, которые требуются для обмена на однопроводной шине, они располагают дополнительными выводами, необходимыми для подключения внешнего питания и организации внешних цепей, связывающих 1-Wire-прибор с объектами автоматизации, например, датчиками или исполнительными устройствами.

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

            Наиболее популярными ведомыми компонентами, на базе которых реализовано, пожалуй, наибольшее количество применений, безусловно, являются цифровые термометры типа DS1820. Преимущества этих приборов с точки зрения организации магистрали, по сравнению с любыми другими температурными сенсорами, а также неплохие метрологические характеристики и хорошая помехоустойчивость, выводят их на первое место при построении многоточечных систем температурного контроля в диапазоне от -55 до +125 °C. При этом они позволяют не только осуществлять непосредственный мониторинг температуры, но и, благодаря наличию встроенной энергонезависимой памяти температурных установок, могут обеспечивать приоритетную сигнализацию в линию о факте выхода контролируемого параметра за пределы заданных значений. Эти датчики настолько функционально удобны, что, даже немногочисленные применения технологии MicroLAN в нашей стране реализованы в основном на приборах этого типа. Причем, несмотря на уже известный недостаток датчиков DS1820, который связан с наличием специфической ошибки, возникающей при обработке поступающей от них информации, повсеместное применение подобных термометров продолжается. Т.е. функциональность этих компонентов настолько велика, что разработчики предпочитают обходить известный аппаратный сбой методом программной фильтрации при обработке результатов измерений, но от использования удобных сенсоров не отказываются. Фирма Dallas Semiconductor, чувствуя этот высокий интерес к DS1820, продолжает линию на выпуск более перспективных приборов для контроля температуры, укомплектованных многоточечным однопроводным интерфейсом. Сейчас, взамен снимаемых с производства DS1820, выпускаются полностью аналогичные им приборы DS18S20 с устраненной ошибкой преобразования и упакованные в более удобные малогабаритные корпуса. Кроме того, уже в настоящее время поставляются более совершенные приборы DS18В20, скорость преобразования в которых определяется разрядностью, программируемой непосредственно в ходе их обслуживания мастером линии.    Цифровой код, считываемый с такого термометра, является прямым кодом измеренного значения температуры и не нуждается в дополнительных преобразованиях. Кроме того, эти устройства имеют специальный встроенный аппаратно-программный механизм калибровки, позволяющий значительно снизить погрешность выполняемых ими измерений. Скоро на рынке должна появиться новая, менее прецизионная, но и в тоже время более дешевая версия такого термометра под обозначением DS1822. Следом за этим прибором кампания Dallas Semiconductor планирует пополнить ряд своих температурных преобразователей с 1-Wire интерфейсом новыми двухвыводными приборами, работающими на линии исключительно за счет энергии «паразитного питания» - DS18S20-PAR, DS18B20-PAR, DS1822-PAR.

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

            Но все-таки, наиболее незаменимыми «кирпичиками», лежащими в основе фундамента однопроводных сетей автоматизации, являются универсальные сдвоенные адресуемые транзисторные ключи типа DS2406P (современная версия широко известных приборов DS2407P). На базе этих устройств может быть реализована масса применений, и, прежде всего, узлы контроля логических состояний (уровней), и схемы обслуживания датчиков «сухого контакта», а также разнообразные ключевые схемы. Таким образом, именно благодаря использованию этих компонентов, осуществляется сбор дискретной информации с территориально рассредоточенных датчиков (мониторов дверей, контакторов положения арматуры, любых датчиков, имеющих выход ДА/НЕТ, как то датчики положения, прохода, присутствия, пожарной и охранной сигнализации и т.д.). Подобные же приборы обеспечивают управление переключением любых видов силового оборудования, которые имеют два рабочих состояния: включено/выключено (нагревателей, кондиционеров, моторов, вентиляторов, арматурных задвижек и т.д.). Кроме того, двунаправленные индивидуально программируемые выводы DS2406P могут быть использованы для организации медленного последовательного интерфейса между локальным микроконтроллером и сетью MicroLAN. Несмотря на невысокую скорость при реализации подобного способа обмена информацией по однопроводной сети, когда один бит данных передается за две стандартные посылки, подобное решение является приемлемым и достаточно надежным для большого числа конкретных применений.

           

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

            Большинство компонентов для сетей MicroLAN содержит в своем составе массив постоянной (заполняемой пользователем) или энергонезависимой памяти того или иного объема. Это позволяет хранить специальную служебную информацию, связанную с применением конкретного компонента и особенностями его использования (идентификатор, территориальное положение, калибровочные коэффициенты, размерность, значение установок по умолчанию и т.д.), непосредственно в составе однопроводного прибора. Благодаря этому, для организации работы каждой новой однопроводной сети не нужно готовить отдельное специальное программное обеспечение, достаточно иметь одну стандартную программу, которая переконфигурируется в зависимости от специфики конкретной системы (конечно, если память всех компонентов системы заполнена в соответствии с определенными, заранее оговоренными правилами).             Если же в процессе работы системы MicroLAN требуется хранить дополнительные объемы информации, в распоряжении разработчика имеются специальные однопроводные приборы, содержащие как постоянную (DS2502/05/06), так и энергонезависимую (DS2430A/33) память различных объемов.

            Целый ряд компонентов семейства iButton в корпусах MicroCAN также может быть использован в составе однопроводных сетей MicroLAN в качестве ведомых 1-Wire-устройств, которые решают специфические задачи идентификации, накопления, хранения и переноса информации. Например, для реализации процедуры идентификации в системах промышленной автоматизации обычно достаточно применения распространенных носимых электронных меток DS1990A. А многоточечный температурный мониторинг легко может быть выполнен сетью из нескольких устройств DS1921L или ТЕРМОХРОН, каждый из которых регистрирует температурные значения, измеренные через определённые, заранее заданные промежутки времени, и сохраняет полученную информацию в собственной энергонезависимой памяти, по существу, являясь программируемым «температурным магнитофоном». Для решения проблемы переноса данных, накопленных однопроводной системой, к компьютеру обработки верхнего уровня выпускаются разнообразные приборы iButton, которые в этом случае играют роль так называемых «транспортных таблеток». К подобным устройствам, прежде всего, относятся приборы энергонезависимой памяти, включающие в состав своей конструкции литиевый элемент питания.

           

Большую роль при построении сетей MicroLAN играет исполнение однопроводной линии связи. Как правило, такие линии имеют структуру, состоящую из трех основных проводников: DATA - шина данных, RET - возвратный или земляной провод, EXT_POWER - внешнее питание не только обслуживаемых ведомых устройств, но и внешних относительно них цепей датчиков и органов управления. В зависимости от способа прокладки, сопряжения с ведомыми устройствами и используемых при прокладке материалов, в соответствии с нижеследующей таблицей различают три основных варианта качества организации 1-Wire сетей, каждый из которых подразумевает использование особой технологии и аксессуаров при реализации линии:

 

           

Часто при организации больших однопроводных сетей, с целью удобства проводки линии связи, уменьшения ее протяженности или снижения электрической нагрузки на линии, благодаря уменьшению одновременно работающих на ней устройств, необходимо обеспечить древовидную структуру 1-Wire линии. Для этого используют ветвления сетей MicroLAN одного или нескольких уровней. Основным элементом при построении таких ветвей является либо обычный адресуемый ключ типа DS2406P, который обеспечивает ветвление, благодаря коммутации возвратного провода однопроводной линии, либо специализированный ветвитель DS2409, коммутирующий непосредственно шину данных этой 1-Wire линии. Последний вариант является более предпочтительным, т.к. компоненты на отключенной ветви, ведомой ветвителем, остаются всегда в активном состоянии за счет работы механизма паразитного питания. Поочередное обслуживание мастером сети каждой из ветвей, при отключенных остальных ветвях, позволяет значительно увеличить общую длину линии и количество ведомых устройств на ней.

            О признании однопроводной шины в качестве международного стандарта и серьезности отношения к этому интерфейсу со стороны маститых разработчиков и производителей электроники говорят многочисленные факты. Например, нет практически ни одного универсального микроконтроллера, в литературе по применению которого не обсуждались бы способы организации на его базе мастера однопроводной линии. А некоторые производители идут еще дальше, включая процедуры реализации 1-Wire интерфейса в стандартные библиотеки, прошиваемые во внутреннюю память своих приборов (как, например, у сетевых контроллеров NeuronChip стандарта Echelon, производимых под эгидой международного объединения LonWorks).

            Наиболее последовательно отстаивает линию на использование технологии сетей MicroLAN в области автоматизации американская фирма Point Six. Можно сказать, что эта кампания сделала себе имя на внедрении и пропаганде достижений однопроводной шины в области автоматизации. И это несмотря на то, что основной областью ее деятельности является не автоматизация оранжерей и не создание систем пожарной сигнализации, а разработка средств и систем для обслуживания высокотехнологичных отраслей машиностроения и химической промышленности, и даже создание уникального экспериментального и научного оборудования. Подтверждением этому служит широчайший спектр продукции, который выпускается фирмой (разнообразные зонды для измерения высоких и низких температур, датчики влажности, давления и кислотности с особыми функциями, специальные оптические сенсоры, платы сбора информации, устройства сопряжения с различным аналитическим оборудованием и многое другое), причем каждый из приборов содержит элементы однопроводной технологии.

            Другим интересным примером, наглядно демонстрирующим на практике возможности технологии однопроводной шины, является проект построения полностью автоматических метеорологических станций (1-Wire Weather Station), который реализуется фирмой Point Six совместно с Dallas Semiconductor и Texas Weather Instruments. Вначале было разработано несколько подобных систем, построенных на базе ведущего персонального компьютера с адаптером DS9097U, который является сердцем комплекса, трех термометров DS1820 для контроля температуры и влажности воздуха, DS2423 для определения скорости ветра и 16-ти электронных меток DS2401, определяющих его направление. Все эти первые метеосистемы были установлены и успешно испытаны в процессе длительной эксплуатации в штате Техас. Причем, отдельные из них комплектовались дополнительными приборами MicroLAN, которые обеспечивали контроль сигналов от датчиков: барометрического давления, разрядов молнии, количества осадков на поверхности, влажности почвы и т.д. Данные со всех сенсоров, регистрируемые каждой из подобных систем, поступают в персональный компьютер и через Интернет транслируются в режиме реального времени на центральный операторский пульт, где происходит изучение и архивация информации о погоде региона, получаемая благодаря анализу информации от нескольких территориально рассредоточенных станций. В настоящее время проект успешно завершен и Texas Weather Instruments удачно торгует готовыми полностью автоматическими метеостанциями, не требующими обслуживания человеком. Причем, успех подобных устройств настолько велик по всему миру, что фирма Dallas Semiconductor начала производство специализированного набора микросхем WS-1, который включает комплект однопроводных компонентов, минимально необходимый для построения подобной станции.

            Довольно перспективной областью, в которой могут быть в полной мере использованы достижения технологии сетей MicroLAN, и которой последнее время особенно много внимания уделяет кампания Dallas Semiconductor, является менеджмент автономных химических источников тока - аккумуляторных батарей. Под менеджментом здесь понимается, - прежде всего, строгая и полная идентификация источников энергии, сохранение в памяти каждого отдельного встроенного в батарею устройства, особенностей ее изготовления и индивидуальных технических характеристик, а также наиболее полный мониторинг их основных эксплуатационных параметров на протяжении всего срока службы. От правильного менеджмента и знания истории эксплуатации батареи во многом зависит выбор алгоритма ее повторного заряда, что непосредственно связанно с эффективностью использования и сроком службы многих типов аккумуляторов. Для этого каждая из батарей многоэлементных энергетических конструкций снабжается индивидуальным однопроводным компонентом, превращаясь по существу в интеллектуальный элемент питания. Целый ряд микросхем, выпускаемых и планируемых к выпуску фирмой, связан с этим направлением. Dallas Semiconductor сегодня доминирует на рынке систем для обслуживания источников питания, исповедуя при этом новый комплексный подход к проблеме менеджмента энергетических элементов. При этом наблюдается качественный переход от приборов, снабженных однопроводным интерфейсом, которые могут работать только по принципу точка-точка (например, DS1633, DS2434 и DS2435) к компонентам, использование которых позволяет организовать многоточечную шину MicroLAN (DS2436, DS2438), что дает возможность обслуживать не только отдельные источники энергии, но и в целом батареи, составленные из множества отдельных подобных элементов. Более того, подобные устройства способны обеспечить не только идентификацию или простейший температурный контроль аккумуляторов, но и полномасштабный мониторинг их основных параметров (напряжение, ток, разряд и т.д.) на протяжении всего времени эксплуатации. Результаты, накопленные такими приборами, сохраняются во встроенной энергонезависимой памяти, либо в виде гистограммы (DS2436), либо в виде массива последовательных отсчетов, «привязанных» к временным меткам (DS2438).

           

Безусловно, сети MicroLAN имеют свою нишу для применения при построении систем автоматизации. Бессмысленно всерьез применять их для передачи больших массивов информации при построении, к примеру, систем видео-наблюдения или скоростного обмена при обслуживании быстрых процессов или сравнивать возможности однопроводных сетей с такими мощными сетевыми промышленными интерфейсами, как ProfiBus, FeldBus, Echelon, CANBus, Industrial Internet и т.д. Можно даже сформулировать основные, на сегодняшний день, ограничения для применения систем на базе однопроводных 1-Wire-сетей в области автоматизации:

 

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

 

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

 

·                     сложность в реализации мультимастерного режима работы сети (с появлением компонента специализированного ветвителя 1-Wire сетей DS2409 проблема разрешения конфликтов между несколькими ведущими на одной однопроводной шине существенно упрощается).

            Однако, как видно из замечаний, приведенных в скобках, даже эти, очевидные для сетей MicroLAN трудности, не являются непреодолимыми. Более того, уже сегодня правомерен и достаточно проработан подход, позволяющий интегрировать медленные однопроводные, территориально рассредоточенные структуры, в состав таких производительных сетей, как CANBus и Industrial Internet. Это возможно, благодаря применению уникального инструмента кампании Dallas Semiconductor - устройства TINI (Tiny InterNet Interface).

           

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

 

3.2. Основы построения сетей MicroLAN

 

            Для построения сети MicroLAN необходимы три составляющие: ведущий шины (компьютер или любой промышленный микроконтроллер), двухпроводной кабель и однопроводные устройства, соответствующие протоколу. Рассмотрим принципы построения сетей MicroLAN.

 

 

 

Топология

 

            Для осуществления цифровой связи MicroLAN использует одну линию данных и один возвратный провод (обычно земляной). Сеть не ограничивается заранее определенной структурой. При небольшом числе приборов сеть MicroLAN имеет шинную архитектуру с подключением всех приборов на общую магистраль. Структура сети может иметь древовидный характер. При этом главный ствол подключается к ведущему устройству сети MicroLAN (рис. 3.2.1). Сеть обладает практически неограниченным адресным пространством и допускает работу на расстоянии до 300 м без дополнительных повторителей или усилителей сигнала.

 

Структура сети MicroLAN

Рис. 3.2.1. Структура сети MicroLAN

 

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

 

Построение ветвлений

 

            Для подключения большого количества устройств без одновременного увеличения электрической нагрузки в сети MicroLAN применяется древовидная структура с несколькими уровнями ветвлений. Основным элементом этой структуры является адресуемый ключ. Фирма Dallas Semiconductor выпускает несколько типов адресуемых ключей, описанных ниже.

            Способ коммутации отдельных ветвей MicroLAN иллюстрируется на рис. 3.2.2. Линия данных сети подключена одновременно ко всем приборам системы. Возвратная линия находится в проводящем состоянии только для тех ветвей, которые задействованы в сеансе связи с выбранным прибором. Отметим, что в такой конфигурации возвратная линия сети MicroLAN не идентична системной «земле». Чтобы избежать «земляных петель», необходимо использовать цепи с оптронной развязкой для связи с теми участками сети, которые должны быть заземлены.

 

Коммутация ветвей сети MicroLAN

Рис. 3.2.2. Коммутация ветвей сети MicroLAN

Программное обслуживание сети

 

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

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

 

3.3. Логика работы сети MicroLAN

 

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

            Любая сеть всегда требует наличия идентификационных номеров всех узлов в пределах сети. Все микросхемы MicroLAN содержат область ПЗУ, в которой записан уникальный для каждой микросхемы регистрационный номер, который удобно использовать в качестве идентификатора узла. Пользователю не нужно волноваться относительно возможности конфликта идентификаторов узлов, так как производителем гарантируется невозможность выпуска двух микросхем с одинаковым серийным номером. Кроме того, построение выходного устройства микросхем на основе транзистора с открытым стоком позволяет избежать потенциальных проблем, если происходит какой-либо конфликт на шине. Фактически, 1-проводной интерфейс действительно является 1-проводной сетью MicroLAN со всем необходимым для работы в сети с одним ведущим и многочисленными ведомыми.

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

 

Физический уровень

 

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

 

Уровень связи

 

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

Сетевой уровень

 

            Этот уровень обеспечивает идентификацию приборов MicroLAN и связанных с ними возможностей сети. Каждый прибор, предназначенный для работы в составе сети MicroLAN, содержит страницу данных, необходимую для идентификации прибора, и называемую областью ПЗУ. В эту область при производстве микросхемы записывается с помощью лазерного луча уникальный для каждой микросхемы серийный номер. Занесение этого кода очень строго контролируется в процессе производства и фирма Dallas Semiconductor гарантирует уникальность серийного номера для каждой микросхемы. Поэтому именно значение серийного номера используется для идентификации прибора в составе сети и для управления доступом к отдельным приборам. Кроме серийного номера, в область ПЗУ заносится групповой код, отражающий функциональное назначение микросхемы и контрольная сумма всех данных в области ПЗУ.
            Из-за использования области ПЗУ для идентификации и адресации отдельных приборов в сети, все команды, которые относятся к сетевому уровню, также названы командами ПЗУ. За исключением некоторых, все приборы Mic
roLAN поддерживают все команды сетевого уровня. Краткий обзор команд сетевого уровня приведен в следующей таблице:

 

 

 

 

 

 

 

 

 

 

 

Команда

Код

Краткое назначение команды

Чтение ПЗУ

33h

Идентификация прибора

Обнаружение приборов, включенных на шине параллельно

Пропуск ПЗУ

CCh

Пропуск адресации, если на шине подключен только один прибор

Одновременная связь со всеми приборами на шине, например, для форматирования памяти или копирования данных из одного прибора во все остальные. Обычно требует подключения на шину только однотипных приборов

Совпадение ПЗУ

55h

Адресация только одного прибора среди нескольких подключенных на шину

Поиск ПЗУ

F0h

Получение серийных номеров (служащих адресами приборов в сети) всех приборов на шине MicroLAN

Получение серийного номера одного прибора на шине и одновременная его адресация


            Для осуществления чтения ПЗУ предпочтительнее использовать команду «поиск ПЗУ», а не «чтение ПЗУ». Команда «поиск ПЗУ» хорошо согласуется с работой на шине многочисленных приборов. После чтения ПЗУ, прежде чем продолжить связь, должна быть выполнена проверка контрольной суммы. После посылки любой команды ПЗУ и передачи и приема требуемых данных происходит переход на транспортный уровень. Если это не желательно, то импульсом сброса можно возвратить систему на сетевой уровень.

 

 

 

Транспортный уровень

 

            Этот уровень ответственен за передачу данных между всеми областями памяти устройств MicroLAN (кроме области ПЗУ) и ведущим шины, и за перемещения данных из области блокнотной памяти на окончательное место в памяти. Работа некоторых устройств на транспортном уровне отличается от остальных. Такими устройствами являются цифровые термометры DS1820, DS1920 и адресуемые ключи DS2405, DS2407, поскольку они не являются типичными устройствами памяти. Следующий краткий обзор включает команды транспортного уровня:

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Команда

Код

Краткое назначение команды

Чтение памяти

F0h

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

Расширенное чтение памяти

A5h

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

Запись блокнотной памяти

0Fh

Только для микросхем энергонезависимой памяти. Передача адреса окончательного хранения данных и для записи 32 последовательных байтов данных в блокнотную память

Чтение блокнотной памяти

AAh

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

Копирование блокнотной памяти

55h

Только для микросхем энергонезависимой памяти. Копирует данные из области блокнотной памяти в область памяти данных. Необходимо произвести чтение блокнотной памяти перед подачей команды и передачей 3-х байтного кода разрешения доступа, необходимого после команды копирования

Запись памяти

0Fh

Только для микросхем ЭППЗУ. Команда предназначена для передачи, проверки и копирования одного или нескольких последовательных байтов данных в область памяти данных

Запись состояния

55h

Только для микросхем ЭППЗУ. Команда предназначена для передачи, проверки и копирования одного или нескольких последовательных байтов состояния в область памяти состояния

Чтение состояния

AAh

Только для микросхем ЭППЗУ. Чтение одного или нескольких последовательных байтов, начиная с любого стартового адреса в области памяти состояния. В конце каждой страницы следует передача контрольной суммы

 

 

Последовательность выполнения команд на шине MicroLAN


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

 

3.4. Сетевой интерфейс MicroLAN

 

Концепция

 

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

 

Архитектура

 

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

 

Интерфейс

 

            Сеть MicroLAN основывается на использовании дешевого, легко доступного телефонного кабеля с витыми парами. Для прокладки сети не требуется никакого специального оборудования. Для удобства выпускается специальный ассортимент кабелей, соединителей, интерфейсных карт, предназначенных для быстрой установки и работы в составе сети MicroLAN.
            MicroLAN использует стандартные КМОП/ТТЛ логические уровни. Напряжение ниже 0,8 В соответствует логическому низкому уровню, а напряжение выше 2,2 В является высоким логическим уровнем. Сеть использует рабочее напряжение питания 2,8 – 6 В. Приборы MicroLAN могут использовать режим питания от линии связи.

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

            Протокол работы MicroLAN специально предназначен для упрощения электрического интерфейса и наиболее широкой поддержки существующим коммуникационным оборудованием. Любой промышленный контроллер, такой как 8051, работающий на тактовой частоте более 1,8 МГц, а также любой последовательный порт RS232, может легко поддерживать протокол обмена MicroLAN.




Адресация


            С адресным пространством 2e56 сеть MicroLAN перекрывает все существующие сетевые стандарты. Благодаря встроенному сетевому контроллеру, все приборы MicroLAN пригодны для использования в сети с момента своего выпуска. При производстве гарантируется уникальность сетевого адреса для каждого выпускаемого прибора. В сети MicroLAN не существует опасности конфликта сетевых адресов и недостаточности адресного пространства.

 

Условный поиск

 

            Стандарт MicroLAN обеспечивает выполнение команды поиска, предназначенной для обнаружения используемых в сети адресов со скоростью 75 узлов сети в секунду. Для исключения приборов, не генерирующих немедленный ответ во время процесса поиска, используется команда условного поиска. Эта специальная команда используется для идентификации и адресации приборов, сигнализирующих о выполнении определенного условия, таких как таймеры/счетчики (DS1994), сигнализаторы температуры (DS1820, DS1920) и датчики состояния (DS2405).

 

3.5. Компоненты и их влияние на работу сети MicroLAN

 

Соединительный кабель

 

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

            Кабель характеризуется погонной емкостью, индуктивностью и активным сопротивлением. Эти параметры определяют характеристический импеданс кабеля, демпфирование сигналов и скорость их распространения. Погонное сопротивление и индуктивность, как правило, незначительны и ими можно пренебречь. Погонная емкость, значение которой обычно лежит в диапазоне от 30 до 100 пФ/м, вносит существенный вклад в суммарную емкость сети.

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

 

Структура с открытым стоком

 

            Сеть MicroLAN использует конфигурацию с открытым стоком (монтажное «и») и с пассивным резистором, включенным в цепь питания 5 В. Связь выполняется во временных интервалах 60 мкс на бит, плюс небольшое время восстановления между отдельными временными интервалами. Благодаря низкому импедансу активных цепей генерации логического «0», время спада сигналов достаточно мало (~1 мкс). Время нарастания сигнала определяется произведением сопротивления нагрузочного резистора и суммарной емкости всех активных ветвей сети, включая емкость самого кабеля и входную емкость всех приборов.

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

 

Адресуемые ключи

 

            Адресуемый ключ является основным компонентом для образования ветвей сети. Он представляет собой трехвыводное устройство с выходным полевым транзистором с открытым стоком, управляемым по 1-проводной шине. Во включенном состоянии сопротивление транзистора обычно составляет около 15 Ом, в выключенном ~10 МОм. Из-за низкого, но не нулевого сопротивления открытого транзистора каждый ключ на пути к конкретному устройству в сети создает небольшое падение напряжения около 30 мВ (15 Ом x 2 мА при нагрузочном резисторе 2,5 кОм, подключенном к напряжению питания +5 В). Чем больше ключей включено на пути, тем выше напряжение логического «0» при чтении данных ведущим шины. Адресуемый ключ почти не влияет на уровень логической «1», лишь добавляя нагрузку на шине, как и любой другой компонент в активных ветвях.

            Если ветвь сети MicroLAN отключена путем перевода адресуемого ключа в состояние с высоким выходным сопротивлением, все устройства на этой и всех дочерних ветвях отключены от источника «паразитного питания». Адресуемые ключи теряют свое состояние. Если отключить ветвь от сети более чем на 1 секунду, а затем включить снова, то все ключи будут установлены в состояние с выключенным выходным транзистором. Из-за «паразитного питания» включение питания вызовет кратковременное падение напряжения на 1-проводной шине, пока конденсаторы питания приборов на подключенной ветви не зарядятся полностью.

            Если адресуемые ключи на ветвях используются для включения/выключения оборудования по сети MicroLAN, то для поддержания работоспособности оборудования на отключенных ветвях должен использоваться интерфейс с оптронной развязкой.

 

Приборы для ветвления сети

 

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

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

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

            Адресуемый ключ DS2407 содержит два N-канальных полевых транзистора с открытым стоком и улучшенными выходными параметрами (50 мА и 13 В в канале А и 8 мА и 6,5 В в канале В). В состав прибора входит также ЭППЗУ, объемом 1024 бит для хранения информации пользователя. Помимо основных команд протокола MicroLAN, микросхема поддерживает команду «условный поиск» для идентификации и доступа к приборам, которые определяются по условиям пользователя («паразитное питание»). При установке микросхемы в боковых ветвях сети, где время отключения от ствола может быть очень большим, для поддержания работоспособности прибора вывод Vcc подключается к внешнему источнику питания. Структурная схема прибора приведена на рис. 3.5.1.

 

Структурная схема DS2407

Рис. 3.5.1. Структурная схема DS2407

 

            Соединитель DS2409 является важнейшим элементом для построения и управления сетями MicroLAN с многоуровневым ветвлением. В отличие от адресуемых ключей, где коммутируется земляной провод, соединитель DS2409 поддерживает конфигурацию с общей «землей» для всей сети и обеспечивает питание отключенных сегментов сети. Это упрощает подачу питания к дополнительно подключаемым приборам и предотвращает потерю состояния приборов с «паразитным» питанием. Применение этой микросхемы позволяет также избежать прекращения передачи данных, вызванное приборами с «паразитным» питанием при активации ветви. Так как DS2409 не имеет программируемой пользователем памяти, то для отметки ветви можно подключать память любого прибора 1-Wire к дополнительному (auxiliary) выводу соединителя. Как основной, так и дополнительный выводы DS2409 управляются командой «интеллектуальное включение» (smart-on). Эта команда формирует последовательность сброс/присутствие на выбранном выходе до того, как электронный ключ разорвет соединение с 1-проводной шиной. Благодаря этому, ведущий шины может использовать команды сетевого уровня для работы с приборами активизированного сегмента, в то время как остальные приборы сети остаются в отключенном состоянии. Это значительно ускоряет анализ топологии постоянно изменяющейся сети. Применение соединителя позволяет ведущему шины определять подключение приборов на неактивных ветвях сети с помощью команды условного поиска. Пример использования соединителя DS2409 приведен на рис. 3.5.2.

 

Применение прибора DS2409 в конфигурации с одним стволом и несколькими ветвями

Рис. 3.5.2. Применение прибора DS2409 в конфигурации с одним стволом и несколькими ветвями

 

 

 

 

 

3.6. Нагрузочная способность и предельные параметры сети MicroLAN

 

            Нагрузочная способность сети MicroLAN зависит от величины нагрузочного резистора и питающего напряжения. Предел нагрузки достигается, когда падение напряжения на нагрузочном резисторе уменьшает напряжение на шине MicroLAN до 2,8 В. Это минимальное напряжение, требуемое для зарядки цепей «паразитного питания» микросхем. Нагрузочная способность сети MicroLAN приведена в табл. 3.6.1.

 

Табл. 3.6.1. Нагрузочная способность сети MicroLAN

Нагрузочный резистор, кОм

Напряжение шины питания

4 В

5 В

6 В

1,5

53

98

142

1,8

44

81

119

2,2

36

67

97

2,7

30

54

79

3,3

24

44

65

3,9

21

38

55

4,7

17

31

45

 

            Кроме нагрузочной способности, нагрузочный резистор сети MicroLAN совместно с емкостью кабеля и входными емкостями приборов, подключенных к активным ветвям сети, определяют постоянную времени  сети, то есть время, в течение которого на линии данных MicroLAN устанавливается уровень логической «1». Допустимые значения постоянной времени приведены в табл. 3.6.2.

 

 

Табл. 3.6.2. Допустимые значения постоянной времени 

Максимальное значение постоянной времени шины

Напряжение питания шины

4 В

5 В

6 В

, мкс

16,3

22,4

28,5

 

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

 

Табл. 3.6.3. Максимально допустимая емкость кабеля при максимальном числе приборов на шине

Нагрузочный резистор, кОм

Емкость кабеля при напряжении питания шины, пФ

4 В

5 В

6 В

1,5

9,27

12,0

14,73

1,8

7,72

10,0

12,28

2,2

6,32

8,18

10,05

2,7

5,15

6,67

8,19

3,3

4,21

5,46

6,7

3,9

3,56

4,62

5,67

4,7

2,96

3,83

4,7

 

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

            В табл. 3.6.4 приведены значения максимальной длины кабеля при погонной емкости кабеля 50 пФ/м.

Табл. 3.6.4. Максимальная длина соединительного кабеля при погонной емкости кабеля 50 пФ/м

Нагрузочный резистор, кОм

Максимальная длина кабеля при напряжении питания шины, м

4 В

5 В

6 В

1,5

185

240

295

1,8

154

200

246

2,2

126

164

201

2,7

103

133

164

3,3

84

109

134

3,9

71

92

113

4,7

59

77

94

 

 

Быстродействие компьютера и операционная система

 

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

 

3.7. 1-проводной интерфейс MicroLAN

 

Общие свойства

 

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

            Все приборы 1-проводной шины - самотактируемые кремниевые устройства. Логика обработки временных интервалов основывается на измерении и генерировании цифровых импульсов различной длительности. Передача данных асинхронная и полудуплексная. Данные могут интерпретироваться как команды (в соответствии с заранее определенным форматом), которые сравниваются с информацией, уже сохраненной в приборе, для принятия решения или могут быть просто сохранены для последующего использования. Все устройства в сети считаются ведомыми, в то время как управляющий сетью компьютер считается ведущим. Это позволяет избежать конфликтов, связанных с работой на общей шине нескольких ведущих. Кроме того, построение выходного устройства всех микросхем на основе полевого транзистора с открытым стоком, совместно с используемым алгоритмом работы приборов, позволяют разрешить все конфликты, связанные с одновременной работой на шине нескольких ведомых устройств.

 

 

Параметры по постоянному току

 

            Приборы MicroLAN используют конфигурацию с открытым стоком при значении напряжения питания от 2,8 В (минимальное напряжение питания) до 6 В (максимальное напряжение питания). Любое напряжение, превышающее 2,2 В, рассматривается как логическая 1 или высокий уровень, а напряжение ниже 0,8 В считается логическим 0 или низким уровнем. Напряжение питания должно составлять минимум 2,8 В для того, чтобы зарядить внутренний конденсатор, обеспечивающий питание прибора при низком уровне напряжения шины. Номинал конденсатора питания составляет приблизительно 800 пФ. Эта емкость заряжается на протяжении короткого промежутка времени, когда подается питание MicroLAN. После этого требуется только небольшая подзарядка конденсатора для восстановления полного заряда.

 

Временные параметры

 

            Временные соотношения в сети MicroLAN определены относительно временных интервалов. Поскольку форма падающего фронта в системах с открытым стоком менее подвержена влиянию емкости нагрузки, то для синхронизации работы всех приборов MicroLAN используется именно падающий фронт. Для обеспечения максимальной надежности чтения данных и команд, чтение осуществляется в середине временного интервала передачи данных. По определению активная часть временного интервала 1-проводной шины (tSLOT) составляет 60 мкс. После окончания активной части временного интервала требуется освобождение линии, чтобы напряжение на ней по крайней мере на 1 мкс превысило пороговый уровень 2,8 В, что необходимо для зарядки внутренних конденсаторов питания приборов на шине.

            При номинальных условиях, приборы MicroLAN определяют состояние линии через 30 мкс после падающего фронта. Внутренний временной масштаб приборов может отклоняться от номинальной величины. Допустимый диапазон отклонения составляет от 15 мкс до 60 мкс. Это означает, что фактически выборка может осуществляться ведомым устройством где-нибудь между 15 мкс и 60 мкс после синхронизирующего фронта. В течение этого временного интервала напряжение на шине данных должно оставаться ниже VIL MAX или выше VIH MIN.

 

Временные интервалы записи

 

            В 1-проводной системе значения логического 0 и логической 1 представлены импульсами различной длительности. Это объясняет форму временных диаграмм записи 1 и записи 0, необходимых для записи команд или данных в приборы.




            Продолжительность низкого уровня импульса записи 1 (tLOW1) должна быть короче 15 мкс; для записи 0 продолжительность низкого уровня импульса (tLOW0) должна быть, по крайней мере, 60 мкс, чтобы гарантировать правильность записи в самом плохом случае.

            Продолжительность активной части временного интервала может быть продлена свыше 60 мкс. Максимальная длительность ограничена тем, что импульс низкого уровня, продолжительностью, по крайней мере, восемь активных временных интервалов (480 мкс), определен как импульс сброса. Допуская то же самое максимальное отношение допустимого разброса временных интервалов, импульс низкого уровня, длительностью 120 мкс, может оказаться достаточным для сброса.



            Это ограничивает максимальную продолжительность активной части временного интервала записи 0, величиной 120 мкс, чтобы предотвратить неверное истолкование импульса в качестве импульса сброса.

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

 

Временные интервалы чтения

 

            Команды и данные передаются в приборы MicroLAN путем комбинации последовательности циклов записи 0 и записи 1. Для чтения данных ведущий шины должен генерировать последовательность циклов чтения, чтобы определить начало передачи каждого бита. С точки зрения ведущего шины, цикл чтения выглядит также, как и цикл записи 1. Используя в качестве стартового условия переход от высокого уровня к низкому, ведомый прибор посылает один бит адресуемой информации. Если бит данных равен 1, то прибор не предпринимает никаких действий на шине, оставляя импульс неизменным. Если бит данных равен 0, то прибор MicroLAN сохраняет низкий уровень на шине данных в течение интервала времени tRDV, составляющего 15 мкс.

 

 

            В этом временном интервале данные верны для чтения ведущим. Продолжительность tLOWR низкого уровня импульса, посланного ведущим, должна составлять минимум 1 мкс и быть как можно короче, чтобы максимум времени остался для измерения ведущим уровня ответного сигнала. Чтобы компенсировать емкость кабеля 1-проводной шины, ведущий должен детектировать состояние шины как можно ближе к 15 мкс после фронта синхронизации. После tRDV следует дополнительный временной интервал tRELEASE, после которого прибор MicroLAN освобождает 1-проводную шину, чтобы напряжение могло вернуться к уровню VPULLUP. Продолжительность tRELEASE может изменяться от 0 до 45 мкс, номинальная величина составляет 15 мкс.

 

Сброс и обнаружение присутствия на линии

 

            Как упомянуто выше, протокол обмена по 1-проводной шине поддерживает также импульс сброса. Этот импульс определен как одиночный импульс низкого уровня, минимальной продолжительностью в восемь временных интервалов (480 мкс), после которого следует высокий уровень импульса сброса tRSTH, длительностью также 480 мкс. Это состояние высокого уровня необходимо для того, чтобы приборы на шине MicroLAN могли генерировать импульс присутствия.

 

 

            В течение tRSTH никакая другая связь на 1-проводной шине не допускается. Импульс сброса предназначен, чтобы обеспечить стартовое условие, которое отменяет любой обмен на шине и возвращает все приборы на шине в исходное состояние. В системе с нестабильными электрическими контактами необходимо иметь средства перезапуска после нарушения контакта. В качестве такого средства и служит импульс сброса. Если ведущий шины посылает импульс сброса, то прибор MicroLAN ожидает в течение времени tPDH, и затем генерирует импульс присутствия, продолжительностью tPDL. Это позволяет ведущему легко определить, находится ли на шине хоть один прибор. Кроме того, если несколько приборов включены параллельно, ведущий может измерить оба интервала времени и таким образом получить информацию о разбросе временных параметров всех приборов на шине.

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

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

 

3.8. Компоненты и устройства для организации ведущего 1-Wire-сети

 

            DS2480B – драйвер однопроводной сети MicroLAN, обеспечивающий отработку 1-Wire-протокола на линиях значительной протяженности, обслуживающих большое число однопроводных устройств. Соответствует всем стандартам связи iButton и MicroLAN. Предназначен для организации мастера однопроводной линии на базе интеллектуального устройства, имеющего последовательный интерфейс. Например, стандартный СОМ-порт компьютера или узел UART микроконтроллера. Позволяет выбирать скорость обмена данными со стороны последовательного порта обмена с ведущим устройством (9600, 19200, 57600 или 115200 бит/сек.). Предоставляет возможность изменения параметров сигналов на однопроводной линии, используя т.н. программируемый механизм активной подтяжки шины данных 1-Wire-магистрали, обеспечивающий качественную передачу сигналов в длинных линиях и увеличение нагрузочной способности ведущего по количеству обслуживаемых им ведомых устройств.         Кроме того, содержит встроенный датчик тока потребления однопроводной линии. Используя его показания, можно реализовать еще более эффективный алгоритм работы активной подтяжки в перегруженных и проблемных 1-Wire-линиях. Поддерживает опцию 12-вольтового программирования EPROM памяти и 5-вольтовой подтяжки обслуживаемой линии для цифровых термометров и устройств, содержащих энергонезависимую память EEPROM. Реализует под управлением программного обеспечения ведущего интеллектуального устройства усовершенствованный протокол обмена данных на однопроводной линии. Позволяет работать на нескольких скоростях обмена, выбирая наиболее оптимальную для конкретного случая (длины линии, ее качества, количества задействованных устройств), в том числе режим Overdrive. Питание прибора производится напряжением от 4,5 до 5,5 В. Устройство размещается в корпусе для поверхностного монтажа SOIC-8.

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

            Адаптер DS9097U выпускается в трех различных вариантах DS9097U-009/DS9097U-S09/DS9097U-E25, отличающихся друг от друга конструктивно и схемотехнически. Так схема модификаций DS9097U-009 и DS9097U-S09 смонтирована внутри 9-выводного DB-разъема последовательного COM-порта персонального компьютера. Для подключения линии MicroLAN используется стандартная телефонная розетка типа RJ11 (TJC-6P6C). Эти модификации не рассчитаны для реализации операций по программированию приборов, содержащих встроенную однократно программируемую память EPROM. Для идентификации адаптеров типа DS9097U-009 используется встроенная электронная метка DS2502P (групповой код 09Н), в устройствах модификации DS9097U-S09 микросхема идентификатора отсутствует. Полным аналогом прибора DS9097U-S09, который предназначен исключительно для обслуживания приборов в корпусах MicroCAN, является адаптер DS1411. Это устройство отличается от адаптера типа DS9097U-S09 только тем, что взамен приемной розетки типа RJ11 для связи с 1-Wire-компонентами в нем используется специальная защелка класса DS9098, для установки устройства iButton.

            Вариант конструкции DS9097U-E25 смонтирован внутри 25-выводного DB-разъема последовательного COM-порта персонального компьютера. Для подключения линии MicroLAN также используется телефонная розетка типа RJ11 (TJC-6P4C). Схемотехнически DS9097U-E25 также предназначен для сопряжения однопроводной линии с COM-портом персонального компьютера, однако, в отличие от модификаций DS9097U-009/DS9097U-S09, он имеет дополнительную возможность поддержки процедур программирования встроенной однократно программируемой памяти EPROM подключенных к нему 1-Wire устройств. Выполнение процедуры программирования возможно при подсоединении к прибору через отдельное дополнительное гнездо, расположенное на его корпусе, внешнего источника питания, снабженного обычным бытовым штекером. Встроенная метка идентификации у адаптеров типа DS9097U-E25 отсутствует.

 

3.9. Сопряжение 1-проводной шины с компьютером

 

            Подключение шины MicroLAN к микроконтроллеру не вызывает проблем, поскольку она является 1-проводной. Вопросы возникают, если в качестве ведущего используется персональный компьютер (ПК). Фирмой Dallas Semiconductor выпускается ряд приборов для подключения 1-проводной шины MicroLAN к ПК.

            Чтобы подключиться непосредственно к последовательному порту и работать через интерфейс RS-232C, используется драйвер последовательного порта DS2480. Он напрямую подключается к асинхронному последовательному порту (UART) и к любым системам, поддерживающим 5 В RS-232C интерфейс. Микросхема обеспечивает обмен данными на 4-х скоростях: 115,2, 57,6, 19,2 и 9,6 Кбит/сек. На рис. 3.9.1 представлена схема подключения 1-проводной шины непосредственно к асинхронному порту.

 

Схема подключения однопроводной шины непосредственно к UART с помощью DS2480

Рис. 3.9.1. Схема подключения однопроводной шины непосредственно к UART с помощью DS2480

 

            Подключение MicroLAN к параллельному порту обеспечивается шинным драйвером DS1481. Это специализированный тактовый генератор 1-проводной шины. Обычно он используется для подключения к параллельному порту и обеспечения соединения интерфейса с ведущим. Сигналы «занято» позволяют ведущему выполнять задачи после завершения передачи на 1-проводной шине. Подключение шины к параллельному порту через DS1481 показано на рис. 3.9.2.

 

Схема подключения однопроводной шины к параллельному порту

Рис. 3.9.2. Схема подключения однопроводной шины к параллельному порту

 

 

 

Программное обеспечение системы температурного мониторинга

 

            В качестве программного обеспечения разработанной системы температурного мониторинга была выбрана программа TempControl 1.1. Данная программа позволяет вести наблюдение за температурой различных объектов или сред, в которые помещены датчики, наблюдать на графике за происходящими изменениями, сохранять изменения в графическом виде и в виде лог-файла, а также контролировать нахождение температуры в норме, предупреждая пользователя звуковым сигналом и (или) включая устройство, подключенное к порту ввода/вывода, эл. ключу.

            Программа работает с цифровыми термометрами DS1820, DS18S20, DS18В20, эл. ключами DS2405 фирмы Dallas Semiconductor. Датчики и эл. ключи подключаются через адаптер сети MicroLAN, подключаемый к последовательному порту персонального компьютера.

            Диалог настройки программы состоит из нескольких закладок:

Закладка «Основные» - настройка параметров сети, времени преобразования и прочего.

Закладка «Лог» - настройка параметров лог-файла.

Закладка «График» - настройка  параметров графика.

Закладка «Звуки» - настройка параметров звуковой сигнализации.

Закладка «Цвет» - настройка цветовых параметров таблицы, графика, строки состояния.

            График визуально представляет изменение температуры определенных датчиков.

 

 

            Заголовок графика показывает дату измерения температуры и шкалу измерения (Цельсий, Фаренгейт, Кельвин). Снизу расположена ось времени, слева - ось температуры. Ниже оси времени расположена легенда, если ее отображение включено. Линия графика показывает процесс измерения температуры, точки на линии - состояние датчика. Легенда показывает датчики, отображаемые на графике, состояние датчика и цвет линии, соответствующей датчику. График можно сохранить в графическом формате или распечатать. Щелчок левой кнопкой мыши по точке на графике показывает время и температуру определенного датчика. Увеличение масштаба графика производится путем выделения области при нажатой левой кнопке мыши, возврат к масштабу 1:1 производится двойным щелчком левой кнопки мыши.

            Таблица рабочего окна программы отображает основную информацию о подключенных датчиках и температуре в режиме реального времени.

Описание колонок таблицы:

«Состояние» - отражает состояние датчика.

«Датчик» - отображает имя датчика.

«Серийный номер» - отображает уникальный серийный номер.

«Температура» - отображает температуру или ошибку датчика.

«Макс.» - отображает максимальный порог температуры.

«Мин.» - отображает минимальный порог температуры.

«Параметры» - отражает состояние включенных параметров.

«График» - цвет, которым датчик будет показан на графике.

Правый щелчок мышью по строке датчика в таблице вызывает контекстное меню.

Описание пунктов контекстного меню:

«Термометр» - включает или выключает окно термометра.

«Строка состояния» - выводит температуру датчика в строку состояния.

«Датчик» - включает или выключает датчик.

«Тревога» - включает или выключает режим тревоги.

«Лог-файл» - включает или выключает режим записи в лог-файл.

«Показывать в трее» - включает или выключает вывод температуры датчика в трее.

            В строке состояния программы находятся:

1. Индикатор активности, который может изменять свой цвет, отражая тем самым текущее состояние программы:

- серый: программа бездействует;

- красный: программа находится в режиме  преобразования;

- зеленый: программа находится в режиме считывания;

- желтый: программа приостановлена.

2. Тип адаптера MicroLAN.

3. Коммуникационный порт.

4. Количество датчиков в базе.

5. Индикатор чтения датчиков.

6. Время преобразования.

7. Строка состояния программы или температура определенного датчика.