首页 > 其他分享 >m基于SVPWM控制器的三轴直交机械臂轨迹控制simulink仿真

m基于SVPWM控制器的三轴直交机械臂轨迹控制simulink仿真

时间:2023-06-08 15:12:47浏览次数:43  
标签:case simulink sizes SVPWM 三轴 sys 变换 驱动 机械

1.算法仿真效果

matlab2022a仿真结果如下:

 

 

 

 

 

 

2.算法涉及理论知识概要

      对于PMSM,使用MATLAB内部自带的模型进行建模,在simulink中选择Permanent Magnet Synchronous Machine,如图3.1所示。

 

 

 

        永磁同步电机模型PMSM如图1 所示,可以通过双击组件设定同步电机的各个参数,如磁极数Pn,定子电阻Rs,定子电感L等等。

 

       SVPWM模块负责将矢量控制系统输出的控制量Uα、Uβ转换为用于控制IGBT逆变器的PWM形式的门极信号。如图2所示,本文设计的SVPWM模块仿真模型由五部分组成,分别是电压矢量所在扇区的计算、中间参数X、Y、Z的计算、相邻基本电压矢量作用时间T1和T2的计算、三相逆变器开关时刻Ta、Tb、Tc的计算和PWM波形的产生。

 

 

 

        这里SVPMW的五个主要模块均使用S-function在simulink中构建。

 

    本系统用到的坐标变换模块由2部分组成:其一为A-B-C坐标系下电流ia、ib、ic到α-β坐标系下电流iα、iβ的变换,即Clarke变换;其二为iα、iβ到id、iq的变换,即Park变换。具体的变化公式已经在本文的第二章中作了详细的叙述,构建后的模型如下图所示:Park变换如下所示(Park变换是从 坐标系到dq坐标系的变化过程):

 

 

 

Clarke变换如下所示(这里Clarke变换是从A-B-C坐标系到 坐标系的变化过程):

 

 

 

 Simulink模块中的fcn模块就是上面公式中的将矩阵展开后得到的数学计算公式。

 

        机械手臂是机械人技术领域中得到最广泛实际应用的自动化机械装置,在工业制造、医学治疗、娱乐服务、军事、半导体制造以及太空探索等领域都能见到它的身影。机械手臂主要由执行机构、驱动机构和控制系统三大部分组成。

 

        手部是用来抓持工件(或工具)的部件,根据被抓持物件的形状、尺寸、重量、材料和作业要求而有多种结构形式,如夹持型、托持型和吸附型等。运动机构,使手部完成各种转动(摆动)、移动或复合运动来实现规定的动作,改变被抓持物件的位置和姿势。

 

        运动机构的升降、伸缩、旋转等独立运动方式,称为机械手的自由度。为了抓取空间中任意位置和方位的物体,需有6个自由度。

 

       自由度是机械手臂设计的关键参数。自由度越多,机械手臂的灵活性越大,通用性越广,其结构也越复杂。一般专用机械手有2~3个自由度。

 

      机械手臂所用的驱动机构主要有4种:液压驱动、气压驱动、电气驱动和机械驱动。其中以液压驱动、气压驱动用得最多。

 

        控制系统是通过对机械手每个自由度的电机的控制,来完成特定动作。同时接收传感器反馈的信息,形成稳定的闭环控制。

 

        控制系统的核心通常是由单片机或dsp等微控制芯片构成,通过对其编程实现所要功能。

 

  1. MATLAB核心程序

 

 

 

function [sys,x0,str,ts] = func_N_calculation(t,x,u,flag)
%A=0;B=0;
%C=0;N=0;
global A B C N;
switch flag,
  case 0,
    [sys,x0,str,ts]=mdlInitializeSizes;
  case 1,
    sys=[];
  case 2,
    sys=[];
  case 3,
    sys=mdlOutputs(t,x,u,A,B,C,N);
  case 4,
    sys=[];
  case 9,
    sys=[];
  otherwise
    error(['Unhandled flag = ',num2str(flag)]);
end
 
 
 
function [sys,x0,str,ts]=mdlInitializeSizes
 
sizes = simsizes;
sizes.NumContStates  = 0;
sizes.NumDiscStates  = 3;
sizes.NumOutputs     = 1;
sizes.NumInputs      = 2;
sizes.DirFeedthrough = 1;
sizes.NumSampleTimes = 1;   % at least one sample time is needed
 
sys = simsizes(sizes);
x0  = [0 0 0];
str = [];
ts  = [0 0];
 
