Для удалённого управления объектами или контроля параметров датчиков с диспетчерского пункта в настоящее время широко используют персональные компьютеры. В промышленности для этих целей используется интерфейс RS485 позволяющий подсоединять по витой паре до 32 приемопередатчиков на расстояние до 1200 метров со скоростью до 10 Мбит/с. Подробнее про данный интерфейс можно прочитать в [1.] Всё бы хорошо, но компьютеры не комплектуются подобными интерфейсами. Интерфейс RS232  и тот на современных компьютерах можно встретить достаточно редко. А вот USB порт имеется практически на любом.

Автор приводит практическую схему адаптера виртуального USB порта в RS485. А так же RS485 в последовательный  порт USART, который имеется в PIC18F8720 и многих других микроконтроллерах. Рис1. Прелесть виртуального USB порта заключается в том, что программное обеспечение на компьютере можно писать как для порта RS232. А это значит, что управлять портом можно будет при помощи такого элемента управления как MSComm. В данной статье управляющая программа компьютера не рассматривается, поэтому посылать данные с компьютера мы будем при помощи терминалки COMPump. [2] Подробное описание работы с данной терминалкой рассматривалось в статье [3] Виртуальный USB/ RS-232  порт, установка драйверов также рассматривались в статье [4]. С программной точки зрения она ни чем не отличается от USB/RS485, хотя RS232 это полнодуплексный приёмопередатчик, а RS485 полудуплексный.

Итак драйвер  USB/RS485 отличается от USB/RS232 заменой микросхемы DD2 рис1 в статье [4] ADM213EARS на микросхему D103 типа SN75176 рис1 данной статьи. Данная микросхема является законченным полудуплексным приёмопередатчиком RS485, выходной драйвер рассчитан на ток +-60ма. Микросхема имеет встроенное устройство защиты от перегрева на уровне 150гр.С. Минимальное входное сопротивление 12ком, чувствительность по входу 200мв. и входной гистерезис 50мв. Алгоритм работы приёмника и передатчика приведены в таблицах 1,2. Микросхема виртуального драйвера D101, (FT232BM) позволяет без переделки программного интерфейса подключить микросхему SN75176 и работать с портом RS485 в полудуплексном режиме. Единственный нюанс который следует учитывать при разработке программы на компьютере, это то что во время передачи байта по интерфейсу вы получите в приёмнике передаваемый байт, так называемое эхо. Интерфейс RS485 рассчитан на соединение приёмопередатчиков при помощи витой пары на расстояние до 1200метров, однако в условиях сильных помех следует провод поместить в экран [1].

 

Табл1. передатчик

D DE A B
1 1 1 0
  0 1 0 1
Z 0 Z Z

Табл2. приёмник

A-B Инв.RE R
Vid>=0,2в 0 1
 -0,2в<Vid<0,2в 0 ?
Vid<=-0,2в 0 0
X 1 Z
Открытый 0 ?

image002 (10).gif РИС 1

На месте управляющего устройства так же необходимо установить микросхему приёмопередатчика D3(SN75176). Так как для микроконтроллера драйвер мы пишем сами, поэтому переключение с приёма на передачу мы осуществляем по ножке 39 порта PORTJ4. На схеме рис1 микросхема D2 выполняет роль 10 разрядного аналого-цифрового преобразователя. Программа приведенная в HEX формате приведена в табл3.

Алгоритм её работы следующий. Программа каждые 21 мкс. считывает данные со входа АЦП и записывает во внутренний буфер состоящий из 79байт. Примерно через 1,7мс. Буфер заполняется полностью и процесс повторяется. При этом чтобы прочитать данный буфер с компьютера, необходимо послать адрес данного устройства. В нашем случае это 0x0A. После получения адреса  микроконтроллер передаст 79 байт на компьютер. Адресация необходима в том случае если к линии RS485 будет подключено более одного объекта управления.

Всё устройство было выполнено на макетной плате, кроме микроконтроллера. Для него необходимо изготовить печатную плату, для того чтобы можно было к нему припаять выводы. Так как данный микроконтроллер имеет корпус TQFP80 размером 12х12мм и имеет 80 выводов. Печатная плата приведена на рис 2  изготовлена из одностороннего стеклотекстолита толщиной 0,5мм и размерами 35х35мм. Паять данную микросхему желательно воздушной паяльной станцией.

Tablitsa3.docx

image004 (5).gif

Литература:

1. http://www.mayak-bit.narod.ru/rs485.html#vst#vst   RS-485 для чайников. Евгений Александрович Бень. 2003г.
2. http://compump.narod.ru/html/download.html -Бесплатная программа COMPump© 1.3a.
3. Абрамов С.М. ПРОСТОЙ ТЕРМОМЕТР С ДАТЧИКОМ ТЕМПЕРАТУРЫ НА  DS18B20
4. И. Хуртин. Преобразователь интерфейса USB—RS-232 на микросхеме FT232BM. Радио№10 2005г стр.27
5.А.Лысенко и др. Преобразователи интерфейса USB на микросхемах FT8U232AM, FT8U245AM. Радио №6 стр27 №7 стр 36. 2002г.стр27