玖玖玖视频-亚洲精品1卡2卡3卡-操欧美美女-真实国产乱子伦对白视频不卡-国产乱在线-大胸美女被吃奶爽死视频-久久亚洲美女精品国产精品-天堂在线www天堂在线-久久在精品线影院精品国产-国产又粗又长又大-欧美三级一区二区-超碰在线亚洲-天天cao在线-国产偷倩视频-亚洲啪

智趣黃sir
級別: 探索解密
精華主題: 0
發帖數量: 76 個
工控威望: 112 點
下載積分: 1809 分
在線時間: 38(小時)
注冊時間: 2023-07-06
最后登錄: 2025-10-25
查看智趣黃sir的 主題 / 回貼
樓主  發表于: 2024-12-16 14:22
1,采用匯川的EASy521,程序想實現自動切手動,只動氣缸,怕操作者移動軸,因為軸如果移動的話,沒法監測到是否移動,再切回自動的話,會導致撞車。
本人的思路是如以下程序,切到手動的M3下降沿,記錄當前位置,再切回自動,進行差值計算,只能實現部分,還請各位大神指點。M3是自動模式,M4是自動運行中,F在的問題是可以實現部分功能,但是拍急停的話,就會出現報警,因為急停拍下后,各個軸就立即停止。


自動模式下降沿(CLK := M3,Q => );
IF 自動模式下降沿.Q THEN
    X自動前位置old:=X_Axis.fActPosition;
    Y自動前位置old:=Y_Axis.fActPosition;
    Z自動前位置old:=Z_Axis.fActPosition;
    L自動前位置old:=Lift_Axis.fActPosition;
END_IF;

自動模式上升沿(CLK := M4 ,Q => );
IF 自動模式上升沿.Q then
    X自動前位置new:=X_Axis.fActPosition;
    Y自動前位置new:=Y_Axis.fActPosition;
    Z自動前位置new:=Z_Axis.fActPosition;
    L自動前位置new:=Lift_Axis.fActPosition;

    X自動前位置差值:=X自動前位置new-X自動前位置old;
    X自動前位置點位差值:=X自動前位置new-POSTION_X[X_Axis_AutoAbNum];
    X自動前位置差值絕對值:=ABS(X自動前位置差值);
    X自動前位置點位差值絕對值:=ABS(X自動前位置點位差值);

    Y自動前位置差值:=Y自動前位置new-Y自動前位置old;
    Y自動前位置點位差值:=Y自動前位置new-POSTION_Y[Y_Axis_AutoAbNum];
    Y自動前位置差值絕對值:=ABS(Y自動前位置差值);
    Y自動前位置點位差值絕對值:=ABS(Y自動前位置點位差值);
    
        Z自動前位置差值:=Z自動前位置new-Z自動前位置old;
    Z自動前位置點位差值:=Z自動前位置new-POSTION_Z[Z_Axis_AutoAbNum];
    Z自動前位置差值絕對值:=ABS(Z自動前位置差值);
    Z自動前位置點位差值絕對值:=ABS(Z自動前位置點位差值);
    
        L自動前位置差值:=L自動前位置new-L自動前位置old;
    L自動前位置差值絕對值:=ABS(L自動前位置差值);

END_IF;

IF M4=true AND X自動前位置差值絕對值>E0.5  AND X自動前位置點位差值絕對值>E0.5 THEN
           Alarm[86]:=TRUE;
END_IF;
IF M4=true AND Y自動前位置差值絕對值>E0.5  AND Y自動前位置點位差值絕對值>E0.5 THEN
           Alarm[87]:=TRUE;
END_IF;
IF M4=true AND Z自動前位置差值絕對值>E0.5  AND Z自動前位置點位差值絕對值>E0.5 THEN
           Alarm[88]:=TRUE;
END_IF;
IF M4=true AND L自動前位置差值絕對值>E0.5  THEN
           Alarm[89]:=TRUE;
END_IF;
中文就中文
級別: 探索解密
精華主題: 0
發帖數量: 164 個
工控威望: 196 點
下載積分: 7927 分
在線時間: 166(小時)
注冊時間: 2024-11-13
最后登錄: 2025-11-25
查看中文就中文的 主題 / 回貼
1樓  發表于: 2024-12-16 18:54
要么給氣缸手動寫個權限,要么給軸寫個手動權限。不要瞎動。