ROBOLAB编程指南.docx

上传人:b****4 文档编号:3907840 上传时间:2022-11-26 格式:DOCX 页数:16 大小:926.89KB
下载 相关 举报
ROBOLAB编程指南.docx_第1页
第1页 / 共16页
ROBOLAB编程指南.docx_第2页
第2页 / 共16页
ROBOLAB编程指南.docx_第3页
第3页 / 共16页
ROBOLAB编程指南.docx_第4页
第4页 / 共16页
ROBOLAB编程指南.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

ROBOLAB编程指南.docx

《ROBOLAB编程指南.docx》由会员分享,可在线阅读,更多相关《ROBOLAB编程指南.docx(16页珍藏版)》请在冰豆网上搜索。

ROBOLAB编程指南.docx

ROBOLAB编程指南

ROBOLAB编程指南

乐高摄像头使用指南

在任一级别的ROBOLAB编程环境中都可以使用乐高摄像头。

当需要使用时,可以打开一个多媒体窗口,来显示摄像头中看到的图像。

在导航者级别的编程环境中,摄像头的多媒体窗口是导航者窗口的一部分。

在发明家级别的编程环境中,摄像头使用一个全新的名为影像中心的独立的窗口。

影像多媒体窗口

在导航者级别中,使用摄像头来看机器人移动时碰到的事物是一件非常有趣的事情。

通过一个连接在你计算机的USB接口上的摄像头,影像多媒体窗口可以让你看摄像头拍摄的图像,调整和保存需要的图像。

选择摄像头——导航者级别和发明家级别

导航者级别

每次打开影像多媒体窗口时,ROBOLAB就会检查是否已经选择了摄像头。

如果没有选择过,就会自动打开摄像头选择窗口。

发明家级别

在发明家级别中选择摄像头,可以使用窗口中“Project”菜单中的“SelectCamera”功能来选择摄像头。

 

ROBOLAB会记住你选择的摄像头的类型,以后每次使用摄像头的时候,ROBOLAB都会选择这种类型的摄像头。

选择摄像头窗口的扩展选项可以让你打开附加的设置摄像头选项,对摄像头进行设置。

 

设置摄像头

点击设置摄像头按钮会打开一个窗口,让你调整你的摄像头的设置。

每种摄像头的设置窗口都不相同,但是它们都有相同的特征。

暂停图像

单击这个按钮会将影像多媒体窗口中当前的图像冻结。

窗口中的图像将不会继续更新,直到取消对暂停按钮的选择。

保存图像

单击这个按钮会将影像多媒体窗口中当前的图像保存下来。

一个新的对话框会自动的弹出,你可以为图片命名以及选择存储位置。

 

图像是以BMP格式进行保存的。

保存好的图片可以在其它的地方调用,例如ROBOLAB的研究者级别实验报告中使用。

 

如何在导航者级别使用摄像头

关于影像多媒体窗口和导航者中的ROBOLAB程序之间有一些重要的注意事项。

在导航者中,程序和摄像头完全是互相独立的。

导航者程序下载到RCX中时,不带有摄像机的信息。

摄像头的USB接头时连接在电脑的USB接口上的。

摄像头本身可以连接在任何物体上,例如RCX上,或者固定在桌子上。

由于摄像头是与电脑相连的,所以它的位置和运动都要受到它的电缆长度的限制。

摄像头看到的图像通过电缆传输到导航者的窗口中。

无论RCX是否运行,摄像头上看到的图象都是连续的。

 

如何在发明家级别使用摄像头

关于如何在发明家级别中使用摄像头,并进行相关的编程有很多的注意事项。

在发明家中,程序和摄像头可以完全互相独立运行,或者RCX可以根据摄像头看到的图像运行。

如果利用摄像头的信息给RCX编写程序,RCX必须在红外发射器的范围内。

摄像头的接头必须连接在电脑的USB接口上,摄像头本身可以安装在任何地方,包括运动的机器人上面,或者固定在桌子上。

由于摄像头是与电脑相连的,所以它的位置和运动都要受到它的电缆长度的限制。

摄像头看到的图像通过电缆传输到影像中心的窗口中。

无论RCX是否运行,摄像头上看到的图像都是不停的更新的。

发明家级别4在使用摄像头拍摄图像的同时,可以将摄像头当作一个传感器来使用。

