Forum: PC-Programmierung Matlab, analoge SIgnale separat ausgeben


von Detlef H. (electroniknoob)


Lesenswert?

Hallo.
Ich arbeite grade an einem Hallsensorjoistick und will dazu mit Matlab 
ein Programm schreiben, welches mir die Kennlinien ausgibt und einen 
Punkt auf einer Fläche zeigt, der der Position des Joisticks entspricht.

Die beiden Codes sind fertig:

Kennlinien:
1
s = daq.createSession('ni');
2
addAnalogInputChannel(s,'myDAQ1', 0, 'Voltage');
3
addAnalogInputChannel(s,'myDAQ1', 1, 'Voltage');
4
5
s.Rate = 10000;
6
s.IsContinuous = true;
7
8
9
lh = addlistener(s,'DataAvailable', @(src,event) plot(event.TimeStamps, event.Data));
10
s.startBackground();

und für den Punkt:
1
s = daq.createSession('ni');
2
addAnalogInputChannel(s,'myDAQ1', 0, 'Voltage'); %%OUT2, X-Achse
3
addAnalogInputChannel(s,'myDAQ1', 1, 'Voltage'); %%OUT1, Y-Achse
4
s.Rate = 100000
5
6
s.DurationInSeconds = 0.001
7
8
9
while 1
10
   
11
   [data, time] = s.startForeground;
12
  
13
    plot(data(:,1)-2.5,data(:,2)-2.5,'*')
14
    axis([-2.5 2.5 -2.5 2.5])
15
end

Ich versuche eine möglichkeit zu finden, wie ich diese beiden Codes in 
einem Script zum laufen bringe. Die wollen nicht gemeinsam laufen.

Kann mir jemand helfen damit?

Gibt es eine Möglichkeit, dass ich event.TimeStamps, event.Data an 
Variablen übergeben kann und diese dann nutze, um einen Punkt 
darzustellen? Habs versucht, aber kamm immer eine Meldung, dass diese 
Variablen nicht deklariert sind.

Vielen Ddank

: Verschoben durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.