Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


smarlow last won the day on July 15

smarlow had the most liked content!

Community Reputation


About smarlow

  • Rank
    Very Active

Profile Information

  • Gender
  • Location
  • Interests
    My Family, Websockets, SVG, Remote Control, Embedded Programming with Labview

Contact Methods

LabVIEW Information

  • Version
    LabVIEW 2017
  • Since

Recent Profile Visitors

1,603 profile views
  1. Unfortunately, the Picture Functions VIs are eliminated from the RT palette, so you can't draw a graph if you wanted to. What you could do is to draw a graph in Inkscape as an SVG file (which is just XML), with the plot as a multi-point line and replace the points in the plot line with scaled data points using the XML editing functions. I can walk you through the process if you want, since I used to develop WebPanel (now defunct) a long time ago. See webpanel here
  2. You are correct that an RT target alone cannot execute the Get Image invoke node. Interestingly, it will execute if you are running the VI on the RT target from the host LabVIEW IDE. The Get Image node actually runs on the host computer (even though it is on the diagram of the VI "running" on the RT target) and sends the resulting data to the RT target. As soon as you compile the RT VI and try to run it alone on the target, it will not run. This must be that because in order to see a "front panel" of a VI running on an RT target, the FP operations must be transferred to and executed on the host.
  3. Check out the UDOO embedded PC's. They run Windows or Linux, and the new model has Ryzen CPU. You should be able to run LabVIEW runtime on these (although I have not tried it on this device, I have run LV runtime on Atom quad core before) https://www.udoo.org/
  4. You will notice in my example above that once the value exceeds 10, it is hard if not impossible to change the value again due to the one-button modal dialog box. You can eliminate this problem by using a two-button dialog and giving the user the opportunity to reset the value using a Value Signal property node, as shown below: Or, if you prefer, you can use the case structures and a local to reset test.vi
  5. Looking at your original code, your timeout case had an output tunnel that was unwired. As soon as your timeout case executed once, the timeout value would go to 0 and the sift register value would get stuck there. If you set the timeout value to zero, you program will get locked in the timeout state. Why did you wire the shift register value to the timeout input? Anyway, if the shift register value is zero, the case structure will not execute. There are also a lot of bad habits in your code. You don't need the property node in the Numeric value change event, as it just writes the same value back to the control. If you want to pop up a dialog every second if the value is greater than 10, then use the timing feature of the event structure to check the value in the timeout case. See below for some simpler versions, and an explanation of your error. What you want to do is to use the timeout feature of the event structure to check your value every second and display a dialog if the value is greater than 10. Although I don't really recommend this type of structure, because the modal one-button dialog can easily block the user from pressing the stop button for rates faster than 1000 ms. In this particular case, 1000 ms is long enough for the user to press the stop button. For faster rates, it is not recommended. The Numeric value change event updates the shift register, and the timeout event passes the shift register value through so that it does not change until Numeric changes. I also moved the Numeric 2 indicator outside the event structure so you can see what the shift register value is. If you had done this you would have noticed that your value was getting set to 0 by the unwired tunnel in your timeout case. I also added a stop button value change to stop the loop when the stop button is clicked.test.vi test.vi
  6. If you put all the VI's into a library (.lvlib), you can edit the library icon and it will be applied to all the files in the library as a layer. Most people use this to create a common "top banner" for their VI set. The lvlib icon is overlaid as a layer on the individual VI's icons without disturbing changing or disturbing the other layers. I assume that what you are trying to do is add some icon feature to a set of VI's that identifies them as being part of a set.
  7. The absence of a thermistor module has been a huge hole in the C-Series modules since they were first introduced. I have wanted to know what the deal is with that since the first time I needed to read a thermistor with cRIO about 13 years ago.
  8. The .NET assembly used to be distributed separately from the WinSCP application, but the latest version has them wrapped up in one installer. The LabVIEW code posted here is merely a wrapper that calls the library, and does not incorporate any of the source code from WinSCP or its .NET automation library. You are probably right that a license might be a good idea, but I view this as merely example code that demonstrates how to call the WinSCP .NET assembly from LabVIEW. Since I am not distributing their DLL, I feel no need to include their license, since anyone who uses this LabVIEW code will get a copy when they install WinSCP.
  9. Here is a ZIP file if you want to change the code. Please don't take this and try to sell it. WinSCP.zip
  10. Here is a library I created to wrap the WinSCP .NET library. You can use it to connect to a remote server via SSH and transfer files, create remote directories,etc., with WinSCP from LabVIEW. I know there is a commercial library for I think $500 a pop, but this is something that is missing from LabVIEW that really ought to be included with native functions in the file I/O palette. The VI's in this packed library are built around the "WinSCPnet.dll" library that installs with WinSCP. You will have to download and install WinSCP to get the DLL, as I do not want to distribute it without their permission: Download WinSCP Here After downloading and installing WinSCP, you will have to connect the VI's in the packed library to WinSCPnet.dll. I make no warranties here, and no promises it will work, since I already have the stuff installed. The use WinSCP with an SSH Key, you will have to generate a key and copy the public key to your server. WinSCP uses the Putty format for SSH 2. You will also have to obtain an SSH fingerprint from your server for input to the session. Otherwise, you will have to provide user login credentials. You can use the "C:\Program Files (x86)\WinSCP\PuTTY\puttygen.exe" utility to generate a key. I use Git, so I used the SSH utilities included with that to generate and copy the key to my server. If you do that, you will have to use puttygen to import your OpenSSH key and convert it to putty format for use with the WinSCP/LabVIEW library. Sorry I don't have more time to do full docs and directions for use, but maybe someone else can comment with additional directions. I will monitor this topic and try to answer any questions. Good luck, and happy SFTPing! PS: No I will not save it to an earlier version. Maybe someone else can. WinSCPnet.lvlibp
  11. Is this what you are looking for?
  12. Can you post some code? Are you resizing the listbox using a control ref? is this a "floating listbox" VI? You should be able take the dimensions you are using to resize the listbox, add a margin, and then set the VI front panel to the new dimensions with the margin added on.
  13. It sounds like you want to store a binary string to a file and then open it and see the hexadecimal values for the bytes. Notepad only displays file contents as ASCII characters, so you cannot see the actual byte values, only the ASCII characters that correspond to the byte values (the "junk characters" you are seeing). Can't you just use LabVIEW to view the contents of the binary file? Read the bytes into a string indicator and set the display mode to "Hex Display".
  14. SVN with TortoiseSVN clent.
  15. I still remember the "LabVIEW Everywhere!" marketing campaign of 2004. The IOT realm was going to be ruled by LabVIEW, and soon we would use it to program toasters. Then the embedded module went the way of the dodo, and now it is everywhere except there, and there, and over there, of course.
  • Create New...

Important Information

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