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