【问题标题】:TCPIP connection not working in matlabTCPIP连接在matlab中不起作用
【发布时间】:2012-08-10 03:09:06
【问题描述】:

任何机构都可以帮助我解决与仪器建立 tcpip 连接时遇到的问题。就像我使用以下命令与 tcpip 地址建立连接时,它在任何时候都可以正常工作。

1.测试和测量工具(matlab中的TMTOOL) 2.Zoc终端 3.teraterm。

但是当我尝试实现以下脚本时,它确实运行但不知道如何将命令发送到我试图控制的平移和倾斜单元。

我正在尝试使用两个脚本:

一个。

obj1=tcpip('169.254.32.28',4000);
fopen(obj1);
cmd=5000;
fprintf(obj1,'pp%d',cmd)
fclose(obj1);
delete(obj1);

我正在尝试发送命令 pp5000

B.

%commands
lat=51.57668;
lon=-1.26765;
alti=500;
% Find a tcpip object.
obj1 = instrfind('Type', 'tcpip', 'RemoteHost', '169.254.32.28', 'RemotePort', 4000, 'Tag', '');

% Create the tcpip object if it does not exist
% otherwise use the object that was found.
if isempty(obj1)
    obj1 = tcpip('169.254.32.28', 4000);
else
    fclose(obj1);
    obj1 = obj1(1)
end

% Connect to instrument object, obj1.
fopen(obj1);
i=1;
tic
for i=1:10
% Communicating with instrument object, obj1.
fprintf(obj1, 'gg%f,%f,%f',lat,lon,alti);

i=i+1;
toc
end
fclose(obj1);
delete(obj1);

想要的结果:

gg51.57668,-1.26765,500

第二个脚本只是TMTOOL im matlab生成的自动脚本稍加修改的版本

基本上我想每半秒在所需对象上打印一些命令。

任何人都可以提出一些替代方案或改进措施,以实现预期的结果。

我无法执行这些脚本,我认为无论我对 matlab 有什么小知识都应该是正确的。我是一个新用户,如果你能提供帮助,我将不胜感激。

谢谢

萨利尔

【问题讨论】:

  • 尝试通过网络进行通信时会出现很多问题。您是否尝试过使用内置的回声服务器?您是否尝试过编写自己的简单回显服务器?我个人会先让这些工作开始,然后再增加问题的复杂性。

标签: matlab tcp printf


【解决方案1】:

您始终可以使用 Java 类(套接字)来回传递数据,这就是我的做法。

文件 1:

import java.net.ServerSocket
import java.io.*

server_socket = ServerSocket(4000);
client_socket = server_socket.accept;
out = PrintWriter(client_socket.getOutputStream, true);
in = BufferedReader(InputStreamReader(client_socket.getInputStream));
str = in.readLine(); % Read in data
out.println(data); % send data

文件 2:

import java.io.*;
import java.net.*;
server_socket = Socket('localhost', 4000);
in = BufferedReader(InputStreamReader(server_socket.getInputStream));
out = PrintWriter(server_socket.getOutputStream,true);

以与上述相同的方式获取和发送输入。完成后不要忘记关闭所有内容。

out.close();
in.close();
client_socket.close();
server_socket.close();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-10-09
    • 2016-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-23
    • 2017-04-28
    • 2017-04-18
    相关资源
    最近更新 更多