当前位置: 首页 > wzjs >正文

做外贸做几个网站合适搜索引擎的三个技巧

做外贸做几个网站合适,搜索引擎的三个技巧,保定 营销型网站建设,网站怎么查看访问量项目场景: pixhawk 6c飞控板的telem2 外部接负载板 通过MAVLink协议实现读取飞行状态,以及飞控停桨的功能。 调试步骤 pixhawk 6c飞控板接口说明 点击进入 查阅Telem 2 Port分配uart5,配置QGC设置–参数–搜索SERIAL5,修改波特…

项目场景:

pixhawk 6c飞控板的telem2 外部接负载板 通过MAVLink协议实现读取飞行状态,以及飞控停桨的功能。

调试步骤

pixhawk 6c飞控板接口说明 点击进入
查阅Telem 2 Port分配uart5,配置QGC设置–参数–搜索SERIAL5,修改波特率115200(实际要根据飞控那边提供的波特率修改,并且负载端波特率也要一致)和用途MAVLink2,并保存后重启。

在这里插入图片描述
串口默认是1HZ心跳(02)输出,如果接了SUBUS输入,同样也会有1HZ的RC(06)消息输出
在这里插入图片描述
获取飞行状态:
extended status不用拉取 默认就有,为了可靠 可以主动设置一下频率,用MAV_CMD_SET_MESSAGE_INTERVAL 方法

注意:这里的系统ID和系统组件ID是飞控端提供,且不能与地面站设置一样,之前设置了两个1,无数据输出,这里的ID设置2,25是任意赋予的。

void set_message_interval()
{   uint8_t buffer[256]; uint16_t len = 0;uint8_t system_id = 2; // 系统 IDuint8_t component_id = 25; // 地面站组件 IDuint8_t target_system = 1; // 目标系统 IDuint8_t target_component = 1; // 目标组件ID(飞控)mavlink_message_t msg;// 设置消息ID为245(EXTENDED_SYS_STATE)的消息发送间隔为100000微秒(即每0.1秒发送一次)mavlink_msg_command_long_pack(system_id, component_id, &msg,target_system,target_component,MAV_CMD_SET_MESSAGE_INTERVAL, // 命令ID0, // 确认类型MAVLINK_MSG_ID_EXTENDED_SYS_STATE , // 消息ID (param1)100000.0f, // 时间间隔 (微秒)0.0f, 0.0f, 0.0f, 0.0f, 0.0f // 其余参数未使用 (param3 到 param7));// 发送 MAVLink 消息len = mavlink_msg_to_send_buffer(buffer, &msg);Send_nByte(buffer, len);
}

执行set_message_interval()函数之后,将telem2通过USB转TTL插在串口助手上,会有10Hz的飞行状态数据输出
在这里插入图片描述

接受解析飞行状态

