Data Sockets Problem
Hi,
I have written an applet with the following code that opens a simple socket. The problem is that I can only run one copy of the applet at once or I get an IOException can not create socket. Can any help me out
Thanks for any help
Joolz
//// Start Code ////
public tcpip(InetAddress ipa, int port)
Socket _given = null;
try
_given = new Socket(ipa.getHostAddress(),port);
catch(IOException e) {System.out.println("Error creating socket..");
return;
//// End Code ////
Hi,
Here is the error message, I don't have access to the server.
Error creating socket java.net.connectException Connection refused connect.
Thanks
Joolz
Similar Messages
-
Data socket problems with LVRT 8.2
I am in the process of migrating to LV 8.2 from LV7.1.1. My system has 18 RT targets which send data to a Host PC through data socket (DS). The Host PC runs LV on Windows XP Pro. With LV7.1.1 on both host and RT targets DS works perfectly. The RT targets update the host every 500 ms.
I've taken a three-step process in the migration. First tests were done with the host migrated to LV8.2 while keeping the RTs at LV7.1.1. Result: the system worked perfect. Then I changed one RT to 8.2 keeping the rest the rest at LV7.1.1. Result: DS timed out before all the data could be sent to Host. Finally, all RTs were migrated to LVRT 8.2. Result: Only about 5 out of the 18 RTs report to the Host before DS times out. However, if only one RT target is used, i.e., the other 17 RTs are diasbled, communication is very fast. Is there a special setting that I need to make? Btw, the roughly 5 RTs that report vary randomly from test to test, i.e., there is no bias towards any particular RTs.
I am using the same source code developed under LV7.1.1, so the only changes made are the ones that take place when one opens LV7.1.1 code in LV8.2. Some VIs get converted in the process.
Any ideas?
Chatonda Mtika
Algis Corp
Vancouver, CanadaBen,
I must say I am very surprised by Nadim's email. His point, which I must say I don't agree with, was made quite clear to me yesterday during a conference call between my team and the NI team comprising Chris, Nadim, and Avinash. So I don't know what purpose this morning's email is supposed to serve. Be that as it may, I think NI has gotten it wrong here. I do not think it should be one or the other. The discussion forum is a much wider forum comprised of people with varying experiences - not just NI employees. That is precisely why I posted my problem to the forum: to tap into the vast experiences of the discussants. But when I did not get any responses after I had posted answers to Nadim's questions, I decided to make a formal service request to NI, all perfectly legal. So I was really surprised when I was being blamed for tying up NI resources on one problem. I believe the resource allocation issue should be NI's to solve, not mine. I have no way of knowing that NI had formally assigned somebody to my problem. What if nobody from NI responds, am I allowed to make a service request to NI? My feeling is that NI's logic is flawed here, assuming Nadim's views are NI's views.
Thanks,
Chatonda Mtika
Algis Corporation
Vancouver, Canada -
Create OPC I/O server and front panel data socket problem
Hi all!
I installed the NI OPC server. When I try to create a new server I/O in a LabVIEW project I don't see the "OPC client" possibility.
Is something software missing?
Other question: I tryed to connect to OPC server using front panel data socket but my problem is same. When I click the numeric control and I go to the "data operation" menu there is no possibility to make data socket connection.
I don't know what is the problem.
I attached two pictures about my problem.
Solved!
Go to Solution.Dear vajasgeri1,
do you have LabVIEW DSC module installed? Without it you will not have the OPC client funtionality.
And to configure DataSocket binding you need to go to the Data Binding tab in the Properties of a control.
BR,
Mateusz Stokłosa
Applications Engineer
National Instruments -
Problem with data socket server
We have developed a program (from LabVIEW 6.1 running on Windows NT) consisting of a main executable and four other executables dedicated to collecting various i/o information. The four i/o executables convert raw data into process data and pass it on to the main executable using Data Sockets. The data is assembled as a cluster, then flattened into a string, which is published to a data socket variable. The data cluster contains a time stamp used by the main executable to verify i/o is being updated periodically (at least once a second). The main executable generates an alarm if the timestamp gets to be more than 5 to 15 seconds old, depending on the expected data. Typically, this alarm never happens, unless an i/o device is powered down o
r disconnected, or an executable or Data Socket Server is terminated.
The problem we are is experiencing is that false alarms are being generated, at precise intervals of exactly 5 days, 18 hours, 1 minute, and 1 second. The alarm condition occurs then clears immediately. The only thing I can think of is the data socket is somehow "cleared" for some reason at this interval, causing the main executable to momentarily read a time stamp of zero, and generate an alarm. Is there anything that might be corrupting the data sockets at a long interval like this? The worst thing is that the alarm horn gets falsely triggered, so we are trying to resolve this but can not see anything in any of the code to cause such an occurrence.
Thanks in advance for your help.
Brian Hajder
Despatch Industries
8860 207th Street West
Lakeville, MN 55044
Phone: 952.469.8111
Fax: 952.469.4513
[email protected]Hello Matt,
Thank you for reading & responding. I should try to summarize this specific application in a little more detail.
We have built a manufacturing tool for a customer that is controlled by a single Windows NT PC, for which we have developed 5 executables using LabView 6.1. The main executable provides the user interface. The other four executables are dedicated to control & monitoring of specific i/o devices (serial or IEEE-488). The i/o executables pass data to and receive commands from the main using data sockets. The PC is not on any type of network. The main executable supports an optional SEMI standard host link through its ethernet port, but that is not currently active or connected. A total of 13 data sockets are used, to implement si
mple "one way" traffic through any socket, making buffering unnecessary. Some data sockets (i/o data to and from main) are updated a few times a second at most, commands from the main may only be updated a few times a day.
Data from each of the i/o executables includes a time stamp indicating the last valid i/o hardware read time. The main uses this data from each i/o executable to determine whether i/o hardware is responding properly - if the timestamp gets to be anywhere from 5 to 15 seconds old (depending on which i/o is being checked), an i/o failure alarm for that device is raised.
What seems to be happening is that, periodically, precisely every 496,861 seconds, two or more of the timestamps are found to be too old; I am assuming some external event is momentarily clearing socket data & the zero value timestamps look very old, thus triggering alarms at the exact same second. The alarm conditions clear up in less than one second.
I wonder what you mean by "the datasocket
server resetting"? Is this documented anywhere?
Thanks for plowing through this wordy description, I appreciate any help you can suggest.
Brian -
Problems with data socket connection
I have two computers on a network both running labview. I would like to
exchange the value of a variable in both directions. For example
computer A sets the variable to a certain value, computer B reacts and
changes this variable. Computer A now reads the new value.
So I tried this using (front panel) data sockets but I could not
establish a connection the way I want it. Also I couldn't find answers
here or in the labview help file, so I hope you can give me a short
hint on how to do that (do I need to run socket server on both
machines? What IP address do I need to enter in the front panel dialog?)
Thank you very much,
MichaelThanks for the Port number, I got it to work now.
I will summarise what was necessary to establish a connetion in case other people are interested:
If you need a bidirectional communication between computer A (IP:192.168.0.1)
and B (IP: 192.168.0.2) the following steps may be necessary:
- Run DataSocket Server on *both* computers before you start LabView
For communication A to B:
- Select a variable on computer A, and enter the following in the connect to field:
"dstp://192.168.0.1/var1", click on "publish"
- Create a variable of the same type on machine B and enter in the connect to field:
"dstp://192.168.0.1/var1", click on "subscribe"
For communication from B to A do the following:
- Select a variable on computer B, and enter the following in the connect to field:
"dstp://192.168.0.2/var2", click on "publish"
- Create a variable of the same type on machine A and enter in the connect to field:
"dstp://192.168.0.2/var2", click on "subscribe"
Maybe this is not the most elegant way because I don't know how to use the "Publish and subscribe" field
but at least it works this way.
Michael -
What is the purpose of open/close connection data socket?
Hello everyone,
I am writing and reading values in OPC Server through data socket. What is the purpose of open/close connection data socket when writing /reading a value? Without the open/close connection element, it still work correctly. I am writing values in the server thru event stucture.I do not need any buffered reading or writing. What will happen if I didnt not use the open/close connection? Maybe it may cause some problems in my program which i didnt realise?
And I have attached an example of my program. Thanks
Yehchia
Attachments:
Test Event.vi 11 KBHi YehChia,
I was talking about something like that:
1. Not good. since with every iteration the DS connection needs to be opened and closed.
2. Good. Since you open the connection only once then do the reads and close it afterwords.
Christian -
Greetings,
I have an LV 8.6 HMI that performs Data Socket reads
from Network Shared Variables. I am finding that it works well until I
try to shut down and close all the DS references. I can usually get
away with this
once, but if I try to restart the application I often
will not be able to reopen the DS reference and it will always crash
when I try to shutdown again. I have narrowed it down to just DS opens
and closes
and the problem persists. Attached is the error message
that pops up when LV crashes, not much to go on but any ideas would be
greatly appreciated.
Attachments:
DS Related Error.PNG 10 KBHello,
Which version of Windows are using? There are some cases in the past with NT that relate to this error because windows was updated. A Microsoft KB explains that here.
This also may be an issue with the Shared Variable Engine having a conflict with the firewall or antivirus software. You may need to go through this document to configure your windows firewall if you already have not.
National Instruments
RIO Embedded Hardware PSE
CompactRIO Developers Guide -
I am reposting this message and hope someone can help me....
I have been using Data Socket to pass information from a control computer
to two
remote computers. At various times throughout the day the connections, between
the control computer and the remote computers, are being dropped (the number
of connections drops from 3 to 1). The remote computers still believe that
they are connected to Data Socket, however they are no longer receiving updated
data. Has anyone else experienced this? Does this seem like a "network
traffic" issue?
Any help is appreciated.
Thanks,
AriI got this answer from another question posted on the NI website. I don't know if it will help but it seems like this may be the same problem.
Jeff M. on 8/8/2001 answered:
"There isn't a limit to the number of packets that the datasocket server can handle. What I surmise is happening (had this happen to me) is that the power savings features on your system are turning on (system goes to standby) and this basically disables the ability for the server to function and kills datasockets." -
Could someone please help me find detail Data Socket documentation regarding allowed urls and Timouts.. For example what expressions are not allowed for making connections(.html)? And what is the maximum Timeout (seems to be limited to ~20secs)? -SS
Unfortunately, there isn't a single source that I would call the "definitive" data connection resource for LC Designer. I would suggest using information from the following resources at your disposal:
These forums. There are lots of examples here on data connections and some Adobe personnel along with many other very knowledgeable customers providing answers.
The
Working with Data Sources help topic in LC Designer Help.
Data Connection samples found on the
Adobe LiveCycle Designer Samples page.
My personal favorite: Looking at the JavaScript code in the Initialize event of the Data List Box object found in the Library palette's Custom tab (drag one on to a form and look through it's Initialize event code using the Script Editor).
If you have a specific question about a problem you're trying to solve using Data Connections in LC Designer, please post to a thread in this forum. We'll be happy to help you solve it.
Stefan
Adobe Systems -
I have one computer with a data socket that I write some waveforms to
at ~ 1Hz. I have another computer that reads out that data, and
logs it. My problem is that sometimes, I have to stop the vi on
the data socket server machine, at which point, the second machine
running the "data socket read vi" stops and gives an error, since the
datasocket no longer exists. Is there some way for the reader
machine to test to see if the datasocket exists, and if not, I'll just
write zeros or keep testing until it's open again? I don't want
to have to go over to the other machine and restart the vi every time
this happens.
thanks.
Jesse WodinHello,
One way to do it would be to simply check for that error in your loop. If it occurs, you know the connection was lost, otherwise you're receiving data!
Will this work for your application?
Thank you,
JLS
Best,
JLS
Sixclear -
Data Socket fails if built in DLL and called by Labview
I've placed a Data Socket Connection Open in a SubVi and tested this by running the VI. -> No Problems.
Then i've compiled a DLL from this Vi and started it from Visual C. -> No problems
Now, i've included this DLL in another VI and started this. Now i receive an Error.
All Information is hardcoded in the DLL so there are no possiblities with parametrization.
Does anyone have an Idea regarding this?
Best regards
HackyHello Carsten_S.....
my collegue, who found this behaviour made a little package to
show the environment. Since he uses a camera system there is no
possibility to get it running. But it should be easy to create a LV based
server.
Our Environment is:
LV 7.1
Windows XPSR2
Regards, Hacky
Attachments:
DLL.zip 76 KB -
Muti-channel read/write through FP data socket posible?
Hello,
I'm trying to talk to cFP-1808 module from desktop PC real-time host over Ethernet. I did not find any Fieldpoint driver for desktop RT so I'm forced to use data sockets to communicate with cFP-1808. It seems that one can only read or write to one FP data channel per socket. With typical latency of tens of milliseconds per such read/write and couple of hundreds channels present, I'm looking at SECONDS per cycle time, which is really slow.
Is there any workaround for this problem?You can also read and write to channels in LabVIEW. First you have to configure your 1808 in MAX and save the IAK file. You then load the IAK file in LabVIEW by selecting browse in the FieldPoint IO Point In (constant or control).
In the FieldPoint Device Selection Dialog Windows select the View Configurations Tab.
In this tab navigate to your IAK file and name it in the text box next to where the full file path is displayed.
In the Browse FieldPoint Tab of the same window you should now be able to see all of your FieldPoint modules and channels.
Message Edited by BLAQmx on 03-06-2008 01:12 PM
Mark
LabVIEW R&D -
Why can't I read what I have written to the data socket server?
Hi,
I have a problem with DataSocket: I open a socket and in a cycle I read from the socket and write a boolean "TRUE" to the socket. But reading from the socket I always get a "FALSE" value back.
Monitoring the socket from a second VI where a boolean control is connected to the data socket shows that the "TRUE" value that I write is accepted on the DS-Server.
Is this a bug or do I miss something?
Regards
Tobias
Attachments:
readwriteDS.zip 17 KBhi there
i'd recommend to use two connections for read and write access (see attachment). The ReadWrite mode does not work properly with DS. you can establish the connections at startup of your app and use them until you are done. when using the URL as a input the server must check for a open connection or create one in each cycle.
best regards
chris
Best regards
chris
CL(A)Dly bending G-Force with LabVIEW
famous last words: "oh my god, it is full of stars!"
Attachments:
set_flag_v2_LV7.1.vi 43 KB -
Dynamically create Variant Data Socket items with multiple writers
I want to use variant or cluster items with data socket connection. I want to allow multiple writers.
So far I can create these items dynamically but not set them to allow multiple writers.
For numeric, string, and Boolean items I can set these properties by predefining them in the data socket server manager. I could not predefine a variant or cluster in the manager.
I realize I can flatten to string the item needed but would prefer to do this in the cluster or variant formats.
Any suggestions?unclebump wrote:
Could you accomplish this using a functional global architecture??
An interesting concept which might work and did just open up a new host of possibilities!
When I get the time I might give this a try. I just did a quick test in another program.
Through VI server I opened a reference to a remote machine. I then created strictly typed reference to a âfunctional global viâ that I knew would be in memory. It reads the functional global just fine!
Thanks for the suggestion.
Here is the work around I used for the data socket program.
Here is the original problem.
I needed to know on the server side when a new value was written to the message cluster, which consisted of a string and a variant. Checking the string portion of the cluster let me know what command to send the device being controlled on the server machine. The variant is used to hold the various parameters that accompanied the command. Since the same command type could be sent several times I needed to reset the string control after the server read the command. This required writing to the data socket from the client & server machine (multiple writers). Also since the client could be any PC in the subnet I needed to allow all these machines to have write access.
I solved this by using a second data socket item for the new message flag. This item is a string value that could be pre-defined and set to allow multiple writers. I then used the cluster item to handle the commands and wrote to the string item a signal that a new command was ready. The server then recognizes a new command is ready, reads the command, and then flags the string message received.
Thanks again for those who took the time to answer this.
Randall -
Data socket. how to implement this?
I need to write to a data socket server using a program that scans a multiple channel data logger. Up to 2 scans can be enabled and the scans run at selectable times and on selectable channels. For example, scan 1 might scan channels 0 to 19 at a two second interval and scan 2 might scan channels 20 - 99 at a 10 second interval. I would like to know the best way to implement the ds server so each scan will write it's own data at different times and they will not overwrite or otherwise interfer with one another. Possible? Various seperate programs will access this data from the server and update their front panels as the new data is written to the ds server. In the above example, my reader program which executes every 50 ms would update channels 0-19 every 2 seconds and channels 20-99 every 10 seconds. Is it possible to open two ds servers using one for each scan? I've played with that without success. I looked at the data socket server manager but couldn't determine if changing it would address my problem. I'm using LV8.5.1 and the programs will be compiled to executables for running on multiple computers in the lab. Thanks for any advice. Hope this makes sense.
Hi Mike,
You only have one DataSocket server available to you at a time. You can write to a server from multiple locations, but you cannot have multiple servers. You should be able to implement your idea in your code by alternating between write locations. You would have to stagger the scans so that they don't overlap however. Here are a couple of links that you might find useful:
Configuring a DataSocket Server
http://zone.ni.com/devzone/cda/tut/p/id/3123
Can Multiple DataSocket Writers Connect to the Same Item?
http://digital.ni.com/public.nsf/websearch/A8AC9A751404BAB18625672400630A3D?OpenDocument
Nick Keel
Applications Engineering
National Instruments
Nick Keel
Product Manager - NI VeriStand and Model Interface Toolkit
National Instruments
Maybe you are looking for
-
MSI GE40 adding HD and switching from AHCI IDE causes windows 8 to fail
Hello, I removed my DVD from my ge40 laptop and added a caddy with a 1tb serial ata III hd 7200 rpm. Not happy, I went in the bios and changed the sata from AHCI to IDE. This caused windows to not being able to boot twice, and from that point it alwa
-
CRM E-business Centre dashboard to have information on Marketing Campaigns
Please tell me if CRM E-business Centre dashboard can have information on Marketing Campaigns and customer responses; is this requirement possible without customization? Edited by: user13316829 on Jan 31, 2011 9:47 PM
-
Need help finding AWT Tool kit
I want to learn how to creat a GUI but i need the AWT tool kit befor i start i need one for j2sdk1.4.2_05. Any help that can point me in the right direction would be great thanks.
-
I know that many (most?) extensions are no longer supported in 2014 program, but it's not really possible to tell what's compatible and what's not from the add-ons descriptions. The Ext Mgr lists which extensions are downloaded and enabled for each
-
Flash button text dont fit!
when i create a flash button, the text i have provided for inside of the button doesn't fit. Some letters are missing, but when i change the width or height of the button; the button is just white around the area i made bigger. therefore not really d