Объявление

Свернуть
Пока нет объявлений.

DO6 Шаговый двигатель

Свернуть
X
 
  • Фильтр
  • Время
  • Показать
Очистить всё
новые сообщения

  • DO6 Шаговый двигатель

    Здравствуйте, пытаюсь запустить шаговый двигатель 17hs19-2004s1 через драйвер а4988 и выход DO6 (2 канал шагового двигателя). Проверяю что показывают выходы коммутации (земля на общий X2-4, 5В через X2-2) с помощью осциллографа, какая-то муть - только шумы. Вот код (пример не запускается из-за большого количества ошибок). ReadSteps2 на выходе равно 1, CyclePWM все ставлю равными 50 (если правильно понял, то это проценты). На Ардуино все работает, там просто подавать 5В из пина. Если соединять через коммутацию агавы, то двигатель начинает дергаться даже если OnSteps2 = False. Проверял от 3 до 160 Hz
    Последний раз редактировалось Илья Белянов; 21-04-2021, 07:39 AM.

  • #2
    Алгоритмы из скетчей от ардуино нельзя 1:1 применить на ПЛК-40. Н ардуино вы выставляете ENABLE, DIR и дергаете STEP с нужной частотой. Субмодуль DO6 более интеллектуален, он сам умеет "дергать" STEP с задаваемой пользователем частотой.

    Комментарий


    • Илья Белянов
      Илья Белянов комментирует:
      Редактировать комментарий
      Я не копировал код для Ардуино в ПЛК-40. Я взял из примера что надо надо сделать OnSteps2 = true, затем выбрать количество шагов (nSteps = 1), и поставить частоту импульса (fPusle2 = 3 [Гц]). Так же почему то требуется при вызове функционального блока выбрать и ширину импульса (ставил 50). Но это не работает

  • #3
    Сообщение от Илья Белянов Посмотреть сообщение
    Здравствуйте, пытаюсь запустить шаговый двигатель 17hs19-2004s1 через драйвер а4988 и выход DO6 (2 канал шагового двигателя). Проверяю что показывают выходы коммутации (земля на общий X2-4, 5В через X2-2) с помощью осциллографа, какая-то муть - только шумы. Вот код (пример не запускается из-за большого количества ошибок). ReadSteps2 на выходе равно 1, CyclePWM все ставлю равными 50 (если правильно понял, то это проценты). На Ардуино все работает, там просто подавать 5В из пина. Если соединять через коммутацию агавы, то двигатель начинает дергаться даже если OnSteps2 = False. Проверял от 3 до 160 Hz
    В SDK есть пример по шаговому двигателю, по синусоиде разгоняет двигатель, затем останавливает, меняет направление и снова разгоняет итд.
    Codesys_AgavaSDK_20210210_SP10\Примеры\AgavaModule s\ПЛК-40\Internal\ST\StepDrive_IntIoModuleSync_DO6.proje ct
    пример во вложении.
    Вложения

    Комментарий


    • Илья Белянов
      Илья Белянов комментирует:
      Редактировать комментарий
      Я стараюсь сделать как в примере (запустить не могу из-за другого таргета). Все равно не работает. Пытался менять PWM на 0, но почему то они не меняются (как были 50, так и остались).

      // Шаговый двигатель
      DOOutput.Timeout := 10;
      DOOutput(slot := SLOT_B, OnSteps2 := motor_sample.onSt ,nSteps2 := 1, CyclePWM1 := PWM1, CyclePWM2 := PWM2); // Слот 'B' канал - 5: Шаговый двигатель
      IF(motor_sample.onSt) THEN
      DOOutput.fPulse2 := motor_sample.Hz;
      END_IF
      Последний раз редактировалось Илья Белянов; 11-05-2021, 11:34 AM.

  • #4
    Какой у Вас таргет? Что мешает сделать обновление таргета до актуальной версии, через команду обновить устройство?

    Комментарий

    Обработка...
    X