2016-06-11 26 views
3

我目前正在使用Matlab從眼動儀使用特定工具箱採集數據。之後,數據流必須稍微處理併發送到C#應用程序(.NET框架)。整個數據流必須儘可能實時(數據採集和處理時間不超過30毫秒))。如何將軟實時數據從Matlab傳輸到C#應用程序?

我需要一種方式來連接從Matlab和C#應用程序獲取的數據。我正在考慮使用文本文件,但在這種情況下,應該在寫入和讀取操作之間存在同步。是否有任何方法將Matlab I/O操作與C#I/O操作同步?

回答

1

我可以建議三種方法:用一個標誌文件

  1. 使用基於文件的同步。使用一個文件作爲 的數據,另一個文件表示數據已準備好被 讀取。數據文件讀取後,標誌文件被刪除。這很容易實現,不需要任何額外的Matlab工具箱,但在嘗試實現高數據速率或高速/低延遲同步時存在潛在問題。你基本上必須嘗試一下,看看它是否可以在你的硬件上運行。
  2. 將您的Matlab程序編譯成一個庫(.dll),您可以從您的C#應用​​程序調用 。那麼你只有一個應用程序。使用MATLAB Compiler SDK代替 這個。
  3. 使用TCP套接字在兩個程序之間進行通信。 這樣做的好處是允許兩個程序在不同的計算機上運行,​​並且它也可以在同一臺計算機上運行。 A Matlab示例給出here
+0

嗨,非常感謝您的回答。 – trilli

相關問題