Otwórz Robercie
Paradygmat | sterowany zdarzeniami , imperatywny |
---|---|
Zaprojektowany przez | Beate Jost, Reihard Budde, Thorsten Leimbach, Achim Kapusta |
Deweloper | Fraunhofer IAIS, Wydział Inżynierii Mediów |
Po raz pierwszy pojawiły się | 2013 | (test) 2014 (oficjalnie)
Wersja stabilna | 2.0 / 11 października 2016
|
Dyscyplina pisania | dynamiczny |
Język implementacji | Java , JavaScript , HTML (NEPO) |
system operacyjny | Windowsa, Linuksa, iOSa |
Licencja | Licencja Apache 2 |
Strona internetowa | |
Pod wpływem | |
Scratch , Blockly |
Open Roberta to projekt w ramach niemieckiej inicjatywy edukacyjnej „Roberta – Nauka z robotami”, zainicjowanej przez Fraunhofer IAIS, instytut należący do Towarzystwa Fraunhofera . Wraz z Open Roberta Fraunhofer IAIS chce zachęcić dzieci do programowania za pomocą robotów, takich jak Lego Mindstorms i innych programowalnych systemów sprzętowych, takich jak Arduino , BBC micro:bit i Calliope mini . Chmura _ -podejście Open Roberta Lab ma na celu uproszczenie koncepcji programowania i ułatwienie nauczycielom i szkołom nauczania programowania. Open Roberta jest darmowy i nie wymaga instalacji. Projekt został początkowo założony za 1 milion euro przez Google.org. Użytkownicy z maksymalnie 120 krajów mają teraz dostęp do platformy.
Otwórz laboratorium Roberta
Open Roberta Lab to oparte na chmurze środowisko programistyczne i oprogramowanie pośrednie skierowane do użytkownika w łańcuchu bitów oprogramowania i oprogramowania układowego, które sprawiają, że robot działa w środowisku klasowym. To środowisko pozwala dzieciom i młodzieży bez wstępnej wiedzy technicznej zaprogramować LEGO MINDSTORMS EV3 i NXT, a także robota opartego na Arduino Bot'n Roll ONE A, BBC micro:bit i Calliope mini. Od wersji 2.3.0 mikropłytki BOB-3, a od wersji 3.0 mikropłytki Arduino Uno, Arduino Nano i Arduino Mega można również programować za pomocą Open Roberta. Dostępnych jest wiele różnych bloków programowych do programowania silników, czujników i klocka EV3. Open Roberta Lab wykorzystuje podejście programowanie wizualne . Takie podejście ułatwia, szczególnie początkującym bez doświadczenia, naukę kodowania. Jako środowisko programistyczne oparte na chmurze nie jest wymagana instalacja i można używać dowolnego systemu operacyjnego (Mac OS, Windows, Linux) i sprzętu komputerowego. Jedną z zalet Open Roberta Lab jest to, że można z niego korzystać na dowolnym urządzeniu (PC, tablet, smartfon); tylko przeglądarka internetowa jest potrzebne. Z Laboratorium można korzystać bez rejestracji i nie jest wymagane żadne konto użytkownika. Od wersji 2.2.1 oparty na systemie Linux system operacyjny EV3dev jest oficjalnie obsługiwany przez robota LEGO MINDSTORMS EV3. Open Roberta Lab jest dostępny w następujących językach: kataloński, czeski, duński, holenderski, angielski, fiński, francuski, niemiecki, włoski, polski, portugalski, rosyjski, hiszpański i turecki.
Społeczność open source
Platforma programistyczna Open Roberta Lab została opracowana na zasadach open source . Zarówno oprogramowanie , jak i narzędzia programistyczne typu open source są dostępne na serwerze Towarzystwa Fraunhofera . Zespół programistów Fraunhofer współpracuje z nauczycielami i ekspertami edukacyjnymi z sieci Roberta. Dlatego w rozwój zaangażowane są także uczelnie i studenci. Powinien on dotyczyć zwłaszcza studentek – przewodniej zasady projektu Roberta.
Język programowania NEPO®
NEPO to darmowy metajęzyk programowania typu open source, z którego mogą korzystać studenci, naukowcy, nauczyciele i inne zainteresowane osoby w ramach Open Roberta Lab. NEPO przekłada się na nowe łatwe programowanie online (lub po prostu OTWÓRZ czytać od tyłu). NEPO to nazwa graficznego języka programowania i powiązanej z nim warstwy połączenia sprzętowego. NEPO korzysta z ogólnodostępnej Blockly . Ponadto w ramach NEPO dostępne są dodatkowe funkcjonalności i usprawnienia, które zostały dostosowane do Open Roberta. Paradygmat programowania NEPO jest inspirowany Scratchem , który został opracowany przez Massachusetts Institute of Technology . Blok NEPO zawsze reprezentuje i zawiera w sobie pewną funkcjonalność robota. Zestaw funkcji bloków można łatwo rozpoznać po powiązanej kategorii bloków, na przykład »czujniki«. Programowanie za pomocą NEPO opiera się na prostej zasadzie. Bloki są ze sobą połączone i będą wykonywane przez robota zgodnie z ich kolejnością. Zasada ta nazywana jest „działaniem sekwencyjnym”.
Kategorie bloków NEPO
Wszystkie dostępne bloki są wymienione i podzielone na kategorie jako Akcja, Czujniki, Sterowanie, Logika, Matematyka, Tekst, Kolory, Zmienne, Funkcje i Komunikaty, jak pokazano w poniższej tabeli.
Kategoria | Notatki | Kategoria | Notatki | |||
---|---|---|---|---|---|---|
Działanie | Zawiera klocki do bezpośredniego wykonania robota. | Tekst | Zawiera klocki do zapisywania ciągów znaków na wyświetlaczu robota. | |||
Czujniki | Zawiera bloki do wszystkich standardowych czujników systemu EV3. | Zabarwienie | Standardowe bloki kolorów do porównywania wejść czujników. | |||
Kontrola | Zawiera bloki do kontroli przebiegu programu. Kategoria obejmuje następujące bloki: If .. do, If .. do .. else, powtarzaj w nieskończoność, powtarzaj .. razy, czekaj .. ms, czekaj, aż .. | Zmienne | Można zdefiniować zmienne lokalne i globalne. | |||
Logika | Za pomocą bloków »logicznych« można tworzyć warunki. Za pomocą tego warunku można łączyć ze sobą stany, wartości i zdarzenia. | Funkcje | Można zdefiniować funkcje z parametrami wejściowymi i wyjściowymi. | |||
Matematyka | Operatory matematyczne i bloki parametrów. | Wiadomości | Zawiera bloki do wysyłania i odbierania wiadomości Bluetooth. | |||
Lista | Zawiera bloki do tworzenia listy i wyszukiwania lub sortowania elementów listy. | start programu | Każdy program rozpoczyna się od tego bloku. Ten blok jest zawsze dostępny w obszarze roboczym. |
Złącze wejścia/wyjścia NEPO
W zależności od bloku do bloku mogą być przekazywane różne wartości. Typ wartości można rozpoznać po kolorowych związkach (nazywanych łącznie »łącznikami«) bloku. W rozdziale »Kategoria bloków« możesz zobaczyć różne wartości, jakie może mieć blok. Tylko wtedy, gdy kolory złącza wejściowego i wyjściowego są zgodne, można połączyć te bloki.
Blok może opcjonalnie przekazać wartość do innego bloku. Bloki te posiadają kolorowe złącza wyjściowe. Bloki te można połączyć tylko wtedy, gdy kolory złącza wejściowego i wyjściowego są takie same.
W sumie w NEPO istnieje sześć typów wejść i wyjść. Te typy mogą mieć następujące wartości:
- Wartość logiczna (jasnoniebieski)
- Numer (ciemnoniebieski)
- Ciąg znaków / tekst (zielony)
- Kolor (żółty)
- Lista (fioletowy)
- Połączenie (różowy)
Sztuczne sieci neuronowe
Od sierpnia 2022 r. Open Roberta Lab oferuje funkcjonalność do programowania sztucznych sieci neuronowych. Dzięki tej integracji temat „Sztuczna inteligencja” został zintegrowany z Open Roberta Lab. Odbywa się to zgodnie z ramowym programem nauczania informatyki w Nadrenii Północnej-Westfalii. Projekt jest finansowany przez Ministerstwo Szkolnictwa i Edukacji Nadrenii Północnej-Westfalii. Graficzna integracja umożliwia niskoprogowy dostęp. Ta funkcja sprawia, że algorytmy sztucznej inteligencji są intuicyjnie obsługiwane i zrozumiałe dzięki programowaniu graficznemu. Celem jest zrozumienie przez uczniów klas 5 i 6, czym jest sztuczna sieć neuronowa i jak działa. Uczą się też samodzielnie programować, np. aby umożliwić robotowi samodzielne poruszanie się w swoim otoczeniu.
Strukturę i działanie prostych sieci neuronowych można zrozumieć krok po kroku. Zaprogramowane przez uczniów sieci można przetestować bezpośrednio w symulacji 2D udostępnionej w Open Roberta Lab, dzięki czemu dzieci otrzymują natychmiastową informację zwrotną. Po zrozumieniu podstaw uczniowie mogą trenować sztuczną sieć neuronową. W ten sposób można „nauczyć” robota unikania przeszkód, tak jak robią to na przykład roboty odkurzające.
Otwórz symulator Roberty
Od wersji beta 1.3.0 Open Roberta Lab oferuje również środowisko symulacyjne. Jest to symulacja dwuwymiarowego modelu robota wyposażonego w dwa koła ( napęd różnicowy ). Do programowania symulowanego robota można również wykorzystać język programowania NEPO. Symulowany model 2D obejmuje symulację czujnika ultradźwiękowego, czujnika dotykowego, czujnika koloru i wyświetlacza LED. Ponadto można wybrać różne środowiska. Od wersji beta 1.4.0 bloków NEPO można używać bez żadnych zmian do symulacji 2D i prawdziwego robota.
Otwórz Galerię Roberta
Od wersji 2.3.0 dostępna jest „Galeria”, umożliwiająca użytkownikom udostępnianie własnych programów wszystkim innym. Zalogowani użytkownicy ze zweryfikowanym kontem mogą udostępniać swoje programy, klikając „edytuj” na pasku menu, a następnie klikając punkt menu „moje programy”. W poniższym przeglądzie programów zapisanych online wystarczy kliknąć ikonę galerii po prawej stronie.
W celu wczytania programu z Galerii, użytkownicy – zalogowani lub nie – klikają dwukrotnie na wybrany program, a następnie mogą przeglądać, zmieniać lub pobierać jego zawartość.
Zintegrowane systemy
System | Język programowania | Symulacja | Przenosić | Kompilator |
Arduino | C/C++ | NIE | USB | arduino-bilder |
BBC micro:bit | MicroPython | Tak | USB | |
Bioniczny Kwiat | C/C++ | NIE | USB | |
Zestaw bioniczny | C/C++ | NIE | USB | |
BOB3 | C/C++ | NIE | USB, Bluetooth | arduino-bilder |
Bot'n'Roll | C/C++ | NIE | USB | arduino-bilder |
CalliBot | C | Tak | USB, Bluetooth | |
Kaliope mini | C/C++ | Tak | USB, Bluetooth | |
Edison | MicroPython | NIE | Audio | |
Lego Mindstorms NXT | NXC | Tak | USB | NXC |
Lego Mindstroms EV3 | C, Java, Python | Tak | USB, WLAN | arm-linux, Java |
Lego WeDo | Podstawka żetonowa | NIE | Bluetooth | Leo Oryginał |
mBot | C++ | Tak | USB | arduino-bilder |
mBot 2 | Pyton | NIE | USB | arduino-bilder |
NAO | Pyton | Tak | WLAN, Ethernet | |
ROB3RTA | C/C++ | Tak | USB, Bluetooth | |
senseBox | C/C++ | NIE | USB | arduino-bilder |
tymio | Aseba | Tak | USB, Bluetooth | arduino-bilder |
Historia
Open Roberta to technologiczne rozszerzenie „konceptu Roberta”. Roberta (skrót od: „Roberta – Learning with robots”) to inicjatywa edukacyjna Fraunhofer założona w 2002 roku przez niemieckie Ministerstwo Edukacji i Badań Naukowych . Od 2002 roku w kursach Roberta wzięło udział ponad 350 000 studentów.
Nagrody
Open Roberta została nagrodzona „Bundessieger 2015” w konkursie „Niemcy Kraina Idei” w kategorii edukacja. W 2016 roku Open Roberta zdobyła nagrodę bitkom „d-elina” w kategorii profesjonalnej.
- ^ „Open Roberta - internetowe podejście do wizualnego programowania prawdziwych robotów edukacyjnych” . Tidsskrift . Źródło 29 grudnia 2019 r .
- Bibliografia _ "Pressemitteilung vom 24.03.2015" . Fraunhofera . Źródło 29 grudnia 2019 r .
- ^ " "Open Roberta" - Fraunhofer, Google i LEGO Education lassen die Roboter los" . Blog produktów Google . 4 listopada 2014 . Źródło 29 grudnia 2019 r .
- ^ Williams, Elliot (11 maja 2016). „Otwarte roboty z otwartą Robertą” . hackaday . Źródło 29 grudnia 2019 r .
- ^ Willner-Giwerc, Sara (10 września 2015). „Otwarta Roberta: recenzja” . Inżynieria Lego . Źródło 29 grudnia 2019 r .
- ^ „Bot'n Roll ONE a Robot” .
- ^ „Fundacja Micro:bit to globalna organizacja non-profit, która sprawia, że wynalazki z technologią są zabawą dla wszystkich!” . microbit.org . Źródło 2016-11-16 .
- ^ „CALLIOPE | Strona główna” . calliope.cc . Źródło 2016-11-16 .
- ^ Geek w Sydney
- ^ „Open Roberta Lab” zarchiwizowane 25.06.2015 w Wayback Machine
- ^ Jost, B., Ketterl, M., Budde, R., Leimbach, T. Graficzne środowiska programistyczne dla robotów edukacyjnych: Open Roberta - jeszcze jeden? , w IEEE International Symposium on Multimedia (ISM), grudzień 2014 r
- ^ Piły, Paweł (4 listopada 2014). „Dzięki Open Roberta Google chce pomóc dzieciom z niemieckich szkół w nauce programowania za pomocą robotów” . Następna sieć . Źródło 29 grudnia 2019 r .
- ^ Niemcy Land of Ideas zarchiwizowane 08.12.2015 w Wayback Machine
- Bibliografia _ „Bitkom zeichnet beste E-Learning-Projekte aus” . bitkom . Źródło 29 grudnia 2019 r .
Linki zewnętrzne
- oprogramowanie 2014
- Strony internetowe dla dzieci
- Edukacyjne języki programowania
- Towarzystwo Fraunhofera
- Darmowe oprogramowanie edukacyjne
- Pedagogiczne zintegrowane środowiska rozwojowe
- Rodzina języków programowania Smalltalk
- Oprogramowanie do tworzenia gier wideo
- Społeczności świata wirtualnego
- Wizualne języki programowania