1、CSThresh_ (载波侦听阈值):当分组p的接收功率Pr<CSThresh_时,节点接收不到该分组p;Pr>CSThresh_时,可以接收到该分组。
2、RXThresh_ (接收阈值):当分组p的接收功率CSThresh_<Pr<RXThresh_时,节点可以接受到该分组,但因Pr<RXThresh_,而无法正确解码(相当于误码接收)。如果Pr>RXThresh_,则该分组可以被正确解调。
3、CPThresh_ (捕获效应阈值):当节点同时接收到不同的分组(即分组发生碰撞)时,如果较强的信号是较弱信号的CPThresh_倍,那么该较强的信号仍可被正确解调。否则,两个分组都被丢弃。
CSThresh_以及RXThresh_ 阈值都是功率值而不是距离,单位为:W。即通过功率值的大小来表示节点的通信范围。
那么这两个阈值是怎么计算得到的呢?
1、通过Threshold工具可以计算出CSThresh_以及RXThresh_ 阈值
代码:$ threshold -m TwoRayGround -Pt 0.28183815 250 得到发送功率为0.28183815时的RXThresh_的值
代码:$ threshold -m TwoRayGround -Pt 0.28183815 550 得到发送功率为0.28183815时的CSThresh_的值
2、通过Txpower工具可以计算出与RXThresh_值对应的发射功率Pt_的值
代码:$ txpower -m TwoRayGround -Pr 1.559e-11 550 得到Pt_的值
设置RXThresh_(或CSThresh_)的值(节点通信范围)这两个阈值的一般步骤:
(1)确定节点的通信范围(例如:载波侦听范围为550m,接收范围为250m)
(2)确定RXThresh_(或CSThresh_,与RXThresh_等价,只是距离不同而已)或者发射功率Pt_的值
(3)确定其余参数(例如:发射功率、通信距离等)
(4)如果前面的第二步确定了RXThresh_(或CSThresh_)的值,那么通过Txpower工具来计算此阈值对应的发射功率Pt_
(5)如果前面的第二步确定了发射功率Pt_的值,那么通过Threshold工具来计算出RXThresh_(或CSThresh_)的值
(6)得到各阈值后,可在TCL脚本中进行相应的设置(默认参数在ns2.30/tcl/lib文件夹的ns-default.tcl文件中)