如果你是初次使用,或者需要提高你的发明家级别的编程能力,请根据这本ROBOLAB指南的介绍进行学习。

在发明家级别中使用摄像头

为了在发明家级别中使用摄像头,无论是仅仅用摄像头看图像,还是将摄像头定义为一个传感器进行编程,你都需要使用影像中心窗口。

你可以从“Project”菜单中选择“VisionCenter”打开影像中心。

 

例子——用摄像头计算小积木的数目

使用摄像有来计算一块灰色积木上的黑色小积木的数目,并且随着色子的旋转,RCX反映出来数值也要随之发生变化。

影像中心显示的是彩色的实际的图像。

图像处理采用的预先设置的“Blobs1”的功能。

在图像上的黑点(黑色小积木)数目的值被存储在红色容器中。

容器中的数值显示在旁边。

 

如果在面板上选择了容器,那么视窗上显示的就是处理过的图像。

在这副图上有四个点可以看见。

 

 

这里要注意的是,如果你要将摄像头当成RCX的一个传感器来使用,那么RCX必须在红外发射器的通讯范围之内。

 

影像中心

影像中心提供了一个窗口来观察摄像头拍到的图像,并且提供了将摄像头设置为一个传感器,为RCX提供信息的功能。

影像中心有三种级别的运行模式——观察,与RCX进行低速通讯,与RCX进行高速通讯。

通常影像中心窗口是处于观察状态。

通讯速度

摄像头传感器和电脑之间的通讯速度受很多因素的影响,例如摄像头传感器定义的复杂程度,电脑的速度,摄像头传感器使用的容器数目,红外发射器的通讯速度。

根据你的程序在三种通讯速度选择中选择最合适的。

观察

在这个模式下运行,电脑和RCX之间没有进行通讯。

这种模式下摄像头拍摄的图像刷新速度最快。

与RCX进行低速通讯

在这种模式下运行,可以将摄像头传感器获取的信号放在指定的容器中,传输给RCX。

RCX还可以控制电脑捕捉图像。

与RCX进行高速通讯

在这种模式下运行,可以将指定容器中数值连续的传输给RCX。

但是RCX无法捕捉图像,但是提高了数据传输的速度。

将摄像头当成传感器使用:

图像处理

摄像头可以变成一种有趣的、独特的传感器。

摄像头的图像可以通过电脑的处理,变成需要的数值,这个数值是一个单独的数字,它可以使用在很多方面。

在影像中心,图像在摄像头传感器设置区进行处理。

结果保存在红色、蓝色、黄色的ROBOLAB容器中。

这些在电脑中确定的数值,都通过红外发射器传输到RCX中。

RCX就可以在运行的程序中使用这些不断更新的数据。

这样RCX就可以实时的对摄像头输入的数值做出反应。

 

注意:

影像中心可以连续的对摄像头的图像进行处理,并时刻更新容器中的数值。

信息传输给RCX的速度取决于一系列因素,包括选择的通讯速度。

如果RCX与红外发射器失去了联系,它就无法收到任何的更新数据,无论这些数据传输的多么频繁。

 

例子——将摄像头当作传感器使用,机器人转弯并避开障碍物

使用摄像头来决定在机器人前进的路径上的哪些部分被阻挡了,并让RCX控制机器人机动的避开这些障碍物。

如果在图像处理时,假定障碍物都是黑暗的,图像处理的功能就是要寻找摄像头视野中哪里是明亮的,左边,中间,或者是右边。

这些数值会作为容器的数值传输给RCX。

当RCX收到新的传感器的数值,程序就会自动运行,调节方向,让机器人的头朝向亮的地方。

摄像头传感器的设置

为了将摄像头当作一个传感器来使用,你需要定义对摄像头的图像进行处理的类型。

在影像中心窗口上的摄像头设置区进行选择。

 

观察图像

为了优化图像处理的速度和电脑与RCX通讯的速度,影像中心的观察窗口可以取消。

将摄像头看到的图像从观察窗口移开,那么因为不需要对图像进行刷新,那么电脑的处理速度会加快。

而图像仍然会被处理后,将结果传输给RCX。

图像处理

在影像中心有几种已经预先定义好的图像处理功能的选项。

点击图像处理菜单条,就可以选择其中的一种。

从显示的选项中选择一种你所需要的。

默认的图像处理功能选项的定义如下:

 

