您的当前位置:首页正文

使用USS协议库

2022-09-17 来源:易榕旅网
使用USS协议库

USS协议库是STEP 7--Micro/WIN指令库,该指令库包括预先组态好的子程序和中断程序,这些子程序和中断程序都是专门为通过USS协议与驱动通讯而设计的。通过USS指令,您可以控制这个物理驱动,并读/写驱动参数。

您可以在STEP 7--Micro/WIN指令树的库文件夹中找到这些指令。当您选择一个USS指令时,系统会自动增加一个或多个相关的子程序(USS1到USS7)。

一、使用USS协议的要求

STEP 7--Micro/WIN指令库提供14个子程序、3个中断程序和8条指令支持USS协议。USS指令使用S7--200中的下列资源:

① 初始化USS协议将Port0专用作USS通讯:

使用USS_INIT指令为Port0选择USS或PPI(USS是指SIMOTIONMicroMaster驱动的USS协议)。在选择使用USS协议与驱动通讯后,Port0不能够再用作其它目的,包括与STEP7--Micro/WIN通讯。

在使用USS协议为应用进行程序开发的过程中,您应该使用CPU 224XP,CPU 226,或EM277 PROFIBUS--DP模块连接到您的计算机中的PROFIBUS CP卡上。STEP 7--Micro/WIN可以利用第二个通讯口在USS协议运行时监视程序。

② USS指令影响所有的与Port 0自由口通讯相关的SM区。 ③ USS指令使用14个子程序和3个中断程序。

④ USS指令使得您的用户程序对存储空间的需求最多可增加3600字节。根据所使用的特定的USS指令,这些指令所支持的路径使控制程序对存储空间的分摊增加至少2300字节,最多3600字节。

⑤ USS指令的变量需要400字节的V存储区。该区域的起始地址由用户指定并保留给USS变量。

⑥ 有一些USS指令还要求16字节的通讯缓存区。作为一个指令的参数,您要为该缓存区提供一个V区的起始地址。建议为每一例USS指令指定一个单独的缓存区。

⑦ 在执行计算时,USS指令使用累加器AC0至AC3。您仍然可以在您的程序中使用这些累加器,只是累加器中的数值会被USS指令改变。

⑧ USS指令不能用在中断程序中。 提示

要将Port0恢复为PPI使之与STEP 7--Micro/WIN通讯,您可以使用另外一条USS_INIT指令重新设定Port 0。

您还可以将S7--200的模式开关设为STOP,这样就复位Port 0的参数。请注意,停止与驱动的通讯也就停止了驱动。

二、计算与驱动通讯的时间要求

S7--200的循环扫描和驱动的通讯是异步的。S7--200在完成一个驱动的通讯传送之前通常要完成若干个循环扫描。以下各因素可帮助您确定所需要的时间:S7--200的当前驱动数、波特率和扫描时间。

有一些驱动在使用参数访问指令时要求更长的延时。参数访问对时间的需求量取决于驱动的类型和要访问的参数。

在使用USS_INIT指令将Port 0指定为USS协议后,S7--200会以表11-1所示的时间间隔轮询所有激活的驱动。您必须为每个驱动设置超时(time--out)参数以完成该任务。

表11-1 通讯时间

波特率 1200 2400 4800 9600 19200 38400 57600 115200 对激活的驱动进行轮询的时间间隔 (无参数访问指令激活) 240毫秒(最大)乘以驱动的数量 130毫秒(最大)乘以驱动的数量 75毫秒(最大)乘以驱动的数量 50毫秒(最大)乘以驱动的数量 35毫秒(最大)乘以驱动的数量 30毫秒(最大)乘以驱动的数量 25毫秒(最大)乘以驱动的数量 25毫秒(最大)乘以驱动的数量 提示

同时只能有一个USS_RPM_x或USS_WPM_x指令激活。要等到每个指令的Done位输出指示完成,才能通过用户逻辑触发一个新的指令。每个驱动只能使用一个USS_CTRL指令。

三、使用USS指令

为了在您的S7--200程序中使用USS协议指令,遵循下列步骤:

1. 在您的程序中插入USS_INIT指令并且该指令只在一个循环周期内执行一次,您可以用USS_INIT指令启动或改变USS通讯参数。

当您插入USS_INIT指令时,若干个隐藏的子程序和中断服务程序会自动地加入到您的程序中。

2. 在您的程序中为每个激活的驱动只使用一个USS_CTRL指令。

您可以按需求尽可能多地使用USS_RPM_x和USS_WPMx指令,但是,在同一时刻,这些指令中只能有一条是激活的。

3. 在指令树中选中程序块图标(Program Block)点击右键(显示菜单)为这些库指令分配V区。选择库存储区选项,显示库存储区分配对话框。

4. 组态驱动参数使之与程序中所用的波特率和站地址相匹配。 5. 连接S7--200和驱动之间的通讯电缆。

确保象S7--200这样的所有连接驱动的控制设备,通过一条短而粗的电缆连接到同一个地或象驱动一样星形连接。

小心

具有不同参考电位的设备相互连接时会在连接电缆中形成电流。这些电流会导致通讯错误或设备损坏。

确保所有通过通讯电缆连接在一起的设备共享一个公共参考点,或者彼此隔离以避免产生电流。

屏蔽层必须接到底盘地或9针接头的针1。建议您将MicroMaster驱动上的接线端2--0V接到外壳地上。

四、USS协议指令 1、USS_INIT指令

USS_INIT指令用来使能、初始化或禁止MicroMaster驱动的通讯。USS_INIT指令必须

无错误地执行,才能够执行其它的USS指令。指令完成后,在继续进行下一个指令之前,Done位立即被置位。

当EN输入接通时,每一循环都执行该指令。

在每一次通讯状态改变时只执行一次USS_INIT指令。使用边沿检测指令脉冲触发EN输入接通。要改变初始化参数,需执行一个新的USS_INIT指令。

通过USS输入值可选择不同的通讯协议:输入值为1指定Port0为USS协议并使能该协议,输入值为0指定Port 0为PPI并且禁止USS协议。

Baud设置波特率为1200、2400、4800、9600、19200、38400、57600或115200。S7--200 CPU版本1.2或之后的版本支持波特率57600和115200。

Acitive指示哪个驱动激活,有些驱动只支持地址0到30。

表11-2 USS_INIT指令的参数。

图11-2所示为对激活的驱动输入的描述和格式。所有标为Active(激活)的驱动都会在后台被自动地轮询,控制驱动搜索状态,防止驱动的串行链接超时。参见表11-1计算各状态间轮询的时间。

当USS_INIT指令完成时,Done位输出接通。Error输出字节中包含该指令的执行结果。表11-6定义了该指令执行可能引起的错误条件。

2、USS_CRTL指令

USS_CTRL指令用于控制激活的MicroMaster驱动。 USS_CTRL指令将选择的命令放到通讯缓冲区内;然后,如果已经在USS_INIT指令的

激活参数中选择了驱动,则此命令将被发送到寻址驱动(驱动参数)中。

对于每一个驱动只能使用一个USS_CTRL指令。

有些驱动只以正值的形式报告速度。如果速度为负,驱动报告一个正的速度值同时反向D_Dir位(方向位)。

EN位必须接通使能USS_CTRL指令。该指令要始终保持使能。 RUN(RUN/STOP)指示驱动是否接通(1)或断开(0)。

当RUN位接通时,MicroMaster驱动接收命令,以指定的速度和方向运行。为使驱动运行,必须满足以下条件:

- 该驱动必须在USS_INIT中激活。 - OFF2和OFF3必须设为0。 - Fault和Inhibit位必须为0。

当RUN断开时,命令MicroMaster驱动斜坡减速直至电机停止。OFF2位用来允许MicroMaster驱动斜坡减至停止,OFF3位用来命令MicroMaster驱动快速停止。

Resp_R(响应收到)位应答来自驱动的响应,轮询所有激活的驱动以获得最新的驱动的状态信息。

每次S7--200接收到来自驱动的响应时,Resp_R位在一个循环周期内接通并且刷新以下各值。

F_ACK(故障应答)位用于应答驱动的故障。当F_ACK从0变1时,驱动清除该故障(Fault)。

DIR(方向)位指示驱动应向哪个方向运动。

表11-3 USS_CTRL指令的参数。

Drive(驱动地址)是MicroMaster驱动的地址,USS_CTRL命令发送到该地址。有效地址为0到31。

Type(驱动类型)选择驱动的类型。对于3系列的(或更早的)MicroMaster驱动,类型为0,对于4系列的MicroMaster驱动,类型为1。

Speed_SP(速度设定值)是驱动的速度,是满速度的百分比。Speed_SP的负值使驱动反向旋转。范围是:--200.0%至200.0%。

Error是错误字节,包含最近一次向驱动发出的通讯请求的执行结果。表11-6定义了该指令执行可能引起的错误条件。

Status是驱动返回的状态字的原始值。图11-3所示为标准状态字的状态位及主反馈。 Speed是驱动速度,是满速度的百分比,范围是:--200.0%至200.0%。 Run_EN(RUN使能)指示驱动是运行(1)还是停止(0)。 D_Dir指示驱动转动的方向。

Inhibit指示驱动上禁止位的状态(0 -- 未禁止,1 -- 禁止)。要清除禁止位,Fault(故障)位必须为零,而且RUN、OFF2和OFF3输入必须断开。

Fault指示故障位的状态(0 -- 无故障,1 -- 有故障)。驱动显示故障代码。(请参考您的驱动手册)。要清除Fault,必须排除故障并接通F_ACK位。

五、USS协议示例程序

六、USS执行错误代码

七、连接并设置3系列MicroMaster驱动

八、连接和设置4系列MicroMaster驱动

因篇幅问题不能全部显示,请点此查看更多更全内容