Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Star Wars Zero Company è l'erede di XCOM 2
Star Wars Zero Company è l'erede di XCOM 2
Bit Reactor porta nell’universo di Star Wars una struttura tattica che richiama apertamente XCOM 2, ma la arricchisce con legami tra i personaggi, progressione ruolistica, gestione della base e un sistema di combattimento costruito attorno a tre Punti Azione e alle risorse condivise della squadra
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia)
Abbiamo provato per una settimana intera la Can-Am Origin, la Dual Sport elettrica del gruppo canadese BRP: ecco com'è andata tra città, autostrada e un primo assaggio di sterrato
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco
Nelle ultime settimane abbiamo provato il mouse Logitech G305, la tastiera G316 X 98 e le cuffie G325. Si tratta del setup entry-level di Logitech che ormai, di "entry-level" ha ben poco. Tastiera e mouse offrono prestazioni di livello competitivo con quasi nessuna rinuncia e un livello di personalizzazione estremamente elevato. Le cuffie, invece, hanno mostrato qualche debolezza, ma propongono un ventaglio di funzionalità completo che consente di abbandonare completamente i cavi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-05-2017, 16:34   #1
pakopako
Junior Member
 
Iscritto dal: Sep 2016
Messaggi: 5
Filtrare un Segnale in matlab.

Buonasera, ho un segnale di accelerazione che registra su un file i valori lungo i 3 assi ogni 10ms, quindi la frequenza di campionamento dovrebbe essere 100Hz.

Ciò che vorrei chiedervi e se qualcuno potrebbe indicarmi come è possibile filtrare questo segnale.

Poichè l'accelerometro mi da picchi molto alti in determinate situazioni, ma che costituiscono solo una piccola parte del segnale (questi sono quelli che mi interessano principalmente), io necessito di smussare e quindi filtrare tutti i valori di accelerazione che sono compresi diciamo tra 1m/s^2 e -1m/s^2.

Ora, ho fatto la trasformata di Fourier di questo segnale attraverso il seguente codice:

L = length(segnale);
f = Fs*(0 : (L/2)) /L; %%Viene creato il dominio di Frequenza.
Y = fft(segnale); %%Viene applicata la trasformata di Fourier


P2 = abs(Y/L);
P1 = P2(1:floor(L/2)+1);
P1(2:end-1) = 2*P1(2:end-1);

dOut = P1;
plot(f,dOut)

title('Single-Sided Amplitude Spectrum of Data(t)')
xlabel('f (Hz)')
ylabel('|P1(f)|')



Quindi io vado ad analizzare tutto ciò che ricade tra 0 e 50Hz, in accordo al Teorema di Nyquist, per l'aliasing del segnale.

A seguito di questa trasformata, come posso capire quale parte del mio segnale rappresenta il rumore, e quale parte invece i dati che non voglio "toccare"?

E una volta determinata la frequenza in cui attenuare il rumore come è possibile creare un filtro che mi consenta di poter successivamente integrare il segnale?


Link delle foto della trasformata di Fourier, e del Segnale Originale.



Ultima modifica di pakopako : 11-05-2017 alle 16:44. Motivo: Inserimento Foto
pakopako è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2017, 22:35   #2
pakopako
Junior Member
 
Iscritto dal: Sep 2016
Messaggi: 5
Ciao, Grazie per la risposta,
Metto i link delle immagini cosi magari si possono visualizzare:

Questa riguarda il segnale originale.
http://imgur.com/k3TJiZa

Questa la trasformata di FFT
http://imgur.com/e9Zn5kG


Come si vede dal segnale vi sono molti valori che sono compresi tra -1 e 1, che costituiscono per la maggiore i dati del segnale stesso. Ciò che dovrei fare è effettuare l'integrazione di questo segnale.
Tuttavia se lo effettuo su questo segnale così, non ottengo nulla poichè vi è molto rumore, e vorrei appunto filtrato, e il risultato che dovrei ottenere sostanzialmente dal segnale filtrato, e che i valori del segnale originale diciamo >2 e <-2 non dovrebbero cambiare, e attenuare tutti quelli più bassi, quindi la forma del segnale non mi deve cambiare di molto in corrispondenza dei picchi diciamo alti, non so se mi sono ben spiegato,

Ora per applicare il filtro, non riesco a capire a quale frequenza effettuare il taglio, vedendo il risultato di fourier, ho pensato che le componenti con maggior rumore sono tra 10 e 15 Hz, e ho provato ad applicare un filtro passa-basso butter del 6 ordine con frequenza di taglio 15Hz/(100Hz/2). Ma è come se non mi cambiasse nulla, e cambiano solo i valori alti(>2 e <-2), che è esattamente l'opposto di quello che desidero.

Quindi sicuramente sto sbagliando qualcosa, o mi manca altro per poter filtrare correttamente il segnale.

Ultima modifica di pakopako : 12-05-2017 alle 10:00.
pakopako è offline   Rispondi citando il messaggio o parte di esso
Old 12-05-2017, 16:29   #3
pakopako
Junior Member
 
Iscritto dal: Sep 2016
Messaggi: 5
Grazie ancora per la risposta.

In scala logaritmica il segnale dovrebbe uscire cosi:
http://imgur.com/a/S7K3X

Il mio problema è proprio che non riesco a capire come identificare il rumore dalla trasformata di Fourier, cioè io vorrei solo smussare i dati per poter effettuare l'integrazione perchè così giustamente non mi esce nulla.

Perdonami ma non ho capito a cosa ti riferisci per rumore bianco.
pakopako è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2017, 16:26   #4
pakopako
Junior Member
 
Iscritto dal: Sep 2016
Messaggi: 5
Penso di esser riuscito a tirar fuori lo spettogramma, da questo cosa riesco a capire? quale parte del segnale ha rumore e quale non? e che tipo di filtraggio sarebbe opportuno?
Da quello che penso, come mi hai detto precedentemente sembra che il segnale sia davvero molto rumoroso.

http://imgur.com/a/OfpNm


Per fare lo spettogramma ho utilizzato:
periodogram(x,rectwin(length(x)),length(x))

Ultima modifica di pakopako : 31-05-2017 alle 16:33.
pakopako è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2017, 10:15   #5
pakopako
Junior Member
 
Iscritto dal: Sep 2016
Messaggi: 5
Perchè io di questo segnale devo effettuare una doppia integrazione, ma non mi serve lo spostamento finale, ma lo spostamento punto per punto, provo a fare un esempio di ciò che intendo:

Essendo il segnale di un'accelerazione verticale, se per esempio ho dei valori di accelerazione di 6 m/s^2, penso che lo spostamento verticale sia elevato rispetto ai punti in cui ho valori di accelerazione vicini allo 0, in cui mi apsetto uno spostamento quasi nulla. Il problema che applicando un filtro a media mobile, il segnale si è vero che si smussa, ma se effettuo l'integrazione di esso non ottengo nulla come risposta valida, non so se magari è sbagliata proprio la procedura d'integrazione allora, perchè al momento sto utilizzando a funzione

cumtrapz(segnale) * dt;
pakopako è offline   Rispondi citando il messaggio o parte di esso
Old 08-07-2017, 01:20   #6
kikino
Member
 
L'Avatar di kikino
 
Iscritto dal: Nov 2003
Città: Moro num pais tropical Abençoado por Deus Bonito por natureza
Messaggi: 102
Quote:
Originariamente inviato da pakopako Guarda i messaggi
Perchè io di questo segnale devo effettuare una doppia integrazione, ma non mi serve lo spostamento finale, ma lo spostamento punto per punto, provo a fare un esempio di ciò che intendo:

Essendo il segnale di un'accelerazione verticale, se per esempio ho dei valori di accelerazione di 6 m/s^2, penso che lo spostamento verticale sia elevato rispetto ai punti in cui ho valori di accelerazione vicini allo 0, in cui mi apsetto uno spostamento quasi nulla. Il problema che applicando un filtro a media mobile, il segnale si è vero che si smussa, ma se effettuo l'integrazione di esso non ottengo nulla come risposta valida, non so se magari è sbagliata proprio la procedura d'integrazione allora, perchè al momento sto utilizzando a funzione

cumtrapz(segnale) * dt;
pako esattamente il tuo accelerometro che tipo di sorgente sta analizzando?
magari se informi quello possiamo capire se il segnale ha delle caratteristiche stimabili
__________________
TIRANNIDE indistintamente appellare si debbe ogni qualunque governo, in cui chi è preposto alla esecuzion delle leggi, può farle, distruggerle, infrangerle, interpretarle, impedirle, sospenderle; od anche soltanto deluderle, con sicurezza d'impunità. Vittorio Alfieri 1777
kikino è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
Test ride Can-Am Origin: la moto elettrica che fa dimenticare il motore a scoppio (ma occhio all'autonomia) Test ride Can-Am Origin: la moto elettrica che f...
Logitech G325, G305 e G316 X: il tris per chi non vuole rinunciare a nulla, spendendo poco Logitech G325, G305 e G316 X: il tris per chi no...
Recensione POCO F9 pro: potenza da vero top di gamma, display da 185 Hz e finalmente una fotocamera da prendere sul serio Recensione POCO F9 pro: potenza da vero top di g...
Tra audio e AI: la ricetta di Qualcomm per l'agentic AI Tra audio e AI: la ricetta di Qualcomm per l'age...
Offerte Prime anticipate, robot aspirapo...
ChromeOS non è (ancora) morto: Google fi...
HONOR Magic 9 Pro Max, il nuovo top di g...
Un mini PC totalmente passivo in oro 24 ...
Nothing Headphone (1) Pro ufficiali: tri...
JBL lancia le nuove soundbar Cinema SB p...
Inizia il Prime Day in anticipo Amazon: ...
Quando l'agente IA fa tutto da solo: ven...
Domotica e obsolescenza programmata: la ...
BOOX Picco disponibile al preorder, un e...
Rubano rimorchi con logo NVIDIA pensando...
Il CEO di MongoDB lascia tutto e passa a...
Caro energia, l'UE raccomanda di abbassa...
AMD acquisisce World Labs: 8,2 miliardi ...
Google perde la testa: AI Overview conso...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:18.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v