如果你已经定义了你自己的图像处理功能选项,那么它也会显示在相同的列表中。

定义你自己的图像处理功能选项

为了给摄像头图像定义一种新的图像处理功能,你需要在图像上设置一个蔽光框。

蔽光框识别图像上的特定区域,也可以定义成你所看到的全部区域。

点击影像中心上的定义传感器按钮,就可以进行新得图像处理功能的定义。

将摄像头定义成一个传感器

在定义传感器窗口中,可以为摄像头定义一种新的图像处理功能选项。

图像处理可以是多样的或者具有多个步骤,每个步骤就是一个新的页面。

定义传感器窗口中有两个主要的区域。

上部显示了原始的图像,处理后的图像,还有图像上体现出来的数值。

下部是用来选择和定义对图像进行处理和步骤进行操作。

 

例子:

为摄像头定义一种新的图像处理模式

识别平面上的乐高积木块

你希望移动摄像头,使乐高积木块位于摄像头视野的中央。

为了做到这一点,你需要定义图像处理,使RCX可以知道它该如何移动与积木块相联系。

打开定义传感器窗口,开始为你的图像进行一个多个步骤的图像处理模式的定义。

打开一个任意的定义传感器窗口。

第一步首先选择“Threshold”功能,创造一个二元的(黑与白)图像。

 

 

预先设定的图像处理功能选项:

选项名称

图象处理描述

摄像头传感器的值

亮度

(Brightness)

没有进行图像处理:

确定图像的亮度值。

亮度值储存在选定的容器中。

暗度

(Darkness)

没有进行图像处理:

确定图像的暗度值。

暗度值储存在选定的容器中。

最亮的位置

(Brightlocation)

图像的选定区域:

输出最大的亮度值和它所在的位置(x,y坐标)。

需要使用3个容器。

亮度值存储在红色容器中,x,y坐标值分别存储在蓝色和黄色容器中。

运动横坐标

(MotionRow)

运动捕捉处理:

输出探测到的运动的横坐标。

横坐标值存储在选定的容器中。

运动纵坐标

(MotionColumn)

运动捕捉处理:

输出探测到的运动的纵坐标。

纵坐标值存储在选定的容器中。

运动位置

(MotionLocation)

运动捕捉处理:

输出探测到的运动的横坐标和纵坐标。

横坐标值存储在选定的容器中。

模糊点1

(Blobs1)

图像处理:

整个图像范围,图像反色,自动取阀值将图像处理成二元图像,计算面积在0~0像素之间的所有模糊点的数目。

模糊点的数目存储在选定的容器中。

模糊点2

(Blobs2)

图像处理:

整个图像范围,图像反色,自动取阀值将图像处理成二元图像,计算面积在500~1500像素之间的所有模糊点的数目。

模糊点的数目存储在选定的容器中。

与摄像头相关的编程图标的功能

在发明家级别4和研究者级别5中有一些新的图标,用来支持将摄像头当作传感器来使用,在ROBOLAB中给机器人编程。

等待图标:

等待摄像头传感器的数值上升

等待摄像头传感器读到的数值大于设定的比较值。

默认的情况是摄像头传感器的数值是存放在红色容器中,比较值为55。

等待摄像头传感器的数值下降

等待摄像头传感器读到的数值小于设定的比较值。

默认的情况是摄像头传感器的数值是存放在红色容器中,比较值为55。

编程的逻辑结构图标:

摄像头传感器分支

根据摄像头传感器的数值与比较值进行比较的结果(大于,小于,还是等于),选择不同的路径。

默认的比较值是55。

当摄像头传感器的数值大于比较值就循环

开始一个循环,当存放摄像头传感器数值的容器大于比较值的时候,就不停的重复运行。

默认是红色容器中的数值,比较值为1。

当摄像头传感器的数值小于比较值就循环

开始一个循环,当存放摄像头传感器数值的容器小于比较值的时候,就不停的重复运行。

默认是红色容器中的数值,比较值为1。

容器图标:

摄像头传感器容器设置

将指定的数值赋予容器。

默认是将数值1赋给红色容器。

 

RCX通讯:

捕捉一幅图像

命令摄像头捕捉一幅图像,并保存到电脑指定的文件夹中。

捕捉一幅图像并等待

命令摄像头捕捉一幅图像,并保存到电脑指定的文件夹中。

并且直到图像捕捉完成才执行后面的程序。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1