Материал: Створення бази даних оптичних лазерів

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Область застосування МО дисків визначається його високими характеристиками за надійністю, обсягу і змінюваності. МО диск необхідний для задач, що вимагають великого дискового об'єму. Це такі задачі, як обробка зображень звуку. Однак невелика швидкість доступу до даних, не дає можливості застосовувати МО диски для завдань із критичною реактивністю систем. Тому застосування МО дисків в завданнях зводиться до зберігання на них тимчасової або резервної інформації. Для МО дисків дуже вигідним використанням є резервне копіювання жорстких дисків або баз даних. На відміну від традиційно застосовуваних для цих цілей стримерів, при зберігання резервної інформації на МО дисках, істотно збільшується швидкість відновлення даних після збою. Це пояснюється тим, що МО диски є пристроями з довільним доступом, що дозволяє відновлювати тільки ті дані, в яких виявився збій. Крім цього при такому способі відновлення немає необхідності повністю зупиняти систему до повного відновлення даних. Ці гідності у поєднанні з високою надійністю зберігання інформації роблять застосування МО дисків при резервному копіюванні вигідним, хоча й більш дорогим у порівнянні зі стримерами.

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

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

Найбільш реальна альтернатива двопрохідний запису - це технологія, заснована на зміну фазового стану. Така система вже реалізована деякими фірмами-виробниками. Існують ще кілька розробок у цьому напрямку, пов'язані з полімерними барвниками і модуляціями магнітного поля і потужності випромінювання лазера.

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

У теперішній час вже розробляється технологія, що дозволяє змінювати полярність магнітного поля на протилежну всього за кілька наносекунд. Це дозволить змінювати магнітне поле синхронно з надходженням даних на запис. Існує також технологія, побудована на модуляції випромінювання лазера. У цій технології дисковод працює в трьох режимах: режим читання з низькою інтенсивністю, режим запису з середньою інтенсивністю і режим запису з високою інтенсивністю. Модуляція інтенсивності лазерного променя вимагає більш складної структури диска і доповнення механізму дисковода ініціюючих магнітом, встановленим перед магнітом зсуву і мають протилежну полярності. У самому простому випадку диск має дві робочі шару - ініціалізація і записує. Ініціалізував шар зроблений з такого матеріалу, що ініціалізація магніт може змінювати його полярність без додаткового впливу лазера.

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

3.4 Голографія


Метод фотографування, використовуваний для збереження зображення предметів, відомий вже досить довгий час і зараз це найдоступніший спосіб отримання зображення об'єкта на будь-якому носії (фотопапір, фотоплівка). Однак інформація, що міститься у фотографії дуже обмежена. Зокрема, відсутня інформація про відстані різних частин об'єкта від фотопластинки та інших важливих характеристиках. Іншими словами, звичайна фотографія не дозволяє відновити повністю той хвильовий фронт, який на ній був зареєстрований. У фотографії міститься більш-менш точна інформація про амплітудах зафіксованих хвиль, але повністю відсутня інформація про фази хвиль.

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

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

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

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

В іншому варіанті голограма виготовляється для якогось певного стану об'єкта. При просвічуванні її об'єкт не видаляється і проводиться його повторне освітлення, як на першому етапі голографирования. Тоді знову виходить дві хвилі, одна формує голографічне зображення, а інша поширюється від самого об'єкта. Якщо тепер відбуваються якісь зміни у стані об'єкта (у двох послідовних хвилями виникає різниця порівняно з тим, що було під час експонування голограми), то між зазначеними ходу, і зображення покривається інтерференційними смугами. Описаний спосіб застосовується для дослідження деформацій предметів, їх вібрацій, поступального руху і обертань, неоднорідності прозорих об'єктів і т. п.

