项目要求,
1.一个 协调器 带动多大50个router,router带动约10个终端,
2.数据只在协调器与router间传递。
2.协调器 需要能够最大以25hz的速度点播router。router收到后,再返回一个数据包。
套用原有的默认设置,
可点播18个router,超过后,全乱了,不管我如何调整发送速度,都不能每次都点播成功。
修改一下参数
DEF_NWK_RADIUS (BEACON_MAX_DEPTH )-->15
NWK_ROUTE_AGE_LIMIT 5//3-->30 发送失败重试次数
DEFAULT_ROUTE_REQUEST_RADIUS 6//32 -->8 默认转发次数
ROUTE_DISCOVERY_TIME 10//5 -->13
MAX_NEIGHBOR_ENTRIES 32//16 邻居表大小
NWK_LINK_STATUS_PERIOD 30//15 // 15 seconds OTA 底层握手数据发送间隔
NWK_MAX_DEVICE_LIST 20 协调器设备表大小。节省RAM for MTOR
INT_HEAP_LEN 3280//2048 协调器 堆栈大小
LINK_DOWN_TRIGGER 12//3 邻居表重建时间
协调器开启concent 功能,
能够点播的节点数据明显增多,数据发送的间隔也明显减小。
可是出现了一个问题:节点会频繁的重入网。
有两种可能,1.看门狗复位。2,网络连接断开。
如果是网络连接断开,那么是网络堵塞,导致link stus。严重延时?
将节点数据减少到6个,用sniff抓包,发现节点数据大于6个开始,数据包就开始跳转,而这个数据跳转的过程时间消耗不小。
于是去掉meny to one的concentrate功能,因为RAM不够。
将最大设备list 有10-->50.
修改router挂载数字,将一级可挂载的router数据6-->18.这样只要两级就可以很容易超过108个
也有考虑 6-->50,
明天 再测试具体效果。
|