NI LabVIEW,CVI,数据采集等产品讨论区

取消
显示结果 
搜索替代 
您的意思是: 

请教串口通信的问题

已解决!
转到解答

大家好:

         我有一个仪器,希望用labview窜口通信给它发命令,控制它的运行,比如我发送的字符串是“:function:rate 80”的时候,仪器就以80的速度工作。

这一点我可以实现了,现在我想每间隔一定的时候,自动的改变仪器的工作速度,比如下一个十秒发送“:function:rate 85”,实现仪器以85的速度工作,再下一个十秒发送“:function:rate 90”,让仪器的速度逐渐增大。我不知道怎么自动改变“80,85,90”这些值啊,请大家帮帮忙啊。

0 项奖励
1 条消息(共 8 条)
7,144 次查看

老马 你好,

 

感谢使用NI中文技术论坛!对于你的应用,可以考虑使用状态机结构,它通过循环和条件结构来实现不同状态的转换,即将规定仪器工作速度的不同字符串写入VISA Write函数。时间可以通过等待函数来设置。你可以新建一个使用状态机结构的VI模板,方式如下:

 

new_state_machine.PNG 

 

NISH AE

W. Yan 

"spawn more overlords" means "create another subVI, dude", literally
0 项奖励
2 条消息(共 8 条)
7,140 次查看

你好:

      谢谢你的回答,状态数量比较小的时候是可以的。不过我要是想让速度从80,85,90.。。。这样一直增加到800的话,是不是很麻烦啊

 

0 项奖励
3 条消息(共 8 条)
7,128 次查看

可以利用循环计数端 i 的值,如果速度是等差的话。

 

NISH AE

W. Yan 

"spawn more overlords" means "create another subVI, dude", literally
0 项奖励
4 条消息(共 8 条)
7,104 次查看
解答
已被主题作者 老马 接受

你好,

 

可以试一下Format Into String subvi,也许可以实现你所描述的功能。

2010-06-11_Forum.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2010-06-11_Forum2.png

0 项奖励
5 条消息(共 8 条)
7,099 次查看

多谢了

      可以实现了

0 项奖励
6 条消息(共 8 条)
7,084 次查看

谢了

0 项奖励
7 条消息(共 8 条)
7,083 次查看

 


@Charles.Tac wrote:

你好,

 

可以试一下Format Into String subvi,也许可以实现你所描述的功能。

2010-06-11_Forum.png

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2010-06-11_Forum2.png


 

 

 

 

 

 

 

 

 

 

 

 

 

________________________________________________________________________________

 

Above code won't run without N being wired...

Instead, you can Enable Indexing for the input array.

 

17299iBD88CB60B17D0B4A

Ian F
Since LabVIEW 5.1... 7.1.1... 2009, 2010, 2014
依恩与LabVIEW
LVVILIB.blogspot.com
0 项奖励
8 条消息(共 8 条)
6,845 次查看