ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE - Cvut.cz

Transcription

ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZEFakulta strojní – Ústav přístrojové a řídicí technikyDIPLOMOVÁ PRÁCEVYUŽITÍ MIKROPOČÍTAČE RASPBERRY PI PRO ADAPTIVNÍ IDENTIFIKACI A ŘÍZENÍ HYDRAULICKO‐PNEUMATICKÉ SOUSTAVY S VYUŽITÍM JAZYKA PYTHON2014Matouš Sláma

2

3

Anotační listJméno autora:Matouš SlámaNázev BP:Využití mikropočítače Raspberry Pi pro adaptivní identifikaci a řízeníhydraulicko‐pneumatické soustavy s využitím jazyka PythonRok:2013Obor studia:Přístrojová a řídicí technikaÚstav/odbor:Přístrojová a řídicí technikaVedoucí BP:doc. Ing. Ivo Bukovský, Ph.D.Bibliografické údaje:počet stran:71počet obrázků36počet tabulek3počet příloh4Klíčová slova:Raspberry Pi, RPi, gradient‐descent, LNU, adaptivní neuroregulátor, HPS,Keywords:Raspberry Pi, RPi, gradient‐descent, LNU, adaptiv neuroregulator,HPS4

Anotace:Práce dokumentuje návrh, nízkonákladovou HW a SW realizaci, a testování algoritmu gradientdescent pro diskrétní identifikaci a adaptivní řízení laboratorní úlohy „Hydro‐pneumatická soustava“pomocí malého počítače Raspberry Pi a desky Gertboard a opensource skriptovacího jazyka Python.Pro ověření základní funkčnosti HW realizace je uvažován regulační obvod s P‐regulátorem, jehožfunkci zvolený adaptivní regulátor zdokonaluje jako adaptivní stavový regulátor. Dílčím cílem práce jei vytvoření univerzální platformy s Raspberry Pi pro identifikaci a řízení laboratorních úlohpodobného typu s možností snadné implementace a testování vlastních algoritmů uživatelem.Abstract:This work documents the design, low‐cost HW and SW implementaton, and testing of the gradientdescent adaptation algorithm for identification and control of the two‐tank laboratory system usinga small computer Raspberry Pi , Gertboard DAQ, and opensource scripting language Python. The P‐control loop is implemented to validate the basic functionality of the HW implementation. Then, theadaptive P‐control loop is further improved by the adaptive state‐feedback‐type controller. Thepartial objective of this thesis is also a universal platform with Raspberry Pi for simpleimplementation and testing custom algorithms for similar laboratory systems.5

ProhlášeníProhlašuji, že jsem tuto diplomovou práci vypracoval samostatně s tím, že její výsledky mohou býtdále použity podle uvážení vedoucího diplomové práce jako jejího spoluautora. Souhlasím také spřípadnou publikací výsledků diplomové práce nebo její podstatné části, pokud budu uveden jako jejíspoluautor.V Praze dneBc. Matouš Sláma6

PoděkováníDěkuji vedoucímu své diplomové práce doc. Ing. Ivo Bukovskému za podporu a trpělivost přivypracovávání této práce. Byl mi oporou a vzorem pro akademický život.Děkuji rodině za jejich trpělivost a oběti, které pokládají za mé nelineární studium.Děkuji Míše za podporu, bez Tebe bych tohle nikdy nepsal.Práce byla částečně podpořena grantem SGS12/177/OHK2/3T/12.7

ObsahSeznam obrázků . 9Seznam tabulek . 10Použité zkratky a symboly . 111.Úvod . 121.1.Cíl realizace . 121.2.Prostředky pro realizaci . 131.2.1.Raspberry Pi(model B) . 131.2.1.1. Hardware . 131.2.1.2. OS . 141.2.1.3. Raspberry Pi Foundantion (autoři ‐ oficiální text, individuální překlad): . 151.2.1.4. Pěkné projekty na RPi u nás a ve světě: . 161.2.2.General Purpose Input/Output (GPIO) . 161.2.2.1. P1: Popis funkcí GPIO horní řada pinů: . 181.2.2.2. P1: Popis funkcí GPIO spodní řada pinů: . 181.2.3.Gertboard . 191.2.4.Python . 211.3.Hydropneumatická soustava . 221.3.1.Fyzikální model. 221.3.1.1. Schéma a značení . 221.3.1.2. Pomocné výpočty: . 231.3.1.3. Matematicko‐fyzikální model . 231.3.1.4. Lineární model . 251.3.1.5. Lineární matematický model . 252.Instalace OS a prostředků pro chod NR na RPi . 262.1.Instalace OS a první spuštění . 262.2.Instalace modulů a součástí pro Python na RPi . 272.3.spouštění Python skriptů na RPi . 283.Zapojení GBd s RPi k HPS . 293.1.BD6222 H‐bridge driver . 293.2.Diferenční tlakové čidlo TMDG 338 Z3H . 303.3.MCP3002 2.7V Dual Channel 10‐Bit A/D Converter with SPI Serial Interface . 303.4.Připojení motoru a čidla k vývojovému kitu GBd . 314.Řízení prostředků HPS pomocí jazyka Python. 324.1.Import modulů: . 328

4.2.Nastavení parametrů pro komunikaci s obvodem BD6222 . 334.3.Zpracování dat z AD převodníku . 334.4.Zápis hodnoty pro řízení PWM signálu . 335.Neuroregulátor (NR), vnitřní uspořádání . 345.1.identifikace . 345.2.Referenční model . 375.3.Neuronová jednotka pro NR . 386.Předtrénování a adaptace LNU . 416.1.Příprava dat . 416.2.Zpracování naměřených dat . 416.3.Identifikace soustavy LNU . 426.4.Předtrénování LNU pro NR. 447.Řízení úlohy . 477.1.Řízení samotným P‐regulátorem . 477.2.Řízení bez předchozí identifikace nebo předtrénování . 487.3.Řízení se předchozí identifikací soustavy HPS s P‐reg . 487.4.Řízení s předchozí identifikací soustavy HPS s P‐reg a předtrénováním NR . 498.Závěr. 529.Použitá literatura: . 5410.Přílohy . 5510.1.Příloha 1, skript pro jednoduchý P‐regulátor s AD převodníkem a PWM výstupem . 5510.2.Příloha 2, Skript generující signál, P‐regulace a záznam hodnot . 5710.3.Příloha 3, skript identifikující soustavu a předtrénování NR v epochách . 6010.4.Příloha 4, skript pro neuroregulaci s provedeným předtrénováním . 63Seznam obrázkůObr. 1 Hydropneumatická soustava kde vstupem do soustavy jsou otáčky čerpadla n a měřenouveličinou je tlak P ve spodní nádobě, který je přímo úměrný regulované výšce hladiny viz vztah. . 12Obr. 2 Raspberry Pi (model B). 13Obr. 3 Popis a umístění veškerého rozhraní, které lze na RPi využít . 14Obr. 4 pole pro připojení GPIO pinů procesoru RPi . 16Obr. 5 Popis GPIO konektoru P1 RPi . 17Obr. 6 GBd napojen přímo na RPi (při použití samičího konektoru na GBd) . 20Obr. 7 Umístění jednotlivých bloků na desce GBd. 219

Obr. 8 schéma úlohy – dvě nádrže v sérii . 22Obr. 9 Stavový diagram pro jedno nastavení u a pro různé počáteční podmínky h1 a h2 [m] . 24Obr. 10 schéma obvodu BD6222 umístěného na GBd pro řízení elektromotoru čerpadla. . 30Obr. 11 Schéma obvodu MCP3002 AD převodníku umístěného na GBd . 31Obr. 12 Připojení motoru čerpadla a tlakového čidla ke GBd . 32Obr. 13 URO HPS s P‐regulátorem . 34Obr. 14 Umístění NR k existujícímu regulačnímu obvodu . 34Obr. 15 schéma uspořádání identifikace soustavy . 36Obr. 16 Umístění referenčního modelu v soustavě s NR . 37Obr. 17 Mechanizmus výpočtu lineárního neuronu, současná identifikace a adaptace . 39Obr. 18 Změřená charakteristika HPS s P‐regulátorem o zesílení 5, modrá yr, černá d . 41Obr. 19 Naměřené veličiny po normalizaci modrá yr, černá d . 42Obr. 20 Identifikovaná soustava po 20‐ti epochách s µ 0,1, zelená yn, modrá yr, černá d . 42Obr. 21 Vývoj adaptace vah v průběhu učení 20 epoch, µ 0,1 . 43Obr. 22 Vývoj kvadrátu chyb v epochách u identifikace 20 epoch, µ 0,1 . 43Obr. 23 Vývoj vah při identifikaci 1000 epoch µ 0,1 . 44Obr. 24 Vývoj kvadrátu chyby při identifikaci 1000 epoch µ 0,1 . 44Obr. 25 Výsledek předtrénování LNU 200 epochami na naměřená data . zelená yn po adaptaci, modránaměřené yr, černá žádané d, červená referenční yref, µ 0,1, µv 1 . 45Obr. 26 Výsledek předtrénování LNU 1000 epochami na naměřená data . zelená yn po adaptaci,modrá naměřené yr, černá, žádané d, červená, referenční yref, µ 0,1, µv 1 . 45Obr. 27 Výsledek předtrénování LNU 2000 epochami na naměřená data . zelená yn po adaptaci,modrá naměřené yr, černá, žádané d, červená, referenční yref, µ 0,1, µv 1 . 46Obr. 28 Vývoj vah v, adaptujícího se LNU pro 2000 epoch . 46Obr. 29 vývoj vah w identifikujícího LNU pro 2000 epoch. 47Obr. 30 Řízení HPS pouze P‐regulátorem, černá yref, fialová yr. 47Obr. 31 Regulace na pulzy s periodou 60s bez předchozí identifikace soustavy, černá yref, fialová yr,µ 0,1, µv 1, w random, v zeros . 48Obr. 32 Regulace na pulzy s periodou 60s s pouze s identifikovanou soustavou, černá yref, fialová yr,µ 0,1, µv 1, v zeros . 49Obr. 33 Regulace na pulzy s periodou 60s s předtrénovaným neuronem a identifikovanou soustavou,černá yref, fialová yr, µ 0,1, µv 1 . 50Obr. 34 Krátká regulace na pulzy s periodou 60s s předtrénovaným neuronem a identifikovanousoustavou, černá yref, fialová yr, µ 0,1, µv 1 . 50Obr. 35 Vývoj vah w v průběhu regulace s předidentifikovanou a předtrénovanou soustavou.Tečkovaně je bez vertikálního měřítka vyznačena žádaná veličina d . 51Obr. 36Vývoj vah v v průběhu regulace s předidentifikovanou a předtrénovanou soustavou.Tečkovaně je bez vertikálního měřítka vyznačena žádaná veličina d . 51Seznam tabulekTab. 1 Barevné rozlišení pro přehlednost Tab. 2, Tab. 3 a Obr. 5 . 17Tab. 2 Konektor P1 popis pinů horní řada . 18Tab. 3 Konektor P1 popis pinů spodní řada . 1910

Použité zkratky a symbolyARMArchitektura procesorů, vyvinutá firmou ARM LimitedBPBackpropagationDHCP Dynamic Host Configuration ProtocolGBdGertboardGDGradient DescentGPIOGeneral Purpose Input/Output, obecný vstup/výstupHPSHydro‐pneumatická soustavaIPInternet ProtocolI2C(I2C), Inter‐Integrated CircuitLNULineární neuronová jednotka (Linear Neural Unit)NRNeuroregulátorOSOperační systémPWM Pulse Width Modulation, Pulzně šířková modulaceQNUKvadratická neuronová jednotka (Quadratic Neural Unit)RMReferenční modelRPiRaspberry PiSPISerial Peripheral Interface, sériové periferní rozhranísudosuper user doUART (USART), Synchronní / asynchronní sériové rozhranídžádaná veličina (desired) (okamžitá, tj. vstup do referenčního modelu)drefvýstup referenčního modelueregulační odchylkaerefregulační odchylka jako rozdíl výstupu referenčního modelu a regulované veličinykdiskrétní index času (konstantní vzorkování)wvektor adaptovatelných parametrů (vah) neuronového modelu identifikacewivektor adaptovatelných parametrů (vah) neuronového modelu regulacexvektor vstupů identifikačního LNUynregulovaná veličina, (model neuronem)yrregulovaná veličina měřená (reálná)µkoeficient rychlosti učení algoritmu GDξvektor vstupů regulačního LNU11

