宁采儿 发表于 2013-11-23 23:08:55

匿名四轴的无线数据的发送与接收问题求指导

本帖最后由 宁采儿 于 2013-11-23 23:10 编辑

参考匿名四轴的代码,最近调好了各个模块的驱动,单独的一个发送一个接收没有问题,但是要建立起两边的数据通讯,也就是飞控端和遥控端都要既作为发送又作为接收的时候就乱了。首先是解锁,键鼠控制按下之前,按解锁键通讯正常,但是键鼠控制键按下后,拖动鼠标,电机只要快速转起来,解锁键基本上就挂掉失灵了,还有不知道为什么,电机快速转起后,速度就停不下来了,给我的感觉好像是程序死掉了一样。老郁闷了。经考虑与调试总结应该是发送和接收没有处理好,意思就是比如说遥控端向飞控端发送数据时,飞控端也正处于发送模式。而发送的时间又比较短,故出现数据传递失败的情况。下面附上自己的飞控和遥控的代码,希望在座的大神门指导一二。
只要能帮忙解决问题,就赠送20莫元

wangjt1988 发表于 2013-11-24 09:18:04

我们用的双向模式要求较高,无线模块的型号也很有关系,不同环境下,程序要微调的。建议你直接蓝牙,简单,当然,我们很快会开源基于淘宝上一个nrf模块的双向程序,希望能帮到你,另外电机导致通信出问题,很可能是电源干扰,做好隔离滤波试试

mazhenyu 发表于 2013-11-26 19:24:37

楼主和我遇到了同样的问题,不过我在好心人的帮助和自己的努力下解决了。注意看匿名四轴的代码,初始化里有0x50,0x73的东西,这个是active的寄存器,中文版的数据手册里是没有的(24l01+的英文手册也没有),往这个寄存器里写0x73就可以打开0x1c和0x1d两个寄存器的功能(平时是关闭的),通过这两个寄存器打开ack packets和动态载荷功能就可以实现ack packets的功能(就是接受端在返回ack信号的时候也顺便返回用户数据,这个功能非常适合上下行数据量不一样的双工通信),在这样的通信下就可以实现非常快速的双工通信(这么好用的功能,貌似知道的人不多)。

mazhenyu 发表于 2013-11-26 19:26:34

还有就是楼主买的24l01一定要好,我新买的24l01很便宜(说是台湾产的,有高增益),平时通信没一点问题,电机启动后直接就不行了,而我以前买的旧的是没问题的

宁采儿 发表于 2013-11-29 20:42:01

mazhenyu 发表于 2013-11-26 19:26
还有就是楼主买的24l01一定要好,我新买的24l01很便宜(说是台湾产的,有高增益),平时通信没一点问题,电 ...

你好,你说的这个问题经调试的确是电源没做好隔离滤波的问题。请修改电路。还有,你说的这个功能,我还真不知道,不过我调好通讯后,就放弃了双向通讯,飞控端只接收数据就行了。另外,不知你有没有处理好陀螺原始数据对角度的转换?我现在得到的空间角度跳变的厉害,读角度都不正常,所以根本无法进行PID调试。如处理好了可否共享一下?只要我调试角度的结果正常了,即同样赠送20莫元。

宁采儿 发表于 2013-11-29 20:45:18

wangjt1988 发表于 2013-11-24 09:18
我们用的双向模式要求较高,无线模块的型号也很有关系,不同环境下,程序要微调的。建议你直接蓝牙,简单, ...

多谢茶大的指点,的确是电源没做好隔离滤波。但是我是照着你们的电路做的板子,怎么会出现这种情况?我只好另外搞了块电池专门为无线模块供电,才通讯正常。虽然只解决了一部分,还是感谢你。

宁采儿 发表于 2013-11-29 20:53:33

宁采儿 发表于 2013-11-29 20:45
多谢茶大的指点,的确是电源没做好隔离滤波。但是我是照着你们的电路做的板子,怎么会出现这种情况?我只 ...

请问怎么付莫元啊,我不知道怎么付?

mazhenyu 发表于 2013-11-29 22:58:21

宁采儿 发表于 2013-11-29 20:42
你好,你说的这个问题经调试的确是电源没做好隔离滤波的问题。请修改电路。还有,你说的这个功能,我还真 ...

那个我就是抄的匿名的程序,效果还可以不算非常好,另外看到了超级蜂鸟的程序,那里面的姿态转换挺有意思的,用明确的物理意义,你可以看一下,也是开源的,搜索盒子秘密。。。另外那个24l01的ack packets 真的很好用
页: [1]
查看完整版本: 匿名四轴的无线数据的发送与接收问题求指导