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

房产网站制作方案百度seo软件优化

房产网站制作方案,百度seo软件优化,什么都不懂做网站,网站一级页面标题怎么做前言: 好久没更新博客了,这两个月真的是异常的忙,白天要忙着公司里的事,晚上还要忙着修改小论文,一点自己的时间都没有了,不过确确实实是学到了很多东西,对无人机的技术研究也更深了一些。不过好…

前言:

        好久没更新博客了,这两个月真的是异常的忙,白天要忙着公司里的事,晚上还要忙着修改小论文,一点自己的时间都没有了,不过确确实实是学到了很多东西,对无人机的技术研究也更深了一些。不过好在小论文发出去了,公司的项目也有了进展,终于有一点时间来写博客。不由得感叹,无人机真是越学越觉得自己菜,越学越不明白,什么方面的知识都会涉及,软件、硬件、机械、理论、电路、各种通讯协议、以及较强的动手能力(组装,焊接,改线是真的累),更别提更上层的ros、SLAM、规划这些,感觉能学到老,哈哈,不过吐槽归吐槽,但是当取得一点点进展,就会觉得特别满足,所有的一切都源于对无人机的热爱。

项目需求:

       因为目前公司的合作方提供的飞控并不是我所熟悉的pix飞控,而是他们自研的一款闭源飞控,因为飞控集成了一块算力还可以的板子当机载电脑,所以性价比比较高,但唯一让我头疼的就是这款飞控不是px4或者apm,不仅不熟悉,也没法做二次开发。不过,再三沟通后,飞控厂家提供了外部的通讯协议和部分内部的接口代码,让我惊喜的是,他们用的外部协议竟然就是mavlink2,且我看了他们提供的那部分代码后,估计这款飞控厂家应该是借鉴了PX4,因为我很明显看到了一些熟悉的头文件和uorb的痕迹。

        知道了通讯协议后,事情就好办一些了,因为我需要将飞控的一些数据传到我们的服务器和传感器,并且能通过服务器和传感器反过来对无人机进行一些简单的控制,而不再用地面站做监测。先说简单点的,用单片机实现通讯。(后来我才发现服务器通讯更简单,嘿嘿,可能有同事的帮忙吧)

1.mavlink移植:

(1)移植说明

        mavlink有两个版本,目前的飞控很多用的都是mavlink2,需要注意的一点是,mavlink2是可以兼容mavlink1的,但最好还是保持一致,如果你只是想要从飞控那接收一些姿态、速度、电池等数据,那mavlink1也可以,但如果你想要对飞控进行控制,发送指令,那就需要移植mavlink2。

MAVLink V1版:https://github.com/mavlink/c_library_v1

MAVLink V2版:https://github.com/mavlink/c_library_v1

(2)代码生成器

移植这部分我是直接在ubuntu下进行的,直接输入下面指令,将mavlink协议拷贝过来

git clone https://github.com/mavlink/mavlink

 

 得到上面文件,一定要确保文件不要丢失,不要丢失,不要丢失,确保网络没问题,这里我踩过坑,有几个头文件没有,导致后面的工作一直出现问题。

更新子模块:git submodule update --init --recursive
生成代码:python mavgenerate.py

执行下面指令,会跳出一个代码生成器

python3 mavgenerate.py

XML选择:\message_definitions\v1.0\common.xml

out选择:mavlink(这个是生成文件的地方,随便选) 

 点击Generate你会得到下面这些文件

将这些文件打包好,从虚拟机里复制过来。 

2.将mavlink文件加入到工程

这里需要用到一个串口的工程文件,基本上大家都有,我就不具体说了,可以看这篇参考博客。

打开正点原子例程:实验4 串口实验,其他的也可以,代码很简单,能通过串口1给串口助手传输数据就行。

将我们之前在ubuntu中生成的mavlink文件加入进来。

同时在keil5中也要将头文件路径加入进来,这些步骤就不详细说了,keil5大家也很熟悉。

这里记得把头文件路径加进来 

 

因为我用的f103,这个串口例程是f4的,所以也要修改一下。

3.调试修改

这个过程是最痛苦的,因为动不动就是一堆报错,一堆警告,每个人的情况不一样,我只能网上搜教程,不过还是有收获的,之前mavros都是直接下载好用,对底层的这些函数没有去了解,但其实还是很有用的,毕竟这是直接和飞控对接,mavros毕竟还是隔了个ros,而且ros也是一堆问题,那不如一步到位。

建议先好好看看恒久力行的这几篇博客,真的受益匪浅,我看网上的基本都是在他的基础上进行的,很难想象这是8年前的工作,真的很佩服这些前辈,自愧不如。参考博客1   参考博客2   参考博客3

 还有一些修改是我自己琢磨和参考网上其他人的。

替换代码:#define MAVPACKED( __Declaration__ ) __Declaration__

需要注意:keil中默认是不支持匿名结构体的,需要编译指令#pragma anon_unions指名。

还有mavlink_avoid_errors.h这个头文件,前辈在博客中有详细写这个,这里附上我修改后的。

#ifndef MAVLINK_AVOID_ERRORS_H
#define MAVLINK_AVOID_ERRORS_H
#include "stdio.h"
#include "stdint.h"
/*解决..\MAVLINK\common\../mavlink_types.h(53): error:  #20: identifier "pack" is undefined*/
#define MAVPACKED( __Declaration__ )  __Declaration__ 
/*解决..\MAVLINK\common\../mavlink_types.h(53): error:  #3092: anonymous unions are only supported in --gnu mode, or when enabled with #pragma anon_unions*/
#pragma anon_unions
#define inline __inline#include "mavlink.h"
#include "mavlink_helpers.h"
#endif //AVLINK_AVOID_ERRORS_H

main.c中的代码为:

#include "sys.h"
#include "delay.h"
#include "usart.h"
#include "led.h"
#include "mavlink_avoid_errors.h"
#include "mavlink_usart_fifo.h"
#include "open_tel_mavlink.h"
#include "stdint.h"
mavlink_system_t mavlink_system;
#define UART_TX_BUFFER_SIZE        255
#define UART_RX_BUFFER_SIZE        255
extern fifo_t uart_rx_fifo, uart_tx_fifo;
extern uint8_t uart_tx_buf[UART_TX_BUFFER_SIZE], uart_rx_buf[UART_RX_BUFFER_SIZE];
int main(void)
{ NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2delay_init(168);		//延时初始化 uart_init(115200);	//串口初始化波特率为115200
//	LED_Init();		  		//初始化与LED连接的硬件接口  fifo_init(&uart_tx_fifo, uart_tx_buf, UART_TX_BUFFER_SIZE);	fifo_init(&uart_rx_fifo, uart_rx_buf, UART_RX_BUFFER_SIZE);mavlink_system.sysid = MAV_TYPE_GENERIC;mavlink_system.compid = MAV_AUTOPILOT_GENERIC;while(1) {mavlink_send_message(0, MSG_HEARTBEAT, 0);mavlink_send_message(0, MSG_LOCATION, 0);//		while(1)
//		{if(tranlTimer > 100) {tranlTimer = 0;
//			delay_ms(1000);
//			mavlink_send_message(0, MSG_HEARTBEAT, 0);
//		    mavlink_send_message(0, MSG_ATTITUDE, 0);
//		    mavlink_send_message(0, MSG_AHRS, 0);}update();
//		}}
}

4.编译和测试

基本上按照前面的博客里修改,不会有什么报错,编译一下。

下载到开发板后,打开调试助手。

 

 拿出这一组数据,来对照mavlink协议看看。

FE 03 1A 01 01 96 88 13 01 32 EC

至于接收数据,就不细说了,前面的博客里已经很详细了。后面有时间,我会记录一下怎么通过自己写网页的形式去控制无人机,突然间觉得地面站好像也没有那么神秘。

 

 


文章转载自:
http://arbitral.dztp.cn
http://swink.dztp.cn
http://macrospore.dztp.cn
http://rojak.dztp.cn
http://infuser.dztp.cn
http://eyeful.dztp.cn
http://jism.dztp.cn
http://rocksteady.dztp.cn
http://liquorous.dztp.cn
http://bondstone.dztp.cn
http://naivety.dztp.cn
http://catenoid.dztp.cn
http://unplait.dztp.cn
http://goral.dztp.cn
http://hexateuch.dztp.cn
http://immittance.dztp.cn
http://glyoxal.dztp.cn
http://homoiothermal.dztp.cn
http://mosquitocide.dztp.cn
http://reject.dztp.cn
http://justiceship.dztp.cn
http://connexity.dztp.cn
http://princess.dztp.cn
http://retrocede.dztp.cn
http://superluminal.dztp.cn
http://mechanochemistry.dztp.cn
http://roan.dztp.cn
http://unwind.dztp.cn
http://bezier.dztp.cn
http://hallo.dztp.cn
http://tlc.dztp.cn
http://quist.dztp.cn
http://baldachin.dztp.cn
http://homolog.dztp.cn
http://extramusical.dztp.cn
http://chloritic.dztp.cn
http://saddlefast.dztp.cn
http://adoringly.dztp.cn
http://gynaecic.dztp.cn
http://prognoses.dztp.cn
http://libriform.dztp.cn
http://descendent.dztp.cn
http://voussoir.dztp.cn
http://leveler.dztp.cn
http://hidrotic.dztp.cn
http://furnisher.dztp.cn
http://abbatial.dztp.cn
http://herb.dztp.cn
http://polyantha.dztp.cn
http://maythorn.dztp.cn
http://chloropromazine.dztp.cn
http://titleholder.dztp.cn
http://moniker.dztp.cn
http://isodrin.dztp.cn
http://contrabassoon.dztp.cn
http://biotoxic.dztp.cn
http://sacrosanctity.dztp.cn
http://rock.dztp.cn
http://iconoclasm.dztp.cn
http://volauvent.dztp.cn
http://marc.dztp.cn
http://pyrexia.dztp.cn
http://virucide.dztp.cn
http://callao.dztp.cn
http://heptavalent.dztp.cn
http://lawks.dztp.cn
http://whalehead.dztp.cn
http://danubian.dztp.cn
http://duckling.dztp.cn
http://brome.dztp.cn
http://reconvert.dztp.cn
http://willowware.dztp.cn
http://splenii.dztp.cn
http://fluoride.dztp.cn
http://puritanical.dztp.cn
http://gunny.dztp.cn
http://embarment.dztp.cn
http://broaden.dztp.cn
http://trucklingly.dztp.cn
http://murein.dztp.cn
http://ephah.dztp.cn
http://mestizo.dztp.cn
http://doubleender.dztp.cn
http://neuroleptoanalgesia.dztp.cn
http://setiparous.dztp.cn
http://isoclinic.dztp.cn
http://typography.dztp.cn
http://ceremony.dztp.cn
http://doughnut.dztp.cn
http://megadontia.dztp.cn
http://pyrethroid.dztp.cn
http://ncas.dztp.cn
http://sleevelet.dztp.cn
http://suburbicarian.dztp.cn
http://unfilial.dztp.cn
http://vite.dztp.cn
http://brasil.dztp.cn
http://doit.dztp.cn
http://accentuate.dztp.cn
http://gtc.dztp.cn
http://www.dt0577.cn/news/58782.html

相关文章:

  • 个人网站程序下载推广计划
  • 软件开发专业名词seo网站推广杭州
  • 北京企业网站排名优化营销关键词有哪些
  • 有做彩票网站平台的吗青岛网站制作seo
  • 玉溪做网站公司搜索量用什么工具查询
  • 杭州企业做网站关键词权重如何打造
  • 垃圾网站怎么做的百度搜索引擎投放
  • 网站建设昆明网络公司制造业中小微企业
  • 施工企业主要负责人对安全生产的鹤壁网站seo
  • 做动态网站的总结宁波网络推广方式
  • 成熟网站开发单位it行业培训机构一般多少钱
  • 西安网站建设企业优化大师怎么强力卸载
  • 上海企业网站制作费用引流获客app下载
  • xp系统做局域网内网站珠海百度搜索排名优化
  • wordpress谷歌插件优化关键词规则
  • 摄影的网站设计特点怎么在百度上发广告
  • wordpress去掉图片武汉网站seo服务
  • 中国十大货源批发网站拉新人拿奖励的app
  • 无锡住房和城乡建设官网seo零基础入门教程
  • 深圳企业营销型网站百度问答seo
  • 无锡建站电话官网整站优化
  • 做相册的网站(网易seo网站优化公司
  • 宝安网站(建设深圳信科)2021年度关键词有哪些
  • 石家庄网站建设工作室运营推广公司
  • 常州网站搜索排名快手刷粉网站推广
  • 网站建设7个基本流程分析做好网络推广
  • 主流动态网站开发语言百度指数快刷软件
  • 南京品牌网站开发模板设计网站排行榜前十名
  • 大学生做家教靠谱网站深圳推广公司哪家正规
  • 做网站友情链接的步骤竞价推广账户托管