我想控制无刷直流电机 最大转速6000r 然后有三个霍尔 你说他转速那么快 检测霍尔的单片机有那么快的反映速

度吗 单片机pic16f877a 12mhz晶振

你好
一楼的回答相当好,特别是具体实施的数据计算。我这里有点小小的不同,即6000转的周期为10ms,加3路霍尔检测,就是说最高检测周期为10/3=3.33ms,只要单片机响应小于3.33ms就可以实现。3ms对于单片机可以做很多事情。至于你说的只有一个中断不是问题,首先你要把这个作为一个系统工程来考虑,(这里只考虑信号采集实现方法)。
方案1:3只霍尔并联一端接地,输出端(当然要根据实际情况组合)通过电阻上拉进单片机中断。软件(计数)除以3,就是转速;也可不用中断,配合软件作为前景程序进行不间断扫描,背景程序调速,背景程序的执行时间不得大于3.33ms。这是最简单的方案。
方案2:如果端口富裕可以3个霍尔通过或门运算申请中断,再转向端口检测,进行计数(算)。这个方案最好,配合软件可在线(运行中)检测霍尔及电机的状态(是否故障)。
方案3:通过门电路把3个霍尔合理搭接,再通过分频进单片机,这个方案回旋度大,兼容性好,缺点是低速时会降低精度。
方案4:把脉冲信号转换为电压信号(模拟),再通过单片机内部或外部AD转换为数据进行运算,从而达到目的。这个方案不推荐,只在极限条件下使用。
其他需要考虑的:
1.霍尔元件的个数已确定,每周期的检测点有几个,如果是两个及以上的话,上面数据要重新计算,或合理取舍霍尔元件的个数。(我汽车的轮胎是一个霍尔,大概30多个检测点)
2.电机启停,或调速时的加减速时间,要符合这个电机的特性即硬性指标。
3.根据使用场合(要求),合理设置回差控制,即设定4000转的时候,转速在3950-4050都在正常范围不用调速,否则你的电机将一直在加速-减速-加速-减速的运行,无稳定状态,极大的不利于电机及调速电路。电机只有在及其特定的条件下才能1转不变的运行。
要想达到较为理想的效果,建议使用DSP芯片,作为控制核心,这样可以大大简化软件的负担,把软件的工作交给硬件来完成。同时DSP芯片的工作速度高,按你的情况,该电机工作在10000以上都不是问题。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-13
6000rpm = 100rps,如果是2极电机,则霍尔信号的频率为100Hz,周期为10mS;即使要检测精度达到5%,也就是0.5mS,再考虑到有3路信号,实际要求0.17mS,使用单片机的外部中断接口很容易检测了。追问

问题是 就一个外部中断 有三个霍尔信号

追答

那就没有什么好办法了。

本回答被提问者和网友采纳
第2个回答  2020-04-14
凡事别想得太复杂,无刷电机加装霍尔目的是让电机低速起动吋能通霍尔停留每一个力角,输出根据霍尔提供的信号实行追随,是(追随)不能与伺服电机相堤并论,伺服电机中的偏码器就如你所说,须要检测了。
第3个回答  2012-10-10
那就别用霍尔了,例如航模用的无刷电机与电调追问

可是那个电机本身就有霍尔啊 航模用的无刷电机与电调?

第4个回答  2024-01-16

无刷直流电机(BLDC)的转速检测通常依赖于霍尔传感器。对于6000r/min的转速,意味着每分钟转6000圈,每秒钟转100圈。单片机Pic16f877a(以下简称为单片机)对霍尔信号的响应速度,主要取决于以下几个方面:

    晶振频率:单片机的晶振频率是12MHz,意味着单片机每秒执行12MHz / 10^6 = 120万次指令。这个速度对于检测霍尔信号是足够的。

    定时器捕获功能:Pic16f877a单片机具有多个定时器,其中一些定时器具有捕获功能,可以用来检测外部信号(如霍尔信号)。通过配置定时器的捕获引脚,可以在每次霍尔信号变化时触发中断。

    中断处理速度:单片机的中断处理速度是一个关键因素。Pic16f877a是一个较新的单片机,它的中断处理速度很快,可以满足对霍尔信号的实时检测。

为了实现无刷直流电机的控制,还需要考虑以下几个方面:

    驱动电路:无刷直流电机需要使用合适的驱动电路来控制电流,从而控制电机的转速和方向。常用的驱动电路包括H桥电路和三相半桥电路等。

    电流检测:为了实现精确的控制,需要检测电机的电流。常用的电流检测方法包括使用电流传感器和电阻器等。

    位置检测:为了实现电机的换相,需要检测电机的位置。常用的位置检测方法包括使用光电编码器和霍尔传感器等。