ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:542.91KB ,
资源ID:25735606      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/25735606.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(pic单片机控制直流电机.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

pic单片机控制直流电机.docx

1、pic单片机控制直流电机实用标准文案 1 总体设计框架 . 3 2 硬件电路设计 . 4 2.1 芯片介绍 . 4 2.2 驱动电路 . 9 2.3 按键控制电路 . 10 3 程序编写 . 10 3.1 工作原理 . 10 21程序书写过程3.2 . 参考资料 . 16 精彩文档实用标准文案 直流电机驱动 Abstract 摘 要:本文主要内容是利用PIC18F452单片机来控制直流电机,通过L293NE来驱动电机,通过按键来使其正转,反转。 Keywords 关键词: 直流电机,PWM,L293NE 精彩文档实用标准文案 总体设计框架 1硬件电路利用驱动芯片L293D来驱动直流电机,按键则

2、是单独引出。如图1所示。软件则是C语言编程。 PI驱C直动1流8电电F路机452 图1硬件设计框 精彩文档实用标准文案 2 硬件电路设计 2.1 芯片介绍 首先,总体说明硬件电路设计,如图2 原理图,图3 PCB图以及图4板子的图所示。三个输入信号,如图分别为RD4,RD5,RD6连上光耦的2脚,然后通过光耦的4脚引入L293D的使能引脚(12EN)以及输入引脚(1A,2A),然后L293D的输出引脚(1Y,2Y)通过H-桥型控制电路与直流电机连接。 图2 直流电机控制部分原理图 精彩文档实用标准文案 PCB图图3直流电机控制部分 成品板图4 其中红线圈表示直流电机控制部分。 下面详细介绍各个

3、芯片。PIC18F452 、1外部端口以及内部存储器是相同的。上图的与PIC18F452PIC18F4580 。U2 精彩文档实用标准文案 2、光耦P521 光耦主要的作用是保护单片机。光耦的结构如图5所示。 图5 光耦P521结构 在PCB中(如图6所示),即U7,U9,U10三个光耦,左下方方形孔为1引脚,按逆时针方向,依次为2,3,4引脚。 光耦的1脚通过电阻与电源连接,2脚为输入引脚,3脚与地相连,4脚为输出引脚。经试验测得,则当1脚输入高电平时,4脚也输出高电平。则当1脚输入低电平时,4脚输出低电平。 图6 光耦外形图 精彩文档实用标准文案 3、电阻 一共用到7个大小为470的电阻(

4、分别为R16,R17,R18,R19,R20,R21,R22)和3个大小为1k(分别为R23,R24,R25)。 4、按键 按键电路也就是步进电机驱动实验的电路。在此,再介绍一次。所用按键为标准B3F1000系列,结构图如图7所示。PCB板上SW1,SW2,SW3,SW4,SW5为按键,其中SW1为复位开关,其他的为控制作用的按键。 按键的机理以SW5为例阐述,其他类同。 按键的3引脚一是直接分别与RA1,RA2,RA3,RA4相连二是通过四个470的电阻与电源相连。按键1引脚分别与地相连。 当不按按键的时候,RA4通过R19电阻与+5V电源相连,即此时RA4的输入为高电平,即1。当按键SW5

5、按下时,RA4通过按键的连接与地相连,此时RA4的输入为低电平,即0。通过SW5按键控制RA4的高低电平。程序可监控RA4的状态,来控制电机。发现RA4高电平则正转,发现RA4低电平则反转。 精彩文档实用标准文案 按键图图7 引脚。此按键3板所示,按键右下方方形孔为PCB1引脚,左上方为如 引脚。1与3只用到IN4007 、5结,有阳极和阴极所示),通常它包含一个8PN整流二极管(如图 区P区的载流子是电子。外加使区相对NP两端。区的载流子是空穴,N),称为为正的电压时,能通过大电流,具有低的电压降(典型值0.7V正向导通状态。若加相反的电压,则反向电流很小(反向漏电流),称为 反向阻断状态。

6、整流二极管具有明显的单向导电性。 有白色线圈的为负极。 所示。二极管,组成桥式电路。如图四个 IN40079 精彩文档实用标准文案 8 IN4007 图 桥式电路图9 ,反向截止时无电IN4007在正向导通时,其电压为0.59V经测定, 压。这里的整流二极管主要起保护的作用。当有个过冲信号,如电压过打开,避免高电压冲击直流电机,将其损坏,信号流向电源,D2高,此时打开,避免低电压冲击直流电机。信号此而不是电机。若是电压过低,D4时流向了地。 L293D 6. 精彩文档实用标准文案 L293D采用16引脚DIP封装(如图10所示),其内部集成了双极型H-桥电路。这种双极型脉冲调宽方式具有很多优点

7、,如电流连续;电机可四角限运行;电机停止时有微振电流,起到“动力润滑”作用,消除正反向时的静摩擦死区:低速平稳性好等。L293D通过内部逻辑生成使能信号。H-桥电路的输入量可以用来设置马达转动方向,使能信号可以用于脉宽调整(PWM)。电机需要3个控制信号12EN、1A、2A,其中12EN是使能信号,1A、2A为电机转动方向控制信号,1A、2A分别为1,0时,电机正转,反之,电机反转。选用一路PWM连接12EN引脚,通过调整PWM的占空比可以调整电机的转速。 引脚图图10 L293D 12EN高电平有效,HEAT SINK AND GROUND接地,VCC1与VCC2接电源。1A输入高电平则1Y

8、输出高电平。1A输入低电平则1Y输出低电平。2A2Y,3A3Y,4A4Y关系类同。 2.2驱动电路 光耦1脚通过四个470的电阻分别与电源连接。三个光耦的2脚(DC1, DC2 ,DC3)分别于RD4,RD5,RD6连接。光耦的4脚与电源连接。光耦的3脚分别通过三个1K与驱动芯片L293NE连接。然后驱动芯片L293NE的两个输出引脚引出通过桥式整流电路连上直流电机。如图11所示。 精彩文档实用标准文案 驱动电路图11 按键控制电路2.3 相连二是通过四个,RA4RA3RA1,RA2, 按键的3引脚一是直接分别与 1引脚分别与地相连。470的电阻与电源相连。按键 SW4来使电机反转。 正常状态

9、下,为正转,通过按键 程序编写3工作原理3.1 四个RA3RA2,RA0L293NE来驱动直流电机。,RA1,本次实验主要利用 RD2来使直流电机转动。RD0,RD1,输入信号,通过高低电平控制 ”文件夹。工程文件请参考“DC_MOTOR所示。供电。如图+5V12与原厂电路板的连接:+5V电源由原厂电路板(右下方)连GND+5VGND+5VJ6自制板(左下方)的,分别与原厂电路板, 精彩文档实用标准文案 接。两个电路板的RD4,RD5,RD6分别相连(使能与两个输入信号接入自制板中),同时,RA4也连起来(按键信号接入自制板中)。如图13所示。自制板J2(右上方)的RD4,RD5,RD6分别与

10、原厂电路板的RD PORT(中间靠右一些)的4,5,6连接。自制板J5的RA4(右下方)与原厂电路板的RA PORT4(中间靠右一些)连接。直流电机的两个引脚与J7即DC MOTOR连接。如图14所示。电机的L,R引脚分别与J7的左(即1),右(即2)引脚相连。 输入输出口的连接图12 精彩文档实用标准文案 电源的连接13 图 电机的连接14 图 精彩文档实用标准文案 3.2 程序书写过程 程序如下: #include void delay(unsigned int x); void main() TRISD=0;/定义D端口为输出口 TRISA=0Xff;/定义A端口为输出入口 PORTDb

11、its.RD4=0;/使能位初始化为0 PORTDbits.RD5=0;/电机的左引脚控制信号初始化为0 PORTDbits.RD6=0;/电机的右引脚控制信号初始化为0 while(1) PORTDbits.RD4=1;/使能位设置为1,使能电机,使其工作 if(PORTAbits.RA4=0) delay(10); if(PORTAbits.RA4=0) PORTDbits.RD5=1; PORTDbits.RD6=0; 精彩文档实用标准文案 else PORTDbits.RD5=0; PORTDbits.RD6=1; void delay(unsigned int x) unsigned

12、 int a,b; for(a=x;a0;a-) for(b=54;b0;b-); 该程序主要包括初始化模块,控制模块,以及延时模块。 1、初始化模块 主要是端口初始化。 输入端RA的所有端口设置为高电平即1,为输入状态。RD的所有端口设为低电平即0 ,为输出状态。RD4, RD5, RD6初始化为0,清空状态,以便后面的赋值。程序如下所示: TRISD=0;/定义D端口为输出口 TRISA=0Xff;/定义AD端口为输出入口 PORTDbits.RD4=0;/使能位初始化为0 PORTDbits.RD5=0;/电机的左引脚控制信号初始化为0 PORTDbits.RD6=0;/电机的右引脚控制

13、信号初始化为0 精彩文档实用标准文案 2、控制模块 控制模块主要是扫描键盘的变化,根据相应键盘的变化,来使直流电机转动。如果SW5没有按下,正转。如果SW5按下,则反转。while(1)表示一直循环下去。 程序如下所示: while(1) PORTDbits.RD4=1;/使能位设置为1,使能电机,使其工作 if(PORTAbits.RA4=0) 若 SW5按键按下则反转 delay(10); if(PORTAbits.RA4=0) PORTDbits.RD5=1; PORTDbits.RD6=0; else SW5 按键没有按下则正转 PORTDbits.RD5=0; PORTDbits.R

14、D6=1; 是否有按键按下,有防抖动的作用。如果语句判断if 其中,两个SW5PORTDbits.RD5=1; 也SW5则,PORTAbits.RA4=0实确就下按被则, 精彩文档实用标准文案 PORTDbits.RD6=0;则电机左引脚高电平,右引脚低电平,反转。反之,即没有按键按下,则电机左引脚低电平,右引脚高电平,正转。 3、延时模块 标准的延时程序,通过循环语句来延时。此程序对应4M晶振时,unsigned int x中输入的数字,即为延时的毫秒数。 void delay(unsigned int x) unsigned int a,b; for(a=x;a0;a-) for(b=54;b0;b-); 参考资料 以下是本文中的主要参考资料清单: 1 Muhammad Ali Mazidi,Rolin D.McKinlay,Danny Causey.李中华,张雨浓,陈卓怡等译.PIC技术宝典M北京人民邮电出版社,2008. 2 Myke Predko著.胡光华译.PIC微控制器基础与实践M.北京:科学出版社, 精彩文档

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1