Torna indietro   Hardware Upgrade Forum > Off Topic > Discussioni Off Topic > Scienza e tecnica

Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint
Dal palco di Proofpoint Protect 2025 emerge la strategia per estendere la protezione dagli utenti agli agenti IA con il lancio di Satori Agents, nuove soluzioni di governance dei dati e partnership rafforzate che ridisegnano il panorama della cybersecurity
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti
Dopo alcuni anni di assenza dai cataloghi dei suoi televisori, Hisense riporta sul mercato una proposta OLED che punta tutto sul rapporto qualità prezzo. Hisense 55A85N è un televisore completo e versatile che riesce a convincere anche senza raggiungere le vette di televisori di altra fascia (e altro prezzo)
Recensione Borderlands 4, tra divertimento e problemi tecnici
Recensione Borderlands 4, tra divertimento e problemi tecnici
Gearbox Software rilancia la saga con Borderlands 4, ora disponibile su PS5, Xbox Series X|S e PC. Tra le novità spiccano nuove abilità di movimento, un pianeta inedito da esplorare e una campagna che lascia al giocatore piena libertà di approccio
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-11-2009, 16:59   #1
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Dati provenienti da accelerometro in spostamento

Ciao a tutti,

ho un accelleromentro a due assi della memsic. Dovrei riuscire a trasformare i dati provenienti dall'accelerometro in uno spostamento X-Y per usarlo come mouse.

Purtroppo il mio spostamento lo ottengo solo se mi muovo al massimo di 90° in un verso, se mi muovo nell'altro verso non succede niente... ed il cursore non torna indietro ma rimane fermo.

ecco i dettagli dal datasheet dell'accelerometro



Devo fare qualche trasformazione?

Ecco il prodotto in questione: http://www.memsic.com/products/MXC6202.htm
__________________
Firma in costruzione

Ultima modifica di suspence : 05-11-2009 alle 17:21.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:00   #2
Satviolence
Senior Member
 
Iscritto dal: Oct 2005
Città: Fortezza Bastiani - Villettopoli del Nord-Est
Messaggi: 1578
-edit-

Non avevo capito bene il problema... strano questo accelerometro!
__________________
citius, altius, fortius

Igitur qui desiderat pacem, praeparet bellum

Ultima modifica di Satviolence : 05-11-2009 alle 20:19.
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:03   #3
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
A questo ci ho pensato, ma considera che devo fare il tutto su un PIC a 8 bit. In pratica non riesco a capire cosa caspita mi sputa fuori sto accelerometro sulla porta I2C...
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:38   #4
Satviolence
Senior Member
 
Iscritto dal: Oct 2005
Città: Fortezza Bastiani - Villettopoli del Nord-Est
Messaggi: 1578
Se noti, X output e Y output sono le componenti di un vettore unitario (cioè x^2+y^2=1).
Praticamente, usato con x e y messi su un piano verticale, ti da le componenti dell'accelerazione di gravità lungo x e y.
Se l'accelerazione è pari a 1 g, allora il modulo del vettore è 1.

Se metti l'accelerometro con x e y sul piano orizzontale, ti darà in uscita le componenti in x e y dell'accelerazione nel piano orizzontale. Il modulo del vettore risultante non sarà unitario, ma sarà il valore dell'accelerazione espresso in g. Allo stesso modo le componenti in x e y sono decimali di 1 g.
__________________
citius, altius, fortius

Igitur qui desiderat pacem, praeparet bellum
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:44   #5
killercode
Senior Member
 
L'Avatar di killercode
 
Iscritto dal: Jun 2007
Messaggi: 1624
Attacca l'uscita ad uno oscilloscopio e guarda cosa esce
killercode è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:49   #6
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da killercode Guarda i messaggi
Attacca l'uscita ad uno oscilloscopio e guarda cosa esce
Non lo posso fare... ho solo una connessione USB
__________________
Firma in costruzione

Ultima modifica di suspence : 05-11-2009 alle 20:56.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 20:57   #7
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da Satviolence Guarda i messaggi
Se noti, X output e Y output sono le componenti di un vettore unitario (cioè x^2+y^2=1).
Praticamente, usato con x e y messi su un piano verticale, ti da le componenti dell'accelerazione di gravità lungo x e y.
Se l'accelerazione è pari a 1 g, allora il modulo del vettore è 1.

Se metti l'accelerometro con x e y sul piano orizzontale, ti darà in uscita le componenti in x e y dell'accelerazione nel piano orizzontale. Il modulo del vettore risultante non sarà unitario, ma sarà il valore dell'accelerazione espresso in g. Allo stesso modo le componenti in x e y sono decimali di 1 g.
Non ti seguo...
Quello che vorrei ottenere è che, se mi sposto in un verso l'uscita sia negativa, nell'altro sia positiva...
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21:15   #8
Satviolence
Senior Member
 
Iscritto dal: Oct 2005
Città: Fortezza Bastiani - Villettopoli del Nord-Est
Messaggi: 1578
Quote:
Originariamente inviato da suspence Guarda i messaggi
Non ti seguo...
Quello che vorrei ottenere è che, se mi sposto in un verso l'uscita sia negativa, nell'altro sia positiva...
Una cosa: leggi bene il datasheet http://www.memsic.com/data/products/...MXC6202xMP.pdf , quello che hai messo all'inizio è solo un esempio e può essere fuorviante (per me lo è stato).
A pagina 2 è scritto chiaramente che l'intervalli di misura è +2 g / -2 g.
A pagina 9 c'è la tabellina:
Resolution - Refreshing rate - Zero-G Offset
10 bits - 400Hz - 512
12 bits - 100Hz - 2048

Cioè col campionamento a 400 Hz la risoluzione del segnale in uscita è di 10 bit (valori da 0 a 1023), con lo zero corrispondente al valore 512. Quindi 0 sarà pari a -2 g, 1023 sarà +2 g.
__________________
citius, altius, fortius

Igitur qui desiderat pacem, praeparet bellum
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21:33   #9
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da Satviolence Guarda i messaggi
Una cosa: leggi bene il datasheet http://www.memsic.com/data/products/...MXC6202xMP.pdf , quello che hai messo all'inizio è solo un esempio e può essere fuorviante (per me lo è stato).
A pagina 2 è scritto chiaramente che l'intervalli di misura è +2 g / -2 g.
A pagina 9 c'è la tabellina:
Resolution - Refreshing rate - Zero-G Offset
10 bits - 400Hz - 512
12 bits - 100Hz - 2048

Cioè col campionamento a 400 Hz la risoluzione del segnale in uscita è di 10 bit (valori da 0 a 1023), con lo zero corrispondente al valore 512. Quindi 0 sarà pari a -2 g, 1023 sarà +2 g.
Penso che adesso sia un pò più chiaro, quindi per eventualmente ottenere il valore negativo posso fare che: se x è minore di 512 allora trasmetto -x, altrimenti x-512...?
Se prendessi solo il byte più significativo?
__________________
Firma in costruzione

Ultima modifica di suspence : 05-11-2009 alle 21:36.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21:43   #10
Satviolence
Senior Member
 
Iscritto dal: Oct 2005
Città: Fortezza Bastiani - Villettopoli del Nord-Est
Messaggi: 1578
Quote:
Originariamente inviato da suspence Guarda i messaggi
Penso che adesso sia un pò più chiaro, quindi per eventualmente ottenere il valore negativo posso fare che: se x è minore di 512 allora trasmetto -x, altrimenti x-512...?
No, devi fare x-offset sempre.
Ricordati della doppia integrazione per ottenere lo spostamento...
__________________
citius, altius, fortius

Igitur qui desiderat pacem, praeparet bellum
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21:47   #11
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da Satviolence Guarda i messaggi
No, devi fare x-offset sempre.
Ricordati della doppia integrazione per ottenere lo spostamento...
l'offset è il valore precedentemente ottenuto?

PS
Per evitare di farla diventare una conversazione a due ho provato a mandarti un PM, ma hai la casella piena
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21:54   #12
Satviolence
Senior Member
 
Iscritto dal: Oct 2005
Città: Fortezza Bastiani - Villettopoli del Nord-Est
Messaggi: 1578
Quote:
Originariamente inviato da suspence Guarda i messaggi
l'offset è il valore precedentemente ottenuto?

PS
Per evitare di farla diventare una conversazione a due ho provato a mandarti un PM, ma hai la casella piena
L'offset è il valore dello 0, cioè 512 o 2048. A quello che ti da in uscita, togli semplicemente 512 o 2048.
Lasciamo stare i PM, perché comunque più di tanto non ti potrò aiutare, visto che sono un meccanico. Magari così si aggrega qualcuno...
__________________
citius, altius, fortius

Igitur qui desiderat pacem, praeparet bellum
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 22:05   #13
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da Satviolence Guarda i messaggi
L'offset è il valore dello 0, cioè 512 o 2048. A quello che ti da in uscita, togli semplicemente 512 o 2048.
Lasciamo stare i PM, perché comunque più di tanto non ti potrò aiutare, visto che sono un meccanico. Magari così si aggrega qualcuno...
Beh, magari si aggregasse qualcuno... inizio ad odiare gli accelerometri...

poichè io salvo solamente il byte più significativo, allora:

Se X è minore di 128 invio -X (lo spostamento sarà da -0 a -127)
Se X è maggiore di 128 invio X-128 (spostamento fra 0 e 127)
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 06:16   #14
85francy85
 
Messaggi: n/a
Quote:
Originariamente inviato da suspence Guarda i messaggi
Beh, magari si aggregasse qualcuno... inizio ad odiare gli accelerometri...

poichè io salvo solamente il byte più significativo, allora:

Se X è minore di 128 invio -X (lo spostamento sarà da -0 a -127)
Se X è maggiore di 128 invio X-128 (spostamento fra 0 e 127)
Già sono pochi bit usali tutti perchè lo devi troncare di 2/4bit ?
Ad ogni modo prendendo 8 bit l'uscita di ogni asse va da 0 a 255 e l'offset lo hai a 128.
Quindi se ricevi 129 invii 1 se ricevi 98 invii -30

Inoltre devi gestire il fatto della doppia integrazione per ottenere una posizione il che può rilevarsi problematico.

E' un progetto che devi fare sulla carta o fisicamente ?
  Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:05   #15
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da 85francy85 Guarda i messaggi
Già sono pochi bit usali tutti perchè lo devi troncare di 2/4bit ?
Ad ogni modo prendendo 8 bit l'uscita di ogni asse va da 0 a 255 e l'offset lo hai a 128.
Quindi se ricevi 129 invii 1 se ricevi 98 invii -30

Inoltre devi gestire il fatto della doppia integrazione per ottenere una posizione il che può rilevarsi problematico.

E' un progetto che devi fare sulla carta o fisicamente ?
Progetto fisico...

quindi per cui devo sempre inviare x-128?
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:21   #16
85francy85
 
Messaggi: n/a
Quote:
Originariamente inviato da suspence Guarda i messaggi
Progetto fisico...

quindi per cui devo sempre inviare x-128?
ti prego niente MP ( se non per inviarmi qualche contatto di utentesse carine e disponibili )

