文档详情

机器人编程与设计RobotBASIC详解.ppt

发布:2016-05-16约1.36万字共76页下载文档
文本预览下载声明
机器人编程与设计 RobotBASIC 朱映辉 特点 机器人模拟器是对各种可能情况和不同硬件、软件组合方式进行实验的有效工具 节省组装真实机器人的时间和费用 使用RobotBASIC来编写算法使机器人与其所处环境进行交互. 学习后不仅能对模拟器进行编程,也能够对机器人进行编程 对模拟机器人进行编程的算法和原则同样可应用于对真实机器人的控制 RobotBASIC模拟器 象BASIC语言一样简单、易学(对初学者) (高级爱好者和有经验的编程人员)功能仍然足够强大,它拥有所有标准流动控制结构及对变量和矩阵真正无限的空间 能快速迅速地模拟多种类型的环境和状况,对算法进行检查 通过模拟,可确定需要什么类型的硬件进行选择(如传感器碰撞、红外、距离…) 机器人不仅仅是硬件 RobotBASIC语言 它有工具箱、命令和函数 对机器人进行真实、有效的模拟 进行图形显示 用输入、输出命令与用户交互 进行数学、三角和统计计算 创建并控制字符,并在字符和数字间进行转换 用一系列命令和函数创建并控制矩阵,能对数学课程中遇到的许多矩阵进行操作 [一]机器人模拟器 终端屏幕模拟一个四面有墙的房间:800x600像素(机器人活动空间) 机器人默认大小:40像素(直径) 机器人的初始化 rLocate X,Y,Heading,Size,Color X,Y位置(整数) Heading可选,默认0,指机器人要面对的方向(0~359°), 0°为北, 90°为东, 180°为南, 270°为西 Size可选,默认20像素的半径,在5~50之间 Color可选,默认蓝色 机器人动作 rForward npixels 在面对的方向上前进或倒退几个像素 正---前;负---退 rTurn nDegrees 沿顺时针或逆时针旋转几度(整数) 负---逆时针; 正---顺时针 绕过障碍物 障碍物用圆形和矩形模拟 Circle x1,y1,x2,y2,PenColor,FillColor rectangle x1,y1,x2,y2,PenColor,FillColor x1,y1,x2,y2确定边界 PenColor轮廓颜色 FillColor填充颜色 程序代码 rectangle 300,300,500,500,red,red circle 100,100,200,200,blue,blue circle 600,500,700,550,magenta,magenta rlocate 50,50 rturn 90 rforward 400 rturn 135 rforward 300 rturn -45 rforward 300 rturn -90 rforward 250 rturn -45 rforward 400 end 练习 创建程序,使机器人从(100,100)运动到(300,300),然后从(500,100)回到(100,100) 提示,定位(100,100),朝向135°,前进283,转-90°,前进283,再转-135°,最近前进400 按下图搭建环境并按箭头指示进行运动 [二]RobotBASIC传感器 RobotBASIC中的机器人有一系列的传感器,使其对周围环境有感知的能力 控制算法通过传感器来分析环境,然后采取行动避障,并能发现、定位目标 部分编程结构 RobotBASIC一般不区分大小写 但变量名、阵列名、标签区分大小写 变量很灵活,命名无限制,可存储任意类型数据,且可以改变变量中所存的数据类型和数值. 注释 // 部分编程结构 条件语句 1. IF 条件 THEN 一种操作 2. IF 条件 多个操作 ENDIF 3. IF 条件 操作 ELSE 操作 ENDIF 部分编程结构 比较操作 = = = 循环 For-next While-wend (1)用缓冲器进行避障 缓冲器rBumper() RobotBASIC机器人有4个缓冲器,前面和后面的分别形成130°圆弧,侧面的仅形成50°. rLocate 400,300 For a=1 to 500 if rbumper()=0 then rForward 1 Next End rLocate 400,300 While rbumper()=0 rForward 1 Wend End (2)红外传感器 红外传感器使机器人能够在接触到物体之前就探测到路径上物体的存在 原理:使用红外LED(发光二极管)机器人向周围发出光线,若光线被反射回机器人,则晶体管电路可检测到. RobotBASIC机器人有5个红外传感器,
显示全部
相似文档