gitError

今天遇到一个问题,在电脑a上修改了一些文件,并且没有add。突然断电了。我就打开电脑b,git fetch
git merge。修改好了。上传上去。电脑a开起来后。我直接git fetch/git merge。提示错误:

1
2
3
4
5
6
Updating 1463929..0e12104
error: Your local changes to the following files would be overwritten by merge:
changeBgColor/popup.html
changeBgColor/popup.js
Please, commit your changes or stash them before you can merge.
Aborting

所以如果你在本地修改了乱七八糟一堆没用的,就可以用

1
2
3
git reset --hard
git fetch
git merge

就可以了。git reset --hard的作用是把所有文件恢复到上一次commit时的状态。

如果还没git add,想单独恢复一个文件:git checkout filename就可以了。

图表库比较

综述

HIGHTCHARTS

特点

  • highcharts可以运行在任何现代浏览器,包括移动终端以及IE6,标准的浏览器用SVG技术渲染图表,对于遗留的浏览器,则用VML来绘图。

  • 分为三个js:HIGHCHARTS(图表),HIGHSTOCK(针对股票),HIGHMAPS(针对地图)

  • 基于JQuery

优点

  • API手册非常详细,例子也非常详细。设置格式和Echarts差不多。每个设置项都有Jsfiddle的例子,可以直观快速的明白。
  • 比较成熟,有免费的和收费的。例如Twitter,Facebook都在使用.

缺点

  • 体积比较大

Read More

开题报告

选题依据

  1. 四旋翼相比于单旋翼、双旋翼直升机和固定翼飞机机械结构简单。

当旋翼由发动机通过旋转轴带动旋转时,旋翼给空气以作用力矩(或称扭矩),空气必然在同一时间以大小相等、方向相反的反作用力矩作用于旋翼(或称反扭矩),从而再通过旋翼将这一反作用力矩传递到机体上。
为了平衡这个来自空气的反作用力矩,直升机使用了单旋翼尾桨,共轴、纵列、横列、交叉双旋翼等多种布局。设计在结构上比使用多旋翼要复杂。通过改变旋翼桨盘倾角实现滚转、俯仰力矩的变化。通过改变尾桨的拉力大小配合扭矩实现偏航力矩的变化。机械复杂程度高,操作复杂性高。
四旋翼仅仅通过调整不同旋翼之间的相对速度来调节不同位置的推力,并调整各个旋翼的旋转方向平衡反扭力矩,就可以控制飞机维持姿态、或完成各种机动飞行。
相比于固定翼可以垂直起降,降低了起飞着陆的要求,可悬停,机动性强,入门门槛低。
由于结构的简单,如电机,电子调速器,螺旋桨,电池,机架的损坏更容易替换,降低了维修成本。

  1. 目前的四轴是由电动机控制旋翼转速,依靠控制脉冲信号的占空比就能准确控制电压,从而控制电机的稳定输出,响应速度快且精准。如果使用油动机,建立油动机的状态方程需要考虑进气量、进油量、燃油燃烧程度还有燃气膨胀产生的推力之间的关系、机械传动效率等,必然产生延迟,且模型复杂。

  2. 使用电池作为能源的缺点是,质量大,效率低,且电池重量不随着电源消耗而减少,飞机升力全部由电池供给,能量转换效率低下。
    所以不适用于大型的四旋翼。且旋翼的尺寸越大,导致轴距加大,效率取决于旋翼的投影面积与飞机的总投影面积的比值。且尺寸越大,转动惯量(I=mr^2)也越大。从而产生的陀螺力矩也会很大。由于陀螺效应

對於一高速轉動的物體,在迫使它改變空間方向的物體上將受到一陀螺力矩。這種效應稱為陀螺效應。

桨对转速调节的反应也会减慢。降低了灵活度。如果要加大尺寸且不降低响应速度可以使用变距(直升机就是通过这种方法来改变升力),然而变距机械结构也较复杂,尤其是对加工的精密度要求较高。所以总而言之目前的研究方向主要集中于中小型的四旋翼。

  1. 四旋翼是四个电机的输出作为输入量控制6个自由度的输出:滚转轴,俯仰轴,偏航轴的姿态角变化,以及方向上的位移。属于欠驱动系统。具有耦合性和非线性等特点。学科涉及空气动力学、自动控制技术、图像处理技术等具有较高的研究价值。
  2. 应用市场广阔
    很多人通过大疆无人机了解到航拍,电影的空中拍摄可以不再借助直升机,极大降低了航拍的成本和难度,但无人机不仅仅限于航拍,无人机可以成为一个空中的智能载体,携带更多智能设备。不仅搭载摄像机,也可以搭载测量工具,通信工具,或者运送快递。也可以作为军事应用,侦查、监视;农业应用,喷洒农药、获取农田信息;抢险救灾,到达高危领域执行任务。就像智能手机和笔记本电脑,随着制造成本的下降,无人机将会日益成为一种日用品。

国内外研究现状

  1. 沉寂期

在 1990 年以前,惯性导航体积重量过大,动力系统载荷也不够,因此当时多旋翼设计得很大。正如前面分析的,大尺寸的多旋翼并没有那么大优势,与多旋翼相比,固定翼和直升机更适合发展大尺寸。在此之后的 30 年中,四旋翼飞行器的研发没有取得太大的进展,几近沉寂。

  1. 复苏期

