Elektronická stavebnice

"Základní robotické principy"

Cílem práce
je nabídnout zájemcům o výuku programování jednočipových mikropočítačů PIC praktickou pomůcku, umožňující prakticky vyzkoušet základní principy používané v robotice. Jednotlivá zapojení jsou velmi jednoduchá, přehledná, založená na intuitivním připojení k základní desce s nejjednodušším představitelem mikropočítačů PIC.

Práci lze použít jako výukovou pomůcku i na základních školách pro demonstraci základních principů používaných v robotice, např. v konstrukcích robotických vysavačů. Základní využití je na středních odborných školách elektrotechnických v předmětech Digitální technika, Mikroprocesorová technika, Elektronika. Stavebnice tvoří základ, ze kterého lze stavět vlastní jednoduché konstrukce, přidávat vlastní čidla a akční prvky a tvořit vlastní programy.

Stavebnici lze rozšiřovat přidáváním dalších prvků. Jsou zveřejněny veškeré technické informace a budována Open Source platforma. Lze očekávat publikaci dalších jednoduchých úloh. Dalším kvalitativním krokem může být konstrukce složitější desky s podporou více vstupů a výstupů, osazené složitějším mikropočítačem se zjednodušeným způsobem zavádění programu do mikropočítače.

Téma práce:
Práce se zabývá tématem praktické výuky na středních odborných školách v novém oboru mikroprocesorové techniky a robotiky. Mikroprocesorovou technikou je obtížné se naučit bez praktického programování. V oboru robotiky si nelze představit výuku bez praktické činnosti. Jedna z nejúčinnějších metod výuky jsou metody problémové, které předpokládají u žáka vlastní řešení konkrétního problému, zadaného učitelem. K tomu jsou zapotřebí pomůcky, které nejsou vždy dostupné nebo levné.

Použité metody:
Základem práce je návrh a konstrukce elektronické výukové stavebnice zaměřené na základy robotické techniky. Hlavním prvkem je návrh desky s řídícím mikropočítačem, který je zapojen tak, aby bylo snadné k němu připojovat vstupy a výstupy. Zapojení musí být odolné proti špatnému propojení, zkratu a přepólování. Vše musí být intuitivní, názorné a na první pohled srozumitelné. Řídící mikropočítač musí být tak jednoduchý, aby jeho pochopení nezabralo mnoho času. Součástí stavebnice musí být názorná schémata zapojení, programů a možností použití.

Volba dílů stavebnice:
Určujícím rozhodnutím je volba řídícího mikropočítače. Na prvním místě byl požadavek na jednoduchost. Proto padla volba na nejjednodušší 8 bitový mikropočítač od firmy Microchip PIC10F200, který lze zakoupit za cenu 12,- Kč. K tomuto PIC také existuje český překlad dokumentace z nakladatelství BEN. Z architektury procesoru vyplývá, že deska bude mít dva vstupy a dva výstupy.

Všechna čidla mohou mít jen digitální výstup. Proto jsme zvolili infračervená čidla a to dvojího druhu, jednoduchá odrazová a složitější modulovaná. Sada čidel je doplněna mikrospínači.

Akční členy jsme zvolili jen dva. Jednoduché modelářské servo je běžně dostupné a snadno se ovládá. Sériový motorek s převodovkou je běžná výbava malých kolových robotů.

Seznam dílů:
1. Řídící deska - 1 ks
2. Napájecí zdroj - 1 ks
3. Tlačítko na kabelu - 2 ks
4. IR čidlo (vysílač a přijímač) - 1 ks
5. IR čidlo (vysílač a přijímač) na kabelu - 1 ks
6. IR přijímač (40 kHz) - 1 ks
7. IR přijímač (40 kHz) na kabelu - 1 ks
8. IR vysílač (IR LED) na kabelu - 1 ks
9. IR vysílač (IR LED + R) - 1 ks
10. Servo - 1 ks
11. Motor s převodovkou a kolečkem - 1 ks
12. Naprogramovaný PIC10F200 - 4 ks
13. Programátor PICkit2 firmy Microchip - 1 ks

Schéma

DPS: 5,0 x 6,5cm

Osazovací plán


