搜档网
当前位置:搜档网 › ControlNet网络上ControlLogix与PanelView的通信

ControlNet网络上ControlLogix与PanelView的通信

ControlNet网络上ControlLogix与PanelView的通信
ControlNet网络上ControlLogix与PanelView的通信

实验二ControlNet网络上ControlLogix与

PanelView的通信

在完成了1771 I/O到打包机的集成之后,你被告知需要升级操作员面板。操作员面板是一块带有大量按钮和指示灯的面板。指示灯总是烧坏,面板也难于保持清洁。而且,面板与经理办公室离得很近,它看起来又旧又破。你觉得这是采用新型PanelView终端的理想场合。触摸屏式的PanelView易于保持清洁,也可以免去指示灯烧坏的问题。并且,比起现有的操作员面板来说,PanelView能够组态,可以方便地连接到ControlNet网络。

维护经理表达了对于网络性能的一些担心。他说,ControlNet网络上有很多信息传送活动,而他需要在点动一个特定电动机的时候有更好的精度。你说没问题,我们可以将电动机点动信息放在预定带宽(Scheduled Bandwidth)中。

在本实验中,我们将使用PanelBuilder32软件为PanelView创建一个项目,将它能够与ControlNet网络上的ControlLogix系统进行通信。

本实验的主题:

●使用PanelBuilder32软件创建PanelView应用程序

●组态PanelView在ControlNet网络上使用非预定信息(Unscheduled Messages)

●组态PanelView在ControlNet网络上使用预定信息(Scheduled Messages)

我们将利用以下实验设备进行工作:

组态PanelView的第一步是直接在PanelView上设置通信组态(Communication Configuration)。

1.在PanelView上,选择Communication Setup,按回车。

2.设定节点地址为12,Interscan Delay为100ms(触摸当前节点地址,调出一个按键窗

口,改变地址)。

3.按触摸屏的“Restart Terminal”区域。

4.在终端重新启动之后,通过RSLinx的RSWho窗口,检查你是否正在通过ControlNet

网络与PanelView进行通信。

5.通过选择Start → Programs → PanelBuilder32 → PanelBuilder32启动PanelBuilder32软

件。

6.选中“Create New Application”,并按OK,创建一个新的应用程序。

7.将应用程序的名字设为“Boxing Machine”。

8.按照下图,设定PanelView终端类型为PV1000 Color、Touch,通信协议为ControlNet

1.5。

9.点击“Catalog & Revision Numbers”按钮,选择FRN 3.30-3.xx。

10.按OK,接受组态情况,出现PanelView屏幕与相匹配的空白屏幕。

11.从主菜单选择“Application”,打开Terminal Setup对话框,然后从下拉菜单选择

“Settings”。

12.点击“Comms Setup”按钮,打开通信设置画面。

13.设定PanelView的节点地址为12,Interscan Delay为100ms。

14.在Node Name这一列选择“End of Node List”,然后右击鼠标,选择“Insert Node”,

按如下画面设置参数。

注意:在设定“Node Address ”的路径之前,你必须首先将“Node Type ”设为“ControlLogix ”。

15. 点击OK ,保存所做的改变,并返回Terminal Setup 对话框。

16. 点击OK ,跳出Terminal Setup 对话框。

现在已经定义了通信通道,你就可以通过创建变量并将其与PanelView 上显示的物体(如按钮、指示灯)相关联而传送实际的数据了。

打包机的操作员终端需要一系列的指示灯和按钮。每个物体都需要一个能够将其映象到ControlLogix 处理器的变量。你可以在创建物体的时候创建变量,你也可以首先在变量库(Tag Database )里创建所需要的变量。让我们在Tag Database 里输入一个用于指示灯的变量。

17. 从PanelBuilder32的主菜单选择“Tools ”,然后“Tag Editor ”,打开变量编辑器,出现

如下画面:

18. 点击“Tag Name ”,然后同时按“Alt ”和“Ins ”键,以插入变量(你也可以点击鼠标

右键,从菜单选择)。

19. 按下图所示画面设定变量参数。

20. 按回车,接受变量。

21. 关闭变量编辑器。

现在我们要向PanelView 显示屏幕添加一个多状态指示灯。

22. 点击“Screen 1”。

23. 从主菜单选择“Objects ”,然后选择“Indicators ”和“Multistate ”。

24. 移动鼠标至屏幕绘图区,在左上角为多状态指示灯画一个方框。

25. 双击多状态指示灯,将“Read Tag ”区域设为“overtravel_alarm ”(你刚刚创建的变量

——你需要将滚动条拉到底部找到这个变量)。

注意在屏幕左上角的“Read ”选择。尽管我们已经指定这个变量是一个位变量(bit tag ),但“Single Bit ”的选择仍是灰的。这是因为多状态指示灯缺省时具备四种状态(加上错误状态),这显然要比一位所能表示的状态要多。我们来指定状态。

26. 选择“States ”。

27. 选中状态2(将鼠标移动到最左边列的“2”,按左键)。

28. 按Delete 键删除此状态。

29. 同样删除状态3(显示字符为“ST3”)。

现在可以组态我们要使用的两个状态了。

30. 将状态0的显示字符从“ST0”改为“Travel OK ”。

31. 将状态0的物体背景和文字背景设为绿色(Green )。

32. 将状态1的显示字符从“ST1”改为“Overtravel Error ”。

33. 将状态1的物体背景和文字背景设为红色(Red )。

现在我们已经减少了想要表达的状态数量,我们可以返回去将“Read ”区域设为“Single Bit ”。

34. 选择“Properties ”。

35. 将左上角的“Read ”选择设为“Single Bit ”。

36. 将“Trigger State 0 When ”选择设为“Bit=0”。

还有一样东西我们可以定义,那就是我们想要数据通过ControlNet 网络的预定带宽(Scheduled Bandwidth )还是非预定带宽(Unscheduled Bandwidth )进行传送。

37. 选择“Edit Tag ”按钮。

可以看到,信息类型为Unscheduled 。我们将使用非预定(Unscheduled

)数据发送报

警信息。

38.选择OK关闭变量编辑器。

39.选择OK关闭指示灯组态画面。

我们假装已经添加好了老的操作员面板上所有需要替换的指示灯。现在我们添加一个控制按钮。我们将添加点动按钮,就是维护经理担心关注其信息吞吐的那个按钮。考虑到他的担心,我们使用ControlNet网络上的预定带宽(Scheduled Bandwidth)来组态点动按钮(以及一个点动指示灯)。

40.从主菜单选择“Objects”,然后选择“Pushbuttons”和“Momentary”。

41.移动鼠标至屏幕绘图区,在指示灯下方画一个方框。

42.双击你刚刚创建的按钮。

43.将“Write”选择设定为“Single Bit”(一个瞬时按钮有两种状态,因而我们可以马上

选择“Single Bit”。)

44.将“Write Tag”设定为“Jog_Motor”。这个变量暂时还不存在。你需要输入它的名字,

而不能从变量表中选择。你的窗口应该与下图相符。

45.选择“Edit Tag”按钮。

46.确信输入的变量名字为“Jog_Motor”,数据类型(Data Type)是bit。

47.将信息传送类型(Messaging Type)改为Scheduled。

现在我们要定义变量地址。当在PanelView中规划(Schedule)一个变量时,变量地

址必须采用如下格式:

S[I|O]F:W[/B]

其中:

S = 预定(Scheduled)信息传送文件;

I或O = 输入或输出,相对于逻辑控制器而言;

F = 文件号,当前只支持0号文件;

W = 字号,可用范围为0-31。

B = 位号,这是可选项,只在使用位级变量时需要,可用范围为0-15。

当在PanelView中使用预定信息传送时,用户其实也正在设定由逻辑控制器规划使用的一块内存。但是,用户必须同时在控制器这一侧进行组态,并使用RSNetWork for ControlNet软件进行规划。预定信息块只有两种大小可选,8个字和32个字。信息块的大小将在控制器中定义。

注意:你可以将变量的字号设定为0-31中的任何数值。然而,如果你选择的字号大于7,而在控制器中又将信息块的大小只定义为8个字(不是32个字),那么,字号大于7的那些变量的通信将不正常。当你校验PanelView应用程序时,你不会得到任何错误信息,因为PanelView应用程序不能看到控制器,当然也就不能确定你所选择的信息块大小。

48.将变量地址设为“SI0:9/0”,这表明9号字的第0位包含了“Jog_Motor”按钮的信息。

当我们到控制器检查这个按钮时,我们要去检查PanelView所指定的数据块的9号字的第0位。你的窗口应该如下图所示。

49.选择OK关闭变量编辑器。

50.选择“States”。

51.将状态0的显示字符改为“Jog Motor”。

52.选择OK关闭按钮组态画面。

我们来添加一个指示灯,以检验我们是否正在点动电动机。

53.在点动按钮旁边画一个多状态指示灯(主菜单→ Objects → Indicators → Multistate)。

54.双击指示灯,将“Read Tag”设为“motor_jogging”。

55.编辑变量,选择为Scheduled,输入变量地址“SO0:4/3”。

56.选择“States”,删除状态2和状态3。

57.将状态0的显示字符改为“Motor Stopped”。

58.将状态0的物体背景和文字背景设为绿色(Green)。

59.将状态1的显示字符改为“Jogging Motor”。

60.将状态1的物体背景和文字背景设为红色(Red)。

61.现在回到“Properties”,将“Read”选择设为“Single Bit”,将“Trigger State 0 When”

选择设为“Bit=0”。

62.选择OK关闭组态窗口。

我们还要添加的另外一个按钮是“Go to Config Screen”按钮。这是应用程序为了能够访问PanelView 1000C的组态屏幕所必须添加的一个按钮。

63.从主菜单选择“Objects”,然后选择“Screen Selectors”和“Go to Config Screen”。

64.移动鼠标至屏幕绘图区,在右下角画一个按钮方框。

65.在工具条上选择“Save”,以“BoxingMachine”的名字保存应用程序。

现在可以下载应用程序了。

66.从主菜单选择“File”,然后选择“Download”。

67.展开KTC驱动网卡(driver),选择PanelView(节点12)。

68.按OK。你可以看到,PanelView和计算机同时进入了下载模式。

69.完成下载以后,PanelView会重新启动,你的应用程序则会出现几个错误。我们还需

要做四件事情:

-添加PanelView到ControlLogix处理器的I/O树中(这会在ControlLogix中自动生成预定变量[scheduled tags]);

-在ControlLogix的变量数据库(Tag Database)中为非预定(unscheduled)项添加变量;-添加我们所需要的梯形图逻辑;

-使用RSNetWorx for ControlNet软件规划连接。

让我们将PanelView添加到ControlLogix处理器的I/O树中。

70.打开RSLogix5000软件,离线进入项目“Lab_Section_2_Slot_1”。

在上一个实验中,我们已经将1756-CNB[R]/B ControlNet网络接口模块组态在I/O 树中。它现在正在与1771框架进行通信。我们将在它下面添加PanelView。

注意:你希望在ControlNet网络上使用预定信息传送(scheduled messages)的任何I/O设备都必须出现在I/O Configuration文件夹中1756-CNB[R]/B模块的下面。如果你想使用非预定信息传送(unscheduled messages)与一个设备进行通信,那么,该设备不必出现在I/O Configuration文件夹中。你可以同时使用预定信息传送(scheduled messages)和非预定信息传送(unscheduled messages)与一个设备进行通信(就象我们在本实验中做的那样)。

71. 将鼠标移动到I/O Configuration 文件夹的1756-CNB[R]/B 模块处,按右键,从弹出的

菜单上选择“New Module ”。

72. 将滚动条向下拉到底,选择PanelView 。

73. 按OK ,出现“Module Properties ”窗口。

74. 按照下图设置参数:

在离开此窗口前,留意一下“Comm Format ”的选择,这是你为规划信息块选择8个字或32个字的地方。

75. 确信“Comm Format ”已设为“Data – 32 INT ”,按“Next ”。

可以看到,缺省的RPI 为100ms 。这与ControlNet 网络上其它设备的缺省值相比有点高,但是记住,这儿我们是在处理人的交互响应(按按钮、看指示灯),100ms 对于绝大部分这样的场合来说是非常快的。RPI 的可选范围显示在该区域的右边。可以看到,你可以将RPI 最低设到10ms 。考虑到维护经理对于信息吞吐的担心,我们将降低RPI 时间。

76. 将RPI 设为40ms 。

77. 按“Finish ”。

我们已经将PanelView 定义为预定(scheduled )设备,接下来要为非预定(unscheduled )数据添加变量。

78. 双击项目窗口的“Controller Tags ”,打开变量编辑器窗口。

可以看见两个变量:Operator_Panel:I 和Operator_Panel:O 。这是当PanelView 进入I/O 树时自动生成的对应于PanelView 的预定变量。

79. 选择屏幕底部的“Edit Tags ”。

80. 输入Tag Name “overtravel_alarm ”。

81. 将“Type ”设为DINT ,按回车接受变量。

记得PanelView 不支持ControlLogix 的BOOL 型变量,因此,PanelView 中的位tag 必须与ControlLogix 处理器中DINT 的某个位相映像。

下一件事情是要在梯形图中添加一些阶梯来检验我们的应用程序。

82.打开Program“Boxing_Machine”下面的“MainRoutine”,输入下列阶梯:

83.保存文件,然后下载。

84.将处理器切换到RUN模式,模仿overtravel(过冲)情况(拨动1771框架中SIM模

块的最下面一个开关)。

PanelView上的overtravel指示灯是否检测到了这一情况?(应该检测到了。)

85.按“Jog Motor”按钮,检查指示灯是否正确显示,是吗?(应该不是。)

仿真overtravel起作用了,那是因为它使用的是ControlNet网络的非预定带宽(Unscheduled Bandwidth)。点动不工作是因为它使用的是ControlNet网络的预定带宽(Scheduled Bandwidth),而要想让ControlNet网络上的所有东西都经过规划,唯一的办法是使用RSNetWorx for ControlNet软件进行规划。此刻,组态信息已经在设备中,而其在网络上的预定信息传送却还没有经过规划。

86.将ControlLogix处理器切换到Program模式。

87.打开RSNetWorx for ControlNet软件,确信你正与本实验的ControlNet网络在线。

88.选中“Edits Enabled”。

89.从主菜单选择“Network”,然后从下拉菜单中选择“Single Pass Browse”,RSNetWork

会收集来自所有设备的连接信息。

90.点击“Save”,保存网络组态为“Section2”。

91.当RSNetWorx软件结束保存时,将ControlLogix处理器切换到RUN模式。所有关于

PanelView的错误信息都已消失。

92.在PanelView上按“Jog Motor”按钮,观察指示灯工作正常。

你已经完成了从操作员面板到PanelView终端的切换。维护经理对其性能表现非常满意,工厂经理也非常喜欢那个放在他办公室外边的“亮闪闪的高科技新产品”。

你已经完成了本实验的任务,如果时间还早,你可以继续执行附加任务。这些工作并不是实验继续下去所必需的。

附加任务:

1.在PanelView上添加一个用十进制数显示1771-SIM模块上所有开关状态的按钮,令

其为预定(Scheduled)连接。

相关主题