1. ÚvodCílem této DP je navrhnout a vyzkoušet nízkonákladovou realizaci algoritmu Gradient Descent (GD)[2][3][7] s normalizovaným koeficientem rychlosti učení [8] pro diskrétní identifikaci a adaptivnířízení laboratorní úlohy Hydro‐pneumatická soustava (HPS). [1] pomocí malého počítače RasbperryPi a desky Gertboard a opensource programovacího jazyka Python. Pro ověření základní funkčnostiHW realizace je uvažován regulační obvod s P‐regulátorem, jehož funkci bude zvolený adaptivníregulátor zdokonalovat jako adaptivní stavový regulátor. Valnou částí realizace této DP jehardwarová a softwarová část, kdy je dosaženo zadaných cílů využitím požadovaných prostředků.Dílčím cílem práce je i vytvoření univerzální platformy s Raspberry Pi pro identifikaci a řízenílaboratorních úloh podobného typu s možností snadné implementace a testování vlastníchalgoritmů uživatelem.1.1. Cíl realizaceŘízení je realizováno na pravé části laboratorní úlohy (detail viz. Obr. 1) sestávající se ze dvou seriovězapojených nádrží kdy regulovanou veličinou je výška hladiny spodní nádrže. Jedná se tedy osoustavu s dvěma kapacitami, tedy druhého řádu. Adaptivní řízení musí postihnout výchozí stavneznámého modelu soustavy a případně dlouhodobě se měnící parametry, které neadaptivnímřízením lze jen těžko postihnout, jako je reálná nelinearita osazené soustavy, rozdílná počátečníhladina zásobní nádrže, měnící se citlivost a kalibrace čidel, měnící se parametry se stárnutímaktuátoru (čerpadla) a měnící se průtok soustavou s jejím zanášením atp.Obr. 1 Hydropneumatická soustava kde vstupem do soustavy jsou otáčky čerpadla n a měřenou veličinou jetlak P ve spodní nádobě, který je přímo úměrný regulované výšce hladiny viz vztah.12

