Для чего нужен и почему используется именно RS-232 в ПЛК? Это же древний интерфейс! Оставить комментарий

Приветствую Вас, друзья. Продолжаем изучать системный блок. Сегодня расскажу о компьютерных портах.  Что это такое? С  бурным развитием интернет-технологий понятие «порт», «сокет» у многих на слуху. Это другая ветвь,  и мы  сегодня не  будем говорить о ней. Тема этой статьи содержит информацию о сугубо «железных», » реальных» разъемах (или портах), которые предназначены для подключения  различных устройств к системному блоку.

image

«Железо» тоже совершенствуется и с каждой генерацией мы обнаруживаем новые виды разъемов (или порты) на купленных системных блоках. К ним подключаются различные, так называемые периферийные устройства. Системный блок + монитор = компьютер. Все что подключается к ним (принтеры, сканеры, программаторы, видеокарты, мониторы и так далее) — это периферия.

На компьютере портов много. Они находятся на материнской плате системного блока и представляют собой разъемы (большая часть из них на задней части) . Часть разъемов выводится  и на переднюю панель и они так же  подключены к материнской плате.

На нее так же можно дополнительно установить  и дополнительные устройства через специальные слоты расширения. К таким устройствам относятся дискретные видеокарты, сетевые карты, адаптеры Wi-Fi, USB-хабы, карт-ридеры, электронные замки, видеокарты и много чего еще.

image

Наличие слотов расширения позволяет самостоятельно собирать компьютер наподобие конструктора, на основе ваших предпочтений, не тратя лишних денек.  Потому что разработчики  давно стандартизировали выпускаемое оборудование. При необходимости можно провести его обновление. Это главная причина того, что IBM-PC совместимые компьютеры (так называется такая платформа) когда-то   вытеснили с рынка Apple Macintosh.

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

Краткий список портов компьютера

Нужно уметь отличать разъемы один от другого визуально. Не всегда производитель указывает их наименования. Так как разъемы  сгруппированы на задней панели системника, то с нее и начнем. Все порты  имеют англоязычное наименование, тут уж ничего не поделаешь. Кратко их можно разделить:

  1. Последовательный порты;
  2. Параллельный порт;
  3. Порты для компьютера и мыши;
  4. Порты USB;
  5. Порты SCSI;
  6. Видео-порты;
  7. Разъемы сетевых кабелей;
  8. Разъемы аудио;
  9. Карт-ридеры;

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

Такие платы могут поддерживать и  аудио или  видеоформаты сторонних производителей (Sony, Philips) и тогда можно встретить на таком компьютере соответствующий разъем. Особым разнообразием сегодня  могут похвастаться аудио и видео порты.

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

Последовательный порт —  сегодня уже морально устаревшая вещь. Но для специалистов, которые занимаются ремонтом электронных устройств они представляют ценность. Изначально такой порт использовался для подключения модема. Скорость передачи данных  типичная — от 110 до 115200 бит в секунду. Их обычно было по два с разъемами DB 9 типа «папа»:

Скорости вполне хватает для программатора, чтобы прошить микроконтроллер или мобильный телефон. Или для обмена данными  с источником бесперебойного питания. Называются эти порты COM1 и COM2.

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

Для подключения используется разъем DB25 типа «мама». Скорость передачи данных небольшая — но вполне хватает для программатора или старого лазерного принтера. У большинства старых компьютеров всегда было по два последовательных порта и один параллельный.

Порты для клавиатуры и мыши знакомы всем  пользователям. В современных компьютерах они имеют фиолетовый и зеленый цвета. Такого же цвета штекеры у мыши и клавы. Перепутать сложно. Разъемы шестиконтактные (mini -Din ) типа «мама». Их придумали в Германии и это стало стандартом. Другое название IBM/PC2

так как впервые они были использованы на уже упомянутой платформе IBM PC. Если перепутали при подлкючении разъемы — устройства работать не будут. Несомненный плюс — экономят USB порты. Минус — обязательно требуется перезагрузка компьютера если подключили неправильно. Кстати, тоже исчезающий вид. На многих современных компах этот порт оставлен всего один — и покрашен он одновременно в фиолетово-зеленый цвет. Подключать к нему можно только одно устройство или мышь — или клаву.

Порты USB. Универсальная последовательная шина, (Universal Serial Bus). C 1998 года вытесняет другие порты; даже на автомагнитолах и видеокамерах Вы сегодня найдете этот разъем. У первых поколений скорость передачи данных была около 12 мб /сек. — умопомрачительная по тем временам. Сегодня мы используем USB 3, скорость которого 5 Гбит/с

Эти порты внешне не изменились. На компьютере стоят разъемы типа «А». Разъем на любом подключаемом устройстве принято называть «B».  Имеет четыре контакта два для тока, два для передачи данных. Соответственно, на портах USB 3.0 контактов в два раза больше.

Порты SCSI (Small Computer Systems Interface)Довольно специфическая и редкая вещь у нас; мне думается что и за рубежом ее уже не встретишь у рядового пользователя. Полагаю, что устройства с такими интерфейсами делались под заказ —  для корпоративного использования. Это — сетевой интерфейс для обмена данными, со скоростью до 160 мбит/с.

Мне попался один раз ноутбук, привезенный из америки 1999 г. выпуска, фирмы Dell. У него имелся  один из таких многоконтактных портов. Расположен он был таким образом, что использовать его можно было, только установив ноутбук на стол. Сам разъем закрыт шторками на пружинках. Следовательно, где -то в Америке  были и столы, в которые этот разъем встроен… Приносишь,ставишь на стол,  и он подключен к корпоративной сети.

Разновидностями интерфейса являются уже знакомый  нам DB-25, а так же  50-High-Density, 68-контактный -High-Density, 80-контактный SCA, Centronics. Можно было подключать и жесткие диски к этому интерфейсу. Отвечает за подключение специальная плата — хост-адаптер.

Видеопорты. Их так же не спутаешь с другими. Стандартный видеопорт —  15 контактный VGA разъем типа D синего цвета, «мама». Служит для подключения монитора.  Это старый стандарт, принятый в 1987 году. Не на всех материнских платах он бывает. Если его нет  у вас  «на борту», то его можно найти в нижней части системного блока. В слот расширения установлена видеокарта:

Если вы решили установить видеокарту в дополнение к уже имеющейся («на борту»), то последняя работать уже не будет. Это нормально. Монитор будет работать только при подключении к установленной.

На современных видеокартах VGA порт  уже стало трудно встретить; их заменяют другой разновидностью  —  DVI. На материнской плате переходного типа это выглядит как то так:

Очень часто встречаются случаи, когда  выходит из строя VGA- видеокарта. После покупки новой, обнаруживается, что на ней только DVI — порты .В этом случае нужно приобрести переходник и установить его на разъем DVI:

Обращайте внимание, на тип переходника. Дело в том, что и DVI разъемы отличаются — на новых дорогих видеокартах стоят DVI-D или DVI-I порты. Переходники не взаимозаменяемые, уточняйте этот момент  у продавца.

В этом случае не нужно будет покупать новый монитор. Новые мониторы пока тоже идут с двумя типами разъемов — VGA и DVI.

Порт HDMI. Куда теперь без него в 21 веке? Мультимедиа-интерфейс предназначен для передачи видео и аудио высокой четкости с защитой от копирования. Одновременно заменяет как и вышеперечисленные видео так и некоторые аудио порты(SCART, VGA, YPbPr, RCA, S-Video.). Наверное этот интерфейс со временем заменит все остальное. Его можно встретить на любой цифровой технике —  от фотоаппарата до  компьютера (или ноутбука).

Размер сравним с USB портом, а скорость передачи данных огромна по сравнению с выше перечисленными  — до 48 Гбит в секунду. Передача данных осуществляется по кабелю с хорошей защитой от помех. Кабель можно подключить  к ноутбуку и к телевизору и смотреть видео. Длинна кабеля не должна  превышать 10 метров, в противном случае нужен усилитель/повторитель сигнала.

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

Аудиостандарт от фирмы SONY и PHILIPS, эта карта подключается к материнской плате с помощью коннектора на соосветствующий разъем. Стандартные гнезда для подключения микрофона, колонок, наушников  выглядят так:

Если хотите HD аудио, то возможно вам придется подключить соответствующий адаптер вот сюда. Читайте документацию по своей материнке:

Сетевые порты. Без них в наше время никак не обойтись. Мы получаем интернет именно через сетевой интерфейс по кабелю, или по радио. На материнских платах стоит стандартный встроенный разъем RJ 45 для подключения интернет- кабеля:

На старых компьютерах стандарт скорости был 100 мбит /с, современные сетевые карты выдают 1000 мбит/сек. Если Вам не достаточно одной сетевой карты, можно купить дополнительную и вставить ее в слот расширения:

Такая карта подходит для PCI слота. Есть варианты и поменьше, для PCI-express:

Уточняйте  скорость передачи данных той или иной карты при покупке. Для любителей беспроводных сетей так же представлен широки выбор Wi-Fi адаптеров:

Их так же можно подключить в слоты расширения PCI ,либо PCI — ехpress. Однако, если Вы не хотите ковыряться в системном блоке, можно купить и USB — вариант такой карты:

Вы вставляете ее в порт и вводите пароль от WIFI. И у вас подключено еще одно периферийное устройство. У многих моделей домашних принтеров так же есть адаптер WIi-Fi,  и при такой настройке можно печатать  без проводов. Благо, сегодня богатый выбор и сетевых карт и принтеров.

Как отключить USB порты при выключении компьютера?

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

Клавиатура так же светится, что ночью не совсем удобно, хотя  и не плохо (если печатаешь в темноте). Для того, чтобы отключить питание портов насовсем —  попробуйте набрать сочетание клавиш  Win+R  и  в строке «Выполнить» вставить команду powercfg /h off.

После чего нужно выключить компьютер. Симптомы скорее всего исчезнут. Эта команда отключает режим сна, и компьютер вырубается полностью. Можно посмотреть в панели управления настройки по питанию в «Плане электропитания»  Но, есть такие модели плат, где эта настройка выключается через BIOS. А на самых передовых эта функция не отключается или спрятана очень глубоко. Предполагается, что так удобно ночью заряжать гаджеты.

В трудных случаях может помочь документация по материнской плате. Находите нужную перемычку (джампер) и вручную отключаете питание. Но это слишком сложно . А самый простой способ — это купить USB — хаб с выключателями и к нему уже подсоединить нужную периферию. И не мучиться. Пока, до новых  встреч!

Body

Последовательные порты полюбились разработчикам за их простоту в обслуживании и использовании.

И конечно же писать в консоль терминальной программы это всё хорошо, но хочеться своё приложение, которое по нажатии клавиши на экране выполняет нужные вам действия 😉

В этой статье опишу как работать с com портом на языке Си++.

Решение простое, но почемуто рабочий пример найден был не сразу. За сим сохраняю его тут.

Конечно вы можете использовать кроссплатформенные решения вроде QSerial — библиотеки в составе Qt, я наверное так и сделаю, но в будующем. Сейчас же речь о «чистом» виндовском C++. Писать будем в Visual Studio. У меня 2010, хотя роли это никакой не играет…

Создаём новый консольный Win32 проект.

Инклудим header файлы:

 #include  #include  using namespace std;

Объявляем обработчик com порта:

 HANDLE hSerial;

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