Цікаве застосування голографії в якості носія інформації. Часто необхідно отримати об'ємне зображення предмета, якого ще не існує, і отже, не можна одержати голограму такого предмета оптичними методами. У цьому випадку голограма розраховується на ЕОМ (цифрова голограма) і результати розрахунку відповідним чином переносяться на фотопластинку. З отриманої таким способом машинної голограми об'ємне зображення предмета відновлюється звичайним оптичним способів. Поверхня предмета, отриманого з машинної голограмі, використовується як еталон, з яким методами голографічної інтерференції проводиться порівняння поверхні реального предмета, виготовленого відповідними інструментами. Голографічна інтерферометрія дозволяє зробити порівняння поверхні виготовленого предмета і еталона з надзвичайно великою точністю до часток довжини хвилі. Це дає можливість виготовляти з такою ж великою точністю дуже складні поверхні, які було б неможливо виготовити без застосування цифрової голографії і методів голографічної інтерферометрії. Само собою зрозуміло, що для порівняння еталонної поверхні з виготовленої не обов'язково відновлювати оптичним способом машинну голограму. Можна зняти голограму предмета, перевести її на цифрову мову ЕОМ і порівняти з цифровою голограмою. Обидва ці шляхи в принципі еквівалентні.[5]

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

Висновок


Здійснено огляд літератури щодо підключення і використання бази даних. Здійснено написання програми, в яка можна записувати інформацію а також редагувати внесену інформацію. Програма написана у середовищі Microsoft Visual Studio 2013 Premium.

база дані лазерний випромінювання

Список використаних джерел


1. Тарасов Л. В. Лазери. Дійсність і надії. - М.: Наука, 1985.

. "Газові лазери" (под. ред. Н. Н. Соболєва) М.: Світ, 1968.

3. Айден К. Апаратні засоби PC: переклад з нім. - Санкт-Петербург: BHV - СПб, 1996.

4. Китайгородський А. І. Фізика для всіх: Фотони і ядра. - М.: Наука, 1982.

5. Ландсберг Г. С. Оптика. - М.: Наука, 1976.

6. Программирование на языке С#. Фаронов.В.В

7. Матвєєв А. Н. Оптика. - М.: Вища школа, 1985 ..

8. Сивухин В. А. Загальний курс фізики. Оптика. - М.: Наука, 1980.

9. Работа с базами данных на языке C#. Технология АDO .NET. Учебное пособие. 2009. Евсеева.О.Н, Шамшев.А.Б


using System;System.Collections.Generic;System.ComponentModel;System.Data;System.Drawing;System.Text;System.Windows.Forms;System.Data.OleDb;MovieDB

