Mavros: NED рдФрд░ ENU рдХреЗ рдмреАрдЪ рдлреНрд░реЗрдо рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХреЛ рджреЛрд╣рд░рд╛рдПрдВ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 10 рдлрд╝рд░ре░ 2015  ┬╖  21рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: mavlink/mavros

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ рдЗрд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ:
http://wiki.ros.org/geometry/CoordinateFrameConventions and
http://www.ros.org/reps/rep-0103.html

рдЧреНрд░рд╛рдлрд┐рдХ рдХреЗ рд╕рд╛рде рдХрдИ рдореБрджреНрджреЗ рд╣реИрдВ (рдФрд░ рдпрджрд┐ рдпрд╣ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕, рдХреЛрдб рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ):

  • ROS рд╣рдореЗрд╢рд╛ рджрд╛рд╣рд┐рдиреЗ рд╣рд╛рде рдХрд╛ рд╣реЛрддрд╛ рд╣реИред ENU рдЧреНрд░рд╛рдлрд┐рдХ (рдиреАрдЪреЗ рдХреА рдкрдВрдХреНрддрд┐) рдмрд╛рдПрдВ рд╣рд╛рде рдХрд╛ рд╣реИ, рдЬреЛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред
  • ROS ENU рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред ENU рдХрд╛ рдЕрд░реНрде рд╣реИ рдкреВрд░реНрд╡-рдЙрддреНрддрд░-рдКрдкрд░, рдЗрд╕рд▓рд┐рдП X рдЕрдХреНрд╖ рдкреВрд░реНрд╡ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░

рдирддреАрдЬрддрди, рд╢реВрдиреНрдп рд░реЛрдЯреЗрд╢рди рдкрд░ рд╢рд░реАрд░ рдХреЗ рдлреНрд░реЗрдо рдФрд░ рд╡рд┐рд╢реНрд╡ рдлреНрд░реЗрдо рдХреЗ рдмреАрдЪ рдХреЛрдИ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдПрдирдИрдбреА рдФрд░ рдИрдПрдирдпреВ рдХреЗ рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдг рдХреНрд░рдорд╢рдГ рд╡реИрд╢реНрд╡рд┐рдХ/рд╕реНрдерд╛рдиреАрдп рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рджреЛрдиреЛрдВ рдлрд╝реНрд░реЗрдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╣реИред

рд╕рднреА 21 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╢рд╛рдпрдж рдХреЛрдИ рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдкрд░ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЛрдб рдХреЛ рдЫрд╛рдирдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛрдЧреАред

@LorenzMeier рдкреАрдЖрд░ # 208 рджреЗрдЦреЗрдВред

@LorenzMeier рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рд╡рд░реНрддрдорд╛рди рд╕рдореНрдореЗрд▓рди рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдо рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ:

рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб NED тЖТ ROS ENU: (xyz)тЖТ(x -y -z) рдпрд╛ (wxyz)тЖТ(x -y -zw)
рд╕реНрдерд╛рдиреАрдп NED тЖТ ROS ENU: (xyz)тЖТ(yx -z) рдпрд╛ (wxyz)тЖТ(yx -zw)

image

рдореИрдВ рдЗрд╕ рдЖрд░реЗрдЦ рдХреА рд╢реБрджреНрдзрддрд╛ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрднреА рдпрд╣реА рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рд╣рд╛рдБ рдпрд╣ рдореЗрд░реА рдпреЛрдЬрдирд╛ рд╣реИред рдореИрдВ рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрдкрдиреА рдереАрд╕рд┐рд╕ рдкрд░ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ рдФрд░ рд╕рдордЭрд╛рдпрд╛ред

рдиреЛрдЯ: рдЗрд╕ рд░реВрдкрд╛рдВрддрд░рдг рдкрд░ рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ рд╣рдо рд╕рд╣рдордд рд╣реБрдП рдереЗ рдФрд░ рдореИрдВ рд░рд╡рд┐рдЬрд╝ рдкрд░ рдЗрд╕рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛ред

рдореБрджреНрджрд╛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдкрд╛рдВрддрд░рдг рдирд╣реАрдВ рд╣реИ, рдмрд▓реНрдХрд┐ рдЬрдм рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдкрд╛рдВрддрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕реЗ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ:
http://wiki.ros.org/geometry/CoordinateFrameConventions and
http://www.ros.org/reps/rep-0103.html

рдЧреНрд░рд╛рдлрд┐рдХ рдХреЗ рд╕рд╛рде рдХрдИ рдореБрджреНрджреЗ рд╣реИрдВ (рдФрд░ рдпрджрд┐ рдпрд╣ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕, рдХреЛрдб рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рддрд╛ рд╣реИ):

  • ROS рд╣рдореЗрд╢рд╛ рджрд╛рд╣рд┐рдиреЗ рд╣рд╛рде рдХрд╛ рд╣реЛрддрд╛ рд╣реИред ENU рдЧреНрд░рд╛рдлрд┐рдХ (рдиреАрдЪреЗ рдХреА рдкрдВрдХреНрддрд┐) рдмрд╛рдПрдВ рд╣рд╛рде рдХрд╛ рд╣реИ, рдЬреЛ рд╕рд╣реА рдирд╣реАрдВ рд╣реИред
  • ROS ENU рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред ENU рдХрд╛ рдЕрд░реНрде рд╣реИ рдкреВрд░реНрд╡-рдЙрддреНрддрд░-рдКрдкрд░, рдЗрд╕рд▓рд┐рдП X рдЕрдХреНрд╖ рдкреВрд░реНрд╡ рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░

рдирддреАрдЬрддрди, рд╢реВрдиреНрдп рд░реЛрдЯреЗрд╢рди рдкрд░ рд╢рд░реАрд░ рдХреЗ рдлреНрд░реЗрдо рдФрд░ рд╡рд┐рд╢реНрд╡ рдлреНрд░реЗрдо рдХреЗ рдмреАрдЪ рдХреЛрдИ рдЕрдВрддрд░ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдПрдирдИрдбреА рдФрд░ рдИрдПрдирдпреВ рдХреЗ рдмреАрдЪ рд░реВрдкрд╛рдВрддрд░рдг рдХреНрд░рдорд╢рдГ рд╡реИрд╢реНрд╡рд┐рдХ/рд╕реНрдерд╛рдиреАрдп рд╕рдВрджрд░реНрдн рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рджреЛрдиреЛрдВ рдлрд╝реНрд░реЗрдореЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд╛рди рд╣реИред

рдореИрдВ рдЬреНрдпрд╛рджрд╛рддрд░ @LorenzMeier рдиреЗ рдЬреЛ рдХрд╣рд╛ рд╣реИ

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдИрдПрдирдпреВ рдХреЛ рдПрдирдИрдбреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдирд╛ рд╡рд╣реА рд╣реИ рдЪрд╛рд╣реЗ рд╡рд╣ рдЧреНрд░рд╛рдЙрдВрдб рдлреНрд░реЗрдо рдпрд╛ рдмреЙрдбреА рдлреНрд░реЗрдо рдХреЗ рд▓рд┐рдП рд╣реЛред рдмреЙрдбреА рдлреНрд░реЗрдо рдкрд░ ENU рдпрд╛ NED рдирд╛рдо рдХрд╛ рдЬреНрдпрд╛рджрд╛ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА ROS рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ рдлреНрд░реЗрдо рд╕реЗ FCU рдореЗрдВ рдХрдирд╡рд░реНрдЯ рдХрд░рдирд╛ рд╣рдореЗрд╢рд╛ рд╡реИрд╕рд╛ рд╣реА рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреИрд╕рд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред

рдореИрдВрдиреЗ рдЕрднреА рддрдХ рдЙрд╕ рд░реВрдкрд╛рдВрддрд░рдг рдХреА рд╡рд┐рдзрд┐ рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХреА рд╣реИ рдЬрд┐рд╕реЗ @mhkabir рдиреЗ рдКрдкрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИред рд╕реЛрдЪреЗрдВ рдХрд┐ рд╣рдореЗрдВ рдЧрдгрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рд╣реА рдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ

@thedinuka рдХреНрдпрд╛ рдЖрдкрдХреЛ рдЬреЛ рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИ, рдЙрд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЖрдк рдкреЗрдВрдЯ рдпрд╛ рдХреБрдЫ рдФрд░ рдореЗрдВ рдПрдХ рдирдпрд╛ рдЪрд╛рдмреБрдХ

рдореЗрд░реЗ рдкрд╛рд╕ рдореВрд▓ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рдЗрд╕реЗ chnage рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ рдПрдХ рдирдпрд╛ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ (рдкреЗрдВрдЯ @mhkabir рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ)ред рджрд╛рдПрдВ рдФрд░ рдмрд╛рдПрдВ рд╣рд╛рде рдХреА рдмрд╛рдд рд╕рд╣реА рд▓рдЧрддреА рд╣реИред рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЕрднреА рднреА рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░реВрдкрд╛рдВрддрд░рдг рд╣реЛрдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рд╕рдВрджреЗрд╣ рд╣реИ, рдФрд░ рдЬрдм рдореИрдВрдиреЗ рдЙрд╕ рдЫрд╡рд┐ рдХреЛ рдЙрд╕ рд╕рдордп рдХрд┐рдпрд╛ рдерд╛, рддреЛ рдореИрдВ рднреА рдЙрдиреНрд╣реЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣рд╛ рдерд╛ред рддреЛ рд╢рд╛рдпрдж рд╣рдореЗрдВ рдХреЛрдб рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ, рдЬреЛ рдореБрдЭреЗ рдпрд╛рдж рд╣реИ рдЙрд╕рдХреЗ рдХрд╛рд░рдг, рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЙрдкрд░реЛрдХреНрдд рд░реВрдкрд╛рдВрддрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

@ TSC21 рджреНрд╡рд╛рд░рд╛ рдЧреНрд░рд╛рдлрд┐рдХ рдХреЗ рд╕рдВрд╢реЛрдзрд┐рдд рд╕рдВрд╕реНрдХрд░рдг рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдЗрд╕реЗ рдереЛрдбрд╝рд╛ рдФрд░ рд╕реЛрдЪрд╛ рд╣реИ рдФрд░ рдпрд╣ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдерд╛ рдЙрд╕рд╕реЗ рдХрд╣реАрдВ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рд▓рдЧрддрд╛ рд╣реИред рдореИрдВ рдПрдХ рддрд░рд╣ рд╕реЗ @ TSC21 рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рд╕рдордиреНрд╡рдп рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЬреЛрдбрд╝реЗ рд╣реИрдВ рдЬрд┐рди рдкрд░ рд╣рдореЗрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

1) рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдХреЗ рдЖрд░рдУрдПрд╕ рдХрдиреНрд╡реЗрдВрд╢рди рд╕реЗ рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдХреЗ рдкрд┐рдХреНрд╕рд╣реЙрдХ рдХрдиреНрд╡реЗрдВрд╢рди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиред
2) рдЕрд░реНрде-рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдХреЗ рдЖрд░рдУрдПрд╕ рдХрдиреНрд╡реЗрдВрд╢рди рд╕реЗ рдкрд┐рдХреНрд╕рд╣реЙрдХ рдХрдиреНрд╡реЗрдВрд╢рди рдСрдл рдЕрд░реНрде рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрдиред

рдЬрдмрдХрд┐ рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ рдлреНрд░реЗрдо рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрдиреНрд╡реЗрдВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ ROS рд╕рд╛рдЗрдб рдФрд░ рдкрд┐рдХреНрд╕рд╣реЙрдХ рджреЛрдиреЛрдВ рддрд░рдл рдкреНрд░рд▓реЗрдЦрди рд╣реИ, рдореБрдЭреЗ рдкрд┐рдХреНрд╕рд╣реЙрдХ рд╕рд╛рдЗрдб рдкрд░ рдЗрдирд░реНрдЯрд┐рдпрд▓ (рдпрд╛ рдЕрд░реНрде рдлрд┐рдХреНрд╕реНрдб) рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ рдлреНрд░реЗрдо рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдП рдЧрдП рдХрдиреНрд╡реЗрдВрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рдорд┐рд▓реАред рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рд╣реЛрддрд╛ рддреЛ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдкрд┐рдХреНрд╕рд╣реЙрдХ рдХреА рддрд░рдл, рдЬреАрдкреАрдПрд╕ рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрд░реНрде рдлрд┐рдХреНрд╕реНрдб рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ рдлреНрд░реЗрдо рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдХреЗ рд╢реБрд░реБрдЖрддреА рдУрд░рд┐рдПрдВрдЯреЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ 100% рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдорд╛рдЬрд░рд╛ рд╣реИрдВред рддреЛ рдХрд┐рд╕реА рднреА рдЧрд▓рддреА рдФрд░ рднреНрд░рдо рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрднреА рдХреЗ рд▓рд┐рдП, рдХреЗрд╡рд▓ рдмреЙрдбреА рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВред

рдЖрд░рдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдкреНрд░рд▓реЗрдЦрди [1] рдФрд░ рдкрд┐рдХреНрд╕рд╣реЙрдХ рдХреЗ рд▓рд┐рдП [2] рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рд╣реБрдП, рдореИрдВрдиреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЖрд░реЗрдЦ рдмрдирд╛рдпрд╛ рд╣реИред
body_coordinate_frames

рдПрдХ рдмрд╛рд░ рдЬрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЙрдкрд░реЛрдХреНрдд (1) рдФрд░ (2) рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдордиреНрд╡рдп рдлреНрд░реЗрдо рдЖрд░реЗрдЦ рд╕рддреНрдпрд╛рдкрд┐рдд, рдкреБрд╖реНрдЯрд┐ рдФрд░ рд╕рд╣рдордд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рдорд╛рд╡рд░реЛрд╕ рдкрдХреНрд╖ рдкрд░ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЧрдгрд┐рдд рдмрд╣реБрдд рд╕реАрдзреЗ рдЖрдЧреЗ рд╣реИред

[рез] http://www.ros.org/reps/rep-0103.html
[реи] https://pixhawk.org/dev/know-how/frames_of_reference

рдХреГрдкрдпрд╛ #148 (рд╕рд╣рд╕рдВрдпреЛрдЬрди рд░реВрдкрд╛рдВрддрд░рдг) рднреА рджреЗрдЦреЗрдВред

рдпрд╣ рд░реЛрд╕-рдЗрдиреНрдлреНрд░рд╛рд╕реНрдЯреНрд░рдХреНрдЪрд░/рдкреНрд░рддрд┐рдирд┐рдзрд┐#95 . рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ

рдХреНрдпрд╛ рд╣рдо рдЗрд╕рдХреЗ рд╕рд╛рде рдХрд╣реАрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЧрдП? рдХреНрдпрд╛ ENU/NED, рдмреЙрдбреА/рд╡рд░реНрд▓реНрдб рдлреНрд░реЗрдо рд╕реЗ рд╡рд░реНрддрдорд╛рди рд░реВрдкрд╛рдВрддрд░рдг рд╕рд╣реА рд╣реИрдВ? рдореИрдВ рдЗрд╕ рдХрд╛рд░рдг рд╕реЗ рдкреВрдЫ рд░рд╣рд╛ рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рджреГрд╖реНрдЯрд┐ рдбреЗрдЯрд╛ рднреЗрдЬрддреЗ рд╕рдордп @blackcoder рдХреЛ FCU рдкрд░ рдПрдХ рдпреЙ рд░реЛрдЯреЗрд╢рди рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЪреАрдЬреЗрдВ рдЧрд▓рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
@рд╡реВрди , @mhkabir , @tonybaltovski , @thedinuka рдкрд┐рдВрдЧ!

@thedinuka рдореБрдЭреЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧ рд░рд╣рд╛ рд╣реИред

рдЕрдЧрд░ рдореБрдЭреЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдирд╛ рд╣реЛрддрд╛ рддреЛ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ Pixhawk рдХреА рддрд░рдл, > GPS рдХреА рдЕрдиреБрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЕрд░реНрде рдлрд┐рдХреНрд╕реНрдб рдХреЛрдСрд░реНрдбрд┐рдиреЗрдЯ рдлреНрд░реЗрдо > рдмреЙрдбреА-рдлрд┐рдХреНрд╕реНрдб рдлреНрд░реЗрдо рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдЕрднрд┐рд╡рд┐рдиреНрдпрд╛рд╕ рдХреЗ рд╕рд╛рде рд╕рдВрд░реЗрдЦрд┐рдд рд╣реЛрддрд╛ рд╣реИ

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЬреАрдкреАрдПрд╕ рдХреА рдЬрд░реВрд░рдд рдирд╣реАрдВ рд╣реИред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдореИрдЧ рд╕реЗ рд╡реИрд╢реНрд╡рд┐рдХ рдпреЙ рд╕рдВрджрд░реНрдн рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдЗрд╕ рдпреЙ рджреНрд╡рд╛рд░рд╛ рдШреБрдорд╛рдП рдЧрдП рдИрдПрдл рдлреНрд░реЗрдо рдХреЛ рдШреБрдорд╛рдпрд╛ рдЬрд╛рдПред

рдирдорд╕реНрддреЗ,
рдореИрдВ рдорд╛рд╡рд░реЛрд╕ рдореЗрдВ mocap_optitrack рд╕реЗ Vision_pose/pose рддрдХ рд╡рд┐рд╖рдп рдХреЛ рд░реАрдореИрдк рдХрд░рддрд╛ рд╣реВрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдордПрд╡реА рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЙрдбрд╝ рдирд╣реАрдВ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛрдб рдмрджрд▓рддрд╛ рд╣реВрдВ:
Vision_position_estimate(stamp.toNSec()/1000,
рд╕реНрдерд┐рддрд┐ред рд╡рд╛рдИ (), рд╕реНрдерд┐рддрд┐ред рдПрдХреНрд╕ (), - рд╕реНрдерд┐рддрд┐ред рдЬреЗрдб (),
рд░реЛрд▓, -рдкрд┐рдЪ, -рдпреЙ); // ??? рдХреГрдкрдпрд╛ рдЬрд╛рдВрдЪреЗрдВ!
рдкреНрд░рддрд┐
Vision_position_estimate(stamp.toNSec()/1000,
рд╕реНрдерд┐рддрд┐ред рд╡рд╛рдИ (), рд╕реНрдерд┐рддрд┐ред рдПрдХреНрд╕ (), - рд╕реНрдерд┐рддрд┐ред рдЬреЗрдб (),
рд░реЛрд▓, -рдкрд┐рдЪ, -рдпреЙ + 1.57);
рдпрд╛рдиреА рдЪреЗрдВрдЬ -рдпреЙ рдЯреВ -рдпреЙ + 1.57ред
ENU рд╕реЗ NED рддрдХ рдмреЙрдбреА рдлреНрд░реЗрдо рдкрд░ рдмрд╛рддрдЪреАрдд рдХрд░рддреЗ рд╕рдордп, рдорд╛рд╡рд░реЛрд╕ рдЕрдм рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ
(xyz)-->(x,-y,-z)
(w,x,y,z)-->(x,-y,-z,w), рддреЛ рд╣рдореЗрдВ рдорд┐рд▓рддрд╛ рд╣реИ
рдИрдПрдирдпреВ ---> рдиреЗрдб
рд░реЛрд▓ ----> рд░реЛрд▓
рдкрд┐рдЪ ----->-рдкрд┐рдЪ
рдпреЙ -----> - рдпреЙред
рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЧрд▓рддреА рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдпреЙ рд╡рд┐рд╢реНрд╡ рдлреНрд░реЗрдо рдореЗрдВ рдПрдХреНрд╕ рдЕрдХреНрд╖ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реИ (рдЬрдм рдмреЙрдбреА рдлреНрд░реЗрдо рдореЗрдВ рдПрдХреНрд╕ рд╡рд┐рд╢реНрд╡ рдлреНрд░реЗрдо рдореЗрдВ рдПрдХреНрд╕ рдХреЗ рд╕рд╛рде рд╣реИ, рддреЛ рдпреЙ 0 рд╣реИ), рдФрд░ 90 рдбрд┐рдЧреНрд░реА рд░реЛрдЯреЗрд╢рди рд╣реИред рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ -yaw + 1.57 рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЕрд░реНрдерд╛рдд
рдИрдПрдирдпреВ ---> рдиреЗрдб
рд░реЛрд▓ ----> рд░реЛрд▓
рдкрд┐рдЪ ----->-рдкрд┐рдЪ
рдпрд╡ ----->-рдпреЙ+1.57.
рдореИрдВрдиреЗ рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рдж, рдорд╛рд╡ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдЙрдбрд╝ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрдиреНрдп рдкреНрд▓рдЧрдЗрди рднреА рдРрд╕рд╛ рд╣реА рд╣реИред

