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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于单片机的机械臂控制系统设计与制作.docx

1、基于单片机的机械臂控制系统设计与制作目 录课程设计题目及要求第一章 绪论 1.1 设计题目及要求 1.2 设计内容第二章 硬件设计 2.1 硬件结构图 2.2 各模块工作原理及设计 2.2.1 控制模块 2.2.2 显示模块 2.2.3 按键模块 2.2.4 舵机模块 2.3 软件程序设计第3章 硬件制作以及程序的下载调试 3.1 电路板的制作 3.2 元器件的焊接 3.3 程序的下载与调试第四章 总结 4.1 课程设计体会 4.2 奇瑞参观感受课程设计题目及要求 题目: 基于单片机的机械臂控制系统设计与制作 实习内容:1,完成基于单片机的机械臂控制系统原理图和PCB的绘制,在 基本要求的基础

2、上自己可以作一定的扩展;2,利用热转印纸、三氯化铁腐蚀液等完成PCB板的制作;3,完成相应电路的焊接和调试; 4,完成相应软件程序的编写;5,完成软、硬件的联调; 6,交付实习报告。 实习要求:1,两人一组,自由搭配,但要遵循能力强弱搭配、男女搭配、考研和不考研的搭配; 2,充分发挥主观能动性,遇到问题尽量自己解决,在基本要求基础上可自由发挥; 3,第一次制作电路,电路不可追求复杂; 4,注意安全!熨斗、烙铁。第一章 绪 论 单片机自20世纪70年代问世以来,以其极高的性价比,受到人们的重视和关注,应用广泛,发展迅速。单片机集体积小、重量轻、抗干扰能力强、环境要求低、价格低廉、可靠性高、灵活性

3、好、开发较为容易等众多优点,以广泛用于工业自动化控制、自动检测、智能仪器仪表、家用电器、电力电子、机电一体化设备等各个方面,无论在民间、商业、及军事领域单片机都发挥着十分重要的作用二十一世纪,随着机械化、自动化水平的不断提高,不仅减轻了劳动强度、提高生产率,而且把人类活动从危险、恶劣环境中替换出来。而其中机器人技术,显示出极大的优越性;在宇宙探索、海洋开发以及军事应用上具有重要的实用价值。大力发展机器人技术,一方面能让社会从劳动苦力型转换到福利休闲型,另一方面能极大的提高民众的幸福感。在新时期的世界各国,随着应用日益广泛,机器人技术将不断发展并走向成熟。本次课程设以单片机作为控制器实现对机械手

4、臂的简单控制。在单片机最小系统的基础上扩展按键接口和舵机接口以及LED显示器,构成最简单的机械臂控制系统。 第二章 硬件设计2.1 硬件结构图 本系统的控制器采用的是STC 12C5A32S2单片机,具有A/D转换功能,并能产生PWM信号,有内部EEPROM、双串口,具有单时钟/机器周期(1T),是高速、低功耗、超强抗干扰的新一代8051单片机,指令代码不仅完全兼容传统8051,而且速度快8-12倍。 本系统是在单片机最小系统的基础上扩展键盘接口和舵机接口以及LED显示模块。硬件结构图如下: 图1 硬件结构2.2 各模块工作原理及设计 2.2.1 控制模块 本系统的控制模块选用STC 12C5

5、A32S2单片机 引脚及功能:STC12C5A32S2单片机引脚图 P0.0P0.7(3932引脚):P0口是一个漏极开路型准双向I/O口。在访问外部存储器时,它是分时多路转换的地址(低8位)和数据总线,在访问期间激活了内部的上拉电阻。在EPROM编程时,它接收指令字节,而在验证程序时,则输出指令字节。验证时,必须外接上拉电阻。 P1.0P1.7(1-8):P1口是带内部上拉电阻的8位双向I/O口。在EPROM编程和程序验证时,它接收低8位地址。 P2.0P2.7(21-28):P2口是一个带内部上拉电阻的8位双向I/O口。在访问外部存储器时,它送出高8位地址。在对EFROM编程和程序验证期间

6、,它接收高8位地址。 P3.0P3.7(10-17):P3口是一个带内部上拉电阻的8位双向I/O口。 STC12C5A60S2/AD/PWM系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制、强干扰场合。 本次设计基本原理是通过P3口的6个引脚输出周期固定占空比可调的PWM波形来控制舵机的转动及角度,通过按键实现对舵机角度的控制,从而实现对物品的转移。通过P0口输出数据以及P2口高四位的

7、扫描实现数码管的显示。通过P1口以及P2低四位引脚连接按键,控制舵机转动。2.2.2 舵机模块舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。目前在航模,包括飞机模型、潜艇模型,遥控机器人中已经使用得比较普遍。舵机是一种俗称,其实是一种伺服马达。 一般来讲,舵机主要由以下几个部分组成:舵盘、减速齿轮组、位置反馈电位计5k、直流电机、控制电路板等。 工作原理:控制电路板接受来自信号线的控制信号,控制电机转动,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板

8、,进行反馈,然后控制电路板根据所在位置决定电机的转动方向和速度,从而达到目标停止。 标准的舵机有3条导线,分别是:电源线、地线、控制线,如图2所示。电源和地线给舵机提供最基本的能源保证,主要是电机的转动消耗。 舵机的控制信号为周期是20ms的脉宽调制(PWM)信号,其中脉冲宽度从0.5ms-2.5ms,相对应舵盘的位置为0180度,呈线性变化。也就是说,给它提供一定的脉宽,它的输出轴就会保持在一个相对应的角度上,无论外界转矩怎样改变,直到给它提供一个另外宽度的脉冲信号,它才会改变输出角度到新的对应的位置上。程序实现上可通过定时器来实现 舵机的转速取决于信号脉宽的变化速度。如果信号脉宽变化速度太

9、较快的话,舵机会反应不过来;将脉宽变化值线性到要求的时间内,一点一点的增加脉宽值,就可以控制舵机的速度了。具体来说需要在调试时修改数值,以使舵机的运动更平滑。由于舵机在每一次脉宽值改变的时候总会有一个转速由零增加再减速为零的过程,所以舵机会产生像步进电机一样运动的原因。 由于本设计中选用的舵机所需电源与单片机电源不一致故要单独供电,地线应接在一起。同时因为舵机所需的驱动电流比较大,因此P3输出口需接上拉电阻。2.2.3 显示模块由于LED显示器集易控制、性能很稳定、耗能少、成本低等众多优点故本设计采用LED显示器。 本次设计,选用四联LED显示器,采用动态扫描方式,分别显示所按键位和转动角度。

10、LED的每段需接一个限流电阻再接至P0口,显示电路如下图所示。这样,就完成的扩展模块的LED显示功能,可以很清晰的观察到对应的舵机转动的角度。LED显示电路2.2.4 按键模块 本系统采用独立按键查询工作方式,通过12个(6组)按键控制舵机的转动,即通过P2口低四位和P1口控制六个自由度的舵机正反转动。由于系统比较简单,且接口充足,所以采用独立按键即可。 当有按键按下时,可控制不同的舵机转动,其中两个按键控制一个舵机,分别控制舵机的正向转动和反向转动。转动的度数可以通过按键时间的长短控制,最大的转动角度为180度。2.3 软件程序设计 由于使用汇编程序编程能对单片机内部结构及运行原理有深一步了

11、解,同时有程序占用存储空间小等优点,故本实验采用汇编语言 汇编语言的特点: 目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。汇编语言基本保留了机器语言的灵活性。使用汇编语言能面向机器并较好地发挥机器的特性,得到质量较高的程序。 汇编语言程序称为源程序,运行时汇编程序要将源程序翻译成目标程序。目标程序是机器语言程序,当它被安置在内存的预定位置上,就能被计算机的CPU处理和执行。 汇编程序如下:ORG 0000HLJMP MAINORG 000BHLJMP T0INTORG 001BHLJMP T1INTORG 1000HMEDL EQU 4EHMEDH EQU 4FHWAVE EQU

12、 33HDGL EQU 30HDGH EQU 31HFLAG EQU 32HRANG_S EQU 2FH.1RANG_X EQU 2FH.2FLAG_X EQU 2FH.0DIS_DAT EQU 55HLED_DUAN EQU P0NUM_JI EQU 58H NUM_DAT EQU 37H NUM_FLAG EQU 3EHMAIN: MOV TMOD,#11H MOV TH0,#0B1H MOV TL0,#0F7H SETB ET1 SETB ET0 SETB EA SETB TR0 MOV MEDH,#0FAH MOV MEDL,#3AH MOV SP,#60H MOV WAVE,#0EF

13、H MOV FLAG,#0 CLR RANG_S CLR RANG_X CLR FLAG_X MOV NUM_FLAG,#0 MOV DGL,#40H MOV DGH,#41H MOV 41H,#0FAH MOV 40H,#3AH MOV 43H,#0FAH MOV 42H,#3AH MOV 45H,#0FAH MOV 44H,#3AH MOV 47H,#0FAH MOV 46H,#3AH MOV 49H,#0FAH MOV 48H,#3AH MOV 4BH,#0FAH MOV 4AH,#3AH MOV 38H,#0 MOV 39H,#0 MOV 3AH,#0 MOV 3BH,#0 MOV 3

14、CH,#0 MOV 3DH,#0 MOV 55H,#0 MOV 56H,#0 MOV 57H,#16 MOV 58H,#0 START: LCALL PADCES LCALL DISPLAY JMP STARTDISPLAY: SETB P2.4 CLR P2.5 CLR P2.6 CLR P2.7 MOV A,#3 LCALL DUANXIAN CLR P2.4 SETB P2.5 CLR P2.6 CLR P2.7 MOV A,#2 LCALL DUANXIAN CLR P2.4 CLR P2.5 SETB P2.6 CLR P2.7 MOV A,#1 LCALL DUANXIAN CLR

15、 P2.4 CLR P2.5 CLR P2.6 SETB P2.7 MOV A,#0 LCALL DUANXIAN RETDUANXIAN: ADD A,#DIS_DAT MOV R0,A MOV A,R0 MOV DPTR,#TAB_duan MOVC A,A+DPTR MOV LED_DUAN,A MOV R5,#0FFH MOV R6,#3DO: DJNZ R5,$ MOV R5,#0FFH DJNZ R6,DO RETTAB_duan:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8HDB 80H,90H,88H,83H,0C6H,0A1H,86H,8EH,

16、0BFH,0FFHPADCES: MOV P1,#0FFH MOV A,P2 ANL A,#0F0H ORL A,#0FH MOV P2,A MOV A,P1 CPL A JZ NEXTC JMP DNDNNEXTC: MOV A,P2 CPL A ANL A,#0FH JZ NN JMP DNDNNN: LJMP BAN DNDN: MOV R6,#10 DO1: MOV R5,#0FFH DJNZ R5,$ DJNZ R6,DO1PD: MOV A,P1 CPL A JZ NEXTP CJNE A,#1,PAN1 MOV FLAG,#1 JMP PDNPAN1: CJNE A,#2H,PA

17、N2 MOV FLAG,#2 JMP PDNPAN2: CJNE A,#4H,PAN3 MOV FLAG,#3 JMP PDNPAN3: CJNE A,#8H,PAN4 MOV FLAG,#4 JMP PDNPAN4: CJNE A,#10H,PAN5 MOV FLAG,#5 JMP PDN PAN5: CJNE A,#20H,PAN6 MOV FLAG,#6 JMP PDNPAN6: CJNE A,#40H,PAN7 MOV FLAG,#7 JMP PDNPAN7: CJNE A,#80H,PDN MOV FLAG,#8 JMP PDNNEXTP: MOV A,P2 CPL A ANL A,

18、#0FH JZ BAND JMP KED BAND:LJMP BANKED: MOV A,P2 CPL A ANL A,#0FH CJNE A,#1,PAN11 MOV FLAG,#9 JMP PDNPAN11: CJNE A,#2,PAN12 MOV FLAG,#10 JMP PDNPAN12:CJNE A,#4,PAN13 MOV FLAG,#11 JMP PDNPAN13:CJNE A,#8,PDN MOV FLAG,#12 JMP PDNPDN: LCALL DATCES CES: MOV A,FLAG MOV B,#2 CLR C DIV AB MOV A,B JZ JIA SETB

19、 FLAG_X JMP DNJIA: CLR FLAG_XDN: LCALL CHESHI JB FLAG_X,C1 JB RANG_S,JIN CLR RANG_X MOV R0,DGL MOV R1,DGH MOV A,R0 CLR C ADD A,#01H JMP C2C1: JB RANG_X,JIN CLR RANG_S MOV R0,DGL MOV R1,DGH MOV A,R0 CLR C SUBB A,#01HC2: MOV R0,A JNC JIN MOV A,R1 JB FLAG_X,C11 INC A MOV R1,A JMP JINC11: DEC A MOV R1,A

20、 JIN: LCALL NUMCES MOV A,P2 ANL A,#0F0H ORL A,#0FH MOV P2,A MOV A,P1 CPL A JZ NEXTCA JMP DNDYNEXTCA:MOV A,P2 CPL A ANL A,#0FH JZ BANDNDY: MOV R6,#5DY1: MOV R5,#0FFH DJNZ R5,$ DJNZ R6,DY1 LCALL DISPLAY LJMP PD BAN:RET CHESHI: CLR C MOV A,56H MOV B,#10 MUL AB ADD A,55H MOV R3,A MOV A,57H CJNE A,#17,FU

21、SHI MOV A,R3 CLR C SUBB A,#90 JC CHESHID SETB RANG_S CLR RANG_X JMP CHESHID FUSHI: MOV A,57H CJNE A,#16,CHESHID MOV A,R3 CLR C SUBB A,#90 JC CHESHID SETB RANG_X CLR RANG_S JMP CHESHID CHESHID:RETNUMCES: MOV R0,DGL MOV R1,DGH MOV A,R0 MOV R5,A MOV A,R1 MOV R4,A CLR C MOV A,MEDL SUBB A,R5 JC JIEWEI MO

22、V R5,A CLR C MOV A,MEDH SUBB A,R4 MOV R4,A JMP JIANDJIEWEI: MOV R5,A INC R4 CLR C MOV A,MEDH SUBB A,R4 MOV R4,AJIAND: MOV A,R4 ANL A,#80H JNZ FUSHUO MOV R7,#0BH LCALL DIVOK MOV A,R3 MOV B,#10 DIV AB MOV 55H,B MOV 56H,A MOV 57H,#16 JMP NUMEND FUSHUO: MOV A,R5 CPL A CLR C INC A MOV R5,A JC JIA1 MOV A,

23、R4 CPL A MOV R4,A JMP JDF JIA1: MOV A,R4 CPL A INC A MOV R4,AJDF: MOV R7,#0BH LCALL DIVOK MOV A,R3 MOV B,#10 DIV AB MOV 55H,B MOV 56H,A MOV 57H,#17 JMP NUMEND NUMEND:RETDATCES: MOV R3,FLAG MOV A,R3 CLR C SUBB A,#3 JNC E1 MOV WAVE,#0F8H MOV DGL,#40H MOV DGH,#41H MOV NUM_JI,#1 MOV NUM_DAT,#38H JMP EN

24、E1: MOV A,R3 CLR C SUBB A,#5 JNC E2 MOV WAVE,#0F4H MOV DGL,#42H MOV DGH,#43H MOV NUM_JI,#2 MOV NUM_DAT,#39H JMP ENE2: MOV A,R3 CLR C SUBB A,#7 JNC E3 MOV WAVE,#0ECH MOV DGL,#44H MOV DGH,#45H MOV NUM_JI,#3 MOV NUM_DAT,#3AH JMP ENE3: MOV A,R3 CLR C SUBB A,#9 JNC E4 MOV WAVE,#0DCH MOV DGL,#46H MOV DGH,

25、#47H MOV NUM_JI,#4 MOV NUM_DAT,#3BH JMP ENE4: MOV A,R3 CLR C SUBB A,#11 JNC E5 MOV WAVE,#0BCH MOV DGL,#48H MOV DGH,#49H MOV NUM_JI,#5 MOV NUM_DAT,#3CH JMP ENE5: MOV WAVE,#7CH MOV DGL,#4AH MOV DGH,#4BH MOV NUM_JI,#6 MOV NUM_DAT,#3DHEN: RET CLR RS1 SETB RS0 ORL P3,#0FCH SETB TR1 CLR TR0 MOV TH0,#0B1H

26、MOV TL0,#0F7H MOV R0,DGL MOV R1,DGH MOV TH1,R1 MOV TL1,R0 SETB TR0 CLR RS1 CLR RS0RETIT1INT: PUSH ACC MOV A,P3 ANL A,#03H ORL A,WAVE MOV P3,A CLR TR1 POP ACCRETI DIVOK: CLR C MOV A,R4 SUBB A,R7 JC DV50 SETB OV RET DV50: MOV R6,#8 DV51: MOV A,R5 RLC A MOV R5,A MOV A,R4 RLC A MOV R4,A MOV F0,C CLR C S

27、UBB A,R7 ANL C,/F0 JC DV52 MOV R4,A DV52: CPL C MOV A,R3 RLC A MOV R3,A DJNZ R6,DV51 MOV A,R4 ADD A,R4 JC DV53 SUBB A,R7 JC DV54 DV53: INC R3 DV54: CLR OV RET END第3章 硬件制作以及程序的下载调试3.1 电路板制作首先用protel 99 SE绘制原理图,生成PCB并手工调整布局,之后手工布线。布线时,要设置电气规则,设置安全距离,对电源线、地线加粗;同时要尽量加大焊盘;尽可能地避免跳线(PCB图如下所示)。PCB完成后打印在热转印纸

28、上,覆铜板先用砂纸打磨去除上面防氧化胶水,将热转印纸紧贴在板子上,并用熨斗熨几分钟,之后在自来水冲洗下揭去热转印纸,待板子风干,观察上面的油墨线路是否有缺损,若有可用油墨笔将缺损处瞄一下即可。待油墨风干后放在三氯化铁腐蚀液里腐蚀十分钟左右,腐蚀时要不断晃动腐蚀液加快腐蚀速度,直到板上面未覆油墨的铜全部腐蚀完,取出板子放在自来水中冲洗干净,风干后就可以钻孔了,待孔钻完,将板子放在自来水中用砂纸打磨去覆铜上的油墨,到此板子就制作完成了。3.2 原器件的焊接 PCB制作完毕后紧接着就可以焊接电子原器件,为了焊接方便应先焊接小元件,比如电阻、按键、贴片电容排阻,之后焊接插槽以及其他元件,最后焊接LED显示器。焊接完毕后的电路板如下所示:3.3 程序的下载与调试软件的烧录需要Keil软件、下载器以及USB驱动等,选择相应的单片机型号,打开相应的hex文件,就可以进行程序的下载了。软、硬件调试都无误之后,就可以连接舵机进行最后的检测了。通过不同的按键控制不同的舵机转动,同时数码管可以显示出转动度数。一个完整的机械臂控制系统就完成了。第四章 总 结 4.1 课程设计体会通过此次生产实习对电路板的腐蚀制作方法有了基本的掌握,对单片机控制机械臂系统的工作原理以及编程思想有了深刻的理解。在具体的设计与制作过程中对Protel 99 SE、单片机及外

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

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