Skip to main content

Двигатель

Блок «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 (достиг положения) служит для того, чтобы использовать достижение положения как условие. Под положением здесь имеется в виду конечное положение двигателя с энкодером после прохождения всей длины шага.