几个疑问
如何根据GPS定位信息进行位置控制?
经纬度海拔高度如何转成导航坐标系?
飞控中的航迹点waypoint是基于那个坐标系的点?导航坐标系?
Home点?导航坐标系的原点?电机解锁时的点?xyz?
在代码中寻找答案
文档关于position control 的介绍:
几点个人理解
上电的时刻先建立一个NED全局坐标?
Home点的设定
设置Home点的线程:
// update home from EKF if necessaryFAST_TASK(update_home_from_EKF),
根据以下代码可知,电机解锁时设置当前位置为Home点;
// checks if we should update ahrs/RTL home position from the EKF
void Copter::update_home_from_EKF()
{// exit immediately if home already setif (ahrs.home_is_set()) {return;}// special logic if home is set in-flightif (motors->armed()) {set_home_to_current_location_inflight();} else {// move home to current ekf location (this will set home_state to HOME_SET)if (!set_home_to_current_location(false)) {// ignore failure}}
}