Anteprima
Vedrai una selezione di 8 pagine su 34
Macchinina telecomandata via Bluetooth, tesina Pag. 1 Macchinina telecomandata via Bluetooth, tesina Pag. 2
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 6
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 11
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 16
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 21
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 26
Anteprima di 8 pagg. su 34.
Scarica il documento per vederlo tutto.
Macchinina telecomandata via Bluetooth, tesina Pag. 31
1 su 34
Disdici quando vuoi 162x117
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Sintesi
Introduzione Macchinina telecomandata via Bluetooth, tesina


Questa
tesina
è la descrizione di un progetto realizzato a casa e portato all'esame.
Il progetto consiste in una macchinina comandata via Bluetooth da un app che ho realizzato da solo con Processing.

Le materie che compaiono in questo progetto sono:
TPSEE (sensori)
Elettronica (motori e ponte H)
SIstemi (applicazione per smartphone e microcontrollore)
Estratto del documento

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

3. Modulo comunicazione seriale bluetooth (HC-05)

In questo progetto la comunicazione seriale costante tra lo SmartPhone e la macchinina è

essenziale. Volendo usare il bluetooth, standard di comunicazione ormai presente in ogni

dispositivo portatile, la macchinina deve poter anch’essa comunicare via bluetooth con il

telefono. Per far ciò si è adottato il modulino HC-05.

Quest’ultimo converte il segnale ricevuto via bluetooth in un segnale adatto per la lettura

seriale del microcontrollore e, viceversa, converte il segnale seriale in uscita dal

microcontrollore in un segnale bluetooth.

È composto di 6 pin:

- I 2 pin di alimentazione (V e GND)

CC

- I pin RXD e TXD, rispettivamente per la ricezione e la trasmissione dei dati

- Un pin di stato, il cui valore è alto se il modulino è connesso ad un altro

dispositivo, basso in caso contrario

- il pin “Key”, che viene usato per attivare la modalità AT (permette di rinominare il

dispositivo, cambiare la password di default)

4. Microcontrollore e programma

Il microcontrollore utilizzato è stato l’MSP430G2553, che è il capostipite della famiglia

MSP430 della Texas Instruments. È un microcontrollore a basso consumo energetico e

lavora a 16 MHz.

Per farlo lavorare sulla macchinina, è stato alimentato a

3,3 V e ai pin RXD e TXD gli sono stati collegati

rispettivamente i pin TXD e RXD dell’HC-05.

Disponendo di diversi piedini in grado di fornire un segnale

PWM (Pulse quindi in grado di fornire un

Width Modulation),

segnale ad onda quadra a frequenza costante ma con duty

variabile, è stato usato per generare i PWM che

cycle

controllano la velocità dei motori.

A sua volta, gli altri piedini disponibili sono stati usati per il controllo dei LED e del sensore di

distanza HC-SR04 (che verrà approfondito nella sezione successiva).

La possibilità di sfruttare il sensore interno di temperatura ha permesso la visualizzazione

di quest’ultima sul telefono.

Il programma per il microcontrollore è stato realizzato usando “Energia”, un

software molto simile all’ambiente di lavoro Arduino.

OpenSource

Il programma, il cui codice commentato è allegato in fondo, fa si che il micro

acquisisca costantemente i dati ricevuti dall’HC-05 e ne spedisca altri che contengono le

informazioni riguardanti la batteria, la temperatura e la distanza all’app. 3

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

5. Sensors

This project involves the use of two sensors: the proximity sensor and the temperature

transducer.

The proximity sensor, which should be better called “Ultrasonic ranging module”, provides

the distance between an object and the RC car (from 2 to 400 cm).

It has been used in order to slow down and stop the car in case it gets too close to

something such as a wall or any other obstacle.

It consists of four pins, two of them are the voltage supply ones, instead the others are the

“Trigger” and the “Echo” pins. In fact, the sensor exploits the echo effect:

As it is triggered, the module sends out an eight cycle

burst of ultrasound (at 40 kHz), at the same time, the

“Echo” pin is set, and, as soon as the ultrasound burst

bounces back to the receiver, the “Echo” returns to its

low level value.

Thanks to the “capture mode” of the micro-controller it

is then possible to determine the time that elapses

between the moment the signal has been sent out and

the moment it bounces back measuring the amount of time during

which the “Echo” pin was set high.

Using the formula which is provided in the sensor data-sheet it is finally

possible to calculate the distance in inches or centimetres.

The incorporated temperature sensor on the micro-controller, which features a wide

temperature range (-50 °C to 100 °C), as most of temperature sensor do, provides a voltage

output that is proportional to the temperature it detects.

Since its output is an analog value, it has to be converted into a digital value so that it can

be displayed on the mobile phone. To do that it is necessary to convert that voltage using

an analog-to-digital converter (ADC) which is embedded in the micro-controller.

6. Ponte H e motore DC

Il ponte H è un circuito che permette l’applicazione di una tensione su un carico in

entrambe le polarità; è stato perciò adottato in questo progetto per far ruotare i motori in

entrambe le direzioni.

Necessitando di due circuiti di questo tipo, è stato utilizzato un L293, che oltre a

supportare tensioni fino ai 36 V, resiste correnti fino ad 1 A (grazie ai Darlington in

uscita). Il suo diagramma delle uscite è il seguente: 4

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

I due ponti sono disposti sui due lati dell’integrato, e, come si può notare, su ogni lato ci

sono due piedini di ingresso dei segnali di controllo (contrassegnati dalla lettera A) e due

uscite (Y). Per controllare il singolo motore, infatti, si necessita di due segnali, un segnale

per la marcia in avanti e uno per la marcia indietro.

Il piedino V , invece, è il pin attraverso il quale l’integrato viene alimentato, su di esso va

CC2

applicata la tensione della batteria, mentre V è il pin al quale va applicata la tensione di

CC1

riferimento del segnale, in questo caso la V del microcontrollore.

REF

Volendo tenere sempre attive le uscite, i pin di Enable sono collegati direttamente alla V .

REF

Lo schema di un ponte H generico è quello di figura:

In esso vi si nota la presenza di V , che in questo caso è

in

rappresentato dalla batteria, e di 4 interruttori, nonché

del motore stesso.

Gli sono generalmente degli interruttori

switch

elettronici, quindi dei transistor: se al loro ingresso

viene applicato un segnale di piccola entità

(ovviamente se lavorano nella configurazione da

interruttori), aprono o chiudono un tratto di circuito

facendo scorrere o meno la corrente.

La possibilità di poter chiudere e aprire gli S1, S2,

switch

S3 ed S4 ci permette di poter far lavorare il motore nelle condizioni qui sotto rappresentate:

Come si può vedere, nelle due situazioni rappresentate, la tensione V

in

cade in due modi diversi sui motori, la polarità della tensione di

armatura quindi è diversa, e di conseguenza lo è la corrente che

scorre nel rotore.

Sapendo che un conduttore percorso da corrente immerso in un

campo magnetico con vettore di induzione B, è soggetto ad una

forza F perpendicolare al piano formato da B e dalla corrente

(Legge di Lorentz), è logico concludere che se la corrente

scorre in senso opposto, la forza F “spingerà” in un’altra

direzione.

I morsetti dei motori però, non possono essere collegati direttamente alle uscite del L293:

affinché i motori non si deteriorino dopo qualche utilizzo sono necessari i cosiddetti diodi

volano. 5

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

Si immagini ad esempio che un interruttore

si apra improvvisamente; la corrente

tenderebbe a 0 in un istante brevissimo, e

ciò provocherebbe un elevata caduta di

potenziale sui motori, essendo carichi

induttivi infatti, anche per essi vale la

formula: V = L·(dI/dt)

Si adotta perciò la soluzione circuitale proposta dal costruttore nel datasheet che fornisce

una via di uscita alla corrente appunto attraverso i diodi.

7. Motori ed alimentazione

Per muovere la macchinina sono stati utilizzati due motori in continua di

piccole dimensioni aventi coppia 150 g/cm.

Alla massima velocità assorbono 100 mA l’uno e ruotano ad una

velocità di 500 rpm.

L’intero sistema è alimentato da una batteria ai polimeri di litio da 7,4 V avente

capienza 1300 mAh, quest’ultima è composta di due celle da 3,7 V .

Il suo livello di carica è costantemente monitorato in quanto la tensione di una

cella viene, una volta ridotta da un partitore di tensione, applicata all’ingresso

dell’ADC del microcontrollore e visualizzata sul telefono.

Per alimentare il microcontrollore la tensione è stata dovuta essere ridotta a 3,3 V.

Per far ciò è stato utilizzato un regolatore di tensione (LM317) opportunamente configurato

che fornisce una tensione costante in uscita anche a seguito di variazioni della tensione di

alimentazione.

Case

8. (stampa 3D)

Il case che racchiude la macchinina è stato disegnato e poi stampato in 3D.

La foto a sinistra ritrae il processo di stampa in 3D del lato della macchinina, mentre la foto

a destra rappresenta l’ambiente di lavoro SketchUp, un programma gratuito di Google

utilizzato per il CAD 3D a livello non professionale. 6

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

Allegati

A. Schema a blocchi della macchinina pag. A1

B. Illustrazione funzionamento applicazione pag. B1

Flowchart applicazione Android pag. B3

Codice applicazione Android pag. B4

C. Flowchart programma microcontrollore pag. C1

Codice programma microcontrollore pag. C2

D. Schema elettrico pag. D1

Schema completo pag. D2

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

così due

ad

differenza essere

controllo la che

in di (effetto

serie

ruotare determina tempo

sensore

Facendo tra

può ritorno

una

intercorre

di una di il

1

segnali misurando

mandando

distanza

che negativa. motori

applica un

distanza

motori loro

che

L293)

versi. LED

potenziale di

sui (HCSR-04) che al

ai ultrasuoni

di

riceve, Controllo

Basandosi tratta

i - intercorre

o permette e

entrambi Controllo elementi

distanza

Sensore

H

H positiva impulsi

Sensore

(Ponte

Ponte eco).

che Si

di litio

di

polimeri

macchinina

della

controlla di

quali

allo livello

informazioni,

spedisce

valore ai

il

telefono e batteria

microcontrollore

la

il

blocchi la

tra

continuamente

dal altre

LED. e una

intercorre Microcontrollore

ricevuti (MSP430G2553)

ostacoli ad

i

e da

motori insieme batteria.

del Alimentato

dati

Microcontrollore temperatura

che gli

a dei

i SmartPhone

Acquisisce della

Elaborando

Schema velocità e

distanza stessa carica

la la e

comunicazione trasferire via microcontrollore

ricevute

di

compito

comunicazione informazioni

la

bluetooth per al

il

(HC-05) viceversa.

ha

modulo bluetooth

seriale

HC-05

seriale

Modulo

la rendendo determinate

caratteri

basandosi determina

invia le

Il

rappresenta schermo, motori.

ciò

progetto: di microcontrollore di

all’HC-05, stringa

sullo dei

microcontrollore

SmartPhone visualizzazione schermo.

velocità

dita

del SmartPhone

caratteri una

importante iBlue)

delle della sullo

dal

inoltre,

per posizione regolazione

di

Applicazione la informazioni (app

proveniente

al stringa

più possibile

Assieme Riceve

parte sulla una la A1

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

Funzionamento app

L’applicazione è installabile su ogni dispositivo Android 4.0+

Non necessita di particolari permessi, se non quello di poter attivare ed utilizzare

il bluetooth.

1. All’apertura dell’app, viene richiesta l’attivazione del bluetooth nel caso non fosse già

attivo. 3

2. Viene quindi richiesta la scelta del dispositivo a cui connettersi: in questo caso HC-05.

3. Subito dopo, fino allo stabilimento di una connessione con la macchinina, sul telefono

viene visualizzata una schermata di attesa che in genere dura un paio di secondi. B1

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

4. Una volta stabilita a connessione apparirà la schermata di controllo. Nella status bar

verrà indicata la temperatura della CPU e, nel caso in cui l’ingresso dell’ADC dedicato al

controllo del livello di carica non riveli nulla al suo ingresso, comparirà un messaggio per

ricordarlo.

Al centro. come già noto, viene visualizzata la distanza rilevata dal sensore ad ultrasuoni.

5. Funzionamento regolare dell’app: 3 A1 B2

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

Flowchart applicazione SmartPhone

START

1

Impostazioni layout

1 NO

Bluetooth attivo? Attivazione

Selezione dispositivo NO

Connesso? Schermata attesa

Visualizzazione grafica

Ricezione e

visualizzazione dati

Elaborazione posizione

dita

Invio dati Bluetooth B3

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

//Abbati Kristian 5B

//Anno scolastico 2014/2015

//======================================================================

//==========================PARTE 1/3===================================

//=========================="iBlue"=====================================

//==============Dichiarazioni globali====================================

float handleX1, handleX2;

// Coordinate manopole (X)

float MouseY1=315, MouseY2=315;

Dettagli
34 pagine
10 download