F384_Positioning_ReadData

读取位置控制参数

此指令用于通过用户程序读取以下位置控制参数和位置控制数据表数据:

  • 一般信息,例如使用的通道/轴、重复次数和错误代码

  • 轴信息,例如当前执行状态和当前重复次数

  • 轴设置信息,例如脉冲输出控制代码、原点复位设置、速度、加速设置和减速设置

  • 位置控制表数据,例如代码和模式、速度、加速设置和减速设置

此指令读取以s2_Offset开头的位置控制存储器中存储数据的n_Number指定的字数,并将其存储到以d_Start开头的操作存储器区域。

参数

输入

s1_Channel (WORD, INT, UINT)

通道编号

Configurator PMXSYS_PMX_CHANNEL_0SYS_PMX_CHANNEL_3

Configurator PM7SYS_PM7_AXIS_1SYS_PM7_AXIS_8

s1_Area (WORD, INT, UINT)

位置控制存储器区域:

  • 0:SYS_POSITIONING_AREA_COMMON_DATA

  • 1:SYS_POSITIONING_AREA_AXIS_INFORMATION

  • 2:SYS_POSITIONING_AREA_AXIS_SETTING

  • 3:SYS_POSITIONING_AREA_TABLE_DATAFP-XH标准类型)

    SYS_POSITIONING_AREA_CAM_PATTERN (仅限FP-XH M4T16T, FP-XH M8N16T

  • 4:SYS_POSITIONING_AREA_SYNCRONOUS_CONTROL(仅限FP-XH M4T16T, FP-XH M8N16T

  • 5:SYS_POSITIONING_AREA_OPERATION_CHANGE(仅限FP-XH M4T16T, FP-XH M8N16T

  • 6:SYS_POSITIONING_AREA_RTEX_PARAMETER(仅限FP-XH M4T16T, FP-XH M8N16T

s2_Offset (WORD, INT, UINT)

要读取的控制单元中位置控制存储器区域的起始偏移量地址(源地址)

n_Number (WORD, INT, UINT)

要读取的字数

输出

d_Start (WORD)

用于存储读取数据的控制单元中操作存储器的起始地址(目标地址)

示例

POU头

所有用于编程此函数的输入和输出变量已在POU头中声明。 所有编程语言使用相同的POU头。

	VAR
		bReadData: BOOL:=FALSE;
		awData: ARRAY [0..9] OF WORD:=[10(0)];
		@'': @'';
	END_VAR

POU本体

当变量bReadData设置为TRUE时,执行此函数。

LD本体

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 7 ;
        NETWORK_BODY
B(B_COMMENT,,ø^Settings for s1_Channel:ø^	PMX-Configurator:  SYS_PMX_CHANNEL_0 ... SYS_PMX_CHANNEL_3ø^	PM7-Configurator: 	SYS_PM7_AXIS_1 ... SYS_PM7_AXIS_8ø^,2,1,49,6,);
L(1,0,1,7);
        END_NETWORK_BODY
    END_NET_WORK
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 7 ;
        NETWORK_BODY
B(B_F,F384_Positioning_ReadData!,,22,0,35,7,,?DEN?Ds1_Channel?Ds1_Area?Ds2_Offset?Dn_Number?AENO?Cd_Start);
B(B_VARIN,,SYS_PMX_CHANNEL_0,20,2,22,4,);
B(B_VARIN,,SYS_POSITIONING_AREA_AXIS_INFORMATION,20,3,22,5,);
B(B_VARIN,,155,20,4,22,6,);
B(B_VARIN,,awData,13,5,15,7,);
B(B_VAROUT,,awData,43,2,45,4,);
B(B_F,Size_Of_Var!,,15,5,22,7,,?D?C);
B(B_F,Adr_Of_Var_O!,,35,2,43,4,,?D?C);
B(B_CONTACT,,bReadData,7,1,9,3,);
L(1,2,7,2);
L(9,2,22,2);
L(1,0,1,7);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

ST本体

(*
	Settings for s1_Channel:
		PMX-Configurator: 	SYS_PMX_CHANNEL_0 ... SYS_PMX_CHANNEL_3
		PM7-Configurator: 	SYS_PM7_AXIS_1 ... SYS_PM7_AXIS_8
*)

if (bReadData) then
	F384_Positioning_ReadData(	s1_Channel 	:= SYS_PMX_CHANNEL_0, 
								s1_Area 	:= SYS_POSITIONING_AREA_AXIS_INFORMATION, 
								s2_Offset 	:= 155, 
								n_Number 	:= Size_Of_Var(awData), 
								d_Start 	=> Adr_Of_Var(awData));
end_if;

最后更新日期: 此页面上的反馈松下热线