ROBO Pro Coding (RU)

Общая информация о пользовании продуктом

Общая информация о пользовании продуктом

Общая информация о пользовании продуктом

ROBO Pro Coding — это среда разработки для программирования нового контроллера TXT 4.0 и, следовательно, для программирования моделей fischertechnik. Выпущены версии ROBO Pro Coding для Windows, macOS, Linux, iOS и Android. Скачать это ПО можно из следующих источников:

Google_Play_Badge_DE_230x67.png    App_Store_Badge_DE_230x67.png    Microsoft_Badge_De_230x67.png   Linux_Badge.png

Russisch-AllgemeineBenutzung-Bild1.PNG


image-1623839044249.22.21.png  

Показанный код можно использовать для этой модели (слева). Веб-интерфейс ПО ROBO Pro Coding имеет следующую структуру (цифры соответствуют областям изображения, на которых они указаны):

  1. Здесь показаны блоки кода, написанные на языке Python
  2. В это поле перетаскиваются блоки для программирования
  3. В консоли показан ход выполнения программы 
    • Точки останова используются для отладки программ. Они определяют участки кода, на которых выполнение программы приостанавливается. Точки останова задаются через редактор и состоят из имени файла и номера строки.
    • В области «Ausdruck» («Выражение») можно просмотреть содержимое переменных.
    • В области «Aufrufstapel» («Стек вызовов») показаны вложенные вызовы. Стек вызовов полезен, в частности, при выполнении функций.
  4. Здесь ты найдешь все блоки для программирования, отсортированные по категориям Aktoren (Исполнительные элементы)Sensoren (Датчики) и Verarbeitung (Обработка)
  5. Эта строка разъясняется отдельно в разделе «Заглавная строка»
  6. Здесь можно выбрать уровень обучения, подходящий данному пользователю. В зависимости от уровня могут отображаться, например, только самые важные блоки.

 

Заглавная строка

image-1623793979375.19.18.png

Заглавная строка содержит (слева направо) элементы управления для запуска программы, остановки программы, запуска отладчика, вызова тестирования интерфейса, загрузки текущей программы и соединения с контроллером.

Запуск программ

Чтобы запустить свою программу из среды ROBO Pro Coding, щелкни по этой иконке.

Остановка программ 

Чтобы остановить свою программу до того, как она остановится сама, коснись этой иконки.

Отладчик

Отладчик упрощает поиск ошибок в программе. Через меню в верхнем правом углу можно шаг за шагом пройти код, имитируя выполнение программы. При этом программа будет реагировать на взаимодействие с датчиками, например на нажатие клавиши. Во время прохождения программы в большом поле слева показано, в каком блоке, а справа — в каком месте кода на языке Python ты находишься.

Тестирование интерфейса

Щелчком по этой иконке с тремя регуляторами открывается это окно:

Russisch-AllgemeineBenutzung-Bild4.PNG

Здесь показаны все подключенные устройства. При помощи ползунков можно проверить, работают ли исполнительные элементы. Для датчиков указывается измеренное значение (например, здесь напротив клавиши «Mini-Taster» показана цифра «1», потому что эта кнопка нажата). В выпадающем меню (маленький треугольник) можно выбрать подключенные элементы.

Загрузка программ

Если ты написал(-а) программу и хочешь, чтобы она автономно выполнялась на контроллере, ее можно загрузить в контроллер при помощи этой иконки. После загрузки твоя программа появится в списке файлов в контроллере. Щелчком по имени программы в этом списке ты перейдешь в ее подпапку. В ней есть файл с именем «main.py». Щелкни его — кнопка «open» внизу справа должна загореться зеленым. Щелкни кнопку «open» — откроется еще одно меню с четырьмя опциями:

  1. Laden (Загрузка): загрузи программу, чтобы запустить ее с начального экрана
  2. Auto load (Автозагрузка): при следующем запуске контроллера программа загружается автоматически
  3. Auto start (Автозапуск): при следующем запуске контроллера программа автоматически загружается и запускается
  4. Delete project (Удалить проект): программа удаляется из контроллера
Соединение с контроллером 

Процесс соединения с контроллером описывается здесь.

Конфигурация контроллера

Чтобы использовать разные компоненты — датчики и исполнительные элементы — в программе, их надо подключить к контроллеру, причем не только физически, но и в программе. Конфигурация контроллера всегда открыта (автоматически). Вкладка для перехода к ней (Controllerkonfiguration) находится вверху справа от вкладки основной программы (Hauptprogramm). Щелкни эту вкладку.

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

Russisch-Allgemeine Benutzung-Bild5.PNG

Сохранение программ

 Чтобы сохранить программу, щелкни по трем линиям вверху слева на веб-сайте ROBO Pro Coding. Коснись опции «Exportieren» («Экспортировать»). Сейчас ты можешь выбрать место сохранения программы: на твоем устройстве или в GitLab.

Локальное сохранение: после ввода имени твоей программы просто щелкни по «Exportieren» — и файл программы сохранится на твоем устройстве.

GitLab: после ввода имени твоей программы и выполнения указанных шагов, необходимых для ввода личного токена доступа, просто щелкни по «Exportieren» — и файл программы сохранится в твоем аккаунте на GitLab.

Исполнительные элементы

Исполнительные элементы

Выходы

Блок «Starte jedes mal» («Запускать каждый раз»)

Блок «Starte jedes mal» позволяет запускать программу при выполнении какого-либо условия. То есть, он работает аналогично ветвлению, но выполняется не однократно, а каждый раз, когда выполняется условие, в течение всего прогона программы. Блок «Starte jedes mal»:

Russisch-Ausgänge-Bild1.PNG

Является сокращением следующей конструкции:

Russisch-Ausgänge-Bild2.PNG

В блок «Starte jedes mal» категории «Ausgänge» («Выходы») можно ввести все условия из этой категории.

Указание: сегмент программы внутри блока «Starte jedes mal» должен быть максимально коротким и не должен содержать блокирующие вызовы или бесконечные циклы, чтобы эта часть программы выполнялась быстро.

СИДы

image-1623745844016.42.50.png

Присвоить

При помощи блоков setze LED … (присвоить СИД ...) и setze LED Helligkeit … (присвоить СИД яркость ...) можно включать и выключать СИД и выбирать определенное значение его яркости (от 0 до 512). 

Вызвать

При помощи блока hole LED Helligkeit (получить яркость СИД) можно вызвать яркость СИД, чтобы обработать ее как значение.

Запросить

При помощи блоков ist LED … (СИД ...)  и ist LED Helligkeit … (СИД имеет яркость ...) активность и яркость нужного СИД можно использовать как условие. В примере мы установили яркость СИД на 512, если ее значение еще не равно этому.

Russisch-Ausgänge-Bild4.PNG

Двигатели 

Иконка на блоках двигателей обозначает все двигатели, которые не являются двигателями с энкодером или серводвигателями.

Присвоить

При помощи блока setze Motorgeschwindigkeit auf [] … (присвоить скорости двигателя значение [] ...) можно задать определенное значение скорости двигателя (от 0 до 512). 

Вызвать

При помощи блока hole Motorgeschwindigkeit (получить скорость двигателя) можно вызвать скорость двигателя, чтобы обработать ее как значение.

Запросить

При помощи блоков läuft Motor (двигатель работает) и ist Motorgeschwindigkeit … (скорость двигателя ...) активность и скорость двигателя можно использовать как условие.

Остановить

При помощи блока stoppe Motor … (остановить двигатель ...) можно остановить нужный двигатель.

Компрессор

image-1623746227574.40.52.png

Присвоить

При помощи блока setze Kompressor [] (присвоить компрессору []) можно включать и выключать компрессор. 

Запросить

При помощи блока ist Kompressor [] (компрессор []) активность компрессора можно использовать как условие. 

Электромагнитный клапан

image-1623746259058.41.19.png

Присвоить

При помощи блока setze Magnetventil [] (присвоить электромагнитному клапану []) можно включать и выключать электромагнитный клапан. Здесь «ein» («вкл.») означает, что клапан открыт, а «aus» («выкл.») — что клапан закрыт.

Запросить

При помощи блока ist Magnetventil [] (электромагнитный клапан []) активность электромагнитного клапана можно использовать как условие.

Исполнительные элементы

Звук

В контроллер TXT 4.0 встроен громкоговоритель, поэтому с его помощью можно воспроизводить звуки.

Блок «Starte jedes mal» («Запускать каждый раз»)

Блок «Starte jedes mal» позволяет запускать программу при выполнении какого-либо условия. То есть, он работает аналогично ветвлению, но выполняется не однократно, а каждый раз, когда выполняется условие, в течение всего прогона программы. Блок «Starte jedes mal»:

Russisch-Sound-Bild1.PNG

Является сокращением следующей конструкции:

Russisch-Sound-Bild2.PNG

В блок «Starte jedes mal» категории «Sound» («Звук») можно ввести все условия из этой категории.

Указание: сегмент программы внутри блока «Starte jedes mal» должен быть максимально коротким и не должен содержать блокирующие вызовы или бесконечные циклы, чтобы эта часть программы выполнялась быстро.

Воспроизвести

Предустановленные аудиофайлы

При помощи следующего блока можно воспроизвести один из 29 предустановленных звуков. Нужный аудиофайл выбирают в выпадающем меню (маленький треугольник). Также можно выполнить бесконечный цикл воспроизведения звука. Для этого установи флажок напротив иконки бесконечного цикла.

Russisch-Sound-Bild3.PNG

Собственные аудиофайлы

Если ты хочешь воспроизводить свой звук, используй блок

Russisch-Sound-Bild4.PNG

Чтобы встроить в блок собственный звук, надо:

  1. Установить соединение с контроллером
  2. Ввести IP-адрес контроллера в браузер (выбирай IP, который ты использовал(-а) для соединения с контроллером)
  3. Ввести на загруженной странице «USER: ft, PASSWORD: fischertechnik»
  4. Открыть папку sounds и, щелкнув в ней по знаку «плюс», загрузить нужный аудиофайл в контроллер (важно: аудиофайл должен иметь формат WAV)
  5. В блоке ROBO Pro Coding прописать путь «./dateiname.wav»

Свой звук тоже можно зациклить.

Запросить

Чтобы узнать, проигрывается ли аудиофайл, воспользуйся блоком gibt Ton wieder (воспроизводит звук). Его можно использовать в качестве условия в программе.

Остановить

Чтобы остановить воспроизведение аудио, просто используй в программе блок stoppe Tonwiedergabe (остановить воспроизведение звука).

 

Исполнительные элементы

Дисплей

При помощи блоков категории «Display» («Дисплей») можно настроить и подготовить к использованию дисплей контроллера TXT 4.0. Этот процесс состоит из двух этапов:

  1. Конфигурирование, то есть:
    • Открыть новый файл категории «Display»; щелкнув по иконке страницы с плюсом вверху слева,
    • перетащить нужные элементы в область, разграфленную на клетки (она представляет собой настраиваемую часть дисплея);
    • при необходимости изменить характеристики. 
  2. Программирование, то есть:
    • В основной программе при помощи блоков категории «Display» запрограммировать результат взаимодействия с дисплеем.

Блоки

Запрос события

Блок Ereignis [] (Событие []) вызывает возвращаемое значение элемента. Этот блок можно использовать только в событийных программах. В событийных программах этот блок автоматически ссылается на событие, в программе которого он используется. Подходящий тип возвращаемого значения можно выбрать в выпадающем меню (маленький треугольник):

Bild1.PNG

Поле метки

При помощи элемента «Поле метки» на дисплее можно разместить текст. Символ этого элемента в конфигураторе дисплея — ярлык. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока setze Beschriftungsfeld Text … (присвоить полю метки текст ...) можно менять показанный текст в ходе выполнения программы.

Ввод данных

Элемент «Ввод» позволяет пользователю вводить текст через контроллер. Символ этого элемента в конфигураторе дисплея — буква «Т». Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока setze Eingabefeld Text … (присвоить полю ввода текст ...) можно менять показанный текст в ходе выполнения программы.

 

Программа ввода

Программа ввода выполняется, когда ввод данных завершен. Она пишется отдельно от основной программы. Переменные работают в обеих программах. Программа ввода выполняется в блоке wenn Eingabe abgeschlossen (если ввод данных завершен). В программе ввода для блока Ereignis [] (Событие []) выбирают тип «text». В этом примере переменной Name (имя) присваивается введенный текст, и затем она используется в основной программе для вывода введенного текста:

Bild2.PNG

Измерительный инструмент 

Функция «Измерительный инструмент» может отображать значения (кроме значений меньше 1). Символ измерительного инструмента в конфигураторе дисплея — линейка. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока setze Messinstrument auf Wert … (присвоить измерительному инструменту значение ...) измерительному инструменту присваивается введенное значение. Это значение должно принадлежать предварительно заданному диапазону значений. Если это значение не принадлежит предварительно заданному диапазону значений, то отображается либо верхний, либо нижний предел этого диапазона значений в зависимости от того, какое значение указано: слишком большое или слишком маленькое.

Отображение статуса

