-
Дослідження пристрою з точки зору LabView
Зміст
1. Огляд області застосування приладу
1.1 Природа звуку та його вимірювання
1.2 Рівень та гучність звуку
1.3 Принцип роботи людського слухового апарату
2. Розробка приладу в LabView 7.1
2.1 Дослідження пристрою з точки зору LabView
2.2 Постановка задачі
2.3 Емуляція вхідного сигналу
2.4 Формування вихідних сигналів
3. Інструкція з розробки
4. Схема, плата
Висновки
ЛітератураЛабораторну роботу виконавстудент гр. ДК-41 Ходак С.В.
1. Огляд області застосування приладу
1.1 Природа звуку та його вимірювання
Звук – це коливання, що сприймаються нашими органами почуття. Звукові коливання – це коливання повітря, створювані певним предметом, що здійснює поступовий рух. При цьому змінюється густина повітря. Рух одних молекул повітря передається іншим молекулам, в результаті чого у просторі розповсюджуються зони збільшення та зменшення густини, що періодично повторюються. Вони і є звуковою хвилею. Якщо ми в певному місці встановимо прилад, що здатен реагувати на зміну густини повітря, запишемо його показання за деякий час та накреслимо графік залежності густини від часу, отримаємо криву, що близька до синусоїди. Саме такі коливання і сприймаються людським вухом, в результаті чого ми отримуємо відчуття звуку.
Прилад, що реагує на зміну густини повітря, називається шумометр. А пристрій, що перетворює його дані у зручну для сприйняття людиною форму – вимірювач рівня звукових сигналів . Хоча сучасні шумометри виконують і цю функцію.
1.2 Рівень та гучність звуку
При розробці приладу, що вимірює рівень звуку, слід розуміти принцип його роботи і, відповідно, знати, що таке, власне, рівень звуку.
Будь-яка звукова хвиля, що розповсюджується у просторі, здатна завдавати певний тиск на першкоди (в тому числі і на наші барабанні перепонки), що зустрічаються на її шляху. Ми суб' єктивно сприймаємо зміну тиску звукових хвиль у вигляді зміни гучності звуку. Максимальна зміна тиску у повітрі при поширенні звукових хвиль в порівнянні з тиском при відсутності хвиль називають звуковим тиском , який вимірюється у Паскалях. Але в акустиці, при оціненні інтенсивності звукових хвиль частіше застосовується інший термін – сила звуку , що дорівнює квадрату звукового тиску і вимірюється в ваттах/квадратний сантиметр (Вт/кв.см.), що значно зручніше.
Для того, чтобы мы змогли почути певний звук, його сила повинна бути більше за певний рівень. Цей рівень називають порогом чутності . Аналогічно і зі звуками великої інтенсивності - ми чуємо звук тільки до певного рівня, которий называють больовим порогом. Якщо сила звуку більше цього рівня, ми відчуваємо біль у вухах
1.3 Принцип роботи людського слухового апарату
Наш слуховий апарат побудований таким чином, что лінійна зміна сили звуку (чи звукового тиску) не сприймається нами як линійна зміна гучності. Гучність звуку та його сила зв'язані між собою логорифмічною залежністю. Підвищення гучності в два рази відповідає збільшенню сили звуку в 100 раз, підвищення гучності в 3 рази відповідає збільшенню сили звуку в 1000 раз. Саме тому зміну рівня (гучності) звуку прийнятно вимірювати у логарифмічних одиницях – белах (Б).
Зміну сили звука в белах розраховують за формулою: N=lg I1/I2 , де N - зміна рівня звуку, а I1 и I2 - верхня та нижня границі сили звуку. На практиці частіше застосовують децибел (дБ) - десяту частину бела, адже бел – дуже велика величина. Отже, зміна рівня в децибелах розраховується за формулою N=10 lg I1/I2 або N=20 lg P1/P2. Мінімальный перепад рівня, який здатне сприйняти наше вухо рівний одному децибелу. [ 1]
Гучність звуку, дБ Поріг чутності 0 мерехтіння наручного годинника 10 шепіт 20 звук настінного годинника 30 приглушена розмова 40 тиха вулиця 50 звичайна розмова 60 шумна вулиця 70 небезпечний для здоров' я рівень 80 пневматичний молоток 90 ковальский цех 100 гучна музика 110 больовий поріг 120 сирена 130 реактивний літак 150 смертельний рівень 180 шумова зброя 200 [2]
2. Розробка приладу в LabView 7.1
2.1 Дослідження пристрою з точки зору LabView
Як вже було зазначено, вимірювач рівня звукових сигналів не вимірює звукові коливання (цим займається шумометр), а відображає гучність звуку у зручній для користувача формі (в децибелах). Власне, шумометр – це технічний пристрій у тому сенсі, що його задачею не є якісний інтерфейс користувача. Тобто, він не перетворює сигнали, а їх вимірює. І проектування роботи шумометра в середовищі LabView здається нерентабельним. Його можна було б використовувати як датчик, який передавав би інформацію до віртуального приладу LabView. [4-7]
Оскільки в даній роботі вхідні сигнали ми емулюємо, візуалізація шумометра втрачає сенс : необхідно спочатку завдавати певний сигнал, потім перетворовати його по формулі N=20 lg (P1/P2) у децибели :
де :
1 -- генератор випадкових чисел (генерується число від 0 до 1)
-- константа, максимальний/мінімальний рівень коливання повітря – приблизно 100 кПа/10Е-4 Па
2 -- множення константи і випадкового числа
-- десятичний логарифм вхідного сигналу
-- 20 lg (P1/P2)
-- затримка сигналу (для його зручного спостереження)
-- відображення сигналу (залежність амплітуди від часу)
Сигнал матиме вигляд :
Таке зображення, хоч і є правильним з математичної точки зору, не несе корисної інформації. Тому, в LabView пропонується розробка іншого віртуального приладу – вимірювачу рівня звукового сигналу.
Як зазначалося, його основна задача – вивід на екран данних, отриманих від шумометра.
Наша задача – виділення тих задач, які можуть бути легко вирішені за допомогою LabView і які можуть принести користь в реальному житті.
2.2 Постановка задачі
Будемо вважати, що звуковий сигнал вимірюється шумометром і передається до ПК у децибелах. Цей сигнал ми емулюємо :
При цьому максимальний рівень сигналу – 70 дБ.
Далі пропонується виділити ті сигнали, що :
• небезпечні для здоров' я
• перевищують больовий поріг
• досягають рівня смертельної небезпеки
Але тоді необхідно імітувати сигнали так, щоб сигнали, небезпечні для здоров'я виникали рідше, а ті, що досчгають больового поріга і вище – ще рідше. Вважаємо, що шумометр знаходиться у виробничому цеху певного підприємства. При цьому віртуальний прилад LabView засвічує попереджувальний індикатор, якщо звуковий сигнал перевищує небезпечний рівень. Інженер (або охоронець), що спостерігає за рівнем сигналу, може призупинити виробництво або встановити захисні щити.
Можна також завести статистику для визначення середньодобового рівня гучності або реєстрації небезпечних сигналів. L abView дає змогу обробити потрібний сигнал та представити його у потрібній формі. Тож зкористаймося цією нагодою !
2.3 Емуляція вхідного сигналу
Основний сигнал подається за допомогою генератора випадкових величин і константи 70 – на виході матимемо змінний сигнал з амплітудою 70 дБ.
Нехай, відомо, що вірогідність надходження звукового сигналу, що несе небезпеку здоров'ю – 80 %. Тоді емуляцію такого сигналу можна виконати наступним чином :
якщо згенероване число < 0,8, то згенероване число 0..10 додається до основного сигналу.
При цьому використовується новий оператор : У нього три входи :
t – true, s, f – false. Якщо s – істенне, то на виході оператора значення true, якщо ні – false. В нашому випадку в разі неістинності опреатор повертає 0 (згенероване значення 0..10 не додається).
Аналогічно додаються сигнали до 40 та до 80 дБ, що підвищують гучність основного сигналу відповідно до 120 дБ (больовий поріг) та 200 дБ (смертельний рівень). Вірогідність виникнення звукових хвиль такого рівня – 0,4 та 0,04. Не слід забувати, що вірогідність випадання 10 в першому генераторі та 40 у другому одночасно дорівнює добутку цих вірогідностей : P12 = P1*P2 = 0, 8*0,5=0,4. А налогічно P123 = 0,4*0,1 = 0,04. Задані вірогідності можеть бути зміненні у коді віртуального приладу.
2.4 Формування вихідних сигналів
На виході маємо сгенерований основний сигнал (показання шумометра), що змінюється в часі, та постійні сигнали, що відображають рівні, небезпечні для здоров'я. Всі ці сигнали відображаємо на єдиному графіку. Для цього використовуємо функцію . Графік сигналу в LabView позначається символом
. При перевищенні основним сигналом значення, вказаною константою, засвічується попереджувальний індикатор .
Загальний код для виводу графічної інформації має вигляд :
Допоміжні функції виконують : затримку сигналу до 1000 мілісекунд (нові точки на графіку з' явля ю ться з інтервалом в одну секунду) та кнопка зупинки процесу . Створений графічний код має вигляд :
3. Інструкція з розробки ВП
В цьому розділі дається мінімальна інформація про використані методи LabView для того, щоб читач зміг самостійно повторити процес створення приладу.
1) Необхідно відкрити нове вікно для редагування коду набором комбінацій : LabView 7.1 -> New Vi ( Blank Vi ) -> С trl + E (при необхідності). Забраження на екрані матиме вигляд :
2) Розмістити у вікні наступні елементи, знаходячи їх за адресою : Window -> Show Functions Palette :
• Arith/Compare - > Numeric -> Add
• Arith/Compare - > Numeric -> Random Num
• Arith/Compare - > Numeric -> Multiply
• Arith/Compare - > Numeric -> Num Const . Числові значення вводити з клавіатури
• Arith/Compare - > Comparison -> Less
• Arith/Compare - > Comparison -> Select
• Arith/Compare - > Comparison -> Greater or = ?
і так далі.
3) З' єднати елементи, як показано на русунку. Натиснути комбінацію Сtrl+E .
Передня панель створюваного віртуального приладу матиме вигляд :
Розмістити вікно, кнопку, ндикатори, написи в потрібному місці. Редагувати елементи, натискаючи Properties об'єкта (напис на панелі, що виникає при виділенні об'єкта та натисканні правої кнопки миші).
4) Для запуску віртуального приладу обрати пункти меню : Operate -> Run ( ctrl + R )
Схема електрична принципова та зборочне креслення плати вимірювача рівня звукових сигналів
Висновки
В даній роботі розроблено віртуальний прилад „ вимірювач рівня звукових сигналів” у середовищі графічного програмування LabView 7.1.
Перед виконанням практичної роботи проведено дослідження принципів роботи сучаних невіртуальних аналогів з врахуванням можливостей, що надає LabView. Були визначені задачі майбутнього віртуального приладу, виконана постановка задачі та обгрунтовані типи вхідних і вихідних даних.
Детально описано створення графічного коду, додані необхідні інструкції. Теоретичний матеріал супроводжується посиланнями на літературу. До звіту додається файл віртального приладу M3.vi
Список використаних джерел
-
з дисципліни: «Автоматизація конструкторсько-технологічного проектування»
НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ
«КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ»
Кафедра КЕОА
Лабораторна робота №2
з дисципліни: «Автоматизація конструкторсько-технологічного проектування»
тема: « Тренажерна панель керування автомобілем »
Виконав: ст. гр. ДК-43 Тищук О. М.
Зовнішній вигляд лицьової тренажерної панелі керування автомобілем:
Я намагався якомога точніше змоделювати зовнішній вигляд та керування автомобілем.Старт двигуна відбувається тумблером: вгору – двигун запущений, вниз – двигун заглушений. Це можна прослідкувати на тахометрі. Також тут є спідометр, тахометр, два індикатора, які в разі небезпечної швидкості чи небезпечних, тобто високих обертів, загоряються, попереджуючи при цьому водія. Також є кнопка нічної підсвітки для темної пори. Три педалі: газ, гальма та зчеплення. І вибір передачі, на якій буде їхати автомобіль. Коли увімкнути зчеплення та розігнатися до небезпечної швидкості (високих обертах, включивши при цьому нічну підсвітку), лицьова панель приладу буде мати вигляд:
Блок-схема приладу :
-
Cтворити в середовищі графічного проектування LabView віртуальний прилад, який реалізує електронний рухомий рядок.
НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ УКРАЇНИ
«КИЇВСЬКИЙ ПОЛІТЕХНІЧНИЙ ІНСТИТУТ»факультет електроніки
кафедра конструювання електронно-обчислювальної апаратуриЛабораторна робота № 2
з дисципліни: «Автоматизація
конструкторсько-технологічного проектування»тема: «Віртуальний прилад, що реалізує електронний рухомий рядок»
Виконав: ст. гр. ДК-41 Саєнко Дмитро Олегович
Перевірив: Яганов П.О.
Завдання: ознайомитися з середовищем графічного проектування LabView та створити в ній віртуальний прилад, який реалізує електронний рухомий рядок.Об'єкт проектування: електронний рухомий рядок
Принцип дії приладу
Рухомі рядки в повсякденному житті можна зустріти всюди: в тролейбусах та трамваях, в метро, при вході в різні приміщення та будівлі. На них розміщують різну інформацію, таку як: курс валюти, прогноз погоди, назву зупинки , різну інформацію рекламного характеру тощо .
У реальних приладах є табло та пульти, за допомогою яких можна програмути ці рядки. Встановлювати різні режими, вводити сам текс, налаштовувати яскравість та контрастність дисплею, встановлювати швидкість відтворення та ін.
Даний віртуальний прилад, що розробив я, теж має табло та пульт. Табло має прямокутну форму та складається з 180 світлодіодів (36 х 5) бордового кольору, щоб максимально нагадувало реальний прилад. Пульт в свою чергу має дисплей з 6 кнопками та 1 регулятор. Дисплей слугує для того, щоб демонструвати символ, який на даний момент заноситься до рядка, що буде відтворюватися.
Кнопка «наступна позиція» заносить до рядка даний символ, та переводить прилад у готовність встановлення наступного.
Клавіша «відтворення» завершаю фазу програмування, та починає відтворювати на табло запрограмовану інформацію. Регулятор «затримка відтворення [ ms ] » змінює швидкість «бігу» рядка. Він вказує на те, яка затримка встановлена у мілісекундах (рекомендоване значення затримки 200мс).
Кнопка «Скид» обнуляє масив, та дозволяє заново, без перезавантаження прилада, заново його програмувати. Кнопка «Стоп» вимикає пристрій.
Рис.1. Передня панель віртуального приладу
Рис 2. Графічний програмний код пристрою (блок-схема)
Даний пристрій має свою базу даних, в якій зберігаються варіанти символів, що бути поміщення на табло. Щоб відтворити на світлодіодах певну літеру, яку ми маємо у вигляді бінарної матриці, де кожний елемент буде відповідати певному діоду. Щоб діод загорівся, необхідно на нього подати «1», а щоб погасити – «0».
0
1
1
0
0
1
1
1
0
0
1
1
1
0
1
1
1
0
1
0
0
1
0
1
0
0
1
0
1
0
0
0
1
0
0
1
1
1
1
1
0
1
1
1
0
0
1
0
0
0
1
0
0
1
1
0
0
1
0
1
0
0
1
0
1
0
0
0
1
0
0
1
1
0
0
1
0
1
1
1
0
0
1
1
1
0
1
1
1
0
15
20
20
15
0
31
21
21
10
0
31
17
17
0
31
17
17
14
Таб.1. Приклад кодування елементів
Для зручності літери записують не як бінарну матрицю, а як одномірний масив з десяткових чисел. Наприклад, коду «15 20 20 15 0» буде відповідати літера „А”. Такий набір маленьких масивів зберігається в кейс-структурі, до якої на вході під ' єднаний лічильник «вибір символу». Він вказує, який саме символ ми бажаємо занести до основного масиву.
Існує головний масив, до якого заносяться коди тих символів, що обрав користувач. Щоб надати можливість програмувати масиви різної довжини, ініціалізується спочатку масив на 1000 елементів, який заповнюється нулями, а потім під час фази відтворення залишкове порожнє місце видаляється.
Кнопка «наступна позиція» вказує поточний індекс основного масиву, який збільшується з кожним натисканням цієї кнопки рівно на стільки, на скільки стовпчиків має символ. Наприклад, літера «А» має 5 стовпчиків, а літера «С» - 4. Зайвий нульовий рядок навмисно додається до коду символу, щоб на табло була відстань між літерами, і запрограмований текст був читабельним.
Структура відтворення символів однакова, як на маленькому дисплеї, так і на великому табло. Спочатку перед кожним стовпчиком відділяється з масиву десяткове число, потім це число переводиться в бінарний масив, після чого з бінарного масиву на кожний діод надходить сигнал відповідного значення. Інкрементуючи індекс стовпчика, створюється ефект руху рядка.
Кнопка «Скид» замінює головний масив, заповнений певною інформацією, пустим масивом.
Висновок: Дана робота лише здається дуже заплутаною та важкою, насправді вона має дуже багато одноманітних елементів, що потребують одноманітної роботи. Такими елементами є база даних символів та система світлодіодів, що на перший погляд здається дуже важким та заплутаним.
Продумуючи алгоритм, я зміг уникнути важкості в оперуванні двохвимірних масивів, поєднавши усе в одному одновимірному рядку чисел шляхом перетворення бінарних кодів, що дуже спростило задачу та зробило доступним до розуміння програмний код (блок-схему) пристрою.
Додаток 1. Іконки підпрограм графічного коду
Графічне зображення Функціональність
Тумблер Кнопка Світлодіод Поворотна ручка зі шкалою Цифровий індикатор Визначає чи рівні елементи, передані на вхід
Визначає чи перший елемент більше другого Числова константа
Двійкова константа Збільшує вхідне значення сигналу на 1
Ініціалізує масив (вказується розмірність та початкові значення)
Змінює відповідний елемент в масиві
Видає відповідний елемент з масиву, що поданий на вхід
Зворотній зв'язок у циклі Цикл « while » - кількість ітерацій; - критерій зупинки.
Структура « case »