2024年5月30日发(作者:)

.

1.

IF (DO[120]=OFF,JMP LBL[88]//机械手有没有在等待点附近 //

2.

3.

4.

5.

6.

7.

8.

DO[101]=OFF

DO[102]=OFF

DO[103]=OFF

DO[104]=OFF

DO[105]=OFF

DO[107]=OFF

将所有用到的输出点全部关闭

9. DO[109]=OFF

10. DO[110]=OFF

11. DO[111]=OFF

12. DO[112]=OFF

13. DO[108]=OFF

14.

15.

16.

IF(DI[111]=OFF AND

DI[112]=OFF JMP LBL[88]

// 如果两台磨床门没有打开,跳转到标签

17.

WAIT DI[107]=ON

// 等待 有料盘 信号打开 //

18.

DO[104]=ON

//

电机正转,送料 //

19.

WAIT DI[108]=ON

// 等待 料盘到位 信号打开 //

20.

DO[103]=ON

//

推料盘气缸推出,将料盘顶住 //

21.

DO[104]=OFF

// 电机正转

停止 //

22.

23.

24. R[1]=0//计数器清零 //

25. R[2]=0 //计数器清零 //

26. R[3]=0 //计数器清零 //

27. (从此处开始,机械手去料盘拿料)

28.

LBL[1]//标签 1//

29.

UFRAME_NUM=4

// 使用

4 号 用户坐标 //

30.

UTOOL_NUM=4

//使用4

号 工具坐标 //

31. J P[1]100% FINE

32. J P[2]100%CNT100

33.

34. PR[5,1]=R[1]*60

35. PR[5,2]=R[2]*60

36. PR[5,3]=0

37. PR[5,4]=0

38. PR[5,5]=0

39. PR[5,6]=0

40.

41. PR[4,1]=R[1]*60

42. PR[4,2]=R[2]*60

'.

88

.

47.

43. PR[4,3]=0

44. PR[4,4]=0

45. PR[4,5]=0

46. PR[4,6]=0

48. CALL HAND1_OPEN

50. L PR[2] 1000mm/sec FINE offset,PR[4]

51. L PR[2] 1000mm/sec FINE offset,PR[5]

53. CALL HAND1_CLOSE

55.

WAIT 1.00 (sec)

56.

57. L PR[2] 1000mm/sec FINE offset,PR[4]

49.

52.

54.

58.

59.

J P[2] 100% CNT100 OFFSET,PR[5]

61.

60.

J P[1] 100% FINE (到此处,机械手去料盘拿料

结束)

62.

IF DI[101]=OFF AND DI[102]=OFF,JMP LBL[66]

夹爪 1 上没有料,跳转到标签 66

63.

// DI[101] 和 DI[102] 同时关闭,说明

64.

WAIT(DI[109]=ON OR DI[110]=ON)// 等待一个允许上下料信号

65.

IF (DI[109]=ON AND DI[102]=ON AND DI[101]=OFF,CALL PART1

下料信号为 ON 并且一号夹爪上有料,呼叫

程序 part1//

66.

//

//如果一号磨床上

67.

IF (DI[110]=ON AND DI[102]=ON AND DI[101]=OFF,CALL PART2

下料信号为 ON 并且一号夹爪上有料,呼叫

程序 part2//

//如果二号磨床上

68.

69.

70. UFRAME_NUM=4

71. UTOOL_NUM=4

72.

73.

74. J P[1] 100% FINE

75. J P[4] 100% FINE

76. L PR[3] 1000mm/sec FINE OFFSET,PR[4]

77. L PR[3] 100mm/sec FINE OFFSET,PR[5]

79.

CALL HAND2_OPEN

80.

81. WAIT

82.

83.

L PR[3] 1000mm/sec FINE OFFSET,PR[4]

1.00 (sec)

(从此处开始,机械手把从磨床取下的料放回料盘)

78.

'.

.

84. J P[4] 100% FINE

85. J P[1] 100% FINE (到此处,机械手放料结束)

86.

87.

88. R[2]=R[2]+1 (Y 方向计数器加 1)

89. R[3]=R[3]+1

90. IF (R[3]=R[5]),JMP LBL[99]

91. IF(R[3] MOD 6=0),JMP LBL[2]

92. JMP LBL[1]

93. LBL[2]

94. R[1]=R[1]+1 (x 方向计数器加 1)

95. R[2]=0 (Y 方向计数器清零)

96.

97. JMP LBL[55]

98. LBL[77]

99. UALM[1] (用户报警 1)

100. LBL[55]

101.

102. JMP LBL[1]

104. LBL[99]

105. DO103]=OFF // 推料盘气缸缩回 //

106. WAIT 2.00 sec

107. DO[105]=ON // 电机反转,料盘回起始位 //

108. WAIT DI[107]=ON

110. END

111.

112. LBL[66]

113. DO[82]=PULSE,3.0 SEC

114. UALM[3] (用户报警

3)

115.

116. JMP LBL[1]

118. END

120. LBL[88]

121. DO[82]=PULSE,8.0 SEC

END

// 将 DO[82]

打开 3 秒 //

// 料盘回到起始位

//

109. DO[105]=OFF //反转关闭 //

103.

117.

119.

'.