RS232CのCAN通信(C++)
Posted: 2014年1月14日(火) 21:26
あるセンサーのデータをCAN通信でリアルタイムに取得する場合どうしたらよいでしょうか.
私は現在,CANreal(参考:http://esd.eu/en/content/canreal)という直接CANをモニタリングできるツールを用いてセンサーのデータ取得を行っています.具体的にはセンサーとCANrealはRS232Cで接続しており,CANrealはPCとUSB接続し,専用アプリケーションソフトで画面上にCANデータを表示させています.画面の挙動としては,センサーの前に物をかざすと,16進数のデータが次々に流れてくるといった感じです(センサーの前に何もない場合は,データは流れてきません).しかしながら,このツールではデータを.txtとしてロギングして後で解析しなければならないため,リアルタイムで物理値として表示させることができません.そこで,センサーをシリアルUSB変換ケーブルに繋いで直接PCでデータを取得したいのですが,可能でしょうか.センサーからのデータ出力フォーマットは分かっており(DLCが8byte等)ますが,その他,通信プロトコル等は問い合わせなければ私も分からない状況です.現状ではCANrealと同じように16進数のデータが次々に流れてくる状況をVisual Studioのコンソール画面で再現するのが目先の目標です.
質問をまとめます.
・現状でCANデータをコンソール画面に表示することは可能でしょうか.
・その場合,どのようにプログラムを書けば良いでしょうか(取得したいCANのIDを指定も含めて).
・現状で不可能な場合,どうすればよいのかアドバイスを頂きたいです.
当方,普段はMATLABを使用しており,C++等にはあまり詳しくありません(基礎的な文法がわかる程度).宜しくお願い致します.
私は現在,CANreal(参考:http://esd.eu/en/content/canreal)という直接CANをモニタリングできるツールを用いてセンサーのデータ取得を行っています.具体的にはセンサーとCANrealはRS232Cで接続しており,CANrealはPCとUSB接続し,専用アプリケーションソフトで画面上にCANデータを表示させています.画面の挙動としては,センサーの前に物をかざすと,16進数のデータが次々に流れてくるといった感じです(センサーの前に何もない場合は,データは流れてきません).しかしながら,このツールではデータを.txtとしてロギングして後で解析しなければならないため,リアルタイムで物理値として表示させることができません.そこで,センサーをシリアルUSB変換ケーブルに繋いで直接PCでデータを取得したいのですが,可能でしょうか.センサーからのデータ出力フォーマットは分かっており(DLCが8byte等)ますが,その他,通信プロトコル等は問い合わせなければ私も分からない状況です.現状ではCANrealと同じように16進数のデータが次々に流れてくる状況をVisual Studioのコンソール画面で再現するのが目先の目標です.
質問をまとめます.
・現状でCANデータをコンソール画面に表示することは可能でしょうか.
・その場合,どのようにプログラムを書けば良いでしょうか(取得したいCANのIDを指定も含めて).
・現状で不可能な場合,どうすればよいのかアドバイスを頂きたいです.
当方,普段はMATLABを使用しており,C++等にはあまり詳しくありません(基礎的な文法がわかる程度).宜しくお願い致します.