ENCICLOPEDIA DELLA RADIOELETTRONICA ED ELETTRICA Manipolatore con sensore di accelerazione. Enciclopedia dell'elettronica radio e dell'ingegneria elettrica Enciclopedia della radioelettronica e dell'elettrotecnica / microcontrollori Per lavorare su un PC oggi vengono utilizzati vari manipolatori: mouse, joystick, trackball. L'articolo descrive un altro tipo di manipolatore che sostituisce il "mouse" del computer, ma non richiede una superficie orizzontale piana per muoversi. Puoi semplicemente tenerlo in mano e il puntatore del "mouse" si sposterà quando inclini il manipolatore nella direzione appropriata. Questo metodo di controllo può essere molto efficace in alcuni giochi per computer, ad esempio nei simulatori di volo o come manipolatore alternativo per laptop. Il manipolatore proposto (il suo diagramma schematico è mostrato in Fig. 1) si basa su un microcontrollore PIC16F84A (MC) e un misuratore di accelerazione integrato ADXL202E (accelerometro) di Analog Devices. Questi dispositivi sono sensori di accelerazione lineare e sono ampiamente utilizzati per misurare gli angoli di inclinazione dei corpi, le forze inerziali, i carichi d'urto e le vibrazioni. L'accelerometro ADXL202E è biassiale per un'accelerazione massima di ±2g in entrambi gli assi [1]. Per comodità di interfacciamento con l'MC, i segnali di uscita di questo microcircuito sono impulsi rettangolari con una frequenza di ripetizione costante. Le informazioni sull'accelerazione sono trasmesse dalla loro durata relativa (il rapporto tra la durata dell'impulso e il periodo di oscillazione) [2]. Una durata di 0,5 corrisponde a zero accelerazione. Esistono attualmente tre tipi di interfaccia per i dispositivi mouse: seriale, PS/2 e USB. L'interfaccia seriale è la più semplice da implementare sia dal punto di vista hardware che software. Per l'interfaccia seriale, il protocollo più comune è "microsoft mouse", che è una trasmissione seriale di tre byte nel formato 7N1 (sette bit di informazione, nessun bit di parità, un bit di stop) alla velocità di 1200 bps. La descrizione dei byte di informazioni è fornita nella tabella. 1. Va notato che il log. 1 nell'interfaccia RS-232 corrisponde al livello -12 e il log. 0 - +12 V. Il diagramma di trasmissione del primo byte, corrispondente al movimento zero lungo gli assi e al pulsante destro premuto (SB2), è mostrato in fig. 2. La stragrande maggioranza delle moderne schede madri dispone di un adattatore di interfaccia seriale integrato che funziona in modo stabile quando i livelli TTL vengono applicati all'ingresso. Il driver del sistema operativo può riconoscere il mouse impostando il segnale RTS e il mouse dovrebbe restituire il valore 0x4D (simbolo "M"). Il movimento relativo del mouse viene inviato come dx (valore positivo significa spostamento a destra) e dy (valore positivo significa spostamento verso il basso). La tensione di alimentazione del manipolatore è formata dal segnale RTS utilizzando il diodo Zener VD1. Durante il funzionamento, il driver del mouse mantiene un livello costante di +12 V su questa uscita. Gli impulsi di uscita del chip DD1 vengono elaborati dal DD2 MK e convertiti in segnali di interfaccia seriale, che vengono inviati attraverso il connettore XP1 alla porta COM del computer. I pulsanti SB1, SB2 del manipolatore corrispondono ai pulsanti sinistro e destro di un mouse standard. L'interruttore SA1 può selezionare le caratteristiche del manipolatore: una dipendenza lineare o quadratica del movimento del puntatore dall'angolo del manipolatore. Consideriamo brevemente i punti principali del programma di controllo MC. Dopo aver acceso l'alimentazione, configura le porte I/O, interrompe le sorgenti ed invia una sequenza di byte alla porta COM per identificarsi come dispositivo di tipo "mouse". Successivamente, l'MK attende un'interruzione dal chip DD1 e misura la durata dell'impulso utilizzando il timer integrato. Allo stesso tempo, interroga ciclicamente i pulsanti SB1 e SB2. Quando lo stato di uno di essi cambia o si verifica un'accelerazione diversa da zero, viene trasmessa una sequenza di tre byte secondo la tabella. 1. Lo stato dell'interruttore SA1 viene verificato prima di ogni invio di una sequenza di byte, che consente di modificare la modalità operativa del manipolatore direttamente durante il suo utilizzo. Il resistore R1 imposta la frequenza di ripetizione dell'impulso all'uscita DD1, R3 protegge la porta MK dal sovraccarico in caso di cortocircuito accidentale dei fili nel cavo e nel connettore. Tutte le parti del manipolatore, ad eccezione della forcella XP1, sono montate su un circuito stampato. Il chip DD1 si trova sul lato inferiore della scheda (pin up) ed è orientato in modo tale che il suo asse X dia il movimento del cursore sul piano orizzontale e l'asse Y su quello verticale. La numerazione delle conclusioni DD1 in fig. 1 corrisponde al microcircuito nel pacchetto LCC-8 (i numeri dei pin sono indicati tra parentesi quando si utilizza il microcircuito nel pacchetto QC-14). I condensatori C1, C2 e il resistore R1 devono essere posizionati in prossimità del chip DD1. Nel dispositivo è consentito l'uso di MK PIC16F84A in qualsiasi progetto. Forcella XP1 - computer DB-9F. La lunghezza del cavo di collegamento non supera i 2 m. I codici del programma di controllo MK sono riportati in Tabella. 2. Durante la programmazione, è necessario impostare i seguenti valori di bit nella parola di configurazione: tipo di oscillatore (OSC) - HS, timer watchdog (WDT) disattivato, ritardo dopo l'accensione (PWRTE) disattivato. Assemblato da parti riparabili e senza errori nell'installazione (e, ovviamente, nel programma MK), il dispositivo di regolazione non richiede. L'unica cosa che potrebbe essere necessario fare (quando si utilizzano alcuni casi di risonatori al quarzo) è scegliere la costante di pausa nel programma MK, che è responsabile della formazione del tasso di cambio. La discrepanza tra il valore di questa costante si manifesta nel movimento caotico del puntatore sullo schermo con la posizione del manipolatore invariata. La sensibilità entro piccoli limiti può essere modificata selezionando il resistore R1. La maggior parte dei sistemi operativi esistenti descrive il manipolatore descritto come un mouse standard per una porta seriale e non richiede un driver speciale. Si noti che il dispositivo non funziona tramite l'adattatore COM->PS / 2, poiché supporta solo un'interfaccia seriale. Il codice sorgente del programma per MK Letteratura
Autore: S.Kuleshov, Kurgan Vedi altri articoli sezione microcontrollori. Leggere e scrivere utile commenti su questo articolo. Ultime notizie di scienza e tecnologia, nuova elettronica: Macchina per diradare i fiori nei giardini
02.05.2024 Microscopio infrarosso avanzato
02.05.2024 Trappola d'aria per insetti
01.05.2024
Altre notizie interessanti: ▪ Pannello LCD HDTV da 30 pollici ▪ Stampante LED OKI con toner bianco ▪ Nanohousing per i batteri amanti del sole ▪ Riparazione del becco utilizzando un computer ▪ Stampa 3D di piccoli dettagli News feed di scienza e tecnologia, nuova elettronica
Materiali interessanti della Biblioteca Tecnica Libera: ▪ sezione del sito Amplificatori di potenza. Selezione dell'articolo ▪ articolo Lermontov Mikhail Yurievich. Aforismi famosi ▪ articolo Qual è la differenza tra asparagi bianchi, verdi e viola? Risposta dettagliata ▪ articolo Lavori di misurazione radio. Istruzioni standard sulla protezione del lavoro ▪ articolo Stucchi in gomma per vetro. Ricette e consigli semplici
Lascia il tuo commento su questo articolo: Tutte le lingue di questa pagina Homepage | Biblioteca | Articoli | Mappa del sito | Recensioni del sito www.diagram.com.ua |