flylinux 发表于 2013-6-15 05:23:52

飞控研究陷入pid调参,止步不前,恐怕需要转换思路

本帖最后由 flylinux 于 2013-6-15 07:05 编辑

pid调参永远调不好,动力学模型才是正道,动力学参数获取的关键在于测试方法和样本的数量

aki_studio 发表于 2013-6-15 06:18:55

楼主似乎有点心得,共享些测试方法和数据来看看,
别只在一旁对PID指手画脚 {:lol:}

无级电工 发表于 2013-6-15 07:16:41

是的,你得熟悉那个应用领域。这就好比:印度有大把软件高手,却搞不定三代机的电传飞控软件。因为那种软件,与其说是软件工程师写出来的,不如说是风洞吹出来的。

flylinux 发表于 2013-6-15 07:16:48

本帖最后由 flylinux 于 2013-6-15 08:01 编辑

aki_studio 发表于 2013-6-15 06:18 static/image/common/back.gif
楼主似乎有点心得,共享些测试方法和数据来看看,
别只在一旁对PID指手画脚...

以前做过二阶系统,刚接触飞行器不久,没太多研究,只是提出个思路,看看研究的可行性,高精度控制,必须有动力学方程

flylinux 发表于 2013-6-15 07:22:06

所以目前以支架,飞控,电池,云台等模块化拼装成的Quadrocopter,基本上不能实现高精度控制

kmani 发表于 2013-6-15 09:11:51

flylinux 发表于 2013-6-15 07:16 static/image/common/back.gif
以前做过二阶系统,刚接触飞行器不久,没太多研究,只是提出个思路,看看研究的可行性,高精度控制,必须 ...

问题是其一:你的动力学方程会不会很准确?其二:模型在运动中发生变化时,你的动力学方程是否能自适应?
除此以外,高精度的控制必须有动力学方程,这一条,我相信很多人是不会同意的。有很多优秀的控制算法是没有基于模型的。

lyyyuna 发表于 2013-6-15 09:14:58

基于数据的比基于模型的好吧。。

Flyback 发表于 2013-6-15 09:51:25

建模并且做实物模型测试架才是正途

如果楼主想一个人搞定这些事情,那我只能说难度不小

aki_studio 发表于 2013-6-15 11:35:55

天底下应该没有这么完美的方程,不然岂不是只要能造歼10,就能造F22了?
所以,我的观点是:敲定一个方案,只讨论一套配置(马达、桨、传感器、处理器),才能说的过去

笑笑我笑了 发表于 2013-6-15 11:43:50

建模是最不靠谱的事.LZ应该看看状态空间之类的东西了,毕竟飞行器是多维的.

flylinux 发表于 2013-6-15 14:01:07

本帖最后由 flylinux 于 2013-6-15 14:32 编辑

kmani 发表于 2013-6-15 09:11 问题是其一:你的动力学方程会不会很准确?其二:模型在运动中发生变化时,你的动力学方程是否能自适应? ... 不管模型多么不精确,误差多大,预测的接近程度也比pid要高的多,控制中的体现就是响应时间快和超调量小。很多控制的非常好的非线性系统没有模型,那是用方程组或高阶函数等代替了,在一定范围内就是反应系统原本的模型。遗传算法,蚁群算法,模拟退火,神经网络,模糊控制,机器学习,卡尔曼,小波,支持向量机等等技术的使用都是一个目标——找出最接近系统本身的模型

flylinux 发表于 2013-6-15 14:04:12

本帖最后由 flylinux 于 2013-6-15 14:19 编辑

Flyback 发表于 2013-6-15 09:51 建模并且做实物模型测试架才是正途 如果楼主想一个人搞定这些事情,那我只能说难度不小 ... 精度和投入的资源成指数关系

flylinux 发表于 2013-6-15 14:10:21

本帖最后由 flylinux 于 2013-6-15 14:21 编辑

笑笑我笑了 发表于 2013-6-15 11:43 建模是最不靠谱的事.LZ应该看看状态空间之类的东西了,毕竟飞行器是多维的. ... 不管什么系统,t0时刻状态加控制量,得到t1时刻理论状态,与t1实际状态越接近,性能就越高,难度在于对各种变化的模型建立和参数测试方法

flylinux 发表于 2013-6-15 14:14:44

本帖最后由 flylinux 于 2013-6-15 14:24 编辑

aki_studio 发表于 2013-6-15 11:35 天底下应该没有这么完美的方程,不然岂不是只要能造歼10,就能造F22了? 所以,我的观点是:敲定一个方案, ... 对,四轴发展的趋势不是像兼容机一样的拼装,应该是成套,和飞机一样,都是某系列某型号,型号确定结构就确定,这也是大疆的性能绝对不可能超过flying cam的原因

ngc501 发表于 2013-6-15 16:33:50

PID还是很强大的,当然调好也不容易,但是相比于利用辨识等方法建立精确的模型,或者利用某种非线性控制方法,工作量还是小多了。当然,如果是学术研究就另当别论了

monkeynav 发表于 2013-6-15 17:14:12

flylinux 发表于 2013-6-15 14:01 static/image/common/back.gif
不管模型多么不精确,误差多大,预测的接近程度也比pid要高的多,控制中的体现就是响应时间快和超调量小。 ...

LZ理论搞过头了

把测量数据传回来看看就清楚了,你的四轴振动一定很大

PID参数细调,与其说是和动力学模型适应,不如说是与振动模态适应

learner123 发表于 2013-6-16 19:05:20

楼主理论还没到位,先好好学,不要动不动就怀疑。
此外,楼主调参数的方式是瞎撞式的盲调,全靠运气和民科也差不多了

ilove305 发表于 2013-6-16 22:47:37

kmani 发表于 2013-6-15 09:11 static/image/common/back.gif
问题是其一:你的动力学方程会不会很准确?其二:模型在运动中发生变化时,你的动力学方程是否能自适应? ...

问下,那你们姿态解算后控制的主要思路是什么?

flylinux 发表于 2013-6-18 23:27:10

learner123 发表于 2013-6-16 19:05 static/image/common/back.gif
楼主理论还没到位,先好好学,不要动不动就怀疑。
此外,楼主调参数的方式是瞎撞式的盲调,全靠运气和民科 ...

瞎撞式盲调和民科思维方法如下{:lol:}
三维动力学建模,降阶处理,全局视觉实际飞行测试(近似opencv组上玻恩大学实验环境),参数辨析,延迟预测,无风控制算法测试,增加延伸结构风力探测器,人造风力对姿态影响测试,风力突变模型辨析

aki_studio 发表于 2013-6-18 23:54:53

我正在调PID,才调2天已经炸了6个桨了,楼主快快多写点有实际内容的帖子来{:lol:}

另外,桨的拉力要怎么计算?烦请各位解答了,提问帖在这里
http://www.amobbs.com/thread-5538605-1-1.html

kmani 发表于 2013-6-19 01:01:02

flylinux 发表于 2013-6-18 23:27 static/image/common/back.gif
瞎撞式盲调和民科思维方法如下
三维动力学建模,降阶处理,全局视觉实际飞行测试(近似opencv组上 ...

亲~你路走的有点偏了。
辨识模型系统到可以,但是辨识干扰就不太靠谱了。
你的观点很像两个过气的理论。
40年代的 绝对不变性原理;70年代的内模原理。

flylinux 发表于 2013-6-19 02:25:24

本帖最后由 flylinux 于 2013-6-19 02:50 编辑

kmani 发表于 2013-6-19 01:01 static/image/common/back.gif
亲~你路走的有点偏了。
辨识模型系统到可以,但是辨识干扰就不太靠谱了。
你的观点很像两个过气的理论。


首先最重要的是实际数据的获取,也就是实际飞行中不同的初始姿态下,由不同控制量产生的一段时间内(稳定后)离散的实际姿态数据,这个拿到手后基于数据调试
即使是用pid调参数,基于实际数据,在matlab里面调,效率也高得多(直接规定期望目标,参数自动循环,测试效率超过 '改参数-灌程序-操作-试飞,再改-再试。。。。' 这种模式多少倍,保守估计上亿倍是有的吧,i5 的cpu一次时间纳秒级,你操作一次最少5分钟)
选用何种方法,模型,理论,那都是基于数据来的,但动力学模型肯定少不了,至于干扰,震动,气流影响这些随机过程,有能力的可以继续深入,想省事用pid也行,即使到这一步,飞行器的性能起码要提高几个数量级
ted视频里面的飞行器稳定性怎么来的,没动力学模型预测t0~tn时刻位姿,怎么找到相交点,他怎么能够打乒乓球,怎么玩倒立摆?虽然他们用的是全局视觉,他们的主业是机器视觉、机器人和人工智能,飞行器只不过是验证算法理论的小工具,但我们还是觉得很nb,很神奇
至于理论过气与否,那是适用范围的变化和主流研究的热度,写paper用确实没面子,但针对具体问题,没有过不过气,只有恰不恰当
神经网络,10年前被鄙视的东西,但你看现在的深度学习,用集群分析大数据,阿里巴巴找不到人急得跳脚,度娘去硅谷驻扎抢人

aki_studio 发表于 2013-6-19 06:30:35

flylinux 发表于 2013-6-19 02:25 static/image/common/back.gif
首先最重要的是实际数据的获取,也就是实际飞行中不同的初始姿态下,由不同控制量产生的一段时间内(稳定 ...

那个打乒乓球的视频我也看了,地上好像摆了个kinect(个人猜测),微软是有提供sdk的,不然光靠三五个小伙子写出这么牛逼的东西,也太逆天了

aki_studio 发表于 2013-6-19 15:09:03

有点理解楼主的思想了,
就是说,要比较t1时刻跟t2时刻的姿态差,然后得出各个轴的加速度值,根据这个值判断电机是否偏差,然后再次微调…,是这意思吗?
应该可行,但是貌似对时间的精度,传感器姿态的精度,要求都挺高的

flylinux 发表于 2013-6-19 15:21:16

aki_studio 发表于 2013-6-19 06:30那个打乒乓球的视频我也看了,地上好像摆了个kinect(个人猜测),微软是有提供sdk的,不然光靠三五个小 ...

kinect是通过rgb-d数据识别手势用的,距离5~30米,视角60度,30贞,linux下只能用openni库,目测飞行速度3米每秒,检测精度5毫米最少需要两个600帧高速摄像头双目测距,分辨率640*480以上,或者其他测距设备,高速摄像头和采集卡要上万美元,三维激光雷达十多万美元,这表演都是钱堆起来的

flylinux 发表于 2013-6-19 16:04:00

aki_studio 发表于 2013-6-19 15:09有点理解楼主的思想了,就是说,要比较t1时刻跟t2时刻的姿态差,然后得出各个轴的加速度值,根据这个值判 ...

精度高低是看你的控制要求,假设最大飞行速度5米每秒,控制精度在一毫米,各种传感器,电调和指令发送频率必须在5000hz以上,主运算器计算后发送pwm,至少要a9,电调可能也得stm32驱动

flylinux 发表于 2013-6-19 22:55:48

本帖最后由 flylinux 于 2013-6-19 22:56 编辑

TED大会 《四旋翼直升机的惊人运动机能》中英文字幕
http://swf.ws.126.net/openplayer/v01/-0-2_M90KU15HG_M90KUKOK4-vimg1_ws_126_net//image/snapshot_movie/2013/6/Q/O/M90LA8FQO-.swf

kmani 发表于 2013-6-20 17:52:20

本帖最后由 kmani 于 2013-6-20 22:55 编辑

flylinux 发表于 2013-6-19 22:55 static/image/common/back.gif
TED大会 《四旋翼直升机的惊人运动机能》中英文字幕

我今天推了状态方程。+模式的机架。
输入量:对角线上的两个电机上加载的电压的差值⊿U;输出量是四轴的俯仰角Ψ; ⊿U的控制量增益K:C/(W*L). 其中C是电流转矩系数,W是电机转子以及桨的转动惯量,L是电机等效电感。
从输入量到输出量是四阶系统、非线性的、时变的。
控制量增益K是时变的。C和L都是电流、转子位置的函数。这两个值不停地变化。
我不打算基于系统的准确模型,但是我仍然要用控制增益K,郁闷的是K也不停地变化,好在K的变化幅度不大。

learner123 发表于 2013-6-20 21:21:18

flylinux 发表于 2013-6-18 23:27 static/image/common/back.gif
瞎撞式盲调和民科思维方法如下
三维动力学建模,降阶处理,全局视觉实际飞行测试(近似opencv组上 ...

首先,建模时,精度多高?怎么评估?看别人建模自己也跟着弄?
环境条件如何?怎么评估?实际飞行目标的动力性能如何?参数精度如何?系统辨识么,方法呢,精度如何评估?

只是看到国内外论文这么搞,自己也跟着搞,细节都丢失了,不是民科是什么?
不切合实际的建模外加自以为是的学历优越感是可怕的。

当然出点论文,说不准还有不少中国式的学术成绩,但和实践差的太远。

说话直来直去,没有对人格的蔑视,楼主海涵。

flylinux 发表于 2013-6-21 00:05:04

kmani 发表于 2013-6-20 17:52 static/image/common/back.gif
我今天推了状态方程。+模式的机架。
输入量:对角线上的两个电机上加载的电压的差值⊿U;输出量是四轴的 ...

确实是个四阶阶非线性系统,有递推方程来就拟合参数了,条件限制,全样本获取比较困难,不过可以测几组拟合试试,误差肯定是有的,但会有发现一些规律

限制运动方式,降为一阶或二阶系统,只控制升降或升降和俯仰,测试可能会简单很多

flylinux 发表于 2013-6-21 00:51:29

learner123 发表于 2013-6-20 21:21 static/image/common/back.gif
首先,建模时,精度多高?怎么评估?看别人建模自己也跟着弄?
环境条件如何?怎么评估?实际飞行目标的 ...

上个回帖你直接否定LZ的观点

这个回帖又针对模型控制的细节提出了一系列质疑,相当于变相肯定了这种方法,不过国外也的确也有用这种方式做出来,效果还挺好

这个帖子的主要目的是讨论建模控制的可行性,你希望的非常细节上的东西,恐怕现阶很难获得答案

讨论最好就事论事,不要以自己的视角,用极其肯定口吻猜测其他人思维方式、性格、学历,国内学术气氛,最后对你所谓的一系列结论下定义,这对你做人和研究没一点帮助,好自为之

learner123 发表于 2013-6-21 02:05:48

flylinux 发表于 2013-6-21 00:51 static/image/common/back.gif
上个回帖你直接否定LZ的观点

这个回帖又针对模型控制的细节提出了一系列质疑,相当于变相肯定了这种方法 ...

首先,这不是质疑,而是反问。大多数自称“研究”飞控的人的都在误区中徘徊。很多大学的学生老师都在犯这种错误,甚至包括国外的。
一般这些人,搞仿真都不顾实际情况,看到所谓“国外先进成果”就急于模仿借鉴,虽说不能算抄袭,但这种借鉴几乎都是在重复别人的研究工作。
无奈,很多论文和资料不详细,细节损失,所以很多时候就提出所谓“理论不行”的说法。
国外也有学术上瞎扯的东西,特别是工程类的,实际起主要作用的并不是论文或宣传品中说的。

我希望楼主和其他搞这方面东西的人能够对精度有概念,因为精度往往就是民科和学者的区别。每年建模答辩中口才好的学生很多,问题都一样。诚实一些的直接说,参考了sci,ei上xxx大学的某论文;心理素质强的直接一口咬定,自己原创。但和xxx大学的xxx联系后才知道,其实连xxx大学也是有场外xxx公司协助开发。

重申强调一下,模型的本身数据的精度是可测的,如果这个数据都不准,何来精确的建模?不要摆出一堆所谓还正在发展并未成熟的所谓“新技术名词”就是高科技了。每年答辩太多太多的这种东西了。

learner123 发表于 2013-6-21 02:20:59

顺便说一句:TED演讲的表演项目往往都是学校或公司大笔投资,有一定专业领域广告的成分;所以是不差钱的。但是细节往往都是商业秘密,大部分只是注重视觉效果,所以很多起决定性作用的东西都不会直接说的。

当然不一定非要有昂贵的仪器才能办事,特别有些事根本没有达到“高精度”的要求。但是没有金刚钻就别揽瓷器活倒是成立,没有很好的电路基础,精度是瞎想。(注意是很好的电路基础,不是山寨电磁炉厂的水平)

flylinux 发表于 2013-6-21 02:55:00

建议ls另开贴讨论学术圈环境问题和民科问题,讨论明白了意义重大

wenziheni 发表于 2013-11-5 10:19:50

建模很难建得非常准确的
页: [1]
查看完整版本: 飞控研究陷入pid调参,止步不前,恐怕需要转换思路