首页 上一页 1 2 下一页 尾页

无线通讯求助 点击:472 | 回复:22



mamalbx

    
发表于:2012-05-03 10:54:34
楼主
求助帖5分-已结帖
无线模块串口调试  我的无线模块是SRWF-1 是透传的那种 相当于一根232线,我用它使pc机和plc通讯 但是无线模块发回来的数据 

不正确 老是前面有很多空格 后面才是数据 而且不稳定 老是变来变去 ,我做这个之前 拿他做双机通讯,无论是自己编写的程序

还是串口调试助手 都没有问题,也就是说 无线模块的设置什么的没有问题 而且我给plc发数的时候 好像能收到

因为plc得到输出有相应的动作 但读回来的数不对 我编的程序应该没问题 因为我用串口线做的时候 就一点问题也没有

换做无线模块就来问题了 希望高人帮我分析一下 哪里出的问题 谢啦 没太有分了 不好意思!!



楼主最近还看过



通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-03 11:20:59
1楼

有许多空格,表示有误触发了。。。。。。你再仔细看看。。。

玉树哥—王者之师

  • 精华:0帖
  • 求助:7帖
  • 帖子:34帖 | 485回
  • 年度积分:0
  • 历史总积分:1205
  • 注册:2006年2月09日
发表于:2012-05-03 11:49:13
2楼

通讯地址,首字节代表你的通讯数据包含字节

ye_w

  • 精华:23帖
  • 求助:1帖
  • 帖子:84帖 | 5217回
  • 年度积分:0
  • 历史总积分:46739
  • 注册:2002年4月17日
发表于:2012-05-03 14:03:41
3楼

同时使用串口调试助手监视的时候也是有很多空格?

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 14:18:06
4楼
回复内容:
对:通讯网关于有许多空格,表示有误触发了。。。。。。你再仔细看看。。。内容的回复:

您好 不太明白 能否说的详细一点呀

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 14:26:31
5楼
回复内容:
对:ye_w关于同时使用串口调试助手监视的时候也是有很多空格?内容的回复:


没有 串口通讯时很正常

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 14:32:26
6楼
回复内容:
对:玉树哥—王者之师关于通讯地址,首字节代表你的通讯数据包含字节内容的回复:


这个我是知道的 因为我把无线模块换成自己做的串口线 通信是没有任何问题的 就是我想要的结果 所以我觉得编程上不存在问题

通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-03 14:59:32
7楼
引用 mamalbx 的回复内容:回复内容:对:通讯网关于有许多空格,表示有误触发了。。。。。。你再仔细看看。。。内容的回复:您好 不太明白 能否说的详细一点呀


这种情况应该是发送与接收不协调所致,有线的rs-232串口是全双工,或者说人家的程序做的好,收发互不干扰,没有冲突。所以收发没有问题。你做的可能收发失序冲突,但是因为全双工的232收发是分开的,互不影响,所以看不出来。但是无线发射是半双工的,一旦使用半双工的无线收发,冲突就显现了。。

通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-03 15:05:41
8楼
就是说,你发之前,要确保对方处在接收状态,你确认以后,再发送,发送完毕后,立马转成收听状态,并且要保证受到对方完整报文后,并且确定对方已经从发送转为接收状态了,你才能再发下一条报文。一条一条,井井有序。。。

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 15:34:01
9楼
回复内容:
对:通讯网关于引用 mamalbx 的回复内容:回复内容:对:通讯网关于有许多空格,表示有误触发了。。。。。。你再仔细看看。。。内容的回复:您好 不太明白 能否说的详细一点呀 这种情况应该是发送与接收不协调所致,有线的rs-232串口是全双工,或者说人家的程序做的好,收发互不干扰,没有冲突。所以收发没有问题。你做的可能收发失序冲突,但是因为全双工的232收发是分开的,互不影响,所以看不出来。但是无线发射是半双工的,一旦使用半双工的无线收发,冲突就显现了。。内容的回复:

奥 多多少少有点明白了  还不确定是不是这方面的问题 谢谢你啊 我再参透参透 谢啦~

Trevan

  • 精华:0帖
  • 求助:0帖
  • 帖子:2帖 | 36回
  • 年度积分:0
  • 历史总积分:259
  • 注册:2012年2月07日
发表于:2012-05-03 18:47:27
10楼
你是三菱的PLC吗?

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 18:49:23
11楼
回复内容:
对:Trevan关于你是三菱的PLC吗? 内容的回复:


不是 西门子的plc 自由口通信

通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-03 20:05:37
12楼
通讯最主要的就是时序问题,因为这个东西看不见摸不着,又监测不了(我指一般情况下,没有特殊高档设备,比如高频带记忆的数字示波器等等,要是到军工企业,或者专门研发手机之类产品的企业,财大气粗,有各种先进设备,调试起来就要方便许多。)所以稍微麻烦些。

通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-03 20:09:57
13楼
我曾经刻意试验过,看看我最高能做到多高的速率。。呵呵。。波特率19200,最快差不多30ms,收发一次,再高就乱码了。。呵呵。。

bhdxzgp

  • 精华:8帖
  • 求助:10帖
  • 帖子:197帖 | 5451回
  • 年度积分:0
  • 历史总积分:21613
  • 注册:2006年4月16日
发表于:2012-05-03 20:43:24
14楼

1先用直连线试;能正常通信后换成无线模块;肯定可以的!!

他是通明的!

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-03 20:48:17
15楼
回复内容:
对:通讯网关于我曾经刻意试验过,看看我最高能做到多高的速率。。呵呵。。波特率19200,最快差不多30ms,收发一次,再高就乱码了。。呵呵。。 内容的回复:


看来 你还真是个高手 我设置的波特率才9600呢  上位机数据写到串口,50ms后读回串口的数据

通讯网

  • 精华:11帖
  • 求助:2帖
  • 帖子:464帖 | 10265回
  • 年度积分:0
  • 历史总积分:24711
  • 注册:2004年7月09日
发表于:2012-05-04 20:17:12
16楼

看看我自己做的专用的调试软件,比调试助手好用。调试助手一次只能发一条报文,我这个可以排着队发很多条报文。不错吧。

bt001

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 167回
  • 年度积分:0
  • 历史总积分:540
  • 注册:2009年5月21日
发表于:2012-05-04 20:55:11
17楼

    简单的无线透明传输设备通常以特定的时间间隔检测用户是否有数据输入,例如以10mS为间隔。例如,系统每隔10mS就检测用户数据缓冲区是否有数据输入,如果有,则自动转为无线发送模式发射信号;如果无数据,则进入无线接收模式。

    如果使用9600BPS通信,则10mS大约可以传输10个字节左右。如果用户数据帧超过10个字节,则有可能被无线系统分2次发送。如果用户使用要求不高的ASCII通信,则这种延迟问题不大。如果用户使用类似MODBUS之类时间要求高的通信方式,则就会经常通信不稳定。

    用户可以尽量使用短通信帧来解决这个问题。或者提高通信速率到19200~57600等,尽可能在一个无线周期内完成通信。

    无线系统,由于内部AGC电路的作用,即使没有有效信号,也会输出噪声信号。表现在数字通信上,就是有效数据前有一串多0或者多1的无效数据。为了解决这个问题,无线厂家应该在用户传输数据前增加特殊的帧头以及结尾的帧校验字,防止噪声的干扰或者是无线信道的突发干扰。

bt001

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 167回
  • 年度积分:0
  • 历史总积分:540
  • 注册:2009年5月21日
发表于:2012-05-04 21:00:59
18楼

    强烈建议大家在做通信编程的时候,不要使用ASCII通信,而是使用带特殊帧头以及帧校验字的数据结构。这种严格的方式,在实验室环境下可能意义不大,但是在环境恶劣的长期运行现场就会突显其重要性。

    模拟系统受到干扰,最多就是数值略有偏差。而数字通信一旦出错,则可能完全是颠覆性的误差。

bt001

  • 精华:0帖
  • 求助:0帖
  • 帖子:3帖 | 167回
  • 年度积分:0
  • 历史总积分:540
  • 注册:2009年5月21日
发表于:2012-05-04 21:03:26
19楼

楼主的问题,有线数据实际上已经通过无线系统有效传输。只不过之前多了些无效数据,因此不容易判断数据的正确性。如果使用合适的帧结构来验证,实际是可以校验应用数据的正确性的。

 

mamalbx

  • 精华:0帖
  • 求助:7帖
  • 帖子:8帖 | 25回
  • 年度积分:0
  • 历史总积分:64
  • 注册:2012年1月03日
发表于:2012-05-05 10:44:44
20楼
回复内容:
对:bhdxzgp关于1先用直连线试;能正常通信后换成无线模块;肯定可以的!!他是通明的!内容的回复:


不可以啊 自己做的串口线 联接收 发 地三根线 没有问题,可是换成这种透传的无线模块就有问题了 肿么办 
SSI ļʱ
首页 上一页 1 2 下一页 尾页