- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于fpga的步进电机控制
《集成电路课程设计》报告
基于FPGA的三组电机旋转控制设计
目 录
一、原理与系统设计 3
1.1 功能要求 3
1.2 设计工具及测试软硬件介绍 3
1.3 电机的控制原理 4
1.3.1 电机及驱动芯片介绍 4
1.3.2 电机控制原理 5
二、模块设计 6
2.1 数据输入模块 6
2.2 字符型液晶屏显示控制模块 8
2.2.1 字符型液晶显示屏1602介绍 8
2.2.2 FPGA的控制原理 10
2.3电机控制模块 12
2.3.1电机控制模块引脚说明 12
2.3.2 电机控制模块状态转换图 13
2.4外围电路设计与制作 14
2.4.1逻辑表达式 14
2.4.2电路连接原理图 15
三、功能实现及综合后整体电路图 16
四、modelsim仿真结果与分析 18
五、心得体会 19
一、原理与系统设计
1.1 功能要求
使用verilog HDL语言编程实现对三个电动机转角进行控制,并将转过角度用显示设备显示出来,要求所输入的数据有两种形式,第一种为外界设备输入转过的角度,另一种由FPGA自己产生一个随机角度。
其过程如下图1所示。
图1
1.2 设计工具及测试软硬件介绍
本次设计使用ISE9.1实现编程,使用modelsim6.2进行仿真测试,使用Red cyclone RCII-SP3S400开发板进行硬件测试及功能实现。
1.3 电机的控制原理
1.3.1 电机及驱动芯片介绍
如下图2所示,本次设计使用MP28GA(左)步进电机。以ULN2003APG(右)作为驱动步进电机必须加驱动才可以运转,驱动必须为脉冲信号,没有脉冲的时候,步进电机静止,如果加入适当的脉冲信号,就会以一定的角度(称为步角)转动。转动的速度和脉冲的频率成正比。
图2 驱动芯片与电机实物连接图
1.3.1.1 MP28GA步进电机特点如下:
该步进电机步进角为 5.625度一圈360度需要64个脉冲完成具有瞬间启动和急速停止的优越特性。改变脉冲的顺序,可以方便的改变转动的方向。最大转速约0.33r/s具体参数如:MP28GA的步进电机相关参数
电压 DC.V 电阻(25°C) Ω 步距角 ° 减速比 牵入转矩 mN.m 自定位转矩 mN.m 5 50 5.625/64 1/64 ≥40 ≥34.3 空载牵入频率Hz 空载牵出频率Hz 绝缘电阻DC.500V 绝缘介电强度AC.600V.1mA.1S 温升K 噪音dB(A) ≥500 ≥900 ≥50MΩ 无击穿或飞弧 <40 <40 ULN2003APG的驱动芯片驱动原理图如所示:
图3 LUN2003驱动原理图
uln2003主要用于驱动步进电机工作,因为步进电机的工作电压高电流大,FPGA是不能直接提供这么高的功率的,所以要用uln2003来提供。即为实现功率放大的作用。
1.3.2 电机控制原理
步进电机相励磁的励磁顺序如下表所示:接线端 导线 ? ? 分 配 顺 序 ? ? 序号 颜色 1 2 3 4 5 6 7 8 5 红 5V 5V 5V 5V 5V 5V 4(pin4) 橙 ?0 ?0 ?0 ?0 ?0 1 3(pin3) 黄 ??0 ?0 ?0 ?0 2(pin2) 粉 ??0 ?0 1 1 1 ?0 ?0 1(pin1) 蓝 ??0 ?0 ?0 ?0 1 1 1 红线接+5V的电源线,剩下pin1至pin4为信号线,步进电机每转过一格即5.625度需要8拍完成,分别为上表中所示的8个分配顺序。即pin1至pin4:依次给信号0001-0011-0010-0110-0100-1100-1000-1001,则步进电机转过一格(5.625度),如果需要转过多格,则只需要重复给这8拍信号。如果需要反转则只需要倒着给脉冲信号,即pin1至pin4:依次给信号1001-1000-1100-0100-0110-0010-0011-0001即可倒转一格(-5.625度)。
二、模块设计
2.1 数据输入模块
数据输入模块RTL级如图4所示:
图4 输入模块RTL视图
数据输入使用两个拨码开关及四个按钮开关做为输入,拨码开关对就图4中的hl_sel和in_allow两个信号线,四个按钮开关分别对应sw3,sw2,sw1和sw0。拨码开关实现工作模式选择,按钮实现数据输入,输入方式如表3所示。数据输出采用14位输出(图4中的data_out[13:0]),其输出各位所代表意义如图5所示,默认输出全为零,按钮按下代表对应位输入1,不按则代表输入为0。
表3
拨码开关
{hl_sel,in_allow} 按钮开关
sw[3:0] 所处工作模式
00 Dat
您可能关注的文档
最近下载
- 虾米曲线一体化防堵清堵振动煤斗改造方案2017.10.doc
- 电梯维修指引手册(日立MCA、HGP).pdf
- 牛津译林版八年级下册英语期末复习:全册Unit 1-Unit 8语法知识点提纲(实用,必备!).docx VIP
- 2025届高考散文专题之理解词义、句义.pptx
- 标准参照测验的设计与编制案例.ppt
- 《十万个为什么》-读书分享课件.pptx VIP
- 虾米曲线防堵清堵煤斗运行维护手册.pdf
- 最新人教版小学四年级数学下册期中考试题及答案(三套).pptx VIP
- 04水平四 七年级 武术18课时大单元计划+《健身长拳》.doc VIP
- 统编版语文六年级下册【全册】单元知识点复习课件.pptx VIP
文档评论(0)