1990 年至 2005 年,20 世纪 90 年代之后,随着微机电系统(MEMS, Micro-Electro-Mechanical System)研究的成熟,重量只有几克的 MEMS 惯性导航系统

(惯性导航系统至少包括计算机及含有加速度计、陀螺仪或其他运动传感器的平台(或模块))

被开发运用,使制作多旋翼飞行器的自动控制器成为现实。
虽然 MEMS 惯性导航系统已被广泛应用,但是 MEMS 传感器数据噪音很大,不能直接读取并使用,于是人们又花费大量的时间研究去除噪声的各种数学算法。这些算法以及自动控制器本身通常需要运算速度较快的单片机,可当时的单片机运算速度有限,不足以满足需求。接着科研人员又花费若干年理解多旋翼飞行器的非线性系统结构,并为其建模、设计控制算法、实现控制方案。因此,直到 2005 年左右,真正稳定的多旋翼无人机自动控制器才被制作出来。

  1. 起步期:2005 年至 2010 年

在生产制造方面,德国 Microdrones GmbH 于 2005 年成立,2006 年推出的 md4-200 四旋翼(如图 a)系统开创了电动四旋翼在专业领域应用的先河,2010 年推出的 md4-1000 四旋翼无人机系统,在全球专业无人机市场取得成功。另外,德国人 H.Buss 和 I.Busker 在 2006 年主导了一个四轴开源项目,从飞控到电调等全部开源,推出了四轴飞行器最具参考的自驾仪 Mikrokopter。
在学术方面,2005 年之后四旋翼飞行器继续快速发展,更多的学术研究人员开始研究多旋翼,并搭建自己的四旋翼。

  1. 复兴期:2010 年至 2013 年

经过 6 年努力(2004 年至 2010 年),法国 Parrot 公司于 2010 年推出消费级的 AR.Drone 四旋翼玩具,从而开启了多旋翼消费的新时代。
两年后,大疆推出的小精灵 Phantom 一体机 ( 图 b ) 正是借鉴了其设计理念。伴随着苹果在 iPhone 上大量应用加速计、陀螺仪、地磁传感器等,MEMS 惯性传感器从 2011 年开始大规模兴起,6 轴、9 轴的惯性传感器也逐渐取代了单个传感器,成本和功耗进一步降低,成本仅为几美元。另外 GPS 芯片仅重 0.3 克,价格不到 5 美元。WiFi 等通信芯片被用于控制和传输图像信息,通信传输速度和质量已经可以充分满足几百米的传输需求。同时,电池能量密度不断增加,使无人机在保持较轻的重量下,续航时间达到 15-30 分钟,基本满足日常的应用需求。近年来移动终端同样促进了锂电池、高像素摄像头性能的急剧提升和成本下降。这些都促进了多旋翼更进一步发展。

与此同时,学术界也开始高度关注多旋翼技术。2012 年 2 月,宾夕法尼亚大学的 V.Kumar 教授在 TED 大会上做出了四旋翼飞行器发展历史上里程碑式的演讲,展示了四旋翼的灵活性以及编队协作能力。这一场充满数学公式的演讲大受欢迎,它让世人看到了多旋翼的内在潜能。
2012 年,美国工程师协会的机器人和自动化杂志(Robotics & Automation Magazine,IEEE)出版空中机器人和四旋翼(Aerial Robotics and the Quadrotor)专刊,总结了阶段性成果,展示了当时最先进的技术。

  1. 2013年至今

2012 年初,大疆推出小精灵 Phantom 一体机。Phantom 与 AR.Drone 一样控制简便,初学者很快便可上手。同时,价格也能被普通消费者接受。相比 AR.Drone 四旋翼飞行器,Phantom 具备一定的抗风性能、定位功能和载重能力,还可搭载小型相机。当时利用 Gopro 运动相机拍摄极限运动已经成为欧美年轻人竞相追逐的时尚潮流,因此 Phantom 一体机一经推出便迅速走红。
此时,学术界对于多旋翼的研究更偏向智能化、群体化。2013 年,苏黎世联邦理工学院的 Raffaello D’Andrea 教授在 TEDGlobal 的机器人实验室展示了四旋翼的惊人运动机能。纵观学术界的发展,以 “ 四旋翼 ( quadrotor/quadcoptor ) “ 和 “ 多旋翼(multirotor)” 为关键词的文献在近年成井喷趋势。这些研究往往具备前瞻性,将推动多旋翼产业未来的发展。

Pixhawk Source Code Analyze(1)

Makefile

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
# top level makefile to build SITL for primary vehicle targets. 
# Useful for static analysis tools

all: sitl

sitl: TARGET=sitl
sitl: plane copter rover antennatracker

linux: TARGET=linux
linux: plane copter rover antennatracker

clean: TARGET=clean
clean: plane copter rover antennatracker

# 声明后面的这些命令是伪目标
.PHONY: plane copter rover antennatracker

plane:
$(MAKE) -C ArduPlane $(TARGET)

copter:
$(MAKE) -C ArduCopter $(TARGET)

rover:
$(MAKE) -C APMrover2 $(TARGET)

antennatracker:
$(MAKE) -C AntennaTracker $(TARGET)

参考:Make 命令教程