版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、能力风暴的编程技术 VJC1.5简介 图形化交互式C语言(简称VJC)是用于能力风暴智能机器人系列产品的软件开发系统,具有基于流程图的编程语言和交互式C语言,为开发智能机器人项目,程序与算法,教学等提供了简单而又功能强大的平台。流程图 流程图是用一些图框表示各种操作。用图形表示算法,直观形象,易于理解。流程图能够比较清楚的显示出各个框直接的逻辑关系,因此它是表示算法的较好工具。 例:将50名学生中成绩在80分以上者的学号和成绩打印出来。流程图的组成 表示相应操作的框带箭头的流程线 框内外必要的文字说明 图形化编程 VJC的图形化编程采用的就是流程图模型。它由几种基本形状的模块及带有箭头的方向线
2、组成 图形模块包括执行器模块(蓝色矩形)、单功能传感器模块(紫色平行四边形)、带判断功能的传感器模块(紫色菱形)、控制模块(红色菱形)和程序模块(黄色矩形或椭圆形)五种。 流程图支持多任务程序,子程序调用,浮点数和整数,全局变量,简单表达式,复合条件判断,循环嵌套等。 VJC 1.5界面介绍流程图编程方法模块的基本操作 模块的新增和连接模块的移动模块的删除图形模块的使用方法 直行模块 (1)功能:“直行”模块主要用于控制机器人前进、后退。 (2)操作:用鼠标将“执行器模块库”中的“直行”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“直行”模块,在弹出的对话框中输入移动快慢与时间。
3、 (3)设置参数说明: ? 速度:可用两种方式进行设置。可在速度输入对话框中直接输入前进/后退速度值;当输入值为1100时,机器人前进速度由慢到快;值为0时,机器人原地不动(停止);值为-1-100时,机器人后退速度由慢到快;输入值的绝对值越大,机器人移动速度就越快;也可以直接用鼠标拖动旁边滑线按钮来设置速度。 ?时间:在时间输入对话框中输入机器人移动的时间,单位为秒;你也可以选中时间因子复选框,它可随机产生小于输入值的随机时间。 转向模块(1)功能:“转向”模块主要用于控制机器人转向。 (2)操作:用鼠标将“执行器模块库”中的“转向”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击
4、“转向”模块,在弹出的对话框中输入左/右转速度和时间。 (3)设置参数说明: ? 转向速度:可用两种方式进行设置。可在速度输入对话框中直接输入左转/右转速度值;当输入值为1100时,机器人右转速度由慢到快;值为0时,机器人原地不动(停止);值为-1-100时,机器人左转速度由慢到快;输入值的绝对值越大,机器人转动速度就越快;也可以直接用鼠标拖动旁边滑线按钮来设置转向速度。 注意:图形模块的名称根据设置的不同速度方向而变化,如果设置右转速度,模块名称为“右转”,如果设置左转速度,模块名称为“左转”,如果设置速度为0,模块名称为“停止”。 启动、停止电机模块 (1) 功能: “启动电机”模块主要用
5、于控制机器人移动,可以分别控制机器人的左右电机快慢和方向。 “停止电机”模块主要用于关闭两个电机。 (2) 操作:用鼠标将“执行器模块库”中的“启动电机”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“启动电机”模块,在弹出的对话框中输入左/右电机功率参数,实现左右两只主动轮按不同速度、不同方向行走。 延时等待模块 (1)功能:“延时等待”模块主要是让机器人保持前一个状态一段时间。 (2)(2)操作:用鼠标将“执行器模块库”中的“延时等待”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“延时等待”模块,在弹出的对话框中输入 “等待时间”参数,以“秒”为时间单位。 发音模
6、块 (1)功能: “发音”模块主要用于让机器人发音,唱一个音符。 (2)操作:用鼠标将“执行器模块库”中的“发音”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“发音”模块,在弹出的对话框中可按单选简谱的节拍及音阶,也可直接输入音频与发声时间参数。 (3)设置参数说明: 发音持续时间:在时间输入对话框中输入机器人发音的持续时间,单位为秒显示。 二分之一音符代表发音0.5秒,四分之一音符代表发音0.25秒。 发音频率设置:机器人唱的音符,单位为赫兹。 1,2,3,代表用简谱表示的音符。 休止符,表示不发声。 自定义,在音频输入对话框直接输入发音的 频率。 显示模块 (1)功能:“显示
7、”模块主要用于在机器人LCD上显示信息。 (2)操作:用鼠标将“执行器模块库”中的“显示”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“显示”模块,在弹出的对话框中输入显示信息。选择“引用变量”,可以显示出程序中各种全局变量,显示模块与传感器模块相配合,就可以显示各个传感器的检测值。 (3)设置参数说明: 显示信息设置:直接在显示信息输入对话框输入显示英文信息。可以显示两行信息,每 行最多可以显示16个字符。 计算模块(1)功能:“计算”模块主要用加减乘除对变量进行计算和赋值。(2)操作:用鼠标将“执行器模块库”中的“计算”模块移到流程图生成区并连接在程序中的相 应位置。设置时,
8、右击“计算”模块,在弹出的对话框中输入计算表达式。 (3)设置参数说明:计算结果赋值设置:点击整型变量按钮,弹出变量百宝箱对话框,在变量百宝箱对话框 中选择计算结果存放的变量。 运算符号设置:在下拉列表框中选择运算符号。 计算数设置:在输入框中输入整数或小数。 红外检测模块(1)功能:红外传感器包括两个红外发射器和一个红外接收器,能够检测到机器人左/右/前方是否有障碍物。 (2)操作:用鼠标将“传感器模块库”中的“红外检测”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“红外检测”模块,在弹出的对话框中设置相应的参数 (3)设置参数说明: 单功能模块 “红外变量一“按钮:表明存储红
9、外传感器检测值的变量。若要更换存储变量,左键单击击该按钮,可选择其它两个变量,红外变量二和红外变量三。 带判断功能的模块 “红外变量一”按钮,功能同上 第二项是条件比较判断关系,第三项是方向。 例:“=” “左”代表如果检测到障碍在左边,条件判断成功,执行“是”一侧连接的模块;其他任何情况条件判断失败,执行“否”一侧连接的模块。 碰撞检测模块(1)功能:“碰撞检测”模块,主要用于检测机器人是否碰到障碍物,它能判断左/右/前/后/左前/右前/左后/右后八个方向。(2)操作:用鼠标将“传感器模块库”中的“碰撞检测”模块移到流程图生成区并连接在程序中的相应位置。设置时,右击“碰撞检测”模块,在弹出的
10、对话框中设置相应的参数。 (3)设置参数说明: 单功能模块 “碰撞变量一“按钮:表明存储光敏传感器检测值的变量。若要更换存储变量,鼠标左键单击该按钮,可选择其它两个变量,碰撞变量二和碰撞变量三 带判断功能模块 “红外变量一”按钮,功能同上 第二项是条件比较判断关系,第三项是方向。注意:第三项同时可选择多个方向,表示这些方向上的均发生碰撞。这时编辑框中的内容会相应变化,表明碰撞发生的方向 ,如作前、左后同时选则表示左边有碰撞。亮度检测模块(1)功能:“亮度检测”模块主要用于检测环境的光线明暗,传感器的返回值为0255,其值越大,说明光线越暗。 (2)操作:用鼠标将“传感器模块库”中的“亮度检测”
11、模块移到流程图生成区并连接在程序的相应位置。设置时,右击“亮度检测”模块,在弹出的对话框中设置相应的参数 (3)设置参数说明: 单功能模块 :“方式“单选按钮: “亮度变量一”按钮:表明存储光敏传感器检测值的变量。若要更换存储变量,可点击它,可选择其它两个变量,亮度变量二和亮度变量三 带判断功能的模块 : “方式“单选按钮:功能同上 ; “亮度变量一”按钮:功能同上; 条件判断关系:设置左边的亮度变量与右边的参数如何进行比较。 第三项是参数:用于和亮度检测值进行比较,需要根据机器人实际运行情况进行调整。 声音检测模块 (1)功能:“声音检测”模块,主要用于检测声音的大小,反馈的检测值为0255
12、之间的整数,值越大,声音越响,值越小,声音越弱。 (2)操作:用鼠标将“传感器模块库”中的“声音检测”模块移到流程图生成区并连接在程序的相应位置。设置时,鼠标右键单击“声音检测”模块,在弹出的对话框中设置相应的参数。 (3)设置参数说明:单功能模块 声音变量一:用来存储声音传感器检测值的变量。若要更换存储变量,鼠标左键单击该按钮,可选择其它两个变量,声音变量二和声音变量三。 带判断功能的模块 声音变量一:功能同上 条件比较关系:设置左边的声音变量与右边的参数如何进行比较。 第三项声音参数:用于和声音检测值进行比较。需要根据机器人实际运行情况进行调整。 系统时间模块(1)功能:“时间”模块主要用
13、于检测机器人运行的时间,开机计时从零开始,下载程序后和按下复位键都会使时间恢复从零开始。 (2)操作:用鼠标将“传感器模块库”中的“系统时间”模块移到流程图生成区并连接在程序的相应位置。设置时,鼠标右键单击“系统时间”模块,在弹出的对话框中设置相应的参数。 (3)设置参数说明: 单功能模块 :“时间变量一”按钮:用来存储系统时间的变量。若要更换存储变量,可点击它,可选择其它两个变量,时间变量二和时间变量三。 带判断功能的模块:“时间变量一”按钮:功能同上; 条件比较关系:设置左边的时间变量与右边的参数如何进行比较。 第三项时间参数:用于和时间检测值进行比较。需要根据机器人实际运行情况进行调整。
14、 转角检测模块(1)功能:转角检测”模块用于左右轮子旋转的角度和圈数,传感器的返回值为旋转的计数值。轮子转一圈,有32个计数脉冲,一个计数对应旋转角360/3211度。(2)操作:用鼠标将“传感器模块库”中的“转角检测”模块移到流程图生成区并连接在程序的相应位置。设置时,右击“转角检测”模块,在弹出的对话框中选择对左右轮旋转计数的检测方式和判断条件。 (3)设置参数说明: 单功能模块:检测对象; “转角变量一”按钮:用来存储旋转计数的变量。若要更换存储变量,可点击它,可选择其它两个变量,转角变量二和转角变量三 。 带判断功能的模块:检测对象:功能同上; 条件比较关系:设置左边的转角变量与右边的
15、参数如何进行比较。 第三项是参数:用于和旋转检测值进行比较。需要根据机器人实际运行情况进行调整。 多次循环模块(1)功能:“多次循环”模块功能允许多次执行同一组指令。 (2)操作:用鼠标将“控制模块库”中的“多次循环”模块移到流程图生成区并连接在程序的相应位置。设置时,右击“多次循环”模块,在弹出的对话框中输入需循环次数值,然后点“确定”。在“多次循环”流程图中插入需重复处理的其它模块。 (3)范例:让机器人连续唱do re mi 三次。操作如下:永远循环模块(1)功能:“永远循环”模块功能允许永远执行同一组指令。 (2)操作:用鼠标将“控制模块库”中的“永远循环”模块移到流程图生成区并连接在
16、程序的相应位置。在“永远循环”流程图中插入需永远循环处理的模块。 (3)范例:要求机器人如遇有碰撞,则发音,如下图: 条件循环模块(1)功能:当设定条件成立,就进行循环。 (2)操作:用鼠标将“控制模块库”中的“条件循环”模块移到流程图生成区并连接在程序的相应位置。设置时,右击“条件循环”模块,在弹出的对话框中输入判断条件,然后点“确定”。在“条件循环”流程图中插入需重复处理的其它模块。 (3)范例:在周围很安静的情况下,机器人一直等待主人下达命令,直到你发出声音,机器人才开始运动,如图所示: 条件判断模块(1)功能:条件判断的功能非常强大,根据条件在两组指令中选择一组执行,可以对任何全局变量
17、和传感器变量进行判断,如果满足条件就执行左边“是”的指令,不满足条件就执行右边“否”的指令。 (2)操作:用鼠标将“控制模块库”中的“条件判断”模块移到流程图生成区并连接在程序的相应位置。设置时,右击“条件判断”模块,在弹出的对话框中输入判断条件,然后点“确定”。在“条件判断”流程图中插入其它执行模块。 任务开始模块(1)功能:用于新建一个与主程序同时运行的子任务。 (2)操作:用鼠标将“程序模块库”中的“任务开始”模块移到流程图生成区,任务开始模块自动定位在主程序右侧。你可以象编写主程序一样编写新任务。 子任务可以像普通模块一样删除。 新建子任务不能超过16个。 结束模块(1)功能:用于给主
18、程序或任务加一个结束标志,该模块不产生JC代码。结束模块后不能连接其他模块。 (2)操作:用鼠标将“程序模块库”中的“结束”模块移到流程图生成区并连接在主程序或任务的结束位置。 新建子程序模块(1)功能:把需要重复使用的一组模块新建为“子程序”,便于主程序调用,以精简程序。 (2)操作:新建子程序是一个特殊的模块,它是子程序调用的第一步。其操作如下: ? 用鼠标点击“程序模块库”中的“新建子程序”模块,就会弹出一个新建子程序对话框。通过该对话框,用户可以调用已经建立的任何子程序。从子程序位置组合框中,我们可以选择提供子程序的模板。“系统子程序”是提供常用的子程序模板;“其它程序“可以选择任何已
19、编制程序,以调用其中存在的子程序。 当从子程序位置组合框中选择“系统子程序“时,右边的列表框中显示了系统提供的常用子程序模板。选择“自定义”子程序模板建立一个新的空白子程序,你可以在子程序名称处为这个子程序命名;其他系统子程序模板包括唱歌、跳舞、避障等,均是系统提供的比较常用的子程序模板,用户可以在此模板的基础上对已编好的程序进行修改。 当从子程序位置组合框中选择“其它程序”,弹出一个文件打开对话框,我们在这里选择任一流程图文件,如果该流程图文件包括子程序,列表框中会出现存在的子程序名,用户也可调用这些子程序。 新建子程序后,会自动进入该子程序的编辑窗口,可以像编辑主程序一样编辑子程序。每个子
20、程序都有独立的编辑窗口。 ? 新建子程序不能超过10个子程序模块(1)功能:调用一个用户“子程序”,只能在主程序中使用。只有在新建了用户子程序之后这个模块才能在主程序界面中出现。 (2)操作:在主程序窗口,可以在“程序模块库”中看到新建的子程序调用模块图标(如果不在主程序窗口,可以用工具栏中的“主程序”按钮 切换到主程序窗口)。子程序调用模块可以和其他模块一样移入到流程图生成区,连接在主程序中使用。 在子程序调用模块上点击右键可打开子程序设置对话框,可以选择“编辑”按钮,即可切换到此子程序的编辑界面。 子程序返回模块(1)功能:结束一个用户“子程序”,只能在子程序中使用。只在子程序界面中出现。 (2)操作:用鼠标将“程序模块库”中的“子程序返回”模块移到流程图生成区并连接在任务的结束位置。 多任务编程方法为什么要用多任务 有时候要求机器人同时做几件事,比如说让机器人边唱歌边跳舞,在编程的时候就可以把唱歌、跳舞分为两个任务编写,像这样的编程方法叫做多任务。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025饮食类销售代理合同书范本
- 2025合同模板国际民间贸易合同范本
- 综合实践活动在小学体育教育中的应用探索
- 未来工作方式下的小微企业园区规划设计
- 老年慢性肾病的综合管理与层次化服务模式探索
- 二零二五年度存量房买卖服务居间合同(含独家代理)3篇
- 2025年太阳能设备运输保险合同
- 2025年粤教沪科版高二历史上册阶段测试试卷含答案
- 2025年浙教版九年级历史上册阶段测试试卷含答案
- 2025年苏教版必修3历史上册阶段测试试卷
- 河南省濮阳市2024-2025学年高一上学期1月期末考试语文试题(含答案)
- 割接方案的要点、难点及采取的相应措施
- 2025年副护士长竞聘演讲稿(3篇)
- 2024年08月北京中信银行北京分行社会招考(826)笔试历年参考题库附带答案详解
- 原发性肾病综合征护理
- (一模)株洲市2025届高三教学质量统一检测 英语试卷
- 基础护理学导尿操作
- DB11∕T 1028-2021 民用建筑节能门窗工程技术标准
- (初级)航空油料计量统计员技能鉴定理论考试题库(含答案)
- 执业药师劳动合同范本
- 2024年高考英语复习(新高考专用)完形填空之词汇复现
评论
0/150
提交评论