Математическая формулировка задачи, принципиальная схема гидравлического демпфера. Структурная схема программы связи модулей, реализованной на языке высокого уровня Borland Delphi 7.0. Ее описание, руководство пользователя, особенности тестирования.
Аннотация к работе
В процессе ее решения получается решение поведение системы относительно времени и колебании некоторого груза под действием силы нагрузки треугольного вида. В программе реализованы следующие классы: Класс TFORM1 - от родительского класса TFORM, содержит необходимые поля и методы для работы главной формы программы. Методы класса: procedure Timer1Timer(Sender: TOBJECT) - метод отсчет таймера, по завершению которого форма (заставка) закрывается procedure FORMCREATE(Sender: TOBJECT) - при создании формы, автоматически срабатывает таймер, и форма закрывается по истечению времени. procedure FORMKEYPRESS(Sender: TOBJECT; var Key: Char) - обработка нажатия клавиш на клавиатуре, при нажатии клавиши заставка закрывается. Поля класса (все поля типа double): t0 - начальное значение времени, ti - промежуточные значения времени, tk - конечное значение периода времени, k - упругость пружины, m - масса груза, u - коэффициент вязкости жидкости, l - длина отверстий в поршне, q - площадь поршня, H - диаметр порщня, m1 - масса штока, m2 - масса поршня, q0 - расстояние центра тяжести системы, z - число отверстий, d - диаметр отверстий, hag - приращение (шаг) времени. Библиотека имеет одну процедуру, которая доступна для использования из библиотеки и одну функцию которая посчитывает значение переменной n используемой при расчетах в программе. procedure SHOWABOUT(Handle: THANDLE)stdcall; - процедура отображения окна «О программе». function N_dann(u,l,Q_,z,H,d:double):double; - функция подсчета значения переменной n.Разработанный пакет программного обеспечения позволит ускорить, автоматизировать работу по нахождению значений временного поведения системы: колебаний массы с гидравлическим демпфером.begin if (Form1.Edit100.Text="") or (Form1.Edit107.Text="")or(Form1.Edit108.Text="")or (Form1.Edit101.Text="") or (Form1.Edit102.Text="") or(Form1.Edit109.Text="")or (Form1.Edit103.Text="") or (Form1.Edit104.Text="") or (Form1.Edit105.Text="") or (Form1.Edit106.Text="") then // при нажати записи в ini файл происходить вызов метода созданного класса. procedure TFORM1.Button2Click(Sender: TOBJECT); Edit100.Text:=""; Edit101.Text:=""; begin if (Form1.Edit100.Text="") or (Form1.Edit107.Text="")or(Form1.Edit108.Text="")or (Form1.Edit101.Text="") or (Form1.Edit102.Text="") or (Form1.Edit109.Text="")or (Form1.Edit103.Text="") or (Form1.Edit104.Text="") or (Form1.Edit110.Text="")or (Form1.Edit105.Text="") or (Form1.Edit106.
Введение
Целью курсовой работы по дисциплине: ”Конструирование программ и языки программирования” на тему «Разработка приложения колебаний массы с гидравлическим демпфером» является разработка программного обеспечения для компьютера, с помощью которого будет производится расчет временного поведения системы.
Решаемая задача относится к разделу физики (механика). В процессе ее решения получается решение поведение системы относительно времени и колебании некоторого груза под действием силы нагрузки треугольного вида.
Delphi - это современный программный продукт, позволяющий создавать широкий спектр приложений для среды Microsoft Windows. Он объединяет в себе высокопроизводительный компилятор с языка OBJECTPASCAL, являющийся объектно-ориентированным расширением структурного языка третьего поколения Pascal, средств наглядного (визуального) создания программ и масштабируемую технологию управления БД. Основное назначение Delphi - служить средством для быстрого создания широкого класса Windows-приложений, включая приложения, отвечающие технологии распределенной обработки данных, называемой технологией клиент-сервер.
Для разработки Windows-приложений Delphi имеет следующие средства: -высокопроизводительный компилятор
-объектно-ориентированная модель компонентов
-быстрая среда разработки (RAD)
-расширяемость
-средства для построения БД
Delphi - это продукт, позволяющий создавать широкий спектр приложений для Windows. Среда Delphi включает в себя полный набор визуальных средств для быстрой разработки приложений, поддерживающих как создание пользовательских интерфейсов, так и таблиц базы данных. Библиотека классов, входящих в Delphi, инкапсулирующих различные группы функций Windows API. Delphi является системой с открытой архитектурой, что позволяет дополнять ее новыми средствами, и переносить на различные платформы.
1. Математическая формулировка задачи
Принципиальная схема гидравлического демпфера или катаракта приведена на рисунке 1.
Демпфер состоит из наполненного вязкой жидкостью цилиндра D, в котором движется поршень Р с отверствиями А. Поршень штоком В соединен с массой m, вес которой G=mg. Масса m подвешена на пружине С.
Уравнение колебаний массы имеет вид
Сопротивление, встречаемое поршнем при движении его в цилиндре (так называемое вязкое трение), пропорционально первой степени скорости , причем q есть расстояние центра тяжести системы Р, В, m от положения равновесия. Наиболее сложной частью расчета является определение величины коэффициента c, зависящего от многих факторов. Здесь следует воспользоваться следующим выражением этого коэффициента:
где коэффициент вязкости (), длина отверствий А (м), диаметр отверствий (м), площадь поршня (), число отверствий.
Если вес всей колеблющейся системы (груз, поршень и поршневой шток), диаметр поршня (м), то
Введя обозначения масса равная сумме массы m, массы штока и массы поршня, жесткость пружины) , запишем уравнение (1) в виде
(2)
Решение уравнения (2) будет иметь различную форму в зависимости от соотношений
Первый случай: (случай «малого» сопротивления).
Решение уравнения (2) представляется в виде
А - амплитуда, начальная фаза, - круговая частота свободных колебаний.
Второй случай: (случай «большого» сопротивления).
Решение уравнения (2) имеет вид: (4) где
Третий случай: Решением уравнения (1) будет
(5)
Где .
2. Описание программы
Структурная схема программы (связи модулей).
Программа состоит из следующих модулей: Project1.dpr - модуль проекта.
Unit1 - модуль содержащий описание класса главной формы программы, и описание методов работы формы.
Unit2 - модуль заставки, появляющейся при запуске программного обеспечения.
Kursuv_class - модуль созданного класса с закрытыми полями, и методами для работы с данным классом.
PROJECTDLL.dll - динамически подключаемая библиотека, содержащая форму окна «О программе», вызываемой из главного окна программы.
В программе реализованы следующие классы: Класс TFORM1 - от родительского класса TFORM, содержит необходимые поля и методы для работы главной формы программы.
Основные поля класса: MAINMENU1 - главное меню.
STRINGGRID1 - таблица для вывода результатов вычислений.
Edit100 ... 113 - поля для ввода исходной информации в программу.
Chart1 - область построения диаграмм на форме программы.
Series1 - график диаграммы.
Основные методы класса: procedure N5Click(Sender: TOBJECT) - обработка нажатий на пункты меню. procedure TOOLBUTTON1Click(Sender: TOBJECT) - обработка нажатий на кнопки на панели. procedure FORMSHOW(Sender: TOBJECT) - отображение заставки на экране. procedure SHOWHINT(Sender: TOBJECT) - обработка показываний контекстной помощи (подсказки). function Proverka(Sender: TOBJECT):boolean - функция проверки на заполнение полей исходными данными.
Класс TLOGO - от родительского класса TFORM, содержит является окном заставки показываемой перед запуском основной формы программы.
Основные поля класса: Image1 - рисунок заставки.
Label1 - текстовые поля со статической информацией.
Timer1 - таймер с отсчетом времени для показа заставки.
Методы класса: procedure Timer1Timer(Sender: TOBJECT) - метод отсчет таймера, по завершению которого форма (заставка) закрывается procedure FORMCREATE(Sender: TOBJECT) - при создании формы, автоматически срабатывает таймер, и форма закрывается по истечению времени. procedure FORMKEYPRESS(Sender: TOBJECT; var Key: Char) - обработка нажатия клавиш на клавиатуре, при нажатии клавиши заставка закрывается.
Класс TKURS - разработанный класс для вычисления в заданный промежуток времени поведения системы с одной степенью свободы под действием нагрузки треугольного вида.
Поля класса (все поля типа double): t0 - начальное значение времени, ti - промежуточные значения времени, tk - конечное значение периода времени, k - упругость пружины, m - масса груза, u - коэффициент вязкости жидкости, l - длина отверстий в поршне, q - площадь поршня, H - диаметр порщня, m1 - масса штока, m2 - масса поршня, q0 - расстояние центра тяжести системы, z - число отверстий, d - диаметр отверстий, hag - приращение (шаг) времени.
Методы класса: function g_f(t: double):double - функция вычисления значения системы при заданном значении времени. procedure Create - запись информации в поля класса;
procedure READINIFILE - чтение ini файла;
procedure WRITEINIFILE - запись в ini файл;
procedure Raszet - произведение вычислений изменения системы и занесение информации в таблицу результатов главной формы;
procedure Draw - рисование на главной форме графика поведения системы относительно времени.
В программе реализована одна динамическая библиотека PROJECTDLL.dll, в ней содержится окно «О программе». Библиотека имеет одну процедуру, которая доступна для использования из библиотеки и одну функцию которая посчитывает значение переменной n используемой при расчетах в программе. procedure SHOWABOUT(Handle: THANDLE)stdcall; - процедура отображения окна «О программе». function N_dann(u,l,Q_,z,H,d:double):double; - функция подсчета значения переменной n.
Работа программы выполняется следующим образом: при создании главное формы на экран выводится заставка, форма модуля Unit2.pas, которая по истечению 5 секунд, либо по нажатию клавиши, исчезает. Запускается главная форма, модуль Unit1.pas. Далее ожидаются действия пользователя. Пользователь должен ввести исходные данные, либо выбрать метод чтения данных из ini файла. Данные заносятся в создаваемый класс TKURS, модуля Kursuv_class.pas. Далее при выборе пользователя метода вычислить производится запуск метода Raszet, который выводит полученную информацию в таблицу. Затем метод Draw класса TKURS рисует график изменения поведения системы. При вызове окна «О программе», подключается динамическая библиотека PROJECTDLL.dll из которой процедурой SHOWABOUT(Handle: THANDLE) отображается окно «О программе».
3. Руководство пользователя
Работа программы начинается с запуска приложения Project1.exe. Пользователю сперва показывается заставка программы, которая сама пропадет через 5 секунд после появления, либо можно закрыть ее нажатием клавиши на клавиатуре. После чего появляется главная форма программы. Дальнейшие действия пользователя - заполнить данными поля «Исходные данные», исходные данные возможно взять из ini файла, для этого пользователю необходимо выбрать пункт меню Файл / Данные из *.ini. Данные берутся из файла ini.ini находящегося в папке Windows, если данный файл не найден, либо испорчен, данные автоматически записываются все единицами. Далее пользователь выбирает пункт меню Данные / Вычислить, происходит вычисления значений изменений системы относительно времени и занесение данных в таблицу. Данные / График происходит построение графического изображения изменения системы относительно времени.
Пункты меню программы: Файл / Данные из *.ini. - читать данный из файла ini.ini в папке Windows.
Файл / Сохранить в *.ini - записывает исходные данные в файл ini.ini в папку Windows.
Файл / Выход - выход из программы.
Данные / Вычислить - происходит вычисления значений изменений системы относительно времени и занесение данных в таблицу.
Данные / График - происходит построение графического изображения изменения системы относительно времени.
Данные / Очистить / Все - все поля, таблицу значений и график
Данные / Очистить / Исходные данные - очищает поля с исходными данными
Данные / Очистить / Таблицу значений - очищает значения функции занесенные в таблицу.
Данные / Очистить / График - стирает изображение графика.
Документы / Пояснительная записка - отрывается пояснительная записка данного курсового проекта.
Документы / Презентация - в POWERPOINT открывается презентация на данное программное средство.
Документы / Данные в Excel - заносятся данные полученный при выполнении вычислений в книгу Microsoft Excel.
Справка / Содержание - справочная информация по использованию данного программного средства.
Справка / Заставка - запускается заставка.
Справка / О программе - открывается диалоговое окно «О программе».
На рисунке 3 изображена кнопочная панель для удобства использования программного средства.
Рис. 3 Кнопочная панель
Значение кнопок с лева на право следующее: 1 - Читать данный из файла ini.ini в папке Windows.
2 - Записывает исходные данные в файл ini.ini в папку Windows.
3 - Вычислить - происходит вычисления значений изменений системы относительно времени и занесение данных в таблицу.
4 - График - происходит построение графического изображения изменения системы относительно времени.
5 - Очистить - все поля, таблицу значений и график.
7 - Презентация - в POWERPOINT открывается презентация на данное программное средство.
8 - Данные в Excel - заносятся данные полученный при выполнении вычислений в книгу Microsoft Excel.
9 - справочная информация по использованию данного программного средства.
10 - Заставка - запускается заставка.
11 - О программе - открывается диалоговое окно «О программе».
12 - Выход из программы.
4. Тестирование программного средства
Цикл разработки программного обеспечения включает в себя стадию тестирования. На данном этапе проводится проверка работоспособности программы, причем не только в нормальных условиях, но и в критических - нехватка системных ресурсов, намеренные ошибки во входных данных и пр. Также проверятся корректное и своевременное освобождение всех ресурсов, занятых приложением. При нахождении недочетов в программе они исправляются - пересматривается исходный код соответствующих модулей, находятся и исправляются недоработки.
При своей работе программа потребляет определенное количество ресурсов системы, таким образом, для ее запуска необходимо, чтобы данные ресурсы были свободны и предоставлены ей для работы. Из них программе необходимы свободное место на жестком диске компьютера для размещения файлов непосредственно самой программы, файла базы данных и вспомогательных файлов, а также используемых библиотек; определенное количество оперативной памяти для запуска процесса программы; процессор компьютера, который используется для нужд вычислений; из программного обеспечения необходима любая 32-разрядная версия Windows, под управлением которой работает приложение.
Программа разработана на компьютере, который и является оптимальным для ее запуска. Он имеет следующие характеристики: - процессор AMD Duron 800MGH;
- 128 Mb оперативной памяти SDRAM;
- видеокарта GEFORCE 4MX 64 Mb памяти;
- 20 Gb винчестер Samsung SP0212N, из них на системном диске свободны 200 Mb для размещения файла виртуальной памяти;
- CD-RW Teac CRX, который используется для инсталляции программы;
- 3,5" флоппи-дисковод, который также может быть использован для установки приложения;
- 17" монитор с разрешением 1024x768 и глубиной цвета 32 бита на пиксель;
- операционная система Windows XP.
Если компьютер следует вышеперечисленным характеристикам, либо имеет близкие к ним, программа корректно запустится и будет функционировать.
В данном решении тестирование проводилось несколькими способами. Во-первых, в диалоговых окнах добавления и редактирования записей вводились неправильные значения и проверялась реакция программы, в частности, в числовые поля вводились символы и т.д. Также производились попытки изменить либо удалить записи в момент, когда никакой текущей записи не выбрано.
В момент прохождения стадии тестирования в программе были найдены и устранены мелкие недостатки.
После тестирования были построены финальная версия программы и программа-установщик. Данное приложение готово к использованию.
В ходе испытаний была доказана полная совместимость и правильность работы программного средства с Windows ХР.
Вывод
Разработанный пакет программного обеспечения позволит ускорить, автоматизировать работу по нахождению значений временного поведения системы: колебаний массы с гидравлическим демпфером.
Программный продукт реализован на языке высокого уровня Borland Delphi 7.0.
В разработанном программном средстве реализовано использование динамической библиотеки DLL, организован экспорт данных в электронный таблицы Microsoft Excel. К программному средству прилагается справочная информация по использованию. программа гидравлический демпфер delphi
Список литературы
1. А.М. Епанешников, В.А. Епанешников Программирование в среде Delphi.-М.:»Диалог МИФИ», 1998.
3. Гринчишин Я.Т. и др. Алгоритмы и программы на Бейсике: Учеб. Пособие для студентов пед. Ин-тов по физ.-мат. Спец./Я.Т.Гринчишин, В.И. Ефимов, А.Н. Ломакович.-М.: Просвещение, 1988.- 160 с.