-         

Ergebnis 1 bis 2 von 2

Thema: Hilfe bei Matlab Problem

  1. #1
    Neuer Benutzer Öfters hier
    Registriert seit
    02.08.2006
    Beiträge
    9

    Hilfe bei Matlab Problem

    Anzeige

    Hallo Leute ich hoffe mir kann jemand helfen.
    Folgendes:

    Folgendes Programm (als Anhang) von Matlab liest von der Seriellen Schnittstelle die erfassten Daten aus (temp, Luftfeuchtigkeit, Reichweite, Licht) und stellt diese grafisch da. Die Grafik ist so aufgebaut das für jedes der angeschlossenen Boards(max 4) die Werte dargestellt werden. Jetzt meine Frage ob einer von euch weiss, wie ich das Programm ändern muss damit die Grafische Darstellung nicht nach boards sondern nach Werten sprich in einem Fenster nur die Temperatur von alles Boards in dem anderen die Feuchtigkeit von alles Boards usw. hätte da jemand evtl einen Tip?

    Besten Dank
    Angehängte Dateien Angehängte Dateien

  2. #2
    probier es mal wie folgt:

    Code:
    clear all;
    s = serial('COM1','BAUD',19200,'DataBits',8,'StopBits',1,'FlowControl','hardware');
    fopen(s);
    init=false;
    %fid=fopen('test.dat','w')
    i=1;
    counter=1;
    buffer=21;  
      
    for counter=1:30
            if i==21
            i=i-20
            hold off;
             end;
    tlog=false; %Logical initialisieren
        while ~tlog
    tline=fscanf(s);   %naechste Zeile aus ASCII-File holen
    index_s=regexpi(tline,'Hauptboard'); %String in tline suchen
                 if ~isempty(index_s)    %Treffer?
                        tlog=true;
                        if i==1 & ~init
                        boardanzahl=0;
                        end;
                         for j=1:4
                             
                           index_s=regexpi(tline,':-(');
                            if isempty(index_s)
                                     index_sem=regexpi(tline,',');   %Trennzeichen suchen, wird hier
                                      %nicht ausgewertet
                                      temp=strrep(tline,',',' '); %Trennzeichen durch Blank ersetzen
                                      string=strread(temp,'%s',6);    %String-Array erzeugen, Anzahl
                                      %der Variablen angeben
                                      temperatur(i,j)=sscanf(char(string(3)),'%d'); %Array-Elemente ausgeben
            
                                      luftfeuchtigkeit(i,j)=sscanf(char(string(4)),'%d'); %Array-Elemente ausgeben
                                      licht(i,j)=sscanf(char(string(5)),'%d'); %Array-Elemente ausgeben
                                      reichweite(i,j)=sscanf(char(string(6)),'%d'); %Array-Elemente ausgeben
                                      board(j)=true;
                                      if i==1 & ~init
                                      boardanzahl=boardanzahl+1;
                                      end;
                            else
                                board(j)=false;
                            end;%zweites if
                           tline=fscanf(s);
                         end %for-Schleife
                         %--------------------------PLOT-Funktion-------------
                         for k=1:2
                            x(k)=i-2+k;
                          end%for-Schleife
                          if i>1
                             
    subplot(2,2,1);
    plot(temperatur);
    subplot(2,2,2);
    plot(luftfeuchtigkeit);
    subplot(2,2,1);
    plot(reichweite);
    subplot(2,2,1);
    plot(licht);
    
                                 init=true;
                                 pause(0.000001);
                               end;%if
                                              end; %erstes if
    
        end % while Schleife
    i=i+1;
    
    
    end %erstes For
    
    fclose(s);
    %fclose(fid);
    Ich kann es aber nicht sicher sagen. Am besten wäre es du stellst mal so ein testfile hier rein. Dann kann man es mal ausprobieren. So wie ich das sehen sind die vier matrizen (temperatur, licht, luftfeuchtigkeit, reichweite) so aufgebaut, dass die spalten die boards sind und die zeilen die Messwerte.

    mfg
    inschenjoer

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •