慧鱼——ROBO PRO(小白笔记

# 慧鱼板编程——ROBO PRO软件(小白笔记)

目录

  1. 写在前面的话
  2. 常用编程模块图形
  3. 等待输入
  4. 脉冲计数
  5. 循环计数
  6. 级别 2&3:子程序控制subprograms & 变量
    1. 子程序
    2. 带编码电机的电机控制
      A. 延时函数模块
    3. 变量和指令
      A. 并行进程
      B.面板

未完待续————


写在前面的话

我是一名大一生,正在通过软件手册学习ROBO PRO,考虑到手册的知识内容量大,故写下此小白笔记,以供参考,如果对你也有帮助,自然是更好,谢谢!

ROBO PRO也是比较古老的软件了,许多操作小白使用起来颇有不便,但也是熟能生巧罢!软件的操作是比较形象的(流程图),学习起来应该是比较容易上手的。


常用编程模块图形

在这里插入图片描述
右键相应的模块可以打开他的属性框↓,从而调整他的输入输出端口、输入输出模式、以及各种属性信息

比如说下方的电键
Digital input:
I1-8是对应板子上的八个端口,MxE是对应编码器的输入(见下文编码电机部分)
Interface/ Extension:
选择拓展板以及外接板
Sensor type:
传感器类型
Swap···:
可以选择1/0分支的顺序不变,也可以调换顺序

电键在按下时,电路接通,此时为1

在这里插入图片描述
可以选择速度1-8
控制顺时针运动(cw clockwise)还是逆时针运动(ccw counterclockwise)还是停止
在这里插入图片描述


等待输入

等待控制板的某个输入由一种特定的方式改变为一种特定的状态。
“等待输入”模块也可以由“分支”模块的组合来代替,但是等待导入模块更简单,更容易理解。
在这里插入图片描述


脉冲计数

在这里插入图片描述
很多慧鱼机器人模型都使用脉冲齿轮。这些齿轮每旋转一圈会触动四次开关。有了这些脉冲齿轮,你可以以一个精确的转数来驱动电机,而不是根据给定的时间。为了达到这一点,你需要计算齿轮的某个输入处的脉冲数。脉冲计数模块(见左图)就是用来等待用户定义的脉冲数。对于这种模块,同样地,你可以设定所计脉冲为 0-1,1-0 或者两者皆可的。脉冲齿轮通常等待双向的变化,这样用一个四齿脉冲轮达到了每转 8 个脉冲的精度。


循环计数

在这里插入图片描述
(将程序中的特定部分多次运行

循环计数模块有一个内部计数器。如果循环计数通过=1 入口进入,则计数器被置为 1。 如果循环计数通过+1 入口进入,则计数器加上 1。根据计数器显示数值是否大于你先前设定的数值,循环计数分支将转到 Yes(Y)或 No(N)出口。因此,只有当循环次数与你先前设定的数值相等时,循环计数分支才会转到 Yes 出口。从另一方面来说,如果需要进一步的循环,循环计数分支将会转到 No 出口。作为一种判断模块, 你也可以通过属性窗口将Yes 与 No 出口互换。

类似c中的for循环


级别 2&3:子程序控制subprograms & 变量

在这里插入图片描述
这是新增的左侧边栏。

子程序

你可以新建一个子程序,会出现一个窗口,在窗口内你可以输入子程序的名称和描述
在子程序状态栏上面会显示新的子程序。

任何时候,你都可以点击子程序栏上的程序名在主程序和子程序之间切换。在这里插入图片描述
在这里插入图片描述
出口同理。

事实上,这样的功能类似于c的函数,你将特定的功能封装到一个功能函数中,这样就可以在主函数中重复调用了。

在主函数中,你可以在Loaded programs 栏下的模块组窗口中找到它,还有你的程序名。如果你还没有保存过你的文件,则其文件名为 unnamed1。


带编码电机的电机控制

下图中,程序等待M2E (M2 Encoder M2编码器)变1(即M2完成了75次脉冲的计数),然后M2E停止。
M1E可以理解为上面的编码电机调用模块的一个返回值,当编码电机完成了上面的编码电机函数里咱设置的distance数值后给M1E返回一个1(M1E初值为0)。这个模块就相当于while(M1E)一直在等待M1E变成1。在线运行,也是没问题的哈。转1圈左右。
在这里插入图片描述
在这个过程中,程序可以进行别的操作,相当于M2编码器的输出变成了一个独立的事情

编码电机连接到 TX 控制板时,电机需要同时连接到 1 个输出接口(M1-M4)和 1 个计数器输入接口(C1-C4)。编码电机默认相同编号的计数器输入和电机的输出
在这里插入图片描述

题目是高级电机控制昂,右边动作状态里的synchronous distance是表示同步距离的意思,可以同时控制两个电机运行同样的圈数,以实现两个同步。
在这里插入图片描述ps:
但是可能不能达到完全的同步,脉冲会存在先后的误差。

延时函数模块

这是基于过程化的编程,肯定要有等待程序。平行四边形M1E就是等待程序。点击一个普通延时模块,再右击查看属性,把数字量输入改到M1E就可以变成延时函数模块了。

在这里插入图片描述

这个老哥讲的好极了


变量和指令

在这里插入图片描述
你可以通过发送指令到变量,来改变变量中存储的值。一个变量可以接受三种不同的指令:=,+和–。=指令是用新值覆盖存储的值。+和–指令是对存储的值做加减值运算。

橙色的线与流程线相区别,代表了指令的输入输出。

在这里插入图片描述
在“分支,等待,…(Branch,Wait,…)”组中,你会发现 Yes / No 分支判断模块。

并行进程

程序中可以有多个开始模块,所有带有开始模块的程序都是并行运行的。
在这里插入图片描述
这样可以实现两个进程的同时性以及独立性,而变量可以在多个进程之间传递信息。


面板

ROBO Pro 里有面板。面板是一个你自己的可以放置显示和控制按钮的页面。
在这里插入图片描述

未完待续。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值