// 全局变量,用于存储当前的MAVLink状态
mavlink_status_t mavlink_status;
mavlink_message_t mavlink_msg;
unsigned char fly_state;
unsigned char fly_debug;  //调试用
// 飞行状态解析函数
void parse_mavlink_message(void) {uint16_t i ;if(Cmd_Flag==0)	return;Cmd_Flag	=0;fly_debug=1;for ( i = 0; i <=18; i++) {  //这里的18字节待确认// 逐字节解析MAVLink消息if (mavlink_parse_char(MAVLINK_COMM_3, Cmd[i], &mavlink_msg, &mavlink_status)) {fly_debug=2;                                                               // 检查是否是 EXTENDED_SYS_STATE 消息 (ID: 245)if (mavlink_msg.msgid == 245) {// 解码 EXTENDED_SYS_STATE 消息mavlink_extended_sys_state_t extended_sys_state;mavlink_msg_extended_sys_state_decode(&mavlink_msg, &extended_sys_state);fly_debug=3;// 判断飞行器状态switch (extended_sys_state.vtol_state) {case MAV_VTOL_STATE_TRANSITION_TO_FW://表示VTOL(垂直起降)飞行器的状态,如固定翼模式、多旋翼模式等。                      break;case MAV_VTOL_STATE_TRANSITION_TO_MC:		//表示飞行器是否在地面上、飞行中、起飞中或降落中                       break;default:break;}fly_debug=4;// 判断飞行器是否在飞行或地面状态fly_state=extended_sys_state.landed_state;switch (extended_sys_state.landed_state) {case MAV_LANDED_STATE_IN_AIR:   //飞机正在飞行Active_En_Flag=1;			  //解锁标志Active_En_cmd1=1; 											 break;case MAV_LANDED_STATE_ON_GROUND://飞机在地面状态Active_En_Flag	=0;				//锁定标志Active_En_cmd1=0;                     break;case MAV_LANDED_STATE_TAKEOFF:// 飞机正在起飞Active_En_Flag=0;				Active_En_cmd1=0;                      break;case MAV_LANDED_STATE_LANDING: // 飞机正在降落Active_En_Flag=1;				Active_En_cmd1=1;                        break;default:                       // 未知状态Active_En_Flag=0;				Active_En_cmd1=0;                    break;}}}}
}

飞机与降落伞状态对应关系:
飞行状态未知:降落伞状态锁定
飞行状态地面:降落伞状态锁定
飞行状态飞行:降落伞状态解锁
飞行状态降落:降落伞状态解锁
飞行状态起飞:降落伞状态锁定
停桨逻辑:
降落伞状态解锁&&内部传感器数据(全向姿态80°||Z轴失重0.2g持续0.2s)超过阈值
开伞并10Hz持续发送停桨(消息ID:185)

停桨控制(185)函数 请求飞行状态(245)函数《可不用主动请求》

//停桨控制
void send_flight_termination_command(void)
{uint8_t buffer[128];uint16_t len =0;mavlink_message_t msg;uint8_t system_id = 2;
//地面站系统 IDuint8_t component_id =25;//地面站组件 ID
//目标系统ID(飞控)uint8_t target_system =1;uint8_t target_component=1;//目标组件ID(飞控)mavlink_msg_command_long_pack(system_id, component_id,&msg,target_system,target_component,185,0,1,	//param1:1 表示启用停奖// 其他参数(未使用)0,0,0,0,0,0);len=mavlink_msg_to_send_buffer(buffer, &msg);Send_nByte(buffer,len);
}//请求飞行器发送消息  数据类型ID:245  //未用 不用主动发送
//system_id,component_id不能和飞控的ID重复uint8_t send245_buffer[128];   //设置全局方便DUBUG
void request_extended_sys_state(){uint16_t len =0;uint8_t system_id = 2;     //系统 IDuint8_t component_id =25;   //地面站组件 IDuint8_t target_system =1;  //目标系统 IDuint8_t target_component=1;//目标组件ID(飞控)mavlink_message_t msg;mavlink_msg_request_data_stream_pack(system_id,      // 系统 IDcomponent_id,   // 组件 ID&msg, target_system,    // 目标系统 IDtarget_component, // 目标组件 ID245,            // 请求的数据流类型1,              // 数据流的更新频率1               // 开启数据流);// 发送 MAVLink 消息len=mavlink_msg_to_send_buffer(send245_buffer, &msg);Send_nByte(send245_buffer,len);
}
http://www.dtcms.com/wzjs/108982.html

相关文章:

  • 企业网站一般包括哪些内容怎么做营销推广方案
  • 快速建立网站百度关键词排名工具
  • 网站建设规划怎么写推蛙网络
  • 企业手机网站建设策划书营业推广策略有哪些
  • 公司的网站建设注意点公司在百度怎么推广
  • 表格比较多得网站这么做响应式百度排名服务
  • 做京东商城网站长沙网络推广平台
  • 哈尔滨建站公司seo网络营销推广公司
  • 用凡科做的网站要钱吗图们网络推广
  • 卢湾企业微信网站制作seo优化是什么
  • 做网站是用什么语言的赣州seo优化
  • 鹤壁公司做网站百度人工智能开放平台
  • 做动态网站需要多少钱搜索引擎推广成功的案例
  • 平湖网站建设网络营销的推广
  • 一起做业网站登录江西省seo
  • 青岛美容化妆品外贸网站建设全媒体广告加盟
  • 网站的上一页怎么做的网页点击量统计
  • 快云服务器怎么做网站抖音seo公司
  • 利用百度图片做网站外链链接交易网
  • 网站建设公司现在还挣钱吗拓客最有效方案
  • 深圳专业商城网站制作企业网站推广的方法有
  • 微商城源码seo策略主要包括
  • wordpress插件 图片上传win10优化工具下载
  • 网站模板在线演示怎么做济南最新消息今天
  • 企业网站建设 总结semiconductor
  • 北京网站建设培训班上海全国关键词排名优化
  • 常州网站推广排名一站传媒seo优化
  • 网站如何做实名认证seo排名优化代理
  • 网页设计网站哪个公司好百度搜索排名购买
  • 网站建设公司发展前景销售