05-02-2017 08:03 AM
Hello Everyone,
Currently I am working on one project in that many ip sources are there from that ip sources i am getting different ip packets in interval of 4(Milliseconds). i want to process all ip packets together through lab view. please give me suggestion how to process all ip packets by using buffer and all..
Thanks
05-02-2017 01:35 PM
What do you have so far? Without any information, I'll just suggest you start by looking in >Functions >Data Communication >Protocols >UDP
05-03-2017
12:47 AM
- last edited on
08-19-2024
03:08 PM
by
Content Cleaner
@monu123 wrote:
Hello Everyone,
Currently I am working on one project in that many ip sources are there from that ip sources i am getting different ip packets in interval of 4(Milliseconds). i want to process all ip packets together through lab view. please give me suggestion how to process all ip packets by using buffer and all..
Thanks
UDP is lossy by definition. What do you have on these "IP sources"? Are these PCs? You might consider using other protocols. All depends on your requirements. Do you want guaranteed data delivery? Or is it enough just to get "latest values", and not worry about some lost data points?
You can read about the different protocols here: https://www.ni.com/en/shop/labview/using-the-right-networking-protocol.html
Network Streams (one to one lossless comm): https://www.ni.com/en/shop/labview/lossless-communication-with-network-streams--components--archite....
05-03-2017 06:54 AM - edited 05-03-2017 06:56 AM
Thank you so much sir for your kind reply..!!
Actually Sir i am working on the project(ACCS( ADVANCED COMPOSITE COMMUNICATION SYSTEM)). IN that projects many cats(like radio's) are there in different remote location for communication purpose. each single cat having our operation. that operation i successfully did by using lab view. i am uploading that lab view program. plz once check it!!
these is done for single cat only. now Sir what i want to know the status of 15 cats together.all cats having a different ip packets.i am getting packets in a interval of 4(Ms)
Thanks sir
05-03-2017 07:02 AM
Thank you so much sir for your kind reply..!!
Actually Sir i am working on the project(ACCS( ADVANCED COMPOSITE COMMUNICATION SYSTEM)). IN that projects many cats(like radio's) are there in different remote location for communication purpose. each single cat having our operation. that operation i successfully did by using lab view. i am uploading that lab view program. plz once check it!!
these is done for single cat only. now Sir what i want to know the status of 15 cats together.all cats having a different ip packets.i am getting packets in a interval of 4(Ms)
Thanks sir
05-03-2017 08:13 AM
I have no idea what these "cats" are. I guess not the furry ones? 🙂
I never used UDP for such purpose, but what is your actual problem? I cannot really give any specific comment since I do not have any info about these senders ("cats"), and how that message is formed. I see strange conversions you perform on the received data packages, but as I wrote I have no idea about the data structure you need to handle.
Just a general comment: you open an UDP listener as I understood, and you perform an UDP Read. If a certain number matches with your "cat" number, then you move into the True case of the Case structure. You parse out some info (no idea about the structure, so no comment on this), then you do a 3 seconds long Wait. Do you really want to wait this much before the next Read attempt?
Could you tell what is exactly your goal? You said you need to read out packages from 15 senders , the "cats". You could modify your block diagram to have an array instead of that "CAT" number control. This array should specify the 15 "cat numbers", their identifiers.
You can check which ID was used, and put it into shift registers to update the indicators. Of course, you need to make your indicators into arrays so you can see the values of the different "cats".
Other thing you should move the "UDP Multicast open.vi" BEFORE the While loop, and also have a Close function AFTER the while loop.
The snippet below might give you some hints, but only you can test it, I do not have your HW elements... Plus I really doubt you can read in a lossless way UDP messages with 4msec speed. So I just put a 10 msec wait into the Case structure. You can play with it. I let you to test this, and also you need to setup a data cluster with a Shift Register: when a package arrives, you parse out the values, and place them in at the required index of the data arrays stored in the Shift Register (the values which you want to monitor, like "Selected ICK", "Morse mode", etc...). Then you only need to change your single value indicators into array indicators. I would also setup a logic to monitor and estimate the number of lost packages...
05-03-2017 09:06 AM
Thank you so much sir.
The first program which i uploaded which is showing status of only single cat only..!!that time i was playing with single ip packet( every 4MS that same packet is updating).depends on operation i was getting status on front panel.
I am uploading one word document please sir check it..!! by using these document i made that program.!! now sir i have 15 cats i want status of all 15 cats on front panel.
05-03-2017 09:17 AM - edited 05-03-2017 09:19 AM
@monu123 wrote:
Thank you so much sir.
The first program which i uploaded which is showing status of only single cat only..!!that time i was playing with single ip packet( every 4MS that same packet is updating).depends on operation i was getting status on front panel.
I am uploading one word document please sir check it..!! by using these document i made that program.!! now sir i have 15 cats i want status of all 15 cats on front panel.
I have checked your document. Question: you only need unidirectional communication? This doc describes how to request other packages (like the "privileges" one by sending data package from the "CCMT", I guess this is the single PC side?). So you want to read only the status, and not send requests from the PC to the CATs? If you need two directional comm, you need to program your VI different.
Did you test my snippet (contains a VI, just drag&drop into an empty block diagram)? Does it work? Do you see packages coming from the different CATs?
Another thing I do not understand. You wrote "4MS that same packet is updating". What do you mean? "M" means million. "S" can mean "sample". I guess you wanted to type "4 ms" which stands for 4 milliseconds? Your doc describes something else, but still not clear, it says: "This packet will be sent from CAT to CCMT once every 04 seconds. ". Does it mean 4 seconds? Does it mean 0.4 seconds??