Simple question. When I launch a vi the context help window opens. Id like to not have that launch until I request it. Is there easy way to do that.
Greg
Simple question. When I launch a vi the context help window opens. Id like to not have that launch until I request it. Is there easy way to do that.
Greg
Hi. I am testing my NI MyDAQ for the EMG monitor I downloaded from this community. And the error stated above occurs. What is the solution in this problem? Thank you.
Hello there,
I've tried to find a problem to my solution, and I've read many threads that seems to describe the same kind of problem, but so far no solution to my issue.
I am new to labview, so I'll try to make it short and clear: I am trying to communicate with a pump, and I'd like to initialyse my numerical boxes with the values that are already set on the pump (for example, when I switch on the pump, the set flow rate may be 8mL/min, and I'd like to have 8 written on my labview controller when I run it the first time).
Pretty easy eh? So, it works half of the time. I don't fully understand why, but sometimes the bytes at port is "28", and that will make my read functions to correctly read the values, and some other times the bytes at port are... whatever number BUT 28, and then I'll get errors.
I have joined my VI, the focused piece of work is under the event Timeout. I've read somewhere on an NI page that doing this piece of work under a TimeOut event is a way to initialyze a controller.
Also, as I am new to labview, and if you feel like my code need to be corrected, fell free to critizise it. I am happy to learn from you
Cheers,
Flo
I have to use discrete pid express vi that was there in LV2009 in my current project.In LV 2014 toolbox,it is not there.I am looking for old examples thinking it must be there.I could not find any having this tool.
Could u pls help me.
I am trying to write a driver using the DCPower API that I can call as a sub-vi to a main test application. I would like the sub-vi to be able to have seperate functions that I can call when I need to within my larger application. The thought is to load the main application and when ready call the sub-vi to apply sourced V or sourced I to an output of a attached DCPower PXI instrument. I would then return to my main application, run some more unrelated tests with power supply output still on, then later on call the sub-vi again to be able to take a measurement, return to my main application to run some more tests, then when all done call the sub-vi again to be able to shut off the power outputs.
Attached is my VI. I can call the Source V or Source I functions to enable the output but unfortunately when I call Measure V&I it seems to shut down the output. I assume this is because from what I read about the Initialize API function it returns the instrument to the Uncommited (reset) state. I need to call initialize during the Measure V&I function so it opens a handle to the instrument but it then kills the running session.
So how can I change this VI to allow me to run the Source functions first, exit sub-vi back to main to run more tests, call sub-vi again to Measure V&I?
Thanks,
Aaron B.
Hi everyone,
I know there have been many topics on using cameras with stepper motors but I havent quite found the information I was looking for. I am also very new to LabVIEW so a lot of things go over my head at the minute so specifc help on my task would be much appreciated
I want to trigger a webcam to take an image every 'N' mm over a set distance. I have achieved this although I'm not sure whether it is the best method (attached image). I currently have a pulse train using a loop which runs the desired number of steps corresponding to the total distance I move. Inside this loop I have a case that when true takes an image. This case is true when the number of steps corresponds to 'N'.
I would like to know if there is a better way of doing this or running this process quicker? The main lag occurs every time the camera takes an image. I don't know whether this could be excuted quicker in a different fashion, or if it is a hardware limit?
Hardware: NI USB 6501
Any help would be much appreciated.
Robbie
Short version: I'm looking for a way to monitor the CPU being used by every running process and log that information (basically Task Manager). Anyone have any ideas that aren't overly complex?
Long version: Unfortunately, after some research and playing I haven't found a Windows API call to give me this information. I've played with calls to the System.Diagnostics.Process class and can get the total time, etc. I've also played with EnumProcesses and even the DOS Tasklist command. I have no problem getting CPU time, but as a % of CPU used there doesn't seem to be a method.
My next approach will be monitoring the CPU times, comparing to other processes, etc etc. but that seems pretty convoluted... so, I figured I'd ask here before digging more. I've seen a few people here who seem to know the Windows API pretty well.
I have a cluster of UI elements that I save as a strict type def to be reused between programs. I can nicely send data into each of these elements. However, I am using waveform charts instead of waveform graphs so that I can nicely stack the data. In my application the user can select the data at different points in time so I need to clear the waveform chart history and then update the graph with the necessary values. This works nicely if I make a direct reference from the graph but I can't get it to work using just the reference to the cluster. I get either a type mismatch if I use a strict reference, or I don't see the history property at all if a non-strict reference is used. I have seen people post this problem before but hadn't seen any good solutions that work with just the cluster reference. Any thoughts?
I have a project where I am running 4 loops at the same time and need to stop all loops with one stop button and stop all loops if one of the loops gets an error.
Loop 1.
Start up loop
controlls the other 3 loops
Loop 2.
Read analog voltage
Loop 3.
Read Digital inputs
Loop 4.
Write Digital output
Any one know how to do this?
I need to put a decoration over a button, but decoration blocks button's hitbox. Is there a way to solve that?
Hi,
Let me explain a little the problem, this program works good when using in an flat sequence structure divided in 4 parts and in the third part there is a while loop. I was going to change it to set everything but the start camera and the parameters outside a while loop as i did with others drivers, however when using that, the first call library function node just liberates two numbers, zero and later 1 and it can not be changed those parameters. So, the only easy way to make it work was in this flat sequence but i am not that confortable, always that i use stop i have to close the labview and open it again because it does not work well when i stop and i try to initialize it again.
The second problem are suggestions just to change the While Loop in the third block of the flat sequence structure, i was thinking that that possibility could work well, but i tried changing it by others structures and is not working well.
Thanks for any help you can give me
LV2013.
This code works, but I'm trying to figure out why I need the PRESERVE operation.
If i don't include that, I get a compile error, at the right-side ShiftReg:
"One or more of the inputs to this terminal or shift register does not originate at the dynamic input front panel terminal."
The VI used, looks like this:
I have a root class called "Addon", and a child class called "Addon for Emissions TC".
Another root class is called "Emissions Bench" - not a child of either one.
The "Addon for Emissions TC" class contains an array of "Emissions Bench"es
The purple VIs are methods of the ADDON (root) class.
So I pick out each bench, do some work on it, and put it back into the array.
Some of that work involves a root method.
But I don't understand the error. There is no way for the output terminal to be some class OTHER than the class that came in.
If I put the PRESERVE operation inside the VI itself - it still has the error.
I can't make that second input terminal DYNAMIC (LV won't let me) - is that the issue?
Can someone walk me thru what the compiler is thinking?
Hi all!
I have a problem with Labview communicating with a function generator Agilent 33600. I couldn't manage to read or write in the internal memory of the instrument. It seems that LabView has no access to this memory because when I use a file access function and the file dialog box opens, I can't see the drive of the instrument. Nevertheless, I can see this drive through the windows file explorer.
I would appreciate so much an advice to write or read from this memory through LabView...
Hello everyone.
Iam quite new to Labview and I built an application to read data from to Temperature/Humidity sensors. The Write to measurement file Express VI is configured so that a new file is used afte 1000 samples.
Now I want to copy the file before the new one into a differerent folder directly after is has been closed. I tried to set a copy function outside of the while loop and change the tunnel mode to indexing but that doesn´t seem to work.
I only get an error (see attached VI).
I would be very happy for any kind of help,
thanks in advance,
best regards,
Michael
Hi,
I downloaded 2009LV,wanna install FPGA modukle so downloaded that too.But after unzip,i do not see the files executing(not installing).
Where is the problem here??
We have been experiencing some trouble with SD cards and USB sticks formatted to FAT32 on some long term monitoring devices based on Linus RT (mainly cRIO-9035's). It seems that the drives are vulnerable to power fluctuations and unexpected restarts (which are unavoidable on these locations). Aborted write operations render the drives damaged, thereby sabotaging logging after restart.
We have identified two solutions; implementing both gives the best redundancy:
1) Installing UPS's (uninterrupted power supplies/battery backups) - accomplished
2) Using the seemingly more robust file system "ext3", which is available on Linux RT targets (FAT32, ext2 and ext3) - failed so far:
-> I have not been able to correctly format a USB stick to ext3. I use the MiniTools Partition Manager, and get no errors when creating and formatting the partitions. But they appear as "read only" when inserted in the RT chassis. All attempts to access them, other than observing the empty sdxx-folder in "/media" returns errors.
Has anyone had any luck with using ext3 formatted drives as data drives on Linux RT targets? Is it worth the effort to solve my problems or should I resort to FAT32 and the risks observed?
Frds,
In LabVIE any options available for customize UI.becase i created one labview program but its was not interacting to customer.i ready own UI design Now .how to communicate the from the UI to LabVIEW with & without internet. The exampple UI also i attached on bleow. plzz help me frds
Hi,
I am trying to use labview to read the output values of some Keyence sensors that are linked to a Keyence NU-EP1 adapter. I am using NI Industrial Communications fir Ethernet/IP. I can sucessfully see the values for the basic Classes such as identity, TCP/IP and ethernet link. I can not get it to read the actual value of the measurement from the sensor, though. I am assuming that I need to use implicit messaging with Labview being the receiver(Scanner.)
Can this be done?
Thanks or any replies
Hi
I'm trying to get my LabVIEW program to send an analog output voltage to a machine and read an acceleration using the cDAQ-9184. The output chassis I'm using is the NI 9263 and the input chassis is the NI 9234. I generate a white noise signal using LabVIEW's express signal generator.
The first problem I have is synchronization. I had a old VI that started measuring the acceleration roughly a second after the input was given to the machine. I used LabVIEW's tutorial on how to synchronize the analog input and output, only to find out that it doesn't work with two different chasses. Then I found another tutorial that showed how to synchronize different chassis with each other.
The second problem is the termination of the LabVIEW program. What I want it to do is to generate the signal and then simultaneously send and read the analog inputs and outputs, respectively. This is because I don't want a phase difference or any shorter signals to achieve direct comparison. But as soon as the signal is done being sent to the machine, I want the analog input to stop reading and then then the LabVIEW program must stop. I want to be able to choose any length of signal to be generated and stop everything once the entire time length of the signal has been sent to the machine.
I have tried "DAQmx stop", "DAQmx timing" and "DAQmx is task done?" and none of them have worked for me. This is also my first time posting on a forum, so I hope I've given enough information. I Have attached my VI as well.
I would really appreciate any help I could get.
Thanks in advance
Peter
Hi
I'm trying to get my LabVIEW program to send an analog output voltage to a machine and read an acceleration using the cDAQ-9184. The output chassis I'm using is the NI 9263 and the input chassis is the NI 9234. I generate a white noise signal using LabVIEW's express signal generator.
The first problem I have is synchronization. I had a old VI that started measuring the acceleration roughly a second after the input was given to the machine. I used LabVIEW's tutorial on how to synchronize the analog input and output, only to find out that it doesn't work with two different chasses. Then I found another tutorial that showed how to synchronize different chassis with each other.
The second problem is the termination of the LabVIEW program. What I want it to do is to generate the signal and then simultaneously send and read the analog inputs and outputs, respectively. This is because I don't want a phase difference or any shorter signals to achieve direct comparison. But as soon as the signal is done being sent to the machine, I want the analog input to stop reading and then then the LabVIEW program must stop. I want to be able to choose any length of signal to be generated and stop everything once the entire time length of the signal has been sent to the machine.
I have tried "DAQmx stop", "DAQmx timing" and "DAQmx is task done?" and none of them have worked for me. This is also my first time posting on a forum, so I hope I've given enough information. I Have attached my VI as well. The VI shows that I am reading a voltage input for the analog input, but I am only using this to try get to program working.
I would really appreciate any help I could get.
Thanks in advance
Peter