Siccome oltre che il mouse dovrai fare pure i driver dello stesso mouse vedi tu è esattamente la stessa cosa togliere prima o dopo il numero. A questo punto ti conviene toglierlo con il programma sul PC in modo da far girare numeri solo positivi ( e ti risparmi un po' di seghe mentali )
  Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:23   #17
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da 85francy85 Guarda i messaggi
ti prego niente MP ( se non per inviarmi qualche contatto di utentesse carine e disponibili )

Siccome oltre che il mouse dovrai fare pure i driver dello stesso mouse vedi tu è esattamente la stessa cosa togliere prima o dopo il numero. A questo punto ti conviene toglierlo con il programma sul PC in modo da far girare numeri solo positivi ( e ti risparmi un po' di seghe mentali )
Niente driver, solo profili HID
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:38   #18
85francy85
 
Messaggi: n/a
Butta giu un minimo di progetto almeno, ho l'impressione che tu voglia sparare direttamente il valore in uscita dall'accelerometro al PC

Quote:
Originariamente inviato da suspence Guarda i messaggi
Niente driver, solo profili HID
Da quel poco che vedo richedono una posizione assoluta sul piano XY che tu gli devi passare.
  Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:43   #19
suspence
Member
 
L'Avatar di suspence
 
Iscritto dal: Oct 2005
Città: ... e dintorni
Messaggi: 175
Quote:
Originariamente inviato da 85francy85 Guarda i messaggi
Butta giu un minimo di progetto almeno, ho l'impressione che tu voglia sparare direttamente il valore in uscita dall'accelerometro al PC


Da quel poco che vedo richedono una posizione assoluta sul piano XY che tu gli devi passare.
Il progetto c'è... per quanto riguarda X e Y, il profilo prevede anche l'invio di dati relativi...
L'unica cosa che mi manca è trasformare i dati provenienti di quell'accelerometro in spostamento...
__________________
Firma in costruzione
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2009, 08:45   #20
85francy85
 
Messaggi: n/a
Quote:
Originariamente inviato da suspence Guarda i messaggi
Il progetto c'è... per quanto riguarda X e Y, il profilo prevede anche l'invio di dati relativi...
L'unica cosa che mi manca è trasformare i dati provenienti di quell'accelerometro in spostamento...
Dall'accelerometro ricavi l'accelerazione "istantanea" da questa "integrando" ricavi la velocità e "integrando" nuovamente ricavi la posizione.

detto questo auguri non ho idea della precisione che ne derivi siccome teoricamente se non integri giusto allora non distingui la differenza tra un moto uniforme e quando sei fermo
  Rispondi citando il messaggio o parte di esso
 Rispondi


Cybersecurity: email, utenti e agenti IA, la nuova visione di Proofpoint Cybersecurity: email, utenti e agenti IA, la nuo...
Hisense A85N: il ritorno all’OLED è convincente e alla portata di tutti Hisense A85N: il ritorno all’OLED è convi...
Recensione Borderlands 4, tra divertimento e problemi tecnici Recensione Borderlands 4, tra divertimento e pro...
TCL NXTPAPER 60 Ultra: lo smartphone che trasforma la lettura da digitale a naturale TCL NXTPAPER 60 Ultra: lo smartphone che trasfor...
Un fulmine sulla scrivania, Corsair Sabre v2 Pro ridefinisce la velocità nel gaming Un fulmine sulla scrivania, Corsair Sabre v2 Pro...
Windows 11 porta il Wi-Fi 7 alle aziende...
Logitech MX Master 4 subito disponibile ...
'Nonna Skyrim' dice addio all'RPG di Bet...
PlayStation 5 Slim a 399€ o bundle con N...
roborock Qrevo Curv S5X in offerta a 649...
Sapphire Nitro+ B850A WIFI 7: la nuova s...
CraftGPT: un giocatore costruisce ChatGP...
Il Conto Termico 3.0 è ufficiale:...
Tesla inaugura la stazione di ricarica S...
20 super sconti Amazon senza precedenti:...
Un TV 65 pollici a 399€? Si è possibile ...
Internet in Italia: Vodafone trionfa in ...
Electronic Arts: l'acquisizione è...
Apple Intelligence: ecco le app che sono...
Arriva l'aggiornamento di fine settembre...
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: 13:09.


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