Индикатор статуса показывает активность чего-либо. В зависимости от статуса он горит («активен») или не горит («неактивен»). Символ индикатора статуса в конфигураторе дисплея — горящий диод. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока setze Statusanzeige aktiv [] (сделать индикатор статуса активным []) индикатор статуса можно активировать и деактивировать. В выпадающем меню (маленький треугольник) можно выбрать состояние индикатора статуса: активен или неактивен.

Ползунок

Положение ползунка отражает то или иное значение. Пользователь может изменить положение ползунка через сенсорный экран. Вызвать значение можно через блок Ereignis [], как только ползунок остановится. Вызванное значение имеет вид десятичного числа. Если ты хочешь, чтобы значение, которое отражает ползунок, имело вид целого числа, надо вставить блок runde (округлить). Символ ползунка в конфигураторе дисплея — линия с кружком. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока Setze Schieberegler Wert … (присвоить ползунку значение ...) можно переместить ползунок на другое значение. 

При помощи блока setze Schieberegler aktiviert [] (активировать ползунок []) можно менять активность в выпадающем меню (маленький треугольник).

Программа ползунка

Программа ползунка выполняется после передвижения ползунка. Она пишется отдельно от основной программы. Переменные работают в обеих программах. Программа ползунка выполняется в блоке wenn Schieberegler bewegt (если ползунок перемещен). В программе ввода для блока Ereignis [] (Событие []) выбирают тип «value». В этом примере скорость двигателя регулируется ползунком. Значение, соответствующее положению ползунка, должно округляться, т. к. частота вращения двигателя может быть выражена только целым числом:

Bild3.PNG

 

Экранная кнопка

Экранная кнопка — это поле с надписью, на которое можно нажимать. При нажатии на экранную кнопку сразу после ее отпускания выполняется программа экранной кнопки. Символ экранной кнопки в конфигураторе дисплея — квадрат с буквами «ОК». Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

При помощи блока setze Schaltfläche aktiviert [] (активировать экранную кнопку []) можно менять активность в выпадающем меню (маленький треугольник).

Программа экранной кнопки

Программа экранной кнопки выполняется после отпускания экранной кнопки. Она пишется отдельно от основной программы. Переменные работают в обеих программах. Программа экранной кнопки выполняется в блоке wenn Schaltfläche angeklickt (если нажата экранная кнопка). В программе экранной кнопки нельзя использовать блок Ereignis [], т. к. у экранной кнопки нет возвращаемого значения. В этом примере СИД активируется нажатием экранной кнопки.

Bild4.PNG

 

Переключатель

Переключатель может принимать два положения и всегда находится точно в одном из этих двух положений. В зависимости от положения он возвращает значение wahr (истина) или falsch (ложь). Символ переключателя в конфигураторе дисплея — овал с точкой. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

Блок

Bild5.PNG

выполняет две функции. Можно присвоить значение wahr (истина) или falsch (ложь) либо активности (выбрать «enabled» («включено») в выпадающем меню), либо состоянию (выбрать «checked» («отмечено») в выпадающем меню). 

Программа переключателя

Программа переключателя выполняется каждый раз при изменении положения переключателя. Она пишется отдельно от основной программы. Переменные работают в обеих программах. Программа переключателя выполняется в блоке wenn Schalter umgeschaltet (если переключатель переключен). В программе переключателя блок Ereignis [] устанавливается на «checked» и возвращает значение wahr (истина) или falsch (ложь). Программа в этом примере включает СИД, если переключатель переключается, иначе СИД выключается:

Bild6.PNG

 

Флажок

Флажок может принимать два состояния и всегда находится точно в одном из этих двух состояний. В зависимости от состояния он возвращает значение wahr (истина) или falsch (ложь). Символ флажка — квадратик с галочкой. Если перетащить этот символ в область, разграфленную на клетки, справа откроется окно. Здесь во вкладке «Inspektor» («Меню свойств») можно задать

 

Следующий блок выполняет две функции. В выпадающем меню (маленький треугольник) можно выбрать функцию, которую ты хочешь использовать. Можно присвоить значение wahr (истина) или falsch (ложь) либо активности (выбрать «enabled» («включено») в выпадающем меню), либо состоянию (выбрать «checked» («отмечено») в выпадающем меню).

Bild7.PNG

Программа флажка

