Lekce 1 - První projekt¤
Zde si vyzkoušíme vytvořit první projekt a nahrát jej do Saturnu.
Bločky jsou vizuální programovací jazyk, který je vhodný pro začátečníky. Program se skládá z jednotlivých bloků, které se skládají dohromady. Každý blok má svůj význam a program se vykonává postupně odshora dolů.
Vytvoření projektu¤
-
Bločky budeme skládat v editoru Jacly. Ten si teď otevřeme v prohlížeči.
-
Kliknutím na tlačítko
Vytvořit nový projektsi vytvoříme náš první projekt.
-
Po kliknutí na tlačítko si musíme projekt pojmenovat, vybrat typ a šablonu. Jméno si vybereme takové, abychom od sebe projekty lehce rozlišili. Typ projektu zvolíme
Jacly bloky projekta šablonutemplate-jacly-saturn. Pak už stačí kliknout na tlačítkoVytvořit projekt.
Pokročilá nastavení neměníme.
Práce s prostředím¤
V Jacly je spousta tlačítek a kategorií, pro nás je zatím důležitých jen několik.
Když si na levé straně rozklikneme kategorii Balíčky, otevře se nám správce balíčků/knihoven. Balíček je sada rozšiřujících funkcí, které můžeme použít v našem programu.
Vedle správce balíčků máme výběr bločků. Bločky jsou rozděleny do kategorií podle toho, co dělají. Například v kategorii Základní najdeme bločky, které nám umožní vykonávat základní operace, jako je například čekání nebo vypisování zpráv do konzole.
V pravém horním rohu vidíme tlačítko Připojit. Před nahráním programu se musíme k Saturnu připojit. Připojení probíhá stejně jako při flashování firmware v minulé lekci.
Na pravé straně si rozklikneme kategorii Konzole, ve které uvidíme, co nám Saturn posílá.
Uprostřed máme programovací plochu, kde budeme bločky skládat dohromady.

Náš první projekt¤
-
Zkusíme si poskládat a nahrát do Saturnu náš první projekt. Prozatím si poskládáme bločky podle obrázku. Narazíte ale na problém. Nepodaří se vám totiž najít bloček
Saturn pin, ten je totiž z rozšiřujícího balíčkusaturn. Budete si ho tedy muset ve správci balíčků nainstalovat. Klikneme na tlačítkoBalíčkya v sekciPřidat nový balíčekvyhledámesaturn, vybereme verzi balíčku a klikneme na tlačítkoPřidat vybraný balíček.

-
Po poskládání bločků klikneme na tlačítko
Připojita vybereme port, na kterém je Robodeck připojený. Poté klikneme na tlačítkoSestavit a nahrát. Pokud jsme vše udělali správně, měla by se nám na Saturnu rozsvítit LEDka červeně a v konzoli by se nám mělo vypisovatAhojky svete.Je důležité vybrat správný typ led, v našem případě
LED_WS2812B.
Jak vlastně náš program funguje?¤
Náš program se skládá ze dvou částí.
První část je blok při spuštění, který se vykoná jen jednou, když se program spustí. V něm inicializujeme LEDku, nastavíme ji na červenou a zobrazíme.
Druhá část je blok opakuj stále, který se vykonává stále dokola. V něm vypisujeme do konzole zprávu Ahojky svete a čekáme 500ms.
Zadání A¤
Jakmile nám funguje úvodní program, zkusíme si ho trochu upravit. Zkusme si změnit barvu LED, vypisovanou zprávu a dobu čekání mezi výpisy.
Po každé změně je potřeba program znovu nahrát.
Výstupní úkol V1¤
Udělejte program který bude střídavě blikat LEDkou červeně a do konzole vypisovat Nazdar svete.
Nejprve si vytvoříme nový projekt a zkusíme ho nahrát, abychom otestovali, jestli vše funguje.
Stačí kliknout na odkaz, otevře se nám VSCode a nabídne se nám možnost vytvořit projekt z připraveného balíčku.
Tento příkaz stačí zadat do terminálu v adresáři, kde chceme mít projekt uložený. Změníme <PROJECT_NAME> na název projektu, který chceme vytvořit.
jac project-create --package https://2026.robotickytabor.cz/lekce/baseExample.tar.gz <PROJECT_NAME>
Nahrání programu¤
Teď můžeme zkusit na Saturn nahrát náš první program. Vytvořili jsme si projekt, který obsahuje jednoduchý program, který nám bude vypisovat zprávu do konzole a rozsvítí LEDku na Saturnu.
-
Ve VSCode máme otevřený první projekt, který jsme si stáhli. V levém
Exploreru(Průzkumníku) vybereme soubor zesrc->index.ts. V něm vidíme náš první program. -
V levém dolním rohu klikneme na tlačítko
COMa vybereme port, na kterém je Saturn připojený. Pro zjištění správného portu zkusíme Saturn odpojit a znovu připojit. V seznamu portů by se měl objevit nový port, který je právě Saturn. Ten si zapamatujeme a vybereme.
-
Poté zvolíme
Build, Flash and Monitorpro nahrání programu do zařízení.
Pokud se program nenahraje za ~10 vteřin, zkuste zmáčknout tlačítko označené
ENa program nahrát znovu. -
Měli bychom vidět výstup z programu a zeleně svítící LEDku na Saturnu.
Ahojky svete Ahojky svete Ahojky svete Ahojky svete Ahojky svete Ahojky svete Ahojky svete Ahojky svete - Pro ukončení terminálu, do něj klikneme a stiskneme Ctrl+C.
Jak vlastně náš program funguje?¤
Tato část importuje knihovny, které nám umožní ovládat LEDku a používat předem definované barvy a vytváří objekt LEDky, se kterým budeme pracovat. Objekt vytváříme pro specifický pin, který je dán objektem SaturnPins (SaturnPins.ILED == 48). LEDka je typu LED_WS2812B. Tato část teď pro nás důležitá, takže ji necháme tak, jak je.
import { SmartLed, LED_WS2812B } from "smartled";
import * as colors from "colors";
import { SaturnPins } from "saturn";
const led = new SmartLed(SaturnPins.ILED, 1, LED_WS2812B);
Tato část nastavuje LEDku na zelenou barvu a zobrazuje ji.
led.set(0, colors.green);
led.show();
A nakonec tato část vypisuje do konzole zprávu Ahojky svete každých 1000ms.
setInterval(() => {
console.log("Ahojky svete");
}, 1000);
Úprava programu¤
Pokud nám funguje nahrávání kódu, můžeme se na něj podívat a zkusit jej upravit.
- Prostudujeme si zdrojový kód.
-
Upravíme pozdrav na své jméno.
Řešení
... console.log("Ahojky svete, tady zdravi Frant Flinta z roku 2026"); ... -
Pokusíme se změnit rychlost vypisování.
Řešení
... setInterval(() => { /* náš kód */ }, 500); // čas opakování se udává v milisekundách (1000 ms je 1 sekunda) ... -
Upravíme barvu. Použijeme předdefinované barvy z knihovny
colors. Předem definované barvy:redorangeyellowgreenlight_bluebluepurplepinkwhiteoff
Řešení
... led.set(0, colors.blue); ...
Výstupní úkol V1¤
Udělejte program který bude střídavě blikat LEDkou červeně a do konzole vypisovat Nazdar svete.
