Using ROS to communicate between Linux, MATLAB, and Windows Nodes?
I've been working this summer as a research assistant on a piece of Github code. I'm trying to add in some functionality that allows post processing of image data that is captured by a high speed camera node.
Essentially the way it works, is ROS Kinetic running on Linux Ubuntu has the Master node. There are triggering cameras with respective trigger camera nodes that watch continuously for an event to occur.
I connect to MATLAB and start a MATLAB global node, for the purpose of running MATLAB post processing code on the data.
The issue I'm having is that the high speed cameras we use to actually capture the data after an event has been triggered, the API and SDK is only compatible with Windows. So I would need to either create a Windows node that can communicate with my Linux master and Matlab global node, or somehow simply send a command to the Windows PC to begin recording. The delay on this command would need to be very low... less than 1ms.
I've read that there is some compatibility between Windows and ROS, but it is not straightforward for Kinetic. What would be the recommended way to approach this? I am a relative newbie to ROS but have taught myself the basics.
There is actually a Microsoft backed ROS Melodic release for Windows 10. See the install instructions here. GUIs also work (typically problematic with ports, but not here), but a 'simple' ROS driver node that interfaces with a mfg's SDK should be even less of a problem.