Re: I created a control on VI .I want the control as a whole on...
I think I understand the issue. Try trowing some dummy controls on your front panel that are off-screen to the, Top left top right bottom left bottm right. These should be outside you your viewing area with all otehr controls inside the boundry defined by the dummies. THese dummies will define the size of the FP at let you position your button as you choose. JUST MAKE SURE you button is inside the dummies. (Also watch new control that will appear below the rest). Ben
Re: create vi-internal switch
Hi Karin, You may want to use a case structure. That will allow you determine which of the two loops will execute. Otherwise, Post in German! Some of best Enthusiast speak German. We are big, we are bad, we are international! Ben
Re: How do reduce the space between the front panel and the display area
A picture would be very helpful in demonstrating what you are having trouble with. Lacking that, I will guess. VI Properties Windows Size lets you define the minimum size of a FP window. Well that's my guess! Did I win? Ben
Re: changing local variable to read
I believe this is correct unless PJM has figured out how to script this operation. Ben
Re: How to build a big application with no difficulty? Smaller is easier than big one.
I agree with Shane. I also am a graduate of the school of hard knocks. At first your question How to build a big application with no difficulty? may sound like a contradiction but it is not. I suggest you contact the closest CLA (Certified LabVIEW Architect, NO I am not a CLA!) in your area and ask them for some assistance. I am not suggesting that you you just contract with them to do the work (although that would qualify as easy). Ask for them to advise on architectures or help with the design devlopement. The issues you mentioned are the normal result of bottom up programming. Its sorta like inventing all of your tools for your workshop before you decide if it is going to be a wood shop or a metal shop. Top down design would start with the big picture/core functionality and then determine what are the challenges and what tools will be required. After that an architecture is assembled that address the requirements and challenges. It is no shame to call on an experienced guide when doing this type of work. You can think of devlopers as explorers charting paths to new technological teritories. And staying with that analogy, even the greatest of explorers in history did not hesitate to utilize the assistace of local guides when avialable. If you can afford a consultant, then I suggest you utilize this exchange to help. Keep your questions brief but to the point. Supply graphic aides when appropriate and we may be able to pull off a group think to get you were you need to go. Done rambling for now, Ben
Re: system low on virtual memory
Hi Ann, You have received a lot of suggestions but no one has asked how much physical memory is in your machine. Without knowing the detials of your app, I will say that if you are using 512M you may not have enough memory. Depending on the numbers involved, even 512M may not be enough. Trying to help, Ben
Re: system low on virtual memory
There you are! Could you post your code for us to look at? The Enthusiasts here on the Exchange could probably nail this for you if we had something to look at. Otherwise we will be playing a game of 50 questions and may still not get there. I will watch for your posting! By the way, is that 1G of physical or Virtual memory? Ben
Re: system low on virtual memory
Adding to the above You may be correct re:the array but with visual aides we may be able to suggest cleaner appraoches. This reminds me of one of Rolf K's quotes which was, Once your physical memory is used up by a single shift register storage, your application is probably going to ... Rolf Kalbermatter Info-LabVIEW 3 December 2002. Ben
Re: system low on virtual memory
OK. Now thing make sense! To justify my following suggestion, I would like to first digress a little. Modern OS's allow you to run programs that require more memory than the computer actually has. When I used the term memory than the computer actually has I am talking about physical memory. These are physical devices (typically sticks) that store your programs and the data. When the OS (operating system) determines that a program is requesting more memory than can be stored in the physical memory, it starts to play tricks on you and provides additional storage by using Virtual memory. It is called Virtual because it is not real (i.e. physical) memory. So how does it create Virtual memory if it is not physical? It allocates space on your hard drive that holds the data that would have been in physical memory if it was available and then it starts a complicated series of tricks to fool the program into thinking it has all of the memory that it needs. The OS will then set up some traps that will allert it when the program is trying to read some of the memory that it thinks it has but in actuallity is on disk. When one of these traps goes off your program will be suspended by the OS and then the OS will go read the data from disk and copy it into physical memory. It will then re-start the program (right where it left off) and everything proceeds as if the tricks never happened. The above is a brief explanation. A full explanation is beyond me and is subject to change with every OS upgrade. Well I miss-lead you slightly in the above because there are some important differences in Virtual Memory and Physical. THe first big difference is speed. Code resident in physical memory takes only nano-seconds to respond to a read or write attempt. Virtual memory is much slower. It has to wait on disk drives to read data etc. You may have noticed that when you were running the scaled down version of your code that the application was probably more responsive. The other differences are not important right now. So... Your running out of Virtual memory is probably becuase you do not have anymore space on your hard drive to be used as vitual memory. A larger hard drive may help with your warning messages. If you need your application to run faster (after you have eliminated the virtual memory issues) then more physical memory is called for. So... Start by using Task Manager Performance to see what your memory usage is durring run time. If possible, upgrade your memory so you are using physical memory only. Well I realize that I have been rambling a bit so I should stop here. So... You probably need more physical memory. Ben
Re: Reusable Code
And yet another idea Use a tab control or a set of tab controls. You can drive a single tab control with 20 tabs for 20 views, or use 20 single page tab controls. Ben
Re: If i use a sub-vi 3 times simultaneously in my main program....
My NO was to Mudda Q. I am the same page as Ed. Ben
Re: If i use a sub-vi 3 times simultaneously in my main program....
No! You may pick some up. What you will loose is debugging. The main gotcha is the seperate memory space issue mentioned earlier. This means that if your sub-VI's use local storage (like shift register that store results from the last call for use in the next) are distict for each occurence of the sub-VI in a diagram. Also, if your sub-VI use larege amounts of memory the use will be duplicated between each instance. Ben
Re: If i use a sub-vi 3 times simultaneously in my main program....
If the sub-VI is CPU intensive, and you do not want one call of the sub-VI to delay another call to the sub-VI Then re-entrancy is very useful. Ben
Re: If i use a sub-vi 3 times simultaneously in my main program....
Yes sir! From what I have read about LV 7.X and hyperthreading, two of these re-entrant sub-VI's can be executing simultaneously without having to resort to dual-proccessors. Ben
Re: I need some documentation of wire data types
And while you are playing around, switch to the wiring tool with the help window (ctrl-h) open. Floating over the wire will tell you exactly what is in the wire. Ben
Re: Setting up an initialization routine to run once
But you have to admit it easier beeing a rookie when you help like Dan provided. If you liked his answer, give him some stars! Ben
Re: processor usage 100% after bulding an application
NOt much info to go on here... I have read about the the strict typdefs getting disconnected in a build. This could have negative effects on strict type def'd constants in the diagram that are used to throttle your code or configure it. There is an INI files setting that shuts this down. Another approach would use normal constants on the diagram that feed bundle by name nodes. Just my first thought, tyring to help, Ben
Re: processor usage 100% after bulding an application
Could you post the stripped down version? Maybe I or others can spot something. Still trying to help, Ben
Re: processor usage 100% after bulding an application
OK. One more wild guess. This application does not use VISA by any chances, does it? I have seen lock issues when opening FP that have a VISA resource control on the FP. Just a guess. I will watch for your post in the AM. Ben
Re: Having two panel screens??
Hi Bertrand! Feel free to post your own question in french. Some of our best Enthusiats speak french. I said some of our best. Not me! I took french for 5 years in high school and never passed french 2! It sounds like your case is different from the case I mentioned above because I was running three DIFFERENT VI's. LabVIEW only allows one copy of a VI in memory at a time. This is entirely based on the name of the VI. You may be able to adapt to this restriction by copying your VI as three distint names e.g. VI_1.vi VI_2.vi, VI_3.vi. This is the easiest approach and will work provided your sub-VI's do not have any trouble being called by different main VI's. If the simple re-naming works for you good! If not, I suggest you post a new question and include a copy of your VI so we can look and advise. I hope this helps, Ben
Re: Having two panel screens??
Like I said some of our best. Ben
Re: Setting up an initialization routine to run once
Not bad for a first Project type question. There is always the option of wrapping all of the init code in a single frame seq structure out front that uses data flow to force it to execute first. Ben
Re: High speed data transfer TCP/IP
I should add a little info about the link. After days of talking and experimenting, the original poster shared all of his findings along with some sample code. Ben
Re: High speed data transfer TCP/IP
You may want to review this discusion. http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=135HOID=506500080007BEUCATEGORY_0=_49_%24_6_UCATEGORY_S=0 The original poster got some good result in the end. Ben
Re: Check the color of a plot
You are so close! LV is returning the color for plot 0 becuase you have not told it what plot you want info for. On the property node that you are using now to get the plotcolor, add an input just above the plotcolor terminal and select active plot. THen wire an index to let LV know which of the plots you are interested in. I hope this helps, Ben
Re: High speed data transfer TCP/IP
Very Cool! I am gald I was able to help. Ben
Re: Date format while writing to database using database toolbox
Rolf, You never fail to entertain! Who says we Enthusiasts do not have a sense of humor. Ben
Re: monitor memory consumption of Teststand and Labview
There are two VI's you may want to experiment with. they are; ..\vi.lib\platform\system.llb\memstats.vi and ..\vi.lib\utility\sysinfo.llb\Get Memory statistics.vi These may or may not help. One of them maybe for RT only. Please let me know if these helped. Ben
Re: Date format while writing to database using database toolbox
Sarcasism = Humour in my book. Ben
Re: Autoscale Y axis
Hi Jeremy, Welcome to the Exchange! It is generally a good idea to summarize your examples that you post. That way; 1) We do not have to down load your code to see what method 1 is. 2) You can resize your porperty nodes and mainipulate the properties from top to bottom in the order you want. This will avoid the multi-frame seq structure. 3) Defering front panel updates and then undefering afterwards may improve performance and appearence. Trying to help, Ben
Re: Autoscale Y axis
Hi Jeremy, I failed to mention that your option 1 is a good approach. If you look below you will see that Greg was on the same wave-length. Ben
Re: pixel color
You can NOT have different colors defined for the points of a single plot! I have made it look that way. These techniques will work if your data set is not to large. 1) Use one plot to draw the line and make sure its point style is none. Add one additional plot for each point and define the point style as you choose and set the color as you described. When updating the X-Y graph, the first plot goes in as you expect. The other plot should be arrays that are identical to the first plot except all of the Y values are replaced with NaN. This will result in all of the other plots have a sinlge point. 2) You could also use cursors to do this as well. Both of these approahces will only work if your data set is small. If your data set is large, then the Components Works 3-d graph can be adapted to do this. THen of course you could always use a picture control, but that is not an option. Trying to help, Hoping to hear other ideas, Ben
Re: how to do a time normalization on my data?
Well let me say that I appreciate the life you spare to help us! And judging by the following post, the father of LV appreciates it enough to thank you publicly! http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=135HOID=5065000800B7D7USEARCHCONTEXT_CATEGORY_0=_49_%24_6_USEARCHCONTEXT_CATEGORY_S=0UCATEGORY_0=_49_%24_6_UCATEGORY_S=0 If you click on his link, it looks like he registered on the Dev-Exchange just to acknowledge you. Dennis, you have now accomplished the super-human twice over! Ben
Re: Congratulations, Dennis Knutson!
I would like to join the others in thanking you again! Below is the link for when you passed 1000. http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=135HOID=50650008003176UCATEGORY_0=_49_%24_6_UCATEGORY_S=0 Dennis, Thank for making LV a better language and less frustrating for new users by your timely response to questions. I just told one of my rookies this morning that he should subscribe to your answers and read everything that you say. Please accept my thanks for your efforts and the life you so freely share while asking nothing in return! If you looked up altruism in the dictionary you would find the definition, 1: unselfish regard for or devotion to the wefare of others 2: behaviour by an animal that is not beneficial to or may be harmful to itself but that benefits the survival of its species You will also find the same Photo not Available picture in the margin. Ben
Re: how to do a time normalization on my data?
Just for the record, I believe this is number 2000! Ben
Re: Reading a File and by using TCP/IP transfer protocol?
How about just serving and action engine that can read files and return the contents. It can have selector that lets the caller determine what files to read. Note, files are not required and will actually be slower than just ftetching a buffer. Use VI server call by reference and you are done! Ben
Re: Max Number of Labview objects
Now this is interesting! The main limitation in LV is the hardware as Coastal... has pointed out. That limit will always be with us. There was a limit of 550 front panel object in LV 6.1. But I understood that that limit was lifted in LV 7.0. I may have read that in the release notes, not sure. BUT... That erro you reported starts with lvworm which I believe is associated with LV 7. Ben
Re: Ring control behaviour
This change hit me hard as well. In my case there only about 6. While you a poping up as Rob sugested, go to the properties. On the edit Items tab, un-select the sequetial items box and then enter -1 (aka 65535) and leave the string as blank. It will work the same way at it did in 6.1. Now if we could only do this for enum's Ben
Re: Datalogging and multiplot graphs/
Sounds like another request for a storage scope. I posted a crude example here. http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=137HOID=50650005005A610100HTHREAD=90458UCATEGORY_0=_49_%24_6_UCATEGORY_S=0 I hope this helps, Ben
Re: Why does program work only when highlight execution is on?
I second Ed's suggestions! You are not giving your device time to reply after your query. Ben
Re: Can Remote Panels be accomplished with the Labview Runtime engine alone?
Yes it can! The trick is all hidden in your LabVIEW.ini file. All of the configuration seetings that you configure using the web publishing tools in the development environment end up being saved to your LabVIEW.ini file. If you copy this file into the folder where your exe is located AND name it as My app.ini (where My app.exe is the name of your exe), LV will serve the configured pages. If memory serves me correctly, you also have to make sure the web functions are included in the exe when you do your build. Ben
Re: What's the best way to deal with having different units plotted on the same graph?
Right click on your existing Y-scale and select duplicate scale. This will give you another Y-scale to plot your data against. You can then use the plot legend to right click and associate your data with the new scale on a plot by plot basis. You can add as many legends as you need. You can also switch sides for a scale if you choose. Ben
Re: Looking for ready-to-use indicator that looks like a horizontal-platform panel in an airplane
You Win! There is another example near that one that shows how to draw a pie-chart. Parts of that example can be used to add your over-lay yur grid (i.e. do not fill). Ben
Re: Why is 2nd While Loop in State Machine generated by State Diagram Toolkit?
Sacha gave a valid answer but let me try to help. 1st I do not have LV 7.1 on my machine yet so I can not open your example VI. 2nd ...why is 2nd While Loop [and Enum to Interger and status's Enum constant] in main State Case? The small while loop inside one of your states is the logic used to decide which state your application will transition to next. If your design only has the default transition, this loop does not do much. If you have a state that can transition to more than one other states, that small loop does the decision making to decide which state we got to next. Now if you have a state that can transition to one of many other states, AND the conditions (see below) are satisfied for more than one of the transitions, you can define which of those states wins by defining the order in which those conditions are checked. So... The small while loop determines which state you go to next. It only makes a difference in states that have more than one state that they can transition to. 3rd When you have a state in your design that can transition to more than other state, the SD Editor will create a new case in the little while loop for your new transition. When it does, the SD Editor will leave the boolean tunnel un-wired. You can then insert the appropriate LV code that will return a true when the condition is met. When I am designing apps using the SD Editor, I will draw-up the design and leave all of those tunnels un-wired until I think I have something worth checking. At that time I will then copy the name of the transition from the SD and then click on the transition arrow in the SD. This will cause the block diagram to show the code where that transition is located. I will then right click on the output tunnel and do a create control. When the new control is created, I will then paste the transition name I copied (see above) into the newly created button. I will continue this process until I have fixed all of the un-wired booleans. After the VI is no-longer broken, I will have a bunch of booleans on my FP with names that match up with the transisions. Now it time for some fun! I then put the SD in execution highlighting and watch how the program flows using the boolean on the front panel to test all of the code. This serves a number of purposes; 1) I can think through all of my logic before getting into the low level stuff. 2) The FP booleans serve as reminders that I have to write code to replace the buttons. 3) I think its interesting to watch my designs in action. If all is OK at this point, I am ready to develop code for each state. Sorry I drifted off subject a little there. Back to your Q! 4th The small while loop allows each state to have a unique set of transitions. If it was outside the individual states (as you suggested) the transition would have to be shared. I hope this answer along with Sacha's answer is valualbe to someone. Ben
Re: Create Controls on Font Panel when vi is running?
Although you cannot create real LV controls and indicators in a running VI, you can make it look that way. See this link where Jean-Pierre first suggested a practical approach. http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=137HOID=5065000500AF5EHTHREAD=2423924248UCATEGORY_0=_49_%24_6_UCATEGORY_S=0 I have implemented variations on this technique in quite a few applications since then. It take some work behind the scenes, but coupled with the events from the picture control, you can create virtual controls and indicators. The biggest draw back is that you find yourself double clicking on the vitual control expecting to find its terminal. So you you really need it, IT CAN BE DONE. Ben
Re: RS 485 and labview (for use with Brooks 5850s mass flow controllers)
I will send the files you requested as a reply to your e-mail. Ben
Re: Complex data structure.
I like the typedef constant wraped in a sub-VI. Alot less space on the diagram, and no issues when the typedef is modified and the updated constant on the diagram ending up larger than the structure it is in. Another plus is that it can be used to establish default values. Any filed of the typedef that should have a specific default value can be implemented by doing a bundle by name inside the sub-VI. I have seen code fail because a constant on a diagram lost its default values when the type def was updated. This makes sense to me becuase if a new field is added to the structure we do not know what its defaults should be. So you get 1) Smaller diagram foot print 2) Ability to define global default values by wraping the default in a sub-VI. Ben
Re: RS 485 and labview (for use with Brooks 5850s mass flow controllers)
I did an app that used these a couple of years ago. Brooks had a LV example that used the DDE interface to the their dirver. I used that as a guide and was able to figure out what I needed. Brooks support fro their example was pretty limited. I remember getting a phone call back (a day latter) from their LV expert (uh- hem) who said that I had to have LV installed if I wanted the get the example to work! The DDE interface required having the Brooks interface running if I remeber correctly. There was also some confusion over which version of their driver actually worked. Since then I think I may have read something that made me think that Modbus OPC may handle these devices. I never followed up that idea so do not waste to much time on that. Ben
Re: RS 485 and labview (for use with Brooks 5850s mass flow controllers)
Hi Stuart, I tried 3 times to post my files and it would not work! They must be to big. E-mail me at [EMAIL PROTECTED] and I will reply with my collcetion of files from Brooks. Now forgive the following; In my 1000 or so answers I have posted to date, I have carefully avoided any answer that involved making money. Well, I am about to break that rule. The app I mentioned earlier was designed such that the interface to Brooks could be easily broken out and re-used. If you are interested in purchasing my source code AS IS, I could also forward a design document that explains how the original app worked. Otherewise, I will reply with the Brooks files and pray for your success. Trying to help, Ben
Re: How to close TCP port in LV 4.1?
Sorry about the delay, I have a real job keeping me busy lately. I played with this a bit and was able to reproduce something similar using the NI shipping examples. I was able to correct it by; 1) Make sure you wire a timeout value! The default is about 10 minutes so you will have to wait that long to all evidence of the conncetion go away. 2) The client should close the conncetion b4 the host. This will leave a session hanging for 10 minutes as well. Now that you have the ability to post as LV 6, I suggest you start a new question to get a wider audience. I am going to be very scarse in these parts over the next month or two. Ben
Re: RS 485 and labview (for use with Brooks 5850s mass flow controllers)
One more thing; I used these devices in another project. In that case we used Brooks 154E's that were controlled and monitored using AI and AO from FP. So there are other options. The Brooks Smart DDE software let users manage the calibration and other settings of the MFC's. I would be very suprised if they discontinued support. Trying hard to help, Ben
Re: 1000 Responses
Thank you Michael (and others)! I am jsut trying to stay ahead of my rule to give more answers than I get. I am still way behind! Now back to those Q's. Ben
Re: Get mechanical action of boolean programmatically
Well this is not a full answer but, If you use a property node and attempt to read the value of a latch action boolean, it will return an error. The ClassName property will say boolean it the control is a boolean. So if you pass an array of control references into a For loop and read the ClassName FIRST and then attempt to read the value you should be able to at least figure out which controls are booleans and which of those are latch action. I took a quick look a the type descriptor and it apears that a new boolean from the palette will have the first byte equal to 12 and copied boolean have 14 in the first byte. Now how to decide which type of latch action Can't help you there. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com For the record: This approach was inspired by the save all control function originally devloped by Jean-Pierre and is available via OpenG. I am not blaming him if this does not work! I am only trying to give credit where credit is due.
Re: Problem with Run Vi Invoke Node
Post some code and we will take a look. Ben
Re: seperate windows for diagramms
The example I posted here http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=137HOID=506500050014570100HTHREAD=87828UCATEGORY_0=_49_%24_6_UCATEGORY_S=0 demonstrates how to control the visability of dynamicaly called VI's. It use property nodes to show the front panel of VI when desired. The Master will also close them. The methods illustrated should give you a starting point. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com Yes, I'm getting a lot of milage out of that example.
Re: trouble with imaq sequence running in parallel with other vi's
Stop, reverse that (Willy Wonka and the Chocolate Factory) Ben
Re: Set device and channel variables
Jean-Pierre's save/restore functions will do this. Check out openG. Start with Jim Kring's profile to find this site. http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_1512RFORMNUMBER=6UCATEGORY_0=_6UCATEGORY_S=0 Ben
Re: Where can i find the classID list for Labview 7.0
Wow, what an entrance! Welcome to the list PJM_Labview! Where did you get that from? Ben
Re: Memory allocation problem with CWGraph3D
The memory won't be relased until LabView is closed. This sounds a reference is being repeatedly opened. Post an example, we may be able to help. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: Why does one while loop stop after 3-4 weeks?
Thank you for the update Rich! Ben
Re: Where can i find the classID list for Labview 7.0
Bird's Eye View The last time I saw a response like you recieved for your utility was when Brian Renken anounced the search engine. Ben
Re: Where can i find the classID list for Labview 7.0
Thank you. I usually post on info-labview. That explains why you know how to do this. I am a lurker on that list. I learned most of what I know from that list. I just don't feel worthy to speak before Rolf (and the rest of y'all). And afterwards, what is left to be said. My boss asked me recently With the Developer Exchange, what purpose does Info-LabVIEW serve? I said The Dev-Exchange is like going to LV college, Info-LabVIEW is like grad school. I will see if I can crash my machine at home this week-end. Please feel free to contribute on this exchange again in the future. Your contributions would be welcome, and besides, we give out STARS! Ben
Re: How do I get my chart to redraw after the onitor comes out of screen saver mode.
Setting DeferPanUpdts To False then True MAY do it. THe release note for LV 7 indicates that both of the operations will re-draw the screen. Now if Windows will wake up and show you this? Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: can I use my usb port by itself as an DO/DI?
I second Mike's comments. Go for the parrallel port. Ben
Re: Read / Write to Siemens Drive Registers.
Hi Hema, Do you know what the representation (SGL, DBL, EXT) is? This almost looks like complex single. If it is just a SGL then the 4220 makes sense. You can use the typ cast from the advancedata manipulation palette. If you type case a SGL to an array of U8's you get the value I noted above. I can also type cast your posted values (with high and low halves waped) to a Complex SGL. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: How to close TCP port in LV 4.1?
Not the globals themselves but how they are used. I never use globals I devlop myself. I have worked with them in others code. I suspect a race condition that is a result of over using globals. If I could look at the entire app, I may be able to spot the race condition. Ben
Re: How to close TCP port in LV 4.1?
Then review all of the code and start enclosing code inside single frame seq structures. Make sure data flow dicates order. Of particular concern is WHEN the stop global is written. Make sure it does not get read to early! Ben
Re: How to close TCP port in LV 4.1?
I didn't write it...just trying to fix it. ;) That is exactly what I say when someone wonders into my office while I am looking at a customers code! Ben
Re: Does anyone know of resources for IBM ISA AD/DA cards?
Look at In Port (to peek) Out Port (to poke) and http://zone.ni.com/devzone/conceptd.nsf/webmain/ADF3152837E2B4A486256B5600642AC7?opendocument for a method that uses NI-VISA. Note that the VISA approach ws developed after the ISA bus was obsolete so it may not work for you. There is a VISA forum on this Exchange if you have Q's about this. The In Port and Out Port VI's are OS dependent so you may have to find a version that works with your OS. You may want to search this exchange for prallel port examples because most of those use the In Port and Out port VI's. That's about as far as I can take you. Please post summarizing anything interesting you run across. Note: In order for your questions to reach the largest possible audience, post a new Q. Few of us keep chasing to the bottom of old questions looking for updates. If you find a previous Q that is close but not quite what you need, include a link to the old Q in your new Q. Have fun! Ben
Re: seperate windows for diagramms
Thank you Robert! Ben
Re: Problem with Run Vi Invoke Node
Instead of clciking once to make the FP active and then clicking the second time to actuate the switch, one click makes the FP active AND actautes the switch. Add DropThroughClicks=True to the ini file. Ben
Re: any good VI for impact hammer modal analysis?
I believe you will find most of what you will need in the order analysis add-on. http://sine.ni.com/apps/we/nioc.vp?cid=10706lang=US Preston Johnson is invloved with this package and has always been very helpful in all of my projects of this type. Now if you do not wnat to get the add-on, I would suggest you break up this question into specific parts and post them seperately. Trying to help, Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: not able to type into string control
Post a sample VI with the controls that you cut and paste from your app. The other though that comes to mind is that they may be locked. Just guessing, Ben
Re: How to modify WaveformChart history data length programmatically
No wonder I never noticed the upper limit! Ben
Re: Why does one while loop stop after 3-4 weeks?
Wow! The only other thing I can think of is way out there. If there was sufficient noise on the serial line, it could look like a continual stream of data that will prevent your timeout logic from running. This would show up in your accumulator string indicator. So, the only thing I suggest at this time is to check the length of the string in the accumulator when it is in the hang condition. This would also mean that you could un-hang the loop by pulling the cable while hung. Trying hard to help, Ben
Re: How to modify WaveformChart history data length programmatically
One more thing jbao, THe best way to thank someone on this exchange is to give the best answer a four star rating. This way others in the future can quickly find the answer to their questions. Have fun, Ben
Re: How to close TCP port in LV 4.1?
OK, How about an image of how these sub-VI are being called. The extensive use of Globals makes me nervous but I can not spot anything solid that would cause me to suspect a race condition. Images of these VI's being called will shut me up. Ben
Re: How to modify WaveformChart history data length programmatically in LabVIEW?
I have wanted to do this a couple of times myself. This can only be changed at edit time, and it must be done via the pop-up. What problem does this cause? There may be a work-around. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: How to modify WaveformChart history data length programmatically
any number of points from zero to 2B Is that 2b hex or to be determined or a typo? I never noticed an upper limit. Is there one? Ben
Re: Why does one while loop stop after 3-4 weeks?
Hi Richard, As a quick test to rule out the following, could you pull the serial cable being used by this loop? Just pull it and verify this loop does not hang. If it does hang post and I will explain my theory. Its not worth troubling you with the details without knowing the answer to the above. Trying to help, Ben
Re: not able to type into string control
Yes! Check to make sure the control is not disabled! pop-upAdvancedEnabled States Enabled I believe it was Dennis that helped me out that day. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: memory eaten up - guilty: Datasocket or References?
DR VI discussed that here http://www.ni.com/devzone/lvzone/dr_vi_archived4.htm The one additional note I should stress is that once system resourse are allocated for references, they do not get free'd up until LV exits. Ben
Re: Need help on labview
Nirmal discussed the hardware interface in his reply to your other posting. Look at the example that can be found under HelpFind ExamplesHardware Input and OutputDAQAnalog InputGeneralCont AcqGraph (buffered).vi That should get you started. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: How to close TCP port in LV 4.1?
Could you post an IMAGE (LV 4.1 is getting scarce these days) of your code so we can take a look? It sounds as if the listen is being invoked again. There have been some changes and fixes implemented since LV 4.1 so I can not say that I have seen this issue previously. Trying to offer what little help I can, Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: Question about communication between labview programs on separate
I ma not sure if you have to use TCP/IP. What if Bob had a seperate loop that just used UDP to repeatedly broadcast a count that is incremented each time a read completes. Alice could listen for the broadcast and and act depending on if it saw Bob count change in a resonable amount of time. The next variation I would concider is using to use VI server (based on TCP/IP but the low level stuff is done for you). Bob could invoke a VI on Alice that told her to start. If she does not hear from Bob to stop she just keep blasting away. Otherwise the approach you have outlined MAY work. I can not say the will not be complications becuase I ussaully write my code to avoid errors so I can not speak from experience. I seem to remember people having some trouble with restarting/reopening TCP sessions over extended periods of time. That may have been some time ago, not sure on that. I hope this help. Fire away if you have follow-ups. Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: Dynamically build VI using LabVIEW
I can not comment on when, but it will become available, someday. Vision Builder has been doing this for years. The LV State Diagram Editor (which is wonderful by the way) can obviously edit diagrams and is apparently implemented as a VI! THe SD Editor (which is great by the way, I love this thing, NO MORE PowerPoint to design) is an incredibly small add-on. This leads me to suspect much of this functionality (i.e. VI's to edit VI's) is already implmented in LV, we just do not have mechanisms to get at it (other than using the very restricted tools mentioned above). I stongly agree with Wiebe in that this functionality will be rather challenging to master. It will also be dificuly to support! Imagine the type of code that would result. here is one mind bogling possiblity. Write three VI's A.VI alternately calls B and C. B.VI Executes a random VI evaluates the reuslts and clones a modified version of itself as C.VI based its evaluation of the random code results and any prior experiments it has performed. C.VI then duplicates the actions of B. This could lead to a type of artificial intellegent code that is able to adapt it own algorithm. What happens if the code after learning and growing decides it does not want to do math anymore and would rather just listen to the same albumn over and over again? How does a support engineer address that? The reason I present this extreme case was that this functionaly, when it comes, it will be limited at first (as we see in dynamic event registration). I seem to remember Rolf Kalbermatter (on Info-LabVIEW) saying something like Self modifying code is a bad idea and went out style years ago. Just my thoughts, Ben
Re: Why does one while loop stop after 3-4 weeks?
Maybe it is time to post an example. Do have a resonalbe time Out specified for your read? Ben
Re: How can we change the name of dynamic events selector label in Event Structure
I agree! I can't top this approach. Ben
Re: Has anyone ever successfully done a cont double buffer acq...
Jeremy answered here http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=135HOID=506500080007C4UCATEGORY_0=_30_%24_12_UCATEGORY_S=0
Re: memory eaten up - guilty: Datasocket or References?
1) can you dummy up the OPC stuff and get memory to stablize? 2) Whatever type of references... open them once at the beginning and close at the end. The resourse for references are not cleaned up until LV exits! Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: How can I make a patent mark for a program in labview7?
1) Fix the error first. Post a fresh Q with details. 2) You need the application builder to create an executable from VI diagrams. 3) Pop-up on VI icon and slect VI PropertiesRevision History, then chose View history... Ben
Re: How do default values of indicators work?
Hi Steve, I have to confess that I am having a hard time folling this. Could you please post an example to clarify? Without that I will put forth a theory that may explain what you are seeing. First for the not wired to connector pane terminals. The will be set to their default state when the VI is loaded in to memory. As long as the VI stays in memory the boolean will maintain its state until changed by an user or set via code. I have seen people uses controls as a type of memory. I do not. Next, the boolean wired to the icon connector. The control will take on the value assigned to it by the calling code via the wire that is connected to it. If no wire is connected, LV will set it to its default value in your behalf. Does this help? Otherwise post an example and we will investigate further. Trying to help, Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: Slick way trim 2D array from end?
Does it have to be Slicker than the Array Subset ? Ben a href=http://exchange.ni.com/servlet/ProcessRequest?RHIVEID=101RPAGEID=261HRedirected=TrueHUserId=101_3529RFORMNUMBER=6;Ben Rayner/a a href= http://volt.ni.com/niwc/common.jsp?page=products_certification_cldnode=10638; Certified LabVIEW Developer /a www.DSAutomation.com
Re: How do default values of indicators work?
PS If you create a local for that indicator and use that to wire to the indicator, everything works as I would expect. BUT, That just don't make sense! Ben
Re: How do default values of indicators work?
I see your confusion! Two suggestions; 1) Repost just the puzzle version as a new questions and ask if this is a bug. I will watch for others to reply. 2) Report this as a bug to NI. I suspect this is one of those Don't do that! bugs. It appears the indicator is behaving as if it is a set for latch action. Maybe someone else will spot something I am missing. Please keep us updated if you hear something off-list. Ben
Re: How do default values of indicators work?
It is as if the default value is being applied AFTER the VI runs. Ben
Re: How do default values of indicators work?
BUt then again, why would the default be applied? Still puzzled, Ben
Re: How do default values of indicators work?
I think that last part of :Fooling... is what I was missing. Ben
Re: UK LabView user group?
HI Matt, Try posting to info-LabVIEW This is the weekly admin reminder for readers of the Info-LabVIEW mailing list and mail digest. (19oct01) o Administrative issues such as SUBSCRIPTION and DELETION REQUESTS MUST be addressed to the admin address, which is mailto:[EMAIL PROTECTED]. o To post to the list, mail to mailto:[EMAIL PROTECTED]. DO NOT send subscription and deletion requests to info-labview. o This is a user list, run by and for LabVIEW users. If you have a commercially available item to announce, please make the announcement brief. o It is not, ever, acceptable to post virus warnings to this list. For any reason. A set of Frequently Asked Questions (FAQs) for LabVIEW are available from our web server at http://www.info-labview.org/resources.html#FAQ. Tom Coradeschi, Info-LabVIEW List Maintainer [EMAIL PROTECTED] http://www.info-labview.org/
Re: Changing the brightness and contrast of an image displayed in a picture control
Would you mind sharing the name? Ben