spacer.png, 0 kB

Torna indietro   Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale > Progetti di Robot > L'angolo di Caronte

Rispondi
 
Strumenti discussione Modalità  visualizzazioe
  #1  
Vecchio 05-11-2011, 23.12.10
L'avatar di Caronte
Caronte Caronte non è collegato
Administrator
 
Data registrazione: 15-10-2009
Residenza: Ferrara
Età : 49
Messaggi: 2,962
Potenza reputazione: 331
Caronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua famaCaronte La sua reputazione è oltre la sua fama
Predefinito Lettura di un canale RC con Basic Atom 24

E' la prima volta che uso il Basic Atom 24. E' rimasto in un cassetto per un bel po di tempo e quindi ho approfittato di questo esperimento per provarlo.

Di seguito acquisirò il segnale derivante da una Ricevente Digitale (RC) per radiocomandi modellistici e la 'interpreterò' con valori numerici tramite il microcontrollore in oggetto.

Disposizione hardware per questo esperimento con i componenti che ho utilizzato:



Ingredienti:

Un Basic Atom (o qualsiasi altro microcontrollore!)

Una scheda SSC32 (o comunque disporre di 2 pin digitali di un microcontrollore)

Un radiocomando ed una ricevente (), pacco batteria dedicato della RC, 2 cavetti per connettere rispettivamente (e senza sbagliare....):

Pin della Ricevente GND (Quello in basso) con il GND della SSC32 (quello all'esterno)

Pin della ricevente del segnale (quello tutto all'interno della SSC32) del canale che si è scelto con l'ingresso digitale della SSC32 (in questo caso p0).

Alimentazione come da datasheet della scheda alla SSC32.

Ora andiamo nell'IDE del basic Atom ed implementiamo il seguente codice:

Codice:
Main
value var long
Pulsin p0,0,value 
if value > 47600 then
High p1
else
Low p1
endif
 
Serout s_out,i9600,["Lettura del canale Rc: ",dec value,13]

Pause 300
Goto Main
Come si può vedere utilizziamo il comando PULSIN (vedi pagina n. 130 del Reference Manual Basic Atom che si scarica QUI, terzo a partire da sopra).

Pulsin a livello di sintassi richiede:

Pulsin pin, state, variable

Dove pin è il pin dal quale acquisiamo il segnale
(nel ns. caso p0), lo stato del pin (0 o 1) ed infine una variabile che dovremo dichiarare (nel ns. caso una variabile LONG nominata value); il tutto separato da virgole.

Il codice di cui sopra (che qui vedete completo di un ciclo if...then) è già predisposto per l'azionamento di un pin digitale (p1) atto ad attivare un relay (vedi scheda dedicata nel mio post precedente) in base ai valori da me prefissati dedotti dalla lettura del canale RC. Questo ciclo è inserito in un loop: Main/Goto Main.

Il dispositivo di codice che ci permette di visualizzare il valore (che ho convertito in decimale DEC) è:

Serout s_out,i9600,["Lettura del canale Rc: ",dec value,13]

dove Serout è il comando che ci permette di inviare alla seriale (e quindi al Terminal 1 della finestra di debug) la lettura della variabile VALUE.

Per questa prova ho attribuito al canale 1 della Ricevente che corrisponde allo Stick di destra. Ricaviamo una lettura numerica che varia proporzionalmente da 45600 circa (Stick tutto su) a 47800 circa (Stick tutto giù), vedi foto,

Stick tutto su:



Stick tutto giù:



QUI IL VIDEO DI TEST

Nel codice è quindi previsto, tramite il ciclo if then, che quando il valore supera la soglia di 47600 il pin è a 1, in caso contario il pin è a 0. Da qui piloteremo l'accensione di un led e quindi attiveremo il Relay della Scheda di cui al mio precedente post.

Per usarlo con gli interrutori del radicomando sarà sufficiente eseguire la lettura del canale interessato e quindi inserire i valori corretti nel ciclo if then.

Vedi Anche QUI


Ciao

Antonio
Rispondi citando
Rispondi


Utenti attualmente attivi che stanno leggendo questa discussione: 1 (0 utenti e 1 ospiti)
 
Strumenti discussione
Modalità  visualizzazioe

Regole di scrittura
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code è Attivato
Le smilies sono Attivato
[IMG] è Attivato
Il codice HTML è Disattivato

Vai al forum

Discussioni simili
Discussione Autore discussione Forum Risposte Ultimo messaggio
basic atom 28 simoneddu Mercatino 0 26-03-2012 18.30.32
Implementare codice in un Basic Atom con adattatore Usb/Seriale PARTE PRIMA Caronte L'angolo di Caronte 2 08-11-2011 21.28.57
Aiuto seriale Basic atom PRO dracom Forum generale 0 22-11-2007 09.25.21
Nuovo canale IRC taddeus Forum generale 0 17-10-2005 16.44.39


Tutti gli orari sono GMT. Adesso sono le: 12.01.24.


Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
Realizzazione siti web Cobaltica Foligno
spacer.png, 0 kB