I got a problem in my work and my work was stopped. Please help me to sort out this problem sir.
Firstly I developed a VI in labview and a Simulink Model in MATLAB. I run VI, I got some output. So now I want to transfer this LabVIEW output as an input to MATLAB simulink model. I use Simulation Interface toolkit but in that I understand the control the LabVIEW VI can control input to MATLAB model I couldnt able to find how to transfer LabVIEW output as an input to MATLAB model. plz help me sir. Hope u understnd my problem. For better understanding am attaching a file plz go through that hope it will make you more clear. pls mention your mail id nd mine is ramakrishna.iitroorkee@gmail for furture clarification.
I initially had one >= block to exit this while loop and it worked fine. I wanted to add a second condition to exit the while loop, again using a >= block, so i run both into an OR block and I get a broken wire. I dont understand why one works but the other doesnt.
The bottom doesnt work with or without the OR block.
I have a question about connecting multiple DAQs to the labview.
So, currently I have two NI 6210 DAQs, each with 16 channels. I would like to simultaneously collect data with 32 channels, so I plugged both DAQs into the USBs on my computer. I am wondering which function block that I could use to look for and combine the data from two DAQs in Labview? Currentlly I used a DAQ assistant to read data from one of my DAQs. I tried adding another DAQ assistant block, and then merge the two blocks, but it doesn't work.
Please advise. If there is any similar post, I would really appreciate if you could direct me to those.
I am trying to get my bars via the Histogram.vi to line up with my X-axis. I have placed three elements in a 1D array of doubles. I have tried for the last three hours to get this right and it is driving me nuts!
So I have a path that leads to a directory that's already created, and a string constant, and combine them with the build path function VI to return a full path, to pass to some write to file function. This is working fine, as seen in the upper half of the block diagram of this picture (with test.txt):
Image may be NSFW. Clik here to view.
But I want to make each file be named after the date and time, as you can see I've done in the bottom half of the above black diagram. You can see that the filename it has produced looks fairly straightforward to me.
Now, I try connecting the output of the bottom part to the top part, in lieu of test.txt:
Image may be NSFW. Clik here to view.
And now instead of writing to file, it pops up with a dialog window asking for me to name the file to use. I looked at the documentation for function that I'm passing my file path to (Write to spreadsheet file VI), and it says:
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog box.
Alright, so that's probably what's happening here, I'm guessing. But why is the Build a path function returning Not A Path?
If you go to the manual for Build a Path, it says:
name or relative path is the new path component appended to base path. If name or relative path is an empty string or an invalid path, this function sets appended path to <Not A Path>. If base path is an empty path then name or relative path must be an absolute path. This function then sets appended path to the absolute path in name or relative path.
Yet, it doesn't say what an invalid path is. I can't imagine why it doesn't, as that seems like really useful information for a manual to have, but alright. Googling "labview build a path invalid path" returns first the manual page I just referenced, and then this page, but all it seems to say about invalid paths is that they can't have slashes, which my example doesn't.
I apologize if I'm missing something obvious, but is it anywhere or are you just supposed to guess? I suppose it's possible that it's more general Labview knowledge that I'll get with more experience, but it still seems like it wouldn't hurt to just have it on the page. I tried a few obvious things like removing whitespace from my date, but no luck.
I have been assigned a project that should be able to navigate, avoid obstacles and handle objects. I have to use NI-Myrio and Labview to complete the project. Since I am new to robotics and Labview, I have limited idea to approach the project. Basically, the robot needs to get inside a room and pickup object while avoiding obstacles and again, get outside of the room from a different door and drop the objects in drop zone.
I resample signal from 400 kHz to 44.1 kHz. I set normalized bandwidth = 0.0001 and listen my signal with great quality at 60 dB rejection. If 0.5 <= normalized bandwidth <= inf, I listen bad sound. And why I have no error at normalized bandwidth > 1? LabView 2013 32bit.
I'm current having a hard time with what I believe is timing/synchronization/sampling errors with a read write process. This is my first exposure to LabView
What im trying to do:
Take a sinusoid that doubles in frequency but has a set amount of periods and output it on the 9263.
Read the sinusoid into the 9205
Wrtie the amplitude and frequency of that signal to an array
What I think is working
The write process seems to be working.
What's going wrong
The read values and plot don't make sense. It's reading only segments of certain sinusoids and doesn't seem to be timed correctly to the loop iterations.
Write now both the analog input and analog output are on the same clock and operating at the same rate (I believe). The samples generated from the write block is wired to the samples to read of the read block. I've spent countless hours trying solutions but I simply don't have enough knowledge of LabView to understand what's going wrong. The final desired operation is for the output from the 9263 to power a shaker device and a force transducer will supply the input to the 9205 module.
Please try to understand that this is my first exposure to LabView. Excuse my arrogance/ignorance if any is present.
Thanks for any support you can give. I am a pretty good C programmer and a mediocre LabVIEW programmer so keep that in mind. I have created a simple VI and C API to demonstrate the issue (all source included, built with Visual Studio 2005)
I am wrapping a C API DLL with LabVIEW as you can probably guess. There is a tricky portion of the C API that requires some pointer math to work. This is the part that is leaking handles (seen in Task Manager, below. Over 2 million handles and growing). The leak is only seen in LabVIEW and not when calling my API directly from C code (example code for the C example is also attached)
Image may be NSFW. Clik here to view.)
The VI that demonstrates the issue is quite simple.
Image may be NSFW. Clik here to view.
LabVIEW is moving the buffer returned from "Card Seq Blk Rd.vi" around and causing "Card Seq Find Next429Ex.vi" to fail. This is my first hint something is awry - I don't believe my buffer should move each time. I actually do some pointer math in my real API to fix this up but did not bother with this example. The issue is the same regardless of the fix-up.
The attached zip contains my example VI, as well as the C Source code for the API and a C Example using the API (that does not leak handles).
I'm sure I'm not grasping a relatively simple LabVIEW memory management concept here, but again mediocre so be gentle.
From the above data, I want to extract the underlined data. The data between \02 and \03 in the first column, that between \04 and \05 in the second column, and that between \06 and \07 in the third column of an excel file. The system receives data whenever there's "empty" and "full" activity at the garbage bin. The following data that follows the previous one should be written into a different row.
I've attached the VI I'm using to read the Serial RS232 data.
From the above data, I want to extract the underlined data. The data between \02 and \03 in the first column, that between \04 and \05 in the second column, and that between \06 and \07 in the third column of an excel file. The system receives data whenever there's "empty" and "full" activity at the garbage bin. The following data that follows the previous one should be written into a different row.
I've attached the VI I'm using to read the Serial RS232 data.
I have a VI Containing a sub VI. When I press a botton, the Sub VI opens and if I press another botton in the Sub VI's Front Panel, a boolean global variable turns ON but when I exit the Sub VI, the global variable returns OFF. How can I have a Global Variable that when I exit the Sub VI it still remains ON.
So I have been having a reoccurring problem when using Combo box's on the front panel.
The programs I create get used on multiple screen resolutions and sizes. So I like to enable “maintain proportions of windows for different monitor resolutions” and “scale all objects on the front panel as the window resizes” from the VI properties<Window Size
This works great for most front panel objects, however for combo boxes I have always had issues. They seem to resize themselves every time I minimize the window, or reload the main VI. And the drop down button on the combo box gets moved and it’s time consuming to correct this. (see attachment)
My work around for this was to lock all front panel objects, but sometime I forget to lock everything at the end of the day and then the next time I open the VI I get surprised with having to fix all of the combo box’s.
I have tried grouping, as seen in the attachment, but it does not help, only locking all objects avoids this issue.
I need to use a discrete transfer function in LabVIEW FPGA, and i tried using the block Discrete Transfer Function Direct VI. However no specification has been given for this block.
Image may be NSFW. Clik here to view.
I would be grateful if anyone could explain what value to insert?