I am running Node-Red on a Raspberry Pi 3. The node-red program allows me to run the Input/Output modules.
I was wondering if I can use LabVIEW to show my results from node red on the front panel of LabVIEW or do I have to create a separate program in LabVIEW to run my I/O modules.
You could try one of the following:
Run your Node-Red program and communicate with the Node-Red program via LabVIEW using the Node-Red API. You would need to rebuild the GUI in LabVIEW
Insert the Node-Red Webpage into LabVIEW
If you're using windows, place an ActiveX container from the
containers palette on the FP, right click and select Insert ActiveX
object. Find the Internet Explorer object (it may be called Microsoft
Web Browser) and use property and invoke nodes to load the URL you
want.
To me either option doesn't really make sense. If you already have LabVIEW, you could just use LabVIEW to talk with your sensors.
Related
I am working in different kind of UI Automation and need to explore Citrix automation, can anybody suggest any live example for citrix automation so that i can give it a try and explore.
Thanks,
Install UiPath CE.
Get access to another computer via Remote Desktop. Maybe boot one up via AWS or Azure.
Try to automate a program on the remote machine from your own machine via UiPath (which is installed on your own machine).
And as Poof commented, only Image (i.e. Click Image) and Hotkeys are usable. But if you use the Citrix Recording option, that should remove any activities that is not usable :)
I noticed that there's a recent released apps that enables Raspberry Pi to run a deployed LabVIEW program all by itself and to set the program run as RPi boots. Since I was planning to remotely control the LabVIEW program through the internet using a Web UI, is it possible to setup a webservice of the program on the RPi? By the way, I'm currently planning to use RPi 2 for my project.
If I am getting you right you are about LINX at Makers hub: https://www.labviewmakerhub.com/doku.php?id=blog:users:makerhub:2016-04-07-linx-3
It is open source, free tool. You are free to modify and it and add custom command on LINX Firmware as I understand. After that, you can call LabVIEW Custom Command vi which is part of the API.
You can have a look on all API VIs here: https://www.labviewmakerhub.com/doku.php?id=learn:libraries:linx:reference:labview:start
From the discussion thread here:
We're running the LabVIEW Runtime on the target just like we do on our Linux based RIO devices. The great thing about using the full runtime is that you get the standard LabVIEW expereince with interactive mode, highlight execute, probes, startup executables, etc. This also means that all of the core LabVIEW functionality will work. One way to think about it is anything that works without explicitly installing it on the target from MAX should work on BBB/RPI. We actually don't plug into MAX at all. We currently do not support any toolkits or modules, but we've been experimenting with a couple to see what it would take to support things like web services.
So native LabVIEW web services aren't available yet, but may be coming soon - I'm sure development is responsive to what people ask for, so go to that discussion thread and let them know your interest.
You might be able to 'roll your own' simple web service using the TCP VI's, which as far as I can see should be available on the Raspberry Pi.
Note that deployment to Raspberry Pi or (BeagleBone Black) is only licensed for noncommercial use, as stated in the same thread.
I have a built labview application .exe within which there is a labview queue. I would like to put items into this queue from a labview vi which exists outside of the application.
Is this possible?
It is not possible as, .exe has its own memory pool and it will not share its memory with LabVIEW vi.
Consider using network structures, such as NSP, or Network Streams or TCP/IP.
I have a Visual C++ Program that needs to use another program to run some specific functions to communicate with my USB device. This second program is provided by the company of by USB Device.
The company also provides the DLL and Library to access the communication module.
The program runs just fine. I can communicate very well with the USB Device.
The problem is that the communication with the USB Device is not the only function of my Visual C++ program, so it should be able to open the program even if the communication module is not installed.
Using the method RegOpenKeyEx, I succeeded to check if the communication module is installed or not. Therefore I can just avoid calling the functions to access the usb device if the communication module is not available.
The problem is that my program is still not opening in a computer without the communication module. I appears the error:
"The Appication was unable to start correctly(0x000007b). Click OK to close the application."
Is it possible to solve my problem?
Instead of statically linking to the DLL, you need to dynamically load it. Then you can choose to load it or not based on whether it's installed. Here is an article showing how to do this, and Here is an SO question with some more detailed info on accessing the contents of a dynamically loaded DLL.
I tried to automate an application available under Citrixl Program Neightbourhood using QTP 9.5, but QTP does not identify the objects inside the application. Can we automate citrix application using QTP?
What are different tools available to perform automation testing on Citrix applications?
I have used Scapa Technologies for Citrix ICA or Terminal Services testing. Scapa provides an automation tool that is installed on the Citrix server. Then it has a controller that launches the citrix session, communicates with the server and starts the automation tool which calls your automation script. It actually runs on the server so it can interact with the applications controls.
QTP supports Citrix only if it is installed on the Citrix machine, it doesn't support working via the client.
For technical reasons this is because QTP needs to be able to listen to windows messages and load its DLL's into some applications which it cannot do from a different machine.
Traditional tools generally do not work with applications running in remote desktop applications. The interfaces needed aren't available. Probably your only option is an image-based tool like Eggplant.
The difficulty with Citrix automation is that the applications are streamlined to the client computer as an image, thus you can not access to the UI tree of elements.
UiPath can automate very easy Citrix applications (also desktop or web) by using some image automation specific techniques like
clicking relative to an image
using OCR for text scraping
using keyboard hotkeys
click relative to a OCRed text
Here's a full tutorial showing different Citrix (or virtual desktops) automation techniques for
data entry
OCR data scraping
clicking and typing relative to an image or text
UiPath has an SDK that can be used from code.
The default will be to create visual automation (workflows) directly from UiPath Studio.
Note: I work at UiPath. You should also try other visual automation tools like Automation Anywhere, WinAutomation, QTP, Selenium, etc, use them side by side and choose the one that suits better your needs.
For what it's worth, I have automated a CITRIX application just as you described for a large telecommunications firm in the early 2000s. I did this by getting deep inside the Windows SendMessage APIs and an optical character recognition package. You would probably be astonished by how much data was moved from one system into another using my team's CITRIX/screen-scraping "robots." I came upon this question because I was reminiscing about this project and wondering if there was still a need for this type of solution in this day and age.
As Motti said You can't automate via Citrix client. In general Citrix client is hard to automate. I know that someone at my work played with it and he managed to catch some communication and objects that could be useful to automate tests via Citrix, but that would be separate development project to create such solution that could be very limited.
Via citrix QTP object recognition is totaaly different. QTP on remote machines works on objects based on location and reference so it is almost impossible to automate.
As per my experience this type of setup can be best handled using the Image recognition and/or OCR capable testing tools like eggplant but its not really suggested to have testing environment which includes Citrix. Another option could be to install an automation tool like AutoIT within the Citrix machine and trigger the scripts using the other tool (maybe Selenium but I am yet to try that out).