No BSD License  

Highlights from
GUI for the performance analysis of pedelecs

image thumbnail
from GUI for the performance analysis of pedelecs by Jan Cappelle
Modeling the behaviour of electric bicycles

Readdata(xlsfile,modes)
function [tradata testdata] = Readdata(xlsfile,modes)

%Readdata(xlsfile,Z,vmax,Tmax,modes)
%Readdata reads measurement data of a pedelec and prepares them for LSSVM
%The xlsfile is a excelfile with as much datasheets as given in modes
%(number from 1 to 4) 
%The first colums of the sheets are the speeds in m/s
%The secund columns are the torques in Nm
%The third columns are the traction forces in N


if any([not(isnumeric(modes)) modes>4])
    errordlg('modes must be an integer between 1 and 4','Bad Input','modal')
else
    %%%%%%%%%ZONDER
%%%%%%%%%Assistentie%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
dataZA=xlsread(xlsfile,1);
aantalmetingenZA=size(dataZA,1);
%data opsplitsen in 3 vectoren x, y, en z (nonuniformly sampled data)
xZA=dataZA(1:aantalmetingenZA,1)*3.6; 	                % v(km/h)
yZA=dataZA(1:aantalmetingenZA,2);						% F(N)
zZA=dataZA(1:aantalmetingenZA,3);						% T(Nm)
%echte data bewaren
alledataZA=[xZA yZA zZA];

%Bepalen van de trainingsset en de dataset
pZA=randperm(aantalmetingenZA);
for k=1:length(pZA)
    alledatapZA(k,:)=alledataZA(pZA(k),:);
end
n=0.75;
tradata.ZA=alledatapZA(1:floor(n*length(pZA)),:);
testdata.ZA=alledatapZA(floor(n*length(pZA))+1:length(pZA),:);

% met eco
% assistentie%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%Bepalen van de trainingsset en de dataset
    if modes>1
        dataMAe=xlsread(xlsfile,2);
        aantalmetingenMAe=size(dataMAe,1);
        xMAe=dataMAe(1:aantalmetingenMAe,1)*3.6;		                % v(km/h)
        yMAe=dataMAe(1:aantalmetingenMAe,2);							% F(N)
        zMAe=dataMAe(1:aantalmetingenMAe,3);							% T(Nm)
        alledataMAe=[xMAe yMAe zMAe];
 
        pMAe=randperm(aantalmetingenMAe);
        for k=1:length(pMAe)
            alledatapMAe(k,:)=alledataMAe(pMAe(k),:);
        end
        n=0.75;
        tradata.MAe=alledatapMAe(1:floor(n*length(pMAe)),:);
        testdata.MAe=alledatapMAe(floor(n*length(pMAe))+1:length(pMAe),:);

    end
    % % % met normale
% % % assistentie%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % %
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    if modes>2
        dataMAn=xlsread(xlsfile,3);
        aantalmetingenMAn=size(dataMAn,1);
        xMAn=dataMAn(1:aantalmetingenMAn,1)*3.6;		                % v(km/h)
        yMAn=dataMAn(1:aantalmetingenMAn,2);							% F(N)
        zMAn=dataMAn(1:aantalmetingenMAn,3);							% T(Nm)
        alledataMAn=[xMAn yMAn zMAn];
        pMAn=randperm(aantalmetingenMAn);
        for k=1:length(pMAn)
            alledatapMAn(k,:)=alledataMAn(pMAn(k),:);
        end
        n=0.75;
        tradata.MAn=alledatapMAn(1:floor(n*length(pMAn)),:);
        testdata.MAn=alledatapMAn(floor(n*length(pMAn))+1:length(pMAn),:);

    end
    % % % met power
% % % assistentie%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % %
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    if modes>3
        dataMAp=xlsread(xlsfile,4);
        aantalmetingenMAp=size(dataMAp,1);
        xMAp=dataMAp(1:aantalmetingenMAp,1)*3.6;		                % v(km/h)
        yMAp=dataMAp(1:aantalmetingenMAp,2);							% F(N)
        zMAp=dataMAp(1:aantalmetingenMAp,3);
        alledataMAp=[xMAp yMAp zMAp];
        pMAp=randperm(aantalmetingenMAp);
        for k=1:length(pMAp)
            alledatapMAp(k,:)=alledataMAp(pMAp(k),:);
        end
        n=0.75;
        tradata.MAp=alledatapMAp(1:floor(n*length(pMAp)),:);
        testdata.MAp=alledatapMAp(floor(n*length(pMAp))+1:length(pMAp),:);

    end
end




Contact us at files@mathworks.com