Jump to content

Christian_L

NI
  • Posts

    107
  • Joined

  • Last visited

  • Days Won

    3

Everything posted by Christian_L

  1. Brian, You may be able to add more features to the forum editor based on comment from Invision, but that should be a larger discussion on LAVA features and security. https://invisioncommunity.com/forums/topic/443912-editor-direct-html-editing/
  2. Looking forward to it and love the new location.
  3. The discussion/poll that is referenced by the first link is located in the CLA group on NI Community. Group membership is limited to current CLAs and requires approval by the group administrator.
  4. Can you describe your application or use case a bit so that we can understand how you would use the network streams and more importantly what type of connection management (keeping track of and managing the NS endpoints/references) will be necessary. This request is coming up more often, specifically where a network steams-based N-to-1 or 1-to-N communication mechanism is needed. I'm in the process of collecting user stories/use cases to define and prototype an API for this purpose. Check out this session and examples from NIWeek 2012. It includes a prototype connection manager for TCP, UDP, and Network Streams. I'm not currently familiar with this code and am working on understanding it.
  5. To my knowledge (I'm not in the office to be able to check) on the LV FPGA install DVD there should be separate installers for two different versions of the Xilinx FPGA compiler. You should only need to installer the newer of these two for your specific FPGA target. I think starting with LV 2010 installing the compiler was separate from the LV FPGA module installation. http://www.ni.com/pdf/manuals/371572f.pdf
  6. Steen, This is a very nice set of VIs. Thank you for posting. I'm one of the developers and current owner of the CVT library, so this is of special interest to me. I really like the ability to dynamically create new registers by simply writing to them, which is a feature we've been planning on adding to CVT for some while. I also like how you handle dynamic and static names in the VI registers using two feedback nodes. I would like to borrow this idea for CVT to eliminate the need for dual dynamic and static name access VIs. With CVT we have not added a polymorphic wrapper, but of course you could eliminate the need for separate CVT VIs for each data type, as you have done. One big difference I see is the low level read-write performance. One of our main use cases for CVT is LabVIEW RT on cRIO, which is a much slower processor than most LV programmers are used to from Windows. Doing a very quick comparison between VIRegister and the static access CVT VIs I see a 10x faster access speed for CVT. This is not surprising as when we designed CVT several years ago we benchmarked all the different possible implementations on cRIO and picked the fastest one we could find. Currently the name lookup in CVT is very slow (linear search) as Mads has indicated and we plan on fixing that by using variant attributes to store the tag data and using its built in binary search.
  7. Getting ready for the next NIWeek. Somehow I forget to update my status on LAVA except for NIWeek.

  8. Paul, Start by consulting the following resources on ni.com and then contact your local NI representative to get more information and discuss your specific project and ideal HW platform. http://www.ni.com/embedded/ LabVIEW C Code Generator - http://sine.ni.com/n...g/en/nid/209015 LabVIEW for ARM - http://www.ni.com/labview/arm/
  9. Use a Local Variable in LabVIEW to write to an indicator. In general use Local Variables sparingly and only when absolutely necessary as they make the program difficult to maintain and may introduce race conditions. Excessive use of local and global variables is considered a bad programming practice.
  10. Christian_L

    Christian L

  11. Just to clarify, in the vein of assigning a news-worthy name to every event, 'snowpocalypse' is being thrown out there, but even Texans realize that this is more in fun than being a serious description of 3/4" of snow. The real snowpocalypse does not start until there's at least 2" of snow. My commute on Friday (I grew up in Canada so I can not in good conscience stay home when there is a little snow on the ground):
  12. No, if you are running LV 2010 on the host machine and want to connect to a RT target from the development environment, then the RT target needs to be running the same version of LabVIEW. If you have a completed deployed RT application developed in one version of LabVIEW you can connect to the application (VI) from a LabVIEW VI in a different version using 'generic' communication mechanism like TCP/UDP and also shared variables in most cases.
  13. If you like listening to classical music while coding and/or like Lost (The TV Show) check out Chris Ryan's music on YouTube. He's got a great arrangement of Lost music and also does his own compositions. The is split into two parts, but he provides a link to the entire piece in one MP3 file.http://www.youtube.c...ser/KLGAviation
  14. After reading this from Chris, I guess I'll now have to spend the time to use and love the Auto-Tool myself. Maybe I need to get a better mouse to be able to position the cursor more precisely. Yes, I am an old timer, though to be honest my first year at NI I resisted learning LabVIEW at all, having started as a LabWindows/DOS and then CVI guy. I always (jokingly) tell the guys in my group, that if a feature didn't exist in LV5, I likely do not use it.
  15. SpaceX Ground Control Systems for Launch Vehicles Based on LabVIEW http://decibel.ni.com/content/docs/DOC-11968
  16. Jack, Can you describe your use case for wanting to add a page to the Library Properties dialog. In general we are hesitant allow additions to the development environment tools without understanding the possible applications. In the case of the preferences dialog the purpose of publishing the template was to provide a method for creating your own preference dialog based on the same framework that LabVIEW uses, not to add additional pages to the LabVIEW options dialog.
  17. I've done something similar in the past. I treat the file as a whole as ASCII, but the value of each of the keys may be ASCII or Unicode. Then in LV I interpret the key values accordingly, converting them from a string to a Unicode string if necessary. I've posted a bunch of Unicode tools including file I/O examples on NI Community, that may help you out. http://decibel.ni.co.../docs/DOC-10153
  18. You can take a look at the GXML code as a starting point for implementing your 'Anything' to binary conversion. GXML converts Anything to XML. It uses a variant input and then converts the variant to a flattened string. Then it recursively parses the flattened string, ignoring the outer variant container, to convert its contents to XML. You can replace all of the XML conversion code with your own code. If all you want to do is to remove the outer variant container from the flattened string then it won't be much work at all and you won't even need to get into recursive parsing.
  19. I would assume the time returned is based on some counter and the time rollover is based on the rollover of the counter. The time returned is the count value times dt (dt = 1/counter frequency). Determine the smallest increment in the time value returned, which should be your dt. Looks like it will be 0.0006427 or a fraction thereof. Do the math to determine the size of the counter , i.e. 218.45 /dt . Most likely the counter range will be a power of 2. Do the exact math to determine the actual maximum value. Assuming your device has a 32-bit counter... >> For example if your device uses a 19.6608 MHz clock source and a 32 bit counter, your dt will be 5.08626e-8 and your maximum time will be 218.4533, all within the error of the clock source of course. 19.6608 MHz was the closet common timing chip/crystal I could find based on your values and the assumption of a 32-bit counter. If you can open up the serial device you may be able to easily identify the clock source and lookup its frequency. Be aware of voiding any warranty.
  20. That's a pretty standard operation using the Call Chain node in LabVIEW.
  21. Is it possible, yes. Can you provide more specific questions? What ideas do you have so far? You have to provide a lot more information before we can really help you.
  22. If you want to send the data to a web server most likely all you need is to send the right command/request using HTTP. LV 2010 includes HTTP client VIs. For some earlier versions of LV there are VIs available on ni.com.
  23. Agreed. Now that VIPM shows package names instead of the file name (assuming the package has a name), standardizing the file name, while desirable, is not as important anymore. Having groupings or categories is more desirable. Even searchable tags would be good to have. I did define a similar standardization for VI package created by Systems Engineering. I defined the following categories: lib - all non extensible code including classes util - corresponding to your rsc and tool tmpl - all templates, design patterns, extensible classes, etc. The challenge we found is that several packages would include more than one type of content, e.g. they would have an API (lib) and also add an entry to the Tools menu/project folder (rsc).
×
×
  • Create New...

Important Information

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