6) drive( 0 , 80 );
本句的意思是让机器人右转,您可以计算验证一下;
理解了吗?如果你还有什么疑问,可以参看本书的第6章,相信你一定能很快掌握JC语言!接下来就要把JC代码程序下载到机器人里运行、调试了,点击工具栏中的“下载”快捷按钮
,会出现一个“智能下载程序”对话框,并显示下载进程,待看到“下载成功”
等字样,就可以让机器人运行这个程序了。
? 程序的下载及运行
下载程序须按照下述方法:用串口通信线一端接机器人的下载口,另一端接计算机机箱后面的一个九针串口,打开机器人电源开关,单击菜单栏中“工具(T)”选项卡,在弹出的下拉菜单中单击“ 下载当前程序(D)”,就可以下载程序了。
注:下载程序也可以使用工具栏上的“下载”快捷按钮载JC代码程序)。
(下载流程图)或
(下
图4-5 下载对话框
按照上述步骤操作后,会出现一个智能下载程序对话框,并显示下载进程,等出现“下载成功!”字样时,程序已经下载到机器人中了。关闭对话框,拔下串口通信线,按下机器人身上的“运行”按钮,机器人就会运行所下载的程序。
? 调试程序
程序下载运行时,注意检查机器人运行状态是否符合要求,比如前进的距离、转向的角度是否恰当。如不合要求,就需要调整参数,甚至修改程序,再下载运行,直到满意为止。
21 第三节 流程图编程方法
4.3.1模块的基本操作
模块是编程的基本单元,对模块的操作也是经常要用到的。因此本章对模块的基本操作进行详细介绍。
? 模块的新增、连接和插入
1.模块的新增、连接和插入
从模块库内选择一个模块的图标,把它移入流程图生成区,你的程序就新增了一个模块。要使这个模块在程序中变为有效,就需要将此模块连接到程序主体上。
要在程序的末端新增一个模块,先在模块库中点击需要增加的模块,模块就可随光标移动了,将新增模块拖到流程图生成区中,放在程序末端,光标的顶点放在上方模块的红点处,单击鼠标,新增模块就与程序主体连接上了。(注:单击菜单栏中的“视图”选项卡,在下拉菜单中选择“连接指示”选项,可以显示/隐藏模块上的红点)
模块连接上之后,会出现以下标志:
a) 模块之间有箭头连接起来; b) 上方模块的“红点”消失;
c) JC代码显示区自动生成与新增模块对应的JC代码。
在某个模块后面插入一个新增模块时,先把这个模块后面的部分移开,把新的模块连接在这个模块后面,再把前边移开的部分连接在新模块的后面。
? 模块的移动
调整模块的前后顺序。以要操作的第一个模块为界,把原流程图分成两个部分,把两个操作模块都移开,再以与原来相反的顺序把它们插入即可.
将模块从一个任务移动到另外一个任务。把要插入的模块从原任务中移出来,然后插入到目标任务中去。
? 模块的复制
无法直接复制一段流程图程序,如果某一段流程图程序重复使用次数很多,建议将它编成子程序,就可以在主程序中很方便地调用。
? 模块的删除
流程图生成区中的模块均可以删除( “主程序”、“子程序”模块除外),删除的方法为:将要删除的部分从程序主体中“拿起”,再将其拖到垃圾箱处,鼠标在垃圾箱上点击一下,此部分就会自动消失。
另:从模块库中取出的模块在没有“放下”之前,可以通过点击鼠标右键取消。
22 4.3.2模块的功能和使用
VJC的模块分八类:执行器模块库、传感器模块库、控制模块库、程序模块库、AS多功能扩展卡、伺服电机驱动卡、伺服电机驱动卡(A) 及通讯模块。不同型号的机器人能用的模块略有不同,下面分别对各模块库加以介绍。(通讯模块和伺服电机驱动模块在此不做介绍)
? 执行器模块库
执行器模块和机器人的动作有关,其中包括:直行、转向、启动电机、停止电机、延时等待、发音、显示、计算、设置眼睛以及自定义模块等。AS-EI型号的机器人,执行器模块不包含直行、转向模块,但增加了马达启动、马达停止模块,启动电机以及停止电机模块也与其它型号机器人有所不同,这些模块该如何使用呢?
? ――直行―― 图标 模块 对话框
⑴ 功能:“直行”模块主要用于控制机器人前进、后退。
⑵ 操作:将“直行”模块移到流程图生成区,并连接在程序中的相应位置。设置参数时,右击“直行”模块,在弹出的对话框中输入速度与时间。
⑶ 设置参数说明:
速度:有两种方式进行设置。可在对话框中直接输入速度值,也可以用鼠标拖动速度标尺上的游标来设置速度。当输入值为正时,机器人前进;输入值为0时,机器人停止;输入值为负时,机器人后退。输入值的绝对值越大,机器人移动速度就越快。这里设置的速度为一个占空比,因此没有单位。
注意:模块的名称会随着不同的速度而变化,分别为“前进”、“后退”、“停止”。 时间:在对话框中输入机器人移动的时间,单位为秒;你也可以选中“随机时间”,它可产生小于输入值的随机时间。
? ――转向――
图标 模块 对话框
23
⑴ 功能:“转向”模块主要用于控制机器人转向。
⑵ 操作:将“转向”模块移到流程图生成区,并连接在程序中的相应位置。设置时,右击“转向”模块,在弹出的对话框中输入速度和时间。
⑶ 设置参数说明:
速度:可用两种方式进行设置。可在对话框中直接输入速度值;也可以拖动速度标尺上的游标进行设置。当输入值为正时,机器人右转;值为0时,机器人停止;值为负时,机器人左转;输入值的绝对值越大,机器人转动速度就越快。
注意:模块的名称会随着不同的速度而变化,如果设置右转速度,模块名称为“右转”;如果设置左转速度,模块名称为“左转”;如果设置速度为0,模块名称为“停止”。 时间:在时间输入对话框中输入机器人转向的时间,单位为秒;你也可以选中“随机时间”,它可产生小于输入值的随机时间。在机器人没有安装特定的角度传感器之前,机器人的转角是由速度和时间两个参数共同决定的。
? ――启动、停止电机――
图标 模块 对话框 ⑴ 功能: “启动电机”模块主要用于控制机器人的左右电机功率。此模块可实现左右两只主动轮按不同速度、不同方向行走,如直行、旋转、走弧线等。
“停止电机”模块主要用于停止驱动电机和扩展电机。
⑵ 操作:用鼠标将“启动电机”模块移到流程图生成区,并连接在程序中的相应位置。设置时,右击“启动电机”模块,在弹出的对话框中输入左/右电机功率。
⑶ 设置参数说明:
左/右电机功率设置:可用两种方式进行设置:直接输入左/右电机功率值,或拖动游标进行设置。
扩展电机设置:扩展电机的速度是固定的,速度值为100。如果要改变扩展电机的转向,
24 需将扩展电机的接线端子拔下来,调个方向。
? ――延时等待――
图标 模块 对话框
⑴ 功能:“延时等待”模块主要是让机器人的前一个状态保持一段时间。
⑵ 操作:用鼠标将“延时等待”模块移到流程图生成区,并连接在程序中的相应位置。设置时,右击“延时等待”模块,在弹出的对话框中输入时间参数,以“秒”为时间单位。
⑶ 设置参数说明:
时间:在对话框中输入机器人延时的时间,单位为秒;你也可以选中“随机时间”, 它可产生小于输入值的随机时间。
? ――发音――
图标 模块 对话框 ⑴ 功能:“发音”模块主要用于让机器人发音,唱一个音符。
⑵ 操作:用鼠标将“发音”模块移到流程图生成区,并连接在程序中的相应位置。设置时,右击“发音”模块,在弹出的对话框中可选择简谱的节拍(如二分之一音符)及音阶(如1、2、3),也可直接输入时间与音频参数。
⑶ 设置参数说明:
时间:在对话框中输入机器人发音的持续时间,单位为秒。
二分之一音符代表发音0.5秒,四分之一音符代表发音0.25秒,其余以此类推。 发音频率设置:这是机器人发音的音阶,单位为赫兹。 1、2、3等,代表用简谱音阶。
休止符,表示不发声,需指定时间间隔。
自定义,用于在音频输入对话框直接输入发音的频率,
? ――显示――
25