WEBVTT

00:03.270 --> 00:03.510
OK.

00:03.550 --> 00:04.250
OK.

00:04.270 --> 00:05.580
Cambio dei piani.

00:05.620 --> 00:07.890
So che ho mentito, ma ascoltami.

00:08.890 --> 00:14.580
Ho detto che avremmo usato lo schermo LCD Hitachi ma ho realizzato qualcosa.

00:14.650 --> 00:22.720
Abbiamo le nostre tavole Dino zap legate ai nostri robot e già predisposte per guidare il robot in giro.

00:22.720 --> 00:24.900
Ora c'è molto lavoro da fare.

00:24.940 --> 00:31.840
Volevo anche usare il nostro uomo stravagante per vedere i sensori a ultrasuoni in tandem con il robot.

00:32.200 --> 00:39.700
Quindi prima faremo il sensore ultrasonico perché potresti avere difficoltà a ottenere abbastanza connessioni per tutti i tuoi

00:39.700 --> 00:47.130
attrezzi con i controlli per il robot di tutte le connessioni per il display Hitethi eccetera.

00:47.290 --> 00:55.440
Utilizzeremo la nuova libreria ping che abbiamo appena scaricato nell'ultima lezione.

00:55.600 --> 00:57.640
Questo è il motivo per cui l'abbiamo scaricato.

00:57.940 --> 01:04.100
È per guidare e usare questo sensore ad ultrasuoni.

01:04.370 --> 01:04.820
Va bene.

01:04.840 --> 01:08.170
Quindi, qual è il sensore in ogni caso.

01:08.230 --> 01:14.320
Queste due cose d'argento sono in realtà diffusori ad altissima frequenza.

01:14.340 --> 01:21.870
Infatti operano a frequenze sonore che vanno oltre la portata dell'udito umano.

01:22.200 --> 01:30.870
Ma il range di 40 kilohertz potrebbe seriamente irritare il tuo cane o gatto o le zanzare nella stanza.

01:31.080 --> 01:35.010
Non so che non ho un cane o un gatto e qui è inverno.

01:35.010 --> 01:38.700
Quindi non l'ho ancora testato sulle zanzare.

01:38.970 --> 01:45.840
Ricorderai nel primo modulo che potremmo usare anche gli altoparlanti come microfono.

01:45.840 --> 01:54.810
Bene, questo è quello che hanno fatto qui, mandano un impulso da 40 kilohertz, quindi commutano

01:54.810 --> 02:03.330
l'elettronica per usare gli altoparlanti come microfoni per ascoltare l'eco dalle pareti o dagli ostacoli.

02:03.330 --> 02:13.290
Ora questo scudo ha solo quattro pin DCC in terra e poi gli altri due pin chiamati Trigger ed echo.

02:13.290 --> 02:22.680
Quindi quando si invia un impulso alto di almeno 10 microsecondi al pin di attivazione, la scheda invia un treno

02:22.680 --> 02:25.750
di impulsi a circa 40 kilohertz.

02:26.010 --> 02:30.600
Il suono si spegne e rimbalza su muri o altri ostacoli.

02:30.600 --> 02:41.310
Fa eco alla scheda, quindi ascolta l'eco e le volte quando riceve l'eco dell'elettronica di bordo, quindi invia un

02:41.790 --> 02:52.190
impulso sul pin Echo e la durata di tale impulso è il tempo che intercorre tra la trasmissione e

02:52.730 --> 02:55.580
la ricezione del suono.

02:55.580 --> 03:03.800
Ora, poiché conosciamo la velocità del suono nell'aria, possiamo utilizzarla come metodo non distruttivo

03:03.800 --> 03:11.600
non distruttivo per rilevare oggetti e misurare distanze con quell'oggetto con sorprendente precisione.

03:11.600 --> 03:16.760
Ora la velocità del suono in errore è di circa trecentoquaranta metri al

03:16.760 --> 03:23.840
secondo o zero punto zero tre quattro centimetri per microsecondo o zero punto zero zero tre quattro millimetri per microsecondo.

03:24.170 --> 03:32.590
Il tempo per l'eco è il tempo impiegato dal suono per viaggiare sia verso l'ostacolo che verso il ritorno.

03:32.660 --> 03:41.620
Quindi dividiamo quel tempo a metà che è il tempo necessario per provare il suono a viaggiare solo in un

03:41.630 --> 03:48.410
modo e prendiamo quel tempo in microsecondi moltiplicandolo per zero punto tre tre e voilà

03:48.470 --> 03:53.660
abbiamo appena misurato la distanza dell'oggetto in centimetri senza anche toccandolo.

03:53.690 --> 03:59.620
Quindi le applicazioni di questa tecnologia e della robotica vanno in lungo e in largo.

03:59.690 --> 04:08.390
Tutto dalla navigazione alla mappatura di aree sconosciute per misurare le distanze al carico che

04:08.390 --> 04:16.160
il robot sta per raccogliere ecc. Immagina un robot mobile che guidi attraverso un sistema di

04:16.160 --> 04:22.970
grotte sconosciute con uno di questi sensori, in modo che sappia mirare in direzioni diverse mentre guida attraverso la grotta.

04:22.970 --> 04:30.050
Può prendere misurazioni in tutte le direzioni, memorizzare quelle misurazioni e costruire effettivamente una mappa.

04:30.350 --> 04:38.010
Può sia costruire la mappa sia navigare la mappa mentre prende le misure lungo la strada.

04:38.120 --> 04:47.060
Questo è il principio alla base della navigazione nello slam, che entreremo in gioco in

04:47.330 --> 04:56.790
cinque localizzazioni simultanee e mappatura che sta costruendo la mappa e localizzandosi all'interno di quella mappa.

04:56.900 --> 05:02.850
Allo stesso tempo, esplorando aree precedentemente inesplorate.

05:02.990 --> 05:12.770
Quindi, quello che faremo è usarlo di nuovo come sensore di prossimità, ma lo useremo per misurare le

05:12.800 --> 05:15.260
distanze in modo manuale.

05:15.470 --> 05:22.880
Quindi puoi vederlo direttamente in azione, quindi useremo la nuova libreria ping e poi

05:22.880 --> 05:32.810
la useremo in combinazione con la nostra piattaforma robot mobile per la prossimità al rilevamento che puoi vedere che ho

05:32.810 --> 05:38.840
rimosso il mio sensore di inferenza e l'ho sostituito con l'ultrasonico

05:39.140 --> 05:47.930
sensore Ho appena fatto zaps abbassato in modo che gli emettitori siano rivolti in avanti ho usato

05:48.680 --> 06:01.580
i collegamenti di alimentazione originali che stavo usando sul sensore a infrarossi e collegato il grilletto all'arduino DI aperto sei e il pin Echo si è

06:01.580 --> 06:10.760
aperto di sette userò il nostro sensore come righello senza contatto per ora ho impostato la funzione di

06:10.760 --> 06:19.400
stampa seriale perché invieremo alcuni dati sullo schermo del computer, quindi nella funzione di loop impostiamo il

06:19.400 --> 06:28.310
grilletto alto per 10 microsecondi, quindi impostarlo basso mentre il grilletto è alto e per un breve periodo

06:28.640 --> 06:33.630
di tempo l'elettronica del ricevitore viene bloccata dallo scudo.

06:33.830 --> 06:40.490
Questo non è solo perché l'elettronica deve passare dall'usare gli altoparlanti come diffusori per

06:40.490 --> 06:49.130
poi collegarli agli amplificatori sulla scheda per utilizzarli come microfoni, è anche perché questa intera scheda si scuoterà

06:49.130 --> 06:54.590
realmente dai suoni emessi in modo da dare letture false

06:54.680 --> 07:02.990
Quindi, una volta completato il blocco, gli amplificatori integrati iniziano ad ascoltare il suono da 40 kilohertz

07:02.990 --> 07:07.870
che torna indietro come un'eco e il tempo necessario.

07:07.910 --> 07:14.480
Ora, a causa di questo ritardo necessario e dell'alta velocità del suono, la misura più vicina che puoi misurare

07:14.470 --> 07:18.260
è di due centimetri o poco meno di un pollice.

07:18.260 --> 07:26.300
Ora questo può essere un po 'stretto per l'uso sul nostro robot mobile delicato poiché non è possibile misurare distanze inferiori

07:26.300 --> 07:27.790
a due centimetri.

07:27.880 --> 07:33.680
Ora non è un grosso problema, suppongo intendo solo quanto vicino vuoi arrivare a quel muro comunque.

07:33.990 --> 07:43.170
Il pin Echo diventerà alto dopo una breve pausa e rimarrà in alto fino a quando non sentirà l'eco.

07:43.410 --> 07:50.970
Se non si sente un eco entro trenta otto millisecondi, si verifica un timeout e si presuppone che tutti gli oggetti

07:51.360 --> 07:54.750
là fuori siano al di fuori del suo intervallo.

07:54.750 --> 07:57.570
Quindi il pin dell'eco si spegne.

07:57.570 --> 08:04.980
Quindi, impiegando 38 millisecondi e dividendolo a metà per ottenere la distanza percorsa, il suono viaggiato è di 19 millisecondi a zero

08:05.670 --> 08:11.910
punto zero tre quattro centimetri per microsecondo. La gamma massima è di circa sei punti quattro sei metri o

08:11.910 --> 08:17.370
superiore a 20 piedi o giù di lì per rendere le cose ancora più semplici.

08:17.610 --> 08:28.270
Qualche persona davvero simpatica che lavora con arduino ha scritto un'istruzione chiamata Pulse in pulse nel controllare un pin che tu

08:28.270 --> 08:37.730
chiami e, per quanto tempo il polso sul pin fosse alto o basso, lo dici nel modo che

08:37.730 --> 08:39.020
vuoi misurare.

08:39.380 --> 08:45.290
Nel nostro caso vogliamo misurare per quanto tempo l'impulso diventa alto sul pin 7.

08:45.950 --> 08:57.300
Il nostro impulso di eco-pin restituisce semplicemente il tempo in microsecondi così facile da farci imbrogliare e richiamare l'istruzione dell'impulso

08:57.300 --> 09:03.960
proprio qui diciamo di scandire l'impulso alto sul nostro pin eco.

09:04.020 --> 09:09.120
Ho scelto di memorizzare quel tempo in una variabile chiamata Echo time.

09:09.120 --> 09:13.750
Solo così puoi vedere la matematica eseguita un po 'più facilmente.

09:13.840 --> 09:21.780
Ora abbiamo bisogno di impostare la nostra misurazione della distanza come variabile con un punto fluttuante.

09:21.780 --> 09:24.380
Punto decimale decimale.

09:24.740 --> 09:31.670
Altrimenti la matematica cercherà costantemente di arrotondare i nostri numeri e otteniamo risultati matematici irregolari, quindi prendiamo il

09:32.760 --> 09:41.030
nostro tempo di eco diviso a metà perché il nostro suono ha viaggiato il doppio rispetto a quello che stiamo cercando di

09:41.030 --> 09:41.720
misurare.

09:41.810 --> 09:44.450
Siamo andati lì e ritorno.

09:44.450 --> 09:53.290
Quindi moltiplichiamo quel tempo in microsecondi di zero punto zero tre quattro quattro centimetri per

09:53.510 --> 10:03.950
microsecondo e voilà abbiamo una distanza che sputiamo a quella distanza sul serio monitor di Mol e lì vai.

10:03.980 --> 10:13.460
Quindi questo è il

10:16.200 --> 10:46.350
codice di esempio ad ultrasuoni disponibile nella sezione di download, prosegui e trasferiscilo sul tuo Arduino.

10:46.370 --> 10:51.420
Ci sono diverse limitazioni qui con il mio schizzo molto breve.

10:51.440 --> 11:00.200
Per esempio, se tutto è più lontano dal mio robot di 2 metri, tutto richiede tempo per prendere queste

11:00.200 --> 11:05.480
misure e nel mio caso particolare diciamo che non mi interessa.

11:05.480 --> 11:10.860
Devo solo sapere se c'è un ostacolo immediatamente davanti a me.

11:11.060 --> 11:22.250
Non posso davvero cambiare la mia distanza di timeout, quindi usiamo ora la nostra nuova libreria ping che abbiamo appena installato, la nuova

11:24.890 --> 11:27.330
libreria ping è davvero impressionante.

11:27.350 --> 11:33.200
Può misurare può eseguire il ping e misurare fino a 15 sensori ad ultrasuoni contemporaneamente.

11:33.350 --> 11:40.790
Quindi, tornando a quella navigazione sottile, stavo parlando di come si possa fare una mappatura

11:41.030 --> 11:48.740
piuttosto seria mettendo una serie di questi sensori tutti sottolineando in una forma sferica che potresti

11:48.740 --> 11:55.730
mappare caverne inesplorate o edifici pericolosi e abbandonati di ogni genere di cose interessanti.

11:55.790 --> 12:00.370
Quindi, ecco il codice di esempio fornito con la nuova libreria ping.

12:00.380 --> 12:03.920
Ma l'ho modificato per la nostra lezione.

12:03.920 --> 12:09.670
Il codice è disponibile per il download nella sezione download.

12:09.760 --> 12:19.050
Dobbiamo prima includere la nuova libreria a pagamento che hai già installato, quindi devi solo

12:19.050 --> 12:23.580
includerla ora e subito dopo l'hop.

12:23.580 --> 12:36.350
Cominciamo a trasferire i dati tra il nostro schizzo e la biblioteca, proprio come se fosse una funzione nel nostro schizzo.

12:36.370 --> 12:43.690
Ora ci sono diverse funzioni all'interno della nuova libreria pin che possiamo chiamare, infatti,

12:45.710 --> 12:49.520
ecco la lista sul sito di Arduino

12:53.570 --> 13:05.600
playground, quindi nel nostro caso useremo la funzione sonar ping presente nella libreria in modo che la libreria si aspetti tre variabili da

13:05.600 --> 13:07.520
consegnare ad esso.

13:08.120 --> 13:13.370
Che il nostro pin Dino è collegato al grilletto sulla protezione che il nostro vetro

13:13.370 --> 13:17.030
è collegato al pin dell'eco sullo scudo e al time-out.

13:17.030 --> 13:21.720
Distanza o distanza massima che si desidera misurare in centimetri.

13:22.040 --> 13:27.640
Se si lascia quel numero, per impostazione predefinita verrà impostato a 500 centimetri o cinque metri.

13:27.650 --> 13:36.470
Quindi inviamo questi dati alla libreria richiamando la libreria e facendo riferimento al sonar e quindi inviando

13:36.680 --> 13:38.130
i dati.

13:38.150 --> 13:43.880
Ora, naturalmente, quali dati vengono trasferiti e come varia da una libreria all'altra.

13:43.880 --> 13:46.610
Quindi devi cercare come viene usata la libreria.

13:46.640 --> 13:56.420
E naturalmente puoi leggere tutti questi dettagli sul sito di giochi Arduino dove hai scaricato

13:56.420 --> 13:59.480
la nuova libreria ping.

13:59.480 --> 14:08.580
Quindi impostiamo il monitor serio per stampare i risultati che la libreria restituisce.

14:08.580 --> 14:17.520
Ecco la chiamata a queste funzioni specifiche nella libreria e il valore restituito viene semplicemente stampato

14:17.610 --> 14:19.710
sul monitor seriale.

14:19.710 --> 14:58.380
Quindi vai avanti e mostra il disegno alla lavagna e sperimenta le distanze di misurazione.

14:58.520 --> 14:59.040
No.

14:59.070 --> 15:07.500
Nota come alcuni oggetti riflettono le onde sonore meglio di altri intorno agli oggetti tendono a

15:07.500 --> 15:19.420
riflettere l'eco in direzioni diverse così come gli oggetti su un angolo la tua pelle tende ad assorbire molto del suono ultrasonico

15:19.420 --> 15:26.830
e di conseguenza non riflette tutto il suono indietro al sensore in modo da

15:26.830 --> 15:30.120
ottenere letture errate o errate.

15:30.650 --> 15:37.940
Così ora ti lascio con la sfida che ora sai come leggere la distanza con il sensore ultrasonico ora e sai

15:38.540 --> 15:41.210
come guidare il tuo robot in giro.

15:41.480 --> 15:45.800
Quindi ti sfiderò per la stessa sfida che abbiamo fatto con il sensore a infrarossi.

15:45.950 --> 15:57.110
Avere il robot semplicemente guidare in avanti e quando incontra un ostacolo semplicemente girare e tornare indietro e procedere in

15:57.110 --> 15:58.810
una direzione diversa.

15:58.880 --> 16:10.240
In questo caso la soglia sarà una distanza dall'oggetto che determinerai e misurerai con

16:10.240 --> 16:12.400
sorprendente accuratezza.

16:12.730 --> 16:18.520
Puoi anche imbrogliare e modificare il tuo schizzo del sensore di prossimità a infrarossi.

16:18.650 --> 16:19.230
OK.

16:19.450 --> 16:21.040
Quindi divertiti con quello.
