- •Базовий курс програмування у середовищі розробки віртуальних приладів LabVіew Методичні вказівки
- •Базовий курс програмування у середовищі розробки віртуальних приладів LabVіew Методичні вказівки
- •Комп’ютерний практикум №1
- •Створення віртуальних приладів в середовищі labview. Цифрові прилади та індикатори
- •Мета роботи: ознайомитись з особливостями роботи в середовищі LabView, розглянути технологію побудови віртуальних приладів.
- •Теоретичні відомості
- •1 Запуск системи LabVіew
- •2 Головне меню
- •2.2 Меню Edit
- •2.1 Меню File
- •3 Панель інструментів Toolbar
- •4.1 Палітра Tools (Інструментів)
- •4.2 Палітра Controls (управління)
- •4.3 Палітра Functіons (функцій)
- •5 Створення vі
- •5.1 Фронтальна панель vі
- •5.2 Блок-схема vі
- •5.3 Проводка
- •5.4 Спливаючі підказки
- •5.5 Створення об’єктів фронтальної панелі за допомогою блок-схеми
- •5.6 Використання допомоги
- •6 Особливості роботи та налаштування цифрових і булевих об’єктів фронтальної панелі
- •6.1 Цифрові елементи управління та індикатори
- •6.2 Булеві об’єкти
- •7 Приклади розробки простих віртуальних приладів
- •7.1 Віртуальний прилад, що моделює визначення температурних показників
- •7.2 Віртуальний прилад, що моделює за допомогою датчиків визначення показників температури та об’єму
- •7.3 Віртуальний прилад із застосуванням булевих функцій та процедури дослідження потоку даних
- •Індивідуальні завдання
- •Комп’ютерний практикум №2
- •Розв’язання лінійних алгебраїчних рівнянь в середовищі labview
- •Теоретичні відомості
- •1 Розрахунок схеми електричного кола із застосуванням арифметичних операцій
- •2 Розрахунок схеми електричного кола за допомогою формульного вузла Formula Node
- •3 Розрахунок схеми електричного кола за допомогою матричних методів
- •4 Доповнення. Матричні операції в середовищі LabView
- •Індивідуальні завдання
- •Комп’ютерний практикум №3
- •Організація масивів
- •Мета роботи: вивчити поняття масивів даних і математичних операцій над масивами. Освоїти технологію роботи з масивами даних у LabView.
- •Теоретичні відомості
- •1 Створення масиву елементів управління та індикації
- •2 Двовимірні масиви
- •3 Математичні функції (поліморфізм)
- •4 Основні функції роботи з масивами
- •5 Автоматичне масштабування функцій роботи з масивами
- •6 Додаткові функції роботи з масивами
- •7 Функції для роботи з масивами логічних змінних
- •Індивідуальні завдання
- •Комп’ютерний практикум №4
- •Організація циклів
- •Мета роботи: вивчити теоретичні дані про організацію циклів у LabView, навчитися самостійно створювати програми, використовуючи нові функції.
- •Теоретичні відомості
- •1 Цикл For
- •1.1 Автоматична індексація
- •1.2 Індексація декількох масивів в одному циклі
- •1.3 Організація доступу до значень попередніх ітерацій циклу
- •1.3.1 Регістр зсуву (Shift Register)
- •1.3.2 Стек регістрів зсуву
- •1.3.3 Вузол зворотного зв’язку
- •2 Цикл за умовою While
- •2.1 Доступ до значень попередніх ітерацій циклу
- •2.2 Автоіндексація в циклі за умовою
- •3 Структура вибору Case
- •4 Структура послідовності (Sequence)
- •4.1 Структура відкритої послідовності (Flat Sequence Structure)
- •4.2 Структура багатошарової послідовності (Stacked Sequence Structure)
- •Індивідуальні завдання
- •Комп’ютерний практикум №5
- •Графічне надання даних
- •Мета роботи: вивчити інструменти LabView та їх можливості з візуалізації даних, що включають графік діаграм, графік осциллограмм та двокоординатний графік.
- •Теоретичні відомості
- •1 Графік діаграм
- •1.1 З’єднання графіків
- •2 Графік осциллограм та двокоординатний графік осцилограм
- •2.1 Поодинокий графік осцилограм
- •2.2 Графік множини осцилограм
- •2.3 Поодинокі двокоординатні графіки осцилограм
- •2.4 Двокоординатні графіки множини осцилограм
- •3 Графіки інтенсивності
- •3.1 Налаштування графіків і таблиць інтенсивності
- •Індивідуальні завдання
- •Комп’ютерний практикум №6
- •Мета роботи: вивчити можливості LabView при роботі з даними рядкового типу, розглянути інструменти обробки тексту, подання даних у табличній формі тощо.
- •Теоретичні відомості
- •1 Створення рядкових елементів управління і індикації
- •2 Функції роботи з рядками
- •3 Перетворення числа в рядок. Функція Format Into String
- •4 Перетворення рядків в числові дані
- •5 Таблиці
- •Індивідуальні завдання
- •Комп’ютерний практикум №7
- •Функції файлового вводу/виводу високого рівня
- •Мета роботи: вивчити можливості LabView при роботі з файлами , а саме : збереження даних у файл та їх зчитування з файлу.
- •Теоретичні відомості
- •1 Основи файлового вводу/виводу
- •2 Функції файлового вводу/виводу низького рівня
- •3 Збереження даних в новому або вже існуючому файлі
- •4 Форматування рядків таблиці символів
- •5 Функції файлового вводу/виводу високого рівня
- •6 Експрес вп
- •Список літератури
- •Зразок оформлення результатів виконання завдання з комп’ютерного практикуму
4 Структура послідовності (Sequence)
Структура послідовності – це одна або декілька піддіаграм (кадрів), які виконуються поспіль. Існують два типи структур послідовності: структура відкритої послідовності і багатошарова структура.
Використання структур послідовності дозволяє управляти порядком виконання програми. У випадку, коли необхідно щоб деяка частина програми виконалася строго після іншої частини програми, використовується структура послідовності.
4.1 Структура відкритої послідовності (Flat Sequence Structure)
Структура відкритої послідовності виконується кадр за кадром зліва на право. Можна додавати або видаляти кадри з послідовності, використовуючи контекстне меню. Коли додаються або видаляються піддіаграми, структура змінює розмір автоматично. Наприклад, на рисунку 20 зображена відкрита структура послідовності, за допомогою якої здійснюється подача двох звукових сигналів з паузою між ними в 1 секунду.
Рисунок 20 – Приклад відкритої структури послідовності
Користуючись пунктом контекстного меню Replace можна змінити тип структури на багатошарову.
4.2 Структура багатошарової послідовності (Stacked Sequence Structure)
Структура багатошарової послідовності містить пронумеровані піддіаграми (0, 1 ... тощо), які виконуються поспіль. На блок-діаграмі (на відміну від відкритої послідовності) одночасно можна бачити тільки одну піддіаграму. Перехід від однієї до іншої піддіаграми здійснюється за допомогою селектора структури послідовності. Якщо потрібно заощадити місце на блок-діаграмі, використовуйте багатошарову послідовність.
Від однієї піддіаграми до іншої дані передаються через термінали локальних змінних. Для того, щоб створити термінал потрібно на рамці структури викликати контекстне меню і вибрати пункт Add Sequence Local. Після того як буде приєднане джерело даних до терміналу локальних змінних, в ньому з’являється стрілка, спрямована назовні, це означає, що термінал є приймачем даних (рис. 21). У всіх наступних кадрах термінал буде джерелом даних і стрілка в ньому буде спрямована всередину. У кадрах, що передують кадру джерела даних, термінал виглядає заштрихованим, і його не можна використовувати.
Рисунок 21 – Приклад структури багатошарової послідовності
Користуючись пунктом контекстного меню Replace, можна змінити тип структури з багатошарової послідовності на структуру відкритої послідовності або змінити структуру послідовності (Sequence) на структуру вибору (Case).
Індивідуальні завдання
Розробити ВП із застосуванням циклічної структури For, використовуючи вкладені цикли.
Розробити ВП із застосуванням циклічної структури For, використовуючи регістр зсуву і вузол зворотного зв’язку.
Реалізувати Приклад 6 «Розв’язок нелінійного рівняння» і на його основі створити власний ВП.
Розробити «Калькулятор для інженерних розрахунків» з використанням структури вибору Case.
Розробити ВП із застосуванням структури вибору Case, який перевіряє додатне число або від’ємне. Якщо число додатне, відбувається процедура обчислення кореня квадратного, інакше повертається помилка.
Розробити ВП із застосуванням структури послідовності Flat Sequence Structure, який зможе підрахувати час виконання довільної нескладної операції, наприклад обчислення синуса. Для цього слід скористатися функцією отримання поточного часу в мілісекундах Functions => Time & Dialog => Tick Count (ms) два рази: до обчислення синуса і після. Для того щоб час за допомогою вказаної функції було отримано строго в цій послідовності, і використовується структура послідовності. Час обчислення синуса на сучасних машинах настільки незначний, що підрахунок одноразового виконання цієї операції навряд чи може бути виконаний. Обчислення синуса деякого аргументу доцільно виконати багато разів, наприклад, 108 разів. Підрахунок часу таким способом вже може дати уявлення про час виконання будь-якої нескладної операції. Результат необхідно отримати в секундах.
Розробити ВП із застосуванням циклічної структури For, який реалізує процедуру побудови кола на графіку.
Розробити ВП із застосуванням циклічної структури For, використовуючи стек регістрів зсуву.
Розробити ВП із застосуванням циклічної структури While.
Розробити ВП із застосуванням циклічної структури While, який розв’язує квадратне рівняння.
Розробити ВП із застосуванням структури вибору Case.
Розробити «Калькулятор для арифметичних розрахунків» з використанням структури вибору Case.
Розробити «Калькулятор для тригонометричних розрахунків» з використанням структури вибору Case.
Розробити «Калькулятор для арифметичних розрахунків» з можливістю розв’язку нелінійних рівнянь за допомогою структури вибору Case.
Розробити ВП із застосуванням структури вибору Case, який перевіряє додатне число або від’ємне. Якщо число додатне, відбувається процедура віднімання саме цього числа, інакше повертається помилка. Результат – обов’язково 0.
Розробити ВП із застосуванням структури послідовності Flat Sequence Structure, який зможе підрахувати час виконання обчислення кореня нелінійного рівняння.
Розробити ВП, який реалізує задачу введення паролю.
Розробити ВП із застосуванням структури послідовності Stacked Sequence Structure.
Розробити «Калькулятор для арифметичних розрахунків чисел у двійковій системі числення» з використанням структури вибору Case. Забезпечити можливість переводу чисел з двійкової системи числення у десяткову та навпаки.
Розробити ВП із застосуванням структури послідовності Flat Sequence Structure, який зможе підрахувати час виконання обчислення кореня біквадратного рівняння рівняння.
Розробити ВП із застосуванням структури послідовності Flat Sequence Structure, який зможе підрахувати час виконання обчислення тангенса. Результат отримати в секундах.
Розробити ВП із застосуванням циклічної структури For для розв’язання СЛАР в циклі впродовж 5 ітерацій.
Розробити ВП із застосуванням циклічної структури For для виводу графіку обраної із запропонованого списку функції з затримкою.
Розробити «Калькулятор для тригонометричних розрахунків» з виводом графіків деякіх тригонометричних функцій.
Розробити ВП із застосуванням структури вибору Case, який перевіряє додатне число або від’ємне. Якщо число додатне, відбувається процедура піднесення його до другого ступеня, інакше повертається помилка.
Розробити ВП, який відображатиме індексацію декількох масивів різної довжини.
Розробити ВП, який сортує вхідний масив, що складається з додатних та від’ємних чисел на два окремих масиви (масив додатних та масив від’ємних чисел) з використанням властивості авто індексації.
Розробити ВП, який генерує випадкові числа доти, доки одне з них не виявиться рівним значенню, введеному в елемент управління. При цьому повинна відображатися кількість ітерацій, виконаних циклом.
Розробити ВП, який формує масив випадкових чисел, масштабує отриманий масив і виділяє з нтого підмножину введеної довжини.
Розробити ВП із застосуванням циклічної структури While, який виводить декілька кривих на один графік, використовуючи різні режими виведення даних: Strip Chart, Scope Chart? Sweep Chart.
Розробити ВП, який здійснює генерацію пилоподібного сигналу, лінійно перетворює значення його амплітуди і виводить отриманий сигнал на Waveform Graph.
Розробити дешифратор з використанням сциклічної структури While та структури вибору Case. Дешифратор – це комбінаційний пристрій, який перетворює n-розрядний двійковий код у логічний сигнал, що з’являється на виході, з десятковим номером, який відповідає двійковому коду. Число входів та виходів у так званому повному дешифраторі пов’язане співвідношенням m = 2n, де n – число входів, m – число виходів. Роботу дешифратора можна представити таблицею істинності:
n
0
1
2
3
4
5
6
7
8
9
10
2n
1
2
4
8
16
32
64
128
256
512
1024
Розробити цифро-аналоговий перетворювач. Цифро-аналоговий перетворювач (ЦАП) – це електронний пристрій, що перетворює цифровий логічний сигнал в аналоговий та є однією з найбільш важливих схем сполучення, які застосовуються для організації зв’язку між аналоговими та цифровими пристроями.
Розробити модель 8-бітного цифро-аналогового перетворювача.
Розробити аналогово-цифровий перетворювач. Аналогово-цифровий перетворювач – це електронний пристрій, що генерує двійковий цифровий код пропорційний вхідному аналоговому сигналу.
Контрольні питання
Які структури в LabVIEW Вам відомі? Для чого вони призначені та як працюють?
Що таке автоматична індексація?
В чому полягає особливість індексації декількох масивів різної довжини в одному циклі?
Яким чином у LabVIEW відбувається організація доступу до значень попередніх ітерацій циклу?
Як працює стек регістрів зсуву? Пояснити на прикладі.
Що таке структура вибору? Опишіть елементи цієї структури та принцип роботи.
Що таке структура послідовності? Опишіть принцип її роботи.
