请大家帮忙看一下以下这段程序中的问题啊,不合理的地方帮忙找出来,告诉小弟!不胜感激!!!
0 ld x000
1 or y05
2 Ani X1
3 OUT Y5
4 LD M8002
5 SET S0
7 STL S0
8 LD Y5
9 SET S20
11 STL S20
12 RST Y2
13 RST Y3
14 RST Y4
15 LD X3
16 AND X5
17 AND X7
18 SET S21
20 STL S21
21 OUT T0 K10
24 MPS
25 AND TO
26 RST Y1
27 MRD
28 ANI X11
29 AND Y5
30 PLSY K100 K0 Y0
37 MPP
38 ANI Y01
39 ANDP X11
41 MPS
42 ANI X12
43 SET S22
45 MPP
46 AND X12
47 SET S24
49 STL S22
50 OUT Y7
51 OUT T1 K10
54 LD T1
55 SET S23
57 STL S23
58 OUT T2 K1O
61 SET Y2
62 SET Y3
63 SET Y4
64 SET Y1
65 LD T2
66 OUT S0
68 STL S24
69 OUT Y7
70 OUT T3 K10
73 LD T3
74 SET S25
76 STL S25
77 SET Y2
78 SET Y3
79 SET Y4
80 OUT T4 K3
83 LD T4
84 SET S26
86 STL S26
87 OUT T5 K20
90 RST Y2
91 RST Y3
92 RST Y4
93 LD X10
94 AND X13
95 SET Y1
96 AND T5
97 AND Y5
98 OUT S21
100 RET
101 END
脉冲输出个数K0不是为0,是说无数个脉冲. 频率5HZ 不知道楼主的电机转的有多慢.....
楼主可以拿上电脑到现场监视运行调试,看问题出在哪里. 看每个生产周期Y0口是否都有输出...看问题是出在程序上还是机台上...
步进很容易玩的,建议楼主增加脉冲输出标志进去.....
内容的回复:k0这个我清楚啊,k5只是当时随便输的一个只值啊,真实的大约在100hz左右,用电脑监控过,确定是y0的输出的问题啊
针对Y0每隔一周期才输出一次啊,建议你做一测试,将程序中的【PLSY K5 K0 Y0】,临时改成未使用的X*单独控制,不受其他输入影响,看看是否仍然是每隔一个周期才输出。
本人有过类似的经历,也与楼主的情况一样,其输出速度相当慢,每个周期输出一个脉冲。经检查发现是程序在执行过程中,数据有更新的“可能”,后来将脉冲输出指令放在程序(所有的寄存器D赋值后)的后面,问题也就解决了。
以上故障,至今我也无法解释,明明是没有任何更新,可程序就是不听使唤。
内容的回复: