机器人高级运用编程.doc

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
机器人高级运用编程

基于软件仿真平台下的简易机器人编程教学 湖北省黄石二中 李志   摘要:21世纪被人们誉为智能机器人的世纪,《普通高中技术课程标准(实验)》将《简易机器人制作》作为选修模块引入中学,由于缺乏硬件,机器人教学几乎无法开展。笔者在实践过程中,将Proteus仿真软件引入到简易机器人编程实践的教学中,既解决了机器人教学的开展问题,又将程序设计教学和机器人制作结合起来,大大提高了学生对选修模块的兴趣,同时培养了学生实验能力、实验设计等各方面的能力。 ?   关键字:仿真 简易机器人 单片机 Proteus ?   一、引言 ?   1.在高中开展机器人教学的必要性和必然性 ?   随着智能技术的发展,智能机器人教育走进我们的课堂已经成为必然趋势,智能机器人技术融合了机械造型、电子传感器、计算机软硬件和人工智能等众多先进技术,而这些充分体现了当代信息技术多个领域的重要内容,更是智能技术的结晶。智能机器人作为培养学生能力和素质的智能平台之一,必将承载起信息技术教学新载体的任务,给信息技术基础教育带来新的活力。 ?   2.高中开展机器人教学的现状 ?   在经济不发达地区,即便是一些条件相对较好的学校,机器人教学也几乎还是空白,咎其原因主要有:硬件条件跟不上,教师也缺乏这方面的培训。因此机器人教学的开展举步维艰。 ?   在学习《简易机器人制作》这个模块时,笔者所在学校使用的是由华中科技大学出版社编写的教材。教材简要介绍了简易机器人的“大脑”──AT89S51芯片、简易机器人的编程环境及语言、简易机器人的编程实践等内容。由于没有硬件实验平台,在实际教学中学生对教学内容缺乏实践,因而对用程序控制C51单片机很难理解。 ?   3.如何开展机器人教学工作 ?   在硬件条件不允许的情况下如何开展机器人教学?笔者在实际教学中,引入Proteus软件,用软件仿真的方法,通过软件仿真的直观效果,让学生轻松的了解程序与硬件的关系,激发了学生学习的兴趣,取得了较好的教学效果。 ?   二、基本软件的介绍 ?   在整个教学实践中,用到了两个软件:Keil uVision3和Proteus 7 Professional,现介绍如下: ?   1.Keil uVision3:用C语言为89S51系列单片机编写程序,需要有专门的单片机C语言编译器,Keil uVision3就是一个较好的编译软件,用个这个软件,我们可以将C语言程序编译为一个hex文件,烧入到51单片机后,单片机即简易机器人的“大脑”就可以根据程序完成指定的控制。 ?   2.Proteus:Proteus软件是由英国LabCenter Electronics公司开发的EDA工具软件,由ISIS和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件。Proteus可以对Keil uVision3等开发工具的程序进行调试。 ?   正是基于这个原因,笔者将Proteus引入到机器人教学中。 ?   三、教学实例 ?   在教材《简易机器人制作》(华中科技大学出版社编写)的第四章,教材简要介绍了简易机器人的硬件实验板,并以单片机控制LED为例,介绍了用C语言控制单片机的实践方法。在教学中,由于没有硬件试验板,学生无法直接看到程序控制单片机的实际效果,因而理解上比较困难。 ?   笔者在实际讲授过程中,引入Proteus软件平台很好的解决了实验效果的模拟演示。鉴于刚开始学生对Proteus软件比较陌生,笔者帮助学生搭建好电路,让学生将注意力集中在编写C语言程序编程控制单片机上。以单片机控制单个LED闪烁为例,笔者教学过程如下: ?   教师提前在Proteus中搭建好电路(电路图如下),上课时提出实验任务:编写程序控制连接在P1.0端口上的D1(LED灯),让其闪烁。 ? ?   引导学生分析如下C语言程序: ?    #include REG51.H ? sbit p=P1^0; ? void delay(void) ? { ? ? unsigned int i,j,k; ? ? for(i=20;i0;i--) ? ? ???for(j=20;j0;j--) ? ? ?????for(k=248;k0;k--); ? } ? Void main( ?) ? { ? ?? while(1) ? ?? { ? ? ????p=0; ? ?? ???delay( ); ? ? ????p=1; ? ? ????delay(? ); ? ?? } ? } 程序分析: ? (1)void delay( void)自定义函数的功能:实现延时。 ? ? ? ? ? ? ? ? ? ? ? (2) void main( ),程序的主程序。①p=0,给p1.0端口一个低电平,此时LED等亮,然后调

文档评论(0)

rachel + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档