mcs-51单片机与步进电机接口_第1页
mcs-51单片机与步进电机接口_第2页
mcs-51单片机与步进电机接口_第3页
mcs-51单片机与步进电机接口_第4页
mcs-51单片机与步进电机接口_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

9.3 应用举例机械手的微机控制 随着科学技术的进步、工业自动化的进程,机械手将进一步取代简单而笨重的人工操作,逐步把在恶劣环境下工作的人们解放出来,这对于改善人们的工作条件、提高工作效率,具有一定的现实意义。本例系存取邮件机械手的控制,在邮政部门和立体仓库中作自动存职包裹和货物之用。一、工作原理通过键盘,将货位(或包位)代码输入微机,启动存(或取)命令键,机械手即可在微机的控制下,作 X、Y、Z 三个方向的运动,完成存(或取)包操作。控制原理如图所示。系统主要包括微机控制、步进电机控制、机械传动系统、光控音乐电路、工作电源、货架和柜台等七部分组成。微机根据键入的货物代码,产生相应的脉冲信号,经 CH250 脉冲分配器和驱动电路,输出具有一定功率的脉冲,驱动有关电机正转或反转及其步数,从而实现货物的存取。机械手行进中,光控音乐电路驱动蜂呜器发出乐曲,从而增强了工作的节奏、控制的旋律。二、系统组成1、硬件设计如图是机械手微机控制系统硬件电路。本系统选用 MCS-51 系列中的 8031 芯片,扩展了一片 2732,以存放用户程序。由于随机存储的数据不多,只利用片内 RAM。采用两位 LED 显示器和 28 键盘,P35、P36 和 P37 分别输出 X、Y 、和 Z 方向的控制脉冲,P16 和 P1.7 分别用来控制步进电机的正/ 反转和产生复位信号。 2、机械传动部分机械传动部分包括导轨、小车、升降盘和机械手等部分。水平方向位移步进电机 MX 调通过滑轮和传送带,使小车在导轨上运动,实现 X 方向上的位移。垂直方向升降作调方向运动的小车上装有一竖直的六棱金属杆,升降盘套于杆上,杆的顶部装有一定滑轮并配有平衡锤。固定于小车上的步进电机 MY 带动升降盘,实现 Y 方向上的位移机械手动作机械手装升降盘上,如图所示。图中 A 点固定,步进电机 MZ 带动 B 点,改变 A、B间的较小距离,使得机械手移动较大距离。货架货架分三层,每层有 4 个包位,共计 12 个包位。 图中数字为包位编码,编码的个位数表示 X 位置,十位数表示 Y 位置(层数) ,以供计算机查讯、判断之用。本例采用 SB-2A 型步进电机,它工作于三相六拍的工作方式。电机按顺时针方向旋转(即正转)时,各相脉冲顺序为:A=1A=1 ,B=1B=1B ,C=1 C=1C=1 ,A=1电机按逆时针方向旋转(即反转)时,各相脉冲顺序为:A=1A=1 ,C=1 C=1C=1,B=1B=1B=1,A=1 三、程序设计系统软件包括:主程序、取包程序、存包程序、货位判断程序、X、Y 方向运动和机械手动作子程序等。(1)程序流程图限于篇幅,只给出主要流程图。2、脉冲序列的生成程序对于步进电机的控制,实际上是控制步进脉冲的个数和步进脉冲的间隔,而步进电机的间隔又可转化为某基准延时子程序的循环次数。因此,可以很方便地用软件来控制步进电机的运行,达到各种控制目的。2、货位判断程序如图是货位判断程序流程图。功能:根据键入的货位编码判断货位,以确定 X、Y 方向所需要的脉冲数主程序功能:管理键盘和显示以及有关控制。无键按下或执行有关命令后,显示提示符“-”(2)程序清单ORG 0000H AJMP MAINMAIN: MOV SP, #60HSUN: SETB P3.5SETB P3.6SETB P3.7CLR P1.6CLR P1.7MOV R0, #40HMOV A, #12H;字符“-”ML0: MOV R0, A ;的编码INC R0CJNE R0, #42H, ML0SETB P1.7 ;复位信号;键输入/显示/键判断 F6H-特殊数据 R3-键号暂存器ML1: ACALL DIRACALL KEYADD A, 0F6H ;键号+F6 用于数字/ 功能键的判断JC SUN1 ;功能键转移至 SUN1MOV 41H,40H ;数字键号送显示缓冲区MOV R0, 40HMOV R3 , A ANL A, 0FH ;保留低四位MOV R0,AAJMP ML1功能键处理程序(A、B、C 键)SUN1: MOV A, R3 ;CJNE A, 0AH,SUN2AJMP QBCXSUN2: CJNE A, 0BH ,SUN3AJMP CBCXSUN3: CJNE A, 0CH,ML1AJMP SUN 键盘子程序 P1 口-P1.6 正 /反转 P1.7 复位 P3 口- P3.3 P3.4 键盘行输入口 R3-列扫描寄存器 初值 FEH R4-列号计数器 SBUF-发送缓冲器 发送列扫描信号KEY:ACALL KS1 JNZ LK1NI:ACALL DIRAJMP KEYLK1:ACALL DIR ACALL DIRACALL KS1JNZ LK2AJMP NILK2: MOV P1, 00HMOV R3, 0FEHMOV R4, 00HLK4:MOV SBUF,R3 MOV R6, 05H ;延时等待发送DK6: DJNZ R6, DK6JB P33 LONEMOV A, 00HAJMP LKP LONE:JB P3 4, NEXT MOV A, 08HLKP: ADD A, R4 PUSH ACCLK3: ACALL DIR ;仅做一次处理ACALL KS1JNZ LK3POP ACC ;取键值于 ACCRETNEXT: INC R4MOV A, R3JNB ACC.7,KEDRL AMOV R3, AAJMP LK4KED:AJMP KEY 判断键盘有无键按下子程序无键按下 A=00HKS1: MOV SBUF,00HMOV R6, 05HDS6: DJNZ R6, DS6 MOV A, P3CPL AANL A, 18HRET 显示子程序 P1 口-LED 位扫描输出口R2-位扫描寄存器 初值为 01H SBUF-LED 段码发送缓冲器DIR: PUSH PSWSETB PSW,4MOV R0,40HMOV R2,01HD1: MOV P1,R2MOV A,R0ADD A,14HMOVC A,A+PCMOV SBUF,AMOV R7,02HD2: MOV R6,0FFHD3: DJNZ R6,D3DJNZ R7,D2INC R0MOV A,R2RL AMOV R2,AJNB ACC.2,D1POP PSWRET DB 3FH,06H,5BH,4FHDB 66H,60H,70H,07HDB 7FH,6rH ,77H,7CHDB 39H,5EH ,79H,71HDB 31H,6EH ,40H,23HDB 00H 延时子程序YSH: PUSH PSWSETB PSW.3MOV R0,0FFH SH: MOV R1,0FFHSH0: DJNZ R1,#H0DJNZ R0, SHPOP PSWRET机械手控制示意图 取包子程序P1.6-正/反转控制 30H、31H 步进脉冲暂存器(X 方向)QBCX: SETB P1.6 ;正转MOV 30H,04H ; X0 固定脉冲数MOV 31H,0D8HACALL XYXC ;调用 X 方向运行子程序ACALL CSHC ;调用测试子程序MOV 30H,33H ;X 方向列脉冲数MOV 31H, 34H ;送 30H、31H 单元ACALL XYXC ;调用 X 方向运行子程序MOV 30H,35H ;Y 方向行脉冲数MOV 31H,36H ;送 30H、31H 单元ACALL YYXC ;调用 Y 方向运行子程序ACALL QWZC ;调用取物子程序CLR P1.6 ;反转MOV 30H, 35HMOV 31H, 36HACALL YYXC ;调用 Y 方向运行子程序MOV 30H, 33HMOV 31H, 34HACALL XYXC ;调用 X 方向运行子程序MOV 30H,04H ; X0 固定脉冲数MOV 31H, #0D8HACALL XYXC ;调用 X 方向运行子程序ACALL FWZC ;调用放物子程序AJMP SUN 存包子程序P.6-正/反转控制 30H、31H 步进脉冲暂存器(X 方向)33H、34H -35H、36HCBCX: ACALL QWZCSETB P16MOV 30H,04H ; X0 固定脉冲数MOV 31H,0D8H ;ACALL XYXCACALL CSHCMOV 30H,33HMOV 31H,34HACALL XYXCMOV 30H,35HMOV 31H,36HACALL YYXCACALL FWZCCLR P16MOV 30H, 35HMOV 31H, 36HACALL YYXCMOV 30H, 33HMOV 31H, 34HACALL XYXCMOV 31H,04HMOV 31H,0D8HACALL XYXCAJMP SUN X 方向运行程序P35脉冲信号输出线-控制 MX 电机XYXC: PU3H PSWSETB PSW.4MOV R0,30HABC0: MOV R1,31HABC1: CLR P35ACALL YSHSETB P35ACALL YSHDJNZ R1,ABC1DJNZ R1,ABC0POP PSWRETY 方向运行程序P36脉冲信号输出线-控制 MY 电机YYXC: PUSH PSWSETB PSW.4MOV R0, 30HADC2: MOV R1,31HADC3: CLR P36ACALL YSHSETB P36ACALL YSHDJNZ R1, ADC3DJNZ R0, ADC2POP PSWRET 取物子程序P1.6正/反转 P36Y 方向脉冲输出(40H)P3.7Z 方向脉冲输出 (66H )QWZC: PUSH PSWSETB PSW.4SETB P1.6MOV R0, 66HABC4: CLR P3.7ACALL YSHSETB P37ACALL YSHDJNZ R0,ADC4MOV R0,40HABC5: CLR P36ACALL YSHSETB P3.6ACALL YSHDJNZ R0, ABC5CLR P16MOV R0, 66HABC6: CLR P37ACALL YSHSETB P37ACALL YSHDJNZ R0, ABC6MOV R0, 40HABC7: CLR P36ACALL YSHSETB P36ACALL YSHDJNZ R0,ABC7POP PSWRET 放物子程序P1.6正/反转 P36Y 方向脉冲输出(40H)P3.7Z 方向脉冲输出 (66H )FWZC: PUSH PSWSETB PSW.4SETB P16MOV R0, 40HABC8:CLR P36ACALL YSHSETB P36ACALL YSHDJNZ R0, ADC8MOV R0,66HABC9: CLR P37ACALL YSHDJNZ R0,ABC9CLR P16MOV R0,40HABC10: CLR P36ACALL YSHSETB P36ACALL YSHDJNZ R0,ADC10MOV R0, 66HABC11:CLR P37ACALL YSHSETB P37ACALL YSHDJNZ R0, ADC11POP PSWRET 测试子程序41H货位列号暂存单元 40H货位层号暂存单元41H 40H 33H 04H 03H 02H 01H 35H 05H 03H 01H34H CDH B9H 8AH 01H 36H BFH 5BH 5BHCSHC:PUSH AMOV A, 41HCJNE A, 03H, MN0MOV 33H,04HMOV 34H,0CDHAJMP MN3MN0: CJNE A, 02H, MN1MOV 33H,03HMOV 34H,0B9HAJMP MN3MN1: CJNE A,#01H, MN2MOV 33H,#02HMOV 34H, #8AHAJMP MN3MN2:MOV 33H, #01HMOV 34H, #01HMN3:MOV A, 40HCJNE A, #02H,MN4MOV 35H,05HMOV 36H, #0BFHAJMP MN6MN4: CJNE A, 01H,MN5 MOV 35H,03HMOV 36H,5BHAJMP MN6MN5: MOV 35H,01HMOV 36H,5BHMN6: POP ARET9.4 使用说明本系统操作方便,而且在存包或取包过程中均有乐曲伴奏,机械手返回原处,音乐自动停止。一、键盘介绍键盘有数字键 09、功能键 MO

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论