LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How efficient is LabVIEW in medical application?

Dear All,

I am working in a Co. making bio medical instruments. Earlier i was coding in C/C++ but now the Co. wants me to shift to LabVIEW.

I want to know as i am working on medical devices whose applications are really critical and an error in the range of ms could be FATAL, how advicable is it to use LV?

N I have heard LV is bit slower than C/C++.

In normal application, an error or so wont harm anything but medical applications are really sensitive and critical and that too working on Real Time.

 

Ritesh

0 Kudos
Message 1 of 6
(3,592 Views)

When coding in C or C++, which environment did you run your applications on? If you ran them on a desktop OS, then you you made a dangerous decision - while desktop computers can easily perform very quickly, there is nothing guaranteeing that the OS will let you have control. When you have critical application, you should use a real time OS.

 

There are various RT operating systems around and LabVIEW can run on a couple of them, either on NI's controllers or on a compatible PC with the OS installed.

 

LabVIEW also has a module which allows translating the code into VHDL and then burning it on an FPGA, allowing even better performance.

 

Regarding LabVIEW performance in general, it is generally comparable to that of C, but you need to be aware of some potential pitfalls to avoid performance problems and bugs (e.g. constant memory reallocation, race conditions).


___________________
Try to take over the world!
Message 2 of 6
(3,587 Views)

You might want to read this: NI Statement of FDA Validation

 

Message Edited by Phillip Brooks on 08-29-2008 08:08 AM

Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
If you don't hate time zones, you're not a real programmer.

"You are what you don't automate"
Inplaceness is synonymous with insidiousness

0 Kudos
Message 3 of 6
(3,569 Views)

Hi Ritesh,

 

There are plenty of applications that use LabVIEW for medical device development in "mission critical" applications.  Here are just a few examples of FDA validated devices developed with LabVIEW:

 

http://sine.ni.com/cs/app/doc/p/id/cs-11023

 

http://sine.ni.com/csol/cds/item/vw/p/id/698/nid/124100

 

http://zone.ni.com/devzone/cda/pub/p/id/186

 

http://sine.ni.com/cs/app/doc/p/id/cs-11316

 

 

Thanks!

P.J.

National Instruments

Biomedical Segment Lead

Message 4 of 6
(3,503 Views)

The software reliability criteria (robustness, rollback, etc) which apply to text-based languages (C/C++) also apply to LabVIEW, or to any other language.  You need a sound architecture and a solid platform.

 

I agree with what tst mentionned.  For FDA approval, you will need appropriate code documentation and code review.  You will also need to document the software architecture, among other things..  The requirements do not specify a language and vary on the criticality of the application.  

 

R

0 Kudos
Message 5 of 6
(3,491 Views)

As pjtanz demonstrated, there are a number of FDA approved medical devices that have been developed using LabVIEW and other NI products such as CompactRIO.  Medical devices, like any mission-critical application, require strict software development practices in order to demonstrate that the appropriate measures were taken.

 

To provide a little more background, the validation of a product requires a paper trail and sufficient documentation of the software engineering process, which follows all phases of development from design and development through test and deployment.  The act of creating this documentation relies upon having pre-defined system specifications and requirements documents and the use of methods by which to demonstrate that those requirements have been covered by the implementation. 

 

Tests are usually defined early in the development life cycle - these vary from system level to unit-level tests and testing procedures, but they specify what the product must pass in order to verify that it is safe, reliable and can fail gracefully if unforeseen circumstance occur - these later facilitate requirements based testing as well as help demonstrate requirements covereage.  Throughout development, many software vendors have quality teams who are in charge of validating any change or modification to code against these requirements, which requires (amongst other things) the ability to track a modification and to track exactly what was changed as well as the impact it had upon other parts of the code (this if often referred to as impact analysis or a traceability matrix). 

 

These practices are independent of the programming language and can certainly be applied to LabVIEW, but the tools and the methods may vary depending upon the programming language.  In the case of LabVIEW, NI has been working for years to provide more sophisticated software engineering tools in order to help developers deploy large, mission-critical systems that meet safety standards.  This includes the ability to integrate with source code control, trace changes and link code directly to requirements documents, all of which are key aspects of software configuration management. 

 

These and other important aspects of the software engineering process model are documented at ni.com/labview/power.  I encourage you to visit this link and puruse the white papers in the software engineering section to learn more about some of the tools and practices that apply. 

Elijah Kerry
NI Director, Software Community
0 Kudos
Message 6 of 6
(3,463 Views)