大家好,又见面了,我是你们的朋友全栈君。
单片机控制步进电机-线路连接
说明:如何利用单片机去控制步进电机?本案例讲解的内容是硬件连接部分,采用常用的电子器件去实现单片机控制步进电机的功能。后续会分别讲解单片机程序,S曲线生成方法,上位机等相关内容。
硬件清单:
1、单片机最小系统(本案例使用Atmega16芯片)
2、步进电机(二相四线)
3、稳压电源(24V)
4、步进电机驱动器(TB6600)
整体连接图:
原理图:
控制原理:
1、单片机最小系统作用:
①输出脉冲到步进电机驱动器,从而控制步进电机的速度大小
②控制步进电机的使能
③控制步进电机的转动方向
2、步进电机作用:
①提供机械动力
3、稳压电源作用:
①为步进电机提供电源
4、步进电机驱动器作用:
①将单片机脉冲信号转化为步进电机的驱动信号,简化控制过程
硬件连接图:
实物连接图与原理图如上图所示。Atmega16单片机最小系统(其他单片系统接线原理类同)与步进电机驱动器(TB6600)采用共阴极接法(驱动器的ENA-、DIR-、PUL-与单片机的GND连接)。
单片机PA0口控制ENA+,PA0高电位的时,步进电机掉电,步进电机自由状态,用手可以转动;PA0低电位的时,步进电机上电,根据输入的脉冲信号进行转动,无脉冲信号时处于自锁状态;
单片机PA1口控制DIR+,PA1高电位与低点位分别对应步进电机的正转与反转;
单片机PA2口控制PUL+,通过PA2口高低电位的切换形成脉冲,单片机输出一个脉冲(一个高电位加一个低电位即为一个脉冲),步进电机就会走一步。对于二相四线步进电机而言,在驱动器无细分的情况下,单片机一个脉冲对应步进电机一个步距角1.8°;驱动器如果是2细分状态,单片机一个脉冲对应步进电机转动角度为1.8°/2=0.9°;驱动器如果是4细分状态,单片机一个脉冲对应步进电机转动角度为1.8°/4=0.45°;其他细分依次类推。TB6600驱动器上的SW1、SW2、SW3三个拨码开关控制细分数(1细分、2细分、4细分、8细分、16细分、32细分),细分数越大,步进电机转动过程中越平稳。通过脉冲的快慢可以控制步进电机的速度,一般分为三个过程:开始加速、然后匀速、最后减速,后续会单独讲解控制程序部分。
步进电机的A、B相分别接在驱动器A、B相。在不知道步进电机那两根线是一相的时候,有个简单的判断方法:将步进电机的任意两更线接在一起,用手转动步进电机,如果有较大的阻力说明这两根线对应的是一相。
稳压电源输入端接交流220V,输出端正负极(本案例采用的是24V步进电机)分别接在驱动器VCC、GND即可。
至此硬件电路连接完成,下篇将讲解单片机程序。https://blog.csdn.net/LuDanTongXue/article/details/87869806
(微信/QQ:pph846375164)
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/138305.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...