%Beräknar inre resistansen i fjärrutlösaranslutningen hos Panasonic FZ20
%Copyright (c) 2005 Simon Gustafsson

%Uppmätta spänningar
U =[repmat(3.02,1,2000) 2.75 2.65 2.51 2.35 2.25 1.33 1.25 0.79 0.74 0.53 0.40 0.30];

%Vid dessa anslutna resistanser
R =1e3*[repmat(Inf,1,2000) 96 68 47 33 28.2 7.56 6.77 3.43 3.14 2.07 1.49 1.080];

%Gav dessa strömmar
I=U./R;
I_uA=I.*1e6;

%plotta strömmar
hold off
plot(I_uA,U,'k*;;');
hold on
xlabel('I [uA]');
ylabel('U [V]');


%Minstakvadratlösning, observera enkel kraftig viktning ovan mha upprepning första datavärdet
A=[ones(size(I'))  I' ];
c=A\[U'];

%plotta minstakvadratlösningen, så man ser att den går nära datapunkterna
U_ls=[A; 1 -c(1)/c(2)]*c;
I_uA_ls=[I_uA -c(1)/c(2)*1e6];
plot(I_uA_ls,U_ls,'b-;;');
gset yrange [0:3.5]
gset xrange [0:325]

%skriv ut resultat
disp(['resistan om bra passning: ' num2str(-c(2)) ' Ohm']);
disp(['U obelastad mätt till: ' num2str(U(1)) ' V, och enligt passning ' num2str(c(1)) ' V']);
