LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Interface myRIO-1900 DAQ

Hello NI Team,

 

I'm considering using myRIO-1900 for a medical application, but I need confirmation.

In my application, I receive analog raw data from the ADC. According to my requirements, I convert this data into voltage and then send the converted data through USB to display it in the Arduino serial terminal. In my Case ( PC -> USB Host and Data Sender Device -> USB Device).

 

anil1601_0-1714029478244.png

 

After reviewing the User Guide for myRIO-1900, I noticed it has two USB ports: one for USB device and another for USB host. In my application, should I send the converted data or the raw ADC data to myRIO? Afterwards, myRIO would transmit this data to my PC for LabVIEW processing.

 

My Device(Send ADC raw data) -> myRIO(USB Host Port) -> myRIO(USB Device Port) -> my PC for LabVIEW.

 

Should I go with the mentioned approach or should I go with alternative protocols like UART or I2C for my application?

0 Kudos
Message 1 of 5
(173 Views)

Hello NI Team any updates for the same? any suggestion or idea about my confusion.

0 Kudos
Message 2 of 5
(117 Views)

I'm unclear what you are planning to do, and why you are using a myRIO, a fairly sophisticated piece of hardware, to do a simple A/D conversion.  I also don't understand why a PC running LabVIEW and a DAQ device (or a myRIO) to collect analog data needs an Arduino to do anything.

 

How many years experience do you have with LabVIEW?  If you are just learning it, and have not written a number of stand-alone LabVIEW routines to acquire, store, analyze, and display data, then you are not ready for tackling the interaction of two computers running different Operating Systems (the PC runs Windows and LabVIEW, while the myRIO runs NI Linux Real-Time OS and the myRIO software Toolkit), which need to communicate with each other through TCP/IP (using the USB cable as the TCP/IP conduit).

 

Can you write a description of what you want your program to do?  How many data channels are you planning to acquire?  What is the nature of the signal(s) you will be acquiring?  Are they voltages, digital signals (TTL pulses), temperatures (requiring a thermocouple or similar piece of hardware), something else?  What sort of sampling rates are you considering?  What do you plan to do with the data you are acquiring?  

 

Bob Schor

0 Kudos
Message 3 of 5
(103 Views)

Sorry for a late reply.

 

My application is one type of medical application. In which some optodes are over the head in which there is ADC mechanism which collect brain signal data interms of analog signal (ADC Raw Data) or Voltage data. 

Now, I want to plot graph to represent that data using LabVIEW and myRIO-1900 DAQ System.

 

Currently I am in learning phase and haven't much experience with LabVIEW as well as myRIO-1900. So, I haven't that much of idea How to program in it?. Which interfaces are required to do a process on data ( ADC Raw data)? etc.

0 Kudos
Message 4 of 5
(52 Views)

OK, something of a Crash Course ...

 

  • LabVIEW is a "Data Flow" language.  Data "flows" through "wires" that connect "structures" (such as Case, While, For, Event), functions (including Numeric, Array, Strings, Files, and others), and "User-defined VI" (similar to user-written subroutines or functions).
  • The "Rules of Data Flow" allow sections of code to run simultaneously (or "concurrently") if they are not connected "output-to-input" by a wire.
  • LabVIEW provides DAQmx to interact with Hardware that can connect with external sensors and actuators, communicating with their sensors by some digital protocol, such as VISA, GPIB, TCP/IP, USB (and combinations of these).

When you start learning LabVIEW, you'll learn about Data Flow, and the basic structure of a LabVIEW VI, with a dual structure of a "Front Panel" (used for I/O between VIs and interaction with the User, including Controls and Indicators) and a "Block Diagram" (where the "wires", "structures", and "functions" can be found).  Once the idea of Data Flow and constructing a VI become more familiar, you learn about DAQmx and how to get "external data" into LabVIEW for control and processing.

 

After maybe a year or so of experience, you learn about LabVIEW Real-Time, which runs on specialized hardware (or at least a specialized Operating System) that is optimized for determinism at the expense of "concurrency" and "thread management".  LabVIEW Real-Time code still have a Front Panel and Block Diagram, but unlike "regular" LabVIEW, the Front Panel is only for communication between LabVIEW VIs -- there is no "User Interface", no Graphs, Charts, interaction (by mouse and keyboard) with "Front Panel Controls".  Instead, the Real-Time system (such as the myRIO) runs a stand-alone program (written in LabVIEW) that communicates with a "Host" LabVIEW program (running on a PC) that communicates with the Real-Time system (the "target") with TCP/IP.  Quite powerful, but definitely not for a beginner.

 

To acquire multiple (4-8) channels of Analog data at modest data rate (a few kHz, certainly adequate for field recordings from the brain, there are a number of USB DAQ devices that could be programmed in "regular LabVIEW" and run directly from a PC.  If you want to do this by yourself, I strongly urge you to start with a USB DAQ device and learn how to use LabVIEW to acquire, store, process, and visualize data.  [Find yourself a LabVIEW Guru to be your guide == are there engineering students in your vicinity?].

 

Bob Schor

 

 

0 Kudos
Message 5 of 5
(38 Views)