работа с GPIO raspberry

Если вы только начинаете осваивать систему MajorDoMo и чего-то не знаете или не можете понять, то задавайте свои вопросы в этой ветке.

Модератор: immortal

fandaymon
Сообщения: 1570
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 40 раз
Поблагодарили: 578 раз

Re: работа с GPIO raspberry

Сообщение fandaymon » Чт окт 17, 2019 12:21 pm

DiminatorDK писал(а):
Чт окт 17, 2019 12:03 pm
Спасибо! Это, включение нагрузки , а мне надо изменить статус объекта или запустить событие при срабатывании кнопки на gpio. И тут, если я правильно понял, нативного пути нет?
Это и есть запуск события - мы запускаем метод switch нашей лампы по нажатию кнопки. Точно так же мы можем запустить любой другой метод любого другого объекта или записать значение в нужное свойство нужного объекта
DiminatorDK
Сообщения: 104
Зарегистрирован: Сб фев 20, 2016 12:19 pm
Благодарил (а): 7 раз
Поблагодарили: 2 раза

Re: работа с GPIO raspberry

Сообщение DiminatorDK » Чт окт 17, 2019 1:16 pm

Понял, ошибка в моем описании, под кнопкой я имел ввиду хардварную кнопку, в смысле физическую. А вот нажатие на нее должно переключить программный статус контрола в MD. Т.е. я физически замкнул контакты малины и это отразилось в MD. Допустим выполнилось событие say "gpio 5".
fandaymon
Сообщения: 1570
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 40 раз
Поблагодарили: 578 раз

Re: работа с GPIO raspberry

Сообщение fandaymon » Чт окт 17, 2019 1:31 pm

DiminatorDK писал(а):
Чт окт 17, 2019 1:16 pm
Понял, ошибка в моем описании, под кнопкой я имел ввиду хардварную кнопку, в смысле физическую. А вот нажатие на нее должно переключить программный статус контрола в MD. Т.е. я физически замкнул контакты малины и это отразилось в MD. Допустим выполнилось событие say "gpio 5".
И я про физическую говорю
DiminatorDK
Сообщения: 104
Зарегистрирован: Сб фев 20, 2016 12:19 pm
Благодарил (а): 7 раз
Поблагодарили: 2 раза

Re: работа с GPIO raspberry

Сообщение DiminatorDK » Чт окт 17, 2019 2:01 pm

Трудности перевода, пропустил ваше сообщение viewtopic.php?f=24&t=6752#p109256
Но прочел следущее про включение gpio контролом.
Подскажите, какой метод предпочтительнее использовать? Склоняюсь к mqtt но еще не изучал. И еще вопрос, надо как-то малине первично настроить gpio что работает на вход а что на выход?
fandaymon
Сообщения: 1570
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 40 раз
Поблагодарили: 578 раз

Re: работа с GPIO raspberry

Сообщение fandaymon » Чт окт 17, 2019 2:37 pm

DiminatorDK писал(а):
Чт окт 17, 2019 2:01 pm
Трудности перевода, пропустил ваше сообщение viewtopic.php?f=24&t=6752#p109256
Но прочел следущее про включение gpio контролом.
Подскажите, какой метод предпочтительнее использовать? Склоняюсь к mqtt но еще не изучал. И еще вопрос, надо как-то малине первично настроить gpio что работает на вход а что на выход?
Через веб - проще, ничего настраивать не надо. Через mqtt оптимальнее по ресурсам, но надо будет поставить москитто - в некоторых образах на малинку он уже есть, в некоторых нету. И если реакцию кнопки забирать питоном, то нужно поставить pip install paho-mqtt
Какой пин работает на вход, а какой на выход настраивается примерно так же как в ардуино - в процессе работы. В питоне GPIO.setup(21,GPIO.IN), на баше - sudo gpio mode 21 in
За это сообщение автора fandaymon поблагодарил:
DiminatorDK (Пт окт 18, 2019 1:11 am)
Рейтинг: 1.16%
masterpro77
Сообщения: 43
Зарегистрирован: Сб ноя 16, 2019 12:38 am
Благодарил (а): 13 раз
Поблагодарили: 0

Re: работа с GPIO raspberry

Сообщение masterpro77 » Вт дек 17, 2019 4:52 pm

Здравствуйте. Чтоб не создавать новой темы спрошу здесь. Имеется малинка 4-й версии, МД заливал скриптом на образ "Raspbian Buster".
Форум читал ,ни чего не получается, из консоли все работает, через написанную програмку на python тоже отрабатывает. Управление в МД запускаю через метод. Если не сложно опешите подробно как из МД управлять gpio ?
fandaymon
Сообщения: 1570
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 40 раз
Поблагодарили: 578 раз

Re: работа с GPIO raspberry

Сообщение fandaymon » Вт дек 17, 2019 11:02 pm

masterpro77 писал(а):
Вт дек 17, 2019 4:52 pm
Здравствуйте. Чтоб не создавать новой темы спрошу здесь. Имеется малинка 4-й версии, МД заливал скриптом на образ "Raspbian Buster".
Форум читал ,ни чего не получается, из консоли все работает, через написанную програмку на python тоже отрабатывает. Управление в МД запускаю через метод. Если не сложно опешите подробно как из МД управлять gpio ?
Под управлять gpio имеется в виду какое-то реле, которое подключено к gpio?
В верхних сообщениях всё же написано.
Поскольку в последних версиях МД появилась поддержка питона, то можно попробовать прям в метод вписать код из программки на питоне
Ну или вызывать свою програмку exec('python путь до програмки/програмка.py')
masterpro77
Сообщения: 43
Зарегистрирован: Сб ноя 16, 2019 12:38 am
Благодарил (а): 13 раз
Поблагодарили: 0

Re: работа с GPIO raspberry

Сообщение masterpro77 » Вт дек 17, 2019 11:52 pm

Тестирую на светодиоде.
Пробовал по разным примерам с форума.
Код в метод вписывал не сохраняет, пишет ошибку.
Вызов программки через сценарий.

Код: Выделить всё

 if ($n == "Switch2") {
 if (getGlobal("Switch2.status")==1) {
       exec ("sudo python/home/pi/test8.py");  
    } else {
       exec ("sudo python/home/pi/test6.py");  
    }
Вопросик путь от корневой папки к программке как прописывается в малинке?
fandaymon
Сообщения: 1570
Зарегистрирован: Сб янв 13, 2018 5:00 pm
Благодарил (а): 40 раз
Поблагодарили: 578 раз

Re: работа с GPIO raspberry

Сообщение fandaymon » Ср дек 18, 2019 12:13 am

masterpro77 писал(а):
Вт дек 17, 2019 11:52 pm
Тестирую на светодиоде.
Пробовал по разным примерам с форума.
Код в метод вписывал не сохраняет, пишет ошибку.
Вызов программки через сценарий.

Код: Выделить всё

 if ($n == "Switch2") {
 if (getGlobal("Switch2.status")==1) {
       exec ("sudo python/home/pi/test8.py");  
    } else {
       exec ("sudo python/home/pi/test6.py");  
    }
Вопросик путь от корневой папки к программке как прописывается в малинке?

Код: Выделить всё

sudo python /home/pi/test8.py
Запускается питон, а название программы передаётся как аргумент, т.е. должен быть пробел.
За это сообщение автора fandaymon поблагодарил:
masterpro77 (Вс дек 22, 2019 9:11 am)
Рейтинг: 1.16%
masterpro77
Сообщения: 43
Зарегистрирован: Сб ноя 16, 2019 12:38 am
Благодарил (а): 13 раз
Поблагодарили: 0

Re: работа с GPIO raspberry

Сообщение masterpro77 » Ср дек 18, 2019 1:06 am

Не хочет гореть светодиод. Если не трудно напишите примерчик как должен в методе выглядеть.
Ответить