Автор работы: Пользователь скрыл имя, 17 Мая 2012 в 18:08, дипломная работа
Объектом исследования - является ЛВС, основанная на технологии Ethernet и ультразвуковой акустический тракт «ТРАК» фирмы “Votum”.
Цель работы - разработать программу на языке Delphi, для управления УЗ дефектоскопом с удаленного компьютера при помощи приложения «Клиент - Сервер».
В процессе работы проводились изучение работы ультразвукового акустического тракта «ТРАК».
В результате работы были расширены функциональные возможности УЗ дефектоскопа, в частности, разработано приложений типа «Клиент-Сервер», позволяющее удаленно управлять дефектоскопом и производить сбор данных через ЛВС
Введение
Ультразвуковая дефектоскопия
1.1 Теневой метод ультразвуковой дефектоскопии
1.2 Эхо - импульсный метод ультразвуковой дефектоскопии
1.3 ''ТРАК'' Акустический модуль
Параллельный интерфейс: LPT-порт
2.1 Традиционный LPT-порт
Организации удаленного соединения.
3.1 Протоколы сети Интернет
3.2 Приложение Клиент-Сервер
Язык программирования - Delphi
4.1 Функциональные задачи при конструировании интерфейса
4.2 Компоненты среды программирования Delphi, использовынные для создания приложения «Клент-Сервер»
Заключение
4.2.2.1 Конфигурирование локальной сети: ip-адреса
Если в вашем распоряжении есть локальная сеть, то удобно будет протестировать последующие программы в ней. В противном случае можно один и тот же компьютер использовать и в качестве сервера, и в качестве клиента. В этом случае адрес 127.0.0.1 (адрес локального хоста — localhost) всегда является адресом текущего компьютера. Если ваша сеть имеет сложную конфигурацию, попросите системного администратора установить необходимые IP-адреса, а если в сети всего пара связанных компьютеров, можно установить IP-адрес самостоятельно. Это четырехбайтное число, обычно представленное в виде четырех компонентов (называемых октетами), разделенных точками. Первый компонент (октет) определяет класс адреса, а само формирование таких адресов подчиняется достаточно сложной логике.
Определенные
IP-адреса зарезервированы для
4.2.2.2 Местные доменные имена
Как найти соответствие между IP-адресом и доменным именем? В Интернете программа-клиент осуществляет поиск на сервере доменных имен (DNS). Но можно также использовать локальный файл HOSTS — текстовый файл, который можно легко отредактировать, чтобы получить удобные соответствия. В качестве примера можно посмотреть файл HOSTS.SAM, установленный в одном из подкаталогов каталога Windows (или в самом каталоге Windows, в зависимости установленной у вас версии системы). Вы можете переименовать его в HOSTS (без расширения), чтобы активизировать локальные соответствия.
Что лучше использовать в программах — IP-адрес или имя хоста (доменное имя)? Имена хоста легче запомнить и они не требуют изменений при смене IP-адреса (по любой причине). С другой стороны, IP-адрес не требует какого-либо взаимодействия с DNS, в то время как для имени хоста такая операция необходима (а она в Интернете отнимает много времени).
4.2.2.3 Порты TCP
Каждое
TCP-соединение работает через порт,
который представлен
Некоторые
порты TCP зарезервированы для
Таблица 6
|
В файле SERVICES (еще одном текстовом файле, аналогичном файлу HOSTS) перечислены стандартные порты, используемые службами. Вы можете сами дополнять этот список, задавая вашей службе любое имя. Сокеты клиента всегда указывают номер порта или имя службы сокета сервера, с которым требуется устанавливать соединение.
4.2.2.4 Подключения через сокеты
При передаче через сокет начинает работу программа-сервер, которая просто ждет запроса от программы-клиента. Программа-клиент запрашивает соединение у сервера, к которому требуется подключение. Когда клиент посылает запрос, сервер может принять соединение, открывая специальный сокет на стороне сервера, который образует соединение с сокетом на стороне клиента.
Для поддержки этой модели существуют три типа сокетных соединений.
Разница в типах подключения имеет значение только на этапе установки связи между клиентом и сервером. В дальнейшем (после того, как связь установлена) обе стороны могут обмениваться друг с другом данными и запросами в произвольном порядке.
Компоненты TcpClient и TcpServer являются наследниками ClientSocket и ServerSocket, соответственно расширяя их функциональность возможностью работы с тем или иным протоколом по выбору: IP, TCP, UDP или другим сетевым протоколом, а также за счет ряда дополнительных свойств и методов, упрощающих создание приложений на основе этих компонентов.
Внешний
вид палитр Servers и Clients приведен
на рисунках ниже.
Рисунок 9 Палитра компонетов Servers
Рисунок
10 Палитра компонетов Clients
Заключение
В данной выпускной квалификационной работе мной на основе исследуемых материалов по теме локально вычислительных сетей и протоколов сетевого обмена проведено:
- освоен язык программирования Delphi;
-изучен параллельный интерфейс (LPT порт в режиме EPP);
-изучена классификация и механизм работы протоколов сетевого обмена данными;
-расширены
функциональные возможности УЗ
дефектоскопа «ТРАК» фирмы «
В
данной работе реализована возможность
дистанционного управления ультразвуковым
акустическим трактом позволяющее
снимать входящий сигнал в любой
точке сети, а так же элементарно
управлять модулем в режиме реального
времени. Перспективой данной разработки
является сеть, удаленно опрашивающая
несколько отдельно стоящих цифровых
ультразвуковых дефектоскопов.
Список
использованных источников
1 Рабинер Л., Голуд Б. Теория и применение цифровой обработки сигналов: Пер. с англ. Под ред. Ю. Н. Александрова. - М.: Мир, 1978.
2 Голямина И.П. Ультразвук. - М.: Советская энциклопедия, 1979.
3 Колесников, Алексей Евгеньевич. Ультразвуковые измерения / А. Е. Колесников. - 2-е изд., доп. и перераб. - М. : Изд-во стандартов, 1982.
4 Крауткремер, Йозеф. Ультразвуковой контроль материалов : Справочник; пер. с нем. / Й. Крауткремер, Г. Крауткремер. - М. : Металлургия, 1991. - 610-750 с.
5 Алешин, Николай Павлович. Ультразвуковая дефектоскопия : Справочное пособие / Н. П. Алешин, В. Г. Лупачев. - Минск : Вышэйшая школа, 1987. - 271 с. : ил. - Библиогр.: с. 262-263.
6 Дантеманн, Джефф. Программирование в среде Delphi : пер. с англ. / Дж. Дантеманн, Дж. Мишел, Д. Тейлор. - Киев : ДиаСофт Лтд, 1995. - 608 с.
7 Культин, Никита. Программирование в Turbo Pascal 7.0 и Delphi : Cамоучитель / Н. Б. Культин. - 2-е изд. - СПб. : BHV, 2000. - 416 с. + Прил.: дискета. - Библиогр.: с. 401. - Предм. указ.: с. 402-404.
8 Сухарев, Михаил В. Основы Delphi. Профессиональный подход / М. В. Сухарев. - СПб. : Наука и техника, 2004. - 596 с.
9 Вадутов, Олег Самигулович. Математические основы обработки сигналов : лабораторный практикум / О. С. Вадутов ; Томский политехнический университет. — Томск : Изд-во ТПУ, 2001. — 67 с.
10
Кенту, Марко. Delphi7 для Профессиналов;.
— Санкт-Петербург : Изд-во ПИТЕР, 2007. —
234-349 с.
Приложение А
Программа Клиента
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, Sockets, TeEngine, TeeFunci, Series,
TeeProcs, Chart;
type
TForm1 = class(TForm)
Host: TEdit;
Port: TEdit;
Label1: TLabel;
Label2: TLabel;
TcpClient1: TTcpClient;
TcpServer1: TTcpServer;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Button4: TButton;
Timer1: TTimer;
Chart1: TChart;
Series1: TLineSeries;
TeeFunction1: TAddTeeFunction;
Продолжение программы
Клиента
Port2: TEdit;
Label3: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure TcpServer1Accept(Sender: TObject;
ClientSocket: TCustomIpClient);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure
Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Data: array [0..255] of integer;
Activated, Stopped: boolean;
Command: integer;
implementation
{$R *.dfm}
Продолжение
программы Клиента
Procedure Draw(Data: array of integer);
var
i: integer;
begin
Form1.Series1.Clear;
for i:=0 to 255 do
Form1.Series1.AddXY(i,Data[i])
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
TcpClient1.RemoteHost := Host.Text;
TcpClient1.RemotePort := Port.Text;
TcpServer1.LocalPort := Port2.Text;
TcpServer1.Active := True;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
TcpClient1.RemoteHost := Host.Text;
TcpClient1.RemotePort := Port.Text;
TcpServer1.LocalPort := Port2.Text;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
a: byte;
begin
Продолжение программы Клиента
a:=1;
if TcpClient1.Connect then
begin
TcpClient1.SendBuf(a, 1);
TcpClient1.Disconnect;
end
else
MessageDlg('Не
удалось связаться с сервером.'