Quantcast
Channel: LabVIEW topics
Viewing all 67105 articles
Browse latest View live

Score 0 in OCR Verify Text

$
0
0

Hello to all.

I have developed an application which has an OCR session with some characters trained.

I have attached the source code.

 

The problem that I have is the next:

·IMAQ OCR Read Text 4 VI works fine (This one). It recognizes the characters inside the ROI (characters which have been trained before)

· Now I would like to use IMAQ OCR Verify Text VI (This one). Source code does not give me an error but output "Verification Scores" of IMAC OCR Verify Text returns score 0 in all characters that there are inside the ROI.

 

What am I doing wrong?

 

Thanks a lot.


Getting the 'General SPI Read.vi' example to function with an MS5803-01 Pressure Sensor

$
0
0

I'm currently trying to modify the 'General SPI Read.vi' to work with the MS5803-01 pressure sensor (datasheet attached), with no luck so far. The steps I took to modify it and the results are listed below. I have extremely limited Labview knowledge, so I really appreciate having even the simplest errors pointed out to me. Thanks in advance for any assistance!

 

Changes made to the code:

-Upon opening the example, the input to the 'close reference.vi' is incorrectly wired, so i connect that to the device reference

-Set the device (NI USB 8452) and Chip Select (4) on the front panel

-Set the number of bytes to read to 3 (24 bit result from the ADC)

-Add a control ('WRITE') to allow changing of the written bytes

 

Things I know:

The sensor needs to be sent '1E' to reset first

Next, 'A0 - AE' in order to read the calibration coefficients (should receive a 16 bit result each time)

Next, '48' or '58' in order to trigger the conversion of the two data points

Lastly, '00' to read the ADC and return a 24 bit result for the data point

 

Things I don't know:

The EEPROM Data address (and address width), I can't find any mention in the datasheet of the address I should be sending my command bytes to.

 

Current Result when Run:

Error -301735

- NI-845x: The number of bits provided is invalid. Refer to your documentation to determine valid values.

I can't find any further info on this error, but my assumption was that the labview code was receiving a different number of bits from the 8542 than it was expecting. I thought this would be to do with the 'Number of Bytes to Read' setting, but I tried a variety of options without any luck.

 

Current hardware setup:

An MS5803-01 pressure sensor, connected to an NI-8452 using the MISO, MOSI, SCLK and CS(4) connectors. Wired as prescribed in the datasheet. It is connected to a 3.3V power source with a 100nF capacitor between Vdd and ground. The PS pin is pulled to ground as well.

 

As I mentioned before, my labview and digital signal knowledge is very limited. I've done extensive searching online to try find a guide that could help me get this set-up, and I've tried a variety of examples and guides, but I haven't found anything that helped. I decided to post this using the official labview example, since it seems like it should be the simplest to modify. Once again appreciate any assistance. Cheers! Bruce

Need Help about labview Real time License purchasing.

$
0
0

Hello,

 

I have Lab view 2013 SP1 Full Development License with FPGA development, Real Time Development License also.

Now I use CRIO 9074 Hardware of NI.

SO Any one guide me Real time Deployment License or FPGA Deployment license required to use this hardware?

or I can fully work with this above mention license? 

USRP TX RX example code

$
0
0

If I am attaching the header of 160 bits in USRP Packet Tx Rx example code, do I need to change the other fields like guard bits, sync bits or else? Please guide me.

 

What is the use of guard bit in this program?

Run events sequentaillay - Automatically

$
0
0

Dear All,

I am doing a project in which my boss requires to run different set of codes sequentially. I have implemented individual test using event based state machine (Triggered by a button as event). The requirement is to run a set of programs one after another. There should be selection in which we could select; Run test 2, then test 1 then test 3 and so on (of course automatically). I tried to demonstrate the requirement in the following diagram, hope you’ll understand my point. Can we create such an interface in labview?

 

11.jpg

VeriStand model from LabView project - problem with inports

$
0
0

Hello everyone,

I generate VeriStand model from LabView project, however I have problem to create inports, which would be used in VeriStand. Every input in LabView project appears as a "parameter" in VeriStand.

 

The question is how to create a LabView project in such a way that input in LV will be an inport in VeriStand?

 

Best regards,

Pawel Krzesinski

Labview 64bit

$
0
0

I have installed Labview 2016 on a 64bit Windows 10 system but the installer has installed a 32bit Labview version rather than 64bit, why is this? How do I get 64bit Labview installed?

Two Pulse trains on NI-6259

$
0
0

