一.自定义mavlink消息:
根据uorb消息(.msg)自定义mavlink消息。
方法为利用mavlink_generator工具在xml文件生成mavlink所需相应的头文件。
二.发送自定义mavlink消息:
1.添加mavlink相应的头文件和和uorb相应的消息到
mavlink_messages.cpp。
- 在mavlink_messages.cpp中创建一个新的类,并实现send等函数。eg:
class MavlinkStreamCaTrajectory : public MavlinkStream
3.附加流类streams_list的到mavlink_messages.cpp底部
eg:StreamListItem *streams_list[] = {
...
new StreamListItem(&MavlinkStreamCaTrajectory::new_instance, &MavlinkStreamCaTrajectory::get_name_static, &MavlinkStreamCaTrajectory::get_id_static),
nullptr
};
4.最后在mavlink_main.cpp加入自定义的消息以及期望的更新频率,根据所使用的mode,不同mode指的是不同mavlink发送对象,airbee中发送给地面站为NORMAL Mode。
eg:configure_stream("CA_TRAJECTORY", 100.0f);