C code porting in Labview
Ifremer (National Institute for Ocean Science) has a large 50 m x 12.5 m seawater testing tank. This deep wave tank can be used for various test types: hydrodynamic behaviour of downsized models, acoustic testing, or even for development of materials and methods for robotised or manual submarine operations.
The waves are generated by two cylinder-actuated paddles. The high-level control of the actuators is performed by National Instrument equipment and a client-server architecture. The server, implemented in LabWindows, manages the control of the cylinders, and receives the TCP requests from clients. The clients are Labview interfaces which make it possible to send static or dynamic wave instructions, whether regular or not, generated in Matlab.
As part of the IT equipment renewal, Ifremer encountered porting problems with the server part. Acsystème was asked to analyse the C code in LabWindows, so that it could be ported to Labview to facilitate maintenance and upgrades. Acsystème performed the C code analysis and its specifications before reinstating the base architecture of the server, the TCP communication with the clients and the use of new National Instrument hardware drivers (DAQmx). This initial version of the Labview server was completed by Ifremer, which has therefore regained control of the wave tank computer system maintenance and its hardware and software upgrades.
Gilles Gonon, July 2014