LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Parallel processing

Hello,

I am working on a device tracking app, which allows me to evaluate the accuracy and help me debug errors.

I do this by sending a command line to the cloud service to retrieve the RSSI data from each of the surrounding access points.

My test includes 3 access points. What I need is to do is to send the command to each access point at the same time and then process the data as the access points returns the data requested.

In my current program I perform this process in sequence as the cmd vi can only execute the command line to one ap at a time. Similarly processing the data returned from the ap also has to be processed. The solution is slow and inaccurate. 

What I would like to do is to create 4 instances of the cmd vi and then start processing the returned data as it arrives from the access points.

I currently query the network for available access points and add them to a 1D array. That is my starting point.

 

Can anyone tell me who to proceed from there?

I have watched you tubes but simply don't get the right example which leads me to the solution. Many youtubers with talk about examples with our providing a problem/solution scenario and I am just tired of it. I am a visual thinker and need a clear and simple example.

 

Please help. 

Kind Regards,

Soren 

0 Kudos
Message 1 of 8
(192 Views)

Are you talking about doing this in LabVIEW?  If so, post all of your code for doing what you want to do with one access point.  Once we understand what you are trying to do, it should be fairly simple to create several parallel instances that can be configured to access several (different) access points.

 

Bob Schor

0 Kudos
Message 2 of 8
(165 Views)

If you talk about "cmd vi", is the communication done calling via system exec? We probably need much more details. What is the communication protocol?


LabVIEW Champion. It all comes together in GCentral GCentral
What does "Engineering Redefined" mean??
0 Kudos
Message 3 of 8
(136 Views)

Yes, I use system exec.vi. 

Azure CLI is the interface I use. There is no additional protocol.

1) I have a 1D array with serial numbers of access points. 

2) Each serial number I put into a CLI string and executed in system exec.vi

3) 2 is repeated for all serial numbers

4) Each execution triggers an infinite loop that sends the data to a single text file on my computer.

5) The text file is read by labview and the data is converted from JSON to a data table. 

 

The data table is a simple 2D spreadsheet. I append the returned data for each access point to this spreadsheet for easy analysis. 

 

This is the command execution and data capture

Soren1974_1-1611236715448.png

The raw data is then processed and put into the spreadsheet.

At the moment I kill all cmd.exe after the execution as I do not know the specific PID.

 

To execute this loop multiple times i would possibly have to change the exit process and kill process to avoid killing active loops.

I am not sure how I would do this yet. I think the kill process might have to be removed from this loop and executed at the end when all serial number data has been received.

 

0 Kudos
Message 4 of 8
(122 Views)

Upload your actual VI, not an image of your VI. Most won't even bother looking at that image much less respond to it.

0 Kudos
Message 5 of 8
(111 Views)

Thank you for your feedback.

0 Kudos
Message 6 of 8
(104 Views)

Here is the vi to execute the command line.

 

0 Kudos
Message 7 of 8
(101 Views)

This vi is my attempt to execute multiple copies of the CLI_Capture_eval.vi to speed up the data capture process.

 

0 Kudos
Message 8 of 8
(95 Views)