关于expected_packet_rate问题 点击:1342 | 回复:5



COOLRAIN

    
  • 精华:1帖
  • 求助:0帖
  • 帖子:4帖 | 14回
  • 年度积分:0
  • 历史总积分:84
  • 注册:2003年1月06日
发表于:2003-09-05 13:45:00
楼主
我想请教两个问题: 1、在expected_packet_rate属性中提到有效的时钟分辨率,我始终不明白这是什么,而且我怎么样才知道它的值是多少呢? 2、我从主站上接收到一个修改expected_packet_rate属性的命令,它的数据(16进制)如下:  80 87 01 10 05 01 09 07 01 其中8087是主站显示请求,10为set_attribute_single服务,05 01 09分别是devicenet连接类ID、实例号和属性ID,0701为数据,那么它的数据是0701HEX(十进制为1793)还是0107hex(十进制为263)呢?  请哪位大侠指点一下,不甚感激!



远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2003-08-26 11:32:00
1楼
1,EPR表示连接超时时间设定,一般情况下,超时间值为4*EPR的值。可以看协议中的相关部分,对于显性连接,初值为2500即超时时间为4*EPR=10S。 2,数据值为0X0107,注意,DN中数据发送低位在前。

COOLRAIN

  • 精华:1帖
  • 求助:0帖
  • 帖子:4帖 | 14回
  • 年度积分:0
  • 历史总积分:84
  • 注册:2003年1月06日
发表于:2003-08-26 20:57:00
2楼
to远方:  如果EPR是连接超时时间设定,那是不是这个时间可以自己设定而与从站CAN卡无关?

远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2003-08-29 11:58:00
3楼
这个值由主站设定,你可以设置你的主站的一些参数,但首先,不是主站设置多少就是多少,这个置允许从站设定,比如,主站试图设定EPR值为1MS,但从站无法接受这么小的值,就要能回应一个它可以接受的最小值,如3MS,返回给主站,所以,设定EPR值的这条报文是需要返回设定值的,而其它的基本上都只要返回90就好了。

COOLRAIN

  • 精华:1帖
  • 求助:0帖
  • 帖子:4帖 | 14回
  • 年度积分:0
  • 历史总积分:84
  • 注册:2003年1月06日
发表于:2003-09-04 19:46:00
4楼
远方:  很感谢你的回复,从你的解释中我领悟了不少,但还是有点不是很清楚。  主站中的EPR值我是不知道的,我只是开发一个单片机作为从站,CAN控制器为SJA1000,晶振为16MHZ,我想问的是从站返回的EPR值跟硬件有没有关系,还是可以随便设?你可以具体的说说吗?

远 方

  • 精华:1帖
  • 求助:0帖
  • 帖子:18帖 | 401回
  • 年度积分:0
  • 历史总积分:561
  • 注册:2002年1月29日
发表于:2003-09-05 13:45:00
5楼
在主站的组态配置软件中是可以设定默认的EPR值的。你注意看一下组态软件的帮助及手册。 从站的最小EPR允许值需要你在开发的时候去算的,具体就是,你的从站设备最快多长时间内可以完成一次IO数据交换,不然,主站在设定的EPR*4的时间过后,还没有收到一条从站返回的IO数据,就认为从站已经TIME-OUT,接着就会重新试图与从站进行连接了,所以,如果EPR设得太小,从站根本来不及响应主站的IO报文,就已经超时了,比如AB的组态软件RSNetWorx默认的值为10ms。一般的从站都可以应付主站设定的EPR值,因为主站不可能把EPR值设得太小,尤其在从站多的情况下更是如此。

热门招聘
相关主题

官方公众号

智造工程师