智趣黃sir
級別: 正式會員
|
1,采用匯川的EASy521,程序想實(shí)現(xiàn)自動切手動,只動氣缸,怕操作者移動軸,因?yàn)檩S如果移動的話,沒法監(jiān)測到是否移動,再切回自動的話,會導(dǎo)致撞車。 本人的思路是如以下程序,切到手動的M3下降沿,記錄當(dāng)前位置,再切回自動,進(jìn)行差值計(jì)算,只能實(shí)現(xiàn)部分,還請各位大神指點(diǎn)。M3是自動模式,M4是自動運(yùn)行中。現(xiàn)在的問題是可以實(shí)現(xiàn)部分功能,但是拍急停的話,就會出現(xiàn)報(bào)警,因?yàn)榧蓖E南潞螅鱾軸就立即停止。 自動模式下降沿(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自動前位置點(diǎn)位差值:=X自動前位置new-POSTION_X[X_Axis_AutoAbNum]; X自動前位置差值絕對值:=ABS(X自動前位置差值); X自動前位置點(diǎn)位差值絕對值:=ABS(X自動前位置點(diǎn)位差值); Y自動前位置差值:=Y自動前位置new-Y自動前位置old; Y自動前位置點(diǎn)位差值:=Y自動前位置new-POSTION_Y[Y_Axis_AutoAbNum]; Y自動前位置差值絕對值:=ABS(Y自動前位置差值); Y自動前位置點(diǎn)位差值絕對值:=ABS(Y自動前位置點(diǎn)位差值); Z自動前位置差值:=Z自動前位置new-Z自動前位置old; Z自動前位置點(diǎn)位差值:=Z自動前位置new-POSTION_Z[Z_Axis_AutoAbNum]; Z自動前位置差值絕對值:=ABS(Z自動前位置差值); Z自動前位置點(diǎn)位差值絕對值:=ABS(Z自動前位置點(diǎn)位差值); L自動前位置差值:=L自動前位置new-L自動前位置old; L自動前位置差值絕對值:=ABS(L自動前位置差值); END_IF; IF M4=true AND X自動前位置差值絕對值>E0.5 AND X自動前位置點(diǎn)位差值絕對值>E0.5 THEN Alarm[86]:=TRUE; END_IF; IF M4=true AND Y自動前位置差值絕對值>E0.5 AND Y自動前位置點(diǎn)位差值絕對值>E0.5 THEN Alarm[87]:=TRUE; END_IF; IF M4=true AND Z自動前位置差值絕對值>E0.5 AND Z自動前位置點(diǎn)位差值絕對值>E0.5 THEN Alarm[88]:=TRUE; END_IF; IF M4=true AND L自動前位置差值絕對值>E0.5 THEN Alarm[89]:=TRUE; END_IF; |
---|---|
|
hezhen880924
級別: 略有小成
|
搞這么復(fù)雜干嘛,看下別人怎么寫的,多吸收點(diǎn)經(jīng)驗(yàn)。太復(fù)雜了 多看別人的程序,少走很多彎路,很多人碰到過這個問題,相信人外有人。 [ 此帖被hezhen880924在2024-12-31 09:08重新編輯 ] |
---|---|
|
hezhen880924
級別: 略有小成
|
圖片:
圖片:
自動運(yùn)行按停止,自動打成手動,手動操作完,再打自動改下步號再啟動,軸會重新定位到目標(biāo)坐標(biāo)。 也可以比較之前坐標(biāo)狀態(tài)做提示,真的很簡單,不知道你是不是遇到了特殊情況。 程序按數(shù)字步號比較運(yùn)行,很清晰,哪步有問題就在觸摸屏把流程步號改成前一步號運(yùn)行。 步號運(yùn)行全是數(shù)字,流程好管理,數(shù)字可以定義動作注釋,串行并行都可以運(yùn)行。 [ 此帖被hezhen880924在2025-01-17 09:07重新編輯 ] |
---|---|
本帖最近評分記錄: |