Arduino Car

Tesine 2015-18

Scritto da Corsi Davide -Pompei Alessio - Tulini Matteo

Pompei Alessio - Tulini Matteo - Corsi Davide - Classe 5A-IPAI -  Esame di Stato: 2017-2018        UK

Arduino Car
Car Controller con Arduino Uno e Bluetooth
Descrizione Generale

L’ applicazione , Hardware/Software , basata su Arduino Uno ed il modulo bluetooth HC-05 , è in grado tramite l ‘utilizzo di un’ applicazione per smartphone o tablet di controllare una automobilina in policarbonato.

L’automobilina è comandata da: un modulo L298N (motor driver controller) che aziona i 4 motori elettrici , Un modulo HC-05 inoltre ci permette di azionare clacson , luci di emergenza e di posizione e di far andare il veicolo nelle 4 direzioni.

In fig. 1 è riportato lo schema del sistema, in fig. 2 la foto dell'Arduino Car assemblata, in fig.3 un estratto del software di gestione.

  

Il progetto è suddiviso in una
parte
 Hardware
 ed in una parte Software.

Hardware:
1) Arduino Uno
(Sistema di sviluppo programmabile)

2) Modulo Bluetooth HC-05

3) Controllore L298N

Software:
4) App 
Bluetooth

5) Estratto Sketch

 

1

4) Dx4

 
1Arduino Uno (Sistema di sviluppo programmabile)
bandArduino è un sistema (framework) open source che permette la prototipazione rapida e l'apprendimento veloce dei principi fondamentali dell'elettronica e della programmazione. 
È composto da una piattaforma hardware per il physical computing sviluppata presso l'Interaction Design Institute, un istituto di formazione post-dottorale con sede a Ivrea, fondato da Olivetti e Telecom Italia.  Questa si basa su un circuito stampato che integra un microcontrollore con pin connessi alle porte I/O, un regolatore di tensione e un'interfaccia USB che permette la comunicazione con il computer. A questo hardware viene affiancato un ambiente di sviluppo integrato (IDE) multipiattaforma (Linux, Apple Macintosh e Windows). Questo software permette di scrivere programmi (sketch ) con un linguaggio semplice e intuitivo derivato da C/C++ chiamato Wiring (cablare, collegare con cavi).  Arduino può essere utilizzato per lo sviluppo di oggetti interattivi stand-alone (funzionare da solo)ma può anche interagire, tramite collegamento, con software residenti su computer. La particolarità del progetto è che le informazioni sull'hardware e soprattutto i progetti sono disponibili per chiunque: si tratta quindi di un hardware open source. 

La Arduino UNO è una scheda basata sul microcontrollore ATmega328.
La scheda Arduino UNO è dotata di 14 pin di input/output digitali,6 input analogici, un quarzo a 16MHz, un connettore USB, un jack per l'alimentazione, un connettore per la programmazione ICSP ed un pulsantino per il reset della scheda. La scheda inoltre fornisce tutto ciò che è necessario per supportare il funzionamento del microcontrollore.
Per utilizzare la Arduino UNO è necessario connettere la scheda ad un PC tramite uncavo USB oppure alimentare la scheda tramite un adattatore AC/DC o tramite una semplice batteria.

UKArduino is an open source system (framework) that allows rapid prototyping and fast learning of the fundamental principles of electronics and programming. It is composed of a hardware platform for physical computing developed at the Interaction Design Institute, a post-doctoral training institute based in Ivrea, founded by Olivetti and Telecom Italia. This is based on a printed circuit that integrates a microcontroller with pins connected to the I / O ports, a voltage regulator and a USB interface that allows communication with the computer. This hardware is joined by a multi-platform integrated development environment (IDE) (Linux, Apple Macintosh and Windows). This software allows you to write programs (sketch) with a simple and intuitive language derived from C / C ++ called Wiring (wire, connect with cables). Arduino can be used for the development of stand-alone interactive objects (to work alone) but it can also interact, through connection, with software resident on a computer. The peculiarity of the project is that the information on the hardware and especially the projects are available to anyone: it is therefore an open source hardware.
The arduino UNO is a board based on the ATmega328 microcontroller.
The arduino UNO board is equipped with 14 digital input/output pins, 6 analogic inputs, a 16MHz quartz, a USB connector, a power jack, a ICSP programming connector and a reset button.
The board also provides anything you may need to support the microcontroller's operation.
To use the arduino Uno you need to connect the board to a PC by using a USB cable or power the card  by using a AC/DC adapter or by a simple battery.

2) Modulo Bluetooth HC-05
Il modulo Bluetooth HC-05 è uno dei moduli più popolari e poco costosi utilizzati per le comunicazioni RF, il suo costo è di meno di 10 € e risulta facile da implementare nei progetti.
Il modulo ha una portata di 10 mt, e si imposta facilmente tramite comandi AT ed è programmabile sia come master che come slave, a differenza del modulo HC-06 che è utilizzabile solo come slave. Il modulo permette di trasformare una porta UART/USART, più comunemente conosciuta come seriale in una porta Bluetooth, generalmente con profilo SPP(Serial Port Profile), diventando così una seriale over bluetoooth.

Normalmente questo dispositivo viene usato quando si vuole far comunicare un microprocessore (MCU), per esempio un processore ATmel di norma montato su schede arduino con il mondo esterno, che può essere uno smartphone, un personal computer, o un altro dispositivo fornito di una connessione Bluetooth.
Il modulo può essere trovato sia come semplice componente, sia già montato su una scheda di breakout.
La tensione di alimentazione può essere compresa tra i 3,6Vdc e i 6Vdc, mentre le linee dati sono a 3,3Vdc, il peso dell'oggetto è di 5 gr.

Caratteristiche tecniche:
• Dimensione minime (riferito al solo modulo) 28 x 15 x 2,35 mm
• Versione del Bluetooth è la v 2.0 + EDR.
• Frequenza di funzionamento è 2.4GHz ISM band.
• Processore a bordo è un CSR Bluecore4.
• Tensione di alimentazione consigliata 3,3 V 50mA.
• Corrente richiesta in fase di accoppiamento è circa 30/40 mA mentre in fase di comunicazione è di circa 8 mA.
• Possibili velocità della seriale configurabili 4800, 9600, 19200, 38400, 57600, 115200, 234000, 460800, 921600, 1382400 bps.
• Il modulo HC Bluetooth è di classe 2 (potenza in mW 2,5, potenza dBm 4, distanza metri circa 10).

3) Controllore L298N

ck 1064 l298n driver medTra i tanti moduli ora in commercio per pilotare dei motori elettrici in corrente continua se ne può trovare una denominata L298N Dual H-Bridge Motor Controller di piccole dimensioni ed estremamente compatta misura solo 4.3 cm x 4.3 cm x 2.7 cm e dal peso di soli 28 gr.

Si tratta di una scheda driver con finale L298 della STMicroelectronics, al suo interno troviamo due ponti H integrati, che supportano un elevato voltaggio (teoricamente sino a 46V) ed elevate correnti (2A per ponte) e che possono essere pilotati con livelli in logica TTL. Ciascun ponte può essere disabilitato o abilitato tramite il relativo piedino di enable per comandare un motore passo passo o due motori DC direttamente da Arduino o altri microcontrollori .
Sulla scheda, oltre all' integrato L298, troviamo i diodi di ricircolo, per la sua alimentazione è richiesta una doppia alimentazione: 5Vdc per la logica e una tensione compresa tra 5 e 35Vdc per l'alimentazione del motore, la corrente in uscita è di ben 2A su ogni canale.
La scheda è basata sul chip L298N che viene comunemente utilizzato dagli hobbisti. Questa è la stessa scheda driver del motore utilizzata per il kit follower di linea e per tutte le altre applicazioni di progetto di automobili robotiche. La scheda può pilotare 2 motori cc o 1 motore passo-passo e può gestire corrente fino a 2 A con una tensione compresa tra 4,5 V e 30 V.
La scheda ha pin ENA e ENB per controllare la velocità del motore fornendo questo pin con PWM. 4 pin di ingresso o controllo della direzione del motore IN1 e IN2 per il motore A e IN3 e IN4 per il motore B. È inoltre presente un LED di bordo per monitorare visivamente i pin di controllo della direzione. È incluso anche un regolatore a bordo 5 V che è un buon punto di vantaggio, ora disponi di un binario comune da 5 V per tutti i tuoi moduli e sensori.

Principio di funzionamento dell’ L298N:
Gli H-Bridge vengono generalmente utilizzati per controllare la velocità e la direzione dei motori, ma possono essere utilizzati per altri progetti, come ad esempio il pilotaggio della luminosità di determinati progetti di illuminazione come array di LED ad alta potenza.

Come funziona:
Un H-Bridge è un circuito in grado di pilotare una corrente in entrambe le polarità ed essere controllato da * Pulse Width Modulation (PWM)
Pwm= uscita a tensione variabile.
* La modulazione della larghezza di impulso è un mezzo per controllare la durata di un impulso elettronico. Nei motori si cerca di immaginare il pennello come una ruota idraulica e gli elettroni come le goccioline d'acqua che scorre. La tensione sarebbe l'acqua che scorre sulla ruota a una velocità costante, più acqua scorre più alta è la tensione. I motori sono tarati a determinate tensioni e possono essere danneggiati se la tensione viene applicata in modo eccessivo o se viene fatta cadere rapidamente per rallentare il motore. Quindi PWM. Prendi l'analogia con la ruota idraulica e pensa che l'acqua lo colpisca a impulsi ma a flusso costante. Più gli impulsi sono lunghi più la ruota si gira più velocemente, più gli impulsi sono brevi, più lentamente ruota la ruota idraulica. I motori dureranno molto più a lungo e saranno più affidabili se controllati tramite PWM.

ck 1064 l298n driver medmotor wiring diagram awesome arduino basics hooking up dc motors apc an h bridge is electrical of motor wiring diagram

Pins:  
Out 1: Motor A lead out  Out 2: Motor A lead out 
Out 3: motore B in uscita Out 4: Motore B in uscita
(può essere effettivamente da 5v-35v, appena segnato come 12v)
GND: terra 5v: input 5v (non necessario se la tua fonte di alimentazione è 7v-35v, se la fonte di alimentazione è 7v-35v allora può funzionare come uscita 5v)
EnB: abilita il segnale PWM per il motore B EnA: abilita il segnale PWM per il motore A
In1: abilita il motore A In2: Abilita motore A
 In3: Abilita motore B  In4: Abilita motore B 

Specifiche tecniche:
Chip a ponte a doppia H: L298N
Tensione logica: 5 V Tensione: 5 V-35 V
Corrente logica: 0-36mA Corrente di azionamento: 2A (MAX single bridge)
Potenza massima: 25W
Dimensioni: 43 x 43 x 26 mm
Peso: 26g

* Alimentatore 5v incorporato, quando la tensione di pilotaggio è 7v-35v

Applicazione Per SmartPhone:

Con Arduino Bluetooth Car Control  siamo in grado di realizzare un prototipo di automobilina radiocomandata con bluetooth e l`uso dello smartphone Android e di una scheda Arduino.

     FUNZIONI:

       - 4 tasti per la guida in tutte le direzioni
       - Tasto Clacson
       - Tasto Accensione Luci Anteriori
       - Tasto Accensione Luci posteriori (luci freni)
       - Tasto Accensione luci di emergenza
       - Visualizzazione stato connessione bluetooth

 

 

 

 

 

3-I componenti utilizzati:

  1.  Arduino UNO
  2.  Chassis in Policarbonato
  3. 8 Batterie tipo AA 1,5v
  4. 1 Batteria da 9v
  5. 2 Contenitori Portabatterie
  6. Cavetti Maschio/Femmina
  7. 4 Motori
  8. 2 mini breadboard
  9.  Applicazione per Smartphone
  10. 8 Led
  11. 1 buzzer

 

 

 

 

 Bibliografia:
1) Appunti scolastici
2) http://www.adrirobot.it
3) https://www.arduino.cc
4
) https://www.progettiarduino.com/