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

Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto
be quiet! debutta nel settore mouse da gaming con Dark Perk Ergo e Dark Perk Sym: due modelli gemelli per specifiche, con polling rate di 8.000 Hz anche in wireless, sensore PixArt PAW3950 da 32.000 DPI e autonomia dichiarata fino a 110 ore. Nel test, a 8.000 Hz si arriva a circa 30 ore reali, con ricarica completa in un'ora e mezza
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-11-2009, 17: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 18:21.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21: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 21:19.
Satviolence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21: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, 21: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, 21:44   #5
killercode
Senior Member
 
L'Avatar di killercode
 
Iscritto dal: Jun 2007
Messaggi: 1625
Attacca l'uscita ad uno oscilloscopio e guarda cosa esce
killercode è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21: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 21:56.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 21: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, 22: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, 22: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 22:36.
suspence è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2009, 22: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, 22: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, 22: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, 23: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, 07: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, 09: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, 09: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, 09: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, 09: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, 09: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, 09: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


Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
F1: The Movie, Apple e Formula 1 aprono ...
Amazon Seconda Mano: arriva il 10% extra...
Sysmon diventa nativo su Windows 11: com...
Come aggiornare il PC risparmiando: Amaz...
Amazon testa l'utilizzo dell'AI per film...
BMW i3 Neue Klasse: la berlina elettrica...
Changan Nevo A06 è la prima auto ...
Sony annuncia: sono state vendute ben 92...
Alphabet chiude il 2025 con ricavi annua...
Terribile incidente in Cina, ecco perch&...
Quali sono gli smartphone più potenti a ...
Allerta NGINX: traffico web dirottato tr...
Microsoft punta su sicurezza e qualità: ...
ChromeOS è un condannato a morte:...
Robot aspirapolvere Narwal in super offe...
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: 12:25.


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