菜鳥(niǎo)0001
級(jí)別: 探索解密
![]() |
絕對(duì)值伺服脈沖控制,大家是怎么用的,485讀出編碼器值換算成距離嗎 |
---|---|
|
zhangjialin6
看你的下面
級(jí)別: 探索解密
![]() |
上電,讀取編碼器當(dāng)前位置,寫(xiě)到PLC脈沖軸的當(dāng)前位置特殊寄存器,如三菱FX3U的d8340 |
---|---|
|
夢(mèng)雨天涯
微信hui530527 &
級(jí)別: 網(wǎng)絡(luò)英雄
![]() |
有的伺服可以直接讀取位置,計(jì)算成脈沖就行,有的需要計(jì)算多圈值和單圈值,然后再換算到脈沖 |
|
---|---|---|
|
金蛇郎君czz
車到山前必有路 czz674613079@163.com
級(jí)別: 網(wǎng)絡(luò)英雄
![]() |
學(xué)習(xí)學(xué)習(xí) ![]() |
|
---|---|---|
|
lijinniu
級(jí)別: 工控俠客
![]() |
寫(xiě)了一個(gè)絕對(duì)控制的程序,實(shí)測(cè)過(guò)。用的是絕對(duì)脈沖控制的伺服電機(jī) |
---|---|
本帖最近評(píng)分記錄: |
不知道叫啥啊
不恥下問(wèn)
級(jí)別: 略有小成
![]() |
感謝分享 ![]() |
---|---|
|
皮五
級(jí)別: 工控俠客
![]() |
plc發(fā)送1脈沖=0.01mm, 計(jì)算并設(shè)置好驅(qū)動(dòng)器的分子分母, 讀取驅(qū)動(dòng)器的編碼器應(yīng)該=plc已發(fā)送脈沖 |
---|---|
|
菜鳥(niǎo)學(xué)工控_1
級(jí)別: 工控俠客
![]() |
復(fù)議2樓,絕對(duì)值伺服就選用總線伺服,發(fā)脈沖的PLC,還搞個(gè)絕對(duì)值的伺服,我覺(jué)得是給自己找不自在 ![]() ![]() ![]() |
---|---|
|
工控菜鳥(niǎo)
菜鳥(niǎo)一只
級(jí)別: 論壇先鋒
![]() |
用的都總線絕對(duì)值伺服,沒(méi)用過(guò)脈沖絕對(duì)值的 ![]() |
---|---|
|
沖出槍林彈雨
沖出槍林彈雨
級(jí)別: 家園常客
![]() |
這個(gè)要看看驅(qū)動(dòng)器的寄存器是哪一種,有的是直接給出脈沖總數(shù),有的是分多圈和單圈;樓上的說(shuō)了脈沖總數(shù)的,下面是另一種:485實(shí)時(shí)讀多圈和單圈寄存器數(shù)據(jù);多圈寄存器是電機(jī)轉(zhuǎn)一圈 +1;單圈寄存器就是編碼器硬件精度,比如23位編碼器就是8388608個(gè)脈沖;實(shí)際位置就是 = 多圈寄存器*電機(jī)轉(zhuǎn)一圈的位移距離 + { (當(dāng)前單圈寄存器 - 設(shè)定原點(diǎn)時(shí)的單圈寄存器) / 8388608 }*電機(jī)轉(zhuǎn)一圈的位移距離 程序上注意點(diǎn)一個(gè)是要有個(gè)設(shè)原點(diǎn)的按鈕,就是獲取當(dāng)前單圈寄存器當(dāng)做原點(diǎn)單圈寄存器數(shù);另一個(gè)就是通訊延時(shí)的問(wèn)題,電機(jī)速度為0后的100ms以上數(shù)據(jù)再保存,位置會(huì)比較準(zhǔn) |
|
---|---|---|
|
沖出槍林彈雨
沖出槍林彈雨
級(jí)別: 家園常客
![]() |
當(dāng)然了,也可以直接把總數(shù)設(shè)置為原點(diǎn)位置,以下供參考: PROGRAM Main VAR MultiTurnValue : INT; // 多圈寄存器的值 SingleTurnValue : INT; // 單圈寄存器的值 AbsolutePosition : INT; // 絕對(duì)位置值 MaxSingleTurnValue : INT := 8388608; // 23位編碼器單圈最大值為8388608 END_VAR // 計(jì)算絕對(duì)位置 // 絕對(duì)位置是多圈值乘以單圈的最大值加上單圈值 AbsolutePosition := (MultiTurnValue * MaxSingleTurnValue) + SingleTurnValue; END_PROGRAM |
|
---|---|---|
|