-
PowerTOSSIM을 통해서 TOSSIM을 에너지 소모량을 체크할 수가 있다.
(MIca 2 모트 기준)
>>PowerTOSSIM 을 위한 조건
- TinyOS 1.1.1 버전 이상
>> 기본 사용법
사용 application 디렉토리에서
$ cp /opt/tinyos-1.x/tools/scripts/PowerTOSSIM/mica2_energy_model.txt /opt/tinyos-1.x/apps/Surge (사용하는 apps가 Surge라고 가정할 경우)
$ make pc
$ export DBG=power
$ build/pc/main.exe -t=60 -p 10 > myapp.trace
$ ../../tools/scripts/PowerTOSSIM/postprocess.py --sb=0 --detail --em mica2_energy_model.txt myapp.trace
디렉토리내에 모트별로 dat파일이 생기면 제대로 실행된 것이다.
옵션 및 사용법은 postprocess.py --help를 치면 나온다.
>> TOSSIM에서 Mica2, CC1000의 Power Management 사용
TOSSIM은 기본적으로 mica radio stack을 사용한다. 그렇기 때문에 Power management나 Tx power를 변환하는 것이 불가능하다. 그러나 PowerTOSSIM을 사용시엔 그것이 가능하게 된다.
해당 apps디렉토리에서
$ vi Makefile
PFLAGS += -I%T/platform/pc/CC1000Radio 추가시킨다.
>> TinyViz Plugin 사용
TinyViz Plugin을 사용하면 실험하는 apps의 power state의 변화를 볼 수가 있다.
$ cd /opt/tinyos-1.x/tools/java/net/tinyos/sim/plugins
$ cvs update
$ cd /opt/tinyos-1.x/tools/java/net/tinyos/sim/
$ make
최신 버전일 경우 cvs update 할게 없을 것이다.
$ export DBG=power
(첫번째 Cygwin창)
$ build/pc/main.exe -gui -p 10
(두번째 Cygwin창)
$ tinyviz
Tinyviz 창에서 PowerPropiling을 활성화 시키면 각 모트별 에너지 소모양을 볼 수 있다.
>> Cygwin 에서 CPU cycle counting code 사용
다음링크 참고 : 무지 어려워보임.. 필요하면 보도록
http://www2.uic.edu/~tcanli1/cpucyclecountingcode.htm
< 참고 : http://www.eecs.harvard.edu/~shnayder/ptossim/install.html#tinyviz >