Безкоштовна технічна бібліотека ЕНЦИКЛОПЕДІЯ РАДІОЕЛЕКТРОНІКИ ТА ЕЛЕКТРОТЕХНІКИ Перетворювач інтерфейсу GPIB-RS-232 Енциклопедія радіоелектроніки та електротехніки / Вимірювальна техніка Багато сучасних вимірювальних приладів оснащені інтерфейсом IEEE488, який на Заході відомий як GPIB (General Purpose Interface Bus - інтерфейсна шина загального призначення), а в Росії як КОП (канал загального користування за ГОСТ 26.003-80). Він дозволяє поєднувати прилади в автоматизовані вимірювальні комплекси. Але керувати таким комплексом потрібен комп'ютер, обладнаний адаптером цього інтерфейсу. У типовій комплектації більшості персональних комп'ютерів він відсутній, як самостійний виріб коштує недешево. Пропонований пристрій дозволить використовувати для керування каналом загального користування та обміном інформацією стандартний СОМ-порт комп'ютера. Перш за все, необхідно розібратися з основними принципами роботи інтерфейсу GPIB. Його організацію можна порівняти з діяльністю якоїсь комісії: головуючий вирішує, хто з членів комісії говорить, а хто слухає. Відповідно до каналу загального користування до загальної шини підключають прилади, що працюють у трьох режимах: контролера (controller), розмовляючого (talker) та слухача (listener). Слухач лише приймає інформацію. Допускається присутність до 14 слухачів одночасно. Говорячому дозволено передавати інформацію. У кожний момент часу допускається присутність лише одного того, хто говорить. Контролер (controller) поєднує у собі функції слухача і говорить, а крім цього він здатний адресувати решту пристроїв. До складу комплексу приладів, об'єднаних шиною GPIB, має входити лише один контролер. Всі пристрої з'єднуються паралельно по 16-ти сигнальним лініям та восьми лініям загального дроту. Використовується негативна логіка: низький рівень сигналу – лог. 1 (true), високий рівень – лог. 0 (false). Сигнальні лінії поділяються на три групи: інформаційні, синхронізації передачі байтів та управління інтерфейсом. Інформаційні лінії DIO1-DIO8 (ЛД0-ЛД7) утворюють восьмирозрядну двосторонню шину даних. Зазвичай інформація передається у текстовому вигляді із використанням семиразрядного коду ASCII (American Standard Code for Information Interchange) чи його вітчизняного еквівалента КОИ-7. Наприклад, щоб передати число 123, по черзі передають ASCII коди цифр 1 (0110001), 2 (0110010) і 3 (0110011). По шині даних передають також інтерфейсні команди, адреси та команди керування пристроями.
Усього є три лінії синхронізації. Низький рівень на лінії DAV (Data Valid) або ЦД (Синхронізація даних) встановлюється таким, що говорить тільки в тому випадку, якщо інформація, виведена ним на шину даних, достовірна, а від слухача надійшов сигнал готовності її прийняти - високий рівень на лінії NRFD (Not Ready) For Data) або ДП (Готовність Прийому). Низький рівень (лог. 1) на цій лінії означає неготовність до прийому. Оскільки виходи сигналу NRFD всіх пристроїв виконані за схемою з відкритим колектором і з'єднані паралельно, високого рівня тут не буде, поки не готовий до прийому хоча б один слухач.
Аналогічно високий рівень лінії NDAC (Not Data Accepted) чи ДП (Дані Прийняті) свідчить, що слухач успішно прийняв інформацію. Як і на лінії NRFD, високий рівень на лінії NDAC неможливий, доки його не встановили всі слухачі. Тимчасові діаграми циклу пересилання байта показано на рис. 1, де зазначені наступні характерні моменти часу: Т_1 - всі слухачі готові прийняти байт;
Таблиця 1
Кожному з приладів, об'єднаних каналом загального користування, надається унікальна адреса. Щоб звернутися до конкретного пристрою, контролер передає його адресу в командному режимі (при низькому рівні на лінії ATN). Адреса займає п'ять молодших розрядів байта і може перебувати в інтервалі 0-30, 31 значення зарезервовано для загальних інтерфейсних команд. Будь-який прилад, оснащений інтерфейсом GPIB, має засоби для встановлення та зміни своєї адреси, наприклад п'ять знімних перемичок на задній панелі. Розрядами DIO6 та DIO7 адресного байта контролер задає функціональне призначення приладу. При низькому рівні на лінії DIO6 це – слухач, а на лінії DIO7 – промовець.
Схема розробленого автором перетворювача інтерфейсу GPIB у RS-232 показана на рис. 2. На роз'єм Х1 подають змінну або постійну напругу живлення будь-якої полярності. Діодний міст VD1 випрямляє або призводить до потрібної полярності, а інтегральний стабілізатор доводить до потрібного для живлення мікросхем значення 5 В. Розетку Х2 підключають до вилки одного зі СОМ-портів комп'ютера. Мікросхема DA1 узгодить рівні сигналів інтерфейсу RS-232 з тими, які приймає та формує мікроконтролер DD1. Вказане на схемі значення частоти кварцового резонатора ZQ1 забезпечує точне встановлення стандартної швидкості обміну інформацією з комп'ютером. Високу здатність навантаження по шині даних інтерфейсу GPIB (DIO1 - DIO8) забезпечує мікросхема двонаправленого приймача DD2. При необхідності підключення до каналу загального користування понад п'ять-шість пристроїв доведеться, можливо, посилити сигнали і на інших інтерфейсних лініях. Світлодіод HL1 сигналізує про обмін інформацією з підключеними до каналу загального користування приладами, a HL2 - про наявність напруги живлення перетворювача. Вилка ХЗ призначена для програмування мікроконтролера DD1, вже встановленого на плату перетворювача. Якщо він запрограмований заздалегідь за допомогою програматора, цей роз'єм не потрібен. Конфігурація мікроконтролера повинна бути встановлена наступною: розширений (extended) байт – OxFF, старший (high) байт – OxDF, молодший (low) байт – OxDE. Розетка Х4 – РПМ7-24Г-ПБ-В, стандартна для інтерфейсу GPIB (КОП). Розташування та призначення її контактів показано на рис. 3. Кнопка SB 1 використовується для повторного запуску мікроконтролера після збою програми.
Зовнішній вигляд зібраного на макетній платі перетворювача показано на рис. 4. Після складання його слід підключити до комп'ютера та запустити будь-яку термінальну програму. Я скористався програмою RS232 Pro. Параметри з'єднання мають бути такими: швидкість 115200 232 Бод, перевірка парності відсутня, один столовий розряд. Перетворювач виконує функції контролера каналу загального доступу, виконуючи команди, що подаються по RS-2, наведені в табл. XNUMX. Кожна з них складається з двох символів – ідентифікатора та параметра. Символ $, наприклад, ідентифікує групу разових команд. Наступний його символ (цифра) вибирає конкретну команду з цієї групи. Ідентифікатор # означає, що ASCII-код символу, що його супроводжує, необхідно передати за інтерфейсом GPIB. Команда $6 ініціалізує паралельне опитування кількох приладів. Вона зазвичай подається після отримання контролером запиту обслуговування (SRQ=1), коли потрібно визначити, який із приладів вимагає уваги. Для сигналізації звідси кожному їх відводять певний розряд шини даних (DIO). Це робиться за допомогою знімних перемичок на панелі приладу або за інтерфейсними командами РРС (Parallel Poll Configure - конфігурація паралельного опитування), що подається контролером. Після ініціалізації паралельного опитування слід лише за допомогою команди $7 прочитати стан ліній DIO1-DIO8 та проаналізувати його. Послідовне опитування відбувається повільніше паралельного, але точніше визначає причину запиту. Для його запуску необхідна інтерфейсна команда SPE (Serial Poll Enable – дозвіл послідовного опитування). Після неї кожен прилад, адресований як промовець, передасть байт свого стану. Повний перелік інтерфейсних команд є у документі "Tutorial Description of the Hewlett-Packard Interface Bus", який можна знайти в Інтернеті за адресою vt100.net/manx/details/7,17449 Необхідно відзначити, що не всі пристрої, обладнані GPIB, повинні виконувати ті чи інші спільні інтерфейсні команди. Користуючись наявними у табл. 2 командами, можна проводити на шині GPIB будь-які операції, що дає користувачеві можливість самостійно написати комп'ютерну програму обслуговування конкретного приладу або їхньої системи. Для ілюстрації цієї можливості автором було написано програму GPIB Terminal.
Запустивши цю програму, необхідно, відкривши показану на рис. 5 вкладку "Налаштування", вказати номер СОМ-порту, до якого підключено перетворювач, та GPIB-адресу приладу, з яким належить працювати, задати символи, що позначають кінець рядка повідомлення при передачі та прийомі. На завершення налаштування натискають на екранну кнопку "Застосувати та зберегти". Про вдале відкриття порту повідомить напис "Порт відкритий" на панелі "Прийняті дані" вкладки "Термінал". На рис. 6 наведено приклад відповіді приладу на надіслану йому команду *idn? - запит назви виробника, типу та інших відомостей про прилад. Потрібно відзначити, що відповіді приладу на команди, які йому посилаються, передбачені далеко не завжди. Найчастіше, прийнявши команду, прилад виконує її (наприклад, переходить у потрібний режим роботи) "мовчки", нічого не повідомляючи про це контролеру.
Для наочного дослідження процесу обміну інформацією каналом загального користування у програмі передбачена зображена на рис. 7 вкладка "Команди". Спробуймо передати команду *idn? наявними тут засобами. Перш за все, слід адресувати прилад як слухач з адресою 2. Для цього необхідно надіслати байт адреси з шістнадцятковим значенням 0x22 або десятковим 34.
Натисканням на екранну кнопку ATN встановлюємо ATN=1 (низький рівень на однойменній лінії). Зауважимо, що після виконання кожної операції поточний стан ліній керування автоматично відображається у нижній частині вкладки. Адреса у форматі, що відповідає зазначеному пункту поля "Формат", набираємо в поле введення поряд із екранною кнопкою "Послати" та натискаємо на цю кнопку. Встановлюємо ATN=0, відтиснувши відповідну кнопку. Вводячи потрібні значення і натискаючи кнопку "Послати", передаємо наступну послідовність байтів: 0х2А, 0x69, 0x64, 0хбЕ, 0x3f^ 0x0D, 0х0А. Зауважимо, що, відзначивши пункт "ASCII", можна вводити не шістнадцяткові коди, а символи, що утворюють команду. Однак завершальні символи "Повернення каретки" (OxOD) і "Переклад рядка" (ОхОА) необхідно все-таки вводити в шістнадцятковому або десятковому (відповідно 13 і 10) форматі. Далі адресуємо прилад як промовець, для чого натискаємо на кнопку ATN, потім набираємо і передаємо адресу 0x42 або 66. Відразу після відтискання кнопки ATN приймаємо відповідь приладу, натискаючи для прийому кожного символу на кнопку "Читати". Зауважте, що при отриманні останнього символу відповіді буде встановлено ЕО1=1. Навчившись працювати з інтерфейсом GPIB на низькому рівні та маючи навички програмування, можна розпочати розробку програм управління вимірювальними комплексами. Програму мікроконтролера перетворювача інтерфейсу та описану у статті комп'ютерну програму можна завантажити звідси. Автор: М. Терентьєв, м. Ульяновськ; Публікація: radioradar.net Дивіться інші статті розділу Вимірювальна техніка. Читайте та пишіть корисні коментарі до цієї статті. Останні новини науки та техніки, новинки електроніки: Машина для проріджування квітів у садах
02.05.2024 Удосконалений мікроскоп інфрачервоного діапазону
02.05.2024 Пастка для комах
01.05.2024
Інші цікаві новини: ▪ 5G-антена в екрані смартфона ▪ Процесор порту superMHL/HDMI 2.0 ▪ Гібридна автомобільна технологія з маховиком Стрічка новин науки та техніки, новинок електроніки
Цікаві матеріали Безкоштовної технічної бібліотеки: ▪ Розділ сайту Застосування мікросхем. Добірка статей ▪ стаття Основні правила відеозйомки. Мистецтво відео ▪ стаття Що таке артрит? Детальна відповідь ▪ стаття Чортополох поникаючий. Легенди, вирощування, способи застосування ▪ стаття Нейростимулятор. Енциклопедія радіоелектроніки та електротехніки ▪ стаття Широкодіапазонний ЕІУ з лінійною шкалою. Енциклопедія радіоелектроніки та електротехніки
Залишіть свій коментар до цієї статті: Коментарі до статті: Сергій Допоможіть цьому перетворювачу диплом написати. Більше інформації хочу. All languages of this page Головна сторінка | Бібліотека | Статті | Карта сайту | Відгуки про сайт www.diagram.com.ua |