毕业设计(论文)-单片机控制的球坐标机器人设计.doc_第1页
毕业设计(论文)-单片机控制的球坐标机器人设计.doc_第2页
毕业设计(论文)-单片机控制的球坐标机器人设计.doc_第3页
毕业设计(论文)-单片机控制的球坐标机器人设计.doc_第4页
毕业设计(论文)-单片机控制的球坐标机器人设计.doc_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

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

文档简介

设计总说明书摘要:针对单片机控制的球坐标机器人设计,介绍了机器人技术的发展现状以及发展趋势,球坐标机器人的机械部分的设计,着重介绍了机器人控制系统的设计流程,提供了一个完整的能实现速度设置、手动运行、给定量精确运行、自动运行4个功能的参考程序。最后对机器人处理器的选择和无线机器人做了简单的探讨。关键词:球坐标; 机器人; 步进电机; 谐波减速器abstractthis disquisition aims at the design of the sphere coordinates robot. introduces the actuality and trend of the development of the robot , the design of the mechanism part of the sphere coordinates robot simply, and gives emphasis to the design flow of the control system. this paper have offered a unabridged program which can achieve four functions :the setting of the speed, manual operation, accurate ration operation and automation. this paper also discussed the selection of the processor as well as the wireless robot simply at last.keywords: sphere coordinates ; robot ; step electromotor ; harmonic decelerator目 录前言11 机器人概述22 手部的设计和计算42.1 有关此机器人能实现的功能的构想42.2 机器人机械结构初步构想42.3 机器人控制系统初步构想42.4 所用器材、器件的初步拟订53 机器人设计及计算63.1 手部设计63.2 手腕设计83.3 手臂设计93.3 机身设计93.5 电机选择94 控制系统的设计124.1电路原理图的绘制124.2 pcb图绘制124.3 程序设计124.3.1 机器人使用说明124.3.2 端子分配表134.3.3 各输入输出及状态缓存分配情况164.3.4 参考程序195有关机器人设计的两个探讨455.1处理器的选择455.1无线实时控制的探讨研究45设计总结47致谢48参考文献49前 言机器人设计是我们学完技术基础课及有关专业课后的一次专业课程内容的综合设计。所学通过设计,把所学课程(机构分析与综合、机械原理、机械设计、液压与气动技术、自动控制理论、测试技术、数控技术、单片机原理及应用,自动机械设计等)中所获得的理论知识在实际中综合地加以运用,使这些知识得到巩固和发展,并使理论知识和生产密切地结合起来。目前,国民经济高速发展,工业机械手满足了社会生产的需要,在某种程度上也实现了生产自动化。它在工业生产中的应用也极为广泛。工业机械手操作动作准确,因此可以稳定和提高产品质量,同时也可避免人为的操作错误。此外,机械手能持久、耐劳,可以把人从繁重单调的劳动中解放出来,并能扩大和延伸人的功能。工业机械手的通用性、灵活性好,能较好地适应产品品种的不断变化,以满足柔性生产的需要。本次设计着重点在控制系统的设计。在机械结构的设计上我大胆采用了直线导轨,大导程滚珠丝杠等结构。在控制系统设计上,我力求控制系统的简单、完整、合理、人性化设计。采用了74ls148八三路优先编码器连接键盘和单片机。独立编写了具有速度设置、手动运行、给定量精确运行、自动运行四大功能的控制程序。 1. 机器人概述工业机器人由操作机(机械本体)、控制器、伺服驱动系统和检测传感装置构成,是一种仿人操作、自动控制、可重复编程、能在三维空间完成各种作业的机电一体化自动化生产设备。特别适合于多品种、变批量的柔性生产。它对稳定、提高产品质量,提高生产效率,改善劳动条件和产品的快速更新换代起着十分重要的作用。 机器人技术是综合了计算机、控制论、机构学、信息和传感技术、人工智能、仿生学等多学科而形成的高新技术,是当代研究十分活跃,应用日益广泛的领域。机器人应用情况,是一个国家工业自动化水平的重要标志。 机器人并不是在简单意义上代替人工的劳动,而是综合了人的特长和机器特长的一种拟人的电子机械装置,既有人对环境状态的快速反应和分析判断能力,又有机器可长时间持续工作、精确度高、抗恶劣环境的能力,从某种意义上说它也是机器的进化过程产物,它是工业以及非产业界的重要生产和服务性设备,也是先进制造技术领域不可缺少的自动化设备。国外机器人领域发展近几年有如下几个趋势: 1工业机器人性能不断提高(高速度、高精度、高可靠性、便于操作和维修),而单机价格不断下降,平均单机价格从1991年的103万美元降至1997年的65万美元。 2机械结构向模块化、可重构化发展。例如关节模块中的伺服电机、减速机、检测系统三位一体化;由关节模块、连杆模块用重组方式构造机器人整机;国外已有模块化装配机器人产品问市。 3工业机器人控制系统向基于pc机的开放型控制器方向发展,便于标准化、网络化;器件集成度提高,控制柜日见小巧,且采用模块化结构;大大提高了系统的可靠性、易操作性和可维修性。 4机器人中的传感器作用日益重要,除采用传统的位置、速度、加速度等传感器外,装配、焊接机器人还应用了视觉、力觉等传感器,而遥控机器人则采用视觉、声觉、力觉、触觉等多传感器的融合技术来进行环境建模及决策控制;多传感器融合配置技术在产品化系统中已有成熟应用。 5虚拟现实技术在机器人中的作用已从仿真、预演发展到用于过程控制,如使遥控机器人操作者产生置身于远端作业环境中的感觉来操纵机器人。 6当代遥控机器人系统的发展特点不是追求全自治系统,而是致力于操作者与机器人的人机交互控制,即遥控加局部自主系统构成完整的监控遥控操作系统,使智能机器人走出实验室进入实用化阶段。美国发射到火星上的“索杰纳”机器人就是这种系统成功应用的最著名实例。 7机器人化机械开始兴起。从1994年美国开发出“虚拟轴机床”以来,这种新型装置已成为国际研究的热点之一,纷纷探索开拓其实际应用的领域。 我国的工业机器人从20世纪80年代“七五”科技攻关开始起步,在国家的支持下,通过“七五”、“八五”科技攻关,目前已基本掌握了机器人操作机的设计制造技术、控制系统硬件和软件设计技术、运动学和轨迹规划技术,生产了部分机器人关键元器件,开发出喷漆、弧焊、点焊、装配、搬运等机器人;其中有130多台套喷漆机器人在二十余家企业的近30条自动喷漆生产线(站)上获得规模应用,弧焊机器人已应用在汽车制造厂的焊装线上。但总的来看,我国的工业机器人技术及其工程应用的水平和国外比还有一定的距离,如:可靠性低于国外产品;机器人应用工程起步较晚,应用领域窄,生产线系统技术与国外比有差距;在应用规模上,我国已安装的国产工业机器人约200台,约占全球已安装台数的万分之四。以上原因主要是没有形成机器人产业,当前我国的机器人生产都是应用户的要求,“一客户,一次重新设计”,品种规格多、批量小、零部件通用化程度低、供货周期长、成本也不低,而且质量、可靠性不稳定。因此迫切需要解决产业化前期的关键技术,对产品进行全面规划,搞好系列化、通用化、模化设计,积极推进产业化进程。 我国的智能机器人和特种机器人在“863”计划的支持下,也取得了不少成果。其中最为突出的是水下机器人,6000米水下无缆机器人的成果居世界领先水平,还开发出直接遥控机器人、双臂协调控制机器人、爬壁机器人、管道机器人等机种;在机器人视觉、力觉、触觉、声觉等基础技术的开发应用上开展了不少工作,有了一定的发展基础。但是在多传感器信息融合控制技术、遥控加局部自主系统遥控机器人、智能装配机器人、机器人化机械等的开发应用方面则刚刚起步,与国外先进水平差距较大,需要在原有成绩的基础上,有重点地系统攻关,才能形成系统配套可供实用的技术和产品,以期在“十五”后期立于世界先进行列。2. 总体设计2.1有关此机器人能实现的功能的构想:1 实现老师的要求。2 能够实现现场调试,控制,近程无线控制。运动可以实现给定量的精确运动。在电脑上能利用机器人上的摄像头进行无线近程实时监控。2.2 机器人机械结构初步构想: 可实现: 手臂俯仰 手臂回转 手腕伸缩 手腕回转机器人采用电机驱动,初步估计要用到4个不同型号的电机, 手臂俯仰电机,带谐波减速 手臂回转电机,带谐波减速 手腕伸缩电机,与滚珠丝杠直连 手腕回转电机,带谐波减速2.3 机器人控制系统初步构想:控制系统采用单片机及电脑控制机器人控制系统可分为现场工作控制系统和近程监视控制系统。本设计只详细设计现场工作控制系统.对于近程监视控制系统只做研究性探讨.现场工作控制系统是利用机器人的操作面板实现对机器人的初始化,调试,运作等功能。近程监视控制系统由两部分组成:(1)电脑无线近程监控系统。 电脑无线近程监控系统可实现对机器人的实时监控,从电脑的视频窗口可以看到机器人的实时动作。用鼠标或者键盘输入参数可使机器人实现预定动作一套,实时动作,以及精确实现给定参数运动。(2)近程无线控制器。 近程无线控制器实质是现场工作控制系统的无线化。主要是可以方便的进行操作。2.4 所用器材,器件的初步拟订:单片机 至少两片 型号:89c51驱动,功放电路元件若干电脑 一台无线收发器件 一对摄像头 一台其他 必需的电子元件等。3. 机器人设计及计算3.1 手部设计手部(亦称抓取机构)结构是根据特定的工件要求而设计的。常用的手部按其握持原理可以分为夹持和吸附两大类。吸附类中,有气吸式和磁吸式;夹持类中,主要有夹钳式。夹持类手部按其手指夹持工件时的运动方式,可分为回转型和手指平移型两种。本设计采用夹钳式的手部。夹钳式手部是由手指、传动机构和驱动装置三部分组成的,它对抓取各种各样的工具具有很大的适应性,可以抓取轴、盘、套类零件。一般情况下,多采用两个手指,少数采用三指或多指。驱动装置为传动机构提供动力,驱动源有液压、气动和电动等几种形式。平移型手指的张开闭合靠手指的平行移动,适于夹持平板、方料。在夹持直径不同的圆棒时,不会引起中心位置的偏移。但这种手指结构比较复杂、体积大,要求加工精度高。本设计初选方案为平行型手指,如图:该手部可以更换手指,其驱动采用电机驱动滚珠丝杠,然后驱动齿轮齿条,最终驱动两手指做平行相对移动.由于驱动的中间传动环节较多,机构复杂,加上平行型的手指本来体积就比较大,使得整个手部比较笨重,而且电机控制手部夹紧时,夹紧力不容易控制。最后放弃该方案。回转型手指的张开闭合靠手指根部(以枢轴支点为中心)的回转运动来完成。枢轴支点为一个的,称为单支点回转型;为两个的,称为双支点回转型。这种手指结构简单,形式小巧,但夹持不同工件会产生夹持定位偏差。本设计根据导师的要求和手指应该简单小巧,容易控制的要求,最终确定手部方案为双支点回转型手指,液压驱动。如图:有关手部驱动的讨论:手部驱动有气动、液动、电动和机械四种形式气动速度快,结构简单,成本低。采用点位控制或机械挡块定位时,有较高的重复定位精度。液压式手部臂力较大,且可用电液伺服机构,可实现连续控制。使工业机械手的用途和通用性更广。电动式用于小型。机械式只用于动作简单的场合。本设计夹紧采用液压夹紧,但个人认为采用气动会使得动力机构更简单,成本也会降低。夹紧力计算: :安全系数,取2.0:工作情况系数: 其中 取手臂长为500mm,根据手臂回转90 可知 取 : 方位系数 因为手腕具有回转功能,故夹紧方式为:手指水平放置夹垂直放置的工件。 取4液压缸直径的选择:(1) 根据手部形状:b=30mm, b=44mm,=360(2)取=0.85 (3)确定液压缸的直径d 选取压力油工作压力 p=20105pa d=4 f实际/p0.5 =44096/(20105)0.5=51mm根据液压缸内径系列jb826-66,选取d=50mm, d=26mm3.2手腕设计:本设计手腕起到连接手部和手臂的作用。手腕上装有手部回转步进电机。步进电机,步距角1.8带谐波减速器,减速比为100。通过对步进电机的控制可以实现对手部回转角度的精确控制,可以让手部在行程范围内的实现任意角度的回转。本设计中步进电机的控制系统允许输入最小为单位为1的数值。当然还可以是更小的数值。只要在控制系统的设计上做一些改动就能实现。理论上最小回转角度应该是1.8/100=0.018。手腕座在两平行的直线导轨的滑块上。手腕的直线运动是靠手臂上滚珠丝杠螺母的螺母推动实现的。由于直线导轨和滑块之间是滚动摩擦,摩擦力远比滑动摩擦小的多。所以该结构比用直线光轴导柱要好。而且直线导轨安装方便。本设计采用msb15e型直线导轨,如图:3.3手臂设计设计要求手臂能实现俯仰运动。并且要支撑手部和腕部。手臂上装有两平行直线导轨。两导轨的滑块用连接板,螺栓连在一起。连接板上用螺栓将手腕和手部固定。手臂后端有步进电机,驱动丝杠螺母,螺母推动连接板使手部直线运动。手臂的俯仰也是用步进电机,通过谐波减速带动的。步进电机固定在机身上。3.4机身设计:机身要实现回转功能,考虑到整个机身重量会很大,为了保持机身的稳定性,其回转支承采用止推轴承和深沟球轴承的组合来提高稳定性。这种组合可以在底座尺寸较小的情况下得到较好的稳定性。底座设计:底座固定在地面,上面装有机身回转电机,提供对机身的支承和回转的驱动。具体形状见图纸。3.5 电机的选择:考虑到要尽量使控制系统设计简单,这里使用同一型号的步进电机,这样会使得控制电路简单,编程也容易。这里要说明为什么选择减速比为100,而滚珠丝杠导程为16mm且不用减速器。设计要求最大的回转角速度=90/s,最大的直线速度为250mm/s,两数值比为1:2.777为使控制简单,各电机采用相同的频率这就要求在这频率下角速度和直线速应该大致满足两个最大值之间的比例关系。假设脉冲频率为f则角速度=f1.8/100v=f1.816/360二者之比为1:4.444由此可以看出二者相差不是很大。故选择合理。电机的选择:步进电动机又称脉冲电动机,是一种把电脉冲信号转换成与脉冲数成正比的角位移或直线位移的执行元件。其转速具有三个特点:转速(或线速度)与脉冲频率成正比;在负载能力允许的范围内,不因电源电压、负载、环境条件的波动而变化;速度可调,能够快速起动、制动和反转。同时,步进电动机还具有定位精度高、同步运行特性好的特点,广泛应用于数控机床、绘图机、卫星天线、自动记录仪及数模转换器等设备上。百格拉三相混合式步进电机,具备上述步进电动机的一切特点,一般用于数控开环系统中作执行元件或驱动元件。由于各电机型号相同,因此以负载最大的机身回转电机为标准进行电机的选择计算.整个机器人可以简化为如上图的模型.根据机器人的机械图,机身对回转轴的转动惯量大致估计为: 如此估计都是按照偏大,偏安全估计的.根据控制部分可知:机身的最大回转角速度为36/s取则机身角加速度为驱动机身所需转距:减速器减速比为100,因此要求电机的输出转距为:根据此值选百格拉vrdm397,其额定扭矩为1.7nm,保持扭矩为1.92nm。4 控制系统的设计4.1 电路原理图的绘制:见图纸 4.2 pcb图绘制:见图纸4.3 程序设计:4.3.1机器人使用说明: 开机:机器人进入速度设置模式,该模式有低、中、高三种选择,分别对应数字键0、1、2。程序中已设定了速度的大小。按下数字键0、1、2,led 上可以显示所按的数字,按确定键就可以保存速度模式。重新按数字键,再按回车键将会使新的数据替代原有的数据。按下数字键后,如果想取消,则按退格键c ,如果按下其他数字键或功能键,都不会产生什么影响,led也不会亮。 系统默认的速度为中速。不按下任何键或按按键后没有回车,都不会更改默认值。 按下回车键大于3秒的时间,则退出速度设置模式。进入手动模式。手动模式:在此模式下,按下对应的按键就会执行相应的动作。一直按下按钮,则电机会一直运转,松开按钮,电机停转。因此可以实现点动和连续运动。如果想反转,先按下反向键s15,再按运转键,就可以使对应的电机实现反转。 按下回车键大于3秒的时间,则退出手动模式,进入给定量进给模式。给定量进给模式:先按下要使之运动的电机按键,再输入要运动的位移或角度,按回车就可以使机器人动作,反转也时先按反向键,再按运行键。可以同时选择几个电机动作,数据输入后电机同时运转,所以不可能有一个电机的两个方向都有动作。数据输入可以是一位,也可以是两位,三位但要注意不能超过运行距离的上限,碰到行程开关会自动停止。 按下回车键大于3秒的时间,则退出给定量进给模式,进入自动运行模式。自动运行模式:按下回车键后开始自动运行。 运行时先回到初始位置再开始运动,运动路线已由程序给出。运行已此完毕,如果不按回车键,则不会运动,按下回车键,会重复运行一次同样的路线。 按下回车键大于3秒的时间,则退出自动运行模式。进入速度设置模式。如此循环。附:程序流程图开始初始化速度设置手动运行定量运动自动运行定时中断程序给电机发脉冲定时中断程序给电机发脉冲定时中断程序给电机发脉冲4.3.2端子分配表:1输入端子:键盘: s0-s17 s0-s7 为数字键0-7, 其值可以直接读入,然后取反就是对应的键值了 s8-s9 为数字键8-9, 其值要读入后取反,并且要调整才能得到对应的键值。调整方法:先判断键是在第二区,然后读入,取反,将取反后的值右移三次然后加8就得到对应的键值了。这使得读键稍微有点麻烦,但比起矩阵式键盘以及其他方式的键盘方便了很多,可以不用花费时间和精力在键值的判断上,大大节省了,编程的时间,提高了编程的效率。 s10-s15 对应为功能键二部分。具体分配如下: s10 : 手部夹紧和放松按键。 s11 : 手部回转按键s12 : 手臂伸缩按键s13 : 手臂俯仰按键s14 : 机身回转按键s15 : 反向控制按键,先按下此键,然后再按s10-s14中的任何键,就会使得运动方向为反向,程序默认运转方向为正向。如果部按反向键直接按s10-s14,则运转方向为正转,这种键盘功能模式可以节省键盘的数目。而且实际操作也很方便。s16-s17 对应为功能键一部分。s16 : 回车键a,用于确定输入的数据,启动运行的动作,以及在各个运行模式之间切换。按键时间大于3秒则使程序自动切换到下一运行模式,小于3秒则起回车键的作用,具体的使用方法在各个子程序里面会有所不同。s17 : 退格键c ,用于取消数据的输入,暂停/停止运行的动作,取消当前的活动状态等,在不同的子程序里面使用方法也有所不同。 说明:键盘电路采用三片74ls148输入p1口的,74ls148是8-3优先编码器,其输入具有不同的优先级,可以防止串键。本设计中采用三片串联,优先级 从s0s17依次增加。s17优先级最高。当两键或多键同时按下去的时候,只能检测到优先级最高的那个键。不必再使用软件方法防止串键。简化了编程。 键盘码值表:说明p17p16p15p14p13p12p11p10pc2pc1pc0无无键按下11111111000第三键盘区s0数字键011111111100s1数字键111111110100s2数字键211111101100s3数字键311111100100s4数字键411111011100s5数字键511111010100s6数字键611111001100s7数字键711111000100s8数字键811111111110第二键盘区s9数字键911110111110s10手转11101111110s11手伸缩11100111110s12臂俯仰11011111110s13机身转11010111110s14夹紧放松11001111110s15反向控制11000111110s16回车键a0111111111一区s17退格键c00111111111 键盘码值表取反值:说明p17p16p15p14p13p12p11p10值无无键按下0000000000hs0数字键00000000000hs1数字键10000000101hs2数字键20000001002hs3数字键30000001103hs4数字键40000010004hs5数字键50000010105hs6数字键60000011006hs7数字键70000011107hs8数字键80000000000hs9数字键90000100008hs10手转0001000010hs11手伸缩0001100018hs12臂俯仰0010000020hs13机身转0010100028hs14夹紧放松0011000030hs15反向控制0011100038hs16回车键a1000000080hs17退格键c110000000c0h 行程开关:k0-k7说明p23p22p21p20取反p22p21p20k0手正转限位1111000k1手反转限位1110001k2手伸限位1101010k3手缩限位1100011k4臂仰限位1011100k5臂俯限位1010101k6机身正转限位1001110k7机身反转限位1000111无到位无开关闭和0111000 根据行程开关的码值表可以看出,如果想检测是否有行程开关到位,只需检测p23是否为1即可,为1则有行程开关闭和,为0则没有,如果想知道是哪个行程开关到位,则读p2口,查一下p22p21p20的取反值就行了。 2.输出端子状态显示灯:3bhd0d1d2d3d4d5d6d7速度设置模式手动模式给定量进给模式自动模式手腕正转灯手腕反转灯手臂伸长灯手臂缩短灯3ahd8d9d10d11d12d13d14d15手臂上仰灯手臂下俯灯机身正回转灯机身反转灯手夹紧灯手放松灯故障显示灯数据显示led 个位:led3 缓存地址 3ch 十位:led2 缓存地址 3dh 百位:led1 缓存地址 3ehled显示码:0123456789灭03h9fh25h0dh99h45h41h19h01h09h0ffh4.3.3各输入输出及状态缓存分配情况:30h:机器人运行状态标志字节。编程时根据此字节的值来判断机器人要执行什么子程序具体规定如下: 00h01h02h03h其他值速度设置模式手动运行模式给定量进给模式自动运行模式跳到手动模式3ah-3eh :显示缓存区具体分配如下:3ah3bh3ch3dh3ehd8-d15d0-d7led3led2led1 5ah-5bh :电机输出缓存 5ah:pa口数据 5bh:pb口数据58h :电机的转速状态低速中速高速00h01h02h注:默认值为中速 01h4ah-4fh:电机低、中、高各转速对应的定时器的值,通过速度设置程序可以选择其中的一组来作为定时值来提供不同的转速。 定时器定时值:4ah4bh4ch4dh4eh4fh#08h #1fh #14h #0fh #19h#07htl0th0tl0th0tl0th0500hz 1000hz2000hz低速中速高速= 9/s v=40mm/s=18/s v=80mm/s=36/s v=160mm/s注:速度的计算方法 以中速的为例:由tl0和th0的值可以算出脉冲时间间隔为1ms,即脉冲频率为1khz回转电机所用的谐波减速器减速比为100,丝杠螺母的导程为16mm 电机的步距角为1.8 所以有回转角速度 =110001.8100=18/s 伸缩速度 v=110001.8 360 16=80mm/s 中、高速计算方法相同。 50h-57h :各电机的脉冲数,每个电机占两个字节50h-51h52h-53h54h-55h56h-57h机身回转电机脉冲数臂俯仰电机脉冲数手臂伸缩电机脉冲数手腕回转电机脉冲数40h-42h :数据输入缓存在给定量进给程序中,需要输入进给的角度或直线位移,由于输入的值不是一个确定的数,有可能是三位的,两位的,也有可能是一位的,但这些数都是有效且合理的,所以都要处理好。办法就是建立一个三字节的输入缓冲区(本设计中最多只能输入三位),同时用一个寄存器来记录已经输入数据的个数(本设计中采用r5),输入数据的时候,从缓冲区的低字节开始保存,同时寄存器的值要加1。以保证记录的准确性。当数据输入完毕,不管输入了几位,只要从40h开始,按照寄存器标明的个数,计算并存入相应的单元即可。本设计中count 子程序就是针对此的专门计算程序,它把输入的不确定位数的位移或角度(十进制)转化成相应电机的脉冲目,并存入该电机的脉冲数目存储单元。43h-44h :上面conut 程序的中间缓存,里面存的是转化后的十六进制的数据。45h :给定量进给程序中标明当前输入数据对应电机的字节。其规定如下:00h01h02h03h04h无有效电机机身回转电机臂俯仰电机手伸缩电机手回转电机注:初始化应为00h。状态标志位:70h行程开关到位状态标志位,未到为1,到位为071h手腕正转为1,反转为072h手臂伸为1,缩为073h手臂仰为1,俯为074h手松开为1,夹紧为075h机身正转为1,反转为060h是否有有效数据输入61h电机正反转标志位,通过此位来判断要设置的电机的转向。50h手回转电机是否选定给定量进给中用到51h手伸缩电机是否选定52h臂俯仰电机是否选定53h手松/夹54h机身回转电机是否选定55h是否在运行 运行为1,暂停或没运行为056h是否在运行的暂停状态,暂停状态为1,运行为0有关状态位使用的说明:70h-75h为给电机发脉冲时的转向的判断依据,行程开关如果到位还要根据到位电机的转向来判断是否要停止电机的运行。如果电机的转向是背离行程开关,则即使行程开关还在按下的状态,电机也能运行,并且应该运行。这在行程开关到位,电机必须转向的时候是尤其要注意的。50h-56h 主要给给定量进给程序中,退格键c按下后要执行的动作提供依据, 如果数据输入完毕,电机已经运行,按下c 键则暂停 如果是在输入数据,则按下c键后输入的数据要减少一位,并且要使在led上显示的数据也相应的减少一位。 如果输入的数据全部删除了,再按下c键,就会取消当前电机的选定状态。同时在显示发光二极管上也要相应的做调整。led 全灭, 如果当前电机选定状态被取消,再按下c 键,就显示前面已经存好数据的电机,有几个显示几个。表示已经有几个动作定下来了。 在这个基础上,选定电机都显示过后再按下c 键,就清除所有的设定值,回到程序的初始状态。以上各种情况的判别标志就是50h-56h 。8255各口的地址及状态字: a口b口c口初始化状态字0fffh1fffh2fffh3fffh输出输出输入89ha口数据来源 5ahpa0pa1pa2pa3pa4pa5pa6pa7 机身回转电机手臂俯仰电机uvwuvwb口数据来源 5bhpb0pb1pb2pb3pb4pb5pb6pb7 手伸缩电机手腕回转电机夹紧放松uvwuvw注:8255工作方式0,地址的选择必须使p27为0,因为p27另有用处,它是串行显示输出的移位脉冲信号输出端,脉冲升沿开始传送数据,所以一定不能使在不传送数据的时候,p27出现升沿,如果在其他地方使得p27为0,这里使p27为1,会出现升沿,传输一位数据,使显示变为乱码。使其为0即可避免问题的发生。 4.3.4 参考程序: org 00h ajmp main org 000bh ;定时器0中断入口ljmp time ;定时程序 org 0030hmain: mov sp ,#65h ;设置堆栈 mov 3ah,#0ffh ;显示初始化 mov 3bh,#7fh ;只显示运行在速度设置状态灯 mov 3ch,#0ffh ;led全灭 mov 3dh,#0ffh mov 3eh,#0ffh mov 2eh,#0ffh ;置各电机正转,手放松状态 mov 58h,#02h;电机默认中速 mov 4ah,#08h;低速对应的定时值 mov 4bh,#1fh mov 4ch,#14h;中速对应的定时值 mov 4dh,#0fh mov 4eh,#19h;高速对应的定时值 mov 4fh,#07h mov 5ah,#6fh;电机输出初始化 mov 5bh,#93h mov r0 ,#08h mov r1 ,#50hcl1: mov r1,#00h;各电机的脉冲数清0 inc r1 djnz r0 ,cl1 mov tmod,#00h mov th0,#07h mov tl0,#19h setb ea setb et0;暂不开中断 mov dptr,#03ffh mov a ,#89h;8255初始化 movx dptr,a;输出一次脉冲,使电机一相通电 mov dptr,#01ffh mov a ,5ah movx dptr,a mov a ,5bh mov dptr,#02ffh movx dptr,a nopks: mov a, #00h;检测程序运行状态 subb a, 30h jz shzh;速度设置 mov a, #01h subb a, 30h jz shd;手动运行 mov a, #02h subb a, 30h jz jq;精确进给 mov a, #03h subb a, 30h jz zd ;自动运行 mov 30h,#01h;其他值跳到手动运行 ljmp ks;循环检测shzh: lcall shzh

温馨提示

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

评论

0/150

提交评论