Jump to content

george seifert

Members
  • Posts

    399
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by george seifert

  1. I thought this code use to fail (probably an earlier version of DAQmx) if I used a DAQ card that didn't support PFI12, but now I don't get an error. Why does it let me send a string like /Dev1/PFI3:12 to the "output terminal" input of the DAQmx Export Signal VI if I can't select /Dev1/PFI12 from the list in the "output terminal" control? George
  2. Nope. That returns the VISA manufacturer. In this case National Instruments. I've tried every property in the list. Rolf, I don't really want to go the Windows API route, but I don't see another way. George
  3. Thanks Rolf, but I tried that. The Interface Description just returns "COM4 - USB Serial Port". Not quite enough to narrow it down. I went through all the properties and none of them give me anything useful. I suspect I'd have to use some type of Windows function, but have no idea which one and have no idea how to figure out which function I need. George
  4. I have a USB device that comes with a driver that makes the USB port look like a COM port. I'd like to be able to automatically detect which COM port it picked. The only way I can see to do that is to match something like the Driver Provider that shows up in the Driver tab under the COM port properties in the Windows Device Manager to the manufacturer of the device. I don't have a clue how to retrieve that info. Can anyone get me started? George
  5. I'm not sure if the topic title fits exactly, but it sounded kind of impressive. I'm just looking for a general idea here of a direction to take. Any thoughts are welcome. I have 4 channels of data that I want to sample for 15 msecs. When I start sampling each of the channels depends on a corresponding independant trigger that the code will initiate. For instance, trigger 1 happens so sample channel 1 for 15 msecs. Trigger 2 happens so sample channel 1 for 15 msecs. The triggers can happen any time in relation to one another so for instance trigger 2 could happen during the sampling of channel 1. Part of the problem might be that I have existing DAQ boards I need to use that don't have parallel DAQ inputs. I was thinking that I have to do a continuous acquisition of all channels and then somehow pick out the data of interest based on a timestamp of when the trigger happened. Does that seem reasonable or is there a better approach? Thanks, George
  6. I need to get info from the user regarding a test sequence. I put the attached control in an array so they can setup several different parameters for a test. They'll select a Type which then determines the additional info needed. So for each entry in the Type enum I have one or more separate inputs. It looks a little clumsy because there are a number of inputs. I could pare down the number of additional inputs and have some of them do double duty, but that would add to the confusion I think. Ideally only the required additional inputs would appear based on the Type selected (or maybe the required additional inputs could change color). I know someone's going to say this sounds like a job for Xcontrol, but they confuse the heck out of me. Also I don't know how or if they would work in an array. Any suggestions would be welcome -even votes for Xcontrol. George Download File:post-2786-1163688073.ctl
  7. Here's a subVI that I use to get the info. George Download File:post-2786-1158324922.vi
  8. As mentioned in another post I'm having a problem in LV 8.2 using the PSP protocol with a datasocket read to read a shared variable published by another executable. I'd like to ask a different question in that regard. Is there a better way to share variables between two LV executables residing on the same PC? I think using the datasocket read was the only way I could do it in LV 8.0.1 without some fancy add on module (I forgot the name of it). Thanks, George
  9. I have two applications that communicate by one VI publishing a shared variable and the second application reads the variable using a datasocket read with the PSP protocol. This used to work fine under LV 8.0.1. Now that I've switched to 8.2 it doesn't work anymore and gives me the following error: Error 1181 occurred at DataSocket Read in Time Lapse.vi Possible reason(s): LabVIEW: Protocol not recognized by LabVIEW. NI so far hasn't come up with a solution. Has anybody else had trouble with this? George
  10. I'm pretty sure you can't. I think they did add that in 8.2 though.
  11. I haven't seen the previous posts, so I don't know if this came up. This appeared on the NI forum. It worked in one case for me. I had another problem once where a timed loop went bezerk on me. I was getting tons of insane objects. I finally tracked the problem to the timed loop. I replaced it and that solved the problem. George The insane objects question comes up from time to time. Here is one way to find the particular problem: 1) Close LabVIEW 2) Put the key "LVdebugkeys=True"in the LabVIEW.ini file 3) Open your VI 4) Press CTRL+SHFT+d, then press CTRL+SHFT+h (I had to press CTRL+SHFT+h+d). This will turn on an object browser. 5) In the top left list box, select the element that contains the name of your VI and the letters BDHP 6) In the top right listbox, find the line that begins with the error number. 7) Click on the F button to find the offending object. 8) Delete this object and recreate it. It will ususally be a wire. Bob Young - Test Engineer - Certified LabVIEW Associate Developer DISTek Integration, Inc. - NI Alliance Member e-mail: BobY@DISTek.com
  12. Has anyone had problems with timed loops causing crashes? I get really bad crashes - the reboot kind. If I disable the timed loop or replace it with a regular loop with a time delay, then everything is fine so I know it's the timed loop. This has happened in several different situations so it's hard to give an example. It happens with hardly anything in the loop or more complicated code inside it. I'd just replace the timed loop with a regular loop, but it's handy to be able to stop the timed loop when using parallel loops. George
  13. I have a timed loop that can have a time between iterations of up to several minutes. I want to be able to stop the loop when the user presses a button. The way I stop the timed loop now is by monitoring the button in another faster timed loop (1 sec). When the button is pressed I stop the fast loop and then run the Stop Timed Structure VI to stop the slower loop. I'll stop the slower loop also if an error occurs there in which case I then have to run the Stop Timed Structure VI to stop the faster loop. This seems a bit convoluted and was wondering if there's a more elegant solution.
  14. I'd like to be able to change the background color of a numeric control in an array. I can't find any properties that will let me do that. Is is possible? George I fiigured it out. I wasn't downcasting properly. It's not enough to use the Numeric class specifier when using the "To More Specifc Class" VI. I had to create a reference from the actual control. George
  15. I think the problem is an Excel version issue rather than a LabVIEW version issue. I had the exact same problem using the LV Report Generation Toolkit when I switched to Excel 2003 from Excel 2000 (or maybe it was Excel 2000 from the previous one). George
  16. I need to send someone an update to an application. Assuming that nothing changed about the additional installers is there any way to send just the code update? Would it even be possible to send just the .exe file assuming they did a full install of a previous version? George
  17. I just tried using the datasocket to do the shared variable read. I fed the URL of the variable I'm reading into the "connection in" input and the type of my shared variable into the "type" input. I'm getting confusing info back from the Datasocket Read VI. The "quality" indicator reads 0. The help says that means "The data item is of good quality". However I get an error 42 (general error) from the VI, which tells me nothing. The URL I used is the same one I used if I use Bind to Source and it reads the shared variable fine that way. Any more hints on how I can programatically tell my VI where to read the shared variable? George
  18. I've gotten shared variables to work between VIs in two projects with a small example. Now when I scale it up to my large project, LV crashes when I have both VIs running and the code gets to the point where it's trying to write to the shared variable. I backed out the shared variable of each project and the VIs function fine independently. When I put the shared variable back in it crashed again. Has anyone else run into this? Seems to me that the size of the project shouldn't matter. George
  19. I got hold of an engineer at NI that sent me an example of how to do it with "Bind to Source" (I asked him to make it available as an example). It was really pretty easy. It seems like that way would be a lot easier than having to include a datasocket read. I thought shared variables were supposed to take the place of datasockets. George
  20. Unfortunately, I don't have any experience with the DSC module. If I don't use the "Bind to Source" then how do I tell the second executable how to access the variable? George
  21. Hmm, I don't have a lvdcs subdir in the Examples dir. Is the DSC module a special addon? George
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.