ROS

[ros_control] transmission tag簡介

要控制機器人,可以透過Hardware interface來建構一個控制的介面,可以看這個連結中的第一個範例。

透過Hardware interface,controller manager就可以送指令給馬達,要求馬達到達指定的位置。不過這邊會遇到一個問題,就是如果我的馬達後面有接減速機或其他傳動機構,可能就會造成我送的指令得經過某些換算才會是joint真實的移動量(除非在馬達直接帶動機構的情況下,馬達轉的量才會是joint的轉動量)。

那這件事情跟transmission interface有什麼關係呢?

基本上,transmission是model傳動機構的一個工具:
http://wiki.ros.org/urdf/XML/Transmission#URDF_Transmissions

從上面連結的第一個example中,可以看出foo_motor後面有接一個減速機(減速比是50),正因為這個機構的特性已經在URDF中被建模,所以在這個範例中我可以利用ActuatorToJointPositionHandle這個函式來幫助我從actuator space換算到joint space,如果有多層的傳動機構,這個工具就可以節省許多工作。

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s