Дальше начинаем формировать функцию main:

 int _tmain(int argc, _TCHAR* argv[]) {

Терпеть не могу виндовский стиль программирования. Обозвали всё посвоему и сидят радуются…

Теперь магия объявления строки с именем порта. Дело в том, что char оно преобразовывать само не умеет.

 LPCTSTR sPortName = L"COM1";  

Работа с последоавательными портами в Windows проходит как с файлом. Открываем первый ком порт для записи/чтения:

 hSerial = ::CreateFile(sPortName,GENERIC_READ | GENERIC_WRITE,0,0,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,0);

Проверяем работоспособность:

 if(hSerial==INVALID_HANDLE_VALUE) { if(GetLastError()==ERROR_FILE_NOT_FOUND) { cout << "serial port does not exist.n"; } cout << "some other error occurred.n"; } </pre>Теперь нужно настроить параметры соединения: DCB dcbSerialParams = {0}; dcbSerialParams.DCBlength=sizeof(dcbSerialParams); if (!GetCommState(hSerial, &dcbSerialParams)) { cout << "getting state errorn"; } dcbSerialParams.BaudRate=CBR_9600; dcbSerialParams.ByteSize=8; dcbSerialParams.StopBits=ONESTOPBIT; dcbSerialParams.Parity=NOPARITY; if(!SetCommState(hSerial, &dcbSerialParams)) { cout << "error setting serial port staten"; } </pre>На msdn советуют сначала получить параметры, а затем менять их. Мы ещё только учимся, поэтому делаем как просят.Теперь объявим строку, которую будем передавать и переменные необходимые для этого: char data[] = "Hello from C++";  // строка для передачи DWORD dwSize = sizeof(data);   // размер этой строки DWORD dwBytesWritten;    // тут будет количество собственно переданных байт 

Посылаем строку. Напомню, что пример простейший, поэтому никаких особо проверок я не делаю:

 BOOL iRet = WriteFile (hSerial,data,dwSize,&dwBytesWritten,NULL);

Также я решил вывести для контроля размер строки и количество отосланных байт:

 cout << dwSize << " Bytes in string. " << dwBytesWritten << " Bytes sended. " << endl;</pre>В конце программы делаем бесконечный цикл чтения данных: while(1) { ReadCOM(); } return 0; }