Seznam součástek:
R12 - 180R/0,25W
R2,3,4,5,7,9,11 - 330R/025W
R10 - 1K/0,25W
R1,6,8 - 4K7/0,25W
C1,2,3,5,6,7,8 - 100nF/40V
C4 - 100uF/25V
LED1 - 3mm/modrá
LED2 - 10mm/červená
SG1 - F/EE17P (PIEZO)
-
IC1 - PIC 10F200 (JEDNOČIPOVÝ MIKROPROCESOR)
IC2 - 7805 (5V STABILIZÁTOR)
B1 - W10M (DVOUCESTNÝ USMĚRŇOVAČ)
S1,2 - Mikrospínač
X1 - 5,5mm-2,1mm (POWER JACK)

Popis zapojení:
Deska je napájena ze zdroje 8 – 20V bez rozlišení polarity. Přítomnost napájecího napětí 5V je indikována modrou LED. Samotný mikropočítač má kromě napájecích vývodů čtyři univerzální, z nichž dva jsou použity jako vstupy a dva jako výstupy. Všechny vývody jsou vyvedeny na servokonektory, kde je připojeno napájecí napětí bez ochrany a signál z mikroprocesoru přes ochranný rezistor 330 Ohm. Ke vstupům jsou na desce umístěna tlačítka. Jejich stiskem se aktivuje vstup nezávisle na tom, zda je k němu připojeno čidlo. Výstupy jsou na desce osazeny velkou červenou LED a piezo měničem. To umožňuje názorně pozorovat výstupní signály. Na výstupu GP2 jsou vidět signály o kmitočtu od 0 do 20 Hz. Na výstupu GP1 jsou slyšet signály o kmitočtu od 20 Hz do 10 kHz. Konektor ICSP slouží pro připojení programátoru nebo pro zasunutí desky do nepájivého pole.

DPS zdola

DPS shora

Osazování

Osazená deska

Zapájená DPS


Tyto fotky jsou pouze ilustrační.
Schéma, motiv plošného spoje a osazovací plán je momentálne nejaktuálnější.

Postup při práci:
Plošný spoj vyvrtejte vrtákem 0,8mm. Pro konektory použijte vrták 0,9mm a pro Graetzův můstek (usměrňovač), stabilizátor a tlačítka použijte 1,0mm vrták. Začněte osazovat nejmenší součástky, čili odpory, kondenzátory, tlačítka a potom osaďte usměrňovač, stabilizátor, piezo, LED a patici. Při osazování dbejte na pečlivost, ať nevzniknou zkraty mezi spoji, nebo “studené” spoje. Po důkladném překontrolování můžeme přejít ke zkoušení

Oživení:
Zkoušení provádějte bez mikrokontroléru (PIC). Kdyby tam byla chyba, může to nenávratně poškodit PIC. Proto si nejprve ověřte na patici, jestli je na druhém pinu +5V a na sedmém pinu 0V. Při zapnutí se rozsvítí signalizační LED1. Pokud je vše v pořádku, můžete zkusit osadit PIC do patice.

Nainstalujte si vývojové prostředí MPLAB od Microchip.com a následně zapojte do USB konektoru programátor PIC. Ověřte komunikaci. Připojte programátor k desce a naprogramujte jeden ze zdrojových kódů v HEX podobě.

Ověřte si správnou funkčnost vstupů a výstupů. Vstupy musí reagovat na tlačítka a výstupy jsou vidět a slyšet.

Pokud jste začátečník, nebo máte nějaké problémy s programem, můžete použít nějaký z našich programů, které jsou volně ke stažení níže. S postupem času budeme zveřejňovat další prográmky. Pokud budete mít nějaký program, se kterým se chcete pochlubit a poskytnout ho ostatním lidem, neváhejte nás KONTAKTOVAT. Rádi zveřejníme i Vaše programy.

Popis IR čidla
IR čidlo obsahuje v jednou pouzdře vysílací infračervenou LED a přijímací fototranzistor. LED stále svítí, ale není lidským okem vidět. Jakmile se čidlo přiblíží k odrazivé překážce na vzdálenost menší než 1 cm, odražené IR světlo sepne fototranzistor.

Schéma

IR na konektoru

IR na kablíku

Popis IR vysílače 40 kHz
Vysílač je tvořen jedinou IR LED. Pracovní proud je určen ochranným rezistorem 330 Ohmů na desce, proud je přibližně 10 mA. Tím lze dosáhnout odraz na vzdálenost několik metrů. LED je obalena černým plastem, pohlcujícím IR záření ve všech směrech kromě čelního.

Schéma

IR vysílač na konektoru

IR vysílač na kablíku

Popis IR přijímače 40 kHz
Přijímač je integrován v jediném pouzdře se 3 vývody. Na výstupu je log. 0 tehdy, pokud čidlo detekuje IR záření modulované kmitočtem 40 kHz po dobu alespoň 8 period. Citlivost na jiné modulace klesá se vzdalujícím se kmitočtem od této nosné. Čidlo je odolné proti jiným nemodulovaným zdrojům, při přímém slunečním osvětlení je zahlcené a nedetekuje

Schéma

IR přijímačna konektoru

IR přijímač na kablíku

Servo
Modelářské servo umožňuje natáčet hřídel v rozsahu cca 200 stupňů. Poloha je snímána vnitřním potenciometrem a vnitřní elektronika udržuje hřídel v poloze odpovídající vstupnímu signálu. Vstupní signál je logický pulzní signál s periodou cca 20 ms a délkou pulzu v rozsahu od 1 do 2 ms. Délka pulzu určuje polohu hřídele, levá krajní poloha odpovídá šířce 1 ms.

Schéma

Standardní modelářské servo Hitech HS-311

Motor s převodovkou
Motor je určen na napájení 6 V a převodovka je plastová s poměrem převodu 143:1. Motor je určen jako díl pro stavbu malých kolových robotů a je spolu s kolečkem dodáván firmou

Schéma

Motorek

Motorek



Popis:
Po aktivaci vstupu GP0 se ozve melodický zvuk po dobu cca 1 sekundy. Po aktivaci vstupu GP3 se rozsvítí výstup LED na dobu cca 1 sekundu.

Název:

Zvonek

.ASM

.HEX

Datum: 11.4.2013
Verze: 0.1
Velikost: 3,72 kB
Autor: Lukáš Mertlík

Mikropočítač PIC10F200 s tímto programem je označen číslem: 1


Popis:
Na výstupu GP1 je přítomný signál pro IR LED 40 kHz, krátké pulzy s opakovací frekvencí cca 50 Hz. Tato frekvence je slyšet nepřetržitě z piezzoměniče.
Po aktivaci vstupu GP0 se rozsvítí LED a sepne výstup GP2 po dobu aktivace vstupu.
Po aktivaci vstupu GP3 se rozsvítí LED a sepne výstup GP2, současně se přestane generovat na výstupu GP1 signál pro IR LED a bude se ozývat tón o kmitočtu cca 1 kHz. Tento stav bude ukončen až aktivací vstupu GP0.

Název:

Závora

.ASM

.HEX

Datum: 11.4.2013
Verze: 0.1
Velikost: 3,77 kB
Autor: Lukáš Mertlík

Mikropočítač PIC10F200 s tímto programem je označen číslem: 2


Popis:
Na výstupu GP2 je trvale přítomen signál pro řízení serva. LED problikává cca 50 krát za sekundu, což se projevuje jejím slabým svitem. Po resetu se servo natočí do krajní levé polohy.
Po aktivaci vstupu GP3 se servo začne pomalu natáčet do krajní pravé polohy. Stav je indikován krátkým vysokým tónem.
Po aktivaci vstupu GP0 se servo začne pomalu otáčet do krajní levé polohy. Stav je indikován krátkým hlubokým tónem.
Po aktivaci obou vstupů současně se servo zastaví v poloze, ve které se zrovna nachází.

Název:

Servo

.ASM

.HEX

Datum: 12.4.2013
Verze: 0.1
Velikost: 5,40 kB
Autor: Lukáš Mertlík

Mikropočítač PIC10F200 s tímto programem je označen číslem: 3


Popis:
Aktivace vstupu GP3 způsobí sepnutí výstupu GP2 v režimu PWM na výkon 100%
Aktivace vstupu GP0 způsobí generování krátkého zvuku. Současně se započítá další pootočení kola a sníží se výkon PWM o cca 20%. Po páté aktivaci klesne výkon PWM na 0.

Název:

Motor

.ASM

.HEX

Datum: 25.4.2013
Verze: 0.1
Velikost: 5,09 kB
Autor: Lukáš Mertlík

Mikropočítač PIC10F200 s tímto programem je označen číslem: 4


Sada úloh

Úloha Melodický zvonek s programem Zvonek
Návod: Osaďte PIC označený číslicí 1 nebo připojte programátor PICkit2 a naprogramujte do paměti program Zvonek.hex. Ověřte funkci pomocí tlačítek na řídící desce. Připojte externí tlačítka a ověřte funkci. Připojte IR čidlo a ověřte, zda funguje ( přiblížení bílého podkladu na vzdálenost cca 1 – 5 mm).




