|
Однопроводный интерфейс 1-Wire , разработанный в конце 90х годов фирмой Dallas Semiconductor, регламентирован разработчиками для применения в нескольких основных сферах - приложениях, одной из которых является « системы автоматизации ». Реализация локальных распределенных систем на базе 1-Wire шины является на сегодня де-факто наиболее оптимальным решением для большинства практических задач автоматизации. В настоящее время Dallas Semiconductor поставляет широкую номенклатуру однопроводных компонентов различных функциональных назначений для реализации самых разнообразных сетевых приложений. Поэтому имеется огромное число конкретных примеров использования 1-Wire интерфейса для целей автоматизации в самых различных областях, и все больше разработчиков проявляют интерес к этой технологии.
• О ПРОГРАММЕ
И так,… Что же это за программа, которая может осуществить все ваши мечты, и реализовать все желания? Куда же, и каким образом нужно подключить компьютер, что бы тот мог превратиться в многофункциональный офисный измеритель параметров Вашего технологического процесса?
Разработанная компанией Dallas Semiconductor система автоматизации 1-Wire, представляет собой информационную сеть, использующую для осуществления цифровой связи одну линию данных и один возвратный (или земляной) провод. Ограничение максимальной длины однопроводной линии, без специальных дополнительных вспомогательных устройств (повторителей), регламентировано на уровне 300м. Основой архитектуры сетей 1-Wire, является топология общей шины, когда каждое из устройств подключено непосредственно к единой магистрали, без каскадных соединений или ветвлений. При этом используется структура сети с одним ведущим или мастером и многочисленными ведомыми. Хотя существует ряд приемов организации работы подобных сетей в режиме мультимастера.
К устройствам, подключаемым к сетям 1-Wire относятся датчики температуры, АЦП, часы реального времени, счетчики, потенциометры, ключи, память, серийные номера. Данный программный продукт позволяет пользоваться следующими устройствами.
- DS18B20 –
Цифровой термометр. Диапазон температур -10 + 85'C с точностью +-0.5'C или -55 +125'C
с точностью +-2'C
- DS2438-
Устройство мониторинга батареи. В устройстве объединены: термометр, АЦП 0-10В, АЦП -250+250 мВ, АЦП питающего напряжения. Данное устройство можно применять для подключения любых датчиков, выдающих выходной унифицированный сигнал 0-10В, или токовый унифицированный сигнал.
- DS2450-
4х канальный 16 бит АЦП 0-5В или 0-2,5В (шкала выбирается).
- DS2409-
Устройство разветвления сети. С помощью данного устройства можно разветвить линию на две ветки, либо ответвить две ветки от общего ствола, в зависимости от выбранной топологии. С данными устройствами программа работает автоматически. Она сама подключает и отключает соответствующие ветки, посредствам чего, последовательно, ветка за веткой, обрабатывает всю сеть не зависимо от выбранной топологии. Количество уровней ветвления – программой не ограниченно. Т.Е. на каждой ветке ветвителя могут находиться другие ветвители, а на их ветках – другие, и.т.д. От количества ветвителей и количества уровней ветвления зависит только быстродействие сети, но не существенно.
- DS2405-
Ключ. Один дискретный выход. С помощью ключа можно управлять дискретными исполнительными механизмами. Работает в постоянном и импульсном режимах (импульс – пауза). Если использовать интегральный счетчик (одно из виртуальных устройств), то с помощью ключа, можно выполнять управление системами, обладающими запаздыванием реакции на управляющее воздействие.
Каждое устройство 1-Wire обладает своим уникальным ROM номером, который присваивается устройству при изготовлении, и не меняется в течении жизни устройства. По этому номеру устройства в сети идентифицируются мастером и команды могут адресоваться одному конкретному устройству из множества устройств на линии, благодаря чему множество различных устройств могут бесконфликтно работать на одной линии.
Все компоненты сети являются самотактируемыми полупроводниковыми устройствами. Обмен информацией между мастером и компонентами происходит посредствам управления длительностью импульсных сигналов в однопроводной среде и их измерение. Передача сигналов для 1-Wire интерфейса – асинхронная и полудуплексная. Сигналы между мастером и ведомыми компонентами делятся на команды и данные. Команды отдаются мастером, а ведомыми – воспринимаются. Данные могут передаваться как от мастера к ведомым, так и наоборот.
Мастером сети в нашем случае выступает офисный персональный компьютер. Устройством сопряжения является 1-Wire адаптер. Адаптер может подключаться к COM , USB или LPT порту.
При реализации 1-Wire интерфейса используются стандартные КОМП/ТТЛ логические уровни сигналов, а питание однопроводных компонентов может осуществляться от внешнего источника с рабочим напряжением соответствующим рабочему напряжению компонентов. Для термометра ds18b20 это 2,8-6,0 В, а ds2438 может благополучно работать от питания в диапазоне 2,4-10,0 В. Причем источник питания может располагаться либо непосредственно возле компонента, в виде гальванического элемента, или блока питания работающего от электрической сети, либо питание элементов обеспечивается по отдельной линии питания. При этом по отдельной линии питания может идти готовое стабилизированное напряжение, необходимое для работы элементов, а можно по этой линии пустить напряжение завышенное, которое будет понижаться и стабилизироваться в каждой точке подключения датчиков.
Многие датчики, и термометры ds18b 20 в том числе, предусматривают своей конструкцией принцип «паразитного питания». При этом они в период аналогово-цифровой конвертации (самый энергоемкий процесс) ожидают высокого уровня сигнала на линии данных, от которого и питаются. В процессе обычного обмена данными паразитные устройства аккумулируют в своих, специально предназначенных для этого емкостях, электрическую энергию импульсов передаваемых по шине данных, после чего расходуют эту энергию для неэнергоемких процессов. Работа на паразитном питании программой TreeWorks не предусмотрена. Все устройства в обязательном порядке должны быть запитаны внешним питанием.
Фирма Dallas Semiconductor выпускает несколько видов адаптеров, которые могут подключить к персональному компьютеру 1-Wire сеть через USB , COM или LPT порт. Это дает пользователю возможность выбрать для себя максимально удобный и выгодный вариант подключения. Если пользователь имеет некоторые навыки в производстве электронного оборудования, то из небольшого количества общедоступных электронных компонентов можно собрать достаточно мощный адаптер 1-Wire сети для COM порта типа DS9097E .
Если же организация 1-Wire сети связанна с трудностями проблемной линии, (что может быть вызвано слишком большой длинной линии, большим количеством ведомых устройств, плохим качеством кабеля или сложной топологией, помехами в зоне прокладки кабеля, и т. д.) то целесообразно воспользоваться интеллектуальным адаптером для COM порта типа LINK . Он реализован на базе микропроцессора. При этом устройство полностью эмулирует со стороны последовательного порта работу популярного адаптера DS9097U
производства Dallas Semiconductor и таким образом остается совместимым со всем разработанным ранее программным обеспечением, в том числе и с TreeWorks . Благодаря собственным интеллектуальным ресурсам этот адаптер реализует льготный режим работы однопроводных устройств на проблемных линиях, в условиях сложной помеховой обстановки. LINK улучшает механизм активной подтяжки на линии, что позволяет получать действительно идеальные сигналы обмена при длинах кабеля до 300 метров и числе ведомых компонентов до 250 штук, а использование процессоров такого адаптера специальных алгоритмов цифровой фильтрации многократно улучшает устойчивость обслуживаемой 1-Wire линии к электромагнитным помехам, шумам и отражениям сигналов.
Для работы на проблемных линиях, программа снабжена собственным механизмом реакции на ошибки. При возникновении ошибок работы с устройствами сети, программа пытается произвести повторное обращение к устройству, при работе с которым была зафиксирована ошибка. Количество повторных попыток, которые программа будет предпринимать, указывается пользователем в настройках программы.
При построении 1-Wire сетей, очень важно исполнение однопроводной линии связи. Как правило 1-Wire линии имеют структуру состоящую из трех проводов: DATA – шина данных, RET – возвратный провод (земля), EXTERNAL POWER – внешнее питание. При чем по проводу внешнего питания не обязательно должно идти напряжение питания доступное только для датчиков. Этот провод часто используется для подведения питания к внешним относительно сети цепям датчиков и органов управления. В зависимости от конструкции адаптера, технологи прокладки кабеля, типа кабеля и количества ведомых компонентов различают следующие варианты организации 1-Wire сетей.
Классификация линии |
Длина линии |
Количество ведомых устройств |
Тип используемого кабеля |
Топология |
Мастер линии |
Миниатюрные линии |
До 5м |
До 10 шт |
Любой |
Свободная |
Любой ведущий с пассивной подтяжкой (резистор к питанию) |
Короткие линии |
До 30 м |
До 50 шт. |
4-хпроводный телефонный |
Общая шина с патчами до 0,5 м |
Адаптеры на базе дискретных компонентов DS9097E, DS1410E |
Средние линии |
До 100 м |
До 200 шт. |
Витая пара 3 категории |
Строгая общая шина |
Активная подтяжка (DS2480В, DS2490, DS2482 или специальное схемное решение (MAX6314)) |
Длинные линии |
До 300 м |
До 250 шт. |
Витая пара 5 категории или IEEE1394 (Firewire) |
Общая шина без разрыва ствола |
LINK, программная модификация временных слотов 1-Wire-протокола |
При организации сложных 1-Wire сетей, когда необходимо разнести по территории сложную древовидную или лучевую структуру сети, для ветвления сети используют специальные устройства DS2409 – 1-Wire Coupler . Устройство разветвления сети по командам мастера способно подключить или отключить одну из своих веток. Ветками устройства являются линии данных. Разветвитель сети можно программно заставлять подключать линию данных, на которой расположены устройства, с которыми предстоит работа, и отключать ту линию, с которой работа завершена. Таким образом, если все ветки не подключены одновременно, а в определенный момент времени подключена только одна ветка из множества, то можно очень сильно разнести сеть по территории, и при этом не превысить максимально допустимую длину линии. Поочередное обслуживание мастером сети каждой из ветвей, при отключенных остальных ветвях, позволяет значительно увеличить количество одновременно подключенных к линии ведомых устройств, и очень сильно разнести сеть по территории.
Программа TreeWorks работает с разветвителями сети автоматически. Она сама определяет последовательность подключения и отключения веток ветвителей расположенных на различных уровнях ветвления, сама выполняет поиск и идентификацию устройств расположенных на всех ветках всех ветвителей различных уровней ветвления сети. При нормальной работе сети программа всегда закрывает за собой открытые ветки, и не позволяет остаться соседним веткам открытыми одновременно. Таким образом программа постоянно поддерживает сеть в =максимально коротком= состоянии. Единственное о чем остается позаботиться пользователю – это о том, чтоб в своем самом длинном положении, (при подключении своей самой длинной ветки) сеть, не превышала максимально допустимой длинны.
|