Hirdetések
- (csúszda) kedd
- emléknap Douglas Addamsnek, a The Hitchhiker's Guide to the Galaxy írójának
- ezen a napon minden jó nyomkövetőnek látható helyen van a törölközője;)
Bevezetés
(slide) Néhány évvel ezelőtt vettem ezt a könyvet. Ez egy vidám könyv a legkisebbek számára is (régen találkoztam a korosztályral) a robotokról, amellyel saját robotokat építhet (különféle intelligens és különféle összetevőkből). Több okból is megvettem, de ezek közül kettő: terminológia, ill. példák. Néhány dologban hasznos volt számomra az előadás előkészítése során is.
(dia) Ez a könyv az ún. DIY elv, amely a Csináld magad rövidítése, tehát tedd magad. Az ilyen barkácsolóknak és hobbistáknak szól.
(slide) Ezt a területet a Make hasonló kifejezésnek is nevezik, és ezért aki ilyen tevékenységet folytat, az készítő:-).
- érzék - a robot észlelését jelenti, amikor a robot információt kap arról, hogy mi történik körülötte,
- gondol - képviseli a robot gondolkodását, amikor a környezettől kapott információk alapján a robot eldönti, mit tegyen, és
- törvény - robot tevékenységet jelent, amely hatással van a külvilágra.
Repülőgép példa
Repülőgép példa
A repülőgép tartalmaz egy számítógépet, amely kiértékeli az aktuális repülés adatait. De ehhez gyűjtenie kell őket. Például. tudnia kell, milyen magasan repül, milyen gyorsan repül, ahol van. A repülőgépnek minderre szüksége van, hogy el tudja dönteni, mit tegyen, ill. ahol a közeljövőben lennie kellene. Az összegyűjtött adatok alapján ezért szárnyakkal állítja be a magasságot, motorok segítségével lassítja vagy gyorsítja.
szakaszba tartozik a repülőgép aktuális állapotáról és helyzetéről szóló információgyűjtés érzék,
Az információk értékelése és a légi jármű következő lépésének teljesítése a szakaszhoz tartozik gondol, a
hangzású, ill. a fázishoz tartozik a repülőgép-hajtóművek teljesítményének növelése, a szárnyak helyzetének beállítása törvény.
Bevezetés a mikrokontrollerekbe
A mikrokontroller egy speciális célú számítógép egyetlen chipen.
Arduino UNO
Arduino Uno
jegyzet
Vizsgáljuk meg közelebbről a táblán mindent:
jegyzet
Ahhoz, hogy minden úgy működjön, ahogy kell, használnia kell az ún. logikai szint konverterek 3,3 V és 5 V között (angol szintű váltóról).
Arduino programozás
jegyzet
Ha Linux operációs rendszert használ, akkor az Arduino IDE-t közvetlenül a terjesztési csomagokból is telepítheti. Azt javasoljuk azonban, hogy telepítse ezt az eszközt közvetlenül a www.arduino.cc webhelyen található telepítők segítségével, mivel a terjesztési csomagokban elérhető verzió meglehetősen régi lehet a projekt legújabb verziójához képest.
jegyzet
Állítsa be az IDE-t
Ha azonban módosítani szeretné ezeket a beállításokat:
menjen az Eszközök> Tábla menübe az alapértelmezett tábla megváltoztatásához, vagy
menjen az Eszközök> Port menübe az alapértelmezett port megváltoztatásához.
Pislog példa
A Blink projekt a példákban található meg közvetlenül az Arduino IDE-ben. Megtalálja a Fájl> Példák menüben. Töltsük fel az Arduino-ra. Felvétel után a program automatikusan elindul, és a táblán lévő LED villogni kezd.
jegyzet
Azok, akik már tapasztalták az Arduine-t, már tudják, hogy ez a LED csatlakozik a digitális D tűhöz. 13. Ez azt jelenti, hogy a LED_BUILTIN makró valójában 13 .
Ha megnyomjuk a RESET gombot, a program elölről indul.
A vázlat szerkezete
Vizsgáljuk meg közelebbről magát a kódot:
ahol e funkciók jelentése a következő:
setup () - a függvény a csapok inicializálására szolgál, és csak egyszer indul (az elején)
loop () - a függvény a fő alkalmazáshurkot (ún. superloop) és a setup () függvénnyel történő inicializálás után ez a funkció folyamatosan visszatér
Arduino és Memory
Figyelje meg, hogy a kapott kód mennyit vesz - 924B a 32256B-ből. És vegye figyelembe, hogy mennyi memória áll rendelkezésünkre - 2047B 9B. Miért van két maximum? Nem szabad, hogy csak egy memória álljon rendelkezésre a programhoz és az adatokhoz?
jegyzet
Ez a felsorolás az avr-size eszköznek köszönhető, amely az AVR alternatívája a size eszköznek. Megtalálható az Arduino telepítésben (a hardver/eszközök/avr/bin/mappa) vagy a Linux disztribúciókban a megfelelő csomagban (pl. A Fedorában ez az avr-binutils csomag).
Az eszköz elindításához be kell kapcsolnia a További információkat a Tulajdonságokban a fordítás során, és meg kell találnia a fordítási jelentésben egy sort, amely tartalmazza az .elf fájlhoz vezető utat. Ezután használja az avr-size parancs paramétereként:
Rendszer Felépítés
Egy ATmega328P memóriatérképe
- Boot Loader szakasz, amely 512B-t foglal el, a
- Alkalmazási program szakasz, ahol maga a program található
A flash memória címbusz különbözik az SRAM-tól (más a címtere). Élettartama legalább 10 ezer ciklus.
SRAM memóriahasználat
Kódpélda
Figyelem
jegyzet
Memória problémák
(slide) Noha eléggé foglalkoztunk a memória dinamikus elosztásával az alanyon belül (és főleg hozzárendelve), ennek használata a beágyazott eszközök esetében nem biztos, hogy ideális. Nagyon könnyen megtörténhet memória töredezettsége.
Memória töredezettség
jegyzet
megpróbálni a láncok a lehető legrövidebbek voltak - a memóriában szereplő minden karakter 1B-t foglal el, ami azt jelenti, hogy max. 2048 karakter
próbálj tovább haladni minimális mezőméret - ha később kiderül, hogy meg kell változtatnia a méretet, csak szerkessze és fordítsa újra a programot
jegyzet
(slide) Bechynsky artériája, az Arduino 101 projekt egyik népszerűsítője és szerzője egyik műhelymunkájában azt mondta, hogy "Az Arduino programozása is nagyon jó gyakorlat lehet, ha hatékony kódot írunk a tapasztalatok tesztelésére".
.kkrieger
(slide) Összegzésképpen nézzük csak meg, mit lehet tenni kevesebb, mint 95 KB kód alatt - nézzük meg a .kkrieger projektet.
.A kkrieger (a Krieger-től, németül a harcos) egy első személyű lövöldözős videojáték, amelyet a .theprodukkt (a Farbrausch egykori alosztálya) készített, a 2004-es Breakpoint 2004-es Breakpoint 96k játékversenyén első játékot elért játék. A játék továbbra is béta marad verzió 2012-től
További források
Arduino Homepage - az Arduino projekt honlapja
A mikrovezérlő SRAM memóriája - nem mindenki tudja, hogy a RAM (hagyja ki a Surroundt) több adatterületre van felosztva, amelyek közül néhány nem ismert. Lássuk őket együtt
Harward Architecture - A Harvard architektúra egy számítógépes architektúra, külön tárolási és jelutakkal az utasítások és adatok számára. Ellentétben áll a von Neumann-architektúrával, ahol a program utasításai és az adatok ugyanazt a memóriát és útvonalakat használják.
Optimalizálja az Arduino memóriahasználatot - Beágyazott eszközökkel végzett munka során a RAM (véletlen hozzáférésű memória) a rendszer egyik legértékesebb és legkorlátozottabb erőforrása. A cikk középpontjában az Arduino MCU-k RAM-használatának optimalizálása áll, de ugyanez az elv sok más beágyazott eszközre is érvényes.