sbgisen / vesc

VESC Interface for ROS
Apache License 2.0
44 stars 33 forks source link

Pole pairs in eprm calculations #18

Closed JuliusSustarevas closed 3 years ago

JuliusSustarevas commented 3 years ago

Hi, I might be miles off here, but I think the getRpm() and setRpm functions should also take into account pole pairs. Is this done somewhere else? My empirical test using the velocity interface shows a discrepancy that seems to match the pole pair count. Am I wrong here

ssr-yuki commented 3 years ago

VESC returns velocity information in RPM unit. Thus the discrepancy is not a bug of drivers but one of VESC firmware or its setting, I think.

However, setting motor poles with vesc_tool does not work in my environments. Could you tell me how to measure real RPM in your test?

ssr-yuki commented 3 years ago

I completely understand what you say: VESC returns velocity status in ERPM, i.e. mechanical motor velocity [RPM] * the number of motor pole pairs.

Now I start to work on this issue.

JuliusSustarevas commented 3 years ago

Sorry, for no reply! But yes, thats what I meant, I ended up just adding this as a param on interface, but vesc must know the pole pairs and maybe it can be read from the message.

On Mon, Jun 21, 2021 at 11:12 AM Yuki Onishi @.***> wrote:

I completely understand what you say: VESC returns velocity status in ERPM, i.e. mechanical motor velocity [RPM] * the number of motor pole pairs.

Now I start to work on this issue.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/sbgisen/vesc/issues/18#issuecomment-864911940, or unsubscribe https://github.com/notifications/unsubscribe-auth/AH7P7DDEZOKYPAW2DJM2TBDTT4GA7ANCNFSM44P5MFBA .

ssr-yuki commented 3 years ago

@JuliusSustarevas We have corrected codes for this issue. Please check if you still have interest. Thank you for your report.