Good day to everyone

 

I want to use a NI USB-6259 BNC for generation of two pulse trains; both would have a frequency of 35 kHz and a duty cycle of 0.2, but the initial delays would vary by half the period (that is, one would lag after another for T/2). Is there a way to implement this without using both counters of the DAQ board?


Open VI Reference Function and a RUN VI RUN VI Method Causes Error 1000 with version 2014

$
0
0

I inherited an application that was originally created with LabVIEW version 8.6 for a Windows XP system but I am updating it with LabVIEW 2014 for a Windows 10 system.

 

It all works except for one section where an Open VI Reference Function is used and later
a RUN VI RUN VI Method is used.

 

This works fine with the version 8.6 application but with the 2014 version, I am getting an Error 1000.

Is this caused by a bug with version 2014?

 

Any ideas on how to fix this problem?

 

Thnaks

Here is what the this part of the application looks like:

Error 1000.jpg

[LV] "Read from Binary File" truncates

$
0
0

hello!

While programming my application in LV, I've run into an unexpected behavior of the "Read from Binary File" block: if I try to read a file as array of U32 (I need to handle it as array of U32 to send it through a DMA FIFO) and the file is not perfectly aligned on 4 bytes (32 bits) the last bytes are truncated. I was expecting to have one more element padded with 0s instead.

See the code snippet:

ReadBinaryFile.png

 

Is there a way to NOT leave behind that very last chunk? I'd like not to read the whole file as U8s and then join them into U32s because I need to handle large files.

 

TY!

Pass numeric value to front panel from several layers of subVIs

$
0
0

I have several numeric values that I want to pass to the main front panel VI but the issue is it is buried within 3 other subVIs. I don't want to pass them between each subVI, especially since in the end I'll have 24 to pass. Is there a nice way to jump straight to the front panel instead of having to go through each subVI?

Issue writing re-formed waveform to file: Multiple data columns corresponding to same timestamp are being concatenated into a single column resulting in mismatched timestamps

$
0
0

Hello,

 

I'm using 6 accelerometers connected to a cDAQ-9174 with NI 9215 modules to calculate angular accelerations of a rigid body in accordance with algorithms in literature.

 

I'm having some issues writing my waveform to file. In my code I've split my waveforms into their components and performed some calculations on the data. I reform my waveform with the timestamp, dt and new Y which is a 1D array with 3 columns. When I write this waveform to file each row should contain the timestamp and 3 columns of data however the "Write Waveform to File vi." outputs a row containing the timestamp and only a single column of data. It appears to concatenate the data into a single column with each element assigned to consecutive timestamps.

 

How can I ensure each row contains the timestamp and the 3 data points that correspond to this time?

 

The vi is located in the bottom right corner of my consumer loop, to the right of a for loop. The file it outputs is alpha_anat.

 

Thanks in advance for assistance with this.

 

Thanks,

Rach_17

The procedure entry point cound not be located in the dynamic link library niorbu.dll nidimsae.dll

$
0
0

Hello guys; 

 

I installed labview on a new computer, But it will give me three messages whenever I turn on the computer.

I tried to reinstall the Labview and I tried to copy these three dll files in my old computer and then replacer them in new one.

But it doesnt work, I need your help plz

 

The procedure entry point _palLogEvent cound not be located in the dynamic link library C:\Windos\SYSTEM32\niorbu.dll

The procedure entry point ?_fromString@tSSGUID@@AAEXQBDPAJ@Z cound not be located in the dynamic link library C:\Windos\SYSTEM32\nidimsae.dll

The procedure entry point _palLogEvent cound not be located in the dynamic link library C:\Windos\SYSTEM32\nidimu.dll

show me how can i make subVI 1 , subVI 2 and addressing pattern in this ping pong diagram

Data transmission from Simple Message Library to database

$
0
0

 

Hello everyone,

Currently, we use NI 9683 as the micro controller to control the battery inverter and data transmission. The labview program run in this NI board uses the library of Simple Messaging (STM) to transfer data and control command via TCP/IP. How can we transmit data from labview to mySQL database?

 

I tried to follow the STM packet format to send the data, but it didn't work. Then I tried to receive data, the data can be received but it was unrecognized symbols. Capture.PNG

Maybe someone can give me some suggestions.

Many thanks for reading!

 


Event Structure causing "freezing"

$
0
0

ok, I tried digging around on the boards, and I can't quite find what i'm looking for.  hopefully someone can help, or point me in the right direction.  I'd greatly appreciate it.  

