Страница 1 из 1

Помогите с GPIO raspberry pi3

Добавлено: Сб янв 21, 2017 6:44 pm
madbob
Здравствуйте! Есть 3-я Малина с установленным МД. Ардуино с W5100 и ESP c IoT уже прикрутил по примерам, благо их много. А вот пошаговых примеров использования GPIO самой малинки не нашел. Косвенных упоминаний много, но я весьма далек от программирования и воплотить все это без подробных примеров достаточно проблематично для меня. Обидно, что пропадает куча ресурсов в виде GPIO малины. На данный момент хотелось бы использовать GPIO для получения в MD статуса "охрана" или "наблюдение" от сигнализации. С "железом" проблем нет- при постановке на охрану сигналка обеспечит "1" или "0" на GPIO. А вот что с этим делать дальше, как этот статус передать в MD ? Можно, конечно, использовать ту же ESP или ардуино через USB (тоже освоил по примерам) в связке с MD, но как-то неспортивно... да и установлена малинка в одном шкафу с сигналкой. Еще хочу подключить к малинке BME280 по I2S и затянуть данные от него в MD. Ну и, как обычно, пощелкать релюшками с MD через GPIO самой малинки. Про WEBIoPi знаю, до того как узнал про MD, пользовался им, но до конца так и не разобрался. Подскажите пожалуйста, в какую сторону смотреть, лучше с подробными примерами. От возможностей MD дух захватывает, но реализовать без проф. знаний сложно, а очень хочется...

Re: Помогите с GPIO raspberry pi3

Добавлено: Сб янв 21, 2017 8:36 pm
ipz
https://geektimes.ru/post/257750/

Разбираться все равно придется. Например:
- последняя версия библиотеки BCM 51, а не 17 как в примере.
- В RPi3 (Jessie) доступ к GPIO через /dev/gpiomem, а не /dev/mem

Re: Помогите с GPIO raspberry pi3

Добавлено: Сб янв 21, 2017 9:07 pm
madbob
Спасибо. Это я видел. У меня сейчас работает BME280 с выводом на отдельную страничку актуальных данных и графиков по крону. Только не могу распарсить значения в веб-переменной в MD чтобы затянуть эти данные в MD, хотя в ардуине с шилдом по такому же принципу все работает как надо. Не понятен принцип передачи данных с GPIO в MD напрямую. Как узнать в MD "1" или "0" на пине GPIO ?

Re: Помогите с GPIO raspberry pi3

Добавлено: Вс янв 22, 2017 9:31 pm
DAP
Опрос GPIO можно выполнить с помощю цикла краткий смысл такой:

Штатно (у меня было штатно) в операционке есть команда (утилита) gpio для чтения/записи состояний выводов.
Берем пустой цикл пишем в нем что то вроде: "выполнить чтение пина такого-то в переменную" - профит
Позже сделаю видеомануал.

Пример:
Создадим объект GPIO_29 создадим свойство status.
Код добавляем в цикл:

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

$gpio=exec ( 'sudo gpio read 29');
sg('GPIO_29.status', $gpio); 
Профит

Re: Помогите с GPIO raspberry pi3

Добавлено: Вс янв 22, 2017 10:31 pm
madbob
Вот это ближе к делу! У меня, похоже, тоже штатными средствами читаются gpio. При вводе в консоли sudo gpio read 29 получаю 0, что соответствует действительности. Теперь осталось понять как сделать "Берем пустой цикл пишем в нем что то вроде: "выполнить чтение пина такого-то в переменную". Извините за ламерские вопросы, но со всем этим хозяйством знаком только 2 месяца, хотя электроникой (железками) занимаюсь давно. Жду видео (пожалуйста не бросайте :)

Re: Помогите с GPIO raspberry pi3

Добавлено: Вт янв 24, 2017 4:24 pm
Jurich
madbob писал(а): Извините за ламерские вопросы, но со всем этим хозяйством знаком только 2 месяца, хотя электроникой (железками) занимаюсь давно. Жду видео (пожалуйста не бросайте :)
Доброго всем дня!
Присоединяюсь к просьбе madbob. Я начал заниматься MD всего пару дней назад и пока только установил его на Raspberry. Но об использовании имеющихся ресурсов тоже задумывался.

Re: Помогите с GPIO raspberry pi3

Добавлено: Ср янв 25, 2017 8:42 pm
madbob
Разобрался сам. По совету ув. slgeo в теме ThisComputer.HomeStatus и подсмотрев в его CONNECT, сделал по образу и подобию. Теперь при постановке на охрану сигналка размыкает пин GPIO малины, подавая тем самым 1 на него. Далее cycle_gpio изменяет свойство NobodyHomeMode, при этом выполняется скрипт, который выключает ( или включает при снятии с охраны) реле, подключенные к ардуино с W5100. Теперь не придется по приезду на дачу бегать включать насосы, теплые полы и т.д. а при отъезде выключать. Но обещанное видео от DAP хотелось бы посмотреть, вдруг я чего перемудрил по незнанию...

Re: Помогите с GPIO raspberry pi3

Добавлено: Сб янв 28, 2017 12:33 am
DAP
madbob писал(а): Но обещанное видео от DAP хотелось бы посмотреть, вдруг я чего перемудрил по незнанию...
К сожалению человек ответственный за съемки ускакал в Ростов, как только вернется буду его трясти, ибо много неплохих решений родилось в процессе построения умной квартиры.

В целом мысль про цикл воспринята верно.

Re: Помогите с GPIO raspberry pi3

Добавлено: Сб июн 15, 2019 12:05 pm
udvnl
Доброго дня, всем.
Может кто подскажет, а ещё лучше пошагово объяснит, как лучше (легче и проще) сделать кнопку в MajorDoMo, как для человека, первого раз увидевшего систему (я на какое то время забросил УД). Кнопка подключена к JPIO, при её нажатии должна выполнятся команда такого типа:

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

GetURL("http://freeswitch:works@192.168.43.60:8080/webapi/originate?user/1001%201002%20XML%20default").
Небольшое пояснение, для чего и что будет делать.
Решил довести до конца свою давнишнюю задумку по созданию некоего универсального SIP устройства и включения его в УД Majordomo.
Имеем RPI 3B с установленным базовым образом и VoIP сервер. К кнопке подключена USB звуковая карта (одна из самых дешевых Gembird за 5 у.е.) Настроен звук и микрофон. Также на RPI установлен и настроен консольный SIP клиент с возможностью автоответа. Второй сипфон может быть установлен на телефоне, планшете, пк. Из консоли в MajorDoMo при отправке команды вызов идет вначале на RPI, которая подымает трубку и проигрывает звуковой файл, затем на телефон. При ответе на смартфоне на вызов, проключается голосовой тракт. При отбое консольный клиент опять становится в ожидании вызова. Мое виденье применения такого устройства: кнопка вызова, сип дверной звонок, интерком, устройство громкой связи (а-ля директор-секретарь) и т.д.
Если получится решение напишу небольшую заметку по пошаговому подключению и настройке, надеюсь доступную для понимания каждому.
Далее планирую осуществление вызова через сеть интернет на мобильный телефон. Попозже мможет побалуюсь с видеовызовами.