Jasper - SK

From TNtech Wiki
Revision as of 21:27, 3 August 2012 by Tntech (Talk | contribs)

Jump to: navigation, search
Jasper Ver. 006-TECH


Contents

Popis

Programovacie prostredie pre výuku programovania zamerané tvorbu interaktívnych aplikácií z robotiky, experimentov z fyziky a komunikačných technológií.

Vlastnosti

  • Vizuálne kompatibilný s programom Scratch
  • Vytvorený v Jave s využitím knižnice Visual Library
  • Disribúcia prostredníctvom technológie Java WebStart
  • Podporované platformy
    • Linux Ubuntu 12.04 (testovaný)
    • Win (netestovaný)
    • Android (plánovaný)
  • Podpora HW platforiem
    • TNtech Sensor Board (kompatibilny s Scratch Sensor Board)
    • TNtech RoboBoard - riadenie stacionárnych mechanických experimentov a a mobilných robotov
    • TNtech LabBoard - zber dát a riadenie fyzikálnych experimentov
    • TNtech IrAdapter - USB adaptér pre komunikácia pomocou protokolu RC5, RC6
    • TNtech Plotter - USB adaptér pre komunikáciu s klasickým HPGL plottrom (RS232, Centronics)
    • Ardurino

Projekt je aktuálne v štádiu technologického dema pre testovanie použitých technológií, algoritmov a postupov.

Grafický Editor

Editor pre tvorbu programov z preddefinovanych blokov. V prostredí Jasper môže byť orvorených niekoľko okien editora a v každom editore môže byť niekoľko samostatných programov. Každý program je po spustení interpretovaný v oddelenom vlákne, programy vzájomne komunikujú prostredníctvom udalostí alebo globálnych premenných.

Elementárne vlastnosti editora

Img 01.png Základná forma STACK bloku. Blok je vektorový, je možné ho preeditovať do inej formy.
Img 02.png Aktivácia terminalu STACK bloku, závisí od typu cielového a zdrojového bloku. Prepojením blokov je definované poradie ich vykonávania.
Img 03.png Editor hodnoty vnoreného bloku VALUE, aktivuje sa kliknutím na hodnotu. Potvrdenie hodnoty a ukončenie editácie je kliknutím na pracovnú plochu editora.
Img 04.png Zmena rozmerov bloku po zmene hodnoty vnoreného bloku.
Img 05.png Aktivácia terminálu vnoreného bloku, závisí od typu cielového a zdrojového bloku.
Img 06.png Zmena rozmerov bloku po zmene jeho konfigurácie.
Img 07.png Kontextové menu bloku, obsah menu závisí od typu bloku (STACK, VALUE, VARIABLE, LIST ...), aktivuje sa pravým klikom na ploche bloku.

Knižnice

Draw

Knižnica určená pre kreslenie na okne grafickej tabule. Knižnica je čiastočne kompatibilná s knižnicou progamu Scratch. Pri pripojenom adaptéri TnTech Plotter je možné výstup z grafickej tabule (s obmedzeniami) presmerovať na HPGL kompatibilný grafický plotter.

Kategória Popis
Motion Riadenie pohybu pera.
Pen Nastavenie vlastností pera.
Looks Pri kreslení v móde PEN-VISIBLE nastavenie grafickej reprezentácie pera.
Sound Akustické efekty.

Control

Riadenie toku programu a správa premenných.

Kategória Popis
Control Implementácia základných riadiacich štruktúr.
Operators Numerické a logické operátory
Variables Správa premenných
List Správa zoznamov premenných.

GUI

Bloky pre zadávanie výstup informácií z programu. Plávajúce komponenty sa zobrazujú na pracovnej ploche mimo štandardných okien prostredia.

Kategória Popis
Input Plávajúce vstupné komponenty.
Output Plávajúce výstupné komponenty.
Keyboard Správa udalostí klávesnice
Mouse Správa udalostí myši
Timer Správa časovačov

World

Knižnice pre komunikáciu programov s reálnym svetom prostredníctvom HW platforiem.

Kategória Popis
SensorBoard Vstupné premenné pre načítanie hodnôt zo TnTech SensorBoard.
Robot Riadenie robotov
LabBoard Zber a riadenie fyzikálnych experimentov.
IR Control Komunikácia prostredníctvom IR.

Internet

Knižnica pre tvorbu distribuovaných systémov z viacerých prostredí Jasper prostredníctvom ich prepojenia cez Internet. Využíva technológiu RMI/Corba.

Kategória Popis
Input Prijatie a a načítanie hodnoty premennej.
Output Vyslanie hodnoty premennej.

Podpora HW platforiem

TNtech Sensor Board

Sensor board.jpg
Zariadenie umožňuje jednoduchú komunikáciu s programom prostredníctvom svetelného a akustického senzora, tlačítka a posúvača. TnTech Sensor Board je v robustnej plastovej krabičke a je napájaný z USB portu. Má 4 vstupy pre pripojenie odporových snímačov a periférií vyvedené na štandardné konektory typu CINCH. Na úrovni protokolu je kompatibilný zo štandardným Scratch Sensor Board.
Vnútorná štruktúra procesora TNtech Sensor Board

Zariadenie je postavené na báze procesora CY8C29466, ktorý riadi a spracováva vstupné signály. Červeno označené CINCH vstupy A a C majú numericky linearizovanú charakteristiku a sú určené per pripojenie periférií pre proporcionálne riadenie (joystick, slider), kde hodnota je lineárne úmerná polohe.

Riadenie komunikácie a sprístupnenie hodnôt zo zariadenia je možné prostredníctvom knižnice Library World - SensorBoard . V okne knižnice je možné pripojiť sa ku zariadeniu, farba tlačítka Open-Close Port indikuje prítomnosť alebo neprítomnosť zariadenia na zvolenom porte. Prepínačom Use Raw Values je možné ako hodnoty premenných použiť normované hodnoty z rozsahu (0 - 100) alebo 10-bitové hodnoty z rozsahu(0 - 1023). Aktuálne namerané hodnoty senzorov je možné zobraziť tlačítkom Hide Variables.

Sensor variables.png

TNtech RoboBoard

Platforma pre riadenie stacionárnych mechtronických systémov a pohyblivých robotov. Je postavená na procesore ARM Cortex M3 a umožňuje programu komunikovať s nasledujúcimi perifériami

Výstupy

  • 4 štandardné analógové servomotory (šírka pulzu 20msec)
  • 2 jednosmerné motory (do 1Amp, dopredu, dozadu, PWM 0-100%)
  • 2 krokové motory
  • 8 binárnych výstupov (4 výstupy ovládajú relé)

Vstupy

  • 4 analógové 10 bitové vstupy 0-10V
  • 4 binárne vstupy

Senzory On-Board

  • ultrazvukový senzor vzdialenosti
  • detektor hluku
  • detektor modulovaného svetla

Riadenie komunikácie a sprístupnenie hodnôt zo zariadenia je možné prostredníctvom knižnice Library World - RobotBoard . V okne knižnice je možné pripojiť sa ku zariadeniu, farba tlačítka Open-Close Port indikuje prítomnosť alebo neprítomnosť zariadenia na zvolenom porte. Vyber bitov pre binarne operacie je prostredníctvom ich váh (1+2+4+8...), t.j. ak potrebujeme zmenit stav bitov 1 a 2, použijeme blok toggle pin s hodnotou 3. Hodnotu pre PWM serva sa zadávajú z rozsahu (-100, +100) a zodpovedajú maximálnym výchylkám serva.

TNtech RoboBoard je vo vývoji a uvedená technická špecifikácia sa môže zmeniť.

Robot variables.png
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox