2024年05月08日   星期三   农历甲辰年(龙)   四月初二
当前位置: 网站首页 - 相关链接 - 机器人赛 >> 正文
机器人擂台赛练习题
更新日期:2015-4-12    作者:张从军    编辑:admin    点击量:4859

第三题:按图完成程序。

机器人擂台赛练习题第三题 

以上图形的代码为:

 [通用技术网]

#include <LNDZ.h>     //调用头部文件<LNDZ.h>,程序开始

int i,ll,l,m,r,rr,n;    //自定义没有赋值的整形数变量i,ll,m,r,rr,n  所有变量初始值为默认0

ground hd(23);      //自定义灰度传感器的设备名称  hd  (数字口23)

void init()     //系统框架函数 单次运行

{  }

void xj()     //自定义函数 xj

{

   ll=hd.getV(1);     //用变量ll接受ss1的值

   l=hd.getV(2);     //用变量l接受ss2的值

   r=hd.getV(3);     //用变量r接受ss3的值

   rr=hd.getV(4);     //用变量rr接受ss4的值

   m=hd.getV(5);     //用变量m接受ss5的值

   n=ll+l+m+r+rr;    //ll,l,r,rr,m所取值的和赋予n

   if (ll==0)    //如果变量ll的值等于0,说明看见了黑线,执行大括号内的代码。

   {

      motor(-39,60)      //马达左轮向后最大速度的39%,马达右轮向前最大速度的60%

   }

   if (l==0)

   {

      motor(0,60);    //马达左轮的速度为0%,马达右轮向前最大速度的60%

   }

   if (m==0)

   {

      motor(39,60);    //马达左轮向前最大速度的39%,马达右轮向前最大速度的60%

   }

   if (r==0)

   {

      motor(39,0);     //马达左轮向前最大速度的39%,马达右轮的速度为0%

   }

   if (rr==0)

   {

      motor(39,-60);      //马达左轮向前最大速度的39%,马达右向后最大速度的60%

   }

}

void repeat()      //系统框架函数 循环

{

   xj();        //调用自定义函数 xj

   if (n<3)     //如果n<3

   {

      i++;     //变量i自身加1,初始值为默认的0

      if(i==1||i==4||i==5||i==6||i==7||i==8)      //如果i=1i=4i==5i=6i=7i=8

    {

      motor(0,0);      //马达左轮速度为0%,马达右轮速度为0%,表示停下来。

      beep(100);       //蜂鸣器开启100豪秒(对以上动作进行延时)

      motor(-49,60);      //马达左轮向后最大速度的49%,马达右轮向前最大速度的60%

      beep(150);       //蜂鸣器开启150豪秒(对以上动作进行延时)

    }

    if(i==2||i==3)

    {

      motor(0,0);      //马达左轮向前最大速度的0%,马达右轮的速度为0%

      beep(100);       //蜂鸣器开启100豪秒(对以上动作进行延时)

      motor(49,-60);      //马达左轮向前最大速度的49%,马达右轮向后最大速度的60%

      beep(200);       //蜂鸣器开启200豪秒(对以上动作进行延时)

    }

    if(i==9)

    {

      motor(0,0);      //马达左轮速度为0%,马达右轮速度为0%,表示停下来。

      beep(100);       //蜂鸣器开启100豪秒(对以上动作进行延时)

      motor(49,60);    //马达左轮向前最大速度的49%,马达右轮向前最大速度的60%

      beep(100);       //蜂鸣器开启100豪秒(对以上动作进行延时)

    }

    if(i==10)

    {

      motor(0,0);      //马达左轮速度为0%,马达右轮速度为0%,表示停下来。

      beep(100);       //蜂鸣器开启100豪秒(对以上动作进行延时)

      motor(49,60);    //马达左轮向前最大速度的49%,马达右轮向前最大速度的60%

      beep(250);       //蜂鸣器开启250豪秒(对以上动作进行延时)

    }

    if(i==11)      

    {

      motor(0,0);      //马达左轮速度为0%,马达右轮速度为0%,表示停下来。

      while(1);        //终止程序

      }

    }

  }

}


通用技术网专用图片关注更多机器人竞赛内容请回到首页《通用技术网》打开《机器人赛》栏目查看

 

本资源为“通用技术网www.tyjs.org ”独家发布。

转载申明

本网为免费通用技术网,本站独创内容,未经本网授权,任何个人、企业、机构不得以任何方式擅自转载、转贴或者以其他方式复制用于商业目的。

转载或引用本网站上所有内容,必须符合以下规定:

(1) 用于商业目的的必事先经过本网同意;

(2) 非用于商业目的的转载或引用本网内容必须是作为新闻性或资料性公共免费信息,原则上也须经本网同意。

(3) 转载或引用本网内容必须合理、善意引用,不得对本网内容原意进行曲解、修改;

(4) 转载或引用本网站所有内容须注明“转自通用技术网www.tyjs.org”字样。

未经同意转载,一经发现,法律追究。


  上一篇: 亚太青少年机器人竞赛理事会文件
  下一篇: 第八届湖南省青少年机器人竞赛规则
  [文章评论]       [发表评论]            评论需经管理员审核才能发表
  该文章暂时没有评论!
 
设为首页——
湖南省平江县第一中学张从军版权所有 ICP备案号:湘ICP备13001241号-1