Теперь функция чтения:

 void ReadCOM() {       DWORD iSize;       char sReceivedChar;       while (true)       {             ReadFile(hSerial, &sReceivedChar, 1, &iSize, 0);  // получаем 1 байт if (iSize > 0)   // если что-то принято, выводим cout << sReceivedChar;       } }</pre>Вот собственно и весь пример.Я создал виртуальный com порт. И слал из COM1 в COM2:

Из нашей программы было отправлено «Hello from C++», а из терминала «hello how2.org.ua».

Скачать пример.

Категория Программирование

Комментарии

Добавить комментарий

Современные компьютеры не имеют встроенный COM порт. Почти все материнские платы для современных ПК не имеют разъёма COM-порт, в основном потому, что надобность в нем постепенно пропадает. Однако для прошивки некоторых моделей спутниковых ресиверов, как раз требуется интерфейс RS-232 (COM-порт). Например, такие старые модели приемников как DRE-4000, DRE-5000, DRS-5001, DRS-5003, DRE-7300 и GS-7300, можно прошить только через RS-232.

Если на ПК нет разъёма COM-порт, можно приобрести переходник USB на COM, и проблема решена. Однако адаптеры USB-COM работают не со всеми моделями приемников, и не всегда применимы к различным устройствам. По-прежнему универсальным здесь остается оригинальный COM-порт.

Если на ПК отсутствует разъём RS-232, его можно туда добавить с помощью стороннего расширения в виде выносной планки COM-порт, или специального контроллера PCI-E COM. В первом случае, это будет дешевле, так как выносная планка COM-порт стоит в районе 100 р, и вставляется в уже имеющийся на системной плате специальный внутренний разъём COM. К сожалению не все знают о его наличии, а между тем такой разъём присутствует практически на любой материнской плате. Крепится такая планка на задней панели системного блока, и будет работать как полноценный оригинальный COM-порт.

Второй способ, не менее надежен, но стоит дороже. Придется приобрести специальный контроллер PCI-E COM, который стоит в районе 1000 р. И займет он один из ваших PCI-E портов имеющихся на системной плате. Такое решение отлично подойдет, если нужно иметь более одного разъёма COM. Контроллеры PCI-E COM могут быть на 2 и на 4 разъёма COM.

Было интересно? Тогда подпишись на ЭТОТ САЙТ по E-mail

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

Что подключают через com порт

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

С помощью COM-порта можно соединить два компьютера, используя так называемый «нуль-модемный кабель» (см. ниже). Использовался со времен MS-DOS для перекачки файлов с одного компьютера на другой, в UNIX для терминального доступа к другой машине, а в Windows (даже современной) — для отладчика уровня ядра.

Но в сетевом мире через com порт подключаются к консольному порту сетевых устройств (коммутаторов, роутеров, таких брендов как Cisco или Juniper)

Какая схема подключения к коммутаторам через последовательный порт. Есть переходники, например от фирмы st-lab На одном конце USB который вы подключаете к компьютеру, а второй это com порт.

Установка драйверов com порт usb в Windows

К сожалению в Windows подключенные устройства, usb to com не всегда автоматически устанавливаются в системе, и приходится искать для них драйвера. Если вы покупали его сами, то в комплекте шел диск с драйверами, и можно воспользоваться им, если его нет, то смотрим как найти драйвера.

Открываем диспетчер устройств в Windows. Если не знаете как, то нажмите CTR+Pause breake, либо нажмите Win+R и в окне выполнить введите devmgmt.msc. Как видите у меня в разделе Порты (COM и LPT) нашелся на третьем COM порту неизвестный провод, и драйверов для него не нашлось у системы, о чем говорит нам желтый значок.

Покупки в Интернет

Покупки в Интернет

RS-232 — это интерфейс (порт) последовательной передачи данных. В программируемых логических контроллерах используется для загрузки программ, связи с панелями оператора HMI, SCADA на ПК оператора, модулями ввода-вывода и другими ПЛК. В домашних компьютерах еще недавно RS 232 в виде «COM-порта» активно использовался для подключения мыши и интернет-модема. Со временем COM-порт на компьютере вытеснили более скоростные интерфейсы, например USB. Но для большинства задач промышленной автоматизации скорости RS232 хватает с головой, поэтому в ПЛК он еще долго будет популярен из-за простоты и надежности.

Для связи по интерфейсу RS-232 используются только три провода: прием данных (Rx), передача данных (Tx) и земля (GND). Скорость передачи данных — до 115 200 бит/сек. Передача данных происходит последовательно: главное устройство (Master) посылает запрос, подчиненное устройство (Slave) отвечает.  

imageРис. 1 — Подключение устройств по интерфейсу RS-232

Для организации связи между ПЛК и другим устройством по RS-232 необходимо:

  • Соединить порты RS-232 обоих устройств кабелем типа «витая пара» длиной не более 15 м. Желательно, чтобы кабель был экранирован.
  • Установить на обоих устройствах одинаковые параметры RS-232: скорость, количество бит данных, количество стоповых бит, четность.
  • Установить на обоих устройствах одинаковый протокол передачи данных. Например, Modbus RTU.
  • Настроить протокол: одно из устройств сделать мастером, второе слейвом. Назначить слейву сетевой адрес.
  • В мастере настроить опрос регистров (ячеек памяти) слейва и дальнейшую их программную обработку.

Подключить компьютер или ноутбук к RS-232ПЛК можно несколькими способами:

  • по USB, через преобразователь RS232/USB;
  • через платы RS-232, которые вставляются в слоты PCI или PCI-e материнской платы ПК;
  • непосредственно через COM-порт, контакты которого до сих пор размещают на всех материнских платах ПК.

imageРис. 2 — Варианты подключения ПК к порту RS-232ПЛК

Главный недостаток RS-232 — маленькая длина линии связи — до 15 метров. Для связи на большие расстояния используется интерфейс RS-485. Если ПЛК имеет только интерфейс RS 232, то при необходимости его можно подключить к линии RS-485 через преобразователь RS232/485.

Помогла ли Вам эта информация (FAQ)?

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий