任務描述
案例(項目)背景
一臺威綸通觸摸屏與三菱FX3U的PLC相連,PLC下方配備了一臺步進電機。當前的任務是編寫控制程序,實現對步進電機的有效控制。該步進電機具有8度的步距角,螺距為2mm,且已設置細分參數為4。此外,XX4和X3分別代表負極限、原點和正極限。
控制要求:
1)在手動操作模式下,步進電機應能實現自動的正反轉功能。
2)當按下回原點按鈕時,步進電機需自動返回至原點,且只有在原點回歸完成后,才能進行自動模式操作。
3)在自動模式下,步進電機在完成原點回歸后,通過按下啟動按鈕,將按照預設的位置序列(位置1——位置2——位置3——位置4——位置5——位置1)進行循環運動。
4)若按下急停按鈕,步進電機應立即停止運行,并需要重新執行一次原點回歸指令以重新啟動。
5)在暫停按鈕被按下時,設備將停止動作;當重新按下啟動按鈕時,設備將繼續之前的動作。
元件選型與I/O排布
在控制步進電機的過程中,合理的I/O分配對于確保系統的穩定性和功能性至關重要。通過精心設計的I/O排布,我們可以有效地控制步進電機的各種操作,包括正反轉、回原點、自動循環以及急停等。合理的I/O排布不僅能夠簡化系統的接線,還能提高系統的響應速度和可靠性。
電機接線
在控制步進電機時,電機接線是不可或缺的一環。通過合理的接線方式,我們可以確保電機能夠順暢地接收指令并作出相應的反應。同時,正確的接線也是保障系統穩定性和安全性的重要基礎。在接線過程中,我們需要仔細核對每一根線的連接,確保無誤后方可進行下一步操作。
程序編寫
在實現對步進電機的控制時,程序編寫是不可或缺的一環。通過精心編寫的程序,我們可以實現對電機的精確控制,包括手動控制和自動控制。同時,合理的程序設計也是確保系統穩定性和安全性的關鍵因素。在編寫過程中,我們需要充分考慮電機的特性和需求,確保每一行代碼都符合要求,從而實現對電機的有效控制。
程序編寫涉及幾個指令PLSV、DFLT、DEMUL、DDRVA,有標識說明指令用法
三菱PLC步進驅動器驅動步進電機梯形圖程序:
M8343和M8344作為Y0軸的正負極限特殊繼電器,與外部信號一一對應,確保電機在觸及相應極限時能及時停止。在手動模式M2斷開時,其常閉觸點將導通,此時,觸摸屏上的正反轉按鈕M3和M4可控制可變速脈沖輸出指令,從而實現對電機的正反轉控制,且頻率固定為3000HZ。
此外,還有原點回歸功能:
PLC啟動時,會利用M8002設置爬行速度和回歸速度,分別設定為3000HZ和500HZ。當PLC開機或觸摸屏按下回原點按鈕M5時,會觸發M0驅動原點回歸指令,開始執行原點回歸。一旦回歸完成,M0將復位,同時置位M1以標記原點回歸完成。此時,M1的導通狀態表明原點回歸已成功完成,為后續的自動控制動作提供了必要條件。
數據處理:
在電機控制過程中,需要實時處理各種數據,以確保電機的正常運行和安全停止。這些數據包括但不限于電機位置、速度、加速度等,它們通過傳感器進行采集并傳輸到控制器進行處理。通過精確的數據計算,可以實現對電機的精準控制,包括正反轉、變速、原點回歸等功能。
已知步進電機的步距離角為8°,經過4細分后,每個脈沖所對應的角度變為8°/4=45°。通過計算,我們發現每發送800個脈沖,電機就能完成一圈的轉動。同時,已知螺桿的螺距為2mm,意味著電機每轉一圈,螺桿將前進2mm。由此,我們可以推導出脈沖當量為2mm/800=0025mm。
在數據處理過程中,我們通過將實際距離除以脈沖當量來獲取所需的脈沖數。例如,將位置D20D20D20D20D208轉換為DDDDD8,以進行后續的處理和顯示。特別地,D8340代表了Y0周的位置信息,我們將其通過DFLT指令轉換為浮點數,并乘以脈沖當量,從而得出實際距離,并將其存儲在D210中,以便在觸摸屏上進行直觀的顯示。
在手動操作模式下,當系統完成回原點動作且D100=0時,將執行第一步動作,即激活M7啟動標志位,隨后程序將按順序執行。若按下停止按鈕,D100將被復位,同時原點回歸完成標志也將被重置,啟動標志隨之解除。接下來,我們將探討順序控制的相關內容。
動作的順序編排需要逆序書寫,即第一步動作應置于最后。當動作完成后,M8029會導通,此時通過INC指令使D100加1,后續每一步動作均遵循此模式。當程序運行至第5步時,通過M8029導通M10線圈,同時將M10的常開指令寫入當前行程序之上,利用MOV指令將D100重置為第1步。這樣的編寫方式旨在確保第5步的動作與第一步的定位指令在不同掃描周期內執行,避免沖突。
在觸摸屏上設置M7按鈕時,應選擇復位按鈕類型。按下停止按鈕后,只會斷開M7的激活狀態,而再次按下啟動按鈕時,則會重新激活M7并啟動程序運行。
至此,我們已詳細探討了案例中的動作順序與觸摸屏操作的相關內容。現在,讓我們進一步思考一個問題:如何在觸摸屏上實現速度的調節功能?具體來說,就是設置一個速度輸入框,其單位為mm/s,以便用戶能夠根據需要調整速度。對于這一問題,我們將在后續的討論中深入探討并給出相應的解決方案。


返回頂部
刷新頁面
下到頁底