- •14. Коротко про Formula Node у LabView
- •15. Формули у LabView
- •16. 9 Порад LabView-програмістам
- •18. Цикли і галуження у Formula Node
- •19. Робота з файлами у LabView
- •20. Вузли для роботи з часом у LabView
- •21. Робота із пристроями вводу у LabView
- •22. Property Node: зміна властивостей візуальних компонентів LabView у процесі виконання програми
20. Вузли для роботи з часом у LabView
Вузли для роботи з часом знаходяться в палітрі “Time and Dialog” і представлені сімома вузлами які можуть бути умовно згруповані у дві категорії:
вузли для роботи із системним таймером;
вузли для відображення поточного часу.
Вузли для роботи із системним таймером наступні:
- Tick Count (ms) – повертає значення системного таймера (у мілісекундах). Початкова точка відліку для системного таймера не відома, тому отримані із цього вузла значення не можуть бути перетворені у реальний час чи дату. Значення системного таймера змінюються у межах від (2^32)-1 до 0, це слід мати на увазі використовуючи результат цієї функції у порівняннях.
- Wait (ms) – чекає вказану кількість мілісекунд і потім повертає значення системного таймера.
- Wait Until next ms Multiple – очікує доки поточне значення системного таймера стане кратне заданому числу. Функція використовується для контролю часу виконання ітерацій циклу, але варто мати на увазі, що перший період (перша ітерація) може бути значно коротша за всі інші.
Вузли для відображення поточного часу:
Get Date/Time String – перетворює числове значення, або значення мітки часу (time stamp) у дату та час тієї часової зони в якій знаходиться комп’ютер.
Функція має наступні термінали: Date Format, Time Stamp, Want Seconds. Термінал Date Format задає вигляд результуючого рядка дати. За замовчуванням він рівний нулю, тобто дата зображається у форматі місяць/день/рік. Якщо подати на термінал значення 1, то дата буде відображатись у повному форматі (Friday, January 21, 1994).
Вхід Time Stamp за замовчуванням рівний поточній даті і часу, також можна вказати число секунд, що пройшло від півночі 1 січня 1904 року. Логічний вхід Want Seconds вказує вузлу чи слід відображати секунди у рядку часу.
На виході вузла отримуємо два текстових значення:Date string (поточна дата) і Time string (поточний час).
Get date/Time in seconds – повертає мітку часу, виміряного як кількість секунд, що пройшли з півночі 1 січня 1904 року.
Date/Time to seconds, Seconds to date/Time – служать для перетворення дати і часу поданих у вигляді мітки часу кількості секунд, що пройшли з півночі 1 січня 1940 року і навпаки.
21. Робота із пристроями вводу у LabView
Середовище програмування LabVIEW дозволяє організовувати збір даних із різних джерел, зазвичай спеціалізованих плат та модулів. Проте досить часто може виникнути потреба відстежувати дії користувача за комп’ютером, або ж працювати із нестандартним саморобним обладнанням, а тому доводиться звертатися до роботи із традиційними засобами вводу, таким як клавіатура ПЕОМ, або маніпулятор “миша”.
Іншою корисною можливістю може бути отримання даних із ігрових маніпуляторів (джойстики), оскільки на базі цих пристроїв досить просто реалізувати елементарні вимірювальні кола. Не вдаючись у будову типового джойстика, зауважу лише, що як правило, він має 4 аналогові канали, оснащені АЦП, та кілька дискретних каналів.
Для початку ознайомимося із палітрою LabVIEW, що містить інструменти для організації роботи із пристроями вводу інформації. Вона знаходиться за адресою All Functions -> Advanced -> Input Device Control і містить 6 вузлів, призначення яких ми розглянемо детальніше.
Палітра Input Device Control у LabVIEW
У першому рядку розміщено три вузли, що забезпечують ініціалізацію відповідних пристроїв: 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 служить для вивільнення пристрою вводу і не передбачає вихідних терміналів.