{public partial class Form1 : Form{OleDbConnection database;editButton;deleteButton;movieIDInt;

#region Form1 constructorForm1(){();connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=optickdatabase.mdb";{= new OleDbConnection(connectionString);.Open();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}(Exception ex){.Show(ex.Message);;}}

#endregion

#region Load dataGridvoid loadDataGrid(string sqlQueryString){SQLQuery = new OleDbCommand();data = null;.DataSource = null;.Connection = null;dataAdapter = null;.Columns.Clear();

//---------------------------------.CommandText = sqlQueryString;.Connection = database;= new DataTable();= new OleDbDataAdapter(SQLQuery);.Fill(data);.DataSource = data;.AllowUserToAddRows = false;.ReadOnly = true;.Columns[0].Visible = false;.Columns[1].Width = 80;.Columns[3].Width = 100;.Columns[4].Width = 100;.Columns[5].Width = 100;.Columns[6].Width = 80;.Columns[7].Width = 80;.Columns[7].Width = 120;.Columns[8].Width = 100;.Columns[9].Width = 150;= new DataGridViewButtonColumn();.HeaderText = "Редагувати";.Text = "Редагувати";.UseColumnTextForButtonValue = true;.Width = 80;.Columns.Add(editButton);= new DataGridViewButtonColumn();.HeaderText = "Видалити";.Text = "Видалити";.UseColumnTextForButtonValue = true;.Width = 80;.Columns.Add(deleteButton);}

#endregionvoid izlazToolStripMenuItem_Click(object sender, EventArgs e)

{Close();}

#region Close database connectionvoid Form1_FormClosing(object sender, FormClosingEventArgs e){.Close();}

#endregion

#region refresh buttonvoid button2_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}

#endregion

#region Inputvoid button6_Click(object sender, EventArgs e){typeString;try{= comboBox1.SelectedItem.ToString();}(Exception ex){.Show("Виберіть type\nError: " + ex.Message + "");;}type = 0;Позначення = textBox1.Text.ToString();Потужність = textBox2.Text.ToString();Рік_виготовлення = textBox3.Text.ToString();Довжина_хвилі = textBox7.Text.ToString();Ціна = textBox8.Text.ToString();Вага = textBox9.Text.ToString();Діаметр_променя = textBox10.Text.ToString();yr = 0;(Рік_виготовлення != ""){= CheckYear(Рік_виготовлення);}Небезпечний;(radioButton1.Checked == true){

Небезпечний = "Так";}{

Небезпечний = "Ні";}(yr != 1){(typeString == "Газові лазери") type = 1;(typeString == "Газодинамічні лазери") type = 2;(typeString == "Гелій-неоновий лазер") type = 3;(typeString == "Лазери на барвниках") type = 4;(typeString == "Напівпровідникові лазери") type = 5;(typeString == "Неодимовий лазер") type = 6;(typeString == "Проточний СО 2-лазер") type = 7;(typeString == "Рубіновий лазер") type = 8;(typeString == "С0 2-лазер із замкнутим об\'ємом") type = 9;(typeString == "Т-лазер") type = 10;SQLString = "";(Рік_виготовлення == ""){= "INSERT INTO movie(Позначення, Потужність, Небезпечний, Довжина_хвилі, Ціна, Вага, Діаметр_променя, typeID) VALUES('" + Позначення.Replace("'", "''") + "','" + Потужність + "','" + Небезпечний + "','" + Довжина_хвилі + "','" + Ціна + "','" + Вага + "','" + Діаметр_променя + "'," + type + ");";}else{.Show(yr.ToString());= "INSERT INTO movie(Позначення, Потужність, Небезпечний, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Рік_виготовлення, typeID) VALUES('" + Позначення.Replace("'", "''") + "','" + Потужність + "','" + Небезпечний + "','" + Довжина_хвилі + "','" + Ціна + "','" + Вага + "','" + Діаметр_променя + "'," + yr + "," + type + ");";}SQLCommand = new OleDbCommand();.CommandText = SQLString;.Connection = database;response = -1;{= SQLCommand.ExecuteNonQuery();}(Exception ex){.Show(ex.Message);}(response >= 1) MessageBox.Show("Ваш запит додано до бази даних", "Успіх", MessageBoxButtons.OK, MessageBoxIcon.Information);.Checked = radioButton2.Checked = false;}else{.Show("Рік не підходить\nВиберіть інший рік.", "Попередження", MessageBoxButtons.OK, MessageBoxIcon.Warning);.Clear();.Focus();}}int CheckYear(string year){yr = int.Parse(year);(yr >= 2100 || yr <= 1900){1;}{yr;}}

#endregion

