Робота зі стандартними пристроями вводу у LabVIEW

VISA, TCP/IP, USB, CAN та подібні протоколи

Робота зі стандартними пристроями вводу у LabVIEW

Postby Akceptor on 19 Sep 2012, 16:05

Середовище програмування :labview: дозволяє організовувати збір даних із різних джерел, зазвичай спеціалізованих плат та модулів. Проте досить часто може виникнути потреба відстежувати дії користувача за комп’ютером, або ж працювати із нестандартним саморобним обладнанням, а тому доводиться звертатися до роботи із традиційними засобами вводу, таким як клавіатура ПЕОМ, або маніпулятор “миша”.

Іншою корисною можливістю може бути отримання даних із ігрових маніпуляторів (джойстики), оскільки на базі цих пристроїв досить просто реалізувати елементарні вимірювальні кола. Не вдаючись у будову типового джойстика, зауважу лише, що як правило, він має 4 аналогові канали, оснащені АЦП, та кілька дискретних каналів.

Для початку ознайомимося із палітрою :labview: , що містить інструменти :vi: для організації роботи із пристроями вводу інформації. Вона знаходиться за адресою All Functions -> Advanced -> Input Device Control і містить 6 вузлів, призначення яких ми розглянемо детальніше.

Image

У першому рядку розміщено три вузли, що забезпечують ініціалізацію відповідних пристроїв: Initialize Joystick, Initialize Keyboard та Initialize Mouse. Ці вузли повертають ідентифікатор відповідного пристрою (device ID), за яким наступний вузол зможе отримати до нього доступ. У випадку Initialize Joystick необхідно вказати один параметр (device index), який означає номер джойстика (ігрових маніпуляторів до одного ПК можна підключити декілька). При ініціалізації миші та клавіатури вважається, що пристрій такий всього один (якщо підключити до комп’ютера кілька клавіатур чи мишей, то вони працюють паралельно).

Вузол Querry Input Devices служить для отримання інформації про під’єднані до комп’ютера пристрої вводу. У нього три вихідних термінали: joystick info, key info та mouse info, які повертають інформацію про відповідні пристрої (кількість осей та клавіш, ім’я пристрою у Windows).

Вузол Asquire Input Data – поліморфний інструмент, що повертає інформацію про стан відповідного пристрою. У випадку опитування клавіатури на виході інструменту отримуємо масив, що містить коди натиснутих клавіш. Інструмент дозволяє опрацьовувати до 4 клавіш, натиснутих одночасно. Слід пам’ятати, що цей інструмент повертає коди клавіш, тобто для нього немає різниці між великими та малими літерами, а для визначення регістру слід відстежувати комбінацію “Shift + літера”. Вузол здатний відстежувати натиснуті клавіші навіть якщо активне вікно іншої програми.

У випадку опитування маніпулятора “миша” вихід являє собою два кластери: button info та axis info (для джойстика додається ще кластер direction info), що містять інформацію про натиснуті на маніпуляторі кнопки та координати курсора. Вузол Close Input Device служить для вивільнення пристрою вводу і не передбачає вихідних терміналів.
User avatar
Akceptor
beginner
beginner
 
Posts: 48
Joined: 05 Jun 2010, 15:57
Location: Івано-Франківськ
Medals: 1
Tutorials (1)
LabVIEW Version: 7.1 / 8.5
Karma: 11

Return to Комунікація з пристроями

Who is online

Users browsing this forum: No registered users and 1 guest

cron