变量

目的:

创建一个完成指定任务的程序有很多种方法。没有优化的程序的体积会变得很大。编程学习中的一个重要任务是学习使用循环结构和变量来控制程序的大小。循环结构允许程序重复执行一段程序功能。 变量允许我们对它写入数值或读取数值。这两者的使用使得我们可以对一个系统进行复杂的逻辑控制。

设备:

RoBo Pro软件

过程:

RoBo Pro软件提供的非常强大的功能之一就是变量的使用。变量实际是内存中的一个可用于存储信息的区域。在程序执行过程中,我们可以查询变量中的信息并使程序根据这个信息进行不同的操作。 这个被存储的信息可以是:特定的开关是否被按下、是否已经达到预设的数值,或者是特定事件发生的频率。

一个变量模块有两个部分,一个是我们可以用来访问该变量的固定名称(name),另一个是初始值(Initial value),这可以是一个表达式或一个数值,而且是可变的。

变量的表达式可以有几种类型。变量可以是一个模拟输入,或是一个数字,也可以等于其他变量。我们可以操作这些变量模块来得到我们想要的输出。

现在,我们打开robo pro软件,新建一个程序,将级别(level)设置为“级别3:变量(level 3:Variables)”或者更高的级别,点击“COM/USB”,在弹出面板中,设置为“Simulation(仿真)”模式。

从“编程模块(Program elements)”->“变量、定时器(Variables,timers..)”子分类中,将一个“全局变量(Variable global)”模块拖拽到编程窗口中,参见下图:

右键单击该模块,打开如图所示面的对话框。

在这个对话框中,将变量模块的“名字(name)”设置为“Boxes”。注意对于不同的变量,它们的名字必须也是不同的。如果两个变量模块的名字是相同的,那么它们代表一个内存存储区域,说明它们是一个变量模块。

编写程序:

在程序中有时可能需要对变量进行+1或-1的操作。当其用于计数功能时尤其如此。从“编程模块(Program elements)”->“指令(Commands)”子分类中,将一个“加法(Plus)”模块拖拽到编程窗口中。

这个指令模块会在程序每次执行到这一步时将“Boxes”变量的值增加1。

你也可以单击该指令模块,在其属性设置面板中修改指令和数值。

通常在使用了变量的程序中,我们会将变量中的数值作为一个分支模块的判断条件。根据判断的结果,程序执行不同的操作。从“编程模块(Program elements)”->“分支、等待(Branch,wait..)”子分类中,将一个“带有数值输入的分支(Branch with data input)”模块拖拽到编程窗口中。

分支模块是用于根据变量的值进行程序的分支处理。根据比较结果,程序决定是继续往下(Y分支)输出,还是往右侧(N分支)输出。

右键单击“带有数值输入的分支(Branch with data input)”模块,弹出属性设置面板,在“Condition(条件)”区域可以设置判断条件和数值,在“Swap Y/N branches”区域可以选择交换Y分支和N分支的位置。

参照下图编辑你的程序并在线运行,注意程序在运行的时候,变量模块中的数值会发生变量。

以上程序还可以被写成下面这个样子,上面和下面这两个程序本质上是一样的。

后续本人会将研究代码开源到github,欢迎各位持续关注

慧鱼机器人编程17变量相关推荐

  1. 慧鱼机器人编程19数据

    目的: 收集和处理数据的能力对高级编程至关重要.你可以建立一个自动化的温室,在一天的时间里根据温度的变化控制风扇和加热器的打开与关闭,但是如果没有数据记录,你不会知道在你不在的时候究竟发生了什么.因为 ...

  2. 慧鱼机器人编程语言的特点_慧鱼机器人课程设计报告.doc

    目录 1.绪论 1 1.1课题背景 1 1.2 慧鱼机器人 2 1.3 走进实验室 3 1.4 按键式传感器 3 1.5 设计工作原理 4 1.6慧鱼模型操作规程 5 2. 仿生机器人 6 2.1仿生 ...

  3. 慧鱼机器人编程语言的特点_慧鱼机器人课程设计说明书

    - 1 - 慧鱼机器人 一.概述 1.1 机电一体化技术 1.1.1 机电一体化技术的定义和内容 机电一体化技术综合应用了机械技术.计算机与信息技术.系统技术.自动控制技术. 传感检测技术.伺服传动技 ...

  4. 慧鱼机器人编程语言的特点_慧鱼机器人实验报告.doc

    慧鱼机器人实验报告 篇一:隧道机器人慧鱼实验报告 慧鱼综合性实验报告 实验课题:隧道机器人的组装和控制器 控制运行原理 一.实验类型:综合性实验 二.实验课题:隧道机器人的组装和控制器控制运行原理. ...

  5. 慧鱼小车编程20构建控制面板

    目的: 本节中你将学习从计算机上建立一个人机交互控制面板来远程控制车辆.你的慧鱼小车将通过蓝牙与计算机连接到一起,最佳的远程控制距离约在十米以内.在开始本节的学习内容前,你有必要先搭建出一辆可以进行控 ...

  6. 机器人编程与python语言的区别_一分钟看懂“机器人编程”和“少儿编程”的区别!...

    随着编程学习全球化的趋势,国内编程学习热潮日盛,越来越多的家长开始让孩子接触学习编程. 然而在挑选学习课程的过程中,机器人编程和少儿编程是最让家长头疼的问题之一. 因为两者的名称都有"编程& ...

  7. 焊接机器人编程c语言,机器人现场编程与调试(cnc上下料,弧焊,喷涂,点焊等),就是这么全!...

    原标题:机器人现场编程与调试(cnc上下料,弧焊,喷涂,点焊等),就是这么全! 1.详细讲解了工业机器人现场编程与设计的方法及要点. 2.所讲内容涉及:工业机器人搬运工作站.工业机器人CNC机床上下料 ...

  8. ur机器人编程-程序流程

    ur机器人编程-程序流程 If else命令, 添加质量检验功能,如果合格,放入包装箱,不合格放到其他的位置 1.单击moveL命令,单击高级选项卡,单击if-else按钮.If语句便插入到程序树中. ...

  9. ur机器人编程-坐标系

    ur机器人编程-坐标系 特征:有三个相互垂直的xyz坐标轴组成 基座特征: 工具特征:tcp Tcp:控制xyz 控制工具围绕每个轴的旋转,Rx:Ry:Rz: 可以设置特征,通过移动特征移动该路点 1 ...

最新文章

  1. 4 种主流的 API 架构风格对比
  2. IDA中的SIG应用
  3. [数据结构] - 串
  4. 四叶草社交平台——十天冲刺(10)
  5. PHP和MySQL的交互实验注意事项,PHP 和 MySQL 开发中要注意的8个技巧
  6. GPS、GNSS、NB-IOT介绍
  7. Oracle exp/imp导出导入命令及数据库备份
  8. Qt不规则窗体和按键
  9. html中下拉日历控件,HTML5之日历控件
  10. URGENT/11 白皮书笔记——远程危害VxWorks的关键漏洞6.9.3及以上
  11. 联想服务器开机显示英文,在开机自检时,在联想LOGO画面处死机(即自检时死机)...
  12. 如何修改网页视频播放倍速?(最高16倍速)
  13. 软件测试工程师如何保证软件的质量?
  14. 电力系统系统潮流分析【IEEE 57 节点】(Matlab代码实现)
  15. 英汉互译在线翻译-英文翻译中文的翻译
  16. 爬取豆瓣电影剧情片排行榜
  17. 掘安杯原题复现---Web签到题
  18. 懈寄生---走出软件作坊:三五个人十来条枪 如何成为开发正规军(十四)(转载)
  19. linux-web服务
  20. DL380 Gen7 ILO无法进入,报错。解决一例。

热门文章

  1. 人与人之间的信任 无信不交往,守信方长久
  2. 注意力机制模块解析(附带代码链接)——SGE(Spatial Group-wise Enhance)
  3. 双向智能电表是什么?什么是双向智能电表?
  4. 植物大战僵尸外挂 核心源代码
  5. 手把手教你用Python做个可视化的“剪刀石头布”小游戏
  6. 个人面经整理宁波银行
  7. ExtJS中xtype一览
  8. 9012 年,中台到底有多火?
  9. 算法篇 --- BF算法(暴力匹配算法)
  10. win7视力保护色设置