夹紧=0 EXIT ENDIF
IF 计时时刻<34 THEN 放松阀=1 上移阀=1 工件夹紧标志=0 EXIT ENDIF
IF 计时时刻<44 THEN 左移阀=1 上移阀=0 EXIT ENDIF
IF 计时时刻>=44 THEN 定时器复位=1 左移阀=0 放松阀=0 EXIT ENDIF ENDIF
IF 定时器启动=0 THEN 上移阀=0 下移阀=0 左移阀=0 右移阀=0 ENDIF
3.4 动画的连接
画面编辑好以后,需要将画面与前面定义的数据对象即变量关联起来,以便运行时,画面上的内容能随变量变化。
3.4.1 指示灯的动画连接
(1)双击启动指示灯,弹出“单元属性设置”窗口。 (2)单击“动画连接”选项卡,进入该页。 (3)单击“组合图符”,显现“?”、“>”按钮。
(4)单击“>”按钮,弹出“动画组态属性设置”窗口。单击“属性设置”选项卡,进入该页,如图3.17所示。
图3.17 动画组态属性设置
(5)选中“可见度”选项卡,其他项不选。
(6)单击“可见度”选项卡进入该页,如图3.18所示。
(7)在“表达式”一栏,单击“?”按钮,弹出当前用户定义的所有数据对象列表,双击“下移阀”。
(8)在“当表达式非零时”一栏,选择“对应图符可见”。 (9)单击“确认”按钮,退出“可见度”设置页。
(10)单击“确认”按钮,退出“单元属性设置”窗口,终止启动指示灯的动画连接。
(11)单击“储存”按钮。
(12)依次对其他指示灯进行设置,按照步骤(1)~(11)。
通过如此的连接,当按下机械手或画面上的启动按钮后,不但相应变量的值会改变,相应指示灯也会显现亮灭的改变。
图3.18 动画组态属性设置 3.4.2 机械手的动画连接
刚才图3.14的画面,只用8个指示灯对机械手的工作状态进行了动画显示。如果让机械手在画面上动起来,看起来就更真实、生动了。为体现
机械手上升、下降、左移、右移、吸球、放松等动作,图中机械手、球、横滑杆等部分需要随动作进行水平移动,球要做垂直移动。
1、垂直移动动画连接
(1)在“实时数据库”中增加一个新变量“垂直移动量”,初值:0,类型:数值型。
(2)单击“查看”菜单,选择“状态条”,在屏幕下方显现状态条。状态条左侧文字代表当前操作状态,右侧显示被选中对象的坐标和大小。
(3)估量总垂直移动距离:在上球底边与下球底边之间画一条直线,按照状态条大小指示可知直线长度即总垂直移动距离。
(4)在脚本程序的开始处增加“动画操纵”语句: IF 下移阀=1 THEN
垂直移动量=垂直移动量+20 ENDIF
IF 上移阀=1 THEN
垂直移动量=垂直移动量-20 ENDIF
(5)在机械手监控画面中选中并双击上球,弹出“属性设置”窗口。 (6)在“位置动画连接”一栏中选中“垂直移动”,单击“垂直移动”选项卡,进入该页。
(7)按照图3.19所示在“表达式”一栏填入:垂直移动量。在垂直移动连接栏填入各项参数。单击“确认”按钮,存盘。
(8)进入运行环境,单击“启动”按钮,观看动作。
图3.19 动画组态属性设置 2、水平移动动画连接
(1)水平移动总距离的测量:在球初始位置和移动目的地之间画一条直线,记下状态条大小指示,此参数即为总水平移动距离。
(2)在数据库中增加一个变量:水平移动量,数值型,初值为0。 (3)在脚本程序中增加以下代码:
IF 左移阀=1 THEN
水平移动量=水平移动量-20 ENDIF
IF 右移阀=1 THEN
水平移动量=水平移动量+20 ENDIF
(5)在机械手监控画面中选中并双击上球,弹出“属性设置”窗口。 (6)在“位置动画连接”一栏中选中“水平移动”,单击“水平移动”选项卡,进入该页。
(7)按照图3.20所示在“表达式”一栏填入:水平移动量。在水平移动连接栏填入各项参数。单击“确认”按钮,存盘。
(8)进入运行环境,单击“启动”按钮,观看动作。
图3.20 动画组态属性设置 3、小球移动动画实现
(1)在实时数据库中填加一个变量:工件夹紧标志,初值:0,类型:开关。
(2)在脚本程序中加入两条语句: IF 夹紧=1 THEN
工件夹紧标志=1 处于吸球状态 ENDIF
IF 放松=1 THEN
工件夹紧标志=0 处于放球状态 ENDIF
(3)选中上球,在“属性设置”页选择可见度。
(4)进入“可见度”页,在表达式一栏填入:工件夹紧标志;当表达式非零时,选择:对应图符可见。意思是:当工件夹紧标志=1时,上球可见;当工件夹紧标志=0时,上球不可见。如图3.21所示。