基于avr单片机的无刷直流电机控制器设计(编辑修改稿)内容摘要:

H H H3感应出来的信号分别为 101( AB)、100( AC)、 110( BC)、 010( BA)、 011( CA)、 001( CB)然后进行下一轮循环。 当转子处于反转的状态,三个霍尔传感器感应出来的值正好次序相反。 图 无刷直流电机工作原理图 西安工业大学毕业设计 (论文 ) 11 要实现对电机的反转控制,只需要按照以上感应出的霍尔信号反向给出控制信号即可。 控制脉冲的频率决定步进电动机的转速。 脉冲的时间 间隔越短,步进电动机就转得越快。 软件脉冲分配方式的调速,可以通过采用延时或定时程序调整两个控制字之间的时间间隔来实现;硬件脉冲分配方式的调速,可以通过控制步进脉冲的频率来实现。 假设让电机以恒定的加速度加速到指定的转速,之后匀速运行。 当快要到达指定的停止位置时,再以恒定的加速度减速,在停止位置处停住,如图 所示。 其中加速度要根据不同的电机,设定不同的加速度值。 如果它的值太大,则可以较快地到达目的位置,但有可能产生振荡。 如果它的值太小,由于转矩与加减速度成正比,转矩可能过小,产生失步。 因此,在设计时需要 因电机而异。 图 加减速示意图 步进电动机驱动执行机构从 A点到 B点移动时,要经历升速、恒速和减速过程。 如果启动频率超过极限启动频率 ,步进电动机会产生失步,不能正常启动;如果突然停止,会由于惯性发生过冲,造成位置精度降低;升降速过于缓慢,则会影响执行机构的工作效率。 对步进电动机的加减速应在保证不失步和不过冲的前提下,尽快移动到指定位置。 为了满足加减速要求,步进电动机的运行通常按照根据经验和试验得到的加减速曲线进行。 如图 ( a)所示的匀加减速曲线和图 ( b)所示的 S 形(分段 指数曲线)加减速曲线。 图 加减速运行曲线 ( a)匀加减速曲线;( b) S形加减速曲线 西安工业大学毕业设计 (论文 ) 12 加减速实时算法的核心是使用定时中断,当定时器发生超时中断时,中断服务程序推动电机走下一步,然后计算出下一步将要维持的时间,并以之设置定时器下一次的中断时间。 当下一次中断来临时,再推动一步,并设置再下一步的时间,如此循环往复。 如图 所示,步进电机先以加速度 加速,然后以加速度减速到停止,之间没有匀速过程。 从 到 是第一步持续的时间 ,从 到 是第二步持续的时间 ,从 到 是最后一步持续的时间 ;每一步的时间间隔越短,平均加减速度越接近 和。 图 用定时器控制时间 如图 所示,电机某一步的持续时间(即定时器的延时时间) 为 ( ) 式中: 为第 n步时定时器的计数值; f为给定时器提供的时钟源频率。 转速 (单位: )为 ( ) 加速度 (单位: )为 ( ) 式( )假设了每步的平均速度等于中心时间的速度。 如果为加速状态,则 , ;如果为减速状态,则 ,。 电机转过的步数 n 为 西安工业大学毕业设计 (论文 ) 13 ( ) 转过 n步所花的时间 为 ( ) 由图 可知,第 n步的定时器计数值 为 ( ) 由式( )和式( )可得第 0步的计数值 为 ( ) 再由式( )、式( )和式( ),可得第 n 步的定时器计数值 也可表示为 ( ) 由式( )可知,第 0 步的计数值 包含了加速度 的信息,只要把 设定好,后面的实时计算就不用再考虑 了。 但式( )需要开平方,它不适合没有浮点运算功能的处理器,下面再加以变换。 由式( )可得相邻两步的比值为 ( ) 根据泰勒变换可得 ( ) 再由式( )、式( )和式( )代入式( )可近似得到 ( ) 根据泰勒变换可得 ( ) 西安工业大学毕业设计 (论文 ) 14 把式( )的 n换成 i,得 ( ) 由式( )开始,就假设了 大于零,即为加速,所以式( )是加速的递推公式,只要知道前一步的计数值,就可以算出后一步的计数值。 加速过程如图 所示。 可以推断,减速过程是图 的逆过程,如图 所示。 它的第 0步是对应加速过程的第 i 步,最后一步对应加速过程的第 0步。 如果减速过程中要跑 m步,则有 ( ) 图 加速过程 图 减速过程 现在根据式( )和式( )分别列出相邻的两步 c 值之比的确切值与近似值,见表 所示。 这里假设。 西安工业大学毕业设计 (论文 ) 15 表 n 确切的 近似的 近似值误差 1 2 3 4 5 6 10 100 1000 从表 可以看出,除 外,其他比值的误差都很小。 由于每一步的延时时间是由前一步计算出来的,如果 的误差较大,后面每一步的延时误差都增大。 解决办法是把 单独挑出来,使它等于 倍的 ,其他值依然按照式( )递推计算 ( ) 最后,由式( )可推导出步进电机从速度为 0 加速到 s,以及速度从 s减速到 0 所要走的步数为 ( ) 在本例中,加速过程的加速度和加速过程的减速度都为 1000 ,给定时器提供的时钟源频率为 50MHz,根据式( )和式( )可以计算出 和的值,根据式( )就可以导出 的值。 由以上分析可进行编程调试。 由 V1~ V6六只功率管构成的驱动全桥可以控制绕组的通电状态。 按照功率管的通电方式,可以分为两两导通和三三导通两种控制方式。 由于两两导通方 式提供了更大的电磁转矩而被广泛采用。 在两两导通方式下,每一瞬间有两个功率管导通,每隔 1/ 6周期即 60176。 电角度换相一次,每只功率管持续导通 120176。 电角度,对应每相绕组持续导通 120176。 ,在此期间相电流方向保持不变。 为保证产生最大的电磁转矩,通常需要使绕组合成磁场与转子磁场保持垂直。 由于采用换相控制方式,其定子绕组产生的是跳变的磁场,使得该磁场与转子磁场的位置保持在 60176。 ~ 120176。 相对垂直的范围区间。 西安工业大学毕业设计 (论文 ) 16 图 无刷直流电机控制器原理框图 单片机从键盘获得启动信号,根据给定转速信息配置输出 PWM 信号的相关频率和占空比,电机通过霍尔传感器将电机转子的转速和位置信息反馈给单片机,单片机通过 AD 采集模块采集接在杆路上小电阻的电压信息获取电流信号,同时实现过流保护功能,单片机将转速信息和功率信息显示在液晶屏上。 作为系统框架的硬件系统,如果没有软件,那么所设计的控制系统就像 没有灵魂一样,由此可见,软件实现的好坏将对整个系统的运行状态影响是至关重要的。 针对本设计,系统完成机械的自动化改装和硬件设计之后,根据软件编程方法,需要提出软件的设计思路,如图 所示为本系统总体软件的设计思路。 为保证自动控制系统的稳定运行,程序中必须对各个功能模块进行合理的调度,使各个功能模块更加灵活高效地实现各自的控制功能。 本设计中对各个功能模块的编程设计是通过 C 语言实现的,软件设计采用模块化和结构化的编程思想,完成对冲孔打桩机自动控制系统软件功能实现。 本设计系统的总体软件结构图如下图所示。 西安工业大学毕业设计 (论文 ) 17 图 3 无刷直流电机 控制器的硬件设计 18 3 无刷直流电机控制器的硬件设计 微控制器的选择:系统采用 ATmega128 为核心控制芯片。 ATmega128 微控制器是的 8 位单片机, 64 管脚封装。 因其容量大,处理速度快, I/O 口也足够,耐温较 51 单片机要好很多,所以选此芯片。 其最小系统原理图如下图所示。 图 ATmega128 最小系统原理图 两个具有独立的预分频器和比较器功能的 8 位定时器 / 计数器。 两个具有预分频器、比较功能和捕捉功能的 16 位定时器 / 计数器。 具有独立预分频器的实时时钟计数器。 两路 8 位 PWM。 6路分辨率可编程( 1 到 16 位)的 PWM 输出比较调制器。 西安工业大学毕业设计 (论文 ) 19 8路 10 位 ADC,8 个单端通道 ,7 个差分通道 ,2 个具有可编程增益( 1x, 10x, 或 200x)的差分通道。 具有独立片内振荡器的可编程看门狗定时器。 上电复位以及可编程的掉电检测。 片内经过标定的 RC 振荡器。 片内 / 片外中断源。 6种睡眠模式 : 空闲模式、 ADC 噪声抑制模式、省电模式、掉电模式、 Standby 模式以及扩展的 Standby 模式。 可以通过软件进行选择的时钟频率。 编辑本段 I/O 封装。 53 个可编程 I/O – 64 引脚 TQFP 与 64 引脚 MLF 封装。 工作电压: ATmega128L, ATmega128。 速度等级: 0 8 MHz ATmega128L,0 16 MHz ATmega128。 ATmega128TQFP 封装现主要有这些型号: ATmega12816AU、 ATmega12816AI。 ATmega128 各引脚功能如下: Vcc:数字电路的电源 ,GND:地。 端口 A(PA7~PAO):端口 A为双向 I/O 口并具有可编程的内部上拉电阻。 其输出缓冲器具有对称的驱动特性 ,可以输出和吸收大电流。 作为输入使用时 ,若内部上拉电阻使能 ,则端口被外部 电路拉低时将输出电流。 复位发生时端口 A 为三态。 端口 A也可以用作其他不同的特殊功能。 端口 B(PB7~PB0):端口 B 为 8 位双向 I/O 口 ,复位发生时端口 B 为三态。 端口 8 也可以用作其他不同的特殊功能。 端口 C(PC7~PC0):端口 C 为 8 位双向 I/0 口 ,复位发生时端口 C 为三态。 端口 C 也可以用作其他不同的特殊功能。 在 ATmegal03 兼容模式下 ,端口 C只能作为输出 ,而且在复位发生时不是三态。 端口 D(PD7~PD0):端口 D 为 8 位双向 I/0 口 ,复位发生时端口 D 为三态。 端口 D 也可以用作其他不同的特殊功能。 端口 E(PE7~PE0):端口 E 为 8 位双向 I/0 口 ,复位发生时端口 E 为三态。 端口 E 也可以用作其他不同的特殊功能。 端口 F(PFT~PF0):端口 F为 ADC 的模拟输人引脚。 如果不作为 ADC 的模拟输入 .端口 F 可以作为 8位双向 I/0 口并具有可编程的内部上拉电阻。 其输出缓冲器具有对称的驱动特性 ,可以输出和吸收大电流。 作为输入使用时 ,若内部上拉电阻使能 .则端口被外部电路拉低时将输出电流。 复位发生时端口 F 为三态。 如果使能 JTAG 接口 .则复位发生时引脚 PF 7(TDI)、 PF5(TMS)和 PF4(TCK)的上拉电阻使能。 端口 F 也 可以作为 J TAG 接口。 在 ATmegal03 兼容模式下 ,端口 F只能作为输入引脚。 端口 G(PG4~PG0):端口 G为 5位双向 I/O口 ,并具有可编程的内部上拉电阻。 其输出缓冲器具有对称的驱动特性 ,可以输出和吸收大电流。 作为输入使用时 .若内部上拉电阻使能 .则端口被外部电路拉低时将输出电流。 复位发生时端口 G西安工业大学毕业设计 (论文 ) 20 为三态。 端口 G 也可以用作其他不同的特殊功能。 在 ATmegal 03 兼容模式下,端口 G 只能作为外部存储器的锁存信号以及 32kHz 振荡器的输入 ,并且在复位时这些引脚初始化为 PG0= PGl=1 以及 PG2=0。 PG3和 PG4 是振荡器引脚。 RESET:复位输入引脚。 超过最小门限时间的低电平将引起系统复位。 低于。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。