Úkoly: Analyzujte zdrojový kód programu Zvonek.asm a proveďte následující úpravy:
1. Dobu rozsvícení LED prodlužte na cca 3 sekundy.
2. Zopakujte melodický zvuk dvakrát za sebou.
3. Změňte melodii na jinou, která se vám bude líbit.



Úloha Infračervená závora
Návod: Osaďte PIC označený číslicí 2 nebo připojte programátor PICkit2 a naprogramujte do paměti program zavora.hex. Ověřte funkci pomocí tlačítek na řídící desce. Připojte externí tlačítka a ověřte funkci. Připojte IR vysílač na výstup GP1. Připojte IR přijímač postupně na oba vstupy a ověřte funkci programu.



Úkoly: Analyzujte zdrojový kód programu Zavora.asm a proveďte následující úpravy:
4. Změňte opakovací frekvenci na výstupu GP1 na cca 10 Hz.
5. Aktivace GP0 LED rozsvítí až do doby, než jí aktivace GP3 zhasne.
6. Reagujte na aktivaci vstupu GP0 tónem cca 1kHz na dobu cca 1 sekundy.



Úloha Kyvadlo
Návod: Osaďte PIC označený číslicí 3 nebo připojte programátor PICkit2 a naprogramujte do paměti program servo.hex. Ověřte funkci pomocí tlačítek na řídící desce. Připojte externí tlačítka a ověřte funkci. Připojte IR vysílač na výstup GP1. Připojte IR přijímač postupně na oba vstupy a ověřte funkci programu. Připojte servo na výstup a pozorujte jeho chování.



Úkoly: Analyzujte zdrojový kód programu servo.asm a proveďte následující úpravy:
7. Změňte reakci na vstupy tak, že servo se otáčí jen po dobu aktivace.
8. Zrychlete pohyb serva na cca trojnásobek současné rychlosti.
9. Aktivace vstupu GP0 způsobí natočení do středové polohy, aktivace GP3 vyvolá rychlé otočení doleva.



Úloha Snímač ujeté vzdálenosti
Návod: Osaďte PIC označený číslicí 4 nebo připojte programátor PICkit2 a naprogramujte do paměti program motor.hex. Ověřte funkci pomocí tlačítek na řídící desce. Připojte externí tlačítka a ověřte funkci. Připojte IR čidlo. Připojte motor na výstup a pozorujte jeho chování.



Úkoly: Analyzujte zdrojový kód programu motor.asm a proveďte následující úpravy:
10. Změňte reakci na vstup tak, aby snižování probíhalo v 10 stupních.
11. Upravte reakci tak, aby se započítávala jen každá 5. aktivace vstupu.
12. Upravte program tak, aby se motor otáčel cca poloviční rychlostí.


Závěr
V této práci se nám podařilo realizovat výukovou stavebnici, která může vhodně doplnit nabídku výukových stavebnic na našem trhu. Stavebnice je velmi snadno reprodukovatelná v podmínkách školních dílen. Jsou zveřejněny veškeré podstatné technické informace. Náklady na realizaci nepřekročí 1.000,- bez programátoru resp. 2.000,- s programátorem PICkit2.

Stavebnice umožňuje problémové řešení úkolů spojených s obsluhou digitálních čidel a ovládáním základních akčních členů. Je možné modifikovat stávající 4 programy nebo na jejich základě vytvářet zcela nové. Je rovněž možné připojovat vlastní čidla nebo akční prvky.

Práce se stavebnicí nevyžaduje odborné znalosti. Základní úlohy je schopen ověřit i žák základní školy. Stavebnice je odolná proti špatnému zapojení čidel i akčních prvků. Při experimentování je možné postupovat i metodou Pokus-omyl. Vstupy i výstupy jsou názorné, kdykoli lze aktivovat vstup stisknutím příslušného tlačítka na desce a výstupy jsou vizualizované zvukem a světlem.

Stavebnice je přednostně zaměřena pro praktickou podporu výuky předmětu Digitální technika ve druhém a třetím ročníku studia na středních odborných školách elektrotechnických.


Vlastní tvorba

Popis:
Na výstupu GP2 je přítomen signál pro řízení serva. LED bliká na cca 50Hz, což se projevuje jejím slabým svitem.
Po resetu se servo začne pomalu otáčet z jedné strany na druhou. (Efekt otočné, zabezpečovací kamery)

Název:

Servo 2

.ASM

.HEX

Datum: 19.4.2013
Verze: 0.1
Velikost: 3,35 kB
Autor: Lukáš Mertlík

©2013 - 2018 - Lukáš Mertlík