Программа флажка выполняется каждый раз при щелчке по флажку. Она пишется отдельно от основной программы. Переменные работают в обеих программах. Программа ввода выполняется в блоке wenn Kontrollkästchen umgeschaltet (если флажок переключен). В программе переключателя блок Ereignis [] устанавливается на «checked» и возвращает значение wahr (истина) или falsch (ложь). Программа в этом примере включает СИД, если флажок отмечен, иначе СИД выключается.

Bild8.PNG

Исполнительные элементы

Двигатель

Блок «Starte jedes mal» («Запускать каждый раз»)

Блок «Starte jedes mal» позволяет запускать программу при выполнении какого-либо условия. То есть, он работает аналогично ветвлению, но выполняется не однократно, а каждый раз, когда выполняется условие, в течение всего прогона программы. Блок «Starte jedes mal»:

Bild1.PNG

Является сокращением следующей конструкции:

Bild2.PNG

В блок «Starte jedes mal» категории «Motor» («Двигатель») можно ввести все условия из этой категории.

Указание: сегмент программы внутри блока «Starte jedes mal» должен быть максимально коротким и не должен содержать блокирующие вызовы или бесконечные циклы, чтобы эта часть программы выполнялась быстро.

Двигатель 

Иконка на блоках двигателей обозначает все двигатели, которые не являются двигателями с энкодером или серводвигателями.

Присвоить

При помощи блока setze Motorgeschwindigkeit auf [] … (присвоить скорости двигателя значение [] ...) можно задать определенное значение скорости двигателя (от 0 до 512). В выпадающем меню (маленький треугольник) можно выбрать направление вращения.

Вызвать

При помощи блока hole Motorgeschwindigkeit (получить скорость двигателя) можно вызвать скорость двигателя, чтобы обработать ее как значение.

Запросить

При помощи блоков läuft Motor (двигатель работает) и ist Motorgeschwindigkeit … (скорость двигателя ...) активность и скорость двигателя можно использовать как условие.

Остановить

При помощи блока stoppe Motor [] (остановить двигатель []) можно остановить нужный двигатель. При этом в блоке stoppe Motor [] предусмотрена возможность выбора одной из двух опций: немедленный останов или останов выбегом. Нужную опцию выбирают в выпадающем меню (маленький треугольник):                                                                    

        

Bild3.PNG                                                                              

Серводвигатель

image-1623746331741.42.25.png

Присвоить

При помощи блока setze Position auf … (присвоить положению значение ...) можно выбрать определенное положение серводвигателя (от 0 до 512). 0 и 512 — значения максимального отклонения справа и слева. Соответственно, если указать 256, то серводвигатель займет центральное положение. 

Вызвать

При помощи блока rufe Position ab (вызвать положение) можно вызвать положение серводвигателя, чтобы обработать его как значение.

Двигатель с энкодером

image-1623746341213.40.14.png

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

Присвоить

При помощи блока 

Bild6.PNG

 

можно выбрать определенное значение скорости двигателя (от 0 до 512). В выпадающем меню (маленький треугольник) можно выбрать направление вращения. Также можно ввести число шагов, которые должен пройти двигатель. В этом примере двигатель проходит 100 шагов, т. е. одну целую и одну третью оборота. Как видно из примера, этот блок содержит плюсик, при помощи которого можно синхронно управлять несколькими двигателями. Можно синхронизировать между собой либо двигатели главного устройства, либо двигатели добавочного устройства; перекрестная синхронизация, а именно между двигателями главного устройства с одной стороны и двигателями добавочного устройства с другой стороны, невозможна.

Указание: быстро следующие друг за другом вызовы функции синхронизации, например при выполнении цикла (см. пример), могут повлиять на синхронность или вообще воспрепятствовать ей.

Остановить

При помощи блока stoppe Motor … (остановить двигатель ...) двигатель останавливается. Если надо остановить несколько двигателей одновременно, щелчком по плюсику слева в блоке можно добавить другие двигатели (не более трех).

Bild7.PNG

Запросить

Блок hat Position erreicht (достиг положения) служит для того, чтобы использовать достижение положения как условие. Под положением здесь имеется в виду конечное положение двигателя с энкодером после прохождения всей длины шага.

Датчики

Датчики

Ввод данных

Блок «Starte jedes mal» («Запускать каждый раз»)

Блок «Starte jedes mal» позволяет запускать программу при выполнении какого-либо условия. То есть, он работает аналогично ветвлению, но выполняется не однократно, а каждый раз, когда выполняется условие, в течение всего прогона программы. Блок «Starte jedes mal»:

Bild1.PNG

Является сокращением следующей конструкции: