1 00:00:06,678 --> 00:00:08,800 [Powered by Google Translate] CHRISTOPHER BARTHOLOMEOS: Dus je hebt waarschijnlijk gehoord van een 2 00:00:08,800 --> 00:00:11,610 veel over Arduino, en al de briljante manieren het zou kunnen zijn 3 00:00:11,610 --> 00:00:15,270 geprogrammeerd met behulp van C om input te ontvangen van randapparatuur 4 00:00:15,270 --> 00:00:17,760 zoals knoppen, sensoren en knoppen. 5 00:00:17,760 --> 00:00:20,970 Of weergave en de uitvoer te controleren door middel van fysieke componenten 6 00:00:20,970 --> 00:00:24,130 zoals verlichting, luidsprekers, servo's en motoren. 7 00:00:24,130 --> 00:00:27,510 Maar wat is een Arduino, echt? 8 00:00:27,510 --> 00:00:30,640 Een Arduino is een type microcontroller en een 9 00:00:30,640 --> 00:00:33,920 microcontroller kan worden beschouwd als een zeer verkleind 10 00:00:33,920 --> 00:00:36,530 computer die componenten bevat zoals een 11 00:00:36,530 --> 00:00:39,550 processor, kleine hoeveelheden geheugen voor het opslaan eenvoudige 12 00:00:39,550 --> 00:00:42,720 's en diverse input / output pinnen produceren 13 00:00:42,720 --> 00:00:45,090 een elektrische stroom als gevolg van 14 00:00:45,090 --> 00:00:47,330 instructies in uw programma. 15 00:00:47,330 --> 00:00:50,790 De pennen op een Arduino zijn hier om met de 16 00:00:50,790 --> 00:00:54,210 fysieke componenten zoals LEDs, speakers, sensoren, 17 00:00:54,210 --> 00:00:56,860 motoren, en nog veel meer. 18 00:00:56,860 --> 00:01:00,660 Dit is een Arduino Uno R3 die we zullen gebruiken 19 00:01:00,660 --> 00:01:02,210 gedurende de cursus. 20 00:01:02,210 --> 00:01:04,660 In deze video, zal ik gaan over slechts enkele van de belangrijkste 21 00:01:04,660 --> 00:01:06,110 onderdelen van dit board. 22 00:01:06,110 --> 00:01:09,540 Echter, als u meer informatie wilt, die ik aanbevelen 23 00:01:09,540 --> 00:01:12,390 u leest, bezoekt u de link voor de Arduino Uno de volledige 24 00:01:12,390 --> 00:01:13,800 specificatie. 25 00:01:13,800 --> 00:01:19,060 De voeding voor de raad van bestuur kunnen worden ontvangen vanaf USB, externe AC 26 00:01:19,060 --> 00:01:24,860 naar DC voedingen, of door de batterij connectoren. 27 00:01:24,860 --> 00:01:29,620 Voor deze video oefeningen, zullen we gebruik maken van USB om de macht. 28 00:01:29,620 --> 00:01:32,390 Als u geïnteresseerd bent in andere manieren om stroom te leveren aan uw 29 00:01:32,390 --> 00:01:35,940 Arduino board of wilt u meer weten over de macht pinnen kennen, 30 00:01:35,940 --> 00:01:38,830 verwijzen wij u naar het vermogensdeel van de specificatie 31 00:01:38,830 --> 00:01:40,530 koppeling. 32 00:01:40,530 --> 00:01:44,350 Vervolgens zijn er twee pin secties in een Arduino dat we 33 00:01:44,350 --> 00:01:48,870 zal de spanning aan onze componenten - 34 00:01:48,870 --> 00:01:53,070 digitale pennen en analoge input-pinnen. 35 00:01:53,070 --> 00:01:54,840 Voordat we verder gaan, laten we 36 00:01:54,840 --> 00:01:57,380 begrijpen deze twee termen. 37 00:01:57,380 --> 00:02:00,450 Analoge ingang pinnen zijn voor componenten zoals knoppen, 38 00:02:00,450 --> 00:02:03,150 die leiden analoge signalen. 39 00:02:03,150 --> 00:02:05,320 Een knop kan verschillende hoeveelheden weerstand 40 00:02:05,320 --> 00:02:09,000 spanning tussen de twee pinnen dat het is aangesloten. 41 00:02:09,000 --> 00:02:11,295 Neem, bijvoorbeeld, een licht dimmer. 42 00:02:11,295 --> 00:02:13,960 Als de knop wordt gedraaid in een richting, het licht zal 43 00:02:13,960 --> 00:02:17,340 helderder omdat de weerstand vermindert. 44 00:02:17,340 --> 00:02:20,400 Dit verschaft een sterkere elektrische stroom naar de 45 00:02:20,400 --> 00:02:23,830 component, hetgeen resulteert in een helder licht. 46 00:02:23,830 --> 00:02:27,130 Nu de digitale pennen iets anders, omdat 47 00:02:27,130 --> 00:02:29,910 ze een digitaal signaal dat afhankelijk is van de 48 00:02:29,910 --> 00:02:32,650 hoeveelheid spanning over de pennen. 49 00:02:32,650 --> 00:02:35,950 Digitale signalen voor de Arduino zijn ter bij 5 50 00:02:35,950 --> 00:02:40,300 volt, of geaarde betekent uit of nul volt. 51 00:02:40,300 --> 00:02:42,570 Neem bijvoorbeeld een lichtschakelaar. 52 00:02:42,570 --> 00:02:44,320 Een licht schakelaar heeft twee waarden - 53 00:02:44,320 --> 00:02:45,870 en uitschakelen. 54 00:02:45,870 --> 00:02:48,120 Wanneer u het licht aan met de schakelaar, je bent 55 00:02:48,120 --> 00:02:51,270 het verstrekken van volledige macht om dat licht. 56 00:02:51,270 --> 00:02:54,540 Nou ja, op het gebied van digitale en analoge, ik weet zeker dat 57 00:02:54,540 --> 00:02:58,940 je hebt gemerkt door nu het acroniem PWM onder de digitale 58 00:02:58,940 --> 00:03:00,520 pin sectie. 59 00:03:00,520 --> 00:03:03,750 Dit staat voor Pulse Width Modulation. 60 00:03:03,750 --> 00:03:07,260 PWM manipuleert de spanning na verloop van tijd te produceren 61 00:03:07,260 --> 00:03:09,730 modulatie-effecten die vergelijkbaar zijn met die 62 00:03:09,730 --> 00:03:11,570 van de analoge pinnen. 63 00:03:11,570 --> 00:03:14,630 Bijvoorbeeld door aan een aan en uit snel gedurende 64 00:03:14,630 --> 00:03:17,640 verschillende lengtes van de tijd, kan het onder controle van het licht 65 00:03:17,640 --> 00:03:18,680 helderheid. 66 00:03:18,680 --> 00:03:21,380 Dus je zou jezelf de vraag, als alles wat je hoeft te 67 00:03:21,380 --> 00:03:24,470 sommige spanning wordt verstrekt aan een component voor het te laten werken, 68 00:03:24,470 --> 00:03:27,040 waarom hebben zelfs een microcontroller? 69 00:03:27,040 --> 00:03:30,100 Nou, laten we eens een hoog niveau kijken naar een microcontroller die 70 00:03:30,100 --> 00:03:32,140 we kunnen interageren met dagelijks - 71 00:03:32,140 --> 00:03:33,790 de wekker. 72 00:03:33,790 --> 00:03:36,620 De wekker heeft vele ingangen, bijvoorbeeld knoppen, 73 00:03:36,620 --> 00:03:40,260 die worden gebruikt om met de wekker programma. 74 00:03:40,260 --> 00:03:43,770 Het heeft ook uitgangen die licht genoemd emitting circuits 75 00:03:43,770 --> 00:03:47,620 zeven segment displays die de tijd aan te geven. 76 00:03:47,620 --> 00:03:50,540 Dit wordt allemaal bestuurd door een programma dat in een 77 00:03:50,540 --> 00:03:52,740 microcontroller het geheugen. 78 00:03:52,740 --> 00:03:55,570 Laten we nu eens een kijkje nemen op een scenario en zien of we kunnen 79 00:03:55,570 --> 00:03:58,970 een kopie van de wekker met deze Arduino. 80 00:03:58,970 --> 00:04:01,240 U bent klaar om te gaan slapen, maar je nodig hebt om je te stellen 81 00:04:01,240 --> 00:04:03,010 alarm om wakker te worden. 82 00:04:03,010 --> 00:04:06,100 We weten dat door het gebruik van bepaalde toetsen kunnen we een aantal instellen 83 00:04:06,100 --> 00:04:08,730 variabele tijd, dat geeft het programma een 84 00:04:08,730 --> 00:04:10,040 voorwaarde moet voldoen. 85 00:04:10,040 --> 00:04:13,860 Zoals wanneer deze tijd waar is, het programma moet sturen 86 00:04:13,860 --> 00:04:17,130 een signaal aan een pin die is aangesloten op een luidspreker. 87 00:04:17,130 --> 00:04:19,860 Als dit signaal wordt ontvangen door de speaker is 88 00:04:19,860 --> 00:04:22,130 moeten een verschrikkelijk geluid. 89 00:04:22,130 --> 00:04:25,300 Laten we gebruik maken van een eenvoudige schakeling om u een aantal context aan wat 90 00:04:25,300 --> 00:04:26,860 Ik heb het over. 91 00:04:26,860 --> 00:04:29,760 Dus nu dat uw alarm is ingesteld, wordt uw conditie nu opgeslagen 92 00:04:29,760 --> 00:04:31,170 in het programma geheugen. 93 00:04:31,170 --> 00:04:34,840 En na slechts negen seconden van de slaap, je hoort de vreselijke 94 00:04:34,840 --> 00:04:36,836 alarm klinken weg. 95 00:04:36,836 --> 00:04:38,820 Ik ga vooruit en plug-in onze alarm hier te gaan. 96 00:04:47,410 --> 00:04:51,330 Nu, we willen niet opstaan ​​helemaal nog, dus we voelen voor de 97 00:04:51,330 --> 00:04:52,650 snooze-knop. 98 00:04:52,650 --> 00:04:56,280 We laten de slapende student stilstand, of onderbreken deze vreselijke 99 00:04:56,280 --> 00:04:59,470 alarmgeluid, door gewoon te raken die knop. 100 00:04:59,470 --> 00:05:02,620 Maar wat gebeurt er eigenlijk als de microcontroller-programma 101 00:05:02,620 --> 00:05:05,420 ontvangt een signaal van de snooze-knop? 102 00:05:05,420 --> 00:05:07,630 Nou, als de snooze-knop wordt ingedrukt, een signaal is 103 00:05:07,630 --> 00:05:09,830 ontvangen op een andere pin. 104 00:05:09,830 --> 00:05:12,740 In het algemeen, wanneer het programma ontvangt deze ingang van het 105 00:05:12,740 --> 00:05:16,480 pen het reageert door te bellen naar een functie te vertragen, of slapen, 106 00:05:16,480 --> 00:05:19,600 het signaal dat werd gestuurd naar onze spreker pin. 107 00:05:19,600 --> 00:05:23,540 Deze vertraging of slaap is voor sommige constante tijd die 108 00:05:23,540 --> 00:05:28,760 meestal ongeveer negen minuten, of in de zaak Arduino termen, 540.000 109 00:05:28,760 --> 00:05:30,340 milliseconden. 110 00:05:30,340 --> 00:05:33,380 Als de wekker niet wordt uitgeschakeld voordat de snooze 111 00:05:33,380 --> 00:05:36,540 timer put, zal het programma de conditie stuur dan nog 112 00:05:36,540 --> 00:05:39,560 signaal naar pin van de spreker, waardoor het draaien 113 00:05:39,560 --> 00:05:42,350 het alarm weer in. 114 00:05:42,350 --> 00:05:46,610 Nu, wat maakt Arduino speciaal voor CS50 is de 115 00:05:46,610 --> 00:05:50,370 ontwikkelomgeving maakt gebruik van de C-taal, waardoor u de 116 00:05:50,370 --> 00:05:53,970 vermogen om kennis toe te passen opgedaan in een meer directe 117 00:05:53,970 --> 00:05:56,000 hands-on manier. 118 00:05:56,000 --> 00:05:58,750 Hoewel we hier niet ingaan op de andere speciale pennen 119 00:05:58,750 --> 00:06:01,310 betrokken bij de Arduino, raad ik je aan de te bezoeken 120 00:06:01,310 --> 00:06:05,090 specificatie en verder te lezen over hun mogelijkheden. 121 00:06:05,090 --> 00:06:07,340 In een andere video, verkennen we de Arduino 122 00:06:07,340 --> 00:06:10,420 ontwikkelomgeving op de CS50 apparaat en schrijf ons 123 00:06:10,420 --> 00:06:13,200 eerste microcontroller toepassing. 124 00:06:13,200 --> 00:06:16,700 Mijn naam is Christopher Bartholomeus, dit is CS50.