微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > LabVIEW与乐高NXT机器人的入门

LabVIEW与乐高NXT机器人的入门

时间:01-09 来源:互联网 点击:
乐高NXT机器人产品自带的软件是NXT-G,在这个产品之前,是RCX机器人产品,用的是robolab软件,这个软件的最新版本是2.9,Robolab 2.9也支持NXT机器人,NXT-G和Robolab这两个软件都是在美国NI公司的labview软件基础上开发的。Labview 开始研制出来,定位是虚拟仪器软件,Labview认为PC机+软件+采集卡就是一台多功能仪器,可以替代众多硬件仪器,如万用表、示波器、频谱仪等,而且功能可以随测试对象的特点而变化,只要重新用labview软件编制新程序即可。目前labview已经从定位于虚拟仪器软件升级为一种流行的图形化编程软件,就像C语言是文本式编程语言的代表一样,Labview就是图形式编程语言的典范,国内外拥有众多Labview用户。现在你可以在labview软件基础上,安装乐高NXT 组件,就可以直接用labview软件编程了!

图1 Labview启动画面

点击画面中的Blank VI Targeted to NXT,出现Labview前面板,前面板是程序的人机交互界面,不是编程界面,编程界面开始是看不到的,如何让它显示出来?前面板如图2.

图2 Labview前面板

点击前面板菜单栏的“窗口”,出现下拉菜单,点击“显示程序框图”,随之出现的界面,如图4,就是编程界面。

如果你已经拥有了labview软件,加装了乐高NXT 组件,就可以尝试少用NXT-G和Robolab,而多用Labview为乐高NXT编程,毕竟 NXT-G和Robolab不是主流软件,它们只能针对乐高机器人产品编程,可以说是labview软件的“副产品”,而Lavbiew ,它可是全能运动员,我曾经用它给51单片机,Arduino控制器、PLC、智能模块,采集卡等编程,非常好用。下面的图片是labview for NXT的主页。

图3 labview for NXT主页

上面的图片显示的网页原来是英文的,我贴的图片咋显示的文字是中文简体那?哈哈,我安装了谷歌浏览器,google可以把英文翻译成中文,翻译不够准确,但是可以辅助我们看英文资料。还有个小窍门,就是你把鼠标的光标移动到翻译出来的中文段落时,英文原文就以小窗口的形式显示出来,哈,这样就可以中英文对照了,用自己的英文功底纠正下,google翻译不顺畅的地方。

Labview 中文评估板,可以用30天,下载地址:

http://ftp.ni.com/evaluation/labview/ekit/other/downloader/LV2009_CHI_downloader.exe

乐高NXT组件的下载网页:http://zone.ni.com/devzone/cda/tut/p/id/4435

注意labview 7.1 到8.6的NXT组件是一种,labview 2009和2010是另一种组件,要了解自己的labview的版本是什么?我的labview版本是labview 2009, 所以我下载的组件是

LabVIEW Module for LEGO MINDSTORMS NXT

今后我会不断有些labview for NXT的编程例子可供下载,所以低于Labview 2009版本的软件打不开上传的例子。

看看labview的编程界面与NXT-G软件界面有何不同。我贴的Labview的编程界面背景是lego的桌面,要分清哪些图面是软件界面。

图4 Labview前面板和框图程序

点击上图的菜单栏中的“文件”,出现下拉菜单,选择其中的“终端至NXT”并点击,Labview框图程序界面的左下角发生变化,看看左下角,我加注的黑框 。

图 5 Labview框图程序

在程序编程界面的任意处点击鼠标右键,会出现函数库,选择“NXT I/O”,又会出现“NXT I/O”子函数库,我用“蓝色”圈加注的是“电机Motor”多态模块,用“红色”圈加注的是“传感器Sensor”多态模块。这篇文章讲解的程序只用到了这两个模块,点击模块,即可把模块拖到到编程界面的合适位置,再点击一下,就把模块放置下来了。

点击软件菜单栏里的“帮助”,出现下拉菜单,在下拉菜单中,选择“NXT Module Help”点击,就会有我们需要的“软件使用指南”,是英文的,可惜,但这是最全面的入门资料,Labview for NXT的资料可不好找啊。

有个办法,你可以用google翻译网页:http://translate.google.com/#en|zh-CN|

把“软件使用指南”的英文段落一段段贴到源语言栏里,点击翻译,就可以看中文了。

这篇文章介绍的例子很简单,任务是在NXT控制器的输入口4连接超声波传感器,在输出口A连接伺服电机一台。当超声波传感器检测障碍物距离小于20厘米,则电机转,否则电机停止。

实验图片:

实验的labview程序如下图所示:

点击上图的条件选择结构的“真”或“假”切换按钮,选择结构“假”时的程序如下图:

按照同样的编程思路,我用NXT-G也编写了程序:

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top