基于ATmega32的遥控采摘机器人设计
扫描二维码
随时随地手机看文章
摘要:针对机器视觉采摘机器存在的技术不成熟,成本过高等不足,提出采用人工操控的半自动采摘技术,并进行了探索研究。设计了一款模拟采摘机器人,机器人以履带底盘为基座,三自由度机械臂,红外遥控操作。硬件电路以ATmega32为系统控制核心,采摘机器人的动作采用BL35P12为核心红外遥控控制。系统软件基于AVR Studio4开发环境,实现对机械臂运动的全方位精确控制。采摘机器人采用模块化设计,抓取速度快,成本低,易于实现,可扩展性强。
关键词:采摘机器人;三自由度;ATmega32;红外遥控
目前采摘机器人研究重点大多集中在视觉系统对果实目标的识别和定位上,利用摄像头获取果实图片信息,通过复杂的图像信号处理算法,编制程序进行逻辑处理,实现果实判断,发出采摘命令。这种方式机器人具有较好的自动识别的能力,并且能够自动采摘,无需人工操作,是农业机器人最理想的方式,但目前相关技术不够成熟,投入较高。本设计采用人机协作方式,即采用人工判别果实,机器人负责摘取。通过人工现场观察判断,使用无线遥控远程控制机器人动作。这种方式现有技术比较成熟,使得机器人研发周期缩短,造价成本低,虽然不能够完全代替人劳动,但能够降低人的劳动强度,对于目前中国农业的水平,能够更好的普及。
针对以上存在的问题,本文设计了一款基于ATmega32的模拟采摘机器人,能实现人工操作的机械采摘,通过红外遥控控制机械臂使末端夹持器伸到目标果实所在位置,进行抓取工作,完成采摘任务。
1 机器人总体方案设计
机器人设计融合了机械制造技术,电子电路技术,自动控制和传感器检测技术,以及软件开发编程等。本文中机器人的传感器和红外遥控器的信号输人到主控制板,主控制板处理后输出控制三自由度机械臂和履带底盘结构的机器人,红外遥控机械臂,实现抓取果实。机器人结构框图如图1所示。
机器人的控制模式为无线控制机器人采用直接操纵方式,操纵者通过遥控器向远端发送操纵指令。控制机器人的车体的前向运动,左右转向,三自由度的机械臂的运动,及夹持器旋转、张与合。文中设计的机器人具有结构简单,功能丰富,可扩展性强等特点。
2 机械装置设计
遥控采摘机器人机械装置图如图2所示,主要包括两部分:两自由度的移动载体和三自由度带夹持器的机械臂。机器人主体使用网孔铝板材料和工程塑料组装成机器人机体,结构轻巧,方便在车体上增加模块。移动载体为履带式底盘,加装了主控电路板、采摘辅助装置、多种传感器、电源模块等。履带底盘每一侧采用双履带结构,使用4台FAULHABER电机驱动。机械臂固定在履带式行走机构上,机械臂上的伺服电机使用扭矩10 kg/cm的MG995金属齿轮舵机,机械臂上伺服电机1控制夹持器的张开和合并,使得夹持器能够完成采摘和剪切等任务。伺服电机2控制夹持器的左右旋转。伺服电机3控制小臂上下运动,伺服电机4通过连杆和伺服电机5联合驱动大臂上下运动。
3 硬件电路设计
由于机器人需要处理众多传感器输入数据,同时控制众多电机,这对微控制器提出苛刻要求。基于开放性,可靠性,实时性等方面考虑,本设计采用高性能AVR处理器--ATmega系列,选择芯片型号为ATmega32 16AU作为控制核心。ATmega32 16AU,具有44个Pin,是32KB系统内可编程Flash的8位的高性能、低功耗微控制器。ATmega32是基于增强的AVR RISC结构的低功耗8位CMOS微控制器。
ATmega32的数据吞吐率高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。其内核具有丰富的指令集和32个通用工作寄存器。所有的寄存器都直接与算术逻辑单元(ALU)相连接,使得一条指令可以在一个时钟周期内同时访问2个独立的寄存器。其具有先进的RISC结构,131条指令大多数指令执行时间为单个时钟周期,32个8位通用工作寄存器,全静态工作,工作于16 MHz时,性能高达16 MIPS,只需2个时钟周期的硬件乘法器。
3.1 控制主板设计
基于ATmega32主板电路由电源模块,晶振模块,通信模块,电机驱动模块,遥控编码模块和输入输出部分等。主板电路上设计了8个输入接口、8个输出接口、4个直流电机输出接口,ISP接口和程序下载接口、IR红外遥控接收头接入端口及IR红外遥控器通道设置拨码开关,各个模块接口采用插拔式,可便于各种模块的使用和功能扩展。输入接口以多种传感器,检测信号输入MCU中。在计算机上使用AVR开发软件,编写程序,然后将程序下载到ATmega32中。红外发射模块发出控制信号给红外接收模块,通过红外接收模块将信号处理后传入MCU中,外界传感器模块将感应信号处理后传入MCU中,其将各种输入信号进行处理分析后向执行器件发出控制信号。
本设计的控制主板具有很强的扩展性,通过增添模块和修改程序,可用于各种机器人开发和智能电路制作,应用广泛。控制电路如图3所示。
3.2 USB转UART下载电路
AVR与PC之间进行串口通信,主板下载端口采用UART的串行通信方式,而计算机无法与UART端口直接相连,故需要一个USB转UART的转换器。综合实用性及可靠性等因素,设计转换电路芯片为单芯片桥接器CP2101。CP2101上集成的USB收发器无需外部电阻,集成的时钟无需外部振荡器,集成的512字节EEPROM用于存储产品,片内电压调节器为3.3 V输出。
3.3 红外遥控器设计
本设计红外遥控器采用上海贝岭的BL35P12芯片,BL35P12是一款OTP类型低功耗8位通用微控制器(MCU),完成按键的扫描和红外编码信号的生成,现精确控制,故采用此芯片作为遥控主控制芯片。通过操作方向键控制机器人前后左右运动,操作数字键和特殊键可实现不同的动作。
4 软件程序设计
本采摘机器人控制系统的软件设计主要考虑控制的确性和系统的开放性,采用AVR Studio4的编程环境,AVRStudio4是一个完整的开发工具,包括编辑、仿真功能,利用这个工具,可以编辑源代码,并在AVR器件上运行。采摘机器人系统的控制软件由主程序、伺服马达驱动子程序、遥控接收端子程序、传感器处理子程序、直流电机控制子程序等组成。
程序主要是对AVR单片机I/O口、T/C(定时器/计数器)、PWM调速、中断处理及全局变量、宏定义等的处理。程序采用结构化和模块化编写思想,使程序的可用性和可读性达到较佳状态。通过调用各个子程序,修改主程序上的直流电机的速度和伺服电机的角度等参数,调试到机器人机械手到最佳角度,根据控制策略进行了软件设计,编制主程序流程图如图4所示。
5 采摘机器人调试与试验
本系统设计的遥控模拟采摘机器人伸展后长为1.2 m,宽度0.38 m,机器人最大速度为0.5 m/s,最大爬坡角度为45°。红外遥控器最长遥控距离为3 m。机器人机械臂动作由舵机控制,这里对机械臂舵机进行测试,各个舵机角度如表1所示。机器人组装测试后完成后抓取实物图测试效果如图5所示。
本机器人采用模块化设计,各模块功能互补,提供多种不同的采摘模式,可根据作业环境选择合适的模式进行采摘。同时,功能模块具有很好的扩展性,可通过编程进行模块扩展。同时,可多种任务并行工作,提高了采摘效率。
6 结论
文中设计了一个基于ATmega32采摘机器人,机器人主体使用坚固轻巧材料,保证机器人轻巧,稳定。机器人采用履带底盘驱动,创新设计了双履带条结构,采摘结构设计了二三自由度机械臂,能够灵活地抓取实物。
输入控制程序后,机器人通过外接传感器,可以实现半自主控制和红外遥控。机器人具有振动摇树和逐个夹持两种互补采摘模式。通过实际测试表明这款智能采摘机器人能够较好的完成预期的任务,本设计系统体积小,重量轻。通过试验验证,系统的人机交互能力较强,运行稳定可靠,控制灵活反应迅速,达到了预期的设计目的。尤其是运动速度快,动作灵敏,能够适应复杂果园环境,其快速性和稳定性都达到了规定的要求,机器人扩展性强,功能强大,成本低,具有一定的参考价值。
当然,这只是作为采摘机器人的一种探索设计,离实际作业有很大的差距。在以后的研究工作中,还需要根据实际作业,对挂果果树的高度和果实的大小尺寸,以及果实的脆弱性等实际情况作深入的研究和改进,如果采用完全智能采摘还须加入机器视觉,以等视频监视模块,根据采集的图像信息馈送到遥控机器人平台,指导机械手操作,机械采摘手也应设计应力传感器,以便智能调节张开度,以免损伤果实。