NI製品ディスカッション

キャンセル
次の結果を表示 
次の代わりに検索 
もしかして: 

LIN通信 複数の送信フレームを送信したい

解決済み
解決策を見る

お世話になっております。

私、現在、LabviewのサンプルプログラムのLIN Frame Input Output Same Portを用いて任意の送信フレームを送って、ハードウェアを動かしているのですが、

例えば送信フレームがIDがAとBがあってそれぞれを送信して、受信IDはC一つだけという場合、

サンプルプログラムのLIN Frame Input Output Same Portでは互いに送受信一つしか送れないので、何か複数送れるサンプルプログラム、もしくは方法をご存じの方はご協力をお願いいたします。

0 件の賞賛
メッセージ1/6
1,404件の閲覧回数

こちらで有名なHooovahh氏が回答してくれていますが、Stream Sessionであれば複数フレームを送信できるようです。

お役に立ちそうでしょうか?

 

https://forums.ni.com/t5/LabVIEW/LIN-NI-XNET-session-send-2-frame-IDs-via-one-session/td-p/4159136

Certified LabVIEW Developer
There are only two ways to tell somebody thanks: Kudos and Marked Solutions

GCentral
メッセージ2/6
1,348件の閲覧回数

サンプルを見るとフレームが配列で指定できるようになっているので、以下の様に配列要素を追加するだけで実現出来たりはしませんでしょうか。LINインターフェースが手元になく試せないのですが、ご確認頂けないでしょうか。

2nd output frame.png

0 件の賞賛
メッセージ3/6
1,329件の閲覧回数

TAKASUさん

回答ありがとうございます。

 

以前私も試してみたのですが、一つのインターフェースでは(例えば両方ともLIN1の状態で配列要素を追加して送る)LIN通信がエラーになってしまってうまく動作できませんでした。

LIN1、LIN2とインターフェースを変えれば動作しますが、複数のIDを一つのハードウェアに送りたいので解決はしませんでした。

0 件の賞賛
メッセージ4/6
1,305件の閲覧回数
解決策
トピック作成者dc_owl67が受理

配列要素を追加できないのであればフレームリストやデータの部分が配列になっている意味が分からない気がしますが。。。

 

ちなみにどのようなエラーが出たのでしょうか。そちらにヒントがあるような気がします。

0 件の賞賛
メッセージ5/6
1,301件の閲覧回数

TAKASU様お世話になっております。

だいぶ日にちが開いてしまい、申し訳ありません。

あれから、試行錯誤してどうやらサンプルプログラム内にある、XNET Create Session(Frame Output Single point.vi)とXNET Write(Frame LIN.vi)もそれぞれ複数作成し、配列を組まないといけなかったようで、上記のやり方で解決しました。

ご返信遅くなってしまい申し訳ありません。

0 件の賞賛
メッセージ6/6
920件の閲覧回数