版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程设计基于“创意之星”的四足爬虫壁障机器人)一、课程设计目的:了解一个机器人的基本组成部分及结构了解并掌握舵机的调整方法通过编程使机器人具有基本的智能二、课程设计内容I•系统简介⑴创意之星简介:图一:创意之星博创科技推出的最新UP-InnoSTAR创意之星机器人套件产品,以替换上一代''创意之星〃产品。该套件是一套用于开展机器人创新实验的模块化机器人套件。分为入门版、标准版和高级版,并有多种配件可选购。创意之星机器人套件的总体特点类似LEGOMindstormsNXT套件,都是具备多种基本“积木”构件的模块化零件套装,包括多种数百个结构零件,一个控制器,多个电机、舵机执行器,多种传感器,以及电池、电缆等附件。用这些“积木”可以搭建出各种发挥想象力的机器人模型来。创意之星机器人套件主要为创作机器人而设计。具备32位520MHz的处理器,可处理视频、语音、大容量存储;支持最多254个CDS5500总线式舵机(也可作减速电机使用,指令兼容Robotis的DynamixelAX12+),并同时具备多个I/O和A/D转换器,以及USB、WiFi等端口。另外,机器人的结构件和创新的连接方式专为创作机器人而设计,连接刚度和结构强度不逊色于铝合金构件,并且连接非常方便。
(2)控制器:屈-畑恿如口垃R5,b;iJ*?BlFSiMr(1”USBportLS&呼空 冲拟聃逬扣口ZAnglesInput]机器人從桂抹口1~屈-畑恿如口垃R5,b;iJ*?BlFSiMr(1”USBportLS&呼空 冲拟聃逬扣口ZAnglesInput]机器人從桂抹口1~吕RejtM日呃负⑴口|e&穷遞拒示P<iiwhLE,D &抚示Stetirg对吒舵趴按口】~邸Rj匚£ervh.l~^__ ”§饕胆g_凹监r_Swi_E0匸Pov*ei'AdapierJt电醤吊Jf目!att,□•呵中电r肓删tl岀型£QUT更丸风樹人MCCLNHOCIj/QPgrt^U图二:MultiFLEX2控制器MultiFLEX2控制器是一款专为智能机器人和小型智能设备设计的多功能控制器,适合作为为智能机器人的主控制器。它具备以下功能:具备520MHz、32位的高性能嵌入式处理器和Linux操作系统,运算处理能力强大,而功耗只有2瓦,尺寸只有11厘米X7厘米,重不到250克;控制直流电机(须配合BDMC系列伺服驱动器),控制舵机(包括所有的传统航模舵机、博创的机器人舵机、韩国AX12+等机器人舵机);调速、位置控制、力矩控制;可控制多达64路电机/舵机;连接各种传感器。通过20个数字/模拟量的输入/输出端口,可以连接数百种传感器,采集传感器数据并处理、决策;可连接摄像头,实现人联识别、颜色识别、形状识别等智能特性;可实现中文语音识别和语音合成,非常适合家庭服务机器人、教育娱乐机器人和特种服务机器人使用;具备RS422总线、USB总线、CAN总线和无线以太网(WiFi),市场上的各种功能模块,例如U盘、网络、视频监控系统、电子罗盘、GPS等设备,均可以直接连接到这款控制器上;(3)NorthSTAR 图形化软件:目前来说,阻碍机器人技术普及和大规模发展的主要因素有两个,一个是硬件没有统一标准,另一个是各种机器人都有自己独立的软件,无法通用。假设A厂商和B厂商都生产硬件类似的扫地机器人。目前,如果要将A机器人的功能移植到B机器人,除了编写程序之外别无他法。而对比目前巨大的PC市场,会发现如果A、B两个厂商生产的是PC机,那么只需要简单地把相应的程序拷贝过去就可以实现同样的功能。这是PC机市场能够发展到今天的规模的重要原因,即软件通用化。在当前机器人硬件标准不统一的阶段,博创科技为提高机器人软件的通用性,降低开发难度,推出了NorthSTAR图形化机器人开发环境。包括以下三个部分的功能:用图形化、可视化的方式给机器人编程,同步生成C语言代码,在后台编译、并下载到机器人控制器上执行;集成3D仿真。可进行动作仿真、步态及路径规划等。仿真数据能输入图形化编程
环境;集成实时、可视化数据采集与显示。类似虚拟示波器的功能,能在机器人运行的时候实时监控机器人各部分的数据,并用波形的方式显示在PC机上。图三:北极星软件II•爬行机器人设计及组装机器爬虫的结构组装如下图所示:1良■忡WItLJ-l區生彗裔聲若tn厂1良■忡WItLJ-l區生彗裔聲若tn厂iWKS—机审.2—n阳住席・就■事叫轉■一图四:爬虫机器人(1)机器爬虫每个腿部构型由2个基本构型B,1个L1-1,一个L3-1以及相应的连接件构成。四只腿两两对称,组装的时候需注意。机器爬虫的头部构型由1个基本构型B,2个红外传感器,1个L3-3,2个V2-2以及相应的连接件构成。机器爬虫控制盒由2个电路板底座,6个U1-2-1,1块电路板以及相应的连接件构成。整个机器爬虫由1个头部构型,4个腿部构型,1个控制盒,1个支撑架,1个L5-l,l个电池组以及相应的连接件构成。建议腿部与躯干用螺钉连接以保证机体的稳定性。组装好后的机器爬虫如下图所示:DOF4DOF5D0F6图五:爬虫机器人(2)由于两个红外传感器平行不利于分辨光源方向,所以我们要对机器爬虫的头部进行改装改装的机器人头部如下所示:图六:摄像头改装DOF4DOF5D0F6图五:爬虫机器人(2)由于两个红外传感器平行不利于分辨光源方向,所以我们要对机器爬虫的头部进行改装改装的机器人头部如下所示:图六:摄像头改装机器人头部由1个U1-2-1,—个V2-2,两个D8x6轮轴,两个红外传感器以及一些连接螺钉装配而成,两传感器之间呈大概30度夹角(这样更有利于辨别光源方向)。改装后的机器爬虫如下所示:图七:整体模型四只腿中八个舵机与控制卡的连接顺序还是和前面的四足爬虫一样。头部的左、右(以爬虫为基准的左右)光强传感器分别连接至控制卡的ADO和AD1接口上。在实际安装中为了加强其壁障能力又进行了进一步修改,传感器数量改为4个,分布如图:图八:摄像头实际设置
图:图八:摄像头实际设置皿•程序设计(1)逻辑分析:总体来讲,机器人的壁障行为应该细分为发现障碍、躲避障碍等基本行为,在两个基本行为之中又夹杂着若干的逻辑判断,其具体分析如下问所述:器爬虫开机复位后,机器人默认为向前爬向,其四个传感器分为两种:内侧的两个为一组,外侧的两个为一组。首先对内侧的两个红外传感器进行判断,如果两个中任意一个有信号,按照上图的传感器布局可以发现此证明机器人距障碍物已太近,需要后退规避。当中间两个传感器均无信号时,在对外侧的两个传感器进行判断,均无信号时机器人前进,均有信号时机器人后退,右侧有信号左侧无信号时左转,反之右转。实际逻辑结构如下图:图九:最终逻辑图在上图中,第一个IF实际逻辑结构如下图:图九:最终逻辑图在上图中,第一个IF选择为内侧两个传感器的判断,之后的3个IF判断为外侧的两个传感器的判断。2)程序代码:#include"Apps/SystemTask.h"uint8SERVO_MAPPING[10]=#include"Apps/SystemTask.h"uint8SERVO_MAPPING[10]=10);{1,2,3,4,5,6,7,8,9,10}; MFSetPortDirect(0x00000FF0);intmain()MFSetServoMode(1,0);{MFSetServoMode(2,0);intio0=0;MFSetServoMode(3,0);intio1=0;MFSetServoMode(4,0);intio2=0;MFSetServoMode(5,0);intio3=0;MFSetServoMode(6,0);MFInit();MFSetServoMode(7,0);MFSetServoMode(8,0);MFSetServoPos(4,512,512);MFSetServoPos(5,512,512);MFSetServoPos(6,512,512);MFSetServoPos(7,512,512);MFSetServoPos(8,512,512);MFSetServoPos(9,512,512);MFSetServoPos(10,512,512);MFServoAction();DelayMS(1000);while(1){io0 =MFGetDigiInput(0);io1 =MFGetDigiInput(1);io2 =MFGetDigiInput(2);io3=MFGetDigiInput(3);if((io1==0)||(io2==0)){//后退MFSetServoPos(1,440,512);MFSetServoPos(2,195,512);MFSetServoPos(3,649,512);MFSetServoPos(4,196,512);MFSetServoPos(5,359,512);MFSetServoPos(6,190,1023);MFSetServoPos(7,675,512);MFSetServoPos(8,189,512);MFSetServoPos(9,512,512);MFSetServoPos(10,512,512);MFServoAction();DelayMS(300);MFSetServoPos(1,340,302);MFSetServoPos(2,195,300);MFSetServoPos(3,580,300);MFSetServoPos(4,196,300);MFSetServoPos(5,459,302);MFSetServoPos(6,190,300);MFSetServoPos(7,375,908);MFSetServoPos(8,512,978);MFSetServoPos(9,512,300);MFServoAction();DelayMS(300);MFSetServoPos(1,640,908);MFSetServoPos(2,512,960);MFSetServoPos(3,449,396);MFSetServoPos(5,559,302);MFSetServoPos(7,475,302);MFSetServoPos(8,189,300);MFServoAction();DelayMS(300);MFSetServoPos(1,640,300);MFSetServoPos(2,195,960);MFSetServoPos(3,449,300);MFSetServoPos(5,559,300);MFSetServoPos(7,475,300);MFServoAction();DelayMS(300);MFSetServoPos(1,602,300);MFSetServoPos(2,195,300);MFSetServoPos(3,749,908);MFSetServoPos(4,512,956);MFSetServoPos(5,659,302);MFSetServoPos(7,522,300);MFServoAction();DelayMS(300);MFSetServoPos(3,749,300);MFSetServoPos(4,196,956);MFSetServoPos(5,659,300);MFServoAction();DelayMS(300);MFSetServoPos(1,440,490);MFSetServoPos(3,649,302);MFSetServoPos(4,196,300);MFSetServoPos(5,359,908);MFSetServoPos(6,512,975);MFSetServoPos(7,675,463);MFServoAction();DelayMS(300);}else{if((io0==1)&&(io3==1)){//前进MFSetServoPos(1,640,512);MFSetServoPos(2,195,512);MFSetServoPos(3,349,512);MFSetServoPos(4,196,1023);MFSetServoPos(5,559,512);MFSetServoPos(6,190,512);MFSetServoPos(7,475,512);MFSetServoPos(1,340,908);MFSetServoPos(2,512,960);MFSetServoPos(3,383,300);MFSetServoPos(4,196,300);MFSetServoPos(5,459,302);MFSetServoPos(6,190,300);MFSetServoPos(7,375,302);MFSetServoPos(8,189,300);MFSetServoPos(9,512,300);MFSetServoPos(10,712,900);MFServoAction();DelayMS(300);MFSetServoPos(1,340,300);MFSetServoPos(2,195,960);MFSetServoPos(3,449,300);MFSetServoPos(5,459,300);MFSetServoPos(7,375,300);MFSetServoPos(10,312,900);MFServoAction();DelayMS(300);MFSetServoPos(1,440,302);MFSetServoPos(2,195,300);MFSetServoPos(3,549,302);MFSetServoPos(5,359,302);MFSetServoPos(7,675,908);MFSetServoPos(8,512,978);MFSetServoPos(10,712,900);MFServoAction();DelayMS(300);MFSetServoPos(1,440,300);MFSetServoPos(3,549,300);MFSetServoPos(5,359,300);MFSetServoPos(7,675,300);MFSetServoPos(8,189,978);MFSetServoPos(10,312,900);MFServoAction();DelayMS(300);MFSetServoPos(1,540,302);MFSetServoPos(3,649,302);MFSetServoPos(10,312,900);MFServoAction();DelayMS(300);MFSetServoPos(1,640,302);MFSetServoPos(3,349,908);MFSetServoPos(4,512,956);MFSetServoPos(5,559,302);MFSetServoPos(6,190,300);MFSetServoPos(7,475,302);MFSetServoPos(10,712,900);MFServoAction();DelayMS(300);}else{if((io0==0)&&(io3==0)){//后退(与上后退相同故省略)}else{if(io0==0){//左转MFSetServoPos(1,540,512);MFSetServoPos(2,195,512);MFSetServoPos(3,749,512);MFSetServoPos(4,196,512);MFSetServoPos(5,459,512);MFSetServoPos(6,190,512);MFSetServoPos(7,375,512);MFSetServoPos(8,189,1023);MFSetServoPos(9,512,512);MFSetServoPos(10,512,512);MFServoAction();DelayMS(300);MFSetServoPos(1,640,302);MFSetServoPos(2,195,300);MFSetServoPos(3,449,908);MFServoAction();DelayMS(300);MFSetServoPos(1,640,300);MFSetServoPos(3,449,300);MFSetServoPos(4,196,956);MFSetServoPos(5,559,300);MFSetServoPos(7,475,300);MFServoAction();DelayMS(300);MFSetServoPos(1,340,908);MFSetServoPos(2,512,960);MFSetServoPos(3,549,302);MFSetServoPos(4,196,300);MFSetServoPos(7,675,605);MFServoAction();DelayMS(300);MFSetServoPos(1,340,300);MFSetServoPos(2,195,960);MFSetServoPos(3,549,300);MFSetServoPos(7,675,300);MFServoAction();DelayMS(300);MFSetServoPos(1,440,302);MFSetServoPos(2,195,300);MFSetServoPos(3,649,302);MFSetServoPos(5,359,605);MFSetServoPos(6,512,975);MFServoAction();DelayMS(300);MFSetServoPos(1,440,300);MFSetServoPos(3,649,300);MFSetServoPos(5,359,300);MFSetServoPos(6,190,975);MFServoAction();DelayMS(300);MFSetServoPos(1,540,302);MFSetServoPos(3,749,302);MFSetServoPos(5,459,302);MFSetServoPos(6,190,300);MFSetServoPos(7,375,908);MFSetServoPos(8,512,978);MFServoAction();DelayMS(300);}else{//右转MFSetServoPos(1,540,512);MFSetServoPos(2,195,1023);MFSetServoPos(3,749,512);MFSetServoPos(4,196,512);MFSetServoPos(10,512,512);MFServoAction();DelayMS(300);MFSetServoPos(1,440,302);MFSetServoPos(2,195,300);MFSetServoPos(3,649,302);MFSetServoPos(4,196,300);MFSetServoPos(5,359,302);MFSetServoPos(6,190,300);MFSetServoPos(7,675,908);MFSetServoPos(8,512,978);MFSetServoPos(9,512,300);MFSetServoPos(10,512,300);MFServoAction();DelayMS(300);MFSetServoPos(1,440,300);MFSetServoPos(3,649,300);MFSetServoPos(5,359,300);MFSetServoPos(7,675,300);MFSetServoPos(8,189,978);MFServoAction();DelayMS(300);MFSetServoPos(1,340,302);MFSetServoPos(3,549,302);MFSetServoPos(5,659,908);MFSetServoPos(6,512,975);MFSetServoPos(7,575,302);MFSetServoPos(8,189,300);MFServoAction();DelayMS(300);MFSetServoPos(1,340,300);MFSetServoPos(3,549,300);MFSetServoPos(5,659,300);MFSetServoPos(6,190,975);MFSetServoPos(7,575,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 长方体的认识-明亮的色调-简约扁平
- 2026年环保型农业的发展与实践
- 2026年自动化控制系统中的预测性维护
- 2026年过程装备的智能节能控制系统
- 2026年生产线仿真系统的设计与实现
- 2026年环境伦理与人类生存发展
- 体检科健康宣教:科学体检与健康管理指南
- 2026年智能制造背景下的自动化设备集成
- 2026年交通设施养护与安全管理
- 2026年教育投放数字化转型协议
- 2024云南省委党校研究生招生考试真题(附答案)
- 诺如病毒考试题及答案
- DB45∕T 2479-2022 一般固体废物填埋场水文地质工程地质勘察规范
- 岗位安全责任清单意义
- 2025年焊工(技师)考试练习题库(附答案)
- 学术自由与责任共担:导师制度与研究生培养制的深度探讨
- 法拍司辅内部管理制度
- 道路损坏修缮协议书模板
- 2025年上海市各区高三二模语文试题汇编《现代文一》含答案
- 公司履约保函管理制度
- 全国民用建筑工程设计技术规范
评论
0/150
提交评论