✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
本程序可以模拟单自由度系统小球的振动过程,分自由振动和强迫振动两部分,其中自由振动又可分有阻尼和无阻尼。
在自由振动过程中,可根据给定参数,计算机械振动的相关公式,绘制机械振动曲线,并对小球振动过程进行动画模拟。
在强迫振动过程中,可根据给定参数,计算机械振动相关公式,对正弦激励时的强迫振动及伴随强迫振动的自由振动进行绘制,并将该模型作为典型二阶系统进行控制系统分析,如Bode图,Nyquist图的绘制。此外,还添加了LTI View,SISO及Simulink模块,可利用matlab自带工具箱对该二阶系统进行深入分析。
⛄ 部分代码
function varargout = chuangkou(varargin)% CHUANGKOU M-file for chuangkou.fig% CHUANGKOU, by itself, creates a new CHUANGKOU or raises the existing% singleton*.%% H = CHUANGKOU returns the handle to a new CHUANGKOU or the handle to% the existing singleton*.%% CHUANGKOU('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in CHUANGKOU.M with the given input arguments.%% CHUANGKOU('Property','Value',...) creates a new CHUANGKOU or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before chuangkou_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to chuangkou_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help chuangkou% Last Modified by GUIDE v2.5 03-Jun-2011 19:01:43% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @chuangkou_OpeningFcn, ... 'gui_OutputFcn', @chuangkou_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []);if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1});endif nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});else gui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before chuangkou is made visible.function chuangkou_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% varargin command line arguments to chuangkou (see VARARGIN)% Choose default command line output for chuangkouhandles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes chuangkou wait for user response (see UIRESUME)% uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = chuangkou_OutputFcn(hObject, eventdata, handles) % varargout cell array for returning output args (see VARARGOUT);% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structurevarargout{1} = handles.output;% --- Executes on button press in radiobutton1.function radiobutton1_Callback(hObject, eventdata, handles)% hObject handle to radiobutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of radiobutton1% --- Executes on button press in radiobutton2.function radiobutton2_Callback(hObject, eventdata, handles)% hObject handle to radiobutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of radiobutton2%主程序% --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles)% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (sese GUIDATA)a=get(handles.radiobutton1,'value');b=get(handles.radiobutton2,'value');if a==1 close('chuangkou'); run('ziyouzhendong');elseif b==1 close('chuangkou'); run('qiangpozhendong');end% --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles)% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)close
⛄ 运行结果
⛄ 参考文献
[1] 蒋志峰,楼易.用MATLAB进行单自由度系统机械振动试验[J].力学与实践, 2004, 26(3):3.DOI:10.3969/j.issn.1000-0879.2004.03.031.
[2] 艾金婷,富立,郑玉.库仑摩擦对机械振动的影响[J].长春理工大学学报:自然科学版, 2014(2):4.DOI:10.3969/j.issn.1672-9870.2014.02.013.
[3] 孙向阳,曾山.基于MATLAB6的振动问题的模拟演示[J].武汉工业学院学报, 2003, 22(4):4.
-
⛳️ 代码获取关注我