精华内容
下载资源
问答
  • 原理图,PCB,代码
  • 直流电机角度位置控制详解(附源码)

    千次阅读 多人点赞 2020-04-13 14:24:52
    电机角度控制简单分为两层,内层电机速度环,外层电机角度环。 首先获取编码盘脉冲值,进行处理,得到实时反馈转速,然后通过PID控制器,形成速度内环。 对编码盘脉冲值处理(处理过程附链接),电机会获得绝对...

    电机角度位置控制,指的是使电机转动特定所需角度。

    常用于驱动齿轮组,涡轮蜗杆,丝杆滑块等执行机构。电机需带有编码盘反馈。

     

    电机角度控制简单分为两层,内层电机速度环,外层电机角度环。

    首先获取编码盘脉冲值,进行处理,得到实时反馈转速,然后通过PID控制器,形成速度内环。

    https://blog.csdn.net/qq_40696002/article/details/103759101

    对编码盘脉冲值处理,电机会获得绝对角度反馈。

    void Motor_Angle_Cal(unsigned short int motor_num,float T)
    {
    	float  res1, res2;
    	static float pos[MOTOR_MAX], pos_old[MOTOR_MAX];
    	
    	pos[motor_num] =MOTOR_FEEDBACK[motor_num].real_angle;
    	motor.ANGLE[motor_num].eer=pos[motor_num] - pos_old[motor_num];
    	
    	if(motor.ANGLE[motor_num].eer>0) 	
    	{
    		res1=motor.ANGLE[motor_num].eer-T;//反转,自减周期T(我取360)
    		res2=motor.ANGLE[motor_num].eer;
    	}
    	else
    	{
    		res1=motor.ANGLE[motor_num].eer+T;//正转,自加周期T
    		res2=motor.ANGLE[motor_num].eer;
    	}
    	
    	if(ABS(res1)<ABS(res2)) //不管正反转,肯定是转的角度小的那个是真的
    	{
    		motor.ANGLE[motor_num].eer_eer = res1;
    	}
    	else
    	{
    		motor.ANGLE[motor_num].eer_eer = res2;
    	}
    	
    	motor.ANGLE[motor_num].POS_ABS += motor.ANGLE[motor_num].eer_eer;
    	pos_old[motor_num]  = pos[motor_num];
    }
    

    用手顺时针拨动三圈,电机会获得反馈+1080度,然后通过PID控制器,至此,角度环形成。

    过程分析,当前绝对角度反馈为 motor_angle[moto_num].pos_abs,目标位置角度motor_angle[moto_num].pos_goal输入角度环pid计算。
    角度环pid的输出pid.motor_pos[moto_num].out做为速度环的输入,

    与速度反馈 abs_err[moto_num]做差,通过速度环pid输出给电机pwm占空比或can信号,驱动电机。

    经过微小震荡(超过位置会反转),最终电机稳定停止在目标位置,此时系统稳定。

    宏观现象来看,电机连接的齿轮转动给定圈数,达成控制目标。

    void Motor_Auto_Run(void)
    {
    	unsigned short int moto_num;
            float abs_err[MOTOR_MAX];
    	static float abs_err_old[MOTOR_MAX];
    	for (moto_num=0;moto_num<=1;moto_num++)
    	{
    	    Motor_Angle_Cal(moto_num,360);	
    	    PID_Cal_Limt(&pid.motor_pos[moto_num],  motor_angle[moto_num].pos_abs,motor_angle[moto_num].pos_goal);
    		
    	    abs_err[moto_num] = motor_angle[moto_num].pos_abs - abs_err_old[moto_num];
    		
    	    PID_Cal_Limt(&pid.motor_speed[moto_num],  abs_err[moto_num],pid.motor_pos[moto_num].out);
    		
    	    abs_err_old[moto_num] = motor_angle[moto_num].pos_abs;
    	}
    		
            PWM_OUT_Control(pid.motor_speed[MOTOR1].out,pid.motor_speed[MOTOR2].out);
    
    }

    先随便写点,有空接着弄,知乎是同人。

    展开全文
  • 用C编写的STC单片机控制直流电机角度,完全验证并在产品上使用
  • 无刷直流电机角度、速度闭环控制

    千次阅读 2021-01-24 11:09:44
    如上图所示,为无刷直流电机利用电机旋转角度和转速双闭环构成的一个双闭环控制系统。下边为图中controller部分的具体结构 如上图所示,输入为电机的旋转角度thetam和经过ASR(速度环)处理后的转速信号pulse,输出...

    如上图所示,为无刷直流电机利用电机旋转角度和转速双闭环构成的一个双闭环控制系统。下边为图中controller部分的具体结构

    如上图所示,输入为电机的旋转角度thetam和经过ASR(速度环)处理后的脉冲信号pulse,输出gate信号控制逆变器的开通与关断过程。图中输入的基准转速为5000rpm。

    下图为具体的转速环ASR结构。

    下边为具体的反电动势三相信号,为标准的梯形波。 

    展开全文
  • 1 2005 ,27( 1) :23~25 电气传动自动化 ELECTRIC DRIVE AUTOMATION 2005年 第 27 卷第 1 期 第 23 页 基于 MATLAB 的无刷直流电动机控制系统仿真 叶振锋 , 雷淮刚 (上海大学 , 上海 200072) 摘要:在分析了无刷直流...

    文章编号 :1005 —7277(2005) 01 —0023 —03 Vol. 27, No. 1 2005 ,27( 1) :23~25 电气传动自动化 ELECTRIC DRIVE AUTOMATION 2005年 第 27 卷第 1 期 第 23 页 基于 MATLAB 的无刷直流电动机控制系统仿真 叶振锋 , 雷淮刚 (上海大学 , 上海 200072) 摘要:在分析了无刷直流电动机 (BLDCM) 数学模型的基础上 ,用 MATLAB 建立了无刷直流电动机控制系统的仿真模型 ,对系统进行了仿真和分析 ,给出了仿真结果 ,验证了数学模型的有效性及控制系统设计的合理性。关键词 : 无刷直流电动机 ; 仿真 ; 数学模型 ; 控制系统 中图分类号 : TM921. 5 文献标示码 : A Simulation of BLDCM control system based on MATLAB YE Zhen-feng , LEI Huai-gang ( Shanghai University , Shanghai 200072 , China) Abstract: Basedon mathematical model ofBLDCMcontrol system,the simulative model of systemis build,simulatedandana2lyzed basedon MATLAB. The resultispresentedandproved the mathematical model is validand the control systemis rational. Key words: brushless direct current motor; simulation; mathematical model ; control system 1 引言 无刷直流电动机由于转子采用永磁材料励磁 ,无励磁损耗 ,具有体积小、重量轻、结构简单、维护方便、运行可靠、高效节能易于控制等优点 ,同时 ,无刷直流电动机是利用电子换向器取代了机械电刷和机械换向器 , 因此 , 使无刷直流电动机保留了普通直流电动机优良的机械特性 ,从而在军民各个领域得到了广泛应用。与此同时 ,对无刷直流电动机控制系统的性能也提出了更高的要求。常建立无刷直流电动机控制系统的仿真模型来验算各种控制算法 ,优化整个控制系统 ,可以在短时间内设计出预期效果的控制系统。本文在分析方波驱动无刷直流电动机的数学模型的基础上 , 用 Matlab6. 5下的 PSB、Simulink和 S- FUNC2TION建立无刷直流电动机控制系统的仿真模型 , 并 通过对实例电机的仿真 ,给出了各种仿真波形。从而验证了数学模型的有效性及控制系统的合理性。 2 无刷直流电动机的数学模型 无刷直流电动机是由电力电子开关逆变器、永磁同步电动机和磁极位置检测电路等组成。假定无刷直流电动机工作在二二导通、三相六拍工作方式; 定子绕组为 60°相带整距集中绕组 , Y形连接; 忽略磁路饱和 ,不计涡流和磁滞损耗;转子上没有阻尼绕组 ,永磁体也不起阻尼作用; 不考虑电枢反应 ,气隙磁场分布为梯形波 ,平顶宽为 120°电角度;忽略齿槽效应 , 三相绕组完全对称均匀分布于光滑定子的内 表面。由此可建立无刷直流电动机动态数学模型。 2. 1 电压方程 ua ub uc = Ra 0 0 0 Rb 0 0 0 Rc · ia ib ic + d dt La Lab Lac Lba Lb

    展开全文
  • 无刷直流电机及其控制策略

    千次阅读 2020-09-15 16:04:46
    无刷直流电机无位置传感器控制策略 传统无刷直流电机安装的霍尔传感器增加了电机的体积和成本、可靠性低、抗干扰能力弱。因此提出了无刷直流电机无位置传感器控制策略,解决了传递霍尔传感器的弊端。 1.无刷直流电机...

    2020-09-14

    无刷直流电机及其控制策略(学习笔记)

    传统无刷直流电机安装的霍尔传感器增加了电机的体积和成本、可靠性低、抗干扰能力弱。因此提出了无刷直流电机无位置传感器控制策略,解决了传递霍尔传感器的弊端。

    1.无刷直流电机

    无刷直流电机是指具有串励直流电机起动特性和并励直流电机调速特性的梯形波/方波直流电机。
    基本结构由电机本体、功率驱动电路以及位置传感器组成。无刷直流电机为实现无机械接触式换相,取消了电刷。并将电枢绕组和永磁磁钢分别放在定子和转子侧。为了控制电机转速和转向,无刷直流电机必须具有由转子位置传感器和逆变器(直流电变成交流电)等共同构成的换相装置。
    绕组形式绕组形式的不同将影响电机的反电动势波形。绕组形式主要有:整距集中绕组、整距分布绕组、短距分布绕组等。整距集中绕组能得到较好的梯形反电动势波形,短距绕组有利于削弱转矩波动。
    转子结构表面粘贴式磁极、嵌入式磁极和环形磁极。
    位置传感器电磁式、光电式和磁敏式。Hall传感器为磁敏式位置传感器,集成电路可将Hall传感器的位置信号直接变成数字信号,有利于无刷电机控制。
    无刷直流电机驱动拓扑机构
    1)半桥式。一个周期内每相绕组只有1/3周期通电,转矩波动较大,电机绕组利用率低。
    在这里插入图片描述

    2)全桥式。两两导通方式和三三导通方式。两两导通方式指每一时刻都有两相导通,各项导通顺序和时间由转子位置信号决定。三三导通方式指每一瞬间逆变桥均有三支功率器件同时导通。
    在这里插入图片描述

    3)C-Dump式。一种介于半桥式控制和全桥式控制间的折衷控制方法。
    在这里插入图片描述

    4)H桥式。特点是每个绕组采用一个H桥独立控制,可灵活改变绕组电流的大小和方向,实现电机的四象限控制。为防止同相上、下桥功率器件同时导通造成直通短路,需要对驱动信号惊醒死区延时控制,死区时间要大于功率器件的关断时间。
    在这里插入图片描述

    5)四开关式。图中四开关三箱拓扑结构由两个电容代替六开关三相逆变桥的一组桥路,电机C相绕组接在C1和C2之间,代替两个功率器件,节省成本,但增加控制复杂性。
    在这里插入图片描述无刷直流电机转矩波动抑制根据产生机理,无刷直流电机转矩波动主要分为齿槽转矩波动和换相转矩波动。

    1)齿槽转矩波动抑制:齿槽转矩是由于定转子齿槽的存在,不同位置磁路的磁组存在差异,气隙磁场在空间分布上出现锯齿形波动,进而造成电机反电动势波形产生畸变,引起转矩波动。对电机结构合理优化可有效减小齿槽转矩,抑制齿槽转矩波动的方法有:斜槽/斜极法、磁性槽楔法、减小槽口宽度法、辅助槽/辅助齿法、分数槽法、变极弧宽度和变磁极位置法等。
    2)换相转矩波动抑制:电机运行时,导通时间较长,决定了电机稳态电磁转矩的大小。换相暂态过程复杂,时间短暂,转速和负载越大,换相转矩波动越明显。采用同时开通导通相、关闭关断相的换相方法,只能一定程度上减小转矩波动。基于自抗扰控制技术的换相转矩波动抑制根据无刷直流电机特性及自抗扰控制器(ADRC)设计原则,将电机等效为由两个非线性系统构成的积分串联型对象,设计两个一阶自抗扰控制器,实现对电机的双闭环控制。

    在这里插入图片描述

    2.控制策略

    控制策略主要包括:反电动势法、三次谐波法、反电势积分法、磁链估测法、续流二极管法、智能控制法等。
    1)反电动势法:该方法将检测获得的反电动势过零点信号延迟30°电角度,得到6个离散的转子位置信号,为逻辑开关电路提供正确的换相信息,实现无刷直流电机的无位置传感器控制。
    2)磁链法:通过直接估计磁链以获得转子的位置信息。由测量的电压、电流获得电机磁链。进而由估计得到的电机磁链判断出转子位置。
    3)智能控制法:具有很强的自适应性和自学习能力,用人工神经网络、模糊策略、遗传算法和人工免疫自适应等理论建立电机的电压、电流与转子位置之间的关系。由测量到的电机电压、电流信号映射出转子位置信号或直接获得电机的准确数学模型,因此适用于非线性系统。

    展开全文
  • 该模型模拟用于直流电机驱动的十二脉冲转换器。 Wye 和 Delta 转换器串联连接以获得直流电机的十二个脉冲。 可以为脉冲发生模块调整任何触发角度。 其基本概念是星形和三角形连接电路的电压存在30度角,因此用星形和...
  • 无刷直流电动机及其控制

    千次阅读 2020-06-03 13:16:49
    一、无刷直流电动机的发展历史 1831年,法拉第发现了电磁感应现象,奠定了现代电机的基本理论基础。从19世纪40年代研制成功第一台直流电机。 1955年,美国人Harrison首次提出了用晶体管换相线路代替电机电刷接触的...
  • 运用Keil软件基于stm32f103系列嵌入式芯片编写的程序,用于对直流电机进行PID可调控制
  • 基于STM32F103ZET6的直流有刷电机增量式PID控制例程,详细源代码。
  • 并且关键一步,将反电动势波形选择为梯形波,梯形波才是无刷直流电机,如果正弦波就是永磁同步电机了。因为我们只是需要电机转起来,不需要特地的设置电机参数,看一看就可以啦。 第二步:添加电机参数。因为这里...
  • 直流电机闭环PID控制

    千次阅读 2020-08-10 14:12:20
    原文:... /* USER CODE END WHILE */ /* USER CODE BEGIN 3 */ } /* USER CODE END 3 */ } 此篇是基于直流电机增加编码器实现闭环控制,类似的场景还有闭环步进电机(mechaduino),参见...
  • stm32直流电机控制—PID算法篇

    万次阅读 多人点赞 2020-10-05 00:58:28
    stm32直流电机控制—PID算法篇 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 **加粗样式* 提示:写完文章后,目录可以自动生成,如何生成可...
  • STM32单片机PID闭环精确控制直流电机位置(角度

    千次阅读 多人点赞 2021-01-27 20:02:01
    STM32单片机PID闭环精确控制直流电机位置(角度) 硬件 1、STM32F103VET6开发板 2、树莓派高精度AD/DA拓展板(其实就只用了它的ADS1256芯片) ADS1256基本特性: 1、模拟部分供电5V; 2、SPI数字接口电平:3.3V 3、...
  • 通过前面的文章我们可以知道一个结论,无刷直流电机驱动是需要特定的通电换相,AB/AC/BC/BA/CA/CB->AB。通过这个通电相序可以使得BLDC按照顺时针方向旋转起来。那么我们应该在什么时候换相呢?这一节就梳理一下...
  • 尽管采购成本稍高,需要控制电子装置,但和传统有刷电机相比,无刷直流电机具备一些主要优势:高效、耐磨、长使用寿命、设计紧凑、高功率密度、低噪音,同时提高了可靠性。有效的控制需要高性能的反馈传感器,用于...
  • 无刷直流电动机利用电子开关线路和位置传感器来代替有刷直流电机电刷和换向器,使其同时具有直流电动机和交流电动机的优良特性。无刷直流电机(驱动系统)主要由电动机本体、位置传感器、电子开关线路三部分组成。
  • 直流电机与步进电机

    2020-05-08 22:33:36
    (1)电机:就是电动机,有电能产生动能的一种装置。简称电机 1.0.1分类(不完全分类) (1)交流电机:没有正负, (2)直流电机:永磁 励磁 (3)步进电机(精度不是特别高)、伺服电机(精度高于步进电机):精确控制 1.0.1...
  • 本发明涉及一种无刷直流电机四象限运行的PWM控制方法。背景技术:无刷直流电机具有结构简单,功率密度大和效率高等优点,目前成为最有发展前景的电机之一。在电动汽车领域,无刷直流电机已...由于无刷直流电机电动与...
  • 直流电机控制系统第一部分 课程设计概述1.1 课程设计的目的与任务1.2 课程设计题目1.3 设计功能要求1.4 课程设计的内容与要求1.5 实验仪器设备及器件第二部分 设计方案工作原理2.1 预期实现目标定位2.2 技术方案分析...
  • STM32 电机教程 2 - 直流有刷电机转动控制

    千次阅读 多人点赞 2019-10-27 18:47:03
    有刷电机是大家最早接触的一类电机,中学时物理课堂上介绍电动机也是以它为模型来展示的。有刷电机的主要结构就是定子+转子+电刷,通过旋转磁场获得转动力矩,从而输出动能。电刷与换向器不断接触摩擦,在转动中起...
  • stm32入门——PWM控制直流电机变速

    万次阅读 多人点赞 2018-11-26 19:42:05
    stm32入门——PWM输出控制直流电机变速 最近刚做了智能小车的寻迹实验,实验中用了定时器PWM输出来改变直流电机的转速,我在这里就大致总结一下PWM相关的知识。 什么是PWM? PWM(Pulse Width Modulation)脉冲宽度...
  • 在对无刷直流电机有功功率和无功功率分析的基础上,对比分析直接转矩控制和磁场定向控制,提出一种无刷直流电机的直接功率控制策略和方法。该方法通过对瞬时有功功率、无功功率和磁链角度的计算,得到转矩与磁链之间...
  • 在检测到两者转速不一样时,需要动态调整其中一个或两个轮子的PWM的点空比(简单点的就以一个轮为基准,调整另外一个轮子即可;如果以一个固定的标准的话,需要调整两个轮子的PWM占空比)。
  • Arduino 直流电机转速控制系统

    万次阅读 多人点赞 2017-07-11 19:44:50
    直流电机是Arduino机器人制作中的主要动力来源,但是由于电机的参数一致性有所差别,即使是相同型号的电机在相同电压下的转速都不完全相同,而且在带负载或负载不同的情况下,更加会导致电机转速发生变化,这就会...
  • 主动摆 使用基于Simulink的P控制器对直流电动机供电的摆进行仿真。 可以以99%的精度旋转到任何角度输入。
  • 尽管采购成本稍高,需要控制电子装置,但和传统有刷电机相比,无刷直流电机具备一些主要优势:高效、耐磨、长使用寿命、设计紧凑、高功率密度、低噪音,同时提高了可靠性。有效的控制需要高性能的反馈传感器,用于...
  • 直流电机原理概述

    2021-04-14 23:45:06
    未来的电动车都会用直流电机吗? 0. 电机分类 1. 直流电机 直流电机,就是用直流电驱动的电机,而交流电机则是用交流电来驱动的电机。 从性能来看,直流和交流的主要区别在于对速度的控制上。 直流电机的速度正比于...
  • 锁相环控制是直流电动机控制稳定性较高的一种控制方式. 针对直流电机控制, 提出一种采用FPGA 和锁相环相结合的数字控制技术.
  • 提出了一种基于微控制器Atmega128、CPLD技术和电机驱动芯片HIP4080的直流电机数字控制系统的实现方法。该系统实现对电机角度和速度的高精度控制,并可在PC界面上观察电机状态。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,114
精华内容 1,245
关键字:

直流电机角度控制