Breaking

Wednesday, January 8, 2020

Review of National Instruments VirtualBench----make money online

Review of National Instruments VirtualBench----make money online

I recently came across this interesting
piece of test equipment at a convention
and I asked National Instruments to send

me a loaner models that I could play
with it a bit more and show you guys as
well so they did but I'm not receiving
any compensation for this review and I'm
also not going to charge patreon users
for this video just to keep it as
conflict-free as possible so let's talk
about what this thing actually is this
is called the National Instruments
virtual bench and it's a whole bunch of
instruments crammed into this fairly
compact unit so it's got a two channel
oscilloscope it's 100 megahertz
bandwidth with a Giga sample sampling
rate if you're using both channels it's
500 Meg for if you're doing both
channels at the same time it's got a
function generator 14 bit DAC which is
capable of arbitrary waveforms but only
through the programming interface when
you're using the bundled application
with this thing which we'll talk about
in a minute it's a you know your
standard square sine and triangle waves
it has a five and a half digit
multimeter and it comes with standard
probes like this and it's capable of
measuring up to 10 amps it's also got an
integrated power supply so it has a six
volt 1 amp supply which is fully
programmable and also a plus 25 and a
negative 25 volt supply at half an amp
each and then the most interesting part
the best for last it has this digital
i/o connector and it has eight channels
that you can control and even send bus
protocols in and out so spy and I
squared C can be read or written through
this port I almost forgot it also has a
34 channel logic analyzer built into it
so it's a mixed mode oscilloscope there
are two main ways to interact with this
piece of equipment you can use the
bundled application that National
Instruments provides with it and that
runs on either an iPad or on Windows and
it allows you to control all the
instruments through manual drop menus in
in the software which I'll show and of
course it's a PC based oscilloscope
however you can also control it
programmatically through LabVIEW or
through C and National Instruments
provides a C library and some example
code so the reason that I'm most
interested in this
equipment is that you can do things like
monitor the current through the power
supply at the same time you're sending
and receiving spy commands through the
digital port at the same time that
you're using the oscilloscope to
actually measure higher speed signals so
this whole unit here can function as a
standalone test bench where you could
put a sensor in front of it and power
the sensor through the power supply
check how much currents it's drawing
very the voltage up and down interact
with the sensor through the digital
stuff and measure you know the analog if
you've got an analog sensor I can see a
few applications where this piece of
equipment would be especially suited so
for example at the end of an assembly
line if you want to test the boards
coming off the wine you basically got
everything you could pretty much ever
want here with the power supply included
and all the other things that I
mentioned you could put the board in
your test jig and have this thing run
through a bunch of tests
programmatically you could simulate a
dying battery you could simulate a
reverse battery you can manually
simulate button presses through the
digital controls and so on and since
it's all being controlled through that
view or C programming you can write a
test procedure basically a state machine
or whatever you want and the assembly
line worker only has to interact with a
very clean interface basically just hit
go and the thing could run through all
the tests I think it's also very
well-suited for testing sensors
basically functioning as a data logger
and so your sensor might be I squared C
or spy and collecting that data through
a benchtop instrument is actually fairly
difficult especially if you have to
program the device like if you have to
send a spy command and then read the
data with LabVIEW especially you can
collect all of this and then even plot
it over time so if you're if you want to
trial a temperature sensor for an
upcoming design or something and the
temperature sensor speaks spy you'd be
great to have this thing just run all
day long and make sure that it's stable
and watched the temperature variation
over time just to make sure the sensor
is working the way you want I should
also mention the device has two
interfaces for the computer connection
it's got a USB and then it also has a
Wi-Fi a wireless connection
and and I did a pretty cool job of
designing the Wi-Fi this can act as a
network host so you can tell this thing
to start a wireless network and then you
can connect to it from your computer
without adding like another router to it
also handy if your work situation has
like a corporate network and you don't
want to connect to it because this isn't
you know certified piece of equipment
you can tell it to start its own Wi-Fi
and get around it that way there's also
the possibility of putting this thing on
a device that is moving for example a
robot and if you power this with like a
car battery and inverter you can
actually send you know communicate with
this thing over the Wi-Fi and even
control the robot through LabVIEW and
you know through the digital controls
and collect data all at the same time so
there's quite a few applications where I
think sort of data logging and sensor
interfaces where this thing is most
appropriate the instrument costs $2,000
and if you'd like LabVIEW on top of that
that's an extra thousand all right so
let's try some tests with it so I have
it hooked up to a milligram balance that
I've hacked and internally there's a spy
bus in here that I've brought out to a
connector and I'm probing the spy bus
with the two analog channels so let's
take a look at the bundled app that
comes with it here's the Windows
application you can see at the top we've
got sort of a zoomed out view of the two
traces and we've got some time-based
controls up here you can also change the
time base by using the mouse wheel
here's the set up for the channels I
think that the interface is a little too
plain like for example if you want to
change something with channel one
there's no actual controls there until
you hover over it and there's this tiny
little 3 dot menu that pulls up the
actual coupling controls for channel 1
they probably ran out of screen real
estate but I think they made a little
bit too big of an effort to hide the
controls over here we've got the
function generator set up it's got quite
a voltage range it goes from negative 12
12 to 12 volts as you can see in the app
control it's just the three waveforms
that we have a triangle wave square wave
or sine wave down here we've got the
multimeter controls and you can select
what you want to measure
with the buttons here here we have a
control for the power supply so this
button here turns on all three supplies
I don't believe they can be turned on
and off individually but you can set the
voltages individually I forgot to
mention that the 25 volt supplies are
programmable just like the six volt
supply so you can either use the up/down
keys to select a voltage or of course
you can just type in whatever you want
this corner has the digital i/o control
and so again if we press this small menu
button we can select some of these lines
to be outputs so for example 1 and 2 can
be outputs and then by clicking on the
toggle button that it just created we
can change the digital state of those
i/o lines and it's a 3.3 volt output I
believe they're 5 volt tolerant I think
in the documentation it says that it can
take up to 5 volts and they're protected
against higher voltages but you really
shouldn't go above 5 it also has fairly
basic oscilloscope functionality so it's
got a measurement menu where you can add
these measurements to the current screen
and it's already showing the frequency
of channel 1 and so on it's also got a
standard cursors menu so we can do some
time cursors and probably the one thing
that I like better about having this
interface is that it's easier to
position cursors on the waveform this is
a little bit can use the mouse wheel to
kind of scroll in and out and then the
cursor can be positioned a little bit
more easily right over the wave so as
you might have guessed I'm not a huge
fan of PC based oscilloscopes it has
some of these sort of nice features
where you can you know drag things
around but for example they they always
seem to lack something for example if
you you know drag this it doesn't redraw
for some strange reason you have to let
the button up for it to redraw so if you
actually want to inspect a signal that's
quite long you know this thing stores
about a million points I think for a
record so as you can see in the top
trace there's this falling edge that's
quite a bit ahead so we can drag over to
look at it but we have to let the button
up to see it so if you're actually
looking for glitches or something and
you're dragging this thing along hoping
to see them you
we'll another strange thing is that the
zoom level is tied to the time base so
if i zoom in it's actually changing the
time base as i zoom in but you may not
want to do that you may want to keep the
time base fixed and then just move your
zoomed in window around within the
waveform actually let me try a single
and see now see even if it's a single
even if the acquisition is already done
it still doesn't redraw so that actually
is a bug that they might be able to fix
it does have a slightly more advanced
triggering so you can trigger on a
pattern and then again press this tiny
little button and it comes up with
digital lines that have to be in a
certain state for it to trigger I don't
believe that it can trigger off of spy
or I squared C messages though I also
don't see a more complex single line
trigger so for example a pulse and then
a delay or a missing pulse trigger I
don't see anything like that and I
haven't read anything that indicates it
can do that there is hope though I think
that ni is spending quite a bit of time
updating this app and so I squared C and
spy functionality was just added to that
8 line digital i/o connector fairly
recently so they are putting effort into
adding features to this and they've made
a few claims on their website saying
that those features will be given away
for free which is actually pretty cool
so the spy and I squared C decoding on a
typical oscilloscope would cost you know
a thousand dollars from the big three
but these guys have included it as a
totally free update with the virtual
bench which is quite nice ok I've
connected the milligram balance up to
the digital input lines and also connect
this analog oscilloscope line back to
the function generator so you can see
you know pull the function generator
offset up-and-down and amplitude up and
down it works pretty well just to show
you how you might set up a trigger on
this thing we come over to trigger and
change this to channel 1 and then we can
pull the trigger level down like this so
I have to admit that you know for some
things using a graphical interface like
this is better on a PC oscilloscope but
overall I still feel like it's kind of
like driving a car with your windshield
completely fogged up
it's you can do it but you're probably
going to miss something and it's it's
really better just to clear it off
having like a digital phosphor effect
and a really fast update and really fast
responding knobs is probably the best
way to look at a signal with which
you're unfamiliar and you're probably
unfamiliar with it because you're using
an oscilloscope to look at it anyway
okay so let's turn on these digital
control lines and see what we can see so
we're going to add a spy bus and we're
not going to use chip select and I found
out that you can if you say always
active it just disables the chip select
line and it doesn't it's not decoding
anything because the bus isn't set up
quite right just yet but if we expand
the bus it should show us the digital
lines and I was expecting to see
something there ah no trigger so we'll
change the trigger to trigger on d0 and
we may as well turn off this analog line
kind of funny you can drag the bus
around it snaps back to the top so I
guess that's kind of its preferred
location and I don't see any way of
making these any larger but anyway we'll
just we'll just go with it here okay so
the clock is d1 now the day the line is
d0 that's MSB first we're going to go on
the rising edge of the clock and then we
can set the word size quite large this
is actually pretty cool it goes all the
way up to 32 which we're going to use
and we should be decoding oh and then
we'll set the idle time so there's a
long time between these 32 bit pulses so
I'm just going to set this to one
millisecond and as you can see it's
decoding the data up there in real time
which is good as you can see this
protocol is a little strange and so this
first block of eight bits is used as
like a control setting and it's not
changing with the weight applied to the
scale and then the next three sets of
eight bits are the actual data from the
load sensor and you can see it floating
around here because it's such a
sensitive balance and then these last
eight
aren't used either so lucky for us the
scope will start decoding here and then
32 bits later is the end of the data so
we're actually getting we would actually
like to just decode these middle 24 and
that's very hard to set up without chip
select so my opinion is that it's good
for a PC oscilloscope but it's still a
PC oscilloscope it doesn't bother me
very much though because I think that
this device is really best suited for
data logging and sensor integration so
let's talk a bit more about what it can
do with programmatic control for this
test I've got a standard one end four
thousand four diode forward biased
across one of the twenty five volt
supplies and then I've also got the
scope hooked up just to monitor the
voltage across the diode this is the
evaluation version of LabVIEW 2014 and
if you aren't familiar with LabVIEW let
me give you the thirty second
explanation the idea is that you're
building a virtual instrument and the
this window shows how the instrument is
wired and so you can have different
modules and each one of these modules
does something like controls the voltage
coming out of the actual virtual bench
that's sitting on the bench here and
then the other half of this is the front
panel of this instrument that you're
creating so some of these controls are
like a drop box and that actually forms
a control that the user can manipulate
on this front panel so think of it as
putting together an instrument for
someone else to use although that
someone else could be you yourself it's
just a easy way to operate your program
through this graphical interface I'm a
pretty big fan of it I know that people
have different opinions but it's it's
very fast it's sometimes limiting and so
people that would prefer to program in
Python or C would cite that it's you
know it's too limiting for what they do
but in terms of speed and getting stuff
ready fast it is quite good for that
especially for data acquisition and
analysis this is an example virtual
instrument that I downloaded from ni and
modify it a little bit and the purpose
it's got some headers below here to tell
you what's going on
so this first block initializes the
instrument it takes a name you might
have multiple virtual benches connected
your computers so this thing actually
queries the user for which one you want
to connect to
and you can see the list only has one
because I've only got one connected I'm
not going to go into detail about how to
program in LabVIEW but you can sort of
think of this as flowing from left to
right so the next thing that happens is
it queries the user for a power supply
channel and on the front panel it shows
up here and we're going to choose the
plus 25 volt Channel and then all these
other inputs are drop boxes or text
number entries here so the start voltage
is going to be 0 volts the current limit
is going to be hundred milliamps the end
voltage is going to be 1 volt and the
number of steps is going to be a hundred
so what this whole thing is going to do
is going to program that 25 volt power
supply to start out at zero and work its
way up to one volt in a hundred steps
and as it goes along it's going to
measure the current and voltage and then
show them on a graph so we will press
the Run button as you can see this is
the current versus voltage curve for
that diode and as you would expect at
about point six volts because it's a
silicon device it starts to conduct but
you can see here the it's at point 6
volts it's only flowing you know a few
milliamps and one nice thing is that we
can rescale this so this is currently
100 milliamps full scale but we can just
enter one here oops sorry
let's how about so now it's one amp full
scale but if we type 1m now it's one
milliamp full scale we can see at 0.6
volts it's getting close to one milliamp
however the resolution on this is quite
good so we can actually go down to a
hundred micro amp and we now we can
start to see the resolution of this
thing in fact on the 25 volt supplies it
has 35 or 30 micro amp resolution which
is quite good so if you're doing a
battery operated device you can monitor
the current consumption much more
accurately than you might have guessed
30 micrograms is quite good resolution
for that sort of thing another cool
feature is that you can still use the
dedicated National Instruments app to
use the oscilloscope on the device while
you're programmatically controlling
other parts of
a virtual bench as long as there's no
overlap so for example if your LabVIEW
program is only using the power supply
part of the device you can start the
virtual bench program and it will
disable the power supply since it's
being used by LabVIEW but you can still
have access to everything else so I've
set up the scope to single trigger at
244 millivolts and now we'll go back to
LabVIEW and run it as you can see it's
generated a new plot for us and then
here is the voltage that was recorded by
the scope so you can verify that the
thing is doing what you want and you
know make sure that the power supply you
know it's not doing something weird in
this case it actually does look like
something a little weird is going on you
would expect this to be zero and then
from zero monotonically increase it's
hitting the current limit here and it's
capping it and then when it shuts down
here's quite a bit of an undershoot so
the voltage is actually going negative
here according to the oscilloscope this
might just be because there's no actual
resistance across the power supply I've
just have a diode all by itself so I
don't know if I'd fault it quite to much
for this but this this does look a
little bit strange in this setup I have
the virtual bench connected to a
breakout board that I got from Adafruit
and on the breakout board there's a high
dynamic range light sensor that talks I
squared C and so the virtual bench is
powering the breakout board and we're
monitoring its current use and it's also
generating I squared C query commands
and then reading the data from the I
screwed C transaction here's the really
quick and dirty virtual instrument that
I whipped up just to get data out of the
sensor and so the section at the top of
the screen here runs the power supply
and then the section at the bottom runs
the I squared C stuff and so all it's
doing is initializing the sensor
enabling the sensor and then querying
data and so if I pass a flashlight beam
across the sensor board you can see the
bottom graph is showing the light
intensity values so once we've gone this
far it's easy to take the values that
LabVIEW is getting from the I squared C
bus from the sensor and then use those
values to do something else interesting
like either adjust one of the other
voltages you could have it output a
different voltage out of its supply
based on the light input from the sensor
or you have it adjust its function
generator or have it trigger the scope
or all kinds of things and so the real
power of this is just having all of it
kind of in one and I realize you can
connect separate pieces of equipment to
LabVIEW and accomplish almost the same
thing but this whole box cost two
thousand dollars and you don't have to
have separate drivers for each piece of
equipment I noticed that it would be
really helpful to have two monitors when
using the virtual bench one monitor for
the oscilloscope display and another
monitor for the LabVIEW programming I
ended up going back to using my
Tektronix oscilloscope to debug the I
squared C communications just because it
was too difficult to flip back and forth
and so it's much easier to have a
separate screen for this and so you can
see here these are the two bytes
together that are being read from the
light sensor and so when I pass the
flashlight over it you can see the
values changing there so my conclusion
is that if you just want to read and
write sensor values over I squared C or
spy you're probably better off using a
microcontroller development board or a
bus pirate or even an Arduino and in
this case Adafruit supplied Arduino code
with that breakout board so to get up
and running quickly it would have been
far easier just to connect it to an
Arduino if you want an oscilloscope
you're probably better off buying a
bench a full-on oscilloscope with knobs
in its own display however if you want
all of these things in one box with the
ability to pass data from instrument to
instrument easily I would say that the
virtual bench is actually really well
suited for that and like I say test
applications at the end of an assembly
line or test applications that have to
move around the lab frequently are
pretty well suited to it so I think it
has a pretty niche sort of area I know
National Instruments is probably
thinking that this would appeal more to
engineers just getting started needing
all this gear but I have a feeling it's
sort of better off for these interesting
sort of data logging and sensor
exercising sort of applications ok well
I hope you found that useful see you

next time bye----make money onlineTop Search Keyword : online earning, , make money online, earn money online, online earning, online earning sites, make money online free, online money income, earn money online free, money online, best way to earn money online, online income site, money earning websites, best online earning sites, easiest way to earn money online, earn money payment bkash, online money income site

No comments: