micro:mag 01 občasník pro uživatele micro:bitu 2018 Micro:bit a serva Napájení a připojení

Podobné dokumenty
Obsluha a programování

Merkur perfekt Challenge Studijní materiály

Robotická ruka. Lukáš Fotr a Jaroslav Karban. Integrovaná střední škola, 2. ročník Kumburská 846, Nová Paka

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Ovládání, základní, senzory větru

MALÉ SERVOMECHANISMY PRO ROBOTIKU A MECHATRONIKU

Bezdotykové rotační senzory RI360P0-QR24M0-INCRX2-H1181

ROZDĚLENÍ SNÍMAČŮ, POŽADAVKY KLADENÉ NA SNÍMAČE, VLASTNOSTI SNÍMAČŮ

Servisní manuál. Řídící systém MS 300. v aplikaci pro vzduchotechniku SERVISNÍ MANUÁL

Programování mikropočítačů platforma Arduino

BROUK ROBOT KSR6. Stavebnice. 1. Úvod a charakteristika. 2. Seznam elektronických součástek

Indukční úhlový senzor s analogovým výstupem Ri360P1-QR14-ELiU5X2-0,3-RS5

Optoelektronické. Použití. Vlastnosti

Megarobot.cz Senzory Jan Stránský. Senzory. Co je to senzor Jednotlivé senzory Hit senzor senzor nárazu Modul fotorezistoru...

popsat princip činnosti základních zapojení čidel napětí a proudu samostatně změřit zadanou úlohu

UC485P. Převodník RS232 na RS485 nebo RS422. Průmyslové provedení s krytím

Vstupní jednotka E10 Návod na použití

1 Jednoduchý reflexní přijímač pro střední vlny

Students for Automotive (S4A)

TGZ. 2-osé digitální servozesilovače

Manuální, technická a elektrozručnost


Indukční snímač otáček Ri360P0-QR24M0-MRTUX3-H1151

KONEKTOROVÝ BLOK PRO BASLER ACE

11. Odporový snímač teploty, měřicí systém a bezkontaktní teploměr

Indukční úhlový senzor s analogovým výstupem RI360P1-QR14-ELIU5X2

Výukové texty. pro předmět. Automatické řízení výrobní techniky (KKS/ARVT) na téma

ETC Embedded Technology Club setkání 6, 3B zahájení třetího ročníku

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Ultrazvukové snímače

On-line datový list VS/VE18-4P3240 V18 VÁLCOVÉ OPTOELEKTRONICKÉ SNÍMAČE

Převodník hodnot vibrací na proudovou smyčku 4-20 ma. Ref: BZ

Servopohony vzduchotechnických

Indukční snímač otáček Ri360P0-QR24M0-ELU4X2-H1151/S97

VY_32_INOVACE_AUT-2.N-06-DRUHY AUTOMATICKEHO RIZENI. Střední odborná škola a Střední odborné učiliště, Dubno

MERECOM s.r.o. Hlavní 234, POPICE Tel.: (+420) , Fax: (+420) Hot line: (+420)

Bezdrátová komunikační brána (RS485 Gateway)

Optoelektronické. snímače BOS 26K

ELEKTRONICKÝ ŽELEZNIČNÍ PŘEJEZD AŽD

Indukční snímač otáček IO-Link Ri360P0-QR24M0-ELiUPN8X4-H1151

Optoelektronické. snímače BOS 65K

NÁVOD K INSTALACI A POUŽITÍ

Optoelektronické. BGL Vidlicové optické závory. snímače

Cvičení 2. Obsah a cíle cvičení. Obsah. A5MPL Programování mikropočítačů Digitální vstupy a výstupy - LED a tlačítka.

Stopař pro začátečníky

EC Motor. IO Modul EC200. EC200 Int. EC200 Ext. Verze 1.20, revize PMControl s.r.o.

idrn-st Převodník pro tenzometry

ET340. NÁVOD K MONTÁŽI A NASTAVENÍ Kód originálu: ENIKA CZ, s.r.o.

Ultrazvukový senzor 0 10 V

Popis obvodu U2403B. Funkce integrovaného obvodu U2403B

Zesilovače. Ing. M. Bešta

Ultrazvukový senzor 0 10 V

TGZ. 2-osé digitální servozesilovače

Indukční úhlový senzor s analogovým výstupem RI360P1-DSU35-ELIU5X2-H1151

Kalibrace ROBOTU OBSAH

M6410C/L, M7410C. květen polohový pohon malých lineárních ventilů KATALOGOVÝ LIST

Elektronický analogový otáčkoměr V2.0 STAVEBNICE

Laboratorní cvičení z předmětu Elektrická měření 2. ročník KMT

Návod k obsluze Spínací zesilovač pro světlovodná vlákna. OBF5xx / / 2009

Inovace výuky předmětu Robotika v lékařství

Technické podmínky a návod k použití detektorů GC20N a GC20K

Pokyny pro instalaci

TDS. LED zobrazovače. 4 sedmisegmentový svítící displej Výška znaku 10 nebo 57 mm Komunikace přes RS července 2012 w w w. p a p o u c h.

On-line datový list VS/VE18-4P3712 V18 VÁLCOVÉ OPTOELEKTRONICKÉ SNÍMAČE

Fyzikální praktikum 3 Operační zesilovač

Experimentální konstrukce laserového osciloskopu

TGZ. 2-osé digitální servozesilovače

Vzdálené ovládání po rozvodné síti 230V

Výukové texty. pro předmět. Automatické řízení výrobní techniky (KKS/ARVT) na téma

Automatizační technika Měření č. 6- Analogové snímače

MI1249. Video rozhraní pro vozidla Citroen C5 a Peugeot 508

EWS/EWSi. Instalační manuál Verze 1.2

Quido RS 2/16 OC. 2 vstupy pro kontakt 16 digitálních výstupů 1 teploměr -55 až +125 C komunikace přes RS485 nebo RS232

UNIVERZÁLNÍ SERVOPOHON SERV 01

CNC Technologie a obráběcí stroje

Bezdotykový rotační senzor z nerez oceli inkrementální Ri360P0-EQR24M0-INCRX2-H1181

SKARAB ROBOT KSR5. Stavebnice. 1. Úvod a charakteristika. 2. Seznam elektronických součástek

Fotorezistor. , kde G 0 je vodivost fotorezistoru bez přítomnosti filtru a G je vodivost. vypočítáme 100%

Bezdotykový rotační senzor z nerez oceli inkrementální: ppr RI360P0-EQR24M0- INCRX2-H1181

Popis - Snowfree M1 Řídící jednotka pro ochranu před ledem a sněhem na venkovních plochách.

Návod k použití. Jednocestná světelná závora. OJ - Laser. Strana 1 z 9

Manuál přípravku FPGA University Board (FUB)

Návrh konstrukce odchovny 2. dil

PortGuard63. Katalogový list ZÁKLADNÍ FUNKCE VÝHODY. Funkce podle IEC Řízení pomocí Control Pilotu. Řízení pomocí Proximity Pilotu

SAUNOVÝ REGULÁTOR S 500

Příloha A návod pro cvičení 1. SESTAVENÍ MODELU V PROSTŘEDÍ MATLAB SIMULINK Zapojení motoru

ARDUINO L13. Programování a robotika snadno a rychle? Tomáš Feltl. Připraveno pro kroužek robotiky JAOS. Kroužek JAOS Farní sbor ČCE v Poličce

D/A převodník se dvěma napěťovými nebo proudovými výstupy. (0 10 V, 0 5 V, ±10 V, ±5 V, 4 20 ma, 0 20 ma, 0 24 ma)

Panelový měřič vodivosti model CDCN 201

Bezdotykové rotační senzory inkrementální Ri360P0-QR24M0-INCRX2-H1181

NÁVOD K INSTALACI A POUŽITÍ

Distribuované vstupní/výstupní moduly MODULY XFL 521, 522, 523 A 524

Typové příklady zapojení frekvenčních měničů TECO INVERTER 7300 CV. Verze: duben 2006

(s výjimkou komparátoru v zapojení č. 5) se vyhněte saturaci výstupního napětí. Volte tedy

Úvod do mobilní robotiky AIL028

Informace o přístroji UH28C VN zdroj

Indukční lineární senzor LI700P0-Q25LM0-HESG25X3-H1181

Zobrazovací jednotky. 1 z :53. LED technologie.

Tester akčních členů M-PWM2-A (sw v1.4) - PWM generátor - (technická specifikace)

Návod na boční motor s itegrovanou bezpečnostní brzdou pro garážová vrata komerční i průmyslová

Transkript:

01 občasník pro uživatele micro:bitu 2018 Micro:bit a serva Serva (servomechanismy) byla původně určena pro použití v radiem řízených (RC) modelech. Jsou však také dobře použitelná pro řadu školních experimentů, řízení laboratorních zařízení, automatizaci domácnosti (například polohování žaluzií) a podobné použití. Základem serva je stejnosměrný elektromotorek, vícestupňová převodovka sestavená z ozubených kol, zpětnovazební snímač polohy výstupního hřídele (potenciometr nebo bezkontaktní snímač) a řídící elektronika. Požadovaná pozice výstupní osy serva je přenášena do řídící elektroniky z nadřazeného řídícího systému pomocí pulzně šířkově (PWM) modulovaného řídícího signálu. Napájení a připojení Do serva vedou tři vodiče; dva servo napájejí a po třetím jsou přenášeny povely. Jako připojovací konektor se obvykle používá plochý trojpinový typ s roztečí dutinek 2,54 mm. Tvar pouzdra konektoru je závislý na výrobci, ale kterýkoli z nich lze nasunout na pinovou lištu se správnou roztečí kolíků. Napájecí napětí běžných serv se pohybuje v rozmezí 4,8 až 6 V. Takzvaná mikroserva pracují většinou už od napájecího napětí 3 V, ovšem při tomto napětí jsou už nespolehlivá a točivý moment zcela zanedbatelný. Moderní serva mohou naopak pracovat i při vyšších napájecích napětích (7,2; 8,4 nebo i 12 V), jejich cena je ale vysoká a pro běžné aplikace jsou zbytečná. Aby servo mohlo správně pracovat, je třeba, aby napájecí zdroj dodal odpovídající proud; většina serv má špičkový odběr v řádu jednotek ampér. Význam Barevná kombinace (-) napájení (GND) černá černá hnědá (+) napájení rudá rudá rudá Řízení bílá žlutá oranžová Obr. 1: Barevné značení kabelů serv 01 / 2018 1

Řídící signál serva Poloha výstupního hřídele serva odpovídá proporcionálně šířce řídícího impulzu. Řídící impulz je pozitivní s amplitudou od 3 V do napájecího napětí, aktivní dobou trvání proměnnou od 1 do 2 ms a opakovací frekvencí obvykle 50 Hz (Evropa) nebo 60 Hz (USA a Japonsko). U takzvaných digitálních serv ale může být opakovací frekvence i mnohem vyšší. Době trvání řídícího pulzu odpovídá rozsah polohy výstupního hřídele serva ±45. Většina serv dovoluje zvětšit mechanický rozsah pohybu výstupní osy na ±90 zvětšením rozsahu řídících impulzů na 5 až 2,5 ms. Řídící impulzy mimo uvedený rozsah, mohou způsobit najíždění serva na mechanický doraz a tím jeho poškození. Obr. 2: Řídící signály Řídící impulz se obvykle opakuje 50x za sekundu (perioda 20 ms). Tato hodnota však není kritická, protože na ní závisí především dosažitelný točivý moment a klidový přídržný moment serva. Výstupní hřídel serva se do střední polohy nastavuje impulzem délky 1,5 ms. Bezpečné připojení serva k micro:bitu Obr. 3: Schéma zapojení 2 01 / 2018

Elektrické schéma z obrázku 3 se proti jiným doporučovaným zapojení zdá dost složité. Optický izolační člen PC817 ale spolehlivě oddělí napájení micro:bitu a napájení serva, protože k přenosu řídících pulzů mezi oběma elektrickými okruhy dochází uvnitř izolátoru prostřednictvím světla. Drobné zvýšení složitosti zapojení a zcela zanedbatelné zvýšení ceny je ovšem bohatě vyváženo tím, že při chybném připojení nebo při poruše serva zůstane váš micro:bit v bezpečí. Obr. 4: Praktické zapojení na nepájivém poli Servo samozřejmě můžete na vlastní nebezpečí připojit přímo k micro:bitu, ale je nutné dodržet jeho napájecí napětí v rozsahu 4,8 až 6 V, protože ačkoli různé návody tvrdí opak, je při nižším napětí funkce serv již dost nejistá a servo se často bez příčiny chvěje nebo škubá. Nejprve servo otestujte V programovacím jazyku JavaScript jsou funkce pro ovládání modelářského serva již připraveny a pro větší pohodlí se poloha páky serva udává přímo v úhlových stupních v rozsahu 0 až 180. Smyslem tohoto testu je především zjistit, zda jste servo správně zapojili a zda skutečně zvládá rozsah otáčení v rozsahu 180 stupňů. Pokud ne a v některé krajní poloze najíždí servo na mechanické dorazy, (to znamená, že na konci své dráhy cvaká a vrčí) pak je třeba experimenálně (změnou čísla, určujícího požadovaný úhel natočení serva) zjistit jeho konkrétní možnosti. 01 / 2018 3

basic.forever(() => { pins.servowritepin(analogpin.p1, 0) basic.pause(1000) pins.servowritepin(analogpin.p1, 90) basic.pause(1000) pins.servowritepin(analogpin.p1, 180) basic.pause(1000) pins.servowritepin(analogpin.p1, 90) basic.pause(1000) }) Blok forever je již připraven na pracovní ploše nebo ho najdete v kategorii basic, blok pause je v téže kategorii a blok servo write pin je v kategorii pins, kterou najdete po kliknutí na volbu advanced v panelu kategorií. Testovací program nastavuje periodicky servo, připojené na pin P1, do jedné krajní polohy, na střed dráhy, do druhé krajní polohy a zpět v opačném pořadí. V každé z těchto poloh setrvá 1 sekundu; to určuje příkaz pause. Můžete zkusit měnit parametr (v tomto případě číslo) příkazu servo write pin, abyste si vyzkoušeli možnosti vašeho serva. 4 01 / 2018

A nyní zkuste servo řídit Předchozí test byl jistě úspěšný a tak nyní zkuste řídit polohu serva pomocí vestavěných senzorů micro:bitu. akcelerometr kcelerometrem em Číslo v proměnné sklon nám udává, o kolik se micro:bit odchýlil od vodorovné polohy v ose X. Protože micro:bit můžete naklánět z vodorovné polohy doleva i doprava, může číslo nabývat hodnot od -1023 do 1023. Ovšem proměnná uhel, určující polohu serva, může mít rozsah jen 0 až 180. Abyste nemuseli složitě počítat, použijte funkci map z kategorie pins, která to udělá za vás. Zvolte, že aktuální rozsah proměnné sklon se má přepočíst na požadovaný rozsah a vložit do proměnné uhel. Servo se vám nyní bude natáčet zleva doprava a zpět v rozsahu 180 stupňů podle toho, jak micro:bit nakláníte a když ho budete držet přesně vodorovně, tak se servo zastaví uprostřed své dráhy. let uhel = 0 let sklon = 0 basic.forever(() => { sklon = input.acceleration(dimension.x) uhel = pins.map( sklon, -1023, 1023, 180 ) pins.servowritepin(analogpin.p1, uhel) }) 01 / 2018 5

kompas ompasem Jak vidíte, program je téměř stejný, jen mimo sklonu sleduje údaj kompasu. Ale pozor v prostředí, kde se vyskytuje mnoho kovových předmětů nebo rušivých magnetických polí asi tenhle pokus nebude příliš uspokojivý, protože údaj z kompasu bude značně zarušený a nepřesný. Pokud používáte kompas poprvé nebo v odlišném prostředí, budete asi při prvním spuštění programu požádáni o kalibraci a budete muset na displeji micro:bitu jeho otáčením a nakláněním nakreslit kroužek. let uhel = 0 let Azimuth = 0 basic.forever(() => { Azimuth = input.compassheading() uhel = pins.map( Azimuth, 36 180 ) pins.servowritepin(analogpin.p1, uhel) }) 6 01 / 2018

intenzi ntenzitou vnějšího osvětlení Displej micro:bitu má jednu zajímavou vlastnost: nejen, že umí zobrazovat, ale také umí změřit intenzitu světla, které na něj dopadá. Údaj o okamžité intenzitě dopadajícího světla je v interním registru light level, jehož hodnotu překopírujte do proměnné svetlo. Rozsah údaje light level je 0 až 255, takže opět pro přepočet na rozsah 0 až 180 využijte služeb funkce map. A když nyní na displej micro:bitu posvítíme, servo se bude natáčet v závislosti na intenzitě dopadajícího světla. let uhel = 0 let svetlo = 0 basic.forever(() => { svetlo = input.lightlevel() uhel = pins.map( svetlo, 255, 180 ) pins.servowritepin(analogpin.p1, uhel) }) 01 / 2018 7

Řízení serva externími ovladači Vyzkoušeli jste si ovládání serva vnitřními senzory micro:bitu a teď si ukážeme, že to jde i jinak. Potenciometr K napájení micro:bitu připojte podle obrázku 5 potenciometr (dělič napětí), na jehož běžci, připojeném k pinu 0 se objevuje proměnné napětí v závislosti na natočení jeho osičky. Obr. 5: Připojení potenciometru Obr. 6: Praktické zapojení na nepájivém poli 8 01 / 2018

Příkazem analog read pin lze toto napětí přečíst, přeměnit ho na číslo v rozsahu 0 až 1023 a pak ho uložit do proměnné pot. Pomocí funkce map přepočteme rozsah proměnné pot z 0 až 1023 na 0 až 180 a ten vložíme do proměnné uhel, která už přímo určuje okamžitou polohu serva. let uhel = 0 let pot = 0 basic.forever(() => { pot = pins.analogreadpin(analogpin.p0) uhel = pins.map( pot, 1023, 180 ) pins.servowritepin(analogpin.p1, uhel) }) Tímto programem jste si z micro:bitu vytvořili zařízení, kterému modeláři říkají servotester. Program je možno samozřejmě různě modifikovat a místo řízení polohy serva potenciometrem použít vnější napětí v rozsahu 0 až 3 V, které připojené na pin 0 micro:bitu. Pamatujete ale stále na to, že napětí vyšší než 3,6 V micro:bit spolehlivě zničí! 01 / 2018 9

Odrazový senzor Tohle si asi budeme muset vysvětlit podrobněji. Senzor TCRT5000 (a jemu podobné) pracuje na principu odrazu infračerveného světla, vysílaného LED, od překážky a jeho příjmem pomocí fototranzistoru. Fototranzistor v TCRT5000 je celkem běžný tranzistor, ale jeho vodivost řídí místo proudu, tekoucího do báze intenzita světla, dopadajícího na jeho polovodičový přechod. Proto je také umístěn v průsvitném pouzdře, připomínajícím LED. Jak je vidět ze schématu na obrázku 7, fototranzistor je zapojen jako emitorový sledovač s emitorovým rezistorem o hodnotě 1 megaohm, pracuje tedy jako aktivní rezistor, jehož odpor je nepřímo úměrný intenzitě dopodajícího světla a jeho citlivost na dopadající světlo je značná. Obr. 7: Zapojení odrazového senzoru Fototranzistor tvoří spolu s emitorovým rezistorem napěťový dělič, v jehož uzlu měří micro:bit napětí pomocí ADC převodníku, připojeného uvnitř micro:bitu na pin 0. Jakmile se před senzorem objeví odrazná plocha, tedy překážka, infračervený paprsek vysílaný LED se odrazí zpět k senzoru, dosud uzavřený fototranzistor v TCRT5000 se pootevře, napětí na děliči se zvýší, program tuto změnu vyhodnotí a servo se natočí do polohy, která přibližně odpovídá vzdálenosti odrazné plochy od senzoru. Obr. 8: Princip funkce Tento způsob vyhodnocení vzdálenosti samozřejmě není dokonalý, protože intenzita odrazu závisí nejen na vzdálenosti odrazné plochy, členitosti a odraznosti jejího povrchu, ale i na úhlu, pod kterým na ni paprsek infračerveného světla dopadá. Přesto ale takový senzor může dobře posloužit při konstrukci různých hříček nebo robotů. 10 01 / 2018

Obr. 9: Řízení odrazovým senzorem Obr. 10: Praktické zapojení na nepájivém poli 01 / 2018 11

let uhel = 0 let reflex = 0 basic.forever(() => { reflex = pins.analogreadpin(analogpin.p0) uhel = pins.map( reflex, -1023, 1023, 180 ) pins.servowritepin(analogpin.p1, uhel) }) 12 01 / 2018