5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
楼主: scaple
打印 上一主题 下一主题

UAV 地面站软件开发平台 CSS (LZ从火星滚回来了!!!!!409楼)

  [复制链接]
281
发表于 2014-7-21 22:09 | 只看该作者
点击查看详情
到底什么时候发布呀,在不行就改QGC了

欢迎继续阅读楼主其他信息

282
 楼主| 发表于 2014-7-22 11:51 | 只看该作者
本帖最后由 scaple 于 2014-7-22 12:28 编辑
flylinux 发表于 2014-7-21 22:09
到底什么时候发布呀,在不行就改QGC了


您不妨先用着qgc,熟悉了还可以给我点建议和指导,呵呵。

这段时间一直在解决一个难题,就是如何实现让通讯协议通用化,突破mavlink协议的束缚。前面的两次尝试都失败了...

这个问题我跟老师(大boss)汇报讨论过,老师建议我放弃这方面的努力,因为这方面的难度和工作量都非常大,而取得的效果可能不一定能好。但是我觉得还是有必要努力一下。现在我思路是采用源代码开放的协议处理客户端框架形式来进行实现。由最终用户实现自有/专用协议的解析与合成,以及协议工作中的内部交互过程。除此之外的其它所有工作均由客户端框架实现,用户无需关注。

这个思路应该说是先前 ProcessClient 的升级版。ProcessClient 只是实现了对客户端与CSS通讯过程的封装,对于协议处理来说,这还不够,还必须实现:1、客户端要能够响应来自于CSS端命令,这个命令是什么,要实现什么样的功能必须由用户进行任意定制。2、客户端要能够实现对CSS中某些内部功能的操控。上面两个基本要求还有个前提,那就是要在方便简易的情况下由用户进行定制开发。

前面对这两个问题考虑了很久,目前已经有了基本的实现框架和代码。

这段时间还有一项主要工作是新机试飞。前面一次试飞过程中 Xbee 900hp 意外损失掉了...


计划测试的主翼




CSS搭建的试飞测试平台,一段时间没用,好多东西都给忘了,囧。900hp 损坏了,还有一套xtend,但是不打算用,风险大。目前先勉强用apc220进行试飞测试,弱暴了,但基本够用。













283
发表于 2014-7-23 14:56 | 只看该作者
关注,持续关注。

来自安卓客户端
284
发表于 2014-7-24 02:24 | 只看该作者
给定制个地面站撒。。。。。。。。。。老板怎么联系
285
发表于 2014-7-24 10:33 | 只看该作者
希望快点发布!期待
286
 楼主| 发表于 2014-7-30 17:06 | 只看该作者
本帖最后由 scaple 于 2014-7-30 17:25 编辑

上周进行了两米翼展主翼的无动力全状态投掷实验,初始速度在 5-7m/s之间,初步确定了重心位置

一两个星期来的辛苦努力,化为了下面的几条运行信息,这可是俺放弃又一次驾车进藏的机会换来的哟。

  


协议管理器 DLM 端用户在使用自有通讯协议是所需进行操作的示例代码:

  


这一次DLM的架构实现了如下功能:

1、DLM 与 CSS 间并行数据的传输,这个功能在ProcessClient当中也实现过,不同之处在于,DLM直接采用了进程间内存共享的通讯方式,而不是先前的udp网络通讯方式,应当具有更高的效率。应该说DLM在自定义通讯数据方面给予用户的自由度,比ProcessClient更大。

2、DLM与CSS间串行数据的双向传输,ProcessClient 不直接具有该功能。

2、CSS对DLM的命令控制机制,ProcessClient 中只能使用很麻烦的方式迂回实现。


ProcessClient 与CSS 之间的通讯行为比较简单,适于进行诸如数据的加工处理,外设的简单控制一类的工作
而 DLM 的目标就是需要具有按照通讯协议进行通讯过程所需的一切行为的能力。


但是接下来的工作依然繁重。











287
发表于 2014-7-31 22:09 | 只看该作者
楼主威武,顶
288
发表于 2014-8-1 11:47 | 只看该作者
wolflsh 发表于 2014-1-30 17:23
仪表控件可视化编辑 这个思路碉堡了。

从哪里下载啊

289
发表于 2014-8-1 13:13 | 只看该作者
要钱么这
290
 楼主| 发表于 2014-8-4 10:49 | 只看该作者
地面滑跑测试

滑跑起飞,起飞后略微推杆,飞机进行平飞状态,因为是首飞滑跑试验,不打算实际飞行的,于是就关掉油门,准备降落,但就在关掉油门的一瞬间,机头大幅上扬,以20度仰角爬升,同时带有一定滚转,此时速度大约为10m/s,随后仰角、滚转角继续加大,进行了推杆操作但无效,速度下降至7m/s时进入失速状态,随后从12米高度大倾斜角触地。

发现两个问题:
1、关油门后俯仰角突然增大,机头上仰,什么原因造成的,困惑中...
2、上述情况下,升降舵舵效低下




291
发表于 2014-8-4 22:38 | 只看该作者
所以说真的是一个涉及多学科的事,首先得有个能飞靠得住的平台吧,涉及通讯,无线电,软硬件,全包是不可能的,必须要术业有专攻。外行读贴感
292
发表于 2014-8-5 16:08 | 只看该作者
scaple 发表于 2014-8-4 10:49
地面滑跑测试

滑跑起飞,起飞后略微推杆,飞机进行平飞状态,因为是首飞滑跑试验,不打算实际飞行的,于是就 ...

你说的情况应该是发动机下拉角太大,或者是机翼安装角太大,这些都是相对的,一般我们以平尾为安装基准,普通机翼的安装角在1-2度,发动机下拉1-2度,发动机右拉1-3度,我说的这是常规布局的一般情况,如果有飞机上的问题可以交流


293
发表于 2014-8-5 16:10 | 只看该作者
blueface 发表于 2014-8-4 22:38
所以说真的是一个涉及多学科的事,首先得有个能飞靠得住的平台吧,涉及通讯,无线电,软硬件,全包是不可能 ...

要想做一个工程,是需要一个团队才能事半功倍,呵呵,一个人的力量始终是有限的,就是你再厉害,能做出好东西出来,但你会发现这样的生活很无趣,太累太累,哈哈

294
 楼主| 发表于 2014-8-5 16:50 | 只看该作者
wnvj2002 发表于 2014-8-5 16:08
你说的情况应该是发动机下拉角太大,或者是机翼安装角太大,这些都是相对的,一般我们以平尾为安装基准, ...

“你说的情况应该是发动机下拉角太大,或者是机翼安装角太大...”   谢谢您的指点,就是为了简化问题,所以设计的时候,机翼的安装角和下拉角都是为0,电机的推力线略高于机翼中心不到10mm,我现在怀疑还是最基本的问题,飞机的重心没有找准。谢谢您!  具体描述在这里:http://bbs.5imx.com/bbs/forum.ph ... &page=1#pid13511203
295
发表于 2014-8-6 10:20 | 只看该作者
顶起
296
发表于 2014-8-7 14:30 | 只看该作者
你是不是有毛病,敢举报你爸爸的帖子?有意见来东营,老子干死你。谢谢13165463357
来自苹果客户端来自苹果客户端
297
发表于 2014-8-9 20:35 | 只看该作者
求群号!
298
发表于 2014-8-10 09:45 | 只看该作者
scaple 发表于 2014-8-5 16:50
“你说的情况应该是发动机下拉角太大,或者是机翼安装角太大...”   谢谢您的指点,就是为了简化问题,所 ...

lz你软件做的nb,飞机却搞得有点业余哈。。

现在软件能用了么?正好也想搞一套自用的地面站,如果可以的话申请试用,buaa学生党飘过

299
 楼主| 发表于 2014-8-20 01:18 | 只看该作者
欲了解 痛打 292L 落水狗,请移步此帖:http://bbs.5imx.com/bbs/forum.ph ... p;extra=&page=1

300
 楼主| 发表于 2014-8-20 01:25 | 只看该作者
本帖最后由 scaple 于 2014-8-20 01:27 编辑

阶段性进展

上周一直在分析通讯协议,基本上就是在qq群里交流学习,没顾上过来更新进展.

前面一直在努力解决的问题是如何才能跳出Mavlink协议的限制,争取更大的通用性.实现的思路是采用了一个名为 DlinkManager(DLM) 的客户端程序来实现通讯协议的转换.简单的说,DLM是一个源码开放的程序框架,它使用内存共享的方式与CSS进行数据通讯,在两者间,可以进行串行\并行数据通讯以及命令响应函数的设定与使用.实际上,在大概一周之前这个框架程序就已经完成了.紧接着就带来一个问题,既然已经具备了多协议的能力,那为何不做个 example 来演示一下这个特性呢?

一开始我考虑的是CC3D,它的通讯协议文档相对完善,但是仔细研究后感觉目前CC3D似乎正处于发展过程中,功能不是太完善。于是目光又转回到PPZ,之所以一开始没有考虑PPZ,是因为我这里没有任何Linux的运行、开发环境,自己对Linux也完全不熟悉。所以前面买了 PPZ Lisa 回来后就一直没有动过。另外就是PPZ的协议文档资料太少,再加上PPZ是一个使用32位芯片、卡尔曼滤波和姿态四元数算法的飞控,先前据此就一直以为PPZ的通讯协议恐怕就像它的算法一样复杂而高端,于是就一直没有认真研究过它。

PPZ群中的@周正朋友提供了关于PPZ协议的基本信息,认真一看,这玩意儿不像想象中那么复杂嘛。仔细研究下来,ppz协议构成要比mavlink简单,但是协议内容要更多更复杂一些。总体来看难度不是太大。于是就努力来实现ppz协议的解析。

这里要特别感谢“电子虫”和“kevin”两位朋友,如果没有他们提供的大量帮助、建议以及数据,那我在对ppz没有任何了解,也不具有ppz运行环境的情况下,根本不可能在短时间初步搞定ppz协议

目前,ppz协议已经能够进行解析。但还不能对ppz实施各种上行控制,因为要了解上行控制的实现过程,要么需要有一定的文档说明,要么就要对ppz官方gcs与ppz之间的通讯过程进行监-听及分析,而我这里存在的最大障碍就是:1、没有ppz及linux的运行环境;2、自己对ppz几乎完全不了解。上述问题,我将在将来适当时候加以解决。

截至目前,最大的心病:Mavlink协议的限制,目前理论上已经完全得到了解决。对CSS功能上最大的遗憾消除掉了。剩下的工作就是一些小的方面完善修改了!


ppz协议解析




CSS端设定DLM数据交换帧与CSS总线的关联





CSS同时接收APM、PPZ姿态数据





APM、PPZ在静止状态下滚转、航向角数据稳定性对比
















您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表