(完整)VEX 机器人软件编程教程
- 格式:doc
- 大小:4.53 MB
- 文档页数:32
vex控制转弯代码在使用VEX机器人进行竞赛时,掌握转弯技巧是非常重要的。
通过编写合适的VEX控制转弯代码,可以使机器人在比赛中灵活、准确地转向。
下面将介绍一些常用的VEX控制转弯代码以及它们的使用方法。
我们可以使用简单的代码来实现机器人的转弯功能。
例如,我们可以使用以下代码来实现机器人向左转弯:```cppMotor[leftMotor] = 127;Motor[rightMotor] = -127;```这段代码中,我们通过控制左右两个电机的转速来实现机器人的转弯。
将左电机的转速设为正值,右电机的转速设为负值,这样机器人就会向左转弯。
同样的道理,我们可以通过将左电机的转速设为负值,右电机的转速设为正值来实现机器人向右转弯。
然而,这种简单的转弯方式并不适用于所有情况。
在一些比赛中,我们需要机器人能够做出更加灵活的转弯动作。
为了实现这一点,我们可以使用更复杂的控制转弯代码。
一种常见的控制转弯代码是“点转弯”代码。
这种代码可以使机器人围绕一个点进行转弯,从而实现更加精确的转弯动作。
以下是一个示例代码:```cppfloat angle = 90; // 转弯角度float radius = 10; // 转弯半径float speed = 50; // 转弯速度float arcLength = 2 * PI * radius * angle / 360; // 弧长float wheelDistance = 2 * PI * radius; // 轮子间距float leftMotorSpeed = speed * (arcLength / wheelDistance); float rightMotorSpeed = speed;Motor[leftMotor] = leftMotorSpeed;Motor[rightMotor] = rightMotorSpeed;```在这段代码中,我们需要指定转弯角度、转弯半径和转弯速度。
主控系统用户指导电池充电与安装说明 (4)主控器电池的充电与使用.....................................................................................................................................4遥控器电池的充电与使用. (7)无线电天线安装及与控制器配对说明 (9)无线电天线的安装与拆卸.....................................................................................................................................9主控制器与遥控器配对 (10)连接智能元件 (11)智能元件接口....................................................................................................................................................11智能元件综述.. (12)主控器使用说明 (13)主控器与LED指示灯综述..................................................................................................................................13主控器LCD屏幕. (13)遥控器使用说明 (14)遥控器与LED指示灯介绍..................................................................................................................................14使用遥控器控制主控器.. (14)内置程序使用说明 (15)遥控程序...............................................................................................................................................15自动程序........................................................................................................................................................17主控器屏幕菜单 (18)固件的更新与编程 (19)固件更新................................................................................................................................................................19编写自定义程序 (19)附表A: 电池安全使用说明............................................................................20附表B: 安全承诺声明. (22)1234569871.11.22.13.14.15.15.26.16.27.17.26.32.23.24.2酷易我是酷易,你的专属VEX IQ小助手。
VEXIQ编程教学大纲VEXIQ编程教学大纲
一、导言
1、简介
2、教学目标
3、导学环节
二、VEXIQ简介
1、VEXIQ概述
2、部件介绍
3、软件介绍
4、控制器介绍
三、编程基础
1、编程概念
2、程序结构
3、数据类型
4、变量和常量
6、控制结构
7、函数和子程序
8、调试技巧
四、传感器应用
1、传感器概述
2、触碰传感器的应用
3、光线传感器的应用
4、超声波传感器的应用
5、颜色传感器的应用
6、陀螺仪传感器的应用
7、编码器的应用
五、控制
1、的基本动作
2、遥控器操作
3、自动控制
4、赛道规划
六、项目实践
1、基础项目实践
2、进阶项目实践
3、创新项目实践
七、竞赛与比赛
1、VEXIQ比赛规则
2、策略与规划
3、比赛实战技巧
4、团队协作与沟通
八、扩展资源
1、VEXIQ官方网站
2、教学视频和教学资料
3、社区论坛和博客
4、其他有用资源推荐附件:
1、编程示例代码
2、编程练习题
3、传感器数据记录表
4、比赛规则解读
法律名词及注释:
1、版权:指对作品享有的原创性的独立权利。
版权是著作权法所保护的对象之一,包括文字、图片、音乐、软件等。
2、许可证:指授予他人某种权利或特权的正式证书或批准书。
有些软件和资料可能需要获得许可证才能使用或分发。
3、侵权:指未经授权使用他人享有版权的作品,侵犯版权人的权利。
对于编程教学中的作品和资源,严禁侵权行为。
《VEX IQ机器人编程》教学大纲一、课程性质和任务课程性质:VEX IQ机器人由美国著名的VEX机器人设计及生产商推出的塑料材料的积木式机器人,是进行STEM教育的革命性产品,成为广大青少年和指导老师进行STEM(科学、技术、工程、数学)教学和学习的优秀平台。
丰富多样的结构件和简单易懂的ROBOTC图形化编程,让年仅8岁的青少年便能学习并使用。
并有机会参与VEX机器人世界竞赛,获得与国外青少年交流和学习的机会。
主要任务:熟悉VEX IQ机器人硬件结构及机械原理,ROBTC图形编程,自然语言编程,C语言编程,发掘潜能,培养逻辑思维能力。
二、课程教学目标(一)知识教学目标1.熟悉掌握VEX IQ搭建结构件2.熟悉掌握传感器的工作原理3.熟悉掌握ROBOTC软件编程4.灵活编程,灵活完成机器人综合大挑战(二)能力培养目标1.培养创新思维和灵活运用知识的能力2.培养具有认真,自主的学习能力3.培养分析问题、解决问题的能力三、教学内容和要求(一)VEX IQ的介绍教学重点:介绍课程的性质教学难点:VEX IQ的内容介绍(二)认识相关硬件教学重点:VEX IQ 的搭建材料教学难点:看图搭建,并完成图纸要求的形态(三)传感器及ROBOTC软件认识教学重点:认识VEX涉及到传感器教学难点:初步使用ROBOTC进行简单运动的编程(四)基础运动编程(一)教学重点:运用ROBOTC软件对机器人进行简单的前进,后退,左转,右转运动编程教学难点:编好程序对标虚拟世界进行模拟。
(五)基础运动编程(二)教学重点:运用ROBOTC软件设置驱动电机对机器人进行简单的前进,后退,左转,右转运动编程教学难点:编好程序对标虚拟世界进行模拟。
(六)碰撞传感器的使用教学重点:熟悉掌握碰撞传感器的原理及作用教学难点:运用ROBOTC软件针对碰撞传感器进行编程,并对标虚拟世界进行模拟成功完成挑战项目。
(七)触摸传感器的使用教学重点:熟悉掌握触摸传感器的原理及作用教学难点:运用ROBOTC软件针对触摸传感器进行编程,完成书本上要求的一键启停的任务(八)编码器的调试教学重点:熟悉掌握编码器的各项指令教学难点:实际操作一遍,并运用到编程(九)陀螺仪传感器的使用教学重点:熟悉掌握陀螺仪传感器的原理及作用教学难点:运用ROBOTC软件针对陀螺仪传感器进行编程,并对标虚拟世界进行模拟成功完成挑战项目。
VEXIQ机器人编程教学大纲一、教学目标通过 VEXIQ 机器人编程课程的学习,学生将能够:1、了解机器人的基本构造和工作原理。
2、掌握 VEXIQ 机器人编程软件的使用方法。
3、学会运用编程思维解决实际问题。
4、培养团队合作精神和创新能力。
二、教学对象本教学大纲适用于小学三年级至六年级的学生。
三、教学内容1、机器人基础知识介绍机器人的定义、分类和应用领域。
讲解机器人的基本组成部分,如传感器、控制器、执行器等。
2、 VEXIQ 机器人硬件认识 VEXIQ 机器人套件中的各种零件和组件。
学习如何搭建简单的机器人结构。
3、 VEXIQ 机器人编程软件安装和启动 VEXIQ 编程软件。
熟悉编程软件的界面和功能。
4、编程基础学习编程中的基本概念,如变量、循环、条件语句等。
通过简单的示例程序,理解编程逻辑。
5、传感器应用了解常见传感器的工作原理,如触碰传感器、光电传感器等。
编写程序使用传感器获取环境信息,并根据信息做出相应的动作。
6、机器人运动控制掌握控制机器人前进、后退、转弯等基本运动的编程方法。
实现机器人的精确移动和定位。
7、任务挑战设计一系列具有挑战性的任务,如机器人搬运物品、穿越障碍等。
学生分组完成任务,通过编程和调试使机器人能够完成指定任务。
8、团队合作与项目展示学生分组合作完成一个综合性的机器人项目。
各小组展示自己的项目成果,并分享项目实施过程中的经验和问题。
四、教学方法1、讲授法通过讲解和演示,向学生传授机器人编程的知识和技能。
2、实践法让学生亲自动手搭建机器人、编写程序,并进行调试和改进。
3、小组合作法将学生分成小组,共同完成任务和项目,培养团队合作能力。
4、问题解决法引导学生在面对问题时,运用所学知识和思维方法进行分析和解决。
五、教学资源1、 VEXIQ 机器人套件包括机器人零件、控制器、传感器等。
2、电脑安装 VEXIQ 编程软件。
3、投影仪用于课堂教学演示。
4、教材和参考资料选择适合小学生的机器人编程教材和相关参考书籍。
机器人编程操作说明书1. 简介机器人是一种自动执行特定任务的设备,它能够通过编程来实现各种操作。
本操作说明书将为您提供机器人编程的详细指导,帮助您了解机器人的操作流程和编程技巧。
2. 准备工作在开始机器人编程之前,确保以下准备工作已完成:- 确认机器人已正确连接电源,并保持在正常工作状态。
- 确保机器人所需的传感器和执行器已正确安装并连接到控制器。
- 请提前安装好机器人编程软件,并确保其与机器人的连接正常。
3. 编程环境设置首先,打开机器人编程软件,并按照以下步骤进行环境设置:步骤一:选择正确的机器人型号和版本。
步骤二:根据机器人的连接方式,选择正确的通信接口(如串口、以太网等)。
步骤三:确认机器人与编程软件的连接正常。
步骤四:设置编程环境的其他参数(如编程语言、编码格式等)。
4. 编程流程机器人编程的基本流程如下:步骤一:定义任务目标和需求。
明确机器人需要完成的任务,并分析其具体需求。
步骤二:设计程序框架。
根据任务目标和需求,设计一个合适的程序框架,确定程序的主要结构和逻辑。
步骤三:编写程序代码。
根据程序框架,使用机器人编程软件编写相应的程序代码,实现机器人的动作和控制。
步骤四:调试和优化。
在编写完成后,对程序进行调试和优化,确保程序能够正常运行并达到预期效果。
5. 编程技巧以下是一些常用的机器人编程技巧,供您参考:- 使用合适的传感器:根据任务需求选择适合的传感器,用于感知环境和获取相关数据。
- 控制器的配置:根据机器人的特性和任务需求,对控制器进行适当的配置和参数调整。
- 逻辑控制语句:使用各种逻辑控制语句(如条件语句、循环语句等)实现复杂的控制逻辑。
- 函数调用和模块化编程:使用函数和模块化编程的方法,提高程序的可读性和可维护性。
- 编写注释:对于复杂的程序代码,编写清晰明了的注释,方便他人理解和维护。
6. 错误处理和故障排除在机器人编程过程中,可能会出现一些错误和故障。
以下是一些常见的问题及其排除方法:- 语法错误:请仔细检查程序代码中的语法是否正确,并根据编译器的提示进行修改。
ROBOTC是由卡内基梅隆大学机器人学院机器人教育团队所开发的软件,适用于初级机器人编程语言的教学和比赛。
它是一门易于使用和开发的基于C语言的编程软件。
1.ROBOTC for VEX IQ1)安装(1)双击“ROBOTCforVEXRobotics_426”应用程序或者右击选择以管理员身份运行(这取决于个人电脑的限制)开始安装。
首先会弹出下图的安装向导窗口,显示准备安装,几秒钟后消失。
(2)在安装向导里点击“Next”按钮,开始下一步,根据你正在安装的平台不同,ROBOTC 也可能安装每个平台特有的其它驱动程序。
(3)选择选择“我接受协议”,然后点击“Next”按钮。
(4)默认安装的是C盘,一般不需要改,点击“Next”按钮。
(5)点击‘Inatall’按钮开始安装。
安装过程自动安装驱动(6)点击“Finish”按钮,完成安装。
注:如果因为任何原因驱动程序不能正常下载并安装,则需ROBOTC网站手动下载并安装。
点击安装按钮开始安装。
2)ROBOTC for VEX IQ 激活ROBOTC安装在电脑上后要激活它,只要计算机有一个有效的网络连接,这个过程可以直接通过ROBOTC界面完成。
(1)打开ROBOTC找到Help菜单,在这里,选择“Manage Licenses”。
(假如你先前没有ROBOTC许可证,你可能需要通过点击‘Purchase License’购买它)(2)在管理许可窗口中,选择你想激活的软件,会出现下图所示的窗口,然后点击“Add License”按钮。
(注一旦许可被激活,你可以看到注册信息,通过点击相应的按钮为ROBOTC 创建桌面快捷方式)。
注意这有一个灰色的选择‘DeactivateLicense’,这允许你禁用许可,然后在另一台计算机上重新激活它。
(3)点击“Add License”按钮后,将会弹出一个“添加新的ROBOTC License”窗口。
在这里你必须首先选择许可证的类型,然后输入您的授权ID和密码。
VEX 机器人软件编程教程一、使用注意事项❖如果是没有购买序列号的用户,安装了软件,打开软件时会弹出一个注册的窗口,中文版点暂不注册按钮便可以试用。
英文版点Run in Evaluation Mode按钮便可试用;英文1.0版试用30天,英文2.0版只能试用7天;中文2.0版15天;❖如果是购买了序列号的用户,在注册的时候需要联网注册,每个序列号也只能在一台电脑上使用,英文版如果换了电脑再使用该序列号注册,那么该系列号就不可用了,2.0中文版一个序列号也只能一台电脑注册,如要换电脑注册可以点菜单栏→帮助→ 注销,然后在另一台电脑上就可以再次使用该序列号了;❖如果是没有购买序列号的用户,只要一装上软件,便自动与系统硬件绑定,试用期到了以后即使把软件卸载了在重装也不能继续试用,建议先用备份工具备份系统,然后才安装中英文版软件,这样软件过期了以后,只需要把系统还原,在重装VEX软件即可继续试用;❖英文版软件比中文1.0版软件稳定,中文1.0版软件存在一些错误,不建议使用中文1.0版;❖VEX编程软件有中文版和英文版两个版本(中文和英文分别都有1.0版本和2.0版本),两个版本不能混用,不要既下载中文版编的程序到主控器,又下载英文版编的程序到主控器,这样会损坏主控器的底层程序,严重时会导致主控器的某些芯片不可用,从而导致主控器不能使用;❖中文版和英文版的程序和代码都不能用对方的的软件相互打开编辑❖中文1.0版软件编好的程序不能保存到C盘(包括桌面),否则会导致程序不能打开或者出现错误;中文2.0版电脑的任何地方都可以保存,以文件夹的形式保存,注意在同一个程序文件夹下不能在保存别的程序,否则在打开程序时会出错并关闭自动关闭;❖中文1.0版软件在每次下载程序之前都要先保存→编译→链接→然后再下载,然后选择端口;❖查看下载线使用的COM口的方法是:我的电脑→右键→属性→硬件→设备管理器→端口(COM和LPT)→ Prolific USB-to-Serial Comm Port (com3)最后这一项的com3就是当前VEX下载线使用的端口;然后在软件里面选择你查看到的端口即可下载程序到主控器,具体方法后面有详细介绍;❖ 2.0中英版软件可以定义子程序,1.0中英版软件不能定义子程序;❖ 2.0中英版软件中可以定义全局变量和局部变量,1.0中英版的软件所有变量都是全局变量;❖ 1.0中英版软件没有中断、继续、返回模块,2.0中英版软件中有。
❖当主控器出现执行程序混乱的情况时,说明有可能是主控器的底层程序不正常,那么只需要从新下载一次底层程序即可,中文版2.0为:菜单栏:生成→下栽初始化程序。
二、主界面三、工具栏模块(英文版)四、编程区❖对于1.0版每一个新的程序都会有一个I/O定义模块,变量定义模块(Variables),开始模块(BEGNI)和结束模块(END)。
2.0版则增加了局部变量定义模块。
❖I/O模块、全局变量定义模块、局部变量定义模块应当在开始编程之前定义。
❖在每一个程序里,开始模块表示程序的第一个模块;结束模块表示程序的最后一个模块。
你必须放置所有的模块在这两个模块之间。
❖插入模块:在模块区用鼠标左键点住相应模块,拖动到编程区的开始和结束模块之间,放开鼠标,然后只要设置好模块的属性就行了。
需要说明的是传感器模块必须先定义其变量才能插入到编程区内。
❖编辑模块(Edit):左键双击修改,也可单击右键。
英文版是点右键,选择编辑。
❖复制模块(Copy):中文版2.0是ctrl+c复制模块,也可单击右键;英文版是按住ctrl键,拖拽模块,然后将复制的模块放到你需要放置的位置。
也可单击右键。
❖剪切模块(Cut):中文版2.0是ctrl+x剪切模块,也可单击右键;英文版是先选中模块,再点右键选择剪切。
❖粘贴(Paste):中文版2.0是ctrl+v粘贴模块,也可单击右键;英文版是点右键,选择粘贴。
❖删除模块(Delete):中文版2.0是Delete键删除模块,也可单击右键;英文版是点右键,然后选择删除。
❖右键单击任何一个模块,可以对该模块进行编辑、复制、剪切、删除、粘贴等操作。
❖编译下载:F5为编译程序,F6为编译并下载程序五、I/O定义模块❖双击I/O图标或点鼠标右键(I/O定义模块),你能够配置控制器的I/O端口。
❖模拟/数字端口(共16个口)(ANALOG/DIGITAL):波浪线表示模拟端口(默认为1~4),箭头表示数字端口;箭头向左的表示信号是由外部输入到主控器(默认为5~10),箭头向右的表示信号是由主控器内部输出(默认为11~16),模拟和数字端口可以互换,数字端口的输入输出也可以更改;❖中断端口(INTERRUPTS)(共6个口):不能更改;❖马达端口(MOTORS)(共8个口):不能更改;六、变量设置模块(1.0版)❖双击变量设置图标,打开程序变量定义对话框。
你能设置程序需要使用到的变量;❖这里数据类型一般都选择int,❖变量名称需要是英文字母,其它的可以不填也可以在变量取值处设置变量的值全局变量设置模块(2.0版)❖双击全局变量设置图标,打开程序变量定义对话框。
你能设置程序需要使用到的全局变量;❖这里数据类型一般都选择int,❖变量名称需要是英文字母,其它的可以不填❖也可以在变量取值处设置变量的值,也可以不设置。
局部变量设置模块(2.0版)❖双击局部变量设置图标,打开程序变量定义对话框。
你能设置程序需要使用到的局部变量;❖这里数据类型一般都选择int;❖变量名称需要是英文字母,其它的可以不填❖也可以在变量取值处设置变量的值变量定义表七、接口说明接口功能马达端口MOTORS共有8个口主控器上标有MOTORS字样的端口,用来接马达和伺服器中断端口INTERRUPTS 共有6个口主控器上标有INTERRUPTS字样的端口,用来接超声波传感器的OUTPUT端和编码器模拟/数字端口ANALOG/DIGITAL共有16个口主控器上标有ANALOG/DIGITAL字样的端口,默认1~4为模拟/数字通用端口,可接巡线、光敏、碰撞、行程,默认5~10为数字输出端口,可接碰撞、行程,默认11~16为数字输入端口,接超声波的Input端,都可以自行更改指示灯说明八、Inputs主控输入1、碰撞开关传感器bumper switch❖碰撞开关是数字式的传感器。
❖它有两种状态:即开和关。
❖当碰撞开关断开的时候,定义为1。
❖当碰撞开关闭合的时候,定义为0。
❖打开英文版位于Test Code的文件夹中的BUMPERTEST.ECP工程,看其示范怎样编写碰撞开关程序。
碰撞开关程序范例:❖首先在变量定义模块(Variables)里面定义了一个变量a,然后拖入一个碰撞检测模块,接着拖入一个当循环模块对当前碰撞变量进行判断,然后在当循环里面拖入一个马达控制模块,再拖入一个碰撞检测模块,属性和当循环外面的碰撞检测模块的属性一样,这样就构成了一个条件循环,最后在当循环外面在拖入一个马达控制模块;❖那么这个程序的功能就是:当a=1即是碰撞开关没碰到时,就不停的启动马达1正转,反之a=0则是当碰撞开关碰到时,就跳出当循环,停止马达1。
2、光敏传感器light sensor❖光敏传感器是模拟式的传感器,它是用来检测周围环境光线的亮暗的传感器;❖把光线由亮到暗的范围定义在0到1024。
值越小表示光线越亮,值越大表示光线越暗;❖打开英文版位于Test Code文件夹中的LIGHTTEST.ECP工程,看其示范怎样编写光敏传感器程序。
光敏传感器程序范例:❖首先在变量定义模块(Variables)里面定义了一个变量a,然后拖入一个光敏检测模块,选择变量a,接着拖入一个当循环模块对当前亮度变量(即变量a)进行判断,然后在当循环里面拖入一个马达控制模块,再拖入一个光敏检测模块,属性和当循环外面的光敏检测模块的属性一样,这样就构成了一个条件循环,最后在当循环外面在拖入一个马达控制模块;❖那么这个程序的功能就是:当a<800即是光线比较亮时,就不停的启动马达1正转,反之a>=800则是光线比较暗时,就跳出当循环,停止马达1。
3、限位开关limit switch❖限位开关是数字式的传感器。
和碰撞开关类似;❖它有两种状态:即开和关;❖当限位开关断开的时候,定义为1❖当限位开关闭合的时候,定义为0❖打开英文版位于Test Code的文件夹中的LIMITTEST.ECP工程,看其示范怎样编写行程开关程序。
限位开关程序范例:❖首先在变量定义模块(Variables)里面定义了一个变量a,然后拖入一个限位检测模块,接着拖入一个当循环模块对当前限位变量进行判断,然后在当循环里面拖入一个马达控制模块,再拖入一个限位检测模块,属性和当循环外面的限位检测模块的属性一样,这样就构成了一个条件循环,最后在当循环外面在拖入一个马达控制模块;❖那么这个程序的功能就是:当a=1即是限位开关没闭合时,就不停的启动马达1正转,反之a=0则是当限位开关碰到时,就跳出当循环,停止马达1。
4、巡线传感器Line Follower❖巡线传感器是模拟式的传感器,它是用来检测颜色的传感器;❖把颜色的深浅由白到黑的范围定义在0到1024。
值越小表示颜色越白,值越大表示颜色越黑;❖打开英文版位于Test Code的文件夹中的LINEFOLLOWER.ECP工程,看其示范怎样编写巡线传感器程序。
巡线传感器程序范例:❖首先在变量定义模块(Variables)里面定义了一个变量a,然后拖入一个巡线检测模块,接着拖入一个当循环模块对当前灰度变量(即变量a)进行判断,然后在当循环里面拖入一个马达控制模块,再拖入一个巡线检测模块,属性和当循环外面的巡线检测模块的属性一样,这样就构成了一个条件循环,最后在当循环外面在拖入一个马达控制模块;❖那么这个程序的功能就是:当a<800即是颜色比较白时,就不停的启动马达1正转,反之a>=800则是颜色比较黑时,就跳出当循环,停止马达1。
5、编码器Optical Shaft Encoder❖编码器是一个数字式的传感器。
它能够用来测量和定义马达转动的圈数或者路程。
❖编码器一般插在中断端口(INTERRUPTS)❖编码器旋转(360 度)等于90个编码脉冲。
❖打开英文版位于Test Code的文件夹中的ENCODERTEST.ECP工程,看其示范怎样编写编码器程序。
编码器程序范例:❖首先在变量定义模块(Variables)里面定义了一个变量a,然后拖入三个编码器检测模块,第一个选择开始,第二个选择预设,第三个选择取值;接着拖入一个当循环模块对当前路程变量(即变量a)进行判断,然后在当循环里面拖入一个马达控制模块,再拖入一个编码器检测模块,属性和当循环外面设置取值的那个编码器检测模块的属性一样,这样就构成了一个条件循环,最后在当循环外面在拖入一个马达控制模块;❖那么这个程序的功能就是:当a<=30即是当前马达转动的路程没由达到30时,就不停的启动马达1正转,反之a>30则是马达转动的路程达到30时,就跳出当循环,停止马达1。