Estratto del documento

iBlue

Macchinina telecomandata via Bluetooth

Kristian Abbati, 5B

Anno scolastico 2014/2015

! ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

1. Introduzione

Il progetto consiste essenzialmente in una macchinina comandata a distanza da uno SmartPhone. La “particolarità” del progetto consiste nella sua realizzazione: il tutto infatti è stato realizzato in “casa”: non sono state utilizzate né applicazioni né codici preesistenti.

Gli stessi circuiti sono stati realizzati a mano, quindi non si è fatto ricorso a shield acquistabili comodamente in rete che avrebbero semplificato il tutto.

L’applicazione per il telefono è stata interamente realizzata con un compilatore denominato Processing ed è eseguibile su qualunque dispositivo Android 4.0+.

OpenSource

La parte esterna della macchinina è stata disegnata su misura e stampata in 3D basandosi sulle misure della scheda da adottata.

wrappatura

2. L’applicazione

Come affermato precedentemente, l’applicazione per SmartPhone è stata realizzata con Processing. Non sono state perciò utilizzate applicazioni di terze parti recuperabili facilmente dal Play Store.

L’applicazione si presenta nel seguente modo: 1

ABBATI KRISTIAN - ANNO SCOLASTICO 2014/2015

Lo sviluppo dell’applicazione ha richiesto l’uso di specifiche librerie di Android e una particolare libreria denominata Ketai.

Ketai è una libreria pensata appositamente per Processing che permette di sfruttare al meglio i sensori e i dispositivi network del telefono, la scarsa disponibilità di documentazione in rete (riguardo al Bluetooth) ha però reso più complicato di quanto fosse previsto il processo di stesura del codice di invio e ricezione dati.

OpenSource

L’applicazione (vedi codice e istruzioni allegate) invia continuamente un array di byte di caratteri così composto:

Questo è composto da un carattere di controllo (‘@’), necessario durante il processo di lettura dell’array stesso da parte del microcontrollore (ciò per determinare l’inizio di una nuova stringa), e da una serie di lettere e numeri.

I numeri immediatamente successivi al carattere di controllo indicano rispettivamente il valore della velocità del motore sinistro e destro. Questo numero, che può essere compreso tra 0 e 4, può essere anche sostituito dal carattere ‘R’, che indica la retromarcia.

La serie di ‘T’ ed ‘F’ che segue, indica invece lo stato (che può essere o true o false) dei LED bianchi e rossi, nonché lo stato della modalità “Pro”, che se attiva, raddoppia il valore della velocità dei motori.

In modo analogo, l’applicazione riceve in continuazione dati (sempre sotto forma di array) da parte del microcontrollore. Questo per visualizzare la distanza in tempo reale. 2

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)
  • 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 Width Modulation), quindi in grado di fornire un segnale ad onda quadra a frequenza costante ma con duty cycle variabile, è stato usato per generare i PWM che 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 sì 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 CC2, invece, è il pin attraverso il quale l’integrato viene alimentato, su di esso va applicata la tensione della batteria, mentre V CC1 è il pin al quale va applicata la tensione di riferimento del segnale, in questo caso la V REF del microcontrollore.

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 in, che in questo caso è rappresentato dalla batteria, e di 4 interruttori, nonché del motore stesso.

Gli sono generalmente degli 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, 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

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
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)
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi