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

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

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

  [复制链接]
161
 楼主| 发表于 2013-12-4 00:57 | 只看该作者
点击查看详情
经过两周多的紧张工作,投入约4000行的代码量,CSS迎来一次功能上的重要升级:原有的“触发条件 -- 响应动作” 机制升级成为“控制逻辑可编程特性”,及其对应的编辑器。
该功能可为CSS内部的控制逻辑提供了一定程度上的可编程特性,其编程特性当中甚至包含了类似于多线程机制的并行处理机制。
至此,由公式编辑器--数据处理通道机制提供的实时数据处理运算处理特性与控制逻辑可编程特性很好的结合了起来,将为各种控制终端的搭建提供更强有力的手段和实现方式。

后续将进一步完善控制逻辑的可编程性,消灭各种各样的bug



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

162
 楼主| 发表于 2013-12-6 01:04 | 只看该作者
能否用CSS的搭建出一个俄罗斯方块或是吃豆游戏?理论上是存在这种可能性的.但实际当中恐怕CSS更适合于搭建一个控制终端或是一个操作模拟设备。

下面逻辑控制编辑器中包含了 4 个 if 判断,其含义如下:

第1个:如果按钮控件Dbg_0被按下,以在当前运行信息窗口中以灰色背景显示“----------”文本

第2个:如果定时器间隔达到15秒,那么在当前运行信息窗口中显示文本信息“Timer 15s”

第3个:如果数据总线上的数据 Test_0的数值大于8,并且按钮控件Rst被按下,那么以绿色背景显示“Test_0>8 && Rst Pressed”文本两次,否则令数据总线上的数据 Test_1 -= 0.01

第4个:如果按钮控件Rst被按下,以红色背景显示“Rst Pressed”文本





实际运行效果:



每一个 if / then / else / run 关键字后的语句数量没有规定,目前只要总的语句数量不要超过256条即可。







163
发表于 2013-12-7 00:37 | 只看该作者
仔仔细细的看了你9页的帖子,可以负责任的说,其实编程我真的什么都看不懂别笑我,但是为你的贡献我表示钦佩,不管是未来还没发布的免费版还是收费的专业版,我觉得你都为我们上了一课,LISA-M刚出来的时候我和我哥们就打板做了几套研究,至今仍在使用,大概有一年时间了,我最近半年一直研究APM,说实话这个飞控可以说是给我的感觉就是易用性远超PPZ但是性能方面和灵活性特别是混控这块比PPZ差很多,源代码我不懂,PPZ的配置文件我足足研究了几个月的WIKI,我最近在做一个导航车的项目,正在发愁地面站的问题,就看到了你的帖子,这真有点雪中送炭的意思哈哈,支持你兄弟,佩服你的技术,我会继续关注你的帖子,我每天都来看看你的进展,别有压力加油
164
 楼主| 发表于 2013-12-7 22:57 | 只看该作者
guoj5157 发表于 2013-12-7 00:37
仔仔细细的看了你9页的帖子,可以负责任的说,其实编程我真的什么都看不懂别笑我,但是为你的贡献我表示钦佩 ...

谢谢关注啊,软件方面在地面站和飞行模拟我有过一点经验和体会.但是在硬件方面就比较悲催了,基本上徘徊在入门阶段。虽然本科时学的是偏硬件专业,惭愧啊

PPZ前面听说很强悍就入了一块,本来打算研究一下的。但是PPZ需要Linux支持,对我来说比较陌生,加上其他事情较多,就搁置下来了。有为PPZ或其他飞控开发地面站的想法,关键在通讯协议这一块,PPZ如果能够兼容Mavlink协议的话,那么CSS为它搭建个地面站是个不复杂的事情。如果PPZ使用的是他自有的协议,只要不是太复杂,估计也不会太麻烦,就是我现在一直没找到(其实也没花功夫认真去找)对PPZ通讯协议的详细描述。

目前CSS的帧编辑器可以对Mavlink1.0协议中的数据帧进行编辑设定,包括使用、创建自定义帧等等。但不足之处在于仅限于Mavlink协议。对于其他协议就不适用了。所以我想在将来适当的时候,比如说开发CSS1.5版的时候把帧编辑器的功能加强,使其能够具有处理多种主流通讯协议的能力。不过现在我想还是把这个先放一放,尽快完成CSS的余下功能并发布测试。

如果你有余暇的话,不妨整理下你无人车地面站的需求并告诉我,我用CSS搭建一下无人车的控制终端,看看CSS在这方面还需要增加和加强些什么样的内容。毕竟,无人车也是CSS的一个重要应用方面。






165
发表于 2013-12-8 11:26 | 只看该作者
APM的无人车地面站左右其实并不大,主要还是调参和监控作用,无人车APM是采用示教的方式来规划航点,在调参完成后基本可以完全摆脱地面站独立工作,可以用遥控器清除航点和规划航点
当然,我使用的是比较基础的功能,还有超声波传感器我都没用,作为无人车你肯定要考虑的还是要有视频显示窗口,地磁极,姿态,地图和航线在一个界面里就比较方便了

166
发表于 2013-12-8 16:06 | 只看该作者



学习学习,这个平台好用吗

167
发表于 2013-12-8 20:51 | 只看该作者
scaple 发表于 2013-12-7 22:57
谢谢关注啊,软件方面在地面站和飞行模拟我有过一点经验和体会.但是在硬件方面就比较悲催了,基本上徘徊在 ...

ppz支持mavlink,只不过代码还在测试。我一直在玩ppz四轴,可以交流一下啊!ps:我能不能参与到你们的开发当中呢?

168
 楼主| 发表于 2013-12-9 01:25 | 只看该作者
本帖最后由 scaple 于 2013-12-9 01:26 编辑
bshaot 发表于 2013-12-8 20:51
ppz支持mavlink,只不过代码还在测试。我一直在玩ppz四轴,可以交流一下啊!ps:我能不能参与到你们的开发 ...

当然欢迎拉!

PPZ在国内的普及程度远不如APM,除了使用配置上的复杂性之外,恐怕全部linux环境的需求也是影响普及的因素之一.在这种情况下,如果有个Windows下的地面站,无疑对PPZ的普及是有很大益处的.我很乐于来做这个工作,但存在两个障碍:1、时间;2、PPZ现有的通讯协议我不了解。如果你能提供与PPZ通讯协议相关的资料、代码、链接之类的东西,我将不胜感激!

CSS 0.9目前开发已经接近尾声,我想比较大的几个功能实现或改进,例如通用帧格式编辑器、MapInfo地图支持,若PPZ通讯协议很复杂或与Mavlink差别很大的话那么对PPZ的支持也包括在内,这些功能在这一版当中就暂时不实现了,留到1.5版再加以实现。

地面站的开发是个实践性非常强的工作。不通过大量的实际飞行是不可能开发出易用可靠的控制终端的。现在除了软件开发之外,飞行及飞行保障相关工作也占用了我一部分精力和时间。比如说现在正在做的自跟踪天线,比方说对载机性能的提升改进工作。这些事情不做不行,但要做好也不是件轻松容易的事情。所以近期我认真反思了一下,接下来的工作还是要做扎实细致。要消除急躁、浮躁心理。

欢迎你提出对地面站、对CSS功能、使用、架构等方面的理解、希望、看法,以及建议意见等.

接下来我除了CSS、ArduPlane、APM硬件设计之外,又增加了一项任务:啃“飞机总体设计”    

慢慢来吧
  




169
发表于 2013-12-9 23:12 | 只看该作者
楼主一定想办法将该软件中加入视频输入显示功能,这样地面站就可能替代部份图传功能;
飞控数据链进出地面站应该是你这个软件的本职,不多议!但请为数据链多按几个接口,比如WIFI,蓝牙,USB串口,还有RS232等;

其实地面站不光在只做为地面调参用处大,我看直接用地面站控制飞行器才是出路啊。。。。。

另外问一下:如果我已经知道了飞控上下行数据的通讯格式,是不是用你的软件超简单?不会你们这种编程啊,顶多看得明白一些MCU上的C程序......
170
发表于 2013-12-20 16:05 | 只看该作者
scaple 发表于 2013-6-25 01:37
Control Station Studio 是什么?

CSS 是一个地面控制站开发平台

对CSS很感兴趣,加我qq,我们细聊 43412788
171
发表于 2013-12-21 02:10 | 只看该作者
不错。不知何时有商品推出。
172
发表于 2013-12-22 00:18 | 只看该作者
到目前为止,大家还在看着截图意淫,好吧,我承认我着急了
173
 楼主| 发表于 2013-12-23 15:45 | 只看该作者
wangweihe68 发表于 2013-12-22 00:18
到目前为止,大家还在看着截图意淫,好吧,我承认我着急了

不好意思啊,上周家里面一大堆事情,没顾上做开发。

现在重新开始了,但是现在碰到两个有点麻烦的问题。

一个是波形图控件的问题,实现波形绘制不麻烦,麻烦的是,在通用化可编辑的前提下,波形图的数据来源需要仔细斟酌。很明显,数据来源主要有两个:一个是在运行过程当中来自于数据总线上的实时数据。一个,是来自数据回放过程中遥测记录文件。麻烦就来自于遥测记录文件,因为Tlog格式遥测记录文件当中最基本的数据单位是帧字段,而CSS当中最基本的数据单位是数据总线上的数据项,这样的话,在绘制波形图的过程当中就需要在帧字段与数据总线之间建立起对应关系。但这还没完,因为CSS当中数据总线上的数据并不完全来自于帧字段,有的数据可能是经过数据处理通道、序列数据计算处理、逻辑语句判断机制处理加工过的数据。所以,在绘制波形图的过程当中,从Tlog文件取得了原始数据之后,首先要赋给对应的数据总线,然后要经过数据处理通道等一系列的加工处理,才能得到与正常运行时数据总线上一致的数据。

波形图的问题现在倒问题不大了,我已经有了大概的解决办法。现在比较挠头的是外设数据接收处理问题。

我现在需要CSS读取天线跟踪系统过来的天线俯仰角、方位角数据,这两个数据构成的数据帧很简单,如果仅仅是只为了读取这个格式的数据帧,做一个专门针对这个数据帧的解析机制是件很简单的事情,给我2个小时就足够了。但问题在于,CSS最大的优势和特点就在于可编辑性和可定制性。在这个架构下很难容忍存在这么一个功能单一的外设数据读取接口及机制。怎么办?以往的做法是再开发出一个外部设备通讯协议编辑器出来,这个是一件很麻烦,工作量很大的事情。而且,这么一个外设通讯协议编辑器与目前已有的,针对控制目标(UAV等)的Mavlink协议编辑器在功能及定位上有部分交叉重复之处,这样的话,这两个编辑器是否有必要统一整合成为一个通用协议编辑器?

现在就是一个两难选择,是迁就于尽早发布而开发一个自己不大满意的东西出来?还是为了使产品尽量完美而再一次推迟发布?大家能够给个建议?

我现在感觉是,任何一个专用地面站当中碰到的简单问题,一旦放到 CSS 体系中,其实现难度及工作量就会因为可编辑、可设定特性的要求而被放大十倍几十倍乃至百倍。希望大家能够理解,不过还好,总体上来说,CSS已经走过了到处都是无边的黑暗,一丝星光都看不见的阶段。




174
发表于 2013-12-23 23:26 | 只看该作者
哈,总算有盼头了
175
 楼主| 发表于 2014-1-5 01:46 | 只看该作者
波形图控件完成50%左右,动态波形图完成,还有文件数据波形图尚待完成.

比较麻烦,熬了几个晚上才搞定,尽管以前做过类似的.

重要还是麻烦在控件本身的编辑特性上.波形数据必须使用动态内存管理技术.




176
发表于 2014-1-9 10:42 | 只看该作者
虽然看不懂但是还是顶楼主
177
 楼主| 发表于 2014-1-10 09:40 | 只看该作者
本帖最后由 scaple 于 2014-1-10 09:42 编辑


实时波形图控件确定最终形式。历史数据波形图暂时不予实现了,赶进度吧。

上方的一排按钮从左到右功能分别为:
打开/隐藏功能按钮条、Y轴波形振幅放大、、Y轴波形振幅缩小、X轴波形时间放大、X轴波形时间缩小、、X轴波形时间放大、波形图向上平移、波形向下平移、保存当前波形调整参数
红色直线代表波形数值超出当前显示范围










将波形图控件叠加放置在地图控件上面,同时回放遥测记录数据





178
发表于 2014-1-10 12:34 | 只看该作者
楼主,也许我们能相互学习,这是我Q:9058775,希望能有幸结识
179
发表于 2014-1-10 16:43 | 只看该作者
牛人贴  要标记下,以后来看 进度!
180
发表于 2014-1-10 17:04 | 只看该作者
你好,在吗,我也是uav爱好者,有些问题下跟你交流下,qq 515949983

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

本版积分规则

关闭

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

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