Архив рубрики: CLEV3R для LEGO EV3

Статьи про среду разработки программ CLEV3R и примеры программ. Эта среда разработки позволила использовать монитор блока LEGO EV3. Созданы игры с интерактивным управлением.

Круг на экране блока LEGO EV3

Пример простой программы в CLEV3R

Для начала программирования может не хватать примеров простых программ. Очевидные для опытных программистов вещи могут быть не понятны начинающим. Даже употребление распространенных во многих языках операторов может вызывать затруднения. На примерах легче понять синтаксис и логику работы программ.

В среде программирования CLEV3R есть справочные описания, но нет примеров программ. У меня накопилось много интересных и довольно простых программ. К сожалению, я не могу утверждать, что использую оптимальные способы программирования. Предлагаю рассматривать все программы как образец рабочей программы, как возможный вариант.

Для начала предлагаю программу в которой два цикла, звуковые сигналы и рисование окружностей на экране.

CLEV3R пример программы
CLEV3R пример программы

Эта же программа с комментариями.

Пример программы с комментариями в CLEV3R
Пример программы с комментариями в CLEV3R

Слишком много комментариев тоже плохо. Программа стала нечитаемой. По хорошему, комментарии не должны пояснять работу операторов, функций и синтаксис. Комментарии должны пояснять за что отвечают переменные и какую функцию выполняют блоки программы.

Для каждой программы удобно создать отдельную папку в блоке EV3 с помощью CLEV3R. Все файлы относящиеся к конкретной программе будут в папке. Легче наводить порядок.

Саму программу можно набрать вручную непосредственно в редакторе в CLEV3R, а можно открыть готовый файл программы скачанный с сайта. Просто файл с расширением bp не получилось разместить, разместил архив с этим файлом. Кстати, можно просматривать файлы листинга программы в текстовом редакторе, например, в редакторе «Блокнот».

For i=20 To 5 Step -0.5 
  Speaker.Tone( i*5, i*100, 50)
  Speaker.Wait()
EndFor
LCD.Clear()
b=3
While b<100
  LCD.Circle(1,89,64,b)
  Program.Delay(30)
  b+=1
EndWhile
Program.Delay(2000)

Можно скопировать текст программы в среду CLEV3R. Для тренировки, попробуйте все способы.

Программа Krugi работает в EV3
Программа Krugi запущена на LEGO EV3
Внешний вид среды разработки CLEV3R

CLEV3R — новая среда разработки для EV3

Недавно заметил на просторах интернета новую среду разработки программ для LEGO EV3. Сайт разработчиков https://clev3r.ru/

Вступление

Скачать и установить на компьютер очень просто. Блок EV3 подключать к компьютеру через bluetooth получилось не сразу. Это от моего непонимания процесса подключения к компьютеру. Блок EV3 ранее уже был подключен к компьютеру через bluetooth и это подключение использовалось программой LEGO MINDSTORMS Education EV3. В компьютере в настройках в списке устройств было устройство EV3 со статусом «Сопряжено». Через CLEV3R удалось подключиться после удаления устройства EV3 из списка устройств.
В этой статье я хочу поделиться своими впечатлениями и начать цикл статей о CLEV3R с предусловием: пока хочу и есть возможность.

Впечатления о CLEV3R

Мне очень понравилась эта среда разработки. Только положительные эмоции. Хотя, неудачно попробовав использовать массивы, мы завесили блок EV3 и сбросили его до заводских настроек. Ни разу не столкнулся ни с лагами (подвисаниями) ни с багами (ошибками). Программирование ведётся на языке Basic Plus — это полноценный и адаптированный для EV3 язык программирования. Удобно, что не требуется производить специальных действий с самим блоком EV3.

С ev3basic без CLEV3R я не сталкивался, поэтому буду сравнивать с LEGO MINDSTORMS Education EV3 и с EV3 Classroom.

Во первых, в CLEV3R можно управлять файлами, записанными на блок EV3, а в LEGO MINDSTORMS Education EV3 и EV3 Classroom этого делать, насколько я знаю, нельзя.
Во вторых, в CLEV3R есть удобная справка, а в LEGO MINDSTORMS Education EV3 и EV3 Classroom её нету.
В третих, когда делаешь большую программу в LEGO MINDSTORMS Education EV3, то он начинает лагать, в CLEV3R такого не замечено.
В четвертых, при компиляции в CLEV3R происходит проверка синтаксиса.

Сравнение внешнего вида программ

Самый не удобный, на мой взгляд, вид программы это блочный в LEGO MINDSTORMS Education EV3. По началу мне нравилось, что можно запустить несколько веток программы одновременно. При разрастании программы читать её становится сложно и интерфейс сильно тормозит.

Программа игры "Flappy bird" в LEGO MINDSTORMS Education EV3
Программа игры Flappy bird в LEGO MINDSTORMS Education EV3

В EV3 Classroom более привычный и очень наглядный внешний вид программы. Есть перебор с упрощениями для юных программистов, но в целом очень хороший вариант. Удобная работа с переменными, можно проводить вычисления. Из недостатков, пожалуй, только отсутствие возможности рисовать на экране блока EV3. Говорят, есть временные задержки при работе с датчиками и моторами, но я пока не могу их оценить.

Программа шахматных часов в EV3 Classroom
Программа шахматных часов в EV3 Classroom

В CLEV3R программа достаточно наглядно выглядит. Есть возможность работать с файлами, есть возможность рисовать на экране блока EV3. Говорят, что временные задержки при работе с датчиками и моторами меньше чем в описанных выше языках программирования блока EV3.

Фрагмент программы в среде CLEV3R
Программа в среде CLEV3R

Итоги и планы

На данный момент, я считаю CLEV3R наиболее полноценным и удобным вариантом программирования блока EV3. Когда мой сын обнаружил эту среду разработки программ, то у него произошёл взрывной подъём интереса к программированию.

На страницах сайта robiki.ru я планирую разместить несколько примеров программ для блока EV3. Надеюсь на отклик энтузиастов.