版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
目录TOC\o"1-2"\h\z\u关键词:机器人;LPC2103;ATMEGA128;全向轮;组装炊 0炊 01前言炊 1在这种互相干扰不大、主要比拼速度及精度的竞赛中,制作的机器人越稳定,越高速,就越有可能取得比赛的胜利。本人参与设计的简易自动组装机器人就是参加该项比赛的机器人之一。炊 12011年亚太机器人大赛比赛主题与规则炊 12机器人创意设计与方案炊 22.1机器人一般组成炊 22.2本次机器人设计原则炊 32.3比赛策略炊 32.4研制概要炊 43自动组装机器人机械设计炊 43.1轮子和底盘的选择与设计炊 43.2升降机构的设计炊 6综上分析几种升降机构都可以实现任务要求,进行就效率和质量优劣分析可知道:炊 7直线轴承式的优点:简单,成本低廉。弊端:需要圆形的导轨,导轨过细则受力太小,过粗则较笨重。炊 7直线滑轨式的优点:精度高,可自制。弊端:价格昂贵,重量较重。炊 7丝杆传动的优点:简单,成本低廉,传动力大。弊端:传动缓慢,需要软件算法提高精度。炊 7同步带传动的优点:精度高,有瞬时传动比质量轻。弊端:价格昂贵,需要定制。炊 73.3夹取机构特性炊 7综上分析三种家去机构都能实现夹取、平稳性的设计需求。但是三者均有利弊:炊 8连杆机构的优点:制造方便、磨损较小、易自锁。弊端:设计复杂,精度不高、工作效率不高。炊 8铰链的优点:结构简单。弊端:无法自锁。炊 8凸轮机构的优点:实现复杂的运动要求、紧凑、设计方便。弊端:质量过大。炊 84机器人电路硬件选择炊 84.1cpu选择炊 81、ATmega128为基于AVRRISC结构的8位低功耗CMOS微处理器。产品特点:炊 8高性能、低功耗的8位微处理器炊 8先进的RISC结构炊 8133条指令–大多数可以在一个时钟周期内完成炊 932x8通用工作寄存器+外设控制寄存器炊 9全静态工作炊 9工作于16MHz时性能高达16MIPS炊 9只需两个时钟周期的硬件乘法器炊 9非易失性的程序和数据存储器炊 9128K字节的系统内可编程Flash炊 9寿命:10,000次写/擦除周期炊 9具有独立锁定位、可选择的启动代码区炊 9通过片内的启动程序实现系统内编程炊 9真正的读-修改-写操作炊 94K字节的EEPROM炊 9寿命:100,000次写/擦除周期炊 94K字节的内部SRAM炊 9多达64K字节的优化的外部存储器空间炊 9可以对锁定位进行编程以实现软件加密炊 9可以通过SPI实现系统内编程炊 9JTAG接口(与标准兼容)炊 9遵循JTAG标准的边界扫描功能炊 9支持扩展的片内调试炊 9通过JTAG接口实现对Flash,EEPROM,熔丝位和锁定位的编程炊 9外设特点炊 9两个具有独立的预分频器和比较器功能的8位定时器/计数器炊 9两个具有预分频器、比较功能和捕捉功能的16位定时器/计数器炊 9具有独立预分频器的实时时钟计数器炊 9两路8位PWM炊 96路分辨率可编程(2到16位)的PWM炊 9输出比较调制器炊 98路10位ADC炊 98个单端通道炊 97个差分通道炊 92个具有可编程增益(1x,10x,或200x)的差分通道炊 10面向字节的两线接口炊 10两个可编程的串行USART炊 10可工作于主机/从机模式的SPI串行接口炊 10具有独立片内振荡器的可编程看门狗定时器炊 10片内模拟比较器炊 10特殊的处理器特点炊 10上电复位以及可编程的掉电检测炊 10片内经过标定的RC振荡器炊 10片内/片外中断源炊 106种睡眠模式:空闲模式、ADC噪声抑制模式、省电模式、掉电模式、Standby模式以及扩展的Standby模式炊 10可以通过软件进行选择的时钟频率炊 10通过熔丝位可以选择ATmega103兼容模式炊 10全局上拉禁止功能炊 10I/O和封装炊 1053个可编程I/O口线炊 1064引脚TQFP与64引脚MLF封装炊 10工作电压炊 102.7-5.5VATmega128L炊 104.5-5.5VATmega128炊 10速度等级炊 100-8MHzATmega128L炊 100-16MHzATmega128炊 102、ARM系列芯片飞利浦公司的LPC2103是基于一个支持实时仿真的16/32位ARM7TDMI-SCPU的微控制器,并带有32kB嵌入的高速Flash存储器。128位宽度的存储器接口和独特的加速结构使32位代码能够在最大时钟速率下运行。对中断服务程序和DSP算法中性能要求严格的应用,这增加的性能比在Thumb模式下的性能超出多达30%。对代码规模有严格控制的应用,使用16位Thumb模式将代码规模降低超过30%,而性能的损失却很小。较小的封装和很低的功耗使LPC2103特别适用于访问控制和POS机等小型应用中;由于内置了宽范围的串行通信接口(范围从多个UART、SPI和SSP到两条TWI总线)和8kB的片内SRAM,多个32位和16位定时器、1个改良的10位ADC、所有定时器上输出匹配的PWM特性、以及具有多达13个边沿或电平触发的外部中断管脚的32条高速GPIO线,使这种微控制器特别适合工业自动化控制、电力电子技术应用、智能化仪器仪表及电机、马达伺服控制系统等炊 10LPC2103芯片的主要性能如下:炊 1116/32位ARM7TDMI-S微控制器,超小LQFP48封装。炊 112kB/4kB/8kB的片内静态RAM和8kB/16kB/32kB的片内Flash程序存储器。128位宽度接口/加速器可实现高达70MHz工作频率。炊 11通过片内boot装载程序实现在系统/在应用编程(ISP/IAP)。单个Flash扇区或整片擦除时间为100ms。256字节编程时间为1ms。炊 11嵌入式ICERT通过片内RealMonitor软件提供实时调试。炊 1110位A/D转换器提供8路模拟输入(每个通道的转换时间低至),以及特定的结果寄存器来最大限度地减少中断开销。炊 112个32位定时器/外部事件计数器(带7路捕获和7路比较通道)。炊 112个16位定时器/外部事件计数器(带3路捕获和7路比较通道)。炊 11低功耗实时时钟(RTC)具有独立的电源和特定的32kHz时钟输入。炊 11多个串行接口,包括2个UART(16C550)、2个高速I2C总线(400kbit/s)、SPI和具有缓冲作用和数据长度可变功能的SSP。炊 11向量中断控制器(VIC),可配置优先级和向量地址。炊 11多达32个通用I/O口(可承受5V电压)。炊 11多达13个边沿或电平触发的外部中断管脚。炊 11通过一个可编程的片内PLL(100us的设置时间)可实现最大为70MHz的CPU操作频率,其具有10MHz~25MHz的输入频率。炊 11片内集成振荡器与外部晶体的操作频率范围为1~25MHz。炊 11低功耗模式包括空闲模式、掉电模式和带有效RTC的掉电模式。炊 11可通过个别使能/禁止外围功能和外围时钟分频来优化额外功耗。炊 11通过外部中断或RTC将处理器从掉电模式中唤醒。炊 11综上分析两种芯片都能完成比赛要求但在运算速度、定位精确和可靠性等要求上ATMEGA128与LPC2103ARM系列比较没有任何优势,为了在复杂的赛场上更稳定的发挥和赛后用于教育或工业方面的改装,我选择芯片LPC2103。炊 114.2机器人主控制板结构及说明炊 124.2.1LPC2103电源模块炊 12图5电源模块炊 12Fig.5PowerModule炊 124.2.2最小系统炊 124.2.3人机交互界面炊 12功能:进入待命模式,执行其他命令都可终止待命模式炊 17炊 17功能:选择4行中的任一行作反白显示,并可决定反白的与否炊 17炊 17功能:SL=1;脱离睡眠模式SL=0;进入睡眠模式炊 17炊 17功能:RE=1;扩充指令集动作RE=0;基本指令集动作G=1;绘图显示ONG=0;绘图显示OFF炊 17炊 17功能:SR=1:AC5~AC0为垂直卷动位址;SR=0:AC3~AC0写ICONRAM位址;炊 17炊 17功能:设定GDRAM位址到位址计数器(AC)炊 175、液晶中文显示模块12864的初始化过程炊 17写指令C0H:设置显示初始行;炊 17写指令3FH:开显示;炊 174.2.4主控板硬件实物图炊 17下图为实物图;具体的设计的原理图和PCB见附图。炊 18炊 18图10控制板实物图炊 18Fig.10PhysicalMapPanel炊 18此电路板为《力天电子》LPC2103学习板开发。本设计LPC2103开发板类似于此电路板(本设计完稿时电路板在制作中,无实物),其硬件资源丰富包括:LPC最小系统、适配器电源座、复位电路、独立的按键、RS232和串口MAX232、小12864液晶接口、以及20PJTAG仿真调试接口等。炊 184.3电机伺服器控制炊 18在这次的设计中,采用了DCS810全数字直流伺服驱动器采用专用运动控制DSP和高效MOSFET等先进技术。控制指令信号与步进驱动器兼容,用户不用更换控制器,就可将所用的步进驱动升级为全数字直流伺服驱动。由DCS810组成的小功率运动控制系统在速度、精度、噪声和低速平稳性等方面达到甚至超越数字式交流伺服系统,而系统成本远低于交流伺服。其体积小巧、安装方便、可靠性高、调试简单。用户可通过雷赛ProTuner调试软件、文本显示器或STU伺服调试器轻松实现系统参数整定和保存。炊 18炊 18炊 18炊 18炊 19炊 19炊 19图11伺服器炊 19Fig.11Server炊 191、适用范围炊 19适合驱动有刷、永磁直流伺服电机,空心杯永磁直流伺服电机,力矩电机;炊 19最大连续电流10A,最大峰值电流20A;炊 19直流电源+12~38V;炊 19功率400瓦以内,过载能力达800瓦;炊 19速度、位置的四象限控制。炊 192、主要功能炊 19输入模拟信号进行速度控制;炊 19输入PWM信号进行速度控制;炊 19通过RS232口进行速度控制;炊 19通过RS232口进行位置控制;炊 19输入脉冲、方向信号进行步进模式控制;炊 20外部零位信号输入;炊 20外部制动信号输入;炊 20通过RS232实现PC控制、参数调整、在线监测;炊 20实时读取驱动器内部温度;炊 20过流、过载、过压、欠压保护;炊 20温度保护;炊 20超调、失调保护,动态跟踪误差保护。炊 20炊 22炊 224.4编码盘采样炊 231、编码盘的分类炊 23从结构类型上讲,编码盘可分为:接触式、电磁式和光电式,接触式的优点是:结构简单,体积小,输出信号不需放大。缺点是:有电刷磨损现象,使用寿命短。电磁编码盘有寿命长,传输高等优点,但是在低速状态效果不佳,而光电式编码盘没有磨损寿命长,精度高缺点是价格高。这次机器人的设计中所使用的编码盘为光电式编码盘。炊 232、编码盘的工作原理炊 244.5光电传感器炊 241、光电传感器工作原理炊 25不同所制成的光学测控系统是多种多样的,按光电元件(光学测控系统)输出量性质可分二类,即模拟式光电传感器和开关式光电传感器.模拟式光电传感器是将被测量转换成连续变化的光电流,它与被测量间呈单值关系.模拟式光电传感器按被测量(检测目标物体)方法可分为透射(吸收)式,漫反射式,遮光式(光束阻档)三大类.所谓透射式是指被测物体放在光路中,恒光源发出的光能量穿过被测物,部份被吸收后,透射光投射到光电元件上;所谓漫反射式是指恒光源发出的光投射到被测物上,再从被测物体表面反射后投射到光电元件上;所谓遮光式是指当光源发出的光通量经被测物光遮其中一部份,使投射刭光电元件上的光通量改变,改变的程度与被测物体在光路位置有关.炊 251、光电传感器的分类炊 255主控制板程序设计炊 26在本系统中,ARM7的控制程序用IAREmbeddedWorkbench编写的。炊 265.1ARM主程序流程图炊 26在本系统中ARM7的主要工作是:炊 26(1)人机交互界面,键盘输入和12864液晶显示来设定比赛相关参数灵活选择赛时程序;炊 26(2)输出三路PWM信号,通过伺服器控制电机的运动状态;炊 26(3)编码盘信号采样,全场定位;炊 26(4)光电传感器采样,作为启停信号;炊 26(5)输出PWM信号,控制舵机实现机械手臂的运动。炊 27图16主流程图炊 27Fig.16MainFlow炊 27炊 27炊 27图17方案一流程图炊 27Fig.17FlowChartForOne炊 27炊 27炊 28图18方案二流程图炊 28Fig.18FlowChartForTwo炊 285.2PWM的产生炊 285.2.1软件生成PWM炊 28软件PWM产生是通过软件给一个或几个I/O口赋值为高电平然后延迟一定时间后转换为低电平以此循环,延迟时间决定该脉冲信号的频率,这样做的好处就是程序设计简单,对于初学者来说简单明了,这样我们使用的循环能根据开发者要求立刻跳出,能方便快捷的对脉冲个数进行控制,如果要改变占空比则改变两个延迟的时间。具体操作如下,如下程序GPIO017口发送了100个频率为1K的脉冲炊 28#include"inc\config.h"炊 28炊 28/*************系统初始化***********/炊 28voidSys_Init(void)炊 28{炊 28//使用GPIO功能,将所有引脚链接到GPIO炊 28PINSEL0=0X00000000;炊 28PINSEL1=0X00000000;炊 28IO0DIR=1<<17;//设定GPIO引脚方向炊 28IO0SET=1<<17;//初始化IO电平炊 29}炊 29炊 29/****************延时************/炊 29voidDelay(set)炊 29{炊 29inta;炊 29a=set;炊 29while(a--);炊 29}炊 29炊 29/***********主函数**************/炊 29voidmain(void)炊 29{炊 29intI;炊 29Sys_Init();//初始化炊 29For(i=100,i>0,i--)炊 29{炊 29IO0CLR=1<<17;//低电平打开GPIO17炊 29Delay(5000);炊 29IO0SET=1<<17;//高电平关闭GPIO17炊 29Delay(5000);炊 29}炊 29}炊 29但是这种软件PWM的方式将占用大量的CPU资源,使得CPU在处理其他事件的时候有明显的性能下滑现象。炊 295.2.2硬件生成PWM炊 29硬件的PWM产生是由ARM的事件管理器中自带的定时器来控制,如下图定时器开始后会不停的计数,从0加到最大值后返回0继续计数,计数器增加的快慢由定时器分频器的值来决定,它把CPU的时钟频率分频后使计数器的累加加快或减慢。这时我们设定一个比较值与之匹配,当计数器累加到这个值时就自动递减,递减到0后重复前面操作。当相应的IO口被设定为使用硬件功能时我们设定其电平跳变寄存器,让这个IO口在计数匹配时电压自动跳变:(1)由高到底(2)由低到高。这样就可以得到一个可以调整频率的脉冲信号。炊 29图19定时器中断炊 30Fig.19TimerInterrupt炊 30#include"../inc/config.h"炊 30constunsignedcharTABLE[3]={2,4,8};//占空比改变的值放到一个数组里炊 30炊 30/**************************延时**************************/炊 30voidDelay(unsignedintdly)炊 30{unsignedinti;炊 30炊 30for(;dly>0;dly--)炊 30for(i=0;i<5000;i++);炊 30}炊 30炊 30voidPLL_Init(void)炊 30{炊 30/*设置系统各部分时钟*/炊 30PLLCON=1;炊 30#if((Fcclk/4)/Fpclk)==1炊 30VPBDIV=0;炊 30#endif炊 30#if((Fcclk/4)/Fpclk)==2炊 31VPBDIV=2;炊 31#endif炊 31#if((Fcclk/4)/Fpclk)==4炊 31VPBDIV=1;炊 31#endif炊 31#if(Fcco/Fcclk)==2炊 31PLLCFG=((Fcclk/Fosc)-1)|(0<<5);炊 31#endif炊 31#if(Fcco/Fcclk)==4炊 31PLLCFG=((Fcclk/Fosc)-1)|(1<<5);炊 31#endif炊 31#if(Fcco/Fcclk)==8炊 31PLLCFG=((Fcclk/Fosc)-1)|(2<<5);炊 31#endif炊 31#if(Fcco/Fcclk)==16炊 31PLLCFG=((Fcclk/Fosc)-1)|(3<<5);炊 31#endif炊 31PLLFEED=0xaa;炊 31PLLFEED=0x55;炊 31while((PLLSTAT&(1<<10))==0);炊 31PLLCON=3;炊 31PLLFEED=0xaa;炊 31PLLFEED=0x55;炊 31}炊 31/************************主函数***************************/炊 31voidmain()炊 31{炊 31unsignedchari;炊 31PINSEL0=0x00000000;//管脚连接到GPIO炊 31炊 31PLL_Init();//PLL初始化炊 32炊 32T3PWMCON=0x01;//使能PWM模式炊 32T3PR=9;//9+1个Fpclk,TC增加一次炊 32炊 32T3MCR=0x1<<7;//当MR2和TC相等时,TC复位炊 32T3MR2=Fpclk/1000;//PWM的时钟频率为APB时钟频率的1/1000炊 32T3MR0=T3MR2/10;//占空比为90%炊 32炊 32T3TCR=0x02;//定时计数器复位炊 32T3TCR=0x01;//定时器使能炊 32炊 32while(1)炊 32{炊 32for(i=0;i<3;i++)炊 32{炊 32T3MR0=T3MR2*TABLE[i]/10;//改变占空比炊 32Delay(1000);炊 32}炊 32}炊 32}炊 32这样做的好处是节约了大量的CPU资源,可以使用这些资源做其他的操作和判断,从而提高了CPU的效率。炊 32炊 3212864中文液晶显示模块(后面简称12864)能够显示汉字、图片、数字等,对于12864的程序设计主要有几个子函数的设计,包括:初始化、数据发送、发送一个字节数据、发送一个字节命令、延迟等子函数。炊 32炊 32#include"..\inc\config.h"炊 32/********************************************************************炊 32*名称:MSpiIni()炊 32*功能:初始化SPI接口,设置为主机。炊 33******************************************************************/炊 33voidMSpiIni(void)炊 33{SPI_SPCCR=0x52;//设置SPI时钟分频炊 33SPI_SPCR=(0<<3)|炊 33(1<<4)|炊 33(1<<5)|炊 33(0<<6)|炊 33(0<<7);//设置SPI接口模式,MSTR=1,CPOL=1,CPHA=0,LSBF=0炊 33}炊 33/********************************************************************炊 33*名称:MSendData()炊 33*功能:向SPI总线发送数据。炊 33*入口参数:data待发送的数据炊 33*出口参数:返回值为读取的数据炊 33********************************************************************/炊 33voidMSendData(unsignedchardata)炊 PAGEREF
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 职业理想 课件
- 2024年湖南省长沙市中考生物真题卷及答案解析
- 爱迪生课件儿童
- 西京学院《微电网技术及应用》2022-2023学年期末试卷
- 北师大小学数学六年级上《分数混合运算(三)》教程
- 中等职业学校教师教育教学水平能力测试成绩单附件2
- 西京学院《电工电子学》2022-2023学年期末试卷
- 西华师范大学《中学历史课程标准解读与教材分析》2022-2023学年第一学期期末试卷
- 如何提高 课件
- 西华师范大学《计算思维》2021-2022学年期末试卷
- 海康2023综合安防工程师认证试题答案HCA
- 跌倒坠床PDCA循环管理降低住院患者跌倒坠床发生率
- 【校园快递管理系统的设计与实现(论文)12000字】
- 档案工作管理情况自查表
- 竖向设计图课件
- WinCCflexible的传送操作HMI设备设置入门
- 三宝屯污水处理厂三期改扩建工程项目环境影响报告
- 大学生创新创业教育智慧树知到答案章节测试2023年湖南铁路科技职业技术学院
- 机电一体化说专业比赛
- (国开电大)专科《市场营销学》网上形考任务4试题及答案
- 2023年海口市事业单位招聘考试《公共基础知识》题库及答案解析
评论
0/150
提交评论