appleboy 发表于 2017-5-2 18:24:24

求一种高效的数据编码算法,滤除不定期干扰,如图

如图:
1,干扰将破坏掉几个bit;
2,干扰频率较高,数据连一个完整的字节都无法传输;
3,数据帧没有传输完整的数据头关键字的机会;
4,干扰的周期和相位并不如图中那么规律;

我知道一个有效数据位用10个甚至100bit的码来编码是一定可行的,但是如此效率太低了!!!
因此期望一种高效率算法,尽力少损失通信速率。获得可靠的,低误码率数据。

高手指点一下

深圳嘉立创-SMT 发表于 2017-5-2 18:37:15

传送频率 避开 干扰频率.

appleboy 发表于 2017-5-2 18:41:29

深圳嘉立创-SMT 发表于 2017-5-2 18:37
传送频率 避开 干扰频率.

谢谢帮顶,可惜不是一个合格的二楼

lnskngdc 发表于 2017-5-2 18:42:20

深圳嘉立创-SMT 发表于 2017-5-2 18:37
传送频率 避开 干扰频率.

这样的话还需要鉴相模块,代码和电路都需要不小的改变,不如考虑去掉交流干扰,只在硬件上下主要功夫,

软件部分提高采样频率,丢掉一半的最大值和最小值

比如1KHz采样频率,冒泡法丢掉250个最大值和250个最小值,余下做平均值

lnskngdc 发表于 2017-5-2 18:44:03

晕,看错了,原来是通讯受干扰,看成AD干扰了

appleboy 发表于 2017-5-2 18:54:00

lnskngdc 发表于 2017-5-2 18:44
晕,看错了,原来是通讯受干扰,看成AD干扰了

没事,感谢帮顶

tianxian 发表于 2017-5-2 19:27:28

路过 问一下 LZ 说的是有线还是无线

aozima 发表于 2017-5-2 19:27:34

硬件上做好共地和屏蔽。
软件上升级为RS纠错+CRC校验。

zhiwei 发表于 2017-5-2 19:32:07

可以考虑调制一下看看

lcw_swust 发表于 2017-5-2 19:36:53

提高波特率,减小帧长,多次重发

kation122 发表于 2017-5-2 20:32:04

你需要的是FEC 编码,就是前向纠错功能,
目前卫星通讯、数字电视、NAND Flash中数据纠错.... 比较常用的编码技术,
比如
RS(28,24)可以纠正在这个数据中出现的2个分散的或者2个连续的错误,但不能纠正3个或者3个以上的错误。
RS(31,15)码的汉明距为17,可以纠连续或者分散8个错误。

appleboy 发表于 2017-5-2 21:49:57

kation122 发表于 2017-5-2 20:32
你需要的是FEC 编码,就是前向纠错功能,
目前卫星通讯、数字电视、NAND Flash中数据纠错.... 比较常用的编 ...

是的,就是需要FEC,但是FEC有好多算法,比如汉明,比如卷积,比如...   我是求我这种工况下的最优算法,期望提供一种高效率的,我宁愿牺牲运算时间也要换取宝贵的有效码率

my12doom 发表于 2017-5-3 00:42:04

传数据头的机会都没有的话这工况还得继续改进

实在要在这种工况下工作,最内层的FEC所有以块为单位的FEC基本都没戏,所以现在很多通信都是内部来一层卷积(也有用LDPC之类的块码的,但是是以能检测帧起始为前提),外部再来一层CRC扔掉有误的帧(Wifi),或者套一层块FEC(数字广播)
不过即使都做了最后还是会发现不改进工况传输可靠性仍然会低得惊人

硬邦邦 发表于 2017-5-3 06:02:46

干扰频率高,啥算法都不好用,

appleboy 发表于 2017-5-3 08:06:40

my12doom 发表于 2017-5-3 00:42
传数据头的机会都没有的话这工况还得继续改进

实在要在这种工况下工作,最内层的FEC所有以块为单位的FEC基 ...

工况是常量,否则就不用我了。必须能将数据滑动对齐,所以需要特定编码。求一种高效算法

appleboy 发表于 2017-5-3 08:10:39

硬邦邦 发表于 2017-5-3 06:02
干扰频率高,啥算法都不好用,

不见得这么悲观,你想一下用1000个01组合来表示一个位,超过一定比例就算一位,绝对没问题,只是效率奇低,这个例子举的极端了点,但是说明一点有一种非常适合的算法可以解此题

wye11083 发表于 2017-5-3 08:42:42

appleboy 发表于 2017-5-2 21:49
是的,就是需要FEC,但是FEC有好多算法,比如汉明,比如卷积,比如...   我是求我这种工况下的最优算法, ...

搞个球啊,直接发射端搞个单端转差分,接收端搞个差分转单端不得了。再坏的话转成光纤信号。工业领域没人用单端。

appleboy 发表于 2017-5-3 08:59:32

你是喜欢考试改题目的选手,可能改的很完美,可惜0分

dellric 发表于 2017-5-3 09:05:20

1.先做交织 。交织矩阵 大于4阶,我看到你已经有连续4个码是错的了。
2.做RS编解码。

appleboy 发表于 2017-5-3 09:12:00

dellric 发表于 2017-5-3 09:05
1.先做交织 。交织矩阵 大于4阶,我看到你已经有连续4个码是错的了。
2.做RS编解码。
...

是的,工况很恶劣。
谢谢你,我再深入研究一下算法

dellric 发表于 2017-5-3 10:26:28

appleboy 发表于 2017-5-3 09:12
是的,工况很恶劣。
谢谢你,我再深入研究一下算法

建议一下,上面有朋友谈到用硬件方式解决,希望你能考虑,在抗干扰方面,思考的方向永远不要只有一个。

appleboy 发表于 2017-5-3 10:43:39

dellric 发表于 2017-5-3 10:26
建议一下,上面有朋友谈到用硬件方式解决,希望你能考虑,在抗干扰方面,思考的方向永远不要只有一个。 ...

谢谢,硬件是常量了。

7802848 发表于 2017-5-5 20:23:12

本帖最后由 7802848 于 2017-5-5 20:24 编辑

既然你有运算时间可以牺牲,那就好办了
一次传输不成功,传第二次,第三次,直到成功,从协议上保证
还有就是把大包分成小包,这样受到干扰的几率就会降低。重传小包比重传大包的可靠性也会有提高

saccapanna 发表于 2017-5-5 21:00:48

交织纠错编码,交织深度可以跨越一个干扰信号就好。

windy_mia 发表于 2017-5-6 14:56:17

在看信道编码,就是解决数据传输可靠性、提高数据质量的。
你这要用FEC,前向纠错+信道编码。你看看RS码、卷积码、turbo码等。
另外,看看传输方式上有没有可能改进。
页: [1]
查看完整版本: 求一种高效的数据编码算法,滤除不定期干扰,如图