|
| ||||||||||||||||||
| ||||||||||||||||||
|
您好!我是包头九中刘浩。我在用你们的Robolab程序编程时遇到了一些困难,现向您请教一下。请您尽快帮我修改一下。随邮件送过去我的程序。 我的这个程序的内容是PH酸碱滴定试验,在程序里A马达是用来晃动烧杯的,B马达是用来旋转滴定管往下滴酸的(我的程序是酸往碱里滴的),当PH探头探测到PH值刚好等于一开始保存在红色容器里的值时(一开始PH值探头测到的是水里的PH值,即PH值=7)程序停止,并且上传画出PH值曲线。 但是当我实验时,B马达旋转往里滴酸后,PH值已经小于7了,但是程序没有停止,我不知道是怎么回事,反复试验了好多次都不行,请您麻烦帮我改一下。
(由于篇幅有限,所以只摘取了程序中的判断部分) A: 首先应该确认pH值传感器有没有正常工作。然后修改程序。在程序中的判断部分(如上图红色框)。B马达转动,开始滴酸的溶液,这时pH值下降,降到接近7,例如7.1,这时B马达还转动一定的角度再作判断,这个时候,也许pH已经下降到6.9,这时的判断还是不等于7,所以马达还是会转动,并且永远转下去,因为pH已经不可能再等于7了。 可以使用两种解决方法:1.将相等的判断改成大于/不大于判断。2.使用事件。 其实这个问题很多人都遇到过,我们需要记住:判断图标只是检查某一瞬间的值,而不是不停检查。从ROBOLAB2.5开始,我们可以使用事件(Event),使用事件我们将可以在任何时间监控传感器、容器、计时器等。 另外还有一个需要注意的,要给机器人一定的容错能力,例如上面的例子,其实pH值很难正好等于7,由于传感器本身有一定的误差,即使同样的溶液,也可能测量到不同的结果,类似于这个实验,最好不要等于/不等于判断。 | ||||||||||||||||||
|
Q:我在做一个模型的时候,我使用马达动力水平2时,马达动力不够,后来改用3,但是又太快,有什么解决方法。——一个乐高爱好者 A:
| ||||||||||||||||||
|
Q:我的儿子(在读小学)在拼装乐高积木时,发现有时候很难分开两块积木,只能求助于我,是否乐高有什么质量问题。——一个着急的家长。 A:自从1949年,乐高共生产了3200亿块积木。全世界平均每人拥有52块。五十多年的制造经验,成就了今天近乎完美的乐高积木。乐高积木在搭建时不会太紧,也不会太松。另外,乐高还提供一个很有用的工具,如下图:
这个工具可以帮助你分离积木。 | ||||||||||||||||||
|
Q:为了调试方便,我们经常不同参数的程序保存在RCX1~5中,但有时候发现程序之间相互干扰,是否RCX中5个程序会相互干扰?——南京全国培训中的一位老师
注:经过详细了解,发现他的程序中大量使用了容器,并且在容器使用前没有清零。 A:
程序2保存如下程序:
先运行程序1,然后运行程序2,这时我们可以从RCX的LCD中看到11。这是因为程序1改变了红色容器,而红色容器为公用的,所以程序2显示出11。在ROBOLAB中,一部分容器是公共的,一部分是私有的,不同版本数量不一样,所以我们一定要注意,特别使用公共的容器,在必要的时候需要对容器进行清零。 | ||||||||||||||||||
|
A:使用普通的乐高光感是可以找到蜡烛的,你只要先用光感测量一下正常环境下的光值,假设是30。那么只要光感的亮度超出这个数值,我们就认为它找到了蜡烛。但是为了防止误差,我们可以留出一定的余量,假设为50。也就是说当机器人在移动的过程中,光感的数值达到了50,我们就认为机器人已经找到蜡烛了。由于普通光感是有发射源的——发红光的灯泡,在使用时,为了防止产生影响,需要将发射源遮住,用不透明的胶布贴上就可以了,不过千万不要把另一个也遮住了。 | ||||||||||||||||||
|
A:
1、用来控制灭火装置的马达
2、用来测距的传感器(红外测距、声波测距......)
3、用来发现蜡烛的红外传感器(也可以用乐高的光感) 另外,如果需要使灭火机器人的功能更加强大,可能需要用到两个RCX来控制。 | ||||||||||||||||||
|
Q:
图二
A:
| ||||||||||||||||||
|
Q: A:
子程序4
子程序2
总程序 在程序中子程序4和子程序2是一样的,但是因为在程序中用到了跳转图标所以标号分别为6和5,名称也改为4和2。如果使用同一标号,程序不执行。 | ||||||||||||||||||
|
Q: 我们在对乐高机器人编程时,希望能得到使用C语言的方法和软件。谢谢! 青岛科技信息研究所 刘晓明 答
:刘先生,你好! | ||||||||||||||||||
|
Q: 明德小学唐老师 答:
这个图标的功能是将发生的事件的值保存到指定容器里,事件的值分别为20(红色事件)21(蓝色事件),22(黄色事件)……例如,如果被触发的是红色事件,那么容器将等于1,即20,如果红色和蓝色同时被触发,那么那么容器将等于3,即20+21。 | ||||||||||||||||||
|
Q: 苏州十中 施老师 答
然后选中中间的三个图标(如上图),并选择主菜单中的EditàCreate
SubVI,就可以得到如下图标(中间带黄色三角形者),这个图标就代表上面所选中的功能,另外,这个图标的形状也可以自由修改。
这样,这个自己生成的图标就像普通的图标一样,可以用在任何程序,任何地方,这是ROBOLAB最出色的功能之一。其实,ROBOLAB的编程图标就是通过这种方法做成的。这里面包含一个哲理,任何复杂的东西都是由基本的东西组成,我们编写的程序也一样,我们可以将复杂的程序分成很多小程序,将小程序调试好之后再组合起来,这就是编写、调试和修改。另外,可以将一些常用的功能保存下来,方便以后的使用。 2.Random Fill Container
它的功能是将一个随机数保存在某一个容器里,其中蓝线连出来的是随机数的最大值。例如:
将从0到10的一个随机数保存在红色容器里。 3.从ROBOLAB2.5开始,可以定义任务的优先级(Task Priority),如下图:
使用这些图标就可以控制优先级了,需要注意的是,优先级的数值越大,其优先级反而越低,也就是说,最高的优先级应该为0。 | ||||||||||||||||||
|
答:9791是9790的升级套件,差别不大,不同之处是9791提供的是USB接口的红外发射仪,而9790则提供串口的红外发射仪 | ||||||||||||||||||
|
答:下面是这两种红外发射器的对比。
对于串行口红外发射仪,可以在红外发射仪上直接选择发射功率。
如果是USB接口的红外发射仪,需要在控制面板“LEGO USB Tower”中设定红外发射器的发射功率,如下图:
其中,Infrared
Range就是设定发射功率,分三个档,分别为Short、Medium、Long。如果需要长距离发射,需要选中“Enable long range
infrared
transmission”这一项。需要注意的是,由于长距离发射需要计算机的USB提供较大的电流,所以在某些机器中(特别是笔记本电脑)无法使用这一选项。你还可以通过这个设定画面设定红外发射仪的其它参数,例如读取超时、写超时等。还有,USB红外发射仪还可以使用Visible
Light Link(VLL)跟乐高其他设备通信。 | ||||||||||||||||||
|
程序下载之前的说明:
三、验证RCX的开关是否已打开。 下载成功后会在电脑上出现一个RCX的图,并发出一声响声,如下图所示: 如不成功,可能会出现如下三种错误提示:
2. 红外发射仪的绿灯没有亮(如右图所示)
(2) 红外发射仪电池是否正确安装(电池为9伏层叠电池,注意区分正负)。或查看是否电池电量不足。 (3) 串口连线是否损坏。这是一根Null Modem线。
(1)RCX的电源是否打开。RCX需要安装6节五号电池或外接电源。 (3) RCX是否在可视范围中?参看下图。 RCX是否在可视范围内
C为强弱选择开关, 左边D为弱, 右边B为强 | ||||||||||||||||||
|
Q:
邓工程师,你好!我是常州市田家炳中学的肖鹏。 | ||||||||||||||||||
|
在足球中,使用了Fairchild的QED523红外发射管,其红外波长为880nm,对应的接收管为QSD723,在球体中,红外线是没有经过任何调制的。而在我们平时所见到的红外遥控器和红外数据传输器所发射的都是经过调制的,中心频率一般为38kHz、40kHz等,这样做有一个很重要的优点,就是可以避免其它光线(如太阳光)干扰,这正如我们所知道的,白天使用电视遥控器不会出现问题,但是白天机器人踢球却很容易受到干扰。由于发射端使用了调制过的红外线,所以相应地,接收端有相应的滤波(这就是抗干扰的原理)。现在很多公司推出一体化的红外接收器,将红外接收管、滤波、放大等等全部放置在一个类似于一个三极管的封装中,在RCX中、在红外发射塔中,都可以发现这个元件,你所用的就是这个元件。非常不幸,由于里面包含了滤波,所以它不能接收来自足球发射出来的红外线,但是可以接收遥控器发射出来的红外线(中心频率一样),这个实验我在去年年底做过。 | ||||||||||||||||||
|
Q:你好,我在实习时,看到一台机器,焊接机器人。它的手臂可在空间移动。只要给他设一个原点,然后以这个原点作为参考点,设好一个空间坐标系,那么它就可以移动到任何你给定的一点,我就是想问,用乐高能把它做出来吗? | ||||||||||||||||||
|
当然可以,空间中的任意一个点可以使用三个坐标表示--x,y,z,如果使用三个马达和三个角度传感器,那么,就可以控制手臂到达任何一点,不过在工业手臂中,一般不使用x,y,z坐标,而使用角坐标,但同样可以实现。 | ||||||||||||||||||
|
Q:我将乐高光感安装在RCX的输入端口中,但是光感的红灯不亮,在RCX中也无法看到正确的光值。" | ||||||||||||||||||
|
很多时候,用户以为直接将传感器安装在RCX中就可以正常使用,事实上,不管是什么传感器,都需要初始化一下,例如 :光感,必须先编写一个含有光感的程序,并运行,如果你使用的ROBOLAB2.5,你可以Reset功能来初始化各种乐高传感器。 | ||||||||||||||||||
|
Q:我是清华大学自动化系的学生。我们教研组计划用贵公司乐高教育系列中的SR9791和SR9701搭建我们的实验平台。目前遇到了一些困难,希望能得到您的帮助。 | ||||||||||||||||||
|
除了ROBOLAB,还有很多语言可以控制RCX,通过ActiveX控件,可以非常方便地使用VC、VB、Delphi等语言来控制RCX,你可以到: http://mindstorms.lego.com/sdk2/下载这个控件以及相关的文档。另外,有关使用其他语言来控制的信息,你可以参考:RCX Internal ( http://graphics.stanford.edu/~kekoa/rcx/index.html)。 | ||||||||||||||||||
|
| ||||||||||||||||||