#region Delete/Edit button handlingvoid dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";currentRow = int.Parse(e.RowIndex.ToString());try{movieIDString = dataGridView1[0, currentRow].Value.ToString();= int.Parse(movieIDString);}{ }(dataGridView1.Columns[e.ColumnIndex] == editButton && currentRow >= 0){Позначення = dataGridView1[1, currentRow].Value.ToString();Потужність = dataGridView1[2, currentRow].Value.ToString();Небезпечний = dataGridView1[3, currentRow].Value.ToString();Рік_виготовлення = dataGridView1[4, currentRow].Value.ToString();Довжина_хвилі = dataGridView1[5, currentRow].Value.ToString();Ціна = dataGridView1[6, currentRow].Value.ToString();Вага = dataGridView1[7, currentRow].Value.ToString();Діаметр_променя = dataGridView1[8, currentRow].Value.ToString();type = dataGridView1[9, currentRow].Value.ToString();f2 = new Form2();.Позначення = Позначення;.Потужність = Потужність;.Небезпечний = Небезпечний;.Рік_виготовлення = Рік_виготовлення;.Довжина_хвилі = Довжина_хвилі;.Ціна = Ціна;.Вага = Вага;.Діаметр_променя = Діаметр_променя;.type = type;.movieID = movieIDInt;.Show();.Update();}if (dataGridView1.Columns[e.ColumnIndex] == deleteButton && currentRow >= 0){queryDeleteString = "DELETE FROM movie where movieID = " + movieIDInt + "";sqlDelete = new OleDbCommand();.CommandText = queryDeleteString;.Connection = database;.ExecuteNonQuery();(queryString);}}

#endregionvoid Form1_Load(object sender, EventArgs e){}

#region search by Позначенняvoid button1_Click(object sender, EventArgs e){Позначення = textBox4.Text.ToString();(Позначення != ""){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movietype WHERE movietype.typeID = movie.typeID AND movie.Позначення LIKE '" + Позначення + "%'";(queryString);}else{.Show("Введіть фірму Позначенняа", "Попередження", MessageBoxButtons.OK, MessageBoxIcon.Warning);}}

#endregion

#region search by typevoid button5_Click(object sender, EventArgs e){type = 0;typeString = comboBox2.SelectedItem.ToString();(typeString == "Газові лазери") type = 1;(typeString == "Газодинамічні лазери") type = 2;(typeString == "Гелій-неоновий лазер") type = 3;(typeString == "Лазери на барвниках") type = 4;(typeString == "Напівпровідникові лазери") type = 5;(typeString == "Неодимовий лазер") type = 6;(typeString == "Проточний СО 2-лазер") type = 7;(typeString == "Рубіновий лазер") type = 8;(typeString == "С0 2-лазер із замкнутим об\'ємом") type = 9;(typeString == "Т-лазер") type = 10;queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie, movietype WHERE movietype.typeID = movie.typeID AND movie.typeID = " + type + "";(queryString);}

#endregion

#region search by yearvoid button4_Click(object sender, EventArgs e){firstYear = textBox5.Text.ToString();secondYear = textBox6.Text.ToString();yr1 = CheckYear(firstYear);yr2 = CheckYear(secondYear);((yr1 != 1 && yr2 != 1) && yr1 <= yr2){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movietype WHERE movietype.typeID = movie.typeID AND movie.Рік_виготовлення BETWEEN " + yr1 + " AND " + yr2 + "";(queryString);}else{.Show("Формат року не є правильним.", "Увага", MessageBoxButtons.OK, MessageBoxIcon.Warning);.Clear();.Focus();.Clear();}}

#endregion

#region search Небезпечний moviesvoid button3_Click(object sender, EventArgs e){Небезпечний;(radioButton3.Checked == true) Небезпечний = "Так";Небезпечний = "Ні";queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movietype WHERE movietype.typeID = movie.typeID AND Небезпечний ='" + Небезпечний + "'";(queryString);}

#endregionvoid button6_KeyDown(object sender, KeyEventArgs e){(e.KeyCode == Keys.Enter){_Click(null, null);}}void tabControl1_SelectedIndexChanged(object sender, EventArgs e){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button8_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button18_Click(object sender, EventArgs e){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button19_Click(object sender, EventArgs e){.Clear();.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button9_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button11_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button14_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button16_Click(object sender, EventArgs e){.Clear();queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}void button17_Click(object sender, EventArgs e){queryString = "SELECT movieID, Позначення, Потужність, Небезпечний, Рік_виготовлення, Довжина_хвилі, Ціна, Вага, Діаметр_променя, Type FROM movie,movieType WHERE movietype.typeID = movie.typeID";(queryString);}