基于LabVIEW软件的个人电脑遥控乐高NXT机器人

发布者:朱颜素韵最新更新时间:2015-08-10 来源: vihome关键字:LabVIEW  电脑遥控  NXT机器人 手机看文章 扫描二维码
随时随地手机看文章


图1遥控NXT机器人的Labview前面板

图1中Labview前面板的任务是:NXT小车从起点开始前进,距离障碍物小于20cm处停止,在小车前进期间,面板可以调节小车的快慢,并且把超声波测量的距离显示在面板上。

你的个人电脑Labview与NXT控制器打交道有两种模式,一种是在线模式,另一种是离线模式。在线模式下,你可以使用USB或蓝牙,从计算机上运行程序,直接控制NXT控制器,同时程序并没有下载到NXT控制器里。离线模式下,你使用USB或蓝牙,下载程序到NXT控制器,然后用NXT控制器直接运行程序,不需要PC机干预。

 

在线模式与离线模式如何切换看图2所示:

 

图2 在线模式与离线模式切换

Labview 软件一个程序有两个部分组成,一是前面板,它是用来人机交互的界面,二是框图程序,用来实现前面板输入控件和输出控件的逻辑。上图是Labview的前面板,框图程序的图片,你会在下面段落里看到。前面板的左下角有个“在线模式与离线模式切换”选项,右击选项,出现快捷菜单,从中选择在线模式或离线模式。但是要进行这一步操作,必须首先选择“查找NXT…”选项,建立起PC机与NXT控制器的通信连接和确定NXT控制器的名称。如图3:

 

图3 NXT控制器与PC机通讯设置

图 3中你可以选择是蓝牙连接,还是USB连接。如果选择蓝牙,一开始图3窗口里,并没有显示Bluetooth,你要点击Scan按钮,然后 Bluetooth后面的Status显示Available(有效),再点击Connect按钮,Status显示Connected(已连接)。只有建立起PC机与NXT控制器的通信连接,在线模式或离线模式才能进行。图3中,我加注的红圈处,可以知道你的NXT控制器目前名称,你可以修改名称或者保留原来的名称。

我的上一篇文章《Labview for 乐高NXT机器人入门》就是用的“离线模式”,用Labview编程,然后下载程序到NXT控制器,最后NXT控制器直接运行程序。而今天这篇文章,写的是“在线模式”,用Labview前面板遥控NXT机器人。

搞清楚“在线模式”和“离线模式”的区别后,剩下就是Labview的编程问题了,这一点我在上篇文章已经谈到。可以通过Labview门户网站,进一步加强Labview编程能力。Labview门户网站网址:http://www.vihome.com.cn/bbs

Labview 软件由美国国家仪器公司出品,它已经是图形化编程软件的代表,近年来Labview软件以其新颖直观的编程方法,吸引了许多偏好“时尚创新”的中青年,Labview形象地说就是“软件乐高”,它的编程就像积木搭建一样,而且乐高公司和Labview一直保持着密切的协作关系,现在大家熟悉的 NXT-G和Robolab软件就是Labview软件的副产品。其实乐高NXT机器人完全可以用Labview编程,这可以大大拓展乐高NXT的智能和可玩性。比如NXT-G软件没有前面板功能,用NXT-G软件实现个人电脑遥控机器人是无法实现的,而Labview For NXT软件就可以做出炫目的前面板,以遥控NXT套件。[page]

 

我再介绍一本入门的Labview入门书,有入门书的好处是可以入门循序渐进,学习更加系统

如下图:

 

图3 LabVIEW大学实用教程(第三版)

本书的编辑推荐:“LabVIEW资深专家Jetffrey Travis和Jim Kring循序渐进地讲授LabVIEW:通过逐步解释示例,读者可以将这些可重复使用的示例代码用于自己的工程中。本书是LabUIEW领域最友好、极具价值的学习指南。”

下面谈谈本篇文章介绍的Labview前面板遥控NXT机器人例子的详细编程过程。

 


图4 前面板的建立

在上图Labview前面板的空白处右击鼠标,出现控件库,点击数值图标,又会“闪”出数值子控件库,把蓝圈加注的“数字显示控件”和红圈加注的“仪表控件”,拖曳到前面板的合适位置,右击刚刚放在前面板上的控件,利用随之出现的快捷菜单可以改变控件的输入和输出属性。我把“仪表控件”命名为电机功率,设置为输入,把“数字显示控件”命名为超声波测距,设置为输出。然后用工具选板,给前面板加注文字和着色,就完成了前面板的建立。下面介绍支撑前面板的框图程序的编制。

放置在前面板上的“数字显示控件”和“仪表控件”会自动出现在Labview框图程序中,如下图所示:

图5 框图程序

图 5的框图程序已经进行了详细的注释,在框图程序空白处,右击会出现函数库,从函数库可以选择你需要的函数,比如“电机”、“传感器”和“关系表达式”、 “While结构”等函数,然后把“数字显示控件”和“仪表控件”图标与这些函数图标按逻辑连线,即可编制出程序。图6可以看到函数的使用。

 

图6 框图程序的建立

按照上面的方法,建立个人电脑与NXT控制器的蓝牙通信连接并编制遥控程序,然后做了遥控实验。用鼠标拖曳Labview前面板“仪表控件”的指针,改变 NXT小车电机的功率,小车的速度“真”地发生了变化!超声波传感器也“真”地把所测距离实时显示在了“数值显示控件”上!此时,你看个人电脑与NXT控制器并没有“线”联系在一起,是无线遥控,蛮好玩的!

我把这个例子的程序打包成RAR文件,可以下载,解压后,如果你有Labview 2009软件就可以直接用了。

程序.rar

关键字:LabVIEW  电脑遥控  NXT机器人 引用地址:基于LabVIEW软件的个人电脑遥控乐高NXT机器人

上一篇:采用Lego颜色传感器的智能车寻线LabVIEW编程
下一篇:LabVIEW与乐高NXT机器人的入门

推荐阅读最新更新时间:2024-03-30 23:02

LabVIEW的I/O接口设备驱动
1 引言   虚拟仪器系统的硬件平台由i/o接口设备和计算机构成(如图1所示),i/o接口设备是对外获取信号的通道,为了能使计算机能够对i/o接口设备有效地进行控制,就要考虑系统中i/o接口设备的驱动问题。      图1 虚拟仪器的硬件构成   在labview中,用软件驱动i/o接口设备,可分以下两种情况:   (1) labview支持的io设备的驱动   ni公司是以研制开发先进的i/o产品起家的,因此,ni在推出labview时已经考虑到了自家产品在labview中的的驱动问题,提供了专用的子vi形式的驱动程序库,图2是用作模拟输入的驱动程序。      图2 模拟输入驱动程序   la
[模拟电子]
<font color='red'>LabVIEW</font>的I/O接口设备驱动
NI LabView8.5控制设计与仿真模块
  NI 发表 NI LabVIEW 8.5 控制设计与模拟 (Control Design and Simulation) 模块,为 LabVIEW 图形化系统设计平台的延伸,可协助分析开回路 (Open-loop) 模型的行为、设计闭回路 (Closed-loop) 控制器,仿真系统,并建立实时建置作业。最新版模块具有新的设计功能,如可提升系统闭回路稳定性的分析式 PID 功能,与多变量 (Multivariable) 系统的模型预测控制。LabVIEW 控制设计与仿真 (Control Design and Simulation) 模块亦具有 18 种新的 .m 档案函式,可延伸支持 LabVIEW MathScript,如建
[测试测量]
LabVIEW——如何配置和使用功能块
  如果在项目文件中使用功能块,可以直接在函数中选择需要的功能块。因为功能块采用的是 Labview 最新的 XNODE 方式,所以可以直接通过对话框配置功能块。   下面通过减计数器功能块,详细介绍一下配置对话框。双击功能块,启动配置对话框。   配置对话框分为输入和输出两部分。输入输出配置方式基本相同包括一下配置。   1、可见复选框用设置是否隐藏端子,对于不需要使用的端子,应该隐藏。   2、变量范围。变量范围可以选择单进程、网络发布和无变量。   无变量表示不使用共享变量,直接使用功能块的输入、输出端子。   功能块支持共享变量,因此可以直接在网络中或者实时系统中连接到共享变量。   选择网络发布或者
[测试测量]
<font color='red'>LabVIEW</font>——如何配置和使用功能块
基于LabVIEW的便携式汽车仪表检测仪的研制----实验数据
  第五章仪表检测的实验数据   5.1车速表的检测   汽车车速检测的必要性:   车速表是提供汽车行驶速度信息的重要仪表,驾驶员在行车途中能够正确掌握车速,是提高运输生产力与保证安全行车的关键。驾驶员对行车速度的掌握,虽然可以依据主观估计来进行,但由于人对速度的估计往往会因错觉而造成误差,再加上车速表使用时间长后内部磁场减弱、车轮直径磨损减小等原因造成的误差,检验车速表对于保障行驶安全的意义也是非常重大的。   车速表的测试需要预先了解设定目标车型的特征参数,如车辆特征系数、车速传感器的传感系数等,然后通过数据通信卡(CAN总线信号)将特征参数下载到被测仪表,按照测试要求产生脉冲信号,信号的幅值、频率可以通过手动进行调
[测试测量]
基于<font color='red'>LabVIEW</font>的便携式汽车仪表检测仪的研制----实验数据
labview编程技巧-----如何进行数组排序
数组排序是经常用到的,LABVIEW提供了对一维数组的排序节点. 这是个多态VI,支持多种数据类型,包括簇,如果是簇数组,它首先按照第一个元素进行排序,如果第一个元素相同,则比较第二个元素. 一维数组的排序是非常简单的,我们经常遇到的是对多个数组进行排序的问题,比如一个TABLE,它实际上是一个2维字符串数组,如果要求安列进行排序,这在数据库查询时经常用到. 问题可以简化成: ARRAY1 ARRAY2 ARRAY3... 我们可以很容易第对ARRAY1进行排序,如何根据ARRAY1排序的结果对ARRAY2,ARRAY3进行相应调整那? LABVIEW的排序节点只给出了排序的结果,未给出相应元素位置(索引号)变动情况
[测试测量]
<font color='red'>labview</font>编程技巧-----如何进行数组排序
如何通过SIT链接Maltalb2011b和Labview2011
1、先安装matlab2011b,然后安装LabView2011 说明: a.必须先安装Matlab2011b,然后安装LabView2011 b.安装LavView2011必须选择安装Simulink Interface Toolkit,因为Matlab和Labview是通过这个组件进行链接的 2.打开Matlab,运行edit matlabrc,在打开的matlabrc文件末尾添加: addpath('C:SimulationInterfaceToolk it'); % 将SimilinkInterfaceToolkit 添加到Path中 NISIT_AddPaths; NISITServer;
[测试测量]
NIWEEK 2019 Day1全解析:原力觉醒,全力前进
每年的5月21日,4000名世界顶尖的工程师和科学家都会集聚美国德州奥斯汀,参加一年一次的NIWeek,以寻求如何用全新技术解决自己在工程开发上面的难题。NIWeek作为美国国家仪器(NI)的最强IP,已经连续举办了25年。 此次NIWeek的主题是Full Force Ahead(全力前进),与去年Future Faster(加速未来)相比,更多了一份坚定与信心,这自然是离不开不断纵深行业的产品线和创新服务、合作伙伴的协助、以及客户的支持。 在稍早一天(5月20日)举办的合作伙伴日上,NI CEO Alex Davern宣布,公司的目标从专注转变为成长,通过加速系统级业务(单一订单超过2万美元的产品),从而实现公司营收的
[测试测量]
NIWEEK 2019 Day1全解析:原力觉醒,全力前进
基于LabVIEW的汽车雨刮器综合控制系统
应用领域:工业自动化 挑战: 解决对汽车雨刮器的功能测试(刮刷角度与刮刷频率)、耐久性能测试(刮刷150万次)以及对汽车挡风玻璃的淋水控制(包括喷水间隔与水量大小的调节)。 应用方案:使用Nationl Instruments公司的LabVIEW编程软件对数据进行采集、处理并对雨刮系统进行控制。 使用产品:Labview8.6软件开发 平台;NI PCI-7831R数据采集卡 介绍 雨刮器是汽车上重要的零部件,它能确保汽车在雨天能安全行驶,其性能的好坏直接影响汽车行驶的状况。为了保证雨刮器的可靠性,雨刮器出厂试验要求必须能达到150万次的刮刷循环。现在用PLC加触摸屏的方式构造的控制系统比较流行,但其不足之
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved