Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by Porter

  1. I had a labivew application crash yesterday due to the PC running out of memory. Looking at the windows 10 system logs, it was audiodg.exe that ate up all of the memory. Re-launching the application again and triggering the beep sound caused audiodg.exe memory usage to shoot up at 10s of MB/s. I suspect that this is a realtek audio driver bug because I can't reproduce this behavior on my development machine. Has anyone else come across this kind of behavior before?
  2. Are you talking about right click during edit time or during runtime? Does this explain the random right click of doom that freezes LabVIEW after right clicking on an item in project explorer?
  3. Trying to create a child of a class that is within a packed project library produces Error 1562 This is because CreateChildClass is trying to add the new class to the parent's library. I propose that it should instead add the new class to My Computer. To do this, just change "CCC Main.vi" to look like this:
  4. I'd be happy to work on it in my free time... when I have free time (newborn baby girl waiting for me at home)
  5. It would be nice to be able to modify .mnu palettes with the GCode manager. This way you don't need to add the palette to your palette set just to edit it (as you have to do with the built-in palette editor). Shouldn't be too hard to implement 😜 There is a Palette API that ships with LabVIEW.
  6. Thanks @Michael Aivaliotis for taking the time to do this.
  7. As someone contributing code on LAVA, I would like to see the certified LAVA repository packages made available through the GCentral package search tool.
  8. Be sure to double check the ASCII/RTU mode setting. Make sure that you are specifying the starting address in hex format. The PV value is supposed to be at holding register 0x1000. You could also try increasing the timeout value to 1000 or 2000ms (instead of the default 300ms). A screenshot of the dwyer communication setup and the Plasmionique Modbus Comm Tester setup would be useful.
  9. When you say Love Controller, do you mean a Dwyer "Love" Temperature Controller? They definitely work with this library. For configuring the USB-RS485 adapter, I have never used labview to specify 2-wire or 4-wire mode. That is usually done via hardware (dip-switches or jumpers) or the driver (device manager). I have never used the Tripp-Lite adapter though. I typically use USB-Serial converters from Moxa or Sealevel Systems. They have proven to work very will with labview. If you can provide the model number or user manual of the Love controller, maybe I can give you some example commands to try.
  10. I finally had a moment to take a look at this. Nice job! I particularity like the conditional auto-indexing tunnel vim and the delete elements from array vim. I will have to tell our developers to start moving away from the openG array VIs. Are you going to put this up on github or the NI Tools network?
  11. It is solved now. I unchecked the exclude PPLs and DLLs in the build spec of LF.lvlibp And moved the resulting LF.lvlibp to the same directory as the other PPLs.
  12. I have been transitioning my framework's core libraries to packed project libraries. Unfortunately, the higher level PPLs depend on lower level PPLs, but i think that I've managed to sort out all of the broken connections. Now the issue that is bothering me is that whenever I open a project containing a higher level PPL, I get a bunch of "VI cannot be found on disk errors" that refer to VIs within the higher level PPL. My initial thought was that the file paths were too long, but that doesn't seem to be the case. Has anyone else come across this behavior when using PPLs?
  13. I wonder if they will also release a community edition for Linux.
  14. It would also allow open source developers to maintain their projects after they have changed jobs. I'm glad to hear that NI is moving in this direction. How are they going to prevent companies from just using the community version though?
  15. Its easiest to use VI Package manager. Just search for Modbus, select the package and install.
  16. I would highly recommend that you use one of the existing modbus libraries to communicate with the E5CN. See: OR: https://github.com/NISystemsEngineering/LabVIEW-Modbus-API
  17. v1.3.5 has been released: Improved RTU CRC calculation speed Added Slave ID input to "Open TCP Session.vi" Updated documentation
  18. @Masony, something like this?
  19. I thought that it would be nice to extend the muParser library's functionality to include automatic CVT tag lookup. This means that if you input an expression that contains CVT tag names as variables, their values will automatically be substituted during eval. This new CVT expression parser IS AN expression parser. So I tried to make a child of the mupExpr class. Who's silly idea was it to pass this class by reference?! LabVIEW doesn't support dynamic dispatch on class DVRs. So I've re-worked the mupExpr Class to wrap only the muparser handle (hParser) in a DVR. This gives a similar protection as wrapping the class in a DVR but allows us to pass the class by value instead. If anyone objects to this change, please shout out now before I commit changes to github. The code is attached, with an example: NICVT Expression Test.vi You need to install NI Current Value Table v.3.3.0 before opening the project. NICVTExpr.zip
  20. Since your input registers are contiguous, I would suggest reading all of them with one call of read input registers. See attached. Modbus Read Waveform.vi
  21. How much data are you transferring? For example, if you are reading 1000 input registers, one register at a time, then you can't expect to get a sample rate of 100ms. Screenshots or sample code would be useful if you are looking for help. Are you using the Modbus Comm Tester?
  22. Just in case anyone is still interested, the source is now available on github: https://github.com/rfporter/SET-Toolkit
  23. It should show an error on every subsequent read... but it doesn't: It just keeps going as if nothing is wrong.
  24. His code has not fixed the issue yet. It does catch the error, as did Plasmionique Modbus Master, but it is up to you to catch the error and reset the connection. If you don't reset the connection, this can happen: Yikes! No errors being reported and read register 0 is returning the value for register 1. Tanner's proposed fix works. I implemented it in the Plasmionique Modbus Master. With it you can have multiple pending transactions. The responses will be matched up with the requests using the transaction ID. TCP Test.vi
  • Create New...

Important Information

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