load('bestVsWorst.mat') worstJ=trapz(worstWatt)/1000 bestJ=trapz(bestWatt)/1000 gain=worstJ-bestJ meanDCHWorst=mean(worstWatt(2420:10570)) meanDCHBest=mean(bestWatt(2488:8908)) DCHTailWorst=trapz(worstWatt(10650:14700))/1000 DCHTailBest=trapz(bestWatt(9017:13110))/1000 figure; plot1=plot((1:size(worstWatt,1))./1000,worstWatt,(1:size(worstWatt,1))./1000,bestWatt); xlabel('Time (seconds)','FontSize',12); ylabel('Power consumption (Watts)','FontName','Helvetica'); title('Impact of signal strength in 3G','FontWeight','b'); %worst -99, best -49 dBm set(plot1(1),'DisplayName','-99 dBm'); set(plot1(2),'DisplayName','-49 dBm'); ((worstJ-bestJ)/worstJ)*100 %%Extra stuff %importTrace('6/1.lvm'); %six1=data*3.3; %importTrace('31/test.lvm'); %thirtyone1=data*3.3; %plot((1:size(six1,1))./1000,six1); %hold on %plot((1:size(thirtyone1,1))./1000,thirtyone1); %hold off %importTrace('18/1.lvm'); %eith1=data*3.3; %importTrace('25/test.lvm'); %femti1=data*3.3; %Get all the signal strengths: six=cell(4,1); importTrace('6/1.lvm'); six{1}=data*3.3; importTrace('6/2.lvm'); six{2}=data*3.3; importTrace('6/3.lvm'); six{3}=data*3.3; importTrace('6/4.lvm'); six{4}=data*3.3; %39080 %23990 %7308 %12590 % plot(six{1}(39080:end)) % hold on % plot(six{2}(23990:end)) % plot(six{3}(7308:end)) % plot(six{4}(12590:end)) % hold off six{1}=six{1}(39080:end); six{2}=six{2}(23990:end); six{3}=six{3}(7308:end); six{4}=six{4}(12590:end); twelve=cell(4,1); importTrace('12/1.lvm'); twelve{1}=data*3.3; importTrace('12/2.lvm'); twelve{2}=data*3.3; importTrace('12/3.lvm'); twelve{3}=data*3.3; importTrace('12/4.lvm'); twelve{4}=data*3.3; % 11180 % 3644 % 12080 % 8279 twelveLimits=[11180 3644 12080 8279]; for i=1:size(twelve,1) twelve{i}=twelve{i}(twelveLimits(i):end); end % plot(twelve{1}(11180:end)) % hold on % plot(twelve{2}(3644:end)) % plot(twelve{3}(12080:end)) % plot(twelve{4}(8279:end)) % hold off eighteen=cell(5,1); importTrace('18/1.lvm'); eighteen{1}=data*3.3; importTrace('18/2.lvm'); eighteen{2}=data*3.3; importTrace('18/3.lvm'); eighteen{3}=data*3.3; importTrace('18/4.lvm'); eighteen{4}=data*3.3; importTrace('18/5.lvm'); eighteen{5}=data*3.3; eighteenLimits=[1808 1500 1654 3324 4700]; for i=1:size(eighteen,1) eighteen{i}=eighteen{i}(eighteenLimits(i):end); end % 1808 % 1500 % 1654 % 3324 % 4700 % plot(eighteen{1}(1808:end)) % hold on % plot(eighteen{2}(1500:end)) % plot(eighteen{3}(1654:end)) % plot(eighteen{4}(3324:end)) % plot(eighteen{5}(4700:end)) % hold off twentyfive=cell(4,1); importTrace('25/1.lvm'); twentyfive{1}=data*3.3; importTrace('25/2.lvm'); twentyfive{2}=data*3.3; importTrace('25/3.lvm'); twentyfive{3}=data*3.3; importTrace('25/4.lvm'); twentyfive{4}=data*3.3; twentyfiveLimits=[12230 7584 2925 7545]; for i=1:size(twentyfive,1) twentyfive{i}=twentyfive{i}(twentyfiveLimits(i):end); end % 12230 % 7584 % 2925 % 7545 % plot(twentyfive{1}(12230:end)) % hold on % plot(twentyfive{2}(7584:end)) % plot(twentyfive{3}(2925:end)) % plot(twentyfive{4}(7545:end)) % hold off thirtyone=cell(4,1); importTrace('31/1.lvm'); thirtyone{1}=data*3.3; importTrace('31/2.lvm'); thirtyone{2}=data*3.3; importTrace('31/3.lvm'); thirtyone{3}=data*3.3; importTrace('31/4.lvm'); thirtyone{4}=data*3.3; thirtyoneLimits=[5948 7424 2722 2768]; for i=1:size(thirtyone,1) thirtyone{i}=thirtyone{i}(thirtyoneLimits(i):end); end % 5948 % 7424 % 2722 % 2768 % plot(thirtyone{1}(5948:end)) % hold on % plot(thirtyone{2}(7424:end)) % plot(thirtyone{3}(2722:end)) % plot(thirtyone{4}(2768:end)) % hold off %plot the cell % many=size(thirtyone,1); % for i=1:many % subplot(many,1,i) % plot(thirtyone{i}) % end all=cell(5,1); all{1}=six; all{2}=twelve; all{3}=eighteen; all{4}=twentyfive; all{5}=thirtyone; %shorten, all the same for i=1:size(all,1) for j=1:size(all{i}) all{i}{j}=all{i}{j}(1:20000); end end x=[0:0.05:2]; %for i=size(all,1) % c(i,:)=hist(all{i}{1},x); %end % figure for i=1:size(all,1) subplot(size(all,1),1,i) c=hist(all{i}{1},x); %bar(x,c/(sum(c))) bar(x,c) end figure subplot(2,3,1) plot((1:size(all{1}{1},1))./1000,all{1}{1}) subplot(2,3,2) plot((1:size(all{2}{1},1))./1000,all{2}{1}) subplot(2,3,3) plot((1:size(all{3}{1},1))./1000,all{3}{1}) subplot(2,3,4) plot((1:size(all{4}{1},1))./1000,all{4}{1}) subplot(2,3,5) plot((1:size(all{5}{1},1))./1000,all{5}{1}) % A=randn(100,4); % x=-3:.2:3; % c=hist(A,-3:.2:3); % %RSSI by the module: %0 -113dBm or less %1 -111dBm %2-30 -109 to -53 dBm %31 -51 dBm or greater %99 not known, or not detectable %Getting the function to convert the range %http://stackoverflow.com/questions/5294955/how-to-scale-down-a-range-of-numbers-with-a-known-min-and-max-value rssiValueMax=-53; modemValueMax=30; rssiValueMin=-109; modemValueMin=2; %f(modemValueMin)=rssiValueMin -> f(min)=a %f(modemValueMax)=rssiValueMax -> f(max)=b %f(x)= (x - min) / (max-min) --> f(min)=0, f(max)=1 %now we want to scale, so that it is not from 0 to 1 %f(x)=(b-a)*(x-min) / (max-min) + a x=[6 12 18 25 31]; rssiValue=(rssiValueMax-rssiValueMin)*(x-modemValueMin) / (modemValueMax-modemValueMin) + rssiValueMin %rssiValue = -101 -89 -77 -63 -51