LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Understanding digital output with NI USB-6210

Hello,

 

I have a NI USB-6210 and am trying to use it to start and stop a motor which has the following pins that I would connect to the USB-6210 as shown below (USB-6210 pinout)

TTL input to start (0-1V = 0, 3.5-24V = 1)        --> connect to pin 6 = PFI 4/P1.0 (Out)

TTL input to stop (0-1V = 0, 3.5-24V = 1)        --> connect to pin 7 = PFI 5/P1.1 (Out)

GND (inputs)                                                    --> connect to pin 11 = D GND

 

The digital outputs of the USB-6210 are sourcing outputs (line driver). According to https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019MXOSA2&l=de-AT a line driver is defined as: "A line driver is a sourcing output. When in the on state, a line driver will supply Vcc. In the off state, a line driver will float. Because of this, a sinking input is required for proper operation. Please refer to the table below for a simple example of a line driver." The figure at the bottom of the article shows a wiring diagram of the line driver where a resistor is shown between Vcc and Input. I assume this is the 47kΩ pull-down resistor that is mentioned in the USB-6210 specifications which ensures well-defined logical low when LabVIEW would send "false" to the output. However, there is no pull-up resistor to ensure well-defined logical high - do I need to add a pull-up resistor between D GND (pin 11) and the GND input of the motor?

 

According to the USB-6210 specifications the following digital output characteristics are defined:

Parameter Voltage Level Current Level
VOL 0.6 V 6 mA
VOH 2.7 V -16 mA
VOH 3.8 V

-6 mA

To test my LabVIEW program I have connected a voltmeter to pins 6 (PFI 4/P1.0 (Out)) and 11 (D GND). Running the VI and switching to "false" shows 0.0V at the voltmeter (this makes sense because of the pull-down resistor mentioned above, right?). But when I switch to "true" the voltmeter shows around 4.7V where I would have expected a value between 2.7V and 3.8V as shown in the table above. As mentioned at the beginning, the motor needs at least 3.5V to detect the input as logical high - so 4.7V are preferred anyway, but I'd like to understand where those 4.7V come from.

 

Any help is appreciated. Thank you.

0 Kudos
Message 1 of 11
(3,528 Views)

Hello Sir i am CLA and CLED , may be we need to connect via anydesk to check it together as i provide services for supporting Labview developers , thanks

CLA
0 Kudos
Message 2 of 11
(3,486 Views)

@User002 wrote:

Hello,

 

I have a NI USB-6210 and am trying to use it to start and stop a motor which has the following pins that I would connect to the USB-6210 as shown below (USB-6210 pinout)

TTL input to start (0-1V = 0, 3.5-24V = 1)        --> connect to pin 6 = PFI 4/P1.0 (Out)

TTL input to stop (0-1V = 0, 3.5-24V = 1)        --> connect to pin 7 = PFI 5/P1.1 (Out)

GND (inputs)                                                    --> connect to pin 11 = D GND

 

The digital outputs of the USB-6210 are sourcing outputs (line driver). According to https://knowledge.ni.com/KnowledgeArticleDetails?id=kA00Z0000019MXOSA2&l=de-AT a line driver is defined as: "A line driver is a sourcing output. When in the on state, a line driver will supply Vcc. In the off state, a line driver will float. Because of this, a sinking input is required for proper operation. Please refer to the table below for a simple example of a line driver." The figure at the bottom of the article shows a wiring diagram of the line driver where a resistor is shown between Vcc and Input. I assume this is the 47kΩ pull-down resistor that is mentioned in the USB-6210 specifications which ensures well-defined logical low when LabVIEW would send "false" to the output. However, there is no pull-up resistor to ensure well-defined logical high - do I need to add a pull-up resistor between D GND (pin 11) and the GND input of the motor?

 

According to the USB-6210 specifications the following digital output characteristics are defined:

Parameter Voltage Level Current Level
VOL 0.6 V 6 mA
VOH 2.7 V -16 mA
VOH 3.8 V

-6 mA

To test my LabVIEW program I have connected a voltmeter to pins 6 (PFI 4/P1.0 (Out)) and 11 (D GND). Running the VI and switching to "false" shows 0.0V at the voltmeter (this makes sense because of the pull-down resistor mentioned above, right?). But when I switch to "true" the voltmeter shows around 4.7V where I would have expected a value between 2.7V and 3.8V as shown in the table above. As mentioned at the beginning, the motor needs at least 3.5V to detect the input as logical high - so 4.7V are preferred anyway, but I'd like to understand where those 4.7V come from.

 

Any help is appreciated. Thank you.


Ideally, the pin driver will attempt to source the Vdd (5V) but due to the output impedance of the pin electronics, the voltage drops as you increase the external load on the pin.

If you notice the specifications, it states that the VOH is guaranteed to be at least 3.8V at a load of 6mA (if you increase the load, voltage drops, if you decrease the load voltage increases closer to the ideal 5V). Now, when you tested with your digital multimeter, there was no load and hence you observed the best case voltage of 4.7V (closer to the ideal 5V).

Santhosh
Soliton Technologies

New to the forum? Please read community guidelines and how to ask smart questions

Only two ways to appreciate someone who spent their free time to reply/answer your question - give them Kudos or mark their reply as the answer/solution.

Finding it hard to source NI hardware? Try NI Trading Post
Message 3 of 11
(3,478 Views)

Thank you - of course .. now that's clear.

 

Regarding the first part of my question, I think my plan to wire the lines was wrong. After watching this video https://www.youtube.com/watch?v=kR6-DGQUFqg and reading the manual again, I would wire the output as shown in the picture below:

connections.png

Now my questions is: How would I calculate the pull-up resistor here? 

 

0 Kudos
Message 4 of 11
(3,435 Views)

@User002 wrote:

Thank you - of course .. now that's clear.

 

Regarding the first part of my question, I think my plan to wire the lines was wrong. After watching this video https://www.youtube.com/watch?v=kR6-DGQUFqg and reading the manual again, I would wire the output as shown in the picture below:

connections.png

Now my questions is: How would I calculate the pull-up resistor here? 

 


The obvious answer is "the bigger the better"!  In fact, wiring either an open resistor or none at all would be correct. 

 

Your DO line will source yea, so much POWER the typical curves are garunteed @ 40mW at 16 mA and at least 20mW at 3.8V that is all defined by the output impedance of the line driver which is essentially an open Collector.   

 

The real question here is what is the input impedance of the motor start signal.  Usually 5V DO devices cannot drive much more than a DI needs.  You might be better off using an Industrial DO device which essentially switches an external source to the connected load.


"Should be" isn't "Is" -Jay
Message 5 of 11
(3,429 Views)

Thank you.

 

Just to make sure that I understand it correctly: I could just not connect the +5V output line of the USB-6210. Then the P1.0 output will source (hopefully) enough power for the start signal. Is that correct?

 

If so, I will test this and if it doesn't work I'll look into using an industrial DO device.

0 Kudos
Message 6 of 11
(3,403 Views)

@User002 wrote:

Thank you.

 

Just to make sure that I understand it correctly: I could just not connect the +5V output line of the USB-6210. Then the P1.0 output will source (hopefully) enough power for the start signal. Is that correct?

 

If so, I will test this and if it doesn't work I'll look into using an industrial DO device.


Exactly!


"Should be" isn't "Is" -Jay
0 Kudos
Message 7 of 11
(3,390 Views)

Why not use a transistor to buffer the DIO output?

 

Transistor-inverter-circuit.png

Of course you will have to invert your logic (DIO Low = Motor on)

========================
=== Engineer Ambiguously ===
========================
0 Kudos
Message 8 of 11
(3,380 Views)

@RTSLVU wrote:

Why not use a transistor to buffer the DIO output?

 

Transistor-inverter-circuit.png

Of course you will have to invert your logic (DIO Low = Motor on)


Through a 1M Ohm on a device that can only carry 115mA?  I doubt a ųA/V is going to turn that motor on.

 

Try one of these

They even come in packages that are not surface mounted.

 

Love the sig line!


"Should be" isn't "Is" -Jay
0 Kudos
Message 9 of 11
(3,364 Views)

@JÞB wrote:

@RTSLVU wrote:

Why not use a transistor to buffer the DIO output?

 

Transistor-inverter-circuit.png

Of course you will have to invert your logic (DIO Low = Motor on)


Through a 1M Ohm?  I doubt a ųA/V is going to turn that motor on.


That was just the first example I found, besides the DIO is not driving anything the motor enable line is just looking for a voltage >3.5 volts. 

 

To the OP:  You are basically "level shifting". Just about any N-channel MOSFET or even an Open Collector Inverter IC with a pull up resistor will work here.

========================
=== Engineer Ambiguously ===
========================
0 Kudos
Message 10 of 11
(3,357 Views)