1.2. Prostředky pro realizaciPro řešení této úlohy je použit mikropočítač Raspberry Pi (RPi), jedná se o levné univerzální zařízeníhardwarově propojující a využívající mobilní technologie, rozhraní známé z klasických PC a sběrnice,které jsme zvyklí vídat u průmyslových mikropočítačů. Toto zařízení má dnes čím dál širší komunituuživatelů a vývojářů z řad studentů pedagogů i odborné a laické veřejnosti, která kromě nalézánínových a nových implementací, spolupracuje na odladění a usnadnění každé další. Jelikož jsounativním operačním systémem (OS) pro RPi linuxové distribuce, je nasnadě použití programovacíhojazyku Python pro řídící algoritmy. Tento jazyk je dostatečně vysoko od strojového kódu, aby bylopsaní algoritmů snadné podobně jako v Matlabu, avšak má stále dostatečně těsnou vazbus připojovaným hardwarem a programátor si může být jist tím, co dělá. Python je zpravidla nativnísoučástí všech linuxových distribucí, je zde tedy nativní a jeho použití neskýtá problémys kompatibilitou. Navíc použití přímo programovacího jazyku (místo software výrobce, neboprogramového prostředí typu Matlab) neomezuje uživatele ničím jiným než vlastním časem a chutízkoumat. Co totiž zatím naprogramované není, může brzy být a pokud to je, ale ne dost dobré, můžebýt lepší a pokud je výpočet v pythonu příliš pomalý, vždy je cesta danou aplikaci počítat v C av pythonu ji pouze pouštět (většina výpočetně náročných funkcí je takto stejně realizována).Pro realizaci je dále použito vývojového kitu Gertboard (GBd), ze kterého je v této DP využito 10‐tibitového AD převodníku a PWM modulu pro řízení otáček čerpadla.Obr. 2 Raspberry Pi (model B)1.2.1. Raspberry Pi(model B)Raspberry Pi (RPi) je jednodeskový počítač, jehož velikost je často přirovnávána k velikosti platebníkarty. Je dostupný ve dvou verzích dle výbavy (modela A a B). V této DP se budu dále zmiňovat ovybavenější verzi modelu B. Vyvinula jej britská nadace Raspberry Pi Foundantion s cílem podpořitvýuku informatiky ve školách. Jeho základem je SoC BCM2835 firmy Broadcom, který obsahujeprocesor ARM1176JZF‐S s taktem 700 MHz, grafický procesor VideoCore IV a 512 megabajtů pamětiRAM (model B). RPi neobsahuje žádné pevné úložiště. K zavedení systému a uložení dat sloužívyjímatelná SD karta. Mimo univerzální rozhraní, které lze k RPi připojit přes porty USB a GPIO je jistězajímavá i cena, za kterou lze toto zařízení zakoupit. Cena je stanovena na 35 amerických dolarů(model B), přičemž dražší verze (právě model B) má navíc síťový adaptér s konektorem RJ45 a druhýUSB port.1.2.1.1. Hardware procesor ARM1176JZF‐S z rodiny ARM11 taktovaný na 700 Mhzgrafický procesor VideoCore IV, podporující OpenGL ES 2.0, 1080p, MPEG‐4512 MB RAM sdílených s grafickou kartou13

dva USB 2.0 portyObrazový výstup Composite RCA, HDMI, DSIZvukový výstup přes 3,5 mm konektor, HDMIslot pro SD nebo MMC kartuethernetový adaptér 10/100 s konektorem RJ4526 GPIO, UART, I²C, sběrnici SPI1.2.1.2. OSZatím všechny operační systémy pro RPi jsou linuxové distribuce upravené pro chod na ARMprocesoru. Lze očekávat, že přibude OS založený na Androidu, který je dnes na ARM technologiinativní.Ke dnešku jsou oficiálně k dispozici tyto distribuce: Raspbian ‐ ARM verze Debianu , přívětivé grafické prostředí i rychlostPidora ‐ ARM verze Fedory pro uživatele zvyklé na toto prostředíRISC OS ‐ Lehký nenáročný systémRaspBMC ‐ ARM verze XBMC, multimediální systémArch ‐ ARM verze ARCH linuxu, jednoduchá, uživatelsky náročnějšíOpenELEC ‐ ARM verze XBMC, jednoduchý multimediální systémObr. 3 Popis a umístění veškerého rozhraní, které lze na RPi využít14

1.2.1.3. Raspberry Pi Foundantion (autoři ‐ oficiální text, individuálnípřeklad):Nápad na malý a levný počítač pro děti/studenty, přišel v roce 2006, kdy Eben Upton, Rob Mullins ,Jack Lang a Alan Mycroft, zaměstnaní na University of Cambridge’s Computer Laboratory, byliznepokojeni poklesem dovedností studentů na pro porozumění informatice. Ze situace v roce 1990,kdy většina dětí přicházeli na pohovor jako zkušený fanda programátor, tak po roce 2000 bylasituace velmi odlišná, typický žadatel umí jen vytvořit jednoduchý web design .Něco se změnilo způsob, jakým děti komunikují s počítačem. Byla zjištěna řada problémů : kolonizaciosnov informačních a komunikačních technologií s lekcí o používání aplikace Word a Excel , nebopsaní webových stránek, konec dot‐com boomu (internetová horečka) a vzestup domácích PC aherních konzolí , které nahradily Amigy , BBC Micros , Spectrum ZX a Commodore 64 na kterých sestarší generace naučila programovat.Není příliš velká skupina lidí, která může řešit problémy, jako je nedostatečný vzdělávací program.Ale cítili jsme, že bychom se mohli pokusit udělat něco se situací, kdy se počítače staly tak drahé atajemné, že pokusy o programování na nich muselo být zakázáno rodiči a najít platformu, kterástejně jako u starých domácích počítačů, by mohla zavést do programovací prostředí. Od roku 2006do roku 2008 jsme navrhli několik verzí toho, čím se nyní stalo Raspberry Pi.Před rokem 2008, procesory určené pro mobilní zařízení jsou stále více cenově dostupné adostatečně silné, aby poskytli vynikající multimediální funkce. Snažili jsme se, aby deska byla žádaná,aby děti, které by měly zájem o zařízení orientované čistě na programování měly takové zařízení kdispozici. Projekt začal vypadat velmi realizovatelně. Eben ( nyní chip architect v Broadcom ), Rob,Jack a Alan, se spojil s Pete Lomasem , MD of hardware design and manufacture company NorcottTechnologies a Davidem Brabenem , spoluautor seminal BBC Micro game Elite, tvoří Raspberry PiFoundation. O tři roky později nadace zadala hromadnou výrobu prostřednictvím licencovanéspolečnosti element 14/Premier Farnell and RS Electronics a během roku se prodalo přes jedenmilion kusů .Měli jsme obrovský zájem, podporu a pomoc ze vzdělávací komunity, za kterou jsme rádi a trochupokořeni počtem dotazů od agentur a lidí směřujících daleko od našich původních cílů pro totozařízení. Rozvojové země mají zájem o Raspberry Pi jako zařízení v oblastech kde si nemohou dovolittakový odběr energie pro hardware potřebný ke spuštění tradičního stolního počítače. Nemocnice amuzea nás kontaktují, aby zjistili jak pomocí Raspberry Pi řídit zobrazovací zařízení. Rodiče těžcepostižených děti, s námi projednávají o monitoringu a aplikace pro usnadnění. A zdá se, že venku jemilion lidí, s rozpálenými pájkami, kteří chtějí stavět roboty.Nechceme tvrdit, že máme všechny odpovědi. Nemyslíme si , že Raspberry Pi je záchrana všechproblémů v světových počítačových otázkách , jsme ale přesvědčeni, že můžeme být katalyzátorem .Chceme vidět levné , dostupné , programovatelné počítače všude, jsme aktivní v podpoře dalšíchspolečností . Chceme zlomit paradigma, ve kterém aniž by utráceli stovky liber za PC , nemohourodiny používat internet. Chceme aby vlastnictví osobního počítače bylo skutečně normální pro děti,a těšíme se na to, co nám budoucnost přinese.The Raspberry Pi Foundation is a UK registered charity (Registration Number 1129409)15

1.2.1.4. Pěkné projekty na RPi u nás a ve světě:Robotická ruka ovládaná slovními příkazy http://aonsquared.co.uk/Bezdrátový přenos videa/audia z mobilu (Android) do TV http://www.raspberrypi.org/archives/1512Větší množství menších projektůhttp://www.astromik.org/raspi/s čidlyaaktuátorypropozorováníhvězdPin procesoru jako FM php/Turning the Raspberry Pi Into an FM TransmitterNebo například v Technické ve 3. patře, ve vitrýně velmi pěkná realizace Ing. Vladimíra Hlaváče a Ing.Cyrila Oswalda, ovládání robota RPi přes http. A mnoho dalších.1.2.2. General Purpose Input/Output (GPIO)Obecný vstup / výstup (GPIO) je obecný pin na integrovaném obvodu (obyčejně je jím čip), jehožchování (včetně toho, zda se jedná o vstupní nebo výstupní pin) může být řízen (naprogramován),uživatelem za běhu procesoru.GPIO piny nemají žádnou zvláštní definici, a ve výchozím stavu jsou nevyužité. Myšlenka těchto pinůtkví v tom, že může být vhodné, při návrhu integrovaného obvodu přidat i několik dalších digitálníchřídicích linek. Jsou pak k dispozici a lze tím předejít potížím s případným přidáváním obvodů.Například, čipy Realtek ALC260 (audio kodeky) mají 8 GPIO pinů, které jsou nevyužité ve výchozímnastavení. Některé systémové integrátory (Acer notebooky), které používají chipset ALC260 majívyužit první GPIO (GPIO0) pro zapnutí zesilovače používaného pro interní reproduktory notebooku aexterního konektor pro sluchátka.Kromě vstupů/výstupů které má i standardní PC, jako je USB, ethernet, RCA video, HDMI a audiojack, je RPi vybaveno i nízkoúrovňovými GPIO. Nízkoúrovňovými je myšlen způsob zpracovánísignálu. Jde o piny připojené víceméně přímo na ARM procesor a zpracování dat pak probíhá nanejnižší možné úrovni. Toto vyžaduje i jistou disciplínu v zacházení s připojením k GPIO, procesor běžína napětí 3,3V, nesmíme tedy na jeho piny přivést 5V! V lepším případě dojde k vypnutí RPi v horšímpřípadě k odpálení procesoru.GPIO porty na RPi nejsou tolerantní k připojení 5V!Obr. 4 pole pro připojení GPIO pinů procesoru RPiProcesor RPi má v aktuální revizi 53 GPIO pinů (ze všech pinů procesoru na obr.), z toho 17 jevyvedeno do 26 pinového konektoru P1 zobrazeném naObr. 5. Zbytek pinů konektoru je využit pronapájení a uzemnění. Ze známých sběrnic na konektoru P1 nalezneme UART, SPI a I2C16

Obr. 5 Popis GPIO konektoru P1 RPiLegenda barev 5 V 3.3 VGround, 0VUARTGPIOSPII²CTab. 1 Barevné rozlišení pro přehlednost Tab. 2, Tab. 3 a Obr. 517

1.2.2.1. P1: Popis funkcí GPIO horní řada ��045V0P1‐06GNDHardware NotesSupply throughinput poly fuseSupply throughinput poly fuseP1‐08GPIO 14Boot to Alt 0 ‐ P1‐10GPIO 15Boot to Alt 0 ‐ P1‐12GPIO ‐22GPIO25P1‐24GPIO08P1‐26GPIO07Alt 0FunctionOther AlternativeFunctionsUART0 TXDUART0 RXDALT5 UART1 TXDALT5 UART1 RXDALT4 SPI1 CE0 N ALT5 PCM CLKPWM0ALT3 SD1 CMD ALT4 ARM RTCKALT3 SD1 DAT0 ALT4 ARM TDOALT3 SD1 DAT1 ALT4 ARM TCKSPI0 CE0NSPI0 CE1NTab. 2 Konektor P1 popis pinů horní řada1.2.2.2.PinNumberP1‐01PinNameRev1P1: Popis funkcí GPIO spodní řada pinů:PinNameRev23.3 VP1‐03GPIO 0P1‐05GPIO 1Hardware Notes50 mA max (01 &17)Alt 0FunctionOther AlternativeFunctionsI2C0 SDA/GPIO 2 1K8 pull up resistor I2C1 SDAI2C0 SCLGPIO 3 1K8 pull up resistor/18

I2C1 SCLP1‐07GPIO 4P1‐09GNDP1‐11GPIO17P1‐13GPIO21 GPIO27P1‐15GPIO22P1‐173.3 PCLK0ALT5 ARM TDIALT3 UART0 RTS ALT4 SPI1 CE1 N ALT5 UART1 RTSPCM DO ALT4 SPI1 SCLK ALT5 UT /GPCLK1 / ALT3 SD1 DAT3reservedALT4 ARM TMSALT3 SD1 CLK ALT4 ARM TRST50 mA max (01 &17)SPI0 MOSISPI0 MISOSPI0 SCLKTab. 3 Konektor P1 popis pinů spodní řada1.2.3. GertboardGertboard (GBd) je vstupně‐výstupní ( I / O ), rozšiřující deska pro počítač RPi. GBd není oficiálnímproduktem nadace Raspberry Pi Foundantio

a small computer Raspberry Pi , Gertboard DAQ, and opensource scripting language Python. The P‐ control loop is implemented to validate the basic functionality of the HW implementation. Then, the adaptive P‐control loop is further improved by the adaptive state‐feedback‐type controller. The