主要内容

TCP / IP接收

通过TCP/IP网络从指定的远程机器接收数据

  • 库:
  • 仪器控制工具箱

  • TCP/IP接收块

描述

TCP / IP接收block使用TCP/IP协议配置并打开到指定远端地址的接口。配置和初始化只在模型执行开始时发生一次。在模型运行时,块以阻塞模式或非阻塞模式获取数据。使用TCP / IP接收块通过TCP/IP网络读取流数据。该块只能作为TCP/IP客户端,不能用作TCP/IP服务器。

该块没有输入端口。根据您选择阻塞或非阻塞模式,它有一个或两个输出端口。如果选择阻塞模式,则该块有一个输出端口,数据,对应于它接收的数据。如果不选择阻塞模式,则阻塞有两个输出端口,数据而且状态

该块使用先进先出(FIFO)缓冲区来接收数据。在每一个时间步,数据端口从缓冲区返回请求的值。在非阻塞模式下,状态Port指示块是否接收了新数据。如果状态端口显示1,新的数据是可用的,如果状态端口显示0,没有新的数据。

其他支持特性

  • TCP / IP接收block支持使用Simulink®加速器模式和快速加速器。这个特性加速了Simulink模型的执行。

  • TCP / IP接收块支持使用模型引用。该特性允许您的模型包含其他Simulink模型作为模块化组件。

  • TCP / IP接收块支持C/ c++代码生成。该特性允许您使用仿真软件编码器™

有关这些特性的更多信息,请参见动态仿真模块文档。

港口

输出

全部展开

块从远程地址接收的数据,以向量、矩阵或数组的形式返回。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

新的数据可用状态,作为逻辑返回1真正的)或0).如果此端口返回1时,可读取新数据。

依赖关系

若要启用此端口,请取消选择启用阻塞模式参数。

数据类型:布尔

参数

全部展开

要从中接收数据的TCP/IP服务器的IP地址或名称。

编程使用

块参数:宿主
类型:字符向量,字符串

要连接的TCP/IP服务器的远端端口,取值范围为1 ~ 65535。

编程使用

块参数:港口
类型:字符向量,字符串
价值观:1到65,535
默认值:“80”

单击此按钮可检查到指定远程地址和端口的连接是否有效。

输出数据大小,或在每个模拟时间步中要读取的值的数量。此参数指定为标量或向量。数据不包括终止符值。

编程使用

块参数:DataSize
类型:字符向量,字符串
价值观:向量
默认值:'[1,1]'

数据块从远程地址接收的数据类型,指定为MATLAB数据类型。

此数据类型必须与远端地址的数据类型匹配。不能使用此参数更改远端地址的数据类型。

编程使用

块参数:数据类型
类型:字符向量,字符串
价值观:“单一”|“双”|“int8”|“uint8”|“int16”|“uint16”|“int32”|“uint32”|“int64”|“uint64”|“ASCII”
默认值:“uint8”

此参数定义接收到的字符串数据的格式。您可以使用以下转换说明符或它们的组合。

请注意

如果您生成C/ c++代码使用仿真软件编码器,则只能使用单个转换说明符。

数字字段类型 转换说明符 细节

整数,签署了

% d

以10为底的

%我

数据中的值决定了基数:

  • 默认值以10为基数。

  • 如果首位数是0 x0 x,则为十六进制(以16为基数)。

  • 如果首位数是0,则值为八进制(以8为底)。

% ld%李

64位值,以10、8或16为基数

整数,无符号

% u

以10为底的

%啊

以8为基数(八进制)

% x

以16为基数(十六进制)

陆%%瞧% lx

64位值,以10、8或16为基数

浮点数

% f

浮点字段可以包含以下任何一个(不区分大小写):,或

% e

% g

编程使用

块参数:ASCIIFormatting
类型:字符向量,字符串
价值观:' % d '|' %我|% ld的|“李%”|' % u '|% o '|' % x '|“陆%”|“% lo”|“% lx”|' % f '|“e %”|“% g”
默认值:' % f '

依赖关系

若要启用此参数,请设置源数据类型美国信息交换标准代码

如果选择此参数,则可以指定指示数据块结束的终止符。模拟将终止符之前的任何数据视为新的数据块。终止数据不发送到输出端口。此终止符必须与从远程计算机读取的数据中的终止符匹配。

如果您选择定制的终结者,您可以指定自己的终止符值。

编程使用

块参数:《终结者》
类型:字符向量,字符串
价值观:“CR”|“如果”|“CR / LF”|“如果/ CR”|“自定义终结者”
默认值:“如果”

依赖关系

若要启用此参数,请设置源数据类型美国信息交换标准代码

指示数据块结束的自定义终止符。模拟将终止符之前的任何数据视为新的数据块。终止数据不发送到输出端口。

在此参数中指定的数值数组是uint8对应ASCII字符的整数表示。该参数的确切形式取决于ASCII字符的类型。

ASCII字符类型 ASCII字符示例 MATLAB命令 参数值
控制字符(转义序列) “如果”“\ n” uint8 (sprintf (' \ n ')) [10]
特殊字符 “#” uint8(“#”) [35]
数字 “81” uint8(“81”) (56 49)
字母 “结束” uint8(结束) [69 110 100]

您也可以使用ASCII字符的十六进制表示形式指定此参数。

编程使用

块参数:CustomTerminator
类型:字符向量,字符串
价值观:整型数组
默认值:“十”

依赖关系

若要启用此参数,请设置《终结者》定制的终结者

将字节排列成较大数值的顺序。如果字节顺序为低位优先,则第一个字节组织在所接收的TCP/IP包的第一个内存地址中。如果字节顺序为大端法,则最后一个字节组织在所接收的TCP/IP包的第一个内存地址中。

在接收数据之前,配置字节顺序以匹配远程计算机的适当值。有关它存储字节的顺序的信息,请参阅您的仪器文档。

编程使用

块参数:ByteOrder
类型:字符向量,字符串
价值观:“低位优先”|“大端法”
默认值:“大端法”

当块接收数据时,该参数使模拟等待。当新的数据可用时,模拟将从下一个时间步骤继续进行。如果不希望读取操作导致模拟等待,则取消选中复选框。

如果启用阻塞模式,则模拟等待所请求的数据变为可用。在每个时间步骤中,模型等待的时间不超过超时参数。如果在此时间内未接收到数据,则块输出值为0

如果不启用阻塞模式,模拟将持续运行,并且阻塞有两个输出端口,状态而且数据.的数据端口包含在每个时间步上请求的数据集。的状态端口包含0或1,这取决于它是否在给定的时间步骤上接收到新数据。

有关更多信息,请参见在接收和发送块中启用阻塞模式

编程使用

块参数:EnableBlockingMode
类型:字符向量,字符串
价值观:“上”|“关闭”
默认值:“上”

模型在每个模拟时间步骤中等待数据的时间(以秒为单位)。这个值相对于真实世界或“挂钟”时间。

编程使用

块参数:超时
类型:字符向量,字符串
价值观:积极的标量
默认值:“十”

依赖关系

若要启用此参数,请设置启用阻塞模式

模拟过程中块的采样时间。这是模拟过程中块执行的速率。有关更多信息,请参见硬件接口模型中的时序

编程使用

块参数:SampleTime
类型:字符向量,字符串
价值观:积极的数字
默认值:“0.01”

扩展功能

版本历史

在R2007b中引入

另请参阅

Baidu
map