@congleetea рдЬреЛ local_position рд╡рд┐рд╖рдп рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓рд╛ рдбреЗрдЯрд╛ рд╕рд╣реА рджрд┐рд╢рд╛ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ?

рдХреГрдкрдпрд╛ #148 (рд╕рд╣рд╕рдВрдпреЛрдЬрди рд░реВрдкрд╛рдВрддрд░рдг) рднреА рджреЗрдЦреЗрдВред

рд╣рдореЗрдВ рдЗрд╕реЗ рднреА рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдкреАрдЖрд░ #317 рдкрд░рд┐рд╡рд░реНрддрди рд░реВрдкрд╛рдВрддрд░рдгред

рдореИрдВрдиреЗ рдЗрд╕ рдмрд╛рддрдЪреАрдд рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ

рдПрдирдИрдбреА (рдкрд┐рдХреНрд╕рд╣реЙрдХ) -> рдИрдПрдирдпреВ (рдЖрд░рдУрдПрд╕)
(рдПрдХреНрд╕, рд╡рд╛рдИ, рдЬреЗрдб) -> (рдПрдХреНрд╕, -рд╡рд╛рдИ, -рдЬреЗрдб)

рдИрдПрдирдпреВ (рдЖрд░рдУрдПрд╕) -> рдПрдирдИрдбреА (рдкрд┐рдХреНрд╕рд╣реЙрдХ)
(рдПрдХреНрд╕, рд╡рд╛рдИ, рдЬреЗрдб) -> (рдПрдХреНрд╕, -рд╡рд╛рдИ, -рдЬреЗрдб)

рдпрд╣ rviz рдФрд░ real fling рджреЛрдиреЛрдВ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

@supermice рдЬреЛ #317 рдХреА рдкреБрд╖реНрдЯрд┐ рдХрд░рддрд╛ рд╣реИ, рдзрдиреНрдпрд╡рд╛рдж! :)

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

Phadadev picture Phadadev  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

Tutorgaming picture Tutorgaming  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

TSC21 picture TSC21  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jannsta1 picture jannsta1  ┬╖  7рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

zhahaoyu picture zhahaoyu  ┬╖  12рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