今天給大家分享一篇兩軸定位案例分析
注意:此程序非完整運行程序,主要是想讓大家理解定位指令配合變址節約程序步,簡化程序內容用。且兩軸是在同時運行,如是十字滑臺,請設定兩軸相同頻率脈沖輸出.
開機初始化回原點部分
-
使用開機脈沖【M8002】和外部輸入觸點【X11】的脈沖信號來置位【M0】,保持住開機信號或回原點信號;
-
再使用【M0】的常開觸點驅動【ZRN】原點回歸指令;
-
其中K5000表示回歸的速度為5000HZ,K200表示爬行速度,當X1或X0觸點接通時,即開始以爬行速度回原點。
-
【M8029】脈沖結束標志位,當【Y0】和【Y1】脈沖口不再發送脈沖,就復位掉【M0】,以便下次驅動原點回歸指令。
點位采集部分
1.使用外部常開輸入觸點【x3】【x4】【x6】【x7】驅動【DDRVI】32位相對定位指令,達到軸的正反方向運行目的,其中【K999999】表示正向運行,【K-999999】表示反向運行,數值均發送的脈沖數,K999999表示無數脈沖。
2.使用外部輸入觸點【X5】的脈沖信號,利用【DMOV】32位傳送指令把【Y0】脈沖輸出總數寄存器【D8141、D8140】和【Y1】脈沖輸出總數寄存器【D8143、D8142】的當前脈沖數傳送給【D100Z0】【D200Z1】。同時使用【ADD】加法指令把變址寄存器【Z0、Z1】的值不斷加【2】,實現把不同點位所需脈沖數值存放給不同的寄存器
3.注意:每按一次按鈕,就代表存儲一個點的數值,固定的框架內,原點到每次按按鈕的脈沖數,由【D8141、D8140】【D8143、D8142】提供。
兩軸運行部分
1.使用外部輸入觸點【X10】的脈沖信號驅動【MOV】傳送指令把變址寄存器【Z0、Z1】的數值清零,同時驅動【DDRVA】絕對定位指令。其中【D100Z0】【D200z1】為上面采集到的脈沖數,K5000表示兩軸使用同一頻率發送脈沖;
2.使用【M8029】脈沖結束標志位,脈沖發送完成復位【M10】【M12】,使兩軸停止,同時驅動【ADD】加法指令改變變址寄存器【Z0、Z1】的數值,從而實現下一次運行時脈沖數的改變;
3.置位【M13、M14】表示兩軸都停止的時候,驅動一個定時器【T0】,停止一秒,一秒后重新驅動定位指令。
注意:此處兩軸都停止后,可以實現例如:器材切割、鉆孔、或者夾物放物等內容,程序需自己編寫添加。
電子開發網,一個電子技術和工控網站。評論處大家可以補充文章解釋不對或欠缺的部分,這樣下一個看到的人會學到更多,你知道的正是大家需要的。。。