Студопедия — Вимірювання розходу рідини з використанням рівняння Бернуллі
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Вимірювання розходу рідини з використанням рівняння Бернуллі






1. Запустіть середовище програмування Eclipse. Створіть новий Java проект з назвою LR_5.

2. Створіть новий клас з назвою Zavdannja5_1.

3. Наберіть наступний програмний код та ознайомтесь зі скелетною схемою аплета:

import java.awt.*;

import java.applet.*;

//скелетна схема(скелет) апплета

public class AppletSceletPrezent extends Applet {

// викликається першим

public void init() {

// ініціалізація

}

// викликається другим

// також викликається після перезапуску аплета

public void start() {

// початок або продовження виконання

}

// викликається коли аплет зупинений

public void stop() {

// призупиняє виконання

}

// викликається коли аплет завершується

// це останній виконуваний метод

public void destroy() {

// виконує завершуючі дії

}

// викликається коли вікно аплета повинно бути перемальовано

public void paint(Graphics g) {

// другий показ вмістимого вікна

}

}

4. Наступна програма демонструє встановлення кольору тексту та фону:

import java.awt.*;

import java.applet.*;

public class AppletSample extends Applet {

String sms;

public void init() {

setBackground(Color. black);

setForeground(Color. red);

sms = "метод init() -> ";

}

public void start() {

sms += "метод start() -> ";

}

public void paint(Graphics g) {

sms += " метод paint().";

g.drawString(sms, 10, 30);

}

}

5. Кожний раз коли необхідно обновити інформацію відображену у вікні,то викликається метод repaint(). Приклад застосування цього методу наведений нижче:

import java.awt.*;

import java.applet.*;

public class Zagolovok extends Applet implements Runnable {

String sms = "Бігаючий рядок...";

Thread t = null;

int state;

boolean stopFlag;

public void init() {

setBackground(Color. black);

setForeground(Color. red);

}

public void start() {

t = new Thread(this);

stopFlag = false;

t.start();

}

public void run() {

char ch;

for (;;) {

try {

repaint();

Thread. sleep (100);

ch = sms.charAt(0);

sms = sms.substring(1, sms.length());

sms += ch;

if (stopFlag)

break;

} catch (InterruptedException e) {

}

}

}

public void stop() {

stopFlag = true;

t = null;

}

public void paint(Graphics g) {

g.drawString(sms, 10, 30);

}

}

6. Крім відображення інформації в своєму вікні, апплет може також виводити повідомлення у вікні стану браузера або програми перегляду апплетів (appletviewer), яка виконує його. Для цього необхідно викликати метод showStatus() та вказати в якості аргумента рядок відображення:

.

.

.

public void paint(Graphics g) {

g.drawString(sms, 10, 30);

showStatus("Вікно статусу в якому виведено повідомлення");

}

.

.

.

7. Java дозволяє завантажувати в аплет дані із каталогу, який містить HTML-файл, що завантажив аплет(getDocumentBase()) і каталогу з якого був завантажений class-файл аплету (getCodeBase()). Ці методи повертають вказані каталоги у вигляді URL-об’єктів. Наступний програмний код демонструє використання цих методів:

import java.awt.*;

import java.applet.*;

import java.net.URL;

 

public class Base extends Applet {

public void paint(Graphics g) {

String message;

URL url = getCodeBase();// одержати базу коду

message = "Code base: " + url.toString();

g.drawString(message, 10, 20);

url = getDocumentBase();// одержати базу документу

message = "Document base: " + url.toString();

g.drawString(message, 10, 40);

 

}

}

8. Інколи виникає необхідність оброблення подій миші(натискування, переміщення і т.д.). Для цього в Java передбачені інтерфейси MouseListener та MouseMotionListener. Наступний приклад представляє цей процес:

import java.applet.*;

import java.awt.*;

import java.awt.event.MouseEvent;

import java.awt.event.MouseListener;

import java.awt.event.MouseMotionListener;

 

public class MouseEvents extends Applet implements MouseListener,

MouseMotionListener {

String msg = "";

int mouseX = 0, mouseY = 0;// координати маніпулятора "миш"

 

public void init() {

addMouseListener(this);// регістрація себе як блоку прослуховування

// mouse-подій

addMouseMotionListener(this);// регістрація себе як блоку

// прослуховування MouseMotion-подій

}

 

// Обробка перетягування миші

public void mouseDragged(MouseEvent me) {

mouseX = me.getX();

mouseY = me.getY();

msg = "*";

showStatus("Dragging mouse at " + mouseX + ", " + mouseY);

repaint();

 

}

 

// Обробка переміщення миші

public void mouseMoved(MouseEvent me) {

showStatus("moving mouse at " + me.getX() + ", " + me.getY());

}

 

public void paint(Graphics g) {

g.drawString(msg, mouseX, mouseY);

}

 

// Обробка кліку миші

public void mouseClicked(MouseEvent me) {

mouseX = 0;

mouseY = 10;

msg = "Mouse clicked.";

repaint();

 

}

 

// Обробка вводу миші в області вікна

public void mouseEntered(MouseEvent me) {

// збереження координат

mouseX = 0;

mouseY = 10;

msg = "Mouse entered.";

repaint();

}

 

public void mouseExited(MouseEvent me) {

mouseX = 0;

mouseY = 10;

msg = "Mouse exited.";

repaint();

}

 

// Обробка натискання кнопки

public void mousePressed(MouseEvent me) {

mouseX = me.getX();

mouseY = me.getY();

msg = "Down";

repaint();

 

}

 

// Обробка вивільнення кнопки

public void mouseReleased(MouseEvent me) {

mouseX = me.getX();

mouseY = me.getY();

msg = "Up";

repaint();

 

}

}

9. Щоб обробляти події з клавіатури, використовується така сама архітектури, що і в попередньому прикладі з подіями миші. Єдиною різницею є те, що необхідно використовувати інтерфейс KeyListener. Коли клавіша натиснута, то генерується подія KEY_PRESSED, а це приводить до запиту оброблювача подій KeyPressed(). Коли клавіша відпускається, то генерується подія KEY_RELEASED і виконується оброблювач KeyReleased(). Якщо натискуванням клавіші згенерований символ, то посилається повідомлення про подію KEY_TYPED і викликається оброблювач KeyTyped(). Таким чином кожний раз коли користувач натискає клавішу, то генерується як мінімум дві і часто і три події. Наступний програмний код демонструє ввід з клавіатури. Він відображає у вікні аплет-символи клавіш і показує стан натиску/відпуску кожної клавіші у вікні стану:

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class SimpleKey extends Applet implements KeyListener {

String msg = "";

int X = 10, Y = 20;

public void init() {

addKeyListener((KeyListener) this);

requestFocus();

}

public void paint(Graphics g) {

g.drawString(msg, X, Y);

}

public void keyPressed(KeyEvent ke) {

showStatus("Key Down");

}

public void keyReleased(KeyEvent ke) {

showStatus("Key Up");

}

public void keyTyped(KeyEvent ke) {

msg += ke.getKeyChar();

repaint();

}

}

10. Якщо потрібно обробити спеціальні клавіші типу клавіш переміщення курсору або функціональних клавіш необхідно звернутись до них в оброблювачі KeyPressed(). Вони недоступні через KeyTyped(). Наступний аплет виводить ім’я декількох спеціальних клавіш:

import java.applet.*;

import java.awt.*;

import java.awt.event.*;

public class KeyEvents extends Applet implements KeyListener {

String msg = "";

int X = 10, Y = 20;

public void init() {

addKeyListener((KeyListener) this);

requestFocus();

}

public void paint(Graphics g) {

g.drawString(msg, X, Y);

}

public void keyPressed(KeyEvent ke) {

showStatus("Key Down");

int key = ke.getKeyCode();

switch (key) {

case KeyEvent. VK_F1:

msg += "Клавіша F1\n";

break;

case KeyEvent. VK_F2:

msg += "Клавіша F2\n";

break;

case KeyEvent. VK_F3:

msg += "Клавіша F3\n";

break;

case KeyEvent. VK_F4:

msg += "Клавіша F4\n";

break;

case KeyEvent. VK_F5:

msg += "Клавіша F5\n";

break;

case KeyEvent. VK_F6:

msg += "Клавіша F6\n";

break;

case KeyEvent. VK_LEFT:

msg += "Клавіша <-\n";

break;

case KeyEvent. VK_RIGHT:

msg += "Клавіша ->\n";

break;

case KeyEvent. VK_PAGE_UP:

msg += "Клавіша PAGE UP\n";

break;

}

repaint();

}

public void keyReleased(KeyEvent ke) {

showStatus("Key Up");

}

public void keyTyped(KeyEvent ke) {

msg += ke.getKeyChar();

repaint();

}

}

 

