本科论文液下搅拌机器人的设计_第1页
本科论文液下搅拌机器人的设计_第2页
本科论文液下搅拌机器人的设计_第3页
本科论文液下搅拌机器人的设计_第4页
本科论文液下搅拌机器人的设计_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

1、第一章 概述1.1 课题背景及选题意义1.1.1 课题背景及来源随着环保意识的增强和科学技术的发展,水煤浆作为一种新型的燃料代替重油煤粉将被广泛应用。但水煤浆与油的特性不同,它是两相流的流体,悬浮物为颗粒状物质,随着储存时间的增加,悬浮物必然下沉,虽然在水煤浆中含有稳定剂,但储存时间长了以后,储存在设备中的水煤浆上下浓度不一致,以致发生软沉淀现象。目前采用的时机械式搅拌,但该装置体积大而笨重,能耗多。研发一种在罐底行进巡逻的机器人,除有搅拌的基本功能外,还能监测到可能发生沉淀的区域,并自行调整路径到达目的地,与原有装置有显著的优势。本课题来源于北京市教育委员会科技发展计划的工业机器人研究项目,

2、本项目的研究包括机械设计、机电系统自动控制、测试传感技术、位置识别系统、信息技术、计算机仿真等多学科内容,本课题是该项目的一部分,主要內容为:搅拌机器人的智能控制系统方法的研究。本项目拟研发的搅拌机器人可代替大型储浆罐中传统笨重的机械式搅拌装置,在占地、安装、维修、智能化等方面都有显著优势,从而提高生产的现代化水平,产生较大的社会经济效益。1.1.2 国内外水煤浆防沉淀技术的发展状况70年代的石油危机给以石油为主要能源的西方各国以很大冲击,人们纷纷研究以煤代替油的策略,煤炭是一种重要的能源,可以直接燃用,然而这种固体燃料不像石油和天然气那样便 于燃烧、储存与输送,其燃烧效率、使用方便性以及对环

3、境的污染等都劣于石油。现有燃油系统要直接改烧固体煤炭是不可能的。所以需要寻找一种煤基流体燃料来代替油。水煤浆是由煤粉和水混合而成的似流体燃料。精细水煤浆,是一种平均粒径小于10m,粘度0.3-0.4pa.s,浓度50%左右,灰分低于1%,基本属于牛顿流体的煤水混合物1。这种精细水煤浆可代替柴油用于内燃机和燃气轮机。因此,水煤浆是未来最有希望的以煤代油的燃料。目前不少国家正在大力研究水煤浆代替油的问题。图1-1 机械式搅拌机图1-1 机械式搅拌机随着我国新型能源燃烧技术的成熟,自七五期间始,水煤浆技术的发展已进入到工业应用阶段。无论是水煤浆的制备厂和用户,都需要设置水煤浆储罐,用于储备一定量的水

4、煤浆。水煤浆可以代替重油和煤粉燃料,但是与油的特性不一样,它是两相流的流体,悬浮物为颗粒状物质,虽浆中含有稳定剂,但随着储存时间的增加,悬浮物必然下沉,储罐中浆液上下浓度不一致,以致于发生软沉淀。目前,国外大型水煤浆储罐均采用机械式搅拌机以防止水煤浆产生软沉淀(见图示1-1),其搅拌机有立式、侧式两种。如瑞典设计的5000吨储罐,其立式搅拌机装置安装在罐顶中心,其叶轮直径为3m,传动功率为55kw。俄罗斯设计的20000吨储罐,底部装有台侧式搅拌机,每台功率为17kw2。在我国水煤浆生产和应用规模还很小,对防止水煤浆产生软沉淀也还未有成熟的经验,在参照国外使用技术的基础上,我国自行设计、研制出

5、几种搅拌形式主要有以下几种:1. 空气搅拌方式如长春保温材料厂250吨水煤浆储罐,该储罐为钢结构,直径6.5m,高7.87m,为平顶锥底罐,罐底坡度8度。绕储罐外壁等角设两种不同长度,交错布置共12根1寸压缩空气管,通过压缩空气,使煤浆产生翻腾,防止软沉淀产生。经现场装浆试验,搅拌效果良好,其缺点是噪音大,需要有压缩空气机装置,动力源不统一等。2. 打循环搅拌方式如枣庄矿务局八一矿水煤浆制备厂1500吨水煤浆储罐,该储罐为高架式钢筋混凝土框架筒体结构,罐内径12.5m,高29.1m,罐底部高出地面14m,锥底罐,罐底坡度4.5度。在罐下部装有3台qgb380.2/2型曲杆泵,在罐壁分四个水平装

6、有喷嘴,每一水平装3个喷嘴,用管道将曲杆泵与喷嘴相连,启动泵后,可使煤浆沿罐底和罐壁圆周方向流动,防止软沉淀产生。经现场装浆试验,搅拌效果良好,其缺点是动力消耗太大,并且有少量死角不易循环到,曲杆泵磨损严重。3. 立式机械搅拌方式如门头沟矿务局城子矿水煤浆制备厂5000吨水煤浆储罐,该储罐为钢结构,直径19m,高19m,为平顶锥底罐,罐底坡度为1:40。在罐顶中心装有一台立式搅拌机,其叶轮直径为3m,传动轴长14m,电机功率55kw,并装有导流板,通过搅拌机转动,使煤浆产生上下对流运动,防止软沉淀产生。大型立式中心搅拌机国内的生产厂家为江苏张家港市伟业机械制造有限公司。其主要型号为lmj55,

7、lmj75。经现场装浆试验,搅拌效果很好,并且没有死角,其缺点是设备结构复杂,传动轴太长,不易加工,需要分段制作。而且要求储罐为平顶结构形式,给大直径储罐设计带来一定的难度。4. 侧式机械搅拌方式如山东白杨河发电厂改烧水煤浆工程两座3000吨水煤浆储罐,该储罐为钢结构,直径15m,高15m,为平底拱顶罐,在罐侧壁装有三台侧式搅拌机,其叶轮直径0.38m,电机功率18.5kw,叶轮转数n=420r/min,摆动角度左30度-右30度。通过搅拌机转动,使煤浆产生旋转及水平方向的左右对流运动,防止软沉淀产生。经现场装装试验,搅拌效果很好,并且没有死角。其缺点是,因搅拌器装在储罐侧壁,设备密封要求高。

8、因此,在使用时应注意维修,以防泄漏。现将侧式搅拌机的工作原理及布置形式做一简要介绍。(1)搅拌机外形见图示1-2。 图1-2 侧式机械搅拌机(2)搅拌原理:搅拌器系侧入式船用三叶螺旋桨推进型搅拌机,由于螺旋桨叶片的推动,使浆体产生三个基本流,即轴向流、旋转流、湍流。把这三种流动分解为轴向部分(轴向流)和非轴向部分(旋转或螺旋流)。由于浆流的螺旋作用,螺旋形高速流使低速流动区域的浆体被携带进入高速浆流区,从而起到对混合有利的均质作用。同时,由于螺旋浆式搅拌机除有轴向流以外,还有法向推力形成的非轴向流,因而造成浆体的上下翻腾,以防止煤浆沉淀。以上四种搅拌形式,是我国目前在水煤浆生产及应用领域中所使

9、用的。1. 机器人车体 2. 回转耙轮3. 车轮 4. 轴流泵图1-3 液下搅拌机器人1.2 液下搅拌机器人的技术状况及结构方案确定1.2.1 技术状况水煤浆代油技术是近些年国际国内进行新型洁净燃料开发的热点,我国连续4个五年计划进行了重点攻关,现已技术成熟并开始工业推广,北京已有2座年产25万吨的生产厂。大型制浆设备是水煤浆技术的重要内容。但是分析目前国内外水煤浆搅拌方式可知,单纯机械搅拌装置具有体积大、笨重、能耗多等缺点,因此如能研发出在罐底行走巡逻的机器人(见图示1-3),除有搅拌的基本功能外,还能监测到可能发生沉淀的区域,并自行调整路径达到目的地,则将比原有装置具有显著的优势。1.2.

10、2 机器人的结构方案分析1机器人行走机构方案的确定轮式行走机器人移动机构的组成方式可用3轮机构或4轮机构。其中3轮机构稳定性差,而本机器人工作环境是在液体中,不容易校正其位姿;而4轮行走机构由于其稳定性好、运动灵活、易于控制等优点被采纳。4轮移动机器人的驱动基本结构主要有如下几种方式:(1)汽车驱动方式:其特点是一个马达作为动力,通过后面的差速器驱动,另一个马达带动前面的两个轮子改变方向。优点是适合于高速行走,稳定性好,在不平的路面上性能较好,容易控制;缺点是不能在原地转动,机械结构相对复杂。(2)2轮驱动方式:一种是4轮呈长方形形状分布,2前轮独立驱动,2后轮是万向轮,机械结构简单,且稳定性

11、好,还能够实现转向半径为0的运动;另一种是4轮呈菱形分布,位于车体中部的左右2轮独立驱动,位于车体纵向轴线上的前后2轮为辅助轮方式,其优点是当旋转半径为0时,能绕车体自身中心旋转,所以有利于在狭窄的场所改变方向。缺点是跟3轮机构一样稳定性不好,容易倾翻。(3)4轮驱动方式:优点是通过4个轮子各自独立旋转来转向,可以更好地适应粗糙路面,但是机械结构复杂,每个轮子都需操纵并提供动力,多马达难以控制。经过对上述几种方案的分析比较,考虑本课题中机器人的工作环境是液下平坦罐底,没有障碍物,其运动方式主要有圆周运动以及原地掉头运动,要求转弯灵活,稳定性好,控制简单等特点,方案(2)中4轮呈长方形分布的2轮

12、驱动方式是一种较佳选择。2机器人耙轮机构机器人的搅拌功能主要通过吸入和喷出浆液的方式造成浆液的流动状态来实现。吸入装置可采用回转耙轮推送浆液从而保证喷浆机构入口的流速,形成车体内外的压强差。回转耙轮的工作原理跟螺旋输送机的原理一样,即通过螺旋转动实现浆液的输送。参考螺旋输送机型式,螺旋面型有实体面型、带式面型、叶片面型等型式。实体面型螺旋适合输送干燥的、粘度小的小颗粒或粉状物料;带式面型适于输送散粒物料和作搅拌用;叶片面型螺旋适于输送块状或粘度中等的物料,可以作混合和搅拌作用。因此本项目可以采用带式和叶片式2种面型。3 机器人喷浆搅拌机构采用轴流泵使浆液沿泵轴线方向自下而上流动,并以一定压头喷

13、出,会产生高效的搅拌浆液效果。轴流泵具有耗能小、效率高、流量大、高比转速、使用维修方便的特点而被采用。轴流泵的主要构造为螺旋桨式叶轮,轮叶为流线型弯翼,当泵轴带动叶轮高速回转时,弯形叶片对液体产生轴向推力,而使泵壳内的液体不断回旋上升,从泵的出料口排出。在实现机器人的搅拌功能时,为了保持机器人车体内液体流动顺畅,设计时保持回转耙轮和轴流泵的液体处理量基本相等。4机器人控制系统控制系统是机器人研发的核心技术,主要控制对象是对行走轮的行走控制、轴流泵和回转耙轮的工作状态。对小车进行的行走控制,包括对车体行走路径、车轮速度和方向的控制。在搅拌时要求机器人小车能够根据浆液环境的不同而自行调整行走路径,

14、因此设计控制系统时,还要求机器人具有定位识别功能,并能随时监测浆液浓度分布并根据浆液浓度不同调整行走路径。可采用伺服电机和工控机控制系统,并设计保证电器箱在液下环境中的密封可靠性。1.3 本课题设计任务液下搅拌机器人的开发和研制属于北京市教育委员会科技发展计划项目,根据用浆液下搅拌机器人代替单纯机械式搅拌装置,机器人在结构上小巧、灵活、能耗少,浆液搅拌均匀等的要求,该机器人的基本功能主要包括液下行走、搅拌浆液、路径规划与控制及观测浆液浓度等四个基本模块。本课题的设计任务有以下几点:(1)了解液下搅拌机器人控制系统硬件结构(2)针对控制系统硬件结构对液下搅拌机器人控制系统进行软件设计(3)液下搅

15、拌机器人行走路径规划;(4)液下搅拌机器人运动仿真。第二章 基于pmac的液下搅拌机器人试验装置的控制系统2.1 可编程多轴控制器综述当前,开发设计具有柔性。模块化、高性能的基于pc的智能化,基于这点考虑,本课题以pmac为运动控制核心,利用其硬件结构、软件结构的开放性,开发出基于pmac的液下搅拌机器人控制系统。pmac是美国delatatau公司的产品,是集运动轴控制,和plc控制以及数据采集的多功能的运动控制产品。在运动控制领域经过二十几年的探索,delatatau 成功地将motorola的dsp56001芯片用于pmac,加上专用的用户门阵列芯片,结合pc的柔性,似的pmac具有全面

16、的开放性。2.1.1 硬件结构的开放性1. 适应多种硬件操作平台,可在ibm及其兼容机上运行,在win98、winnt/2000及linux下运行及开发,具有pc、std、vme、pci、104总线及串口脱机运行的功能,方便用户选用合适自己的主机。同时,底层的控制程序只针对pmac,所以统一控制软件可以在不同的硬件平台上运行。2.ac适用于所有电动机,包括普通的交流电动机、直流电动机、交直流伺服电动机、步进电机、直线电动机、陶瓷电动机等,也适用于液压马达,对于不同的电动机,pmac可提供相应的pwm、pfm、pulse+dir等控制信号。1) pmac可接受各种检测元件的反馈,包括测速发电机、

17、旋转变压器、激光干涉仪、并行数据、光电编码器、磁致伸缩位移传感器、光栅尺等。2) pmac的绝大部分地址向用户开放,包括电动机的所有信息、坐标系的所有信息及各种保护信息等。因此,系统的设计和选型灵活自如,不受限制,可将各种先进的设计理念融入系统,而且同一系统可选用不同的电动机,接受不同的反馈信息。2.1.2 软件结构的开放性1.各种高级语言 pmac控制器提供16位、32位的dll,还有activex控件ptalk,用户可使用c+、vb、vc、delphi在win98/nt2000下开发自己的人机界面接口。2.机器人语言的开放 pmac控制器不但在硬件上具备开放性,而且可支持用户调用现成的直线

18、、圆弧、样条、pvt三次曲线等差补模式,同时支持标准的rs274代码,另外用户可以自定义g代码、p代码、m代码、i代码、q代码,实现以往不能完成的功能。3.plc功能的全部开放 pmac内置了plc功能,一般可将i/o扩展到1024入和1024出,可以编写64个异步plc程序,对i/o的操作几乎使纯软件的工作,通过类似于汇编语言的指针变量,可以让用户按位、字节、进行控制。控制系统硬件主要包括:工控机、光电编码器、命令解释卡、pmac卡、伺服电机、减速器等。4.可同其他相关软件接口 pmac控制器虽然插在pc的扩展槽中,但其对轴的控制,对i/o的控制使控制器自身完成的,所以pc可共享目前相当成熟

19、的autocad等绘图软件,方便工艺编程。2.1.3 pmac主要功能与基本接口pmac就是一台完整的计算机,它可以通过存储在自己内部的程序进行单独的操作。此外,他还是一台实时的、多任务的计算机,能自动对人物进行优先等级判别,从而使具有高的优先等级的任务比优先等级的任务能先被执行。pmac的主要功能如下:1.执行运动程序pmac最主要的任务就是按照运动程序顺序地执行程序。当执行运动程序时,pmac一次执行程序地一条指令,进行该运动命令(包括非运动的任务)地所有计算,从而位执行该运动作好准备。pmac总是工作在实际运动之前,并根据需要正确地协调与即将执行地动作。2.plc程序在pmac中,plc

20、程序地工作方式与可编程逻辑控制器相似,主要用于任何运动程序运行的同时,在后台进行监视和计算,在处理器时间允许地情况下尽可能快地连续扫描他们的操作。3.伺服环更新在自动执行的任务中,pmac对于每一台电机都以一个固定的频率对其进行伺服更新,即先根据运动程序或别的运动命令得到要求的位置增量,然后将其与反馈回来的实际位置相比较,最后在两者的差的基础上发出一个输出命令使此差值变小,如此反复,直到此差值令人满意为止。4.换相更新如果pmac对一台多相电机进行换相运动,那么它会自动的以一个固定的频率进行换相更新。5.资源管理pmac会定期自动的执行资源管理的功能,以确定整个系统是处于正常的工作状态下。这些

21、功能包括:随动误差限制,硬(软)件超行程限制,放大器出错,看门狗计时器的更新等。6.与主机通讯pmac可在任何时间与主机通讯,甚至是在一个运动序列的中间。pmac将接受一个命令,然后采取相应的动作,将命令放入一个程序缓冲区 以便以后的执行,提供数据以响应主机,开始电机的移动,等等。如果命令是非法的,它将会向主机报错。7.任务优先级任务是按照优先级电路组织起来的,这可以使得以最优化,从而让应用程序有效、安全的运行。当优先级固定下来以后,不同任务得以执行频率是在用户的控制下的。2.2. acc-8s简介2.2.1 acc-8s的基本结构acc8s脉冲加方向输出,编码器选择反馈。pmac2的acc-

22、8s是一个为了方便的连接到推进驱动而设计的2-轴的输出电路板,步骤和方向输出和rs422是一致的,而且可以很方便的连接到不同模图21 acc8s基本结构式或单个的5伏的终端配置的输入驱动上。输入终端标志是为了连接12v-14v的传感器或者限制开关。pmac2可以利用acc-8s的v型信号来关闭电机的位置循环。跳转器的应用是为了可以应用外部的编码器来保证一个可靠的关闭-循环控制。作为一个2-轴附件,速度循环编码器输入可以在只有一个输出驱动使用的情况下使用。acc-8s是一系列pmac2的i/o(输入/输出)附件之一pmac2的接口用jmach连接集线器做成。这个集线器被电路板支持,24寸长.当我

23、们用acc-8s的时候, pmac2输出一个变频的固定波长的脉冲波.这个理论就就是脉冲速率调节(pfm)。2.2.2 acc-8s与pmac通讯pmac对acc8s的访问是通过特定形式的m变量来实现的,这就tws格式的m变量。系统对于acc8s的相应操作是通过pmac本身自带的plc程序来来实现的。用户可以将编写好的plc程序保存在pmac中,设定每次pmac加电时自行启动或者在控制软件中手动开启plc程序。在编写acc8s的plc程序时,通常都是通过设定变量的方式来实现对输入输出断口每一位的操作,具体可以参见acc8s使用手册。第三章 液下搅拌机器人控制系统软件设计3.1 控制系统设计思想传

24、统控制系统多采用封闭、专用的体系结构,但随着控制技术的发展,封闭式的控制系统的弊端越来越多,不断发展先进制造技术要求控制系统有高柔性、高开放性。近年来,pc机发展迅速,技术成熟,软件资源丰富,因此,充分利用pc资源,并将其功能集成到控制系统中去,发展基于pc平台的控制系统,已经成为控制系统设计的重点。控制系统软件结构的设计与实现是系统开发的核心部分。控制系统实质上是一个实时多任务系统,主要实现控制对象的协调运动和精确定位,起控制软件的各功能模块可认为是由系统完成的任务。这些任务一顺序或并行方式协调运行。因此,系统软件必须要有一个合理的结构以确保各模块间的协调工作。根据windows系统的多线程

25、机制,建立控制系统软件的多线程模型,将控制系统中管理、功能实现模式分作若干个模块,分别置于独立的线程中,以消息排队和消息循环推动控制系统的运行,那么,系统的整体运行效率将得到较大的提高。3.1.1 控制功能分析控制系统作为用户与液下搅拌机器人之间连接的桥梁,肩负着将用户意图转换为液下搅拌机器人的实际运动的重任。对于一般的控制系统而言,要求在速度、精度控制、图形显示等方面都有很强的功能。因此控制系统的软件应达到以下要求:(1) 强实时性。控制系统应具有实时的进行数据计算何个异步事件进行检测何处理功能。(2) 务并发处理与调度。控制系统通常作为一个独立的单元应用于工业自动化生产过程中,系统软件必须

26、包括管理和控制两大功能。系统的管理部分包括i/o输入输出、显示、诊断等,而控制部分包括路径规划、信息检测、控制运动等。在系统的实际运动过程中,这多个任务中的若干个任务需要同时工作。对于多个任务并发的情况,系统软件应能相应进行处理与调度,提高cpu的利用率,缩短机器人运动时间,提高工作效率。(3) 开放性。系统软件应能根据用户不同的工作环境进行裁减和配置,增减控制与管理功能。(4) 模块化。各模块间尽量互相独立而又能互相配合。(5) 友好的人机界面。方便用户进行操作和及时了解系统当前的运行状态。3.1.2液下搅拌机器人系统控制软件结构本系统软件是建立在windows操作系统之上,具备了多任务协调

27、处理的能力。整个软件的系统体系结构如图3-1所示30,31。作为上层软件的可执行32位windows应用程序通过pmac自带的通讯模块pcomm32与pmac的内核程序进行通讯,再由pmac内核程序驱动plc程序或者控制代码程序来完成。 32-位应用程序pmac.dllwindowsnt/2000pmac.syswindows95/98pmac.vxdpmac内核程序plc程序标准控制代码解释程序上层软件通讯软件底层软件图3-1 软件系统体系结构3.1.3系统软件模块化设计在系统软件的设计中,采用了面向对象的软件开发方法对控制系统软件进行分析,将其中的一些功能独立、内聚强、互相之间耦合较松散的

28、软件功能模块抽象出来,利用面向对象的程序设计语言实现其功能并进行封装从而形成对应的类,各种类可以集成在控制软件的通用类库中。在构建整个系统的时候,从类库中选取所需的类并派生出对象,按照系统的层次结构,建立具体的应用系统。系统建模过程如图3-2,这种用面向对象的方法来建立控制系统软件模型是提高控制软件可重用性、提高搅拌机器人开发程度的一种有效方法。 根据控制系统的功能划分不同的功能模块定义各功能模块的功能和属性面向对象的程序设计语言对各功能模块进行编程,并封装成类建立控制软件类库根据系统需求选择所需的类派生出对象组成所需的控制系统用面向对象的方法分析控制系统3-2 面向对象的控制软件的建模原理3

29、.2 控制系统软件设计方案该控制系统软件的开发采用了当今流行的面向对象的编程思想,利用microsoft的专用开发工具visual c+6.0作为开发平台,结合delta tau公司提供的pmac通讯驱动函数库pcomm32作为系统与pmac通讯桥梁,同时利用pmac配套软件pewin32作为执行软件来为该系统的运行和维护提供支持.3.2.1软件功能与模块从系统的工作机理可知,上位机应用软件的主要任务是作为整个系统的后台管理,调度程序完成系统实时性不强的任务,而对于插补计算、位置计算、伺服环更新等要求较强实时性的任务则均有下位机完成。基于这一设计思想,结合当前课题的实际进展情况,开发设计了该机

30、器人的控制系统软件。作为整个控制系统的后台管理调度程序,作为人机交互界面、对整个控制系统进行初始化、手动正/反转及回零、运行过程中位置状态信息进行实时显示,车体的行走路径等功能实现,该控制系统应具有三个基本模块:1)机器人的运动控制模块;2)机器人路径规划模块;3)机器人的信息采集模块。3.2.2主要mfc类简介visual c+6.0对windows api函数库进行了封装,形成了mcf(microsoft foundation class)类库给予简单的介绍,具体实现可以参考相应的技术文档:(1)cmainfame类该类是应用程序的主框架类,用于构造整个应用程序的主体框架,以及相应的消息处

31、理函数。其中的oncreatclient()函数在程序启动是自动调用,用以构建客户区内的各个功能模块。(2)cpmacview类该类是应用程序自动创建的视图类,负责管理所有与视图有关的工作,包括图形的绘制、放大与缩小、清屏,以及图形仿真等。(3)cjog类该类从cformview中派生,负责系统的手动控制模块,也是系统与pmac通讯的重要的模块之一。通过该模块用户可以实现x轴或者c轴的正转、反转、回零等操作。为了方便,在该类中设置了nc on和nc off两个开关,由他们来开启或关闭系统与pmac的通讯。nc on开关负责与pmac建立通讯联系,下载相应的变量设置程序和plc程序,开启控制面板

32、。nc off开关正好相反,负责关闭相应的plc程序,关闭控制面板。在该类中,设置了一个多媒体计时器,每隔10毫秒从pmac中读取需要采集的多种数据,并且进行相应的处理和转换后赋给相应的变量。(4)cxcpos类该类从cformview中派生,主要负责实时动态的显示x轴和c轴的位置。在系统启动之后,该类读取通过cjog类的多媒体计时器从pmac中采集回来的数据,并进行相应的处理,实时显示在软件界面上。通过该模块,用户可以实时的了解到当前各轴的进给位置。(5)cfnn类该类是根据模糊神经网路的结构和学习训练算法,利用c写的类,无基类,用于构建模糊神经网络模块,是系统控制算法的主要类之一。囊括了模

33、糊神经网路的初始化、模糊化、学习训练,仿真输出的多种功能。(6)cfnntain类该类从cdialog中派生,负责系统模糊神经网络的数据采集、网路训练等工作。通过该类,软件系统利用模糊神经网路将实际控制训练好,并将结果保存好。(7)ccontrolpanel类该类从cformview中派生,是辅助模块之一,主要包括数据处理、图形显示、系统设置等多种操作。通过该类,实现了将系统通常用的功能放置与人机界面上,极大的方便了用户 快速进行各种操作。(8)cloadscb类该类从cdialog类中派生,用于处理各种升程表参数,包括升程表的创建、转化、存储、错误检查等。用户可以直接在该类中输入车体升程数据

34、,也可以先创建生成表的文本文件,再在该类中加载,设定后系统将自动把所有的数据转换成统一的格式保存到文件(*.lft)中(9)ccamarg类该类从cdialog类中派生,用于处理各种参数,设定后系统将所有数据转换成统一的格式保存到文件(*.cam)中。(10)ccamshaft类该类从cdialog类中派生,用于构建整个凸轮轴的尺寸参数,包括凸轮个数、(11)ccamid类该类从cdialog类中派生,负责加工文件的数据处理。主要的数据计算、转化等工作都在该类中进行,并得到最后用于凸轮轴加工的加工数据文件(*.sc)。(12)cmanuinfo类该类从cformview类中派生,负责实际运动控

35、制模块,主要包括查找运动控制代码、路径规划的选择方式以及搅拌机器人运动控制等,也是系统与pmac通讯的重要模块之一。3.2.3 pmac通讯驱动函数库为了方便pmac与上层应用程序之间进行通讯,delta tau公司提供了pcomm32通讯驱动程序作为上层应用程序与pmac之间的通讯桥梁。pcomm32是一个非常有效的开发工具,几乎囊括了所有pmac的通讯方法,并且与vc等开发软件有很好的兼容性。它由pmac.dll、pmac.sys、pmac.vxd三个文件组成,包含了250多个函数。本论文中主要用到以下几个pcomm32函数,简要介绍如下:(1)bool openpmacdevice(dw

36、ord dwdevice)这个函数为应用程序使用pmac打开了一个通道。应用的前提是已经安装调试好动态链接库,并且pmac已经在这个操作环境下注册完毕,能够有效的寻址。其参数dwdevice为希望打开的设备号,一般为0。返回值为true则表示连接成功。(2)bool closepmacdevice(dword dwdevice)当程序运行完毕,必须关闭所打开的通道,此函数就是实现了这个功能。参数及返回值意义与打开通道函数openpmacdevice()相同,且必须与openpmacdevice配对使用。(3)bool pmacconfigure(hwnd hwnd, dword dwdevic

37、e)该函数可以设置pmac与上位机的通讯方式:总线通讯或者串行口通讯。当第一次安装pmac或者pmac跳线地址发生改变的时候,必须调用该函数设置pmac的通讯方式和总线地址(当选择总线通讯时)。(4)void pmacsendcommanda(dword dwdevice, pchar command)该函数直接发送一条指令到指定的pmac,参数command为发送的命令字符串。该函数并不从pmac中得到相应的发应。(5)void pmacsetvariabledouble(dword dwdevice,char ch,uint num,double val)通过该函数可以在程序中动态的设定指

38、定变量的值,其中参数ch为pmac中变量的类型(p、i、q、m等),参数num为参数号,val为希望赋予的值。(6)void pmacdownloadfile(dword dwdevice,char *fname)该函数下载指定的文件到pmac中,参数fname为指定文件的完全路径(包括文件名)。可以下载的文件包括变量设置程序、pmac运动程序以及plc程序。(7)int pmacgetresponsea(dword dwdevice,pchar response, uint maxchar, pchar command) 发送一个命令字符串(如“#1j+”,“open prog1”,“m16

39、2”等)给pmac,并从缓冲区中得到pmac的反应。它能处理大多数与pmac通讯的要求,并总是能保证命令字符串与反应字符串相匹配。参数response是指向存储pmac反应代码的字符串缓冲区的指针;maxchar是可以传送的字符串的最大字符数;command是指向所传送字符串的指针。如果函数执行成功,将返回所接受的字符数,包括握手字符。3.3 控制系统软件应用:3.3.1 控制系统软件流程图 本控制系统软件实在windows2000平台上利用visual c+6.0开发的单文档(sdi)mfc应用程序,可以再win95/98/nt/2k/xp等平台上运行,建议在1024*768分辨率下运行该程

40、序。该程序具有通用的windows应用程序风格,使用方便,操作简单。图3-3所示系统工作流程图。图34所示为控制系统软件的手动控制模块流程图,该模块是搅拌机器人控制系统所不可缺少的一部分,该模块可以进行相关数据的设置设计,控制两个电机的速度,从而控制搅拌机器人两轮在x轴、y轴的方向的运动。手动控制也可以实现机器人运动的停止,当搅拌机器人遇到故障或想停止当前运动时启动停止按钮,运动程序终止。此外该模块还具有复位清零的功如图35所示。图3-3 系统工作流程图。图3-4 手动调试图3-5 手动复位 3.3.2 系统启动与配置 图36是液下搅拌机器人控制系统软件的启动界面,在任何时候用户都可以双击“p

41、mac卡控制系统.exe”来启动该系统。图36 控制系统启动界面系统在运行过程中又是需要得到pmac自带软件包pewin32和pmacplot的支持。如果在每次启动的时系统无法从注册表中找到这些软件包的位置信息,用户可以通过软件“系统”菜单下的“pmac软件配置”选项在第一次运行系统的时候进行配置,如图37所示。一旦正确配置成功,系统将相应的信息写入到windows操作系统的注册表中。该配置只需一次配置,以后启动的时候系统就会自动查找。图37 控制系统pmac软件配置对话框 上位机软件正常启动以后,单击手动控制区的“nc on”按钮,系统与pmac建立通讯,下载必须的pmac变量定义和plc程

42、序到pmac中,并且完成系统的初始化工作,包括系统回零、plc程序启动等,如图38所示。同时,在运动结束以后要退出系统之前,必须单击“nc off”按钮,关闭系统与pmac的通讯,清除运行的plc程序,并将停止各轴的运动工作,如图39所示,如果没有关闭nc系统就退出系统,则系统拒绝执行该命令。38 控制系统启动图39 控制系统关闭图3.4 信息检测对于本课题中的机器人小车,其工作环境时圆形储浆罐,储浆罐的边界可以通过传感器探测边界得到,因此可异把他的环境分类为结构化环境,并且环境是静态的。小车行走的目的就是为了把液体的浓度搅拌均匀,避免沉淀物的形成,因此这就要求小车在整个储浆罐的的行走并且效率

43、尽可能高,诡计要求有一定的规划,所以它的性能指标应该是便利性和轨迹不重复性。同时要求机器人小车在遇到障碍物时(罐壁)时,要求能够判断其存在并按一定要求绕过它,利用机器人小车自身的传动检测机构和视觉信息,描绘环境特征(主要是圆形罐壁),并以此为基础对作业环境进行规划。根据前一章节中所确定的路径方案,确定行走路线:图33 行走路线即从图所示的最外圈红色箭头处开始行走,走到绿色箭头处在转弯,转弯后里面的半径最外圈的小一米,继续先按绿色方向行走,如此循环。3.4.1 液下搅拌机器人行走情况分析(1):小车沿轨道内偏:图34 轨道内偏假设当小车并没有沿图示的绿色轨道行走,而是按着图中红色的箭头方向走的时

44、候,表明机器人小车行走过程中发生误差(这个偏离误差也可以按照车上安装的超声波发射探头检测到的里墙壁的距离来判断,假如误差大于0.3m,则必须对小车转速进行调整),表现为向内偏离轨道,则必须进行调整。图35 调整内偏按照车辆运动学原理,则应该加大车辆内轮转速,使它按照图35所示返回到既定轨道继续前进。(2):小车轨道外偏:同样道理,假设当小车并没有沿图示的绿色轨道行走,而是按着图中红色的箭头方向走的时候,表明机器人小车行走过程中发生误差(这个偏离误差也可以按照车上安装的超声波发射探头检测到的里墙壁的距离来判断,假如误差大于0.3m,则必须对小车转速进行调整),表现为向外偏离轨道,则必须进行调整。

45、如图36所示此种情况下应当加大车辆外轮转速,适当减小内轮转速,再通过超声波接收发射装置,探测到小车调整到理想轨道位置时,再对小车转速进行调整,最后使小车图示绿色理想轨道继续前进。 图36 调整外偏(3)当小车行走到快要接近图37所示的2号超声波接收装置的时候,2号超声波接收器就会接收到声波信号,通过把信号传送到控制主机,马上可以实时的利用2号有信号,计算出机器人小车已经达到图示的位置。 图37 信号接收(4)假设小车在原地打滑或者出了故障没有走动,则可以先尝试让小车原地转弯,利用上述八个超声波接收装置,让小车原地转动,直到肯定有一个接收装置收到信号,则可以定出小车的具体位置。 图38 小车原地

46、转弯3.4.2 信息采集软件设计流程图第四章 搅拌机器人小车的路径规划4.1 路径规划概念机器人路径规划是智能机器人的重要研究方向,国内外学者对此进行了广泛的研究。应用于结构化环境的路径规划有自由空间法、可视图法【22】、拓扑图法【23】、【24】、a*算法【8】以及改进的a*算法【25】、遗传算法【26】、【27】、【28】、人工势场法【29】30、区域充满法等。对于非结构化环境的规划方法、典型的势场法、模糊控制法和神经元法等。这些方法更能适应一定机器人动态多变的环境3132,但它却不具有高层次的全局地图的概念,因而行驶时会出项“近视”行为而造成死锁现象。所以,在应用中通常将两者加以结合,先

47、根据大致的环境信息或部分已知的环境信息规划出全局路径,当环境发生变化(如遇到障碍物)便实时生成局部路径,绕过障碍物后继续转入全局路径控制3334353637。路径规划即规划一条行走路径,使机器人有线可循,至于机器人如何准确地沿该路线行走,则是导航系统所要完成的任务。路径规划可以分为两大类:点到点的规划和区域充满。点到点的规划应用在大多数机械手和一般性一定机器人中。其实质就是寻找一条从起点到终点的能够避开障碍物的尽可能短的易于跟踪的路径。方法主要有位形空间法、广义锥方法、顶点图像法、栅格空间法、人工势场法、神经网络38394041等。区域充满指的是规划一条可行路径,以便使机器人运行轨迹充满一整块

48、区域。本课题机器人小车的路径规划就是基于该路径规划的基础上,使小车能够在不需要人工干预的情况下能自动行走遍历整个储浆罐罐底并进行吸浆喷浆的搅拌作业,并能同时避开储浆罐罐壁。路径规划分为全局路径规划和局部路径规划,根据全局地图信息进行的路径规划称之为全局路径规划;机器人根据全局规划的路径行走时,碰到事先未知的障碍物或进入未知环境时进行的在线规划称之为局部路径规划。4.2轮式移动机器人的路径规划问题发展机器人产业的一条重要途径就是开发各种智能机器人、赋予机器人一定的“感知、思维(问题求解、决策和规划)和动作”的能力以提高机器人的性能,扩大其功能和应用领域。机器人智能化包括诸如控制、规划、传感、视觉

49、等多个方面,在诸多新型智能技术中,规划的研究和应用占有重要的地位,它包括任务规划、装配规划、路径规划、轨迹规划及自动抓取规划等,其中大量的工作针对机器人路径规划的研究。移动机器人路径规划问题同样是移动机器人研究领域中的一项重要研究内容,对移动机器人路径规划系统的主要要求是:(1)在环境地图中寻找一条路径,保证机器人沿该路径移动时不与外界发生碰撞;(2)能够处理用传感器感知的环境模型中的不确定因素和路径执行中出现的误差;(3)通过使机器人避开外界物体而使其对机器人传感器感知范围的影响降到最小;(4)能够按照需要找到最优路径。从某种意义上说,路径规划是寻找到目标的操作序列,本质上就是一个问题求解过

50、程。传统运筹学理论把规划作为求某种最优解的数值计算来处理,形成了如线形规划、动态等数值计算的方法,并用这些方法解决了不少问题。这类方法有严格的理论体系,但也有明显的不足。比如要求规划所涉及的约束条件要以数学不等式表示,要求的目标是某种最优函数的形式,另外规划所涉及的世界也必须是静止的,需要预先完全准确地知道。这些都是移动机器人规划难以满足的,所以需要采取其它更为有效的方法。另外移动机器人路径规划具有复杂性、随机性、多约束、多目标的特点。机器人的变化往往存在很多不确定因素,环境中动态障碍物的出现也带有随机性:机器人在运动中不仅受到制约其形状的几何约束,而且由于机构限制还受到制约其速度的非完整约束

51、;根据任务的不同有时还需要觉得多移动机器人协调操纵中的规划问题,总之,移动机器人路径规划可以研究的方向很多,还有很多尚未解决的问题,这里考虑带有非完整约束的轮式移动机器人在静态确定性环境中的路径规划问题。4.3 机器人系统的非完整约束许多实际控制系统常常要考虑与外部环境的接触因素,这类系统带有一定的约束条件,称其为受限系统,它具有广泛的应用背景,如移动机器人及自动驾驶汽车等。通常约束条件可归结为完整约束和非完整约束两类。完整约束只限制受控对象的空间位置或者同时限制空间位置及运动速度但经积分可转化为空间位置的约束,因此也称其为几何约束;而非完整约束则是对运动速度的限制,并且不能通过机房转化为空间

52、位置约束,简单地说即为不可积约束。轮式移动机器人是现有工作中研究最多的对象【9】,它是典型的带有非完整约束的机器人系统之一,轮式移动机器人系统是多种多样的,其中被广为研究的有以下几种:1.两驱动轮移动机器人两驱动轮移动机器人是采用两轮独立驱动的方式,如图4-1所示,前轮是两个独立驱动轮,后轮是可向任意方向滚动的小脚轮。通过控制两个驱动轮的速度,使车体跟踪不同的轨迹曲线。这种结构方式的优点是转向灵活,当两轮速度值相同,方向不同时,车体可以原地回转。yx图4-1两驱动轮移动机器人2.汽车式移动机器人汽车式移动机器人是应用最为广泛,也是研究最多的一种移动机器人,其驱动机构和运动基本上与三轮式移动机器

53、人相同,如图4-2所示,前轮为操舵机构,后两轮为驱动机构,通常,汽车式移动机器人模型简化为reeds&shepp车(允许倒车存在)和dubins车(不允许倒车存在)。带拖车的轮式移动机器人。 图4-2汽车式移动机器人带拖车的轮式移动机器人是一种特殊类型的移动机器人系统,由一系列相互铰链在一起的多个二轮式刚体小车组成。非标准情况下,这种轮式移动机器人系统由一个卡车形的牵引车拖动一个或n个被动的拖车组成。如图4-3所示给出了两种具有代表性的带拖车的轮式移动机器人的模型。图4-3带拖车的轮式移动机器人另外,还有使用六轮驱动的移动机器人,如图4-4所示是火星探测用漫游车的例子。图4-4 火星探测用漫游

54、车对于两驱动轮移动机器人、汽车式移动机器人,在无滑动运动的假设下,轮子与地面接触点的瞬时速度为零,为纯滚动运动,这时机器人可以向前或向后做直线、旋转运动,但不能横向运动,系统受有制约其速度的非完整约束,自由度为2,控制输入为驱动线线速度和转向角速度,对于带拖车的移动机器人,其位形由两个位置坐标和n1个车体的姿态角给定,系统不仅受有非完整约束,而且是一种典型的欠驱动系统。4.4 搅拌机器人小车的路径规划机器人在工作时首先需要确定环境信息。环境信息主要有结构化环境和非结构化环境,结构化环境是指作业环境全部信息都是已知的,而非结构化环境全部信息是全部未知或部分未知。对于结构化环境,全局地图的获取一般

55、是由人工编程输入、示教输入或者是传感器探测边界。对于非结构化环境,一般是由ccd摄像头、鱼眼镜头、gps获取环境信息图像,微处理器图像处理后可抽取环境的特殊信息。对于本课题中的机器人小车,其工作环境是圆形储浆罐,储浆罐的边界可以通过传感器探测边界得到,因此可以把它的环境信息分类为是结构化环境,并且环境是静态的。小车行走的目的就是为了把液体浓度搅拌均匀,避免沉淀物的形成,因此这就要求小车在整个储浆罐罐底行走并且效率尽可能高,轨迹要求有一定的规划,所以它的性能指标应该是遍历性和轨迹不重复性。同时要求机器人小车在遇到障碍物时(罐壁)时,要求能够判断其存在并按一定要求绕过它,利用机器人小车自身的传动检测机构和视觉信息,描绘环境特征(主要是圆形罐壁),并以此为基础对作业环境进行规划。1. 小车行走路径方案的确定要求本课题中机器人小车自动行走完成对储浆罐中浆液的搅拌作用,在圆形罐底行走路径可以有如图4.5所示几种方式:abroc (a)(b) (c)图4-5 行走路径方案分析上面所示三种行走路径方案,方案(b)明显存在几个重合行走点,但却存在行走不到的区域,因此此方案具有很大的缺陷;方案(c)同样存在(b)所示具有行走不到的缺点,而且它还存在小车走直线控制时进行直线差补较难的特点,而方案(a)行走路径是让小车从a点开始行走绕罐底最

温馨提示

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

评论

0/150

提交评论