苗志全
(华北科技学院电子信息工程学院,北京 东燕郊 101601)
随着信息时代的到来,机器人技术的发展是个必然的趋势。机器人的出现并高速发展是社会和经济发展的必然,是为了提高社会的生产水平和人类的生活质量。机器人学是一门高度交叉的前沿学科,获得快速发展。教学用人形机器人的制作不仅可以使学生在轻松愉快的氛围中充分理解相关课程的专业知识,而且可以激发学生的专业学习兴趣,使他们树立系统工程的概念,培养其独立开展科学研究的能力。
基于当前机器人技术的发展,本项目所研制的机器人为教学用人形机器人,即设计的机器人能模仿人进行一些简单的动作,比如:挥手、摇头、行走、跳舞、唱歌等。教学用人形机器人属于表演型机器人的范畴,主要考虑吸引学生兴趣,提高学生动手参与能力,体现教学示范作用。
图1 教学用人形机器人结构图
本设计的教学用人形机器人的研制分为控制台和教学用人形机器人两部分组成。
控制平台由4*4键盘和自复位按键模块、12864液晶显示模块、无线数据发送模块和电源模块组成。主要完成4*4键盘和自复位按键的检测、液晶的显示控制和无线数据的发送,达到对教学用人形机器人的控制。
教学用人形机器人的控制由两块CPU组成,实现CPU的联合控制,即由一块ATMEGA8和一块ATMEGA128组成,其中ATMEGA8控制核心板主要由无线数据接收模块、传感器网络、头部伺服电机和RS232总线组成。ATMEGA8控制核心板主要完成无线数据的接收,根据接收到的控制码再决定当前教学用人形机器人的工作模式和具体要执行的何种动作,再将控制代码以RS232总线传送给ATMEGA128控制核心板。当教学用人形机器人工作于知道那个运行模式中时,ATMEGA8控制核心板根据外部的传感器网络和头部伺服电机采集当前的环境参数,使其具有独立运行的功能。而教学用人形机器人中的 ATMEGA128控制核心板主要任务就是接收 ATMEGA8控制核心板发送过来的RS232数据代码,在根具控制代码控制教学用人形机器人中的18个伺服电机,以使其完成各种模式下的动作。
本次设计的教学用人形机器人具有两种工作模式,即受控模式和自动运行模式。受控模式,当处于受控模式中时,教学用人形机器人的所有动作均受到控制台的控制,能完成和人类一样的动作,包括:前进、后退、左转、右转、踏步、发声和摇头这些和人类相同的基本动作,另外我们在受控模式中还加设了教学用人形机器人良好的互动功能,即当人与其握手后具有跳舞的功能,具有很强的表演功能。自动运行模式,当处于自动运行模式中时,教学用人形机器人能自动进行良好的前进、后退、左转、右转、踏步、发声和摇头动作。在自动运行模式中,控制台处于较高的控制优先级中,即在模式中,控制台也能实现实时的控制教学用人形机器人的停止。
控制台中的硬件设计主要包含电源模块的设计、ATMEGA128控制核心板电路设计和制作、12864硬件、4*4键盘和自复位按键模块组成。其中关于控制台中电源模块的考虑时,发现无线数据为增加发送模块的功率要求,需用12 V的电源,而ATMEGA128控制核心板和12864液晶的工作电源用的是5 V的电源,所以,电源的设计必须设计一个由12V-5V的变换电路,关于这部分的电源变换图我们经过综合考虑,觉得如果选用7805三端稳压芯片的话,基本可以达到要求,但是其稳定性不是很好,而选用稳定性很好的稳压芯片LM2575来实现电源的变换。
图2 控制台流程图
教学用人形机器人中的硬件设计主要包括电源模块、传感器网络模块、无线数据接收模块、头部伺服电机和18个教学用人形机器人肢体伺服电机驱动模块、ATMEGA8控制核心板和 ATMEGA128控制核心板的设计。电源模块的设计中,同控制台一样需提供12V和5V电源,但是教学用人形机器人中的电源设计却不能采用控制台中的电源变换方案,因为在教学用人形机器人中无线数据接收模块使用12 V的电源,而 ATMEGA8控制核心板、ATMEGA128控制核心板和19的伺服电机使用的也是5 V的电源,这样考虑到系统运行的稳定性,控制器就不能和伺服电机共用同一个电源,因为根据电机的参数计算得出,当教学用人形机器人在执行动作时其电流大约为2.5 A左右,这么大的电流在电源设计上必须单独处理。
基于以上特殊的电源要求,我们最后经过综合设计和可行性分析,决定采用电源分割技术来解决该问题,具体实施的方法是:所有的控制核心板使用一个独立的电源模块,该电源模块由电池经过一个稳定性好的稳压芯片得出一个5 V电源,而所有的传感器和伺服电机采用另一路电源,该电源也从电池引电,经过一个大功率稳压芯片处理后得出另一路5 V电源,这样相互之间的电源影响可以很小,从而是整个系统更稳定的工作。
另外,在教学用人形机器人中使用的 ATMEGA128控制核心板和控制台中的设计电路完全一样。所以这里就不用再单独设计了,但考虑到ATMEGA8控制核心板的控制作用,我们对其进行了设计,在该部分电路的设计中将所有的传感器网络接口和无线数据接收接口均提供出来,这样在传感器的使用时就非常的方便、快捷。
控制台中的ATMEGA129控制核心板主要完成4*4键盘和按键扫描,12864液晶的显示控制和无线数据的发送。这样控制台中的整个程序流程图如图3所示。并且,考虑到系统后期的调试方便,程序移植方便,我们在编写控制台中程序时采用程序的模块化设计思想,并采用当前应用最为广泛的C语言来进行程序的编写。
教学用人形机器人中的程序包括两部分,分别为ATMEGA8控制板和ATMEGA128控制板中的程序编写。ATMEGA8控制板中程序主要实现无线数据的接收,传感器数据的处理和与AT-MEGA128控制板的 RS232通信。这样,ATMEGA8控制板的程序流程图如图2所示。同控制台一样,我们在编写这部分程序时也采用模块化设计思想和C语言来进行编写。ATMEGA128控制板中的任务主要为接收ATMEGA8控制板发送的控制数据和控制教学用人形机器人中的所有伺服电机的动作,考虑到控制数量很大,所以,ATMEGA128控制板中的程序主要是在执行电机的控制,该部分的程序流程图如图3所示。这部分也采用模块化设计思想和C语言进行编写。
图3 ATMEGA8控制板流程图
在本设计中,使用的所有控制器(ATMEGA8和ATMEGA128)均是属于AVR系列的控制器,所以,这使得我们在开发环境上更加方便、统一。我们采用的开发工具为iccv7ProLoader,该软件使用非常方便,其使用界面如图4所示,我们使用的程序下载软件为AVR_fighter。
图4 ATMEGA128控制板流程图
图6 iccv7ProLoader开发环境
经过对教学用人形机器人的研制设计的硬件设计和软件设计的单独、模块化设计思想,使得我们在后期的系统整体调试中非常有针对性。我们在系统整体调试时,先对所有的硬件电路进行测试,如果硬件电路设计的参数达不到要求,我们先调试硬件,直至硬件电路均达到要求为止。并且,我们在硬件调试过程中,也同时进行软件程序的编写,软件调试时先使用软件的仿真功能调试程序,利用仿真功能将程序调试通过为主。这样,当硬件调试好后,软件的仿真也通过后,我们就开始进行软、硬件联合调试,根据具体功能进行整体调试,直至所有功能均调试达到控制要求为止。经过最后的调试,教学用人形机器人能和控制台很好的工作,能实现要求的所有功能,并且,还增设了一定的扩展功能,整个系统能很稳定、可靠地工作。
教学用人形机器人能实时的接收控制台的控制码,并能很稳定、很准确地控制教学用人形机器人的所有动作,效果很好。并且控制台中我们增设了12864液晶,实时显示出当前的机器人运行状态,运用键盘和按键提供良好的人机交互接口,这也使得整个系统非常人性化,操作者可以很方便地进行任何操作。
[1] 蔡自兴.机器人学[M].北京,清华大学出版社,2000
[2] 熊有伦.机器人技术基础[M].武汉,华中理工大学出版社,2000
[3] 曲道奎.机器人技术的新进展[R].沈阳,中国科学院沈阳自动化研究所,2000
[4] 周学才.开放式机器人通用控制系统[J].机器人,1998(1)
[5] 张建民.工业机器人[M].北京:北京理工大学出版社,1989
[6] 李凯、梁飞华,等.教学机器人图形仿真系统的设计与研究[J].计算机应用与软件,2008,10