一阶倒立摆离散模型的python实现 所需的第三方库: 麻木matplotlib
2023-01-05 11:02:58 4KB Python
1
pendulum system nonlinear dynamcal systems matlab source code
2022-11-28 11:48:29 2KB pendulum
1
matlab单摆周期程序代码简单的钟摆模拟 Matlab简单摆模拟。 将来用于路径生成。 结果图: 程序: 初始化计算变量: % Initial Conditions: theta_initial = 2*pi/4; v_initial = 100; theta = theta_initial; v = v_initial; % Constants: g = -9.8; m = 1; l = 1; b = -0.05; % Initializations: timestep = 0.005; endtime = 1.5; time_data = []; theta_data = []; pos_data = []; vel_data = []; 如您所见,我在此处创建了一个包含我的数据的空矩阵。 Matlab告诉我,我应该预先定义它们的大小以提高性能,但是在此过程的前几个迭代中,我对此表示满意。 由于这是一个非线性微分方程,因此要通过连续应用运动学方程的离散方法进行解析并不容易,但通过数字方法进行数值求解也很不错。 for index = 0:timestep:endtime % Nu
2022-10-30 17:37:22 517KB 系统开源
1
DQN实现matlab强化学习,解决倒立摆问题
2022-10-28 16:17:05 1KB pendulum SIMULINK MATLAB实现DQN DQN
1
普通的 DQN 算法通常会导致对值的过高估计,通过神经网络估算的Q值本身在某些时候会产生正向或负向的误差,在 DQN 的更新方式下神经网络会将正向误差累积。对于动作空间较大的任务,DQN 中的过高估计问题会非常严重,造成 DQN 无法有效工作的后果。 为了解决这一问题,Double DQN 算法提出利用两个独立训练的神经网络估算值函数,将训练网络作为 Double DQN 算法中的第一套神经网络来选取动作,将目标网络作为第二套神经网络计算值,极大的缓解了DQN过估计的问题。 这个程序完整实现了DoubleDQN算法,并且在Pendulum-v0环境上验证了过估计问题,可以从实验结果中看出,DoubleDQN确实缓解了DQN的过估计问题。
2022-07-14 12:08:28 11KB 强化学习 过估计 DQN DoubleDQN
1
pid控制器设计代码matlab 可靠的倒立摆控制 在这里,作为一个交流项目的一部分,在MATLAB中创建并仿真了许多控制器,例如PID,模糊逻辑和鲁棒控制器以及模糊逻辑控制器。要运行仿真,请首先提取zip文件的所有组件,以查看zip文件的仿真。 PID控制器,查看PID.m代码并在MATLAB中运行以查看控制器的输出。要查看模糊逻辑控制器的仿真,请打开Fuzzy_controller.slx simulink模型,并在simulink中运行仿真以查看控制器的稳定状态。摆锤的角度非常接近垂直方向。 要查看鲁棒模糊逻辑控制器的仿真,请打开Robust_Fuzzy_controller.slx simulink模型,并在simulink中运行仿真,以查看控制器以非常接近垂直方向的角度稳定摆锤。 创建了一份报告,其中详细提到了这些仿真的设计方式,并比较了每个控制器的性能。
2022-06-26 21:18:01 1.08MB 系统开源
1
matlab中微多普勒代码处理摆运动的IMU 说明和运行方式 这是一个处理MetaMotionR IMU传感器数据的Matlab库,该代码用于读取和处理来自IMU的测得的线性加速度和四元数。 运行main.m文件以显示预处理以及与测得的摆运动相对应的无漂移速度和位移。 您可以在两个csv文件上测试此代码。 这些文件包含记录的四元数和摆实验的线性加速度。 只需运行main.m文件,系统将提示您两次选择csv文件。 第一次,您应该选择一个包含线性加速度数据的数据。 第二次,选择包含四元数数据的数据。 文件说明 该项目具有以下文件: :这是要运行的主要文件。 :此文件具有旨在裁剪时间序列数据的MATLAB函数。 :此文件具有标准化旋转加速度的功能。 :此文件具有可以调用的绘图功能。 进行此功能是为了减少代码的使用范围。 :此文件具有preprocess()函数,该函数读取原始线性加速度和四元数数据。 通过使用从四元数计算出的欧拉角,它将线性加速度旋转到参考系。 :该文件负责消除速度的漂移和从旋转的线性加速度计算出的位移。 此文件中实现的算法是this和this可用的算法的修改版本。 上述链接
2022-06-23 23:27:54 193KB 系统开源
1
四轴机构动力学Matlab代码该项目于 2013 年完成,作为康奈尔大学机械工程中级动力学课程的最终项目。 该代码包括使用三种不同方法获得必要方程的三重摆和四杆连杆的模拟(在 Matlab 中)。 还包括一个四摆、一个五连杆机构和一个我命名为“灯串”的系统,它是五连杆机构和铰接在五连杆机构未固定铰链处的单摆的组合. 在所有模拟中,摩擦力都被忽略了,并且杆是无限细的,质量在它们的整个长度上均匀分布。 在某些模拟中,您可以在水平方向上添加外部的、恒定的、非保守的力。 总共有 9 种不同的模拟。 除了一个之外的所有程序都可以使用 runner.m 运行。 打开此文件并取消注释第 15、18、22、26、30、34、37 或 41 行之一以运行模拟。 要运行最后一个模拟“灯串”,请打开并运行“runner_lights.m” 要比较三重摆或“分支摆”的不同推导方法,请打开并运行“lagrange_vs_AMB_vs_DAEs.m”。 所有这些的初始条件都可以在文件的顶部设置。
2022-06-18 07:46:32 7.97MB 系统开源
1
单摆 的matlab代码 - 现代控制理论实验课 matlab倒立摆仿真代码和动画演示 使用matlab的倒立摆建模和仿真设计 使用了状态反馈控制器设计闭环反馈控制系统 实现了动画演示 文档说明:(中文字符显示有些问题,后期更改,系统的simulink搭建很简单,这里没有给出) 系统分析文件夹 A .m 输入为加速度的情况下的开环系统.m文件 F .m输入为力 开环系统的m文件 State_FeedBack_controller.m 输入为加速度的闭环系统的m文件 动画演示文件夹 sys.m 生成整个控制系统的s函数 pendan.m显示动画的s函数 dh.mdl 最终的动画倒立摆simulink的搭建
2022-05-13 16:45:13 19KB 系统开源
1
离散控制Matlab代码MPC起重机的例子 这是在MPC控制上的Matlab实现,对起重机模型具有硬约束和软约束。 Crane是在Simulink模型中建模的。 安装 该代码已在Matlab,2015和2017a中进行了测试。 在matlab 2017a中,必须注释掉mpqpsolverOptions.m中的hString2Char函数,以使Simulink模型得以编译。 mpqpsolverOptions.m中的第42行。 用法 克隆此存储库 git clone git@github.com:Olofforsberg/RHC-and-MPC-on-a-pendulum-crane-example..git 将此文件夹添加到matlab中的路径并运行文件:testMyRHC.m,用于运行起重机的RHC控制器。 用于运行扩展的MPC控制器的testMyMPC.m,有两个用于硬约束或软约束的simulink模型。 代码结构 摆锤上ODE方程的参数存储在SSmodelParams.mat中。起重机的simulink模型具有存储在Params_Simscape.mat文件中的参数。 离散状态空
2022-03-17 09:55:20 5.63MB 系统开源
1