Archivi tag: tutorial

FilipINO il robot pulitore

FilipINO è un robot nato per pulire il pavimento di casa in modo semplice, rapido ed economico.

Questo piccolo robot è composto da:

– Un driver per motori L298N che ci permette di controllare ben 2         motori.

2011052559723377_2

– 3 sensori ad ultrasuoni HC-SR04 per misurare le distanze di DESTRA/AVANTI/SINISTRA.

hc-sr04_ultrasonic_sensor

 

– 2 Pololu motor  da 6V  con rapporto 30:1.

POLOLU

Ecco come vanno fatti i collegamenti(nel programma i pin potrebbero essere diversi in tal caso cambiateli con un click 😉 ),per gli ultrasuoni dovete ovviamente usare 6 pin 2 per ogni ultrasuono.

hcsr04Arduino_UNO_L298N

 

La logica con cui opera filipINO è molto semplice, perchè non fa altro che analizzare le 3 distanze misurate dagli ultrasuoni,  decidendo dopo delle comparazioni, di andare nella direzione dove ha più spazio.

Scarica il programma cliccando sulla nuvola

download-icon

Alcuni componenti che potrebbero servirvi direttamente da Amazon.

      

 

ArduFonino 1.0 Start 1°

“IPHONE ZERO è il primo modello di iPhone, che Steve Jobs realizzò a 8 anni, nel garage di casa, collegando due lattine di coca-cola con un filo della biancheria e gridando “pronto!” in una delle due lattine mentre sua madre era in ascolto all’altra lattina.Ognuno può realizzarlo con le sue mani, a costo quasi nullo, personalizzando il regalo con una spiritosa cover di carta di giornale.”

ArduFonino è un cellulare opensource creato con arduino, capace di effettuare e ricevere chiamate e di inviare e ricevere messaggi, inoltre con la realizzazione di questo progetto ho voluto gettare le basi per la costruzione di un sistema telefonico elementare. L’idea mi è venuta per semplice curiosità, perché volevo fare qualcosa che nessuno avesse mai fatto, dimostrando a tutti che volere è potere.

 

Clicca qui per vedere la Versione 2.0

 

ArduFonino è composto da 3 parti: 


-Shield di interfacciamento, è la parte con la quale controlliamo il telefono, è costituita da una tastiera di 11 pulsanti, da un display LCD retroilluminato, da un microfono, da un altoparlante, da un trimmer e da 13 resistenze. La disposizione dei componenti è quasi uguale a quella dei vecchi cellulari con tastiera, per via della sua  enorme comodità, inoltre questa interfaccia può essere collegata sia ad un arduino UNO e ad un arduino MEGA.

keyboard-shield comp

-Shield GSM, un circuito che ci permette appunto di ricevere ed inviare chiamate e messaggi, per pilotarlo utilizzeremo dei comandi AT che arduino invierà tramite una comunicazione seriale . Questa shield a integrata l’uscita e l’ingresso audio (tramite un connettore jack), l’antenna ed un modulino GSM.

Compra la tua prima Shield GSM

Arduphone comp

 

-Arduino UNO, un microcontrollore che funzina a 16 Mhz, con 13 pin digitali e 6 analogici è il componente più importante del progetto, perché permette, la realizzazione vera e propria del cellulare, dato che fa da tramite tra le due shield.

Compra il tuo primo Arduino Uno

arduino_uno_large comp

freccia a destra

ArduFonino 1.0 Tastiera 3°

La tastiera in questo progetto è fondamentale, perché è l’unico modo per potersi interfacciare al dispositivo(l’alternativa è usare il Serial Monitor).

Tastiera comp

L’immagine  la schematizzazione circuitale della tastiera, che ci permette di leggere, con un solo pin analogico, ben 10 pulsanti. La logica di funzionamento consiste nell’ assegnare ad ogni resistenza (N) il valore di caduta di tensione pari a  0,5V  e quando un pulsante viene premuto chiude il contatto, restituendo al pin A5 una tensione pari al numero di resistenze nel  ramo per 0,5. La resistenza per fare la partizione è molto grande perché così non avremo grandi perdite.

Ipotizziamo che venga chiuso il contatto J3, la tensione ai capi di A5 sarà uguale a:

Dato che in tutte le resistenza N abbiamo la stessa caduta di tensione ci basterà fare:

Vpulsante = V0 + V1 + V2 = 0,5 + 0,5 + 0,5 = 1,5 V

Tastiera

Una volta realizzato il circuito passiamo alla scrittura del programma, che inizia con un ciclo do, nel quale leggiamo ogni 10 mS il pin A5 e per uscirne basterà premere: o un tasto della tastiera, o il tasto di chiamata.

Successivamente quando usciremo dal ciclo il valore analogico del pulsante premuto sarà convertito nel valore effettivo del tasto, tramite una proporzione (map) ed infine, la funzione ci restituirà questo risultato.

Il problema dell’antirimbalzo è stato risolto non via hardware, ma via software mettendo un ritardo all’interno della funzione. La resistenza Rp  non influisce sul corretto funzionamento della tastiera ( è stata utilizzata per effettuare delle prove in passato).

 

freccia a sinistrafreccia a destra

 

 

 

ArduFonino 1.0 Numero 4°

Questa funzione ci permette di scrivere, tramite la tastiera il numero che vorremo chiamare. All’inizio troviamo delle variabili che verranno incrementate ogni volta che digiteremo qualcosa, facendo scorrere verso destra il numero successivo. Dopo  troveremo un if che, se vero, azzererà tutte le variabili, sennò svolgerà questi due calcoli:

NDC = numero_da_chiamare

 NDC=NDC+ ((numero_digitato)*potenza_posizione_numero);

PPN = potenza_posizione_numero

PPN = PPN / 10;

La logica della formula è molto semplice, se per esempio volessimo scrivere il seguente numero 3331112222, la formula lo calcolerà così:

3*1000000000+3*100000000+3*10000000+1*1000000+1*100000+1*10000+2*1000+

+2*100+2*10+2*1 = 3331112222

IMG_0675

Naturalmente il numero precedente si sommerà con quello successivo ad ogni ciclo.

freccia a sinistra freccia a destra

Arduino Ultrasonic sensor HC-SR04

Il sensore HC-SR04 è un sensore ad ultrasuoni molto facile da interfacciare ad arduino composto da 4 pin:

–      VCC deve essere 5V

–      GND

–      TRIGGER pin per attivare e disattivare il trigger

–      ECHO il pin che ci restituisce il valore della lettura

hc-sr04_ultrasonic_sensor

Per poter acquisire dei dati da questo sensore dovremo solamente mettere a livello logico 1 e poi dopo un ritardo a livello logico 0 il pin di TRIGGER, successivamente leggeremo tramite l’echo il tempo che ha impiegato l’ultrasuono a  ritornare.

Infine ci basterà calcolare tramite una semplice formula la distanza tra sensore ed ostacolo.

Troverete tutte le informazioni all’interno del file ZIP

DOWNLOAD FILE

download-icon

Arduino Touch Screen

In questa pagina vi spiegherò come interfacciare un arduino qualsiasi ad un touch screen RESISTIVO. ci serviranno:

– Un arduino

arduino_uno_large comp

– Un connettorino per il touch screen

connector ds

– Un touchscreen

nintendo-ds-touch-screen-500x500

L’adattatore di colore rosso ci servirà a collegare i pin del touch con quelli di arduino. La logica di funzionamento del touch è molto semplice, esso può essere rappresentato come un insieme di 2 potenziometri.

ASSE_X ASSE_Y

Quando eserciterete una pressione sul touch esso farà variare i valori di questi due componenti,

e per sapere con precisione il punto in cui verrà applicata questa forza ci basterà sapere il valore di X ed Y.

Una volta fatto ciò intersecheremo questi due risultati che ci forniranno il punto di contatto.

    Collegamenti:

   arduino pin A0 (14) collegato ad Y1

    arduino pin A1 (15) collegato ad X2

    arduino pin A2 (16) collegato ad Y2

    arduino pin A3 (17) collegato ad X1

Nel programma i valori di X ed Y saranno in millimetri

X   =    0 mm – 500 mm

Y   =    0 mm – 650 mm

Per Scaricare il programma clicca qui:

download-icon