%u(1)=Uafa;u(2)=Ubta
function sys=mdlOutputs(t,x,u,A,B,C,N)
x(1)=u(2);                         %x(1)=Ua
x(2)=1/2*(sqrt(3)*u(1)-u(2));      %x(2)=Ub
x(3)=1/2*(-sqrt(3)*u(1)-u(2));    %x(3)=Uc
 
if (x(1)>0);    %A
   A=1;
else
   A=0; 
end
if (x(2)>0);     %B
   B=1;
else
   B=0; 
end
if (x(3)>0);
   C=1;          %C
else
   C=0; 
end
N=4*C+2*B+A;   %N
sys=N;

  

标签:case,simulink,sizes,SVPWM,三轴,sys,变换,驱动,机械
From: https://www.cnblogs.com/51matlab/p/17466548.html

相关文章

  • simulink求微分方程dx =-5x + u
    一、分析题目,对dx积分才能求出x,可以通过引入积分器,其中积分器的输入是dx,输出就是x二、确定需要的模块,存在-5x,需要一个gain模块,有-5x+u需要一个sum模块,加上一步需要的积分器,此处这里的u用正弦信号,需要一个sinewave,查看信号情况,需要一个scope模块,需要观察两信号的叠加输出,输出一个......
  • 基于arx模型的MPC预测控制器simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下: 2.算法涉及理论知识概要        arx模型是一种重要的时间序列分析模型,能够用来描述实际应用中的许多问题,在经济、电力系统、车辆驾驶、医疗、信号处理等领域都有着广泛的应用。因此,基于arx模型的相关理论和方法受到了大量关......
  • m基于MPC模型预测的网络控制系统simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下: 2.算法涉及理论知识概要       随着通信网络和信息理论的迅速发展,网络控制系统引起了研究人员和工程师的兴趣。众所周知,网络控制系统是一个非常具有挑战性和前景的研究领域。因此,网络控制系统(NCS)实现了传感器,控制器和执行器......
  • m基于simulink的SPWM控制器性能仿真,并分析其谐波,包括park模块和Clark模块
    1.算法仿真效果matlab2022a仿真结果如下:  2.算法涉及理论知识概要       SHEPWM是特定谐波消除脉宽调制,即通过开关时刻的优化选择,产生PWM来消除选定的低次谐波。         MATLAB仿真中的SHEPWM的发波采用S函数编写,S函数是一种用于描述Simulink仿真模块......
  • Matlab中用m代码来控制运行Simulink仿真过程
    ✅作者简介:热爱科研的算法开发者,Python、Matlab项目可交流、沟通、学习。......
  • ★教程3:Simulink学习教程入门50例目录2.MATLAB/Simulink安装
    1.订阅本教程用户可以免费获得本博任意1个(包括所有免费专栏和付费专栏)博文对应代码;2.本Simulink课程的所有案例(部分理论知识点除外)均由博主编写而成,供有兴趣的朋友们自己订阅学习使用。未经本人允许,禁止任何形式的商业用途;3.本课程除了介绍常见的Simulink模块介绍之外,我们更侧......
  • m基于矩阵式变换器的PMSM直接转矩控制simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下:    2.算法涉及理论知识概要        传统的交-直-交变换器由于存在中间储能环节,因而动态响应较慢,输入电流中含有大量的谐波,容易造成对电网的污染,同时也难以实现能量的双向流动等缺点。交-交矩阵式变换器(MatrixConve......
  • m基于矩阵式变换器的PMSM直接转矩控制simulink仿真
    1.算法仿真效果matlab2022a仿真结果如下:2.算法涉及理论知识概要传统的交-直-交变换器由于存在中间储能环节,因而动态响应较慢,输入电流中含有大量的谐波,容易造成对电网的污染,同时也难以实现能量的双向流动等缺点。交-交矩阵式变换器(MatrixConverter,MC)体积小、自身结构简单,具......
  • 无感FOC电机控制代码,算法采用滑膜观测器,SVPWM控制,启动采用Vf,全开源代码,很有参考价值
    无感FOC电机控制代码,算法采用滑膜观测器,SVPWM控制,启动采用Vf,全开源代码,很有参考价值。带原理图,SMO推导,附有相关的文档资料,matlab模型,电机控制资料。ID:858679491419183......
  • simulink二次调频风机储能水轮机水电火电汽轮机二次调频,有随机扰动负荷,可连续波动,可对
    simulink二次调频风机储能水轮机水电火电汽轮机二次调频,有随机扰动负荷,可连续波动,可对频率分频调频,分低频,中频,高频,也可对不同死区的风储同步机进行二次调频,系统示意图和波形如图所示,新品!新品,对之前的模型进行了很多改进,包括数据优化,场景分析,风储协调和频率分段,死区分段优化等ID:84......