Jump to content

ShaunR

Members
  • Posts

    4,855
  • Joined

  • Days Won

    293

Everything posted by ShaunR

  1. I would suggest replacing them in the palette (like the space constant '). I've been using my ones for over 10 years so it's not really a maintenance issue, I appreciate the thought, but really the primitives need to be changed.
  2. + 1 kudos. And while they're at it they can do the same with tick count, and wait next ms tick.
  3. Well. NI also do counter timers. But it is's really a sledge hammer to crack a nut. Whenever I come across devices like I think you are describing, I always use a PIC to convert whatever in to RS485 and have a nice serial ascii value returned (you can even do stuff like streaming to the PC). Cost less than $5 a throw, much more reliable and has a huge saving on cabling in multi-device environments. And once you've done it once, you can use it on virtually any obnoxious interfaces with a bit of software tweaking.
  4. RS422 is multi-drop and can be cabled for distances up to about 100meters.. You can have all your devices hanging off of one RS422 port (up to 12 or 16 if memory serves). If you can get all your devices with a RS422 interface then you won't need to mix and match with USB. Make sure, however, that the devices are really RS422 compliant. Some manufacturers say that they are 422 when really they are point-to-point but with RS422 line drivers (i.e not addressable). I highly recommend the NI RS422/485 cards. for the PC end.
  5. May seem like a silly solution. But can't you put the data on the right hand side so as as the # columns grow; they grow away from the graph rather than towards it? Then you can keep the size fixed.
  6. If only we had a "ping" function
  7. Where? Behind that coffee machine?
  8. The char * is simply a C string and it's unfortunate you are using an activeX component since you you can pass that to and from a dll with the string type drop down selection in a code library node. An array of strings is a different matter since there is only a selector for an array of numeric types and although you can de-reference the pointer; you don't know how long the string is in each element (unless they are fixed length) Dereferencing pointefrom C/C++ in LabVIEW is is a fantastic article with execelent examples for many data types. The VI you will need is the Xnode GetValueByPoionter. However, Moveblock
  9. I feel sorry for any girls that are desperate enough to need to come her for lust love.
  10. War and Peace next? The one book I'd rather shoot myself than read
  11. The SQLite API is quite capable of reading 350MB plus files (I've just read a 450MB one). Your issue is probably to do with LabVIEW memory management. If you are putting an indicator on the front panel. Don't. LV Memory Memory Management 101: File-size 456MB win 7 X64 LV x32 500 for the VI 0 wire junctions Requires 500 MB during and after execution. 500 MB for the VI, 500MB for the 1 wire junction, 500MB for the 1 indicator. Requires 1.5GB whilst executing (assuming it has already run once) and 1 GB after execution. Add 1 more indicator and it will run out of memory. Why?....Because..... 500MB for the VI, 1GB for the 2 wire junctions, 1GB for the 2 indicators. Requires 2.5 GB whilst executing (assuming it has already run once) and 1.5 GB after execution. Very approximate calculations, but I think you get the idea. 1. You need n x wire junctions more memory whilst running than you do with a static VI after execution 2. you need n x indicators memory to store the results.
  12. Hmmm. Am I right in thinking that you are trying to access exposed methods via the dll interface instead of the COM interface? An activeX dll needs to be registered with the OS. Every-time you create your dll you should uregister and re-register it using regervr32. Then in your VI you can use the "automation open" to open a refnum which can be wired to the property nodes.
  13. I don't think there is anything inherently complicated about creating Xcontrols any more than creating a class. The issue is though, is that you cannot inherit from a pre-existing control (class?). This is what makes it not worth the effort since even for a simple control (a numeric for example) all the existing properties and methods have to be re-written Instead of just writing the additional functionality. Therefore you don't write all the normal properties and methods for that control type and end up with a specialised control, with limited functionality, which is only useful to you ( and even then, probably in only a couple of scenarios). However, if you could inherit all the properties and methods from, say, an x-y graph and just add a bit of code to add a trend-line. then that would be worthwhile.
  14. If it needs to be a direct replacement for the normal trim. Here she is......
  15. OK. enough is enough eh? I've uploaded the fixed version. Knock yerself out. Do I get a fee package manager professional
  16. I was watching "The Gadget Show" earlier where they were they were trying to get a football to break the sound barrier...yeah right Anyhoo. One of their attempts was using a high-g-gun that is usually used for crash testing to shoot cars along a rail (this is at MIRA) . They attached a football boot to it and shot the sled at a ball.They didn't say, but it looks to me like LV. Only Labview programmers are able to come up with these sorts of colour schemes for UIs The Gadget Show Video It appears about 3/4 of the way through.
  17. Yeah I know. you can't build it.....but couldn't resist
  18. Those industries/companies that demand support, do so as a separate contract from the product. Some (for example) require 24 hr call-out and dedicated telephone numbers and contact names. As such accountability (legal or social) has nothing to do with the original product; II is a separate contract drawn up by the two involved parties and, accountable in it's own right. As was pointed out before with the Linux example, There is nothing to stop a 3rd party entering into a contract to supplying support for an open source product and, indeed, there is nothing prohibitive about purchasing a product without support. It is a company policy restriction (like acceptable licenses - some companies don't allow open source at all) and that will change from one company to the next. So the possibility is already there - It is possible to draw up a support contract regardless if you are the provider or not.
  19. This is good point. But ..... if I pay monies for a product then there are certain responsibilities that the provider must adhere to by law. This is true of not only tangible product but things like services too. If support is offered as a product or, if it is an inclusive part of a product (as stated in their literature), then the provider is bound to provide that service and is legally accountable to the terms of that service. However, if it is not offered in this way, then the provider is only "socially" accountable and is under no obligation to provide that service and, if it is supplied, it is as a "value-added" service rather than a "rightful" one, with much less stringent responsibilities. From this definition, open source products are a socially accountable products and are no different than equivalent commercial offerings and the metric can be considered by customer satisfaction and review.
  20. Nope. It works fine, but for 1 edge case. The function doesn't detect whites-paces, rather it detects non-white-spaces. It will stop at the first and last non white-space. So it will return the string at offset 0 of length = length and never gets to see any within the string. If there are no white-spaces at all then it will halt at offset=0 and length will equal length (length - 0 - 0) so it will return the entire string Are we bored yet
  21. Indeed. If it s maximisable then it is resizeable. But if it is maximised. it might not be resizable. The behaviour you are describing in Windows 7 is a feature of Aero that can be turned off or may not be available on some systems (and doesn't doesn't exist in XP, Vista and probably not in linux either) I think what the OP is seeing is this....... Create a new VI and put something in it so that it will run continuously. Uncheck the VI properties "Allow User To Minimise Window" and Allow "User To Resize Window" Turn off the Aero Snap Maximise the VI. Run the VI. You should now have a full screen window that you cannot resize or move. and there are no minimise and no restore/maximise buttons. So far so good. Double click on the title-bar. It restores and now you are stuck with a non-resizeable, non-maximized (able) window. Well in 2009 at least.
×
×
  • Create New...

Important Information

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