I seem to be having some difficulty with an event structure.  The attached .vi is drastically cut back from the full project i am working on, but it does show the issue I'm experiencing.  Basically, in the full project, an operator scans in a product id and hits the GO button.  The tool then displays the sorting destination in the Sort To: field.  the operator (I'd like) would then have the option to print the bar code for that field (I've disabled that for this post, and just added an incrementing test num for simplicity) and once they scan the value into the Bin ID field (and it matches), the next button is available to be pressed.  Once Next is pressed, the iteration is reset so they can scan a new item in.  

I've been playing with this and playing with it, and no matter how I configure the event structure, I cannot get the desired behavior.  in the current configuration, it seems to work OK, until you go to print a second time (in another iteration).

And, when I remove the "next button" value change from the items in the event structure, it will not let you hit next without hitting print, which is not desirable behavior.  

I've disabled the settings for locking the panel and limited the number of operations to queue to 1...which doesn't seem to help either. 

I've also tried adding a timeout, that also doesn't seem to help (and I really don't want it anyway).  My operators may need to go get another box to print their label onto, and there are other scenarios where a timeout in this step is just not desirable either.  

Please help!!!!

Increased execution time in multiple calls to a Call Library Function node

$
0
0

I have been given a dll with a single function, that is being called by a Call Library Function node (CLFN). Each time the CLFN is run, its execution time increases. This is with the same inputs provided and the same outputs generated. Execution starts at around 0.8 secs and linearly increases to 3 seconds, over 100 calls. It gets slower as the number of calls increase. I do not observe any significant memory changes over these calls. Exiting LabVIEW is needed to return back to a 0.8 second execution.

 

I've been working with the developer of the dll and have been told there is no such delay if the dll is called multiple times from within LabWindows/CVI environment.

 

I'll describe the calculation the dll below, but I can't understand what is going on here. I've used many dlls with the CLFN in the past and never experienced this type of behavior. How is it possible LabVIEW has this happen with the CLFN, but the LabWindows/CVI code does not?

 

The dll is a complicated trajectory generator, which has many inputs and really just outputs a double 1D array. This output array is preallocated by LabVIEW and typically is sized at 1,080,000 elements. The dll typically only populates values into a third of this array, and leaves the extra elements at zeroes. That is it returns all 1,080,000 elements each time.

Clear arrays into a non stop while loop

$
0
0

Does anybody knows how can we clear na array that is included in a non stop while loop?

I attached na exemple that I would love to reiniciate the array for the secon part of sequence.

Thanks in advance 

regression on last 10 data points of a chart

$
0
0
Bascially I collect data every second from a device which is monitoring my experiment. The system takes about 30 second to respond to any changes (to power) that I make. I want my chart to plot 60 secs worth of data for a general overview, but I wish to perform linear regression on the last 10 data points. I will use this trend line to make decision about increasing or decreasing power. I have stripped the VI to the bare bones and have attached it here. I am using the history node, and wish to connect this to the curveFitting.Vi supplied by LAbview. However, I cannot connect the two. I clearly don't know what I am doing, but have to start somewhere.... Thanks for any suggestions, even if its to go and read up on something... Cheers ALex

EMG Controller

$
0
0

Project Objective:

A.) detect activation of small muscle group

B.) count # of activations in 3 second period

C.) display counted # after each 3 second period

 

The first part is where my problem lies.

System description:

1) using an analog front end to filter raw EMG signal from biopolar surface electrodes and producing one analog output. 2) That one output goes to AI 1+ on the myDAQ (analog in 1), AI 1-  is connected to ground. 3) daq assistant brings data into labview. 4) two additional digital filters refine signal. 5) amplitude, level, and tone measurement express Vi's used (these Vi's produce values that change an order of magnitude in response to a muscle activation) this is where the problem sets in. 6) the rest of the code is different attempts to use threshold detection to detect when and how many times the muscle has been activated.

 

My Problem:

the VI's explained in step 5 above all generate a single value at time zero or something like that. Their waveforms are consistently centered at t=0. This could mean time data is not included after the measurement is performed by the VI. I get ERROR code 20013 which can be related to the number of inputs being less than the width (my width is 1 for each detector). I tried building arrays to store the data and using different types of threshold detectors, but nothing worked. 

 

I think maybe a shift register might work, but then I would have to change my sampling setting from continuous and it would get to complicated for my level of expertise. It would also make the loop in a loop I am planning on using for part B and C from above very confusing. 

 

Any fixes for my code or suggestions on a new method would be welcome. 

 

Viewing all 67105 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>