




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、摘 要摘摘 要要:本自由摆的平板控制系统采用 STC12C5A60S2 单片机作为主控系统,L298N 作为电机驱动模块,STC12C5A60S2 单片机通过 L298N 驱动模块驱 PK545-NAC-C29 步进机,使步进机上的平板随着摆杆的摆动而旋转。硬件局部主要包括 STC12C5A60S2 单片机最小系统,L298N 电机驱动电路,N1000060 倾角传感器,电源模块等。本设计主要运用 STC12C5A60S2 单片机控制 4 相 6 线步进电机,由单片机产生脉冲信号精确控制步进机的转速和角度,使步进电机上的平板能够随着摆杆摆动而保持水平平衡。关键词关键词:STC 单片机;L298
2、N 电机驱动芯片;传感器目 录摘摘 要要.1目目 录录.I1设计任务与要求设计任务与要求.1设计任务 .1设计要求 .12方案比拟与论证方案比拟与论证.2主控器的选择与论证 .2电机的选择与论证 .2驱动模块的选择与论证 .33系统硬件设计系统硬件设计.3总体电路框图 .3单元电路设计 .4整体电路图 .74系统软件设计系统软件设计.7总体软件框图 .7各模块软件设计 .8总程序 .105系统调试与测试系统调试与测试.10测试仪器 .10测试指标 .10测试结果分析 .116设计总结设计总结.11参考文献参考文献.11附录附录.12附录 A:电路图.12附录 B:电路板图.13附录 C:元器件
3、清单.13附录 D:总程序.14设计题目设计题目1设计任务与要求设计任务与要求1.1 设计任务1、设计并制作一个自由摆上的平板系统,其结构如图 1-1 所示。摆杆的一端通过转轴固定在一支架上,另一端固定安装一台电机,平板固在电机转轴上;当摆杆如图 1-2 所示摆动时,驱动电机可以控制平板转动。图 1-1 图 1-21.2 设计要求1、控制电机使平板可以随着摆杆的摆动而旋转35 周 ,摆杆摆一个周期,平板旋转一周360 ,偏差绝对值不大于 45。2、在平板上粘贴一张画有一组间距为 1cm 平行线的打印纸。用手推动摆杆至一个角度 在 3045 间 ,调整平板角度,在平板中心稳定放置一枚 1 元硬币
4、人民币 ;启动后放开摆杆让其自由摆动。在摆杆摆动过程中,要求控制平板状态,使硬币在 5 个摆动周期中不从平板上滑落,并尽量少滑离平板的中心位置。3、用手推动摆杆至一个角度 在 4560 间 ,调整平板角度,在平板中心稳定叠放 8 枚 1 元硬币,见图 1-2;启动后放开摆杆让其自由摆动。在摆杆摆动过程中,要求控制平板状态使硬币在摆杆的 5 个摆动周期中不从平板上滑落,并保持叠放状态。根据平板上非保持叠放状态及滑落的硬币数计算成绩。2方案比拟与论证方案比拟与论证2.1 主控器的选择与论证方案一:采用 STC12C5A60S2方案二:采用 STC89C52方案三:采用 AT89C52方案论证:方案
5、一,STC12C5A60S2 芯片价格廉价,应用范围广,功能强大,高速运转,低功耗,强抗静电,强抗干扰,内部集成双串口、8 路 10bitADC 和两路八位 PWM;方案二,STC89C52 芯片价格廉价,应用范围广,运转速度慢,抗静电抗干扰弱,内部无 ADC;方案三,AT89C52 芯片价格廉价,应用范围广,运转速度慢,抗静电抗干扰弱,内部无 ADC。鉴于设计要求,故采用方案一。2.2 电机的选择与论证方案一:采用步进电机方案二:采用直流电机方案三:舵机方案论证:方案一,步进电机价格廉价,容易控制,旋转角度于脉冲成正比,每步的旋转角度精确度高,不会将一步的误差积累到下一步,且具有优秀的起停和
6、反转响应;方案二,直流电机价格低,调速范围广,易于平滑调节,过载、起动、制动转矩大,难于控制转轴的角度和转速;方案三,舵机价格偏高,性能易受电压影响,控制旋转的角度精确度不高。鉴于设计要求,故采用方案一。2.3 驱动模块的选择与论证方案一:采用 L298N 芯片方案二:采用 ULN2803 芯片方案三:采用三极管方案论证:方案一,L298N 芯片价格廉价,电路设计简单,驱动电流大,足以驱动大功率的步进电机;方案二,ULN2803 芯片价格廉价,电路设计简单,驱动电流小,不能驱动大功率的步进电机;方案三,三极管价格廉价,驱动电路设计复杂,不稳定,出问题难于查询。本设计采用 PK545-NAC-C
7、29 步进电机,故采用方案一。3系统硬件设计系统硬件设计3.1 总体电路框图为了使系统能够实现各种复杂的控制功能,本设计采用一种功能强大的、高速低功耗性价比高的单片机 STC12C5A60S2 完成对其他局部控制。本设计采用N1000060 倾角传感器对摆杆的倾斜角度的采集数据,通过 STC12C5A60S2 单片机内部自带的 A/D 转换将数据送给单片机,单片机通过数据分析控制 L298N 驱动电路,使步进机旋转保持平板的水平平衡,用 1602 液晶显示 A/D 的数据。总体框图如图 3-1 所示。电 源单片机驱动模块步进机液 晶 显 示传感器AD模块图 3-1 总体框图3.2 单元电路设计
8、1、STC12C5A60S2 单片机最小系统STC12C5A60S2 单片机最小系统 P11 口、P12 口、P13、P14 口接 L298 驱动电流的输入口,单片机通过对 L298N 的控制,使 L298 发出脉冲控制步进机;P23 口、P24 口、P25 口接 1602 液晶,控制液晶显示 A/D 采集 N1000060 倾角传感器的数据,A/D 转换是用 STC12C5A60S2 内部自带的 A/D。单片机最小系统如图 3-2、3-3 所示。图 3-2 最小系统图 3-3 串口局部2、L298N 电机驱动L298N 是一种二相四相步电机的专用驱动器,内含两个 H-Bridge 的高电压、
9、大电流双桥式驱动器,接收标准;OUT1、OUT2、OUT3、OUT4 之间分别接两个步进机;INPUT1、INPUT2、INPUT3、INPUT4 接单片机 I/O,接收输入控制电位来控制电机旋转。L298N 驱动电路如图 3-4 所示。图 3-4 L298N 驱动3、供电电源供电电源采用集成稳压器 7805,电路图中,稳压器 7805 输入端的电容为输入端滤波电容,输出端的电容为输出端滤波电容;家用电 220V 经过变压器接入供电电源模块,能输出直流电压-12V、-5V、5V、12V。供电电源如图 3-5 所示。图 3-5 供电电源3.3 整体电路图见附录 A4系统软件设计系统软件设计4.1
10、 总体软件框图 1、总体软件框图如图 4-1 所示。 图 4-1 总体软件框图初始化读倾角传感器电压A/D 转换单片机处理读到的 A/D 数据控制驱动电机转动平板是否水平否结束是4.2 各模块软件设计1、步进电机右转函数void l_turn(uint i)/步进电机右转函数AA;delay_ms(i);AB;delay_ms(i);BB;delay_ms(i);BC;delay_ms(i);CC;delay_ms(i);CD;delay_ms(i);DD;delay_ms(i);DA;delay_ms(i);2、步进电机左转函数void r_turn(uint i)/步进电机左转函数DA;d
11、elay_ms(i);DD;delay_ms(i);CD;delay_ms(i);CC;delay_ms(i);BC;delay_ms(i);BB;delay_ms(i);AB;delay_ms(i);AA;delay_ms(i);3、STC12C5A60S2 内部 AD BYTE get_ad0()/AD 读取传感器 1 的值ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch0|ADC_START;_nop_();_nop_();_nop_(); _nop_(); while(!(ADC_CONTR&ADC_FLAG);return ADC_RES;BYTE get
12、_ad5()/AD 读取传感器 2 的值ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch5|ADC_START;_nop_();_nop_();_nop_(); _nop_(); while(!(ADC_CONTR&ADC_FLAG);return ADC_RES;4.3 总程序 见附录 D5系统调试与测试系统调试与测试5.1 测试仪器1、数字万用表2、量角器 5.2 测试指标当 N100060 倾角传感器与水平方向有角度时,N100060 倾角传感器会产生一个一压,STC12C5A60S2 单片机通过内部自带 AD 转换采集 N100060 反应的电压值。每个电压
13、值对应一个角度,通过量角器测出角度,列出表格。如表格 5-1所示。表 5-1 角度-90-60-45-30030456090AD 值512倾角传感器5.3 测试结果分析从表格 5-1 可得:倾角传感器与水平方向平行时,输出电压是 2.5V;向左右与水平方向倾斜 90 度时,其电压的变化量为 2V。由此可得误差允许范围内倾角传感器与水平方向的角度 a 与倾角传感器的电压变化量 v 的数学关系为:v=a(1/45)本设计采用 4 相 6 线 PK545-NAC-C29 步进电机,4 相 8 拍运行方式 A-AB-B-BC-C-CD-D-DA-A,对应一个脉冲信号,步距角为 =360 度/50*8=
14、0.9 度俗称半步 。本设计把 N100060 倾角传感器固定在步进电机上,与水平方向平行,当摆杆有一个角度时,STC12C5A60S2 单片机内部自带 AD 读取 N1000060 倾角传感器电压值,就能精确控制步进电机的转动角度,使步进电机上的平板保持平衡。如:当 STC12C5A60S2 单片机内部自带 AD 读取 N1000060 倾角传感器电压值为3.5V 时,其 N1000060 倾角传感器电压变化量为 v=1V,通过上式计算得N100060 倾角传感器与水平方向的角度 a 为 45 度,从而就能控制步进电机旋转45 度,使步进电机上的平板保持平衡。6设计总结设计总结经过四天三夜的
15、辛勤努力,本设计实现了题目的全部要求。但由于时间紧,任务重,系统还存在许多可以改良的地方,比方电路布局、抗干扰性等方面还有很大的提升空间,经过改良,相信性能还会有进一步的提升。在软件编程方面,成功的通过软件编程消除了步进电机的抖动问题,采用的方法是:通过 A/D 转换采集倾角传感器的数据,10 个数据一组,然后取平均值。本次竞赛极大的锻炼了我们各方面的能力,虽然我们遇到了很多困难和障碍,但总体上成功与挫折交替,困难与希望并存,我们将继续努力争取更大的进步。参考文献参考文献1毛礼锐,沈灌群.中国教育通史M.济南:山东教育出版社,1988.20-22.2王英杰,高益民.高等教育的国际化J.清华大学
16、教育研究,20002:13-16.3中华人民共和国国务院.计算机软件保护条例J/0L.东方网附录附录附录 A:电路图附录 A-1附录 A-2附录 B:电路板图附录 B-1附录 C:元器件清单电阻6 个瓷片电容12 个电解电容4 个键盘6 个单片机1 个开关2 个L298N1 个稳压 78051 个稳压 78121 个N10000602 个步进电机1 个MS2321 个串口1 个电位器1 个整流桥1 个变压器1 个发光二极管4 个二极管8 个 附录 D:总程序#include #include#define uint unsigned int#define uchar unsigned char
17、typedef unsigned char BYTE;typedef unsigned int WORD;sfr ADC_CONTR=0 xBC;sfr ADC_RES=0 xBD;sfr ADC_RESL=0 xBE;sfr ADC_LOW2=0 xBE;sfr P1ASF=0 x9D;#define ADC_POWER 0 x80#defineADC_FLAG 0 x10#defineADC_START 0 x08#defineADC_SPEEDLL 0 x00#defineADC_SPEEDL 0 x20#defineADC_SPEEDH 0 x40#defineADC_SPEEDHH
18、0 x60sbit en=P25;/使能sbit rs=P23;/数据命令sbit rw=P24;/读写/定义步进电机连接端口sbit A1=P11;/转三周sbit B1=P12;/转四周sbit C1=P13;/转五周sbit D1=P14;/来回摆动/定义要用到按键的管脚sbit k1=P34;sbit k2=P35;sbit k3=P36;sbit k4=P37;/定义全局变量uint su=20;/8 最大uint j=0;uint jian_zhi=0;uint temp1=0;uchar shu=0,1,2,3,4,5,6,7,8,9,-,:, ;uint i=6;uint ch
19、ong1=0;uint su1=20;/8 最大uint su2=20;uint m=0;uint ad=0;uint ad0=0;uint j1=0;uint j2=0;uint ad5=0;BYTE ch0=0; /模拟通道选择BYTE ch5=5;uint er_flag=0;/使用 1-2 相驱动#define AA A1=1;B1=0;C1=0;D1=0;#define BB A1=0;B1=1;C1=0;D1=0;#define CC A1=0;B1=0;C1=1;D1=0;#define DD A1=0;B1=0;C1=0;D1=1;#define AB A1=1;B1=1;C1
20、=0;D1=0;#define BC A1=0;B1=1;C1=1;D1=0;#define CD A1=0;B1=0;C1=1;D1=1;#define DA A1=1;B1=0;C1=0;D1=1;/函数声明void delay_ms(uint x);void r_turn(uint i);void l_turn(uint i);void delay(WORD n)WORD x;while(n-)x=110;while(x-);void delay_ms(uint x)/延时函数uint y,z;for(y=x;y0;y-)for(z=130;z0;z-);void l_turn(uint
21、 i)/步进电机右转函数AA;delay_ms(i);AB;delay_ms(i);BB;delay_ms(i);BC;delay_ms(i);CC;delay_ms(i);CD;delay_ms(i);DD;delay_ms(i);DA;delay_ms(i);void r_turn(uint i)/步进电机左转函数DA;delay_ms(i);DD;delay_ms(i);CD;delay_ms(i);CC;delay_ms(i);BC;delay_ms(i);BB;delay_ms(i);AB;delay_ms(i);AA;delay_ms(i);void l_dan()switch(m
22、)case 0:AA;m+;break;case 1:AB;m+;break;case 2:BB;m+;break;case 3:BC;m+;break;case 4:CC;m+;break;case 5:CD;m+;break;case 6:DD;m+;break;case 7:DA;m+;break;case 8:m=0;break;default :break;void r_dan()switch(m)case 0:DA;m+;break;case 1:DD;m+;break;case 2:CD;m+;break;case 3:CC;m+;break;case 4:BC;m+;break
23、;case 5:BB;m+;break;case 6:AB;m+;break;case 7:AA;m+;break;case 8:m=0;break;default :break;void ting_zhi()A1=0;B1=0;C1=0;D1=0;/LCD1602 初始化void write_com(uchar com)rs=0;P0=com;delay(1);en=1;delay(1);en=0;void write_data(uchar datae)rs=1;P0=datae;delay(5);en=1;delay(5);en=0;void display_shu(uchar hang,
24、uchar add,uchar num)/在 1602 显示数据的函数,hang 为第几行,add 为位置,num 为数据uchar shi;shi=num;if(hang=1)write_com(0 x80+add);write_data(0 x30+shi);if(hang=2)write_com(0 x80+0 x40+add);write_data(0 x30+num);void init_LCD()/初始化en=0;rw=0;write_com(0 x38);/显示模式控制write_com(0 x0c);/显示开关及光标控制write_com(0 x06);/数据指针设置write
25、_com(0 x01);/清零write_com(0 x80);void InitADC()P1ASF=0 x21;/输入通道选择与 CH 相配合使用,选择 P12ADC_RES=0; /转化的数据存储所在,高八位ADC_CONTR=ADC_POWER|ADC_SPEEDLL; /内部 AD 主要的控制存放器 ADC_CONTR,选择 P12;delay(100);BYTE get_ad0()/AD 读取传感器 1 的值ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch0|ADC_START;_nop_();_nop_();_nop_(); _nop_(); while(!(ADC_CONTR&ADC_FLAG);return ADC_RES;BYTE get_ad5()/AD 读取传感器 2 的值ADC_CONTR=ADC_POWER|ADC_SPEEDLL|ch5|ADC_START;_nop_();_nop_();_nop_(); _nop_(); while(!(ADC_CONTR&ADC_FLAG);return ADC_RES;void keyscan()if(k1=0)delay(5);if(k1=0)while(!k1);display_shu(1,1,1);su=32;j=150;while(j-)r_turn(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 盂县2025年三下数学期末复习检测试题含解析
- 大学端午节活动策划方案
- 春节活动主题策划
- 村务员考试试题及答案
- 教师答辩考试试题及答案
- 计算机二级c语言考试试题及答案
- 中专考试试题及答案
- 疫苗法考试试题及答案
- 公务员专业测试题及答案
- 高考中职考试试题及答案
- 如何进行医疗垃圾的安全运输
- 公共停车场建设项目可行性研究报告
- 保安服务标准及工作流程
- 2024年中考数学几何模型归纳(全国通用):18 全等与相似模型之十字模型(学生版)
- 外科疾病分级目录
- 国家级教学成果的培育提炼与申报
- 海南师范大学《高等数学》2020-2021期末试卷B
- 2023年09月黑龙江省大兴安岭地区“黑龙江人才周”校园引才活动引进90名人员笔试历年难易错点考题荟萃附带答案详解
- 直播佣金直播合同带货
- 点凸焊操作工艺规程
- 跳频通信系统课件
评论
0/150
提交评论