|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
[Matlab] Media di un segnale
Ciao a tutti,
probabilmente è una domanda banale per molti, ma ho questo problema: ho un segnale impulsivo che, periodicamente, è positivo e negativo. Siccome devo evidenziare che questi impulsi si "azzerano" tra loro, dovrei fare la media di tutta la forma d'onda, in modo da avere un grafico piatto ed evidenziare impulsi "estranei" da quelli generati, cioè casuali rispetto ai positivi e negativi. Spero di essermi spiegato... come posso fare? va bene semplicemente usare la funzione mean oppure no? grazie
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
ho notato che la funzione mean non va bene perchè dà solo un punto...
non è possibile fare la media di un segnale in modo che venga fuori un segnale e non un punto?
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Sep 2003
Città: Modena
Messaggi: 4125
|
forse dovrai usare la media mobile, ma non sò come si implementa su matlab
__________________
ho concluso felicemente con: masterGR, piantax, aragorn85, battalion75, lukas785, cagnulein, CaFFeiNe, josty,kabira85 e tanti altri |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
ah ecco! allora adesso ho capito
![]() ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
ma il segnale è unico! non sono 2...
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
allora forse è una cosa che non si può fare...
cioè gli impulsi dello stesso segnale si devono annullare tra loro. forse è impossibile ![]() ho avuto un'altra idea, per traslare il segnale di un "x" come faccio?
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
allora...
l'onda è impulsiva ma non quadra. gli impulsi sono derivate dell'impulso gaussiano, quindi roba incasinata. ecco perchè è difficile generare una seconda forma d'onda con le stesse caratteristiche... anzi direi impossibile contando che nel circuito reale che genera questi impulsi a causa dell'adattamento pessimo si formano anche delle riflessioni indesiderate... se hai una chat magari possiamo parlarne più facilmente ![]() ora vado a casa, ritorno dopo cena. grazie ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
allora, la forma d'onda è fatta da tanti "impulsi" di questo tipo:
![]() che, periodicamente, si alternano positivi (cioè quello dell'immagine) e la sua versione negata. questi vengono inviati via antenna e ricevuti da un'altra antenna. a lato ricezione devo rielaborare per isolare eventuali riflessioni. le riflessioni hanno la stessa forma, solo che a differenza del segnale sono sempre positivi... quindi pensavo che, se al segnale ricevuto gli sommo la sua versione traslata di esattamente mezzo periodo, gli impulsi iniziali si azzerano, e la riflessione, essendo sempre positiva, rimane com'è... ecco tutto ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#9 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
si
![]() comunque quell'onda nel disegno l'ho generata pura con matlab, nella realtà il generatore di impulsi non la fa così perfetta, anzi... viene fuori piuttosto diversa... ti prego dimmi come faccio per traslarla ![]() ![]() ![]() se funziona ti faccio un monumento ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
grazie mille, domani provo poi ti dico
![]() sono ad ingegneria a cesena, penso non sia la stessa perchè lì le chat si usano ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
ormai la sogno anche la notte quell'onda
![]() comunque allora visto che sei familiare ti chiederò forse qualcosa sulla parte pratica, magari voi siete più avanti di noi col lavoro ![]() oggi faccio con altre ragazzi prove intensive con dispositivi uwb, la parte matlab che mi hai detto la rimando ai prossimi giorni... comunque grazie ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Sep 2003
Città: Modena
Messaggi: 4125
|
Antonio, potrebbe usare il comando detrend?
__________________
ho concluso felicemente con: masterGR, piantax, aragorn85, battalion75, lukas785, cagnulein, CaFFeiNe, josty,kabira85 e tanti altri |
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
riuppo questo topic perchè avrei bisogno di un altro aiutino
![]() allora... ho la mia derivata dell'impulso gaussiano, così generato: Codice:
% Set effective support and grid parameters. lb = -5; ub = 5; n = 1000; % Compute Gaussian wavelet of order 8. [uno,x] = gauswavf(lb,ub,n,7); come fare? ![]() grazie ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
up
![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#15 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
allora... il vettore uno contiene la derivata settima dell'impulso gaussiano, il vettore x la scala dei tempi, l'asse x insomma...
comunque oggi provo come hai detto poi faccio sapere. ti ringrazio ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#16 | |
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Scusate l'OT ma non essendo del settore mi ha incuriosito l'acronimo UWB e ho fatto un giretto sul web per capire di che si tratta.
Su una pagina di wikipedia ho letto questo: Quote:
Adapting the Ranging Algorithm to the Positioning Technique in UWB Sensor Networks Per me è arabo, magari per voi è roba interessante ![]()
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
![]() |
![]() |
![]() |
#17 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
io lavoro esattamente su un sistema di ranging, legato anche agli rfid... il punto di forza del sistema che dovrebbe venir fuori è il basso costo e l'elevata precisione...
ma ancora c'è tanto lavoro da fare...
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
#18 | |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
Quote:
ce l'ho fatta! un metodo un pò meno elegante, forse, ma va bene lo stesso ![]() alcuni dubbi, probabilmente banali, ma per me importanti: 1- tu parli di frequenza di campionamento... come faccio a conoscerla visto che è un segnale che creo da 0 senza mettere in gioco la frequenza? 2- visto che devo dare in pasto questo segnale ad un generatore di funzioni, lasciando perdere la parte di interfacciamento della quale mi sono già occupato, secondo te è possibile mettere nel file informazioni relative all'ampiezza del segnale? perchè così com'è ci sono dei numeri, per esempio al tempo x ho 1,25... ma 1,25 cosa?! volt, millivolt, pere, mele? ![]() spero di essermi spiegato... Grazie mille per l'aiuto
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
|
![]() |
![]() |
![]() |
#19 | |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
Quote:
ultima cosa ![]() per variare la frequenza dovrò stringere o allargare l'impulso per variarne la durata... come faccio a stringere o allargare un qualsiasi segnale? (in questo caso ho l'impulso ma mi piacerebbe sapere in generale come si fa)...
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
|
![]() |
![]() |
![]() |
#20 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 1434
|
non ho ben capito...
io vorrei stringere il segnale, quindi diminuire la durata dell'impulso, già in matlab, prima di mandarlo al generatore... comunque, pescando quà e là in rete ho trovato un pò di cose e mettendole insieme ecco cos'ho ricavato: Codice:
fs=20E9;%sample rate-10 times the highest frequency ts=1/fs;%sample period t=[(-4E-9-ts):ts:(4E-9-ts)];%vector with sample instants t1=.5E-9;%pulse width(0.5 nanoseconds) x=(t/t1).*(t/t1);%x=(t^2/t1^2)(square of (t/t1) A=1;%positive value gives negative going monopulse;neg value gives %positive going monopulse y=(1/(sqrt(6.28)*t1))*exp(.5*(-x));%Gaussian pulse function plot (y); prima = diff (y); seconda = diff (prima); terza = diff (seconda); quarta = diff (terza); quinta = diff (quarta); sesta = diff(quinta); settima = diff (sesta); figure; plot (settima,'LineWidth',2); ho provato con un ciclo for ma non sono riuscito ![]() in questo modo, variando t1 cioè il pulse width, vario la durata dell'impulso, che è proprio quello che volevo.. poi quando la prossima settimana avrò il generatore sotto mano proverò se effettivamente la stessa unità di misura viene mantenuta anche in esso... ah, poi per creare la serie di impulsi: Codice:
%lunghezza del vettore che contiene la derivata settima: lung_der = length(settima); % N è il numero di repliche che voglio fare dell'impulso N=4; lung = int32((lung_der + ts)*N); %creo un vettore dove mettere il segnale, lungo quanto "lung" v=zeros(lung,1); for i=1:(lung_der) v(i) = settima(i); v(i+(lung/N)) = settima (i); v(i+(2*(lung/N))) = settima (i); v(i+(3*(lung/N))) = settima (i); end; figure;plot(v); ![]()
__________________
Ho concluso positivamente con: CNA, Zeppe79, Mangianastri, ba7mbi, Fra34, bob.malone, bagigio88, adryxxx, Sasco, dixxio, binox, Manuelcese20, Mandopa, kaliostro, Bidduzzo, Ninj4, skyrunner, Beta7, piffe, il Maggiore |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:21.