Raspberry 3 + Troyka Cap + библиотека gpioexp

Тема в разделе "Raspberry Pi", создана пользователем singen, 19 сен 2019.

  1. singen

    singen Нуб

    Приветствую. Пытаюсь запустить микросервопривод с помощью малинки + тройка-cap.
    Не вполне понимаю, какие значения нужно посылать на сигнальный пин сервопривода. Рандомные значения угла поворота в голом виде не работают. Нет ли у кого скетча? Или, может быть, есть специальная питонья библиотека для серво под распберри? Найти не могу.
     
  2. BAR__MEN

    BAR__MEN Вселенский Няш Администратор

  3. singen

    singen Нуб

    Спасибо.
     
  4. parovoZZ

    parovoZZ Гуру

  5. BAR__MEN

    BAR__MEN Вселенский Няш Администратор

    Нет, я питон не знаю
    Только по инструкции могу сделать
    Да и сайт не мой :)
     
    Igor68 нравится это.
  6. Igor68

    Igor68 Гуру

    И я не питонист так же:)
    По ходу все перешли на питон:(
    Крутые архитекоры нынче пошли. Им проект дома не надо, им проект города подавай. Чтоб значить дома расставлять вдоль улиц.
    Вот и спрашиваю: На кой ляд в железо лезть? Не проще ли купить готовое?!:D
    Шутка:)
     
  7. Igor68

    Igor68 Гуру

    Не спалите малину. Удачи!
     
  8. singen

    singen Нуб

    получилось, спасибо. вероятно, оберну в функцию, которая принимала бы всё-таки угол, и преобразовывала бы в микросекунды, так как сейчас не вполне удобно.
     
  9. singen

    singen Нуб

    Если кому интересно.
    Это делается гораздо проще с помощью pwm на gpio expander'е и соотвествующей библиотеке, есть на этом сайте в разделе вики.
     
  10. Shurik

    Shurik Нерд

    Привет всем! Не могу найти в "соответствующей" библиотеке функции для настройки скважности. Примеры очень скудные. Подскажите, как настроить кроме частоты PWM еще и скважность, чтобы управлять вращением вала серво?
     
  11. singen

    singen Нуб

    в этой библиотеке есть функция analogWrite([здесь указываем пин], [а здесь коэффициент заполнения в виде числа от нуля до единицы])
    например, чтобы дать такую картинку при частоте 250 Гц, нужен такой примерно код:
    Код (Python):
    import gpioexp
    import time
    import signal
    # создаём объект для работы с расширителем портов
    exp = gpioexp.gpioexp()
    # обеспечиваем удобный выход из бесконечного цикла
    def endProcess(signalnum = None, handler = None):
        exit(0)
    signal.signal(signal.SIGTERM, endProcess)
    signal.signal(signal.SIGINT, endProcess)
    # устанавливаем частоту
    exp.pwmFreq(250)
    while True:
        exp.analogWrite(1,0.6) # регулируем скважность, точнее, дьюти сайкл. 0.6 = 60%
     

    Вложения:

  12. Shurik

    Shurik Нерд

    Добрый день!
    Спасибо!
    Правда не понял, где это в WiKi... :)
     
  13. singen

    singen Нуб

    В вики есть ссылка на гитхаб.
    Идёшь по ссылке, открывашь код, смотришь, какие есть функции)
    Не то чтобы это был лучший способ документирования, но что делать.
     
  14. Shurik

    Shurik Нерд

    Ссылку я видел :)
    TroykaCapPython/gpioexp.py
    и установил библиотеку, но то, что analogWrite можно использовать для установки dc на пине PWM - это не тривиально.
    Еще раз спасибо!
     
  15. Shurik

    Shurik Нерд

    Если кому-то будет интересно. Оказалось, что в TroykaCap завышены характеристики ШИМ. Разрядность ШИМ заявлена 16 бит, реально обрезается до 8-ми бит. Т.е. вращать серво можно только с шагом в 7 градусов, :( точнее не получится. Эта игрушка, видимо, предназначалась для функционала АЦП. Но пока не проверял, какая точность измерений реально достижима на этом расширителе. Попросил поддержку исправить информацию в магазине.
     
    singen нравится это.
  16. singen

    singen Нуб

    Интересно, проверю на днях.
     
  17. Ariadna-on-Line

    Ariadna-on-Line Гуру

    Не забывайте - серве нужен дьютицикл только 2,5 % - 12,5%. Ширше она не прожуёт.
    При 8-битном ШИМе - это 6 - 32. Дискретность положений будет - 180 / (32 - 6 -1) = 7,2 град.
     

    Вложения:

    • Servo.JPG
      Servo.JPG
      Размер файла:
      85 КБ
      Просмотров:
      50
    Последнее редактирование: 23 окт 2019