11. Результати виконання лабораторної роботи 6 збережіть у звіт та зробіть відповідні висновки.

 

 

Контрольні запитання

1. Що таке аплет?

2. Які основні методи при роботі з аплетами ви знаєте?

3. Який метод використовують для того, щоб обновити інформацію відображену у вікні?

Вимірювання розходу рідини з використанням рівняння Бернуллі

Мета роботи. Ознайомитись з принципами вимірювання розходу рідини за допомогою реометру, що працює використовуючи модель загального гідродинамічного напору на основі рівняння Бернуллі.

Сучасний розвиток будь-якої технології вимагає забезпечення переміщення технологічних рідин і газів по трубопроводах. Для контролю цього транспортного процесу необхідно отримувати інформацію про дійсний розхід речовини на різних ділянках трубопроводів. Вимірювання цієї величини часто здійснюється спеціальними приладами – витратомірами, що працюють із використанням закону (рівняння) Бернуллі, найважливішим висновком з якого є незмінність енергетичних характеристик потоку рідини вздовж всієї довжини його переміщення.

Використання дроселюючи пристроїв (вузьких отворів, які встановлюють на шляху переміщення рідини) і вимірювання різниці тисків перед і після дроселю дозволяє досить точно виміряти розхід речовини.

В рамках виконання даної роботи ми ознайомимось з принципом роботи такого пристрою.

Без урахування внутрішніх втрат енергії на подолання тертя рівняння Бернуллі можна записати у виді

У цьому рівнянні Zi - геометричний (нівелірний) напір, який відображає потенційну енергію рідини у точці вимірювання у гравітаційному полі Землі; Pi/ - статичний напір, зумовлений вагою рідини; Wi2/2g - динамічний або швидкісний напір, зумовлений кінетичною енергією руху рідини. Перші два члени об’єднують у гідростатичний напір, другий тоді можна назвати гідродинамічним. З рівняння Бернуллі випливає, що сума гідростатичного і гідродинамічного напру – величина незмінна. Тобто, частина одного напору може перетворюватись у інший.

На цьому принципі заснована робота витратомірів із змінним перепадом тиску. Основний елемент таких пристроїв – дросельна перегородка з отвором, яка монтується в трубі на шляху потоку рідини або газу. При проходженні потоку через таку перегородку збільшується швидкість, а отже й динамічний напір. При цьому відповідно зменшується значення статичного напору. Різниця між статичними напорами до і після дроселя фіксується за допомогою диференціального манометра, один вивід якого приєднується до дроселюючого пристрою, а інший – після нього. Проградуювавши диференційний манометр для різних розходів рідини, можна надалі вимірювати їх по перепаду рівнів у колінах диференційного манометру.

 

ОПИС ЛАБОРАТОРНОЇ УСТАНОВКИ

Принципова схема лабораторної установки наведена на рисунку.

Рисунок. Схема лабораторної установки для градуювання

 

Основним апаратом установки є лабораторний реометр (1), що являє собою капіляр, кінці якого приєднані до диференціального манометра. Реометр (1) за допомогою триходового крана (2) зв’язаний або з атмосферою, або з аспіратором (3), який слугує для вимірювання кількості газу, що пройшов через реометр за певний час. Аспіратор має зливний відвід із запірним краном (4). Аспіратор з’єднаний з манометром (5), один вивід якого відкритий на атмосферу. Рідина з аспіратора зливається в мірний об’єм (6). Вода в аспіратор подається з міської мережі через запірний кран (7). Джерело потоку газу – повітродувка (8). Надлишок повітря викидається в атмосферу через відвід із запірним краном (9).

Основний зміст роботи полягає в тому, щоб проградуювати диференційний манометр таким чином, щоб перепад рівнів у ньому можна було використовувати для вимірювання розходу повітря, яке подається з аспіратора.

 

ХІД ВИКОНАННЯ ЕКСПЕРИМЕНТУ

1. Підготувати установку до роботи. Для цього відкрити на атмосферу кран (2) з боку аспіратора (3); обережно відкрити кран (7); повільно заповнити аспіратор водою. Далі відкривають кран (2) на атмосферу, але вже з боку реометра (1).

2. При відкритих на атмосферу кранах (2) і (9) вмикають повітродувку (8).

3. Поступово прикриваючи кран (9), подати певний потік повітря через реометр (1), що фіксується за висотою стовпа рідини h1 у манометрі.

4. За допомогою триходового крану (2) з'єднують реометр з аспіратором (вихід в атмосферу перекритий!). Майже одночасно відкривають зливний кран (4) і встановлюють таку швидкість витікання води, за якої різниця рівнів у манометрі (5) (h5) була би близька до нуля. Це означає, що газ поступає в аспіратор при атмосферному тиску. Після цього за допомогою лінійки вимірюють перепад рівнів у реометрі (h1). Паралельно визначають час заповнення водою з аспіратора мірного об’єму (6) (за секундоміром). Об’єм води, що має набратись у мірний посуд (6) V6 задається викладачем (0,5, чи 1 л). Перед початком виміру замінюють посуд (6) із рідиною, що витекла з аспіратора в період підготовки системи, на незаповнений посуд (6).

5. Вимірювання за пунктом 4 (для кожного значення h1) повторюють 3-5 разів (за вказівкою викладача), оцінюють відтворюваність результатів; знаходять середні значення h1сер та .

6. 3’єднати кран (2) із боку реометра (1) з атмосферою та завдання пп. 3-5 повторити 6-8 разів для різних висот h1 (за всією шкалою реометра (1).

7. Одержані експериментальні дані заносять у таблицю.

Таблиця

h1, мм , c , с h1сер, мм
      х х х
      х х х
      х х х
      х х х
      х х х
Середні х х      

 

ОБРОБКА РЕЗУЛЬТАТІВ ЕКСПЕРИМЕНТУ

1. Виходячи з даних вимірювань розрахувати об’ємну витрату і занести результат у таблицю.

2. Побудувати графік функцій = f(h1сер) і та пояснити їх характер.

3. Побудувати калібрувальну криву реометра в координатах = f(h1сер). Пояснити, як користуватися цією кривою в практичній роботі.

4. На основі калібрувальної кривої побудувати шкалу реометра для заданого капіляра. Витрату газу на шкалі навести в л/хв. Ціну поділки шкали дати через 0,1 або 0,01 л/хв (залежно від діаметра капіляру).

КОНТРОЛЬНІ ЗАПИТАННЯ

1. Рівняння Ейлера, Бернулі та нерозривності потоку (з виведенням).

2. Основні способи вимірювання витрати газу й рідини та їх характеристика.

3. Гідравлічні опори, їх походження та характеристика.

4. Способи створення напору під час переміщення газів і рідин.

5. Основні типи насосів і компресорів (будова та принцип дії).

6. Вимірювання витрати рідини та газу за допомогою приладів постійного перепаду (ротаметри, п’єзометри).

ЛІТЕРАТУРА

1. Касаткин А.Г. Основные процессы и аппараты химической технологии. - М.: Химия, 1971. - С. 49 - 53, 56 - 64, 87 - 94, 136 - 137, 144 - 147, 151 - 153.

2. Солтис М., Закордонський В. Теоретичні основи процесів хімічної технології: Навч. посібник. Львів: ЛНУ, 2002. С.132-160.

3. Гончаров А.І., Середа І. П. Хімічна, технологія: Київ: Вища школа, 1979. Частина І. С. 78-84, С.88-95.

 


Лабораторна робота 2

(Теоретично-розрахункова робота)







Дата добавления: 2015-09-19; просмотров: 511. Нарушение авторских прав; Мы поможем в написании вашей работы!



Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Факторы, влияющие на степень электролитической диссоциации Степень диссоциации зависит от природы электролита и растворителя, концентрации раствора, температуры, присутствия одноименного иона и других факторов...

Йодометрия. Характеристика метода Метод йодометрии основан на ОВ-реакциях, связанных с превращением I2 в ионы I- и обратно...

Броматометрия и бромометрия Броматометрический метод основан на окислении вос­становителей броматом калия в кислой среде...

Плейотропное действие генов. Примеры. Плейотропное действие генов - это зависимость нескольких признаков от одного гена, то есть множественное действие одного гена...

Методика обучения письму и письменной речи на иностранном языке в средней школе. Различают письмо и письменную речь. Письмо – объект овладения графической и орфографической системами иностранного языка для фиксации языкового и речевого материала...

Классификация холодных блюд и закусок. Урок №2 Тема: Холодные блюда и закуски. Значение холодных блюд и закусок. Классификация холодных блюд и закусок. Кулинарная обработка продуктов...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия