您好,欢迎访问三七文档
课程设计报告学生姓名:朱玥学号:1015070141学院:机械工程学院班级:机械101题目:慧鱼机器人指导教师:职称:教授2013年12月29日陈国君目录1.绪论11.1课题背景21.2慧鱼机器人31.3走进实验室41.4按键式传感器51.5设计工作原理61.6慧鱼模型操作规程72.仿生机器人(迈克)82.1仿生机器人仿真示意图92.2仿生机器人仿真程序图示102.3仿生机器人结构简图113.仿生机器人(杰克)123.1仿生机器人基础模型133.2仿生机器人仿真图143.3仿生机器人结构简图153.4仿生机器人仿真程序框图164.仿生机器人(乔)175.1仿生机器人仿真模型185.2连线图和结构简图195.3仿生机器人仿真程序205.仿生机器人(吉姆)216.1仿生机器人仿真模型226.2仿生机器人仿真图236.3仿生机器人仿真程序246.任务分配和心得体会257.参考文献26慧鱼组合机器人的组装设计摘要:慧鱼创意组合模型是一种技术含量很高的工程技术类拼装模型,是展示科学原理和技术过程的理想教具。本设计是以德国慧鱼创意积木所组成的仿生模拟机器人为其基本架构,透过圈形式人机介面LLWin,经由智慧型微电脑介面板去驱动机器人,使机器人细部动作很容易达到我们需求,进而取代以往由硬体描述语言所驱动架构,通过慧鱼模型的组装,程序的编制,任务的完成,阐述机械机构之间的配合关系,各种传感器的安装和使用,以及软件程序的编制思维,实现对伺服电机,电磁线圈的控制,不但操作简易,更可使我们了解机械运作的原理。关键词:慧鱼组合模型;机器人;引言:由机器人的发展和快速广泛的被使用,可知科学家对于机器人的功能也相提高,除了超强的逻辑运算、记忆能力及具备类似的自我思考能力,另外在机器人的外表及内部结构,科学家更希望能模仿人类。对于外在资讯的选集,也透过各种感应器,企图达到类似人类各种触觉的功能,选集了外在环境的资讯,一旦外在环境起了改变,机器人一定要能随着变化,做出该有的反应动作,更新自己的资料库,达到类似人类学习的功能。本次研究即为移动机器人设计及其在控制器的实现,是说明当移动机器人在轨行动作中若遇到障碍物时会透过微动开关将讯息传回电路板中进行判断,再配合计数器的动作使机器人能避开障碍物并往下个路径前进,知道要到远的目标。无疑,自动化控制理论本来是要使机器人变聪明。但是如何实现呢?我们先用一个启发式实验进行说明。我们可能都观察过飞蛾趋光的特点,飞蛾找到光源,向那里飞去,即使非常近的距离,也绝不会拍打到光源。显然飞蛾之所以能够这样做,是因为它发觉光源,划出路线然后再向其扑去。这本领是基于这种昆虫自身具备的机敏的行为模式。现在我们将上述能力应用到一个技术系统中。先用光学传感器探测到光源,马达执行动作,这样,我们必须在发现信号和执行信号之间建立一个合理的连接,即程序。20世纪50年代,一位名叫沃特格雷(WalterGrey)的英国人将上述引人思考的实验付诸于实践。借助于几个简单的传感器,马达和电路,他创作出多种自动化动物,可以准确模仿出飞蛾的动作。左图所示的是“自动”海龟的复制品,展示在华盛顿的史密森博物馆里。鉴于上述的奇思妙想,我们也要为我们的机器人建立起类似的行为模式,并用程序来和机器人进行交流。但是我们为什么需要可移动机器人?让我们试着将“虚拟的飞蛾”的动作应用到技术装置上。首先,一个很简单的例子就是寻光。我们将一个光条粘在地上作为光源,把传感器面朝下并排放在一起,而非面向前。这样,如果是在仓库,移动机器人就会从中找到自己的行进路线。沿着这条线,还有一些特殊的信息采集点,如条形码,将引导机器人进行下一步的动作,比方说到达这些点时,抓取和放下货盘。事实上,这样的机器人系统到今天已经存在了。在很多大医院里,通常需要走很远的路来运送日常所需的消耗品,比如被单枕套等,让护理人员运输这些物资无疑是既耗时、耗财又费力的事情。当然,也大大减少了对病人照顾的时间。最近今年里,科学家们开始研究另一种本质上非常相近的动作形式,走或跑。开发出的机器人具备了用腿移动的能力。由布鲁塞尔皇家军事研究院研制的电气气动步行机器人“阿基里斯”(Achille)就是一个六足步行机器人的典型。头上和六条腿上分别都配备了照相机,阿基里斯能够机械的对提起或放下的障碍(物体或者坑)能够机械的做出反应。这种步行机器人能运用到各个地方,比如轮轨式车辆不可能通过的坎坷或松软的地带,它翻越障碍,攀爬楼梯,跨越壕沟进入诸如核电站、煤矿隧道等危险地带作业或者进行营救。1.2慧鱼机器人怎样用慧鱼创意模型的构件大家我们自己的机器人呢?传感器(如:接触传感器)和动力装置(如马达)是必不可少的,然后加上许许多多的机械部件,组成所需的模型。慧鱼ROBO移动机器人组为此提供了理想的模式。本设计是以德国慧鱼创意积木所组成的仿生模拟机器人为其基本架构,透过圈形式人机介面LLWin,经由智慧型微电脑介面板去驱动机器人,使机器人细部动作很容易达到我们需求,进而取代以往由硬体描述语言所驱动架构,不但操作简易,更可使我们了解机械运作的原理。1.3走进实验室先从一个简单测试安装来检查接口板和各个传感器的基本功能。然后,搭建出简易模型,让其具备特定的功用,再渐渐尝试越来越复杂的系统。你是不是觉得有时候编制自己的程序要么太难,要么太浪费时间?你可以先下载软件中提供的一些现成程序到接口板,控制机器人。该接口板的最重要的作用在于输入量的逻辑连接。这就需要程序来完成,程序决定输入数据和传感器信号如何处理并转换为适当的输出数据,电机控制信号等等。有了ROBO接口板,我们就有足够的计算能力来设计和处理最复杂的程序。搭建和最初控制机器人,是非常重要的环节,一定要格外认真才行。连接各个电气元件时一定要严格按照说明书操作,然后检查两三遍以确保准确无误。在进行机械构件搭接时,我们要特别注意连接的平滑度,尤其是齿轮与紧固件的连接,不要太用力。好了,现在让我们发挥自己无穷的创造力为机器人“谱写”新的动作程序啦!1.4按键式传感器(接触传感器)举例说明,将一个接触传感器接在数字输入口I1,观察一下当键按下去时,输入端状态框的变化。虽然极性在连接电机或接触传感器不起作用(充其量电机旋转方向错误),准确接通光电传感器是至关重要的。晶体管有红标的接点应连接红色接头,没有标注的接点连接绿色接头。第二个绿色接头要插在输入端AX的插孔中(靠近接口板边缘的那个孔),第二个红色的插头要插在靠近里面的AX的插孔中。(注意:连接光电传感器到数字输入端I1——I8,红色接头需插在紧靠接口板边的插孔中。现在,我们用一个手电来改变光电传感器光的亮度。这将改变AX蓝色状态条的读数。如果指示器从其最大值没有变动,那就得检查一下光电传感器的连接情况。如果即使手电筒灭掉,指示仍为零,那有可能是房间里的光太亮了。我们遮住光电传感器,状态条的位置就会变化。再回到红绿接线头上来:装配时,要红色接头接红线,绿色接头接绿线。当电路配线时必需极性正确的话,通常我们将红线作为正,绿线为负。这样,非常细心的配线,将使得线路走势更系统,更一目了然,自然更方便了我们排除故障。1.5设计工作原理机器人指的是可程式控制的机械,整体来说可分为两大部分,分别为机械架构及软体的控制的两大部分。(一)机械架构本设计移动机器人之机械构架采用德国慧鱼创意积木所组成,它的优点在于方便组装,能在设计阶段能起到一定的辅助作用,减少设计成本以及更好的观察到设计的可行性及其优缺点,以便更好改进设计中的缺点。一般机械所用到的零组件如齿轮、马达、光电开关等,都可以在慧鱼创意积木中找到,且功能毫不逊色。首先针对我们所需的机械架构做规划,收集所需用到之慧鱼创意积木零件,将其组装机械架构。该架构主要是由两个丝杆与一个马达连接,两丝杆再平均接上传动齿轮实现此仿生机器人的运动及其开关所组成,而这个开关主要用于判断机器人的开关及其运动方向。(二)软体控制程序的整体采用了主/从结构的编程方式,主要是为了解决多个不同频率的循环和循环之间的信息交互。程序中嵌入了并联机器人的反解模型及控制算法,采用全局变量、局部变量、共享变量等实现各程序模块之间及模块内部的信息交互,充分利用用户事件技术、通知或队列技术实现各界面之间的切换,为了避免诸如两个循环同时操作一个对象之类的竞争问题,采用了同步技术。因为程序比较大,所要反映的信息多,因此在程序的管理上,我们也充分利用了LabVIEW的高级编程技巧,如为了节省内存和清晰化程序框架及前面板,我们采用了动态VI控制技术,不但实现了子VI的即用即调,而且实现了多面板程序设计的动态载入和界面重用。面向机器人的轨迹控制与I/O逻辑控制的程序集合,如回零点、连续运行、单轴调整、轨迹曲线选择、系统自检等。该层软件一方面负责完成机器人各关节驱动电机的精确同步运动控制,实现末端执行器在操作空间中的精确轨迹;另一方面,该层软件还需要完成一组通用I/O的输入输出控制,实现对机构运动的过程控制以及对外围设备的协调控制等,以适应复杂的控制任务需要。驱动软件是实现单轴与多轴运动控制、D/A转换和硬件I/O控制的函数集合,包括轴配置、运动类型设置、电机运行和停止等操作函数。该层软件主要进行运动轴参数设置、电机加减速控制、起停控制、D/A转换和运动I/O的设置与控制等。该层的函数主要是控制板卡所带有的底层功能模块,可以用这些函数很方便的根据自己设定的控制方案编程实现上一级的核心控制软件层。LabVIEW图形化语言和LabVIEWRT、ControlDesignandSimulationBundle、LabviewSystemidentificationtoolkit,motionassistant等相关的NI工具包开发应用程序不但使得软件程序的开发效率大大提高,而且使得软件的功能齐全、人机界面友好。下面对多媒体定时器和外控线程的创建与工作作一简单说明。首先多媒体定时器作如下定义[5]:#defineWM_MAINPROCCTRL(WM_USER+1)//多媒体定时器的消息intTimerAccuracy=1//多媒体定时器精度UINTTimerID//多媒体定时器标志ON_MESSAGE(WM_MAINPROCCTRL,MainProcCtrl)//消息映射TimerID=timeSetEvent(100,1,(LPTIMECALLBACK)MMTimeProc,(DWORD)this,TIME_PERIODIC);//启动多媒体定时器多媒体定时器的回调函数为:voidCALLBACKMMTimeProc(UINTTimerID,UINTuMsg,DWORDdwUser,DWORDdw1,DWORDdw2){CSixDofCtrlDlg*pDlg=(CSixDofCtrlDlg*)dwUser;::PostMessage(pDlg-GetSafeHwnd(),WM_MAINPROCCTRL,0,0);}外控线程也首先进行定义CWinThread*pExterConThrd,*pNetThrd,*pHandleThrd,*pSendThrd;//定义线程CCriticalSectionDataSection;//数据缓冲区临界同步后调用下列函数启动外pExterConThrd=AfxBeginThread(ExterConProc,this,THREAD_PRIORITY_NORMAL);在外控线程中启动网络接收线程、数据处理线程、发送线程后,将外控主线程悬挂pExterConThrd-SuspendThread();只有接收到数据后,处理线程才开始执行操作;只有计算出新的液压缸控制信息后,计算机才会发送。而液压系统动作时间相对计算机运行来说是很长的,为了防止网络通讯、洗出滤波、运动学反解的等待,在创建网络接收线程的同时创建两个同步事件:HANDLEpEvent1,pEvent2;//事件pEvent1=CreateEvent(NULL,FALSE,FALSE,NULL);等待的线程可以通过调用WaitForSingleObject()
本文标题:慧鱼机器人课设报告
链接地址:https://www.777doc.com/doc-5677243 .html