# Двигун

#### Блок "Starte jedes mal" ("Запускати щоразу")

Блок **"Starte jedes mal"** дозволяє запускати програму при виконанні будь-якої умови. Тобто він працює аналогічно розгалуженню, але виконується не одноразово, а щоразу, коли виконується умова, протягом усього прогону програми. **Блок "Starte jedes mal"**:

[![image-1623672133513.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623672133513.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623672133513.png)

Є скороченням наступної конструкції:

[![image-1638372436179.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-12/scaled-1680-/image-1638372436179.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-12/image-1638372436179.png)

В блок **"Starte jedes mal"** категорії "Motor" ("Двигун") можна ввести всі умови цієї категорії.

**Вказівка: сегмент програми всередині блоку "Starte jedes mal" повинен бути максимально коротким і не повинен містити блокуючі виклики або нескінченні цикли, щоб ця частина програми виконувалася швидко.**

#### Двигун

Іконка на блоках двигунів означає всі двигуни, які не є двигунами з енкодером або серводвигунами.

##### Присвоїти

За допомогою блоку **setze Motorgeschwindigkeit auf \[\] … (привласнити швидкості двигуна значення \[\] ...)** можна задати певне значення швидкості двигуна (від 0 до 512). У випадаючому меню (маленький трикутник) можна вибрати напрямок обертання.

##### Викликати

За допомогою блоку **hole Motorgeschwindigkeit (отримати швидкість двигуна)** можна викликати швидкість двигуна, щоб обробити її як значення.

##### Запитати

За допомогою блоків **läuft Motor (двигун працює)** та **ist Motorgeschwindigkeit … (швидкість двигуна…)** активність та швидкість двигуна можна використовувати як умову.

##### Зупинити

За допомогою блоку **stoppe Motor \[\] (зупинити двигун \[\])** можна зупинити потрібний двигун. При цьому в блоці **stoppe Motor \[\]** передбачена можливість вибору однієї з двох опцій: негайна зупинка або зупинка вибігом. Потрібну опцію вибирають у випадаючому меню (маленький трикутник):

[![image-1623613980654.51.51.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623613980654-51-51.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623613980654-51-51.png)

#### Серводвигун

[![image-1623746331741.42.25.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623746331741-42-25.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623746331741-42-25.png)

##### Присвоїти

За допомогою блоку **setze Position auf … (привласнити положенню значення)** можна вибрати певне положення серводвигуна (від 0 до 512). 0 і 512 - значення максимального відхилення праворуч і ліворуч. Відповідно, якщо вказати 256, то серводвигун займе центральне положення.

##### Викликати

За допомогою блоку **rufe Position ab** **(викликати положення)** можна викликати положення серводвигуна, щоб обробити його як значення.

#### Двигун з енкодером

[![image-1623746341213.40.14.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623746341213-40-14.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623746341213-40-14.png)

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

##### Присвоїти

За допомогою блоку

[![image-1623517764162.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623517764162.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623517764162.png)

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

**Вказівка: швидкі виклики функції синхронізації, що йдуть слідом один за одним, наприклад при виконанні циклу (див. приклад), можуть вплинути на синхронність або взагалі перешкодити їй.**

[![image-1638196438212.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-11/scaled-1680-/image-1638196438212.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-11/image-1638196438212.png)

##### Зупинити

За допомогою блоку **stoppe Motor… (зупинити двигун…)** двигун зупиняється. Якщо треба зупинити кілька двигунів одночасно, натисканням по плюсику ліворуч у блоці можна додати інші двигуни (не більше трьох).

[![image-1623517630278.05.46.png](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/scaled-1680-/image-1623517630278-05-46.png)](https://docs.fischertechnik-cloud.com/uploads/images/gallery/2021-06/image-1623517630278-05-46.png)

##### Запитати

Блок **hat Position erreicht (досягнув положення)** служить для того, щоб використовувати досягнення положення як умову. Під положенням тут мається на увазі кінцеве положення двигуна з енкодером після проходження всієї довжини кроку.