Начать новую тему 
Ответить на тему 
Сообщение
СообщениеДобавлено: 22.10.16 23:37
Заголовок сообщения: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Вступление (занятное слово :) )
Привет всем!
2 года мечтаю создать сие произведение, и вот появилось время (и немного денег) для начала проекта. Предупреждаю, что будет долгострой, и фото не очень качественные.
ГроуТумбочка есть, но из автоматики только вкл/откл света на таймере. Удалось только один урожай вырастить. И вскоре стало понятно, что не стоит испытывать судьбу, поставив тумбочку практически у всех на глазах. Пришлось её спрятать в труднодоступное место, и выращивание стало невозможным.
Шли годы, теоретически создавались проекты, подбирались решения, выработались следующие (банальные) требования:
- обязательно должна быть фото (видео) камера;
- автоматический полив и освещение;
- поддержание правильной температуры;
- удалённое управление;
- легкость модернизации;
Короче, чтобы подходить к тумбочке только в крайнем случае. Хорошо, что я программист :) . До весны надо успеть всё сделать! Продолжение следует.


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 23.10.16 23:04
Заголовок сообщения: Основа автоматики
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Сначала думал, что будет всё на микроконтроллерах PIC, потом на Arduino, но наличие камеры вынудило выбрать Orange PI One – одноплатный мини-компьютер.
306701Таких «мозгов» хватит не на один гроусарай. Если вдруг разъёма GPIO (40 pin headers) не хватит на все устройства, тогда можно расширяться с помощью микроконтроллеров.
Серьёзным недостатком считаю наличие только одного порта USB 2.0 и отсутствие часов независимых от питания мини-компьютера. Для USB существуют разветвители, а часы можно подключить отдельным модулем к GPIO.


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 24.10.16 18:16
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
306977
Стрелка указывает на: зависимость от / подчиняется этому / более важный узел.
Особенности и основные принципы:
- связь тумбокса с внешним миром беспроводная, скорее всего BlueTooth (возможно и со смартфона можно будет управлять тумбоксом);
- OrangePI управляет т.н. «модулями» (датчики, реле, микроконтроллеры (полив, вентиляция, свет) и т.п.), которых может быть много;
- блок питания от компьютера (ATX), мощный и шумный, для питания всех модулей, кроме OrangePI;
- бесшумный блок питания эксклюзивно для Orange PI, чтобы в режиме «молчания» мини-компьютер мог абсолютно бесшумно работать, отключив при этом блок питания ATX и (как следствие) все модули;
-шина питания 4 провода: -, +3.3, +5, +12 вольт (это всё из БП ATX); Нужна для питания модулей.
-шина данных 6 проводов: SPI (4 провода) + UART (2 провода) (это всё из GPIO Orange PI); Нужна для управления модулями.
-если модуль работает только на приём вкл/откл, то он в шине данных следит только за контактом SS из протокола SPI;
-если модуль работает только на передачу вкл/откл, то в шине данных контакт SS подключается к плюсу (вкл) или к минусу (откл);
-если модуль передаёт и/или принимает информацию, то он может использовать протокол SPI или UART (других не предусматривается); «плюс» на контакте SS указывает на возможность обмена данными;
- Orange PI, используя шину данных, «общается» со всеми модулями по очереди, но быстро;
-предполагалась ещё шина аварии (HALT), которая при возникновении «этой самой», напрочь всё отрубала, но наверное это будет лишним;


Последний раз редактировалось аКустик 27.10.16 22:33, всего редактировалось 1 раз.

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 24.10.16 18:58
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 23.12.2012
Сообщения: 51
Жму руку и жедаю удачи )
В настоящее всемя целая куча контролеров для автоматизации.
я тоже автоматизацию делал сейчас переделоваю у меня arduino + ESP8266

_________________
Мой репорт LED 2*50W [45*45*70]


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 27.10.16 23:10
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
автобонг [24.10.16 18:58] писал(а):
Жму руку и жедаю удачи )
В настоящее всемя целая куча контролеров для автоматизации.
я тоже автоматизацию делал сейчас переделоваю у меня arduino + ESP8266

Спасибо! :friend: ESP8266 мне понравился. Когда-то тоже думал о Wi-Fi связи, но выбрал BlueTooth (USB-шные модули) потому, что они уже у меня есть - давно валяются без дела.

Режим "молчания".
На дверь в комнату будет стоять датчик открытия - так тумбокс будет знать что кто-то вошёл.
Когда дверь несанкционировано откроется, тумбокс будет переходить в режи "молчания":
-выключится БП (блок питания) ATX, и с ним все модули: вентиляторы, дачтки и пр.;
-OrangePI останется включённым, питаясь от бесшумного БП;
-OrangePI будет ожидать, пока дверь опять не закроется, и не пройдёт какое-то время, допустим 5 минут;
-когда дверь закрыта более 5-ти минут, OrangePI опять включит БП ATX и вернётся в рабочий режим;

Замечен возможный изъян: пока OrangePI будет в режиме "молчания", датчики не будут работать.
А если датчик открытия двери не будет работать, OrangePI перестанет "чувствовать" дверь и не выйдет из режима "молчания".
Значит этот датчик будет питаться от бесшумного БП как и OrangePI. А если таких датчиков будет много? Придумывать шину специального питания для датчиков? :shock: Будем надеяться что нет :)


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 29.10.16 21:31
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Блок питания ATX
В БП есть самый широкий разъём на 20 или 24 контакта, там все необходимые напряжения и контакт включения, его и будем использовать. Схема разьёма из Википедии.
308100
Электронные детали я покупаю на «Космодроме». Оказывается, там есть такие разъёмы под названием Mini Fit шаг 4,2мм – купил 24-х контактный Г-образный для платы.
Когда БП только включить в розетку, он не «заведётся», но будет чрез провод «+5 VSB» подавать 5 вольт и 2 ампера (судя по спецификации). Этого бы хватило на бесшумное питание OrangePI. Но на моём БП написано максимум 0,2А (в 10 раз меньше) для +5VSB, потому придётся использовать отдельный БП для бесшумного режима. Но в данном случае я буду использовать только один БП – ATX.
Чтобы «завести» БП ATX, нужно замкнуть зелёный провод “Power On” с любым из чёрных «земляных». Кулер в БП закрутиться, и будут поступать все напряжения. 5В для OrangePI берём из любых проводов цвета красного (+, не путать с оранжевым) и чёрного (-). «Заводить» БП ATX без нагрузки строго не рекомендуется!
Получился такой переходник: ATX – 5В. Разъём для OrangePI: круглый 4/1.7мм (обычный 12-ти вольтовый не подойдёт).
308098


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 30.10.16 10:01
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One

Регистрация: 15.04.2006
Сообщения: 2636
аКустик, Прикольно всякие етакие вещи придумывать :thumbs:
Но по факту, вся это система будет постоянно ломаться, глючить и ипать мозг. Каждая деталь, которая может сломаться, подведёт в неудачный момент, придётся постоянно её обслуживать.. Возможно, есть смысл обдумать другие варианты.


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 01.11.16 18:42
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Дымок [30.10.16 10:01] писал(а):
аКустик, Прикольно всякие етакие вещи придумывать :thumbs:
Но по факту, вся это система будет постоянно ломаться, глючить и ипать мозг. Каждая деталь, которая может сломаться, подведёт в неудачный момент, придётся постоянно её обслуживать.. Возможно, есть смысл обдумать другие варианты.

Ну… будет или не будет ломаться – это уже и теория вероятности. Начну с малого, а там видно будет. Альтернатива... уже поздно отступать.

Установка ОСи.
Выбрал операционную систему (ОС) Armbian (Debian). Андроид ставить не захотел, т.к. он позиционируется как «клиент», а нужен именно «сервер».
OrangePI One использует вместо винчестера карту памяти формата microSD (такие подходят к телефонам), потому потребуется данная флешка и кардридер для подключение флешки к обычному ПК для записи туда образа ОС.
1. Скачал заархивированый образ ОС «Armbian_5.20_Orangepione_Debian_jessie_3.4.112.7z» (298 МБ) из этой страницы.
311143

2. Распаковал с помощью архиватора (7-zip) «Armbian_5.20_Orangepione_Debian_jessie_3.4.112.img» (1,4 ГБ).
311144

3. Подключил кардридер и вставил туда флешку (microSD HC, Apacer 4GB, класс 4).
4. С помощью программы win32diskimager открыл файл (образ) «Armbian_5.20_Orangepione_Debian_jessie_3.4.112.img» и записал его на флешку.
311310

5. Вытянул флешку из кардридера и всунул в OrangePI.

Оказывается с OrangePI можно работать без монитора (мыши и клавиатуры)! С помощью соединения UART/TTL (3 провода) можно получить доступ к командной строке Armbian’а, чего вполне достаточно для настройки GPIO, и BlueTooth и всего остального.
ЗЫ: Стандартный образ из оф. сайта «Debian_jessie_mini.img», как выяснилось, не поддерживает блютуз вообще. Потому переделал этот ответ. И монитор HDMI не показывал.


Последний раз редактировалось аКустик 10.11.16 15:36, всего редактировалось 1 раз.

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 09.11.16 23:35
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 13.11.2009
Сообщения: 159
Очень интероесно! Твои наработки будут очень полезны многим!! :friend: Я сам решил дальше переходить на малину, но буквально пару дней назад увидел orange pi от китайских друзей и теперь не осталось и сомнений.

_________________
И, пожалуйста, помните: мы - не юристы, правила - не УК, наказания раздают не святые. :facepalm:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 10.11.16 15:58
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Ёрш [09.11.16 23:35] писал(а):
Очень интероесно! Твои наработки будут очень полезны многим!! :friend: Я сам решил дальше переходить на малину, но буквально пару дней назад увидел orange pi от китайских друзей и теперь не осталось и сомнений.

Захотелось расписать, что бы всё в одном месте было более менее :sun:. Интернет-инструкции от малины почти всегда подходят к Оранжу. Тот-же самый Linux курить :smoke:

Подключение UART/TTL + PuTTY.
Если правильно установить ОС Armbian на «оранжат», то при включении мини-пк зелёная лампочка на плате должна сначала мигать, а потом гореть не мигая.
(На этот раз) я даже и не пробовал подключать монитор через HDMI. А если бы и подключил, тогда нужна была бы USB-клавиатура, которой у меня нет. HDMI-кабель + USB-клавиатура новые на сегодняшний день это 300-400грн (800руб.)!
Я буду использовать более дешёвый способ – через преобразователь интерфейсов PL2303HX-USB-TTL-ADAPTER за 30грн (70руб.)
311311311312

Если далее работать с микроконтроллерами, то данный аппарат не раз пригодится. Общая схема подключения следующая.
311313

Начнём с UART-а. UART – это три контакта: RX(приём), TX(передача) и GND(земля, минус, 0). Эти контакты видны на фото адаптера. На OrangePI тоже есть специальный UART под сетевым разъёмом. Если внимательно смотреть, можно даже увидеть подписи: TX, RX, GND.
311314

Адаптер с «оранжатом» соединяем проводками по следующей схеме:
311315

То что один передаёт (TX) – другой принимает (RX), думаю понятно. Такие проводки с разъёмчиками можно готовые приобрести в интернете, я покупал по запчастям и паял.
C USB ничего сложного нет, только рекомендую для удобства приобрести провод-удилиннитель.
Для USB-адаптера нужен драйвер под ОС персонального компьютера, у меня Windows7 x64. Скачатьдрайвер можно отсюда
Распаковываем… запускаем DriverInstaller.exe… и после установки перезагружаемся на всякий случай. Подключаем адаптер, Windows находит устройство и в «Диспетчере устройств» должен появится виртуальный COM-порт “Prolific USB-to-Serial Comm Port”.
311316

Запоминаем номер (название) порта, у меня «COM9». Если адаптер втыкать в разные USB разъёмы компьютера, то номер порта тоже бедет менятся.
PuTTY – маленькая, старенькая, бесплатненькая, но очень полезненькая программка, находим в интернете.
311317

Запускаем, настраиваем как нарисовано ниже, но вводим название своего порта. Можно сохранять настройки подключения (Sessions), а потом включать просто включать двойным кликом по названию.
311318

Нажимаем “Open” и увидим чёрное окно, но если в этот момент включить Оранж, то побегут буковки – значит ОС грузиться, всё ОК.
И на адаптере замигают огоньки, сигнализирующие о передаче денных. Далее на картинках у меня COM8, не обращайте внимания :elk:
311319312925

После слова «login:» можно ввести логин “root” и нажать кнопку Enter. Потом после «password:» пароль «1234» (набирается невидимо) и нажать кнопку Enter.
Теперь внимание! При первом входе в ОС будет предложено изменить пароль на свой, например «orangepi».
Т.е. далее ещё раз придётся ввести старый пароль «1234», потом новый пароль «orangepi», и ещё раз новый пароль «orangepi». Теперь вы можете заходить под «root» и паролем «orangepi» каждый раз.
На этом этапе всё должно было закончиться, но хитрые линуксоиды решили оторваться на новичках :sucks:. Далее предлагается создать нового пользователя, нужно ввести логин нового пользователя, например "opi". Потом опять вводим два раза пароль к "opi", например тот-же "orangepi". После этого... :facepalm: предлагается ввести имя, фамилию, телефон, наверное что-бы в случай чего полиция знала как найти законного владельца гроубокса :mrgreen: . Настоятельно рекомендуется оставаться анонимом и не вводить далее достоверных данных. После запроса "Is the information correct?" ответить буквой "y" (игрик, уай, вай).
И далее... :( предлагается изменить разрешение дисплея. В сессии через UART, эти изменения не принесут ничего хорошего - отвечаем буквой "n".
Всё! :lol: Теперь вы можете заходить под «root» и паролем «orangepi» каждый раз беспрепятственно.
Итого у нас получилось два пользователя:
root - пользователь с неограниченными правами, всё настраивать (чем мы собственно здесь и занимаемся) лучше через него.
opi - пользователь с ограниченными правами.
312926312927312928312931312932311320

Оранж готов к дальнейшим настройкам.
Культурно выключить Оранж:
Код:
shutdown -h now


Последний раз редактировалось аКустик 19.11.16 11:59, всего редактировалось 2 раз(а).

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 15.11.16 23:39
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Краткое вступление в UNIX(Linux(Debian(Armbian)))… совсем кратенькое
Пути файлов (и папок) в отличии от Windows разделяются не «\», а «/».
Файловая система начинается не с «Моего компьютера», а с «/».
В командной строке вводите команду, команду с параметрами, или систему команд. Потом нажимаете Enter. После этого следует ответ – результат выполнения команды. Если ответа нет, это значит лишь то, что команда выполнена правильно.
Все устройства отображаются в папке «/dev». Если устройство физически есть, а в папке dev – нет, скорее всего, Linux не подобрал драйвер к устройству. Все драйверы входят в состав ядра ОС. Чтобы добавить поддержку нового драйвера, нужно:
1. Скачать исходники ядра Linux.
2. Разархивировать.
3. Сконфигурировать!!!
4. Построить.
5. Установить вместо старого.
6.Перезагрузить компьютер.
Потому лучше ставить на Оранж готовые образы, где есть поддержка всех нужных устройств.
Linux имеет широкие возможности для работы со всевозможными сетями: LAN, WAN, PAN, SRAN, PPP, PPPoE, VPN и многое другое. Шучу, SRAN – нет такого :lol: . О протоколе TCP/IPv4 обязательно нужно иметь хоть какое-то представление. По ходу репорта постараюсь объяснить.

Системный блок
Оранж и максимум остальной электроники хочу поместить в уличную коробку для счётчика электричества, которая защищена от воды и пыли (досталась по дешевке с разбитым стеклом). Размеры 30x27x10см.
312946
Это и будет моим системным блоком, домиком для Оранжа. Коробка будет где-то снаружи тумбочки, а точнее впритык - провод к видеокамере очень короткий. Как с теплоотводом будут дела, даже и не знаю. На заднюю крышку прикрепил стойки – Оранж стал на ноги. Долго думал, куда его поудобнее поставить, поставил почти в центре, разъёмом USB повернул к держателю проводов в коробке. Вероятно для Блютуза понадобится USB удлинитель. В системном блоке куча места! Вот как выгладит UART-сессия
312949312950312951


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 17.11.16 19:18
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Настройка проводной сети Ethrnet
Некоторые называют её LAN.
Зачем нужна сеть? Нужен интернет для обновления Armbian’а - т.е. всех установленных программ.
Подключаем к OrangePI сетевой шнур с интернетом (Ethrenet).
313478
Через UART как обычно входим под суперпользователем: root/orangepi.
Проверяем интернет:
Код:
ping ya.ru

ping: unknown host ya.ru
Это значит, что нет интернета, если другое – значит есть. Если есть, можно пропустить и перейти к пункту «SSH». Узнаём информацию о сетевых устройствах:
Код:
ifconfig

313481
eth0 – это наша сетевая карта, inet – настроен адрес IPv4, inet6 – это настроен адрес IPv6 (новая адресация).
У меня интернет со старой адресацией IPv4 (inet).
Как видим, адреса для интернета автоматически настроились, но самого интернета почему-то нет. Попробуем изменить файл конфигурации:
Код:
nano /etc/network/interfaces

313487
Там где зелёный курсор есть строчка. Она означает получить IPv4 адрес из сервера DHCP – всё правильно. Но почему-то не наблюдаю строчки «auto eth0», попробуем добавить.
313489
Для выхода и сохранения нажимаем Ctrl+X
313490
Хотим ли мы сохраниться перед выходом? Нажимаем «y»
313491
Показывает путь к файлу – нажимаем Enter. Мы вышли опять в командную строку.
Перезагружаем Оранж:
Код:
reboot

Опять заходим под root. Проверяем интернет
Код:
 ping ya.ru

Вместо ya.ru можно ввести любой работающий сайт, например ukr.net.
Видим другой ответ от команды – ура, интернет появился. Нажимаем Ctrl+C чтобы прервать команду.
313492


SSH
SSH – это служба с помощью которой можно получить доступ к командной строке через сетевое подключение. В нашей ОС данная служба уже настроена по умолчанию. Это означает что вместо UART-подключения мы можем получить доступ к командной строке через сеть (сетевой провод). Это может быть удобно, если Оранж и ваш ПК подключены к одной сети. Чтобы совершить данное продключение нужен IPv4 адрес Оранжа.
Если мы посмотрим на результат работы ifconfig то увидим строку в секции eth0:
Код:
inet addr:192.168.137.75  Bcast:192.168.137.255  Mask:255.255.255.0

192.168.137.75 – это и есть IPv4 адрес Оранжа в сети, у Вас может быть другим.
255.255.255.0 – это маска подсети. Она означает что подсеть в которую входит Оранж ограничена адресами с 192.168.137.1 по 192.168.137.254. Т.е. Оранж и ваш ПК должны находиться в одной подсети – иметь IP-адреса в этом диапазоне (но неодинаковые), чтобы «видеть» друг друга.
Итак, включает тотже PuTTY и настраиваем подключение, но немного по-другому:
313503
Если Оранж доступен по сети, мы при первом подключении увидим следующее
313505
PuTTY спрашивает разрешения принять защищённое (зашифрованное) соединение. Нажимаем «Да».
313507
Входим в сессию как обычно под root.
313509
Работа в SSH имеет отличия от UART.
1. Если закрыть окно PuTTY или прервать соединение другим способом, сессия закроется, и все работающие в сессии программы тоже выключаться.
2. Можно открыть несколько окон через SSH. В каждом нужно будет входить под root.
3. Доступ к SSH возможен только после полной загрузки Оранжа (не сразу после включения).
4. В UART-сессии если закрыть окно PuTTY, сессия не прервётся. Можно заново подключится к COM9 и продолжать с прежнего места (хотя и будет пустой экран в начале), вводить команды и получать ответы.


Последний раз редактировалось аКустик 18.11.16 20:30, всего редактировалось 1 раз.

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 18.11.16 17:07
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 07.10.2011
Сообщения: 137
Оч круто, буду следить!
А че не взял себе raspberi pi 3? тами выходов usb поболее, да и ESP8266 с BlueTooth не понадобился бы
жалко что там тоже нету Rtc, заказал себе DS3231 на супер конденсаторе, а то на ардуине у меня DS1302 за день убегали минут на 5, не очень приятно

_________________
:spy:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 18.11.16 20:28
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
happygnom [18.11.16 17:07] писал(а):
Оч круто, буду следить!
А че не взял себе raspberi pi 3? тами выходов usb поболее, да и ESP8266 с BlueTooth не понадобился бы
жалко что там тоже нету Rtc, заказал себе DS3231 на супер конденсаторе, а то на ардуине у меня DS1302 за день убегали минут на 5, не очень приятно

Оранж взял просто потому что хотел сэкономить. Часы взял DS1307 на... батарейке, ещё не пробовал :pray: . Блютуз USB-шный, два шт.: на Оранже и на ПК. Дальше об этом будет.

Статический IP адрес (не обязательно).
Через DHCP Оранж автоматически получает IP адрес при каждом подключении к сети. Но адрес может изменятся. И для SSH сессии нужен будет именно новый адрес. А текущий адрес можно получить опять вошов через UART-сессию и набрав ifconfig.
Это будет причинять некоторые неудобства, потому можно сделать IP-адрес неизменяемым, статическим.
1. Запоминаем текущие адреса, которые были получены автоматически (динамически), из ifconfig запоминаем строку:
Код:
inet addr:192.168.137.75  Bcast:192.168.137.255  Mask:255.255.255.0

Но ещё нам нужен адрес шлюза (gateway), иначе мы не сможем выходить в интернет, выполним:
Код:
ip ro

313804
Видим, что адрес шлюза: 192.168.137.1.
2. Изменяем настройки сети:
Код:
nano /etc/network/interfaces

313807
# - означает что строчка не будет учитываться, отменяем автонастройку адреса:
Код:
#iface eth0 inet dhcp

Дописываем ручную настройку:
Код:
iface eth0 inet static – адрес неменяющийся
address 192.168.137.75 – адрес Оранжа в сети
netmask 255.255.255.0 – маска подсети
gateway 192.168.137.1 – адрес шлюза
dns-nameservers 192.168.137.1 – адрес DNS сервера, коим как правило является шлюз.

3. Перезагружаем Оранж: reboot.
4. Входим под root
5. Проверяем интернет: ping ya.ru.
Если интернет есть, значит Вы всё сделали правильно. Теперь адрес в сети меняться не будет.


Обновление Armbian’a
Думаю, лучше сразу обновить ОСь перед дальнейшими действиями, это уменьшит вероятность появления глюков.
Посмотреть версию Armbian: lsb_release –a
313809
Версия 8.5. Подготавливаем обновления:
Код:
apt-get update

313812
Дожидаемся завершения команды, скачиваний с интернета. Если присмотреться увидите время до завершения (на скриншоте нет). Если какие-либо ошибки происходят (напр. Connection failed), можно перезапускать команду, пока всё не пройдёт гладко.
Обновляем:
Код:
apt-get upgrade

313815
Команде нужно скачать 51 МБ информации, нажимаем «y», и ждём завершения.
А теперь посмотрим версию ещё раз: lsb_release –a
313816
Была 8.5, а теперь 8.6 – обновились на целых 0.1 версии :D .Перезагружаем на всякий случай:
Код:
reboot


Обнаружение BlueTooth
Вставляем Блютуз-адаптер в USB-разъём Оранжа.
Прверяем подключения блютуз-адаптера к USB:
Код:
lsusb

313817
Видим строку с «HCI mode». Это и есть наш адаптер как USB устройство. Теперь проверяем существование адаптера как Блютуз устройство:
Код:
hciconfig

313818
Устройство есть: «hci0».


Создание PAN
PAN (Private Area Network) – это будет сеть между Оранжом и ПК через блютуз. Для создания такой сети нужно вводить определённую последовательность команд в командной строке, причём каждый раз после включения Оранжа. Потому эти команды нужно поместим в файл, а файл поместим в автозагрузку Armbian’а.
Итак, создадим для начала собственную папку для наших скриптов и программ под названием «tumbox». Перейдём в неё. Создадим текстовый файл «autostart.sh»
Код:
mkdir /tumbox
cd /tumbox
nano autostart.sh

313821
Вводим (или вставляем правой кнопкой мыши) следующий текст:
Код:
#!/bin/bash
brctl addbr pan0
brctl setfd pan0 0
brctl stp pan0 off
ifconfig pan0 192.168.21.1 netmask 255.255.255.0 up
bt-network -s -d nap pan0

поясню то, что сам знаю:
первая строка – путь к командному процессору – программе, что будет выполнять следующие команды.
192.168.21.1 – это IP-адрес Оранжа в сети PAN, на этот адрес мы и будем подключаться через PuTTY/SSH по блютузу.
255.255.255.0 – маска подсети.
pan0 – сетевой адаптер для PAN.
Последняя строка – включить сервер сети PAN.
313822
Выходим, сохраняем файл также как и ранее при настройке проводной сети Ethernet. Проверяем существования файла:
Код:
ls –al

Делаем файл исполняемым:
Код:
chmod +x autostart.sh

313823
Ещё раз просматриваем каталог и видим, что в начале строки с нашим файлом появились иксы – файл стал исполняемым. Теперь этот файл надо добавить в автозагрузку, для этого нужно изменить файл /etc/rc.local как показано на сл. рисунке. Т.е. прописать путь к нашему файлу (обязательно перед «exit 0»):
Код:
nano /etc/rc.local

313824
Выходим, сохраняем, перезагружаем Оранж. Смотрим на сеть:
Код:
ifconfig

313827
Появился pan0, значит скрипт стартует. Всё ОК. Хотя PAN «поднят», нужно ещё настроить блютуз-соединение.

Парирование Оранжа и ПК по Блютузу
В вашем ПК тоже должен быть USB-блютуз-адаптер. После настройки всех стандартных драйверов в трее должен появиться сине-белый значок Блютуза.
313832
Сделать Оранж «видимым» по блютузу:
Код:
hciconfig hci0 piscan

Запускаем утилиту блютуз:
Код:
bluetoothctl

313834
Видим, что наш Оранж известен по БТ как «orangepione». Теперь настраиваем парирование:
Код:
agent on
default agent
discoverable on
pairable on

313835
На ПК добавляем устройство, жмём правой кнопкой по значку блютуза и нажимаем соответствующий пункт меню:
313836
Появиться следующее окно
313837
Выбираем «orangepione» и жмём «Далее».
313838
Жмём «Введите код образования пары».
313839
Вводим ПИНкод, например 9292. Потом смотрим на Оранж: Enter PIN Code. Быстро вводим тот-же код 9292.
313840
Теперь Windows установил блютуз-устройство «orangepione» и начал устанавливать 3 драйвера
313841
Драйвера так и не стали, для PAN оно и не нужно.
Теперь на Оранже добавляем ПК к списку довереных устройств по MAC-адресу адаптера, в моём случае 00:15:83:C4:F3:BA.
Код:
trust 00:15:83:C4:F3:BA

313842
Выходим из bluetoothctl командой
Код:
quit
Перезагружаем Оранж.
Вспомним, что IP-адрес Оранжа по блютузу «192.168.21.1» значит нужно и для ПК указать IP-адрес для блютуза. Заходим на ПК в «Сетевые подключения». Находим блютузное подключение. Нажимаем правой кнопкой -> Свойства.
313843
Нажимаем «Протокол интернета версии 4», потом «Свойства»
313844
Вписываем IP-адрес (но в конце двойка) из той-же подсети что и Оранж. «ОК». «ОК».
313845
Входим в «Устройства Блютуз»
313847
Видим наш «orangepi», правой кнопкой -> Подключиться через -> Точка доступа
313849
Если подключение успешно выполнено, заходим через PuTTY/SSH по Блютузному IP-адресу
313854
Жмём «Да» в первый раз. Заходим под root
313856
Видим что через блютуз заходит на Оранж. Поздравляю! UART и Ethernet провода можно отключать от Оранжа. Правда интернета не станет, настроим его через блютуз в следующий раз.
Блютуз связь теперь настроена (должна быть) так, что orangepi остаётся «невидимым»: его нельзя просто так обнаружить и добавить к другим устройством как с нашим ПК (парировать).

Мощность сигнала
Если вы помните (или узнаете) MAC-адрес блютуз-адаптера на ПК, то можете проверить силу его сигнала относительно Оранжа.
Код:
hcitool rssi 00:15:83:C4:F3:BA

313857
0 – это максимальный сигнал, -8 – это чуть слабее. Если не ошибаюсь, самый слабый около -100.


Последний раз редактировалось аКустик 17.12.16 23:27, всего редактировалось 1 раз.

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 26.11.16 18:56
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Интернет через Блютуз (не обязательно).
Это надо для того, чтобы устанавливать новые программы на Оранж через apt-get, а в друг понадобятся :brow: .
Мне не удалось настроить отдачу интернета Оранжу через блютуз следующим стандартным способом.
Заходим в свойства подключения к интернету->Доступ
315915315916
Как видим… в списке нет «Сетевое подключение Bluetooth 2». Хотя на реальный провод «Реальное подключение» можно. В интернете пишут, что с вайфая можно раздавать на блютуз. Но у меня виртуальный модем… пойдём другим путём. Самый простой способ из оставшихся – прокси-сервер. Следующая схема иллюстрирует способ подключения.
315917
Прокси-сервер – это такой вид программ. Бесплатную я скачал здесь:
315920
Запускаем программу, Настройки->Доступ. В списке пользователей изменяем параметры пользователя как нарисовано далее.
315921
Параметры пользователя:
Имя: orangebt
Пароль: orangebt
IP: 192.168.21.1 – это адрес Оранжа в сети через блютуз.

Параметры сервера будут такими (нужны будут далее):
IP: 192.168.21.2 – это адрес нашего ПК, где и зпущен прокси-сервер.
Порт HTTP(S): 8080 – это номер порта нашего прокси-сервера.

В итоге сервер запущен, теперь на Оранже надо настроить прокси для apt-get. Создаём файл настройки:
Код:
nano /etc/apt/apt.conf.d/proxy
И вписываем строку подключения к серверу
Код:
Acquire::http::Proxy "http://orangebt:orangebt@192.168.21.2:8080";

315926
Для проверки пробуем обновить Armbian "apt-get update", а потом "apt-get upgrade".
315929
Посмотрим на «Монитор» прокси-сервера:
315930
Сплошные красные значки не присутствуют, всё ОК. :sun:
Предупреждаю: команда ping через прокси не работает.
ЗЫ: С сетями разобрались. Дальше будем приближаться к аппаратной части.

Бесшумный блок питания на 5В из 12В.
Если посмотреть схему бокса, это будет «бесшумный БП». Он питал 2 кулера (12 вольт) в старом Тумбоксе, теперь будет только Оранж (5 вольт) и самую малость остального. Просто спаяю преобразователь: 12 вольт в 5. БП выдаёт 2А, на Оранж должно хватить.
Выбрал линейный регулятор напряжения LD1085. Он готов пропустить 3 ампера, и может работать в мороз (а Оранж?). Нашел на него инструкцию (DataSheet), спаял по стандартной схеме на макетной плате (но резистор R2 заменил на переменный), нацепил игольчатый радиатор, отрегулировал резистором R2 5 вольт. Радиатор греется, но палец можно удержать.
На плату ещё разъём питания ATX прикрутил, пока не подключал, вырезал соответствующую дырку в корпусе счётчика.
316944316945316946316947316948316949
На последнем фото специальный прибор (в него воткнутый чёрный БП 12В), который показывает текущую потребляемую мощность всей «установки» (со стороны 220В). Т.е. Оранж и БП потребляют 4,0 ватта. Судя по спецификации Оранж может потреблять максимум 10 Вт (5В * 2А), значит сейчас нагрузка 40% от максимума.
Интересный эффект: выдернул блютуз из USB разъёма, и потребляемая мощность подскочила до 4,3 Вт. Выходит, что с блютузом экономнее :D

GPIO теория
Теперь о самом интересном. Сюда мы будем подключать все органы управления Тумбоксом. Это те 40 выводов на плате оранжа торчат в два ряда.
316974
Не все 40 контактов имеют одинаковые возможности. Контакты можно разделить на 2 большие группы:
1.Питание: +5 вольт, +3,3 вольта, минус (земля).
2.Ввод-вывод.

Первая группа неизменяемая, контакты второй группы можно изменять программно. Далее о второй.
Возможные назначения как выходы:
1. Цифровой, «1» или «0», включено/выключено. Это можно использовать например для включения/отключения света, насоса полива, вентиляторов и т.п.
2. PWM (ШИМ), «1» или «0» сменяют друг друга по двум параметрам: частота и скважность (процент заполнения). Это уже более гибкий инструмент: свет можно не просто включать и выключать, а задавать яркость в процентах например. Регулировать скорость вращения вентиляторов, изменять скорость полива(?).

Возможные назначения как входы:
1. Цифровой, «1» или «0», включено/выключено. Сюда можно прицепить кнопку и определять нажата она или нет.

В отдельную классификацию я внесу коммуникационные входы/выходы интерфейсов (протоколов) передачи данных:
1. UART – 3 контакта.
2. SPI – 4 контакта.
3. I2C – 2 контакта.
4. Другие.

Упомяну, что «0» это минус, а «1» это +3,3 вольта. Это всё есть и в Arduino, микроконтроллерах AVR, PIC и других, но обычно «1» это +5В. Могут быть и другие назначения контактов.
Далее по этому поводу советую прочитать статью. Честно говоря, GPIO я мало применял, может чего то и не знаю. По ходу будем разбираться :brow:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 01.12.16 18:57
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Midnight commander (MC) (не обязятельно)
Это визуальный обозреватель файлов и папок, ну чтобы удобнее было смотреть что там в Оранже. Аналог Norton Commander, мне подобный преподавали в школе. Может быть помните две синие таблички? Но в Armbian он называется Midnight Commander. Чтобы установить это чудо графики нужно единожды выполнить:
Код:
apt-get install mc

А чтобы запустить:
Код:
mc

Если вы увидели странную графику с непонятными буквами, значит кодировка текста PuTTY неправильно указана
317501
Укажите кодировку utf-8 в PuTTY перед запуском
317502
И вуаля...
317503
Объяснять как работать с файлами в «mc» не буду, т.к. это далеко уводит от темы репорта. Дополнительную информацию можно найти в Интернете. Просто хотел рассказать о существовании такого удобства молодым «линуксоидам», которые ещё не познали всю мощь командной строки.

GPIO. Подготовка Python
Сначала надо определиться на каком языке программирования мы будем писать. Выберем Python. Он уже установлен, но как-бы… «не весь», доустанавливаем:
Код:
apt-get install python-dev

Теперь под этот язык нам нужно скачать и установить некие библиотеки, чтобы иметь влияние на GPIO. Библиотеку будем брать из популярного сайта github.com. Для этого существует команда git. Нужно для неё (как и для apt-get), настроить прокси-сервер. (Если вы выходите в интернет не через прокси, пропустите все действия до cd /tumbox.)
Создаём пустой файл:
Код:
touch /root/.gitconfig

Переходим в домашнюю папку root:
Код:
cd /root

Задаём параметры прокси:
Код:
git config --global http.proxy http://orangebt:orangebt@192.168.21.2:8080

Не забываем на ПК включить прокси-сервер HandyCash.
переходим в папку тумбокса:
Код:
cd /tumbox

Скачиваем папку с библиотеками:
Код:
git clone https://github.com/duxingkei33/orangepi_PC_gpio_pyH3.git

Переходим в новоскачанную папку:
Код:
cd orangepi_PC_gpio_pyH3

Устанавливаем библиотеки:
Код:
python setup.py install

У меня всё прошло гладко, люблю этот Armbian.


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 08.12.16 19:56
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Помигаем светодиодом
Наконец-то! Пришло время испытать GPIO на практике. Если посмотреть пункт «GPIO теория», то можно найти таблицу. Нам нужен контакт, который может быть цифровым выходом. Подойдёт любой, который отмечен зелёным цветом в таблице. Возьмём PA12 (контакт №3). Программно мы будем изменять его значение на «0» или «1» (- или +3,3). За постоянный минус возьмём контакт №6 (GND). И вот когда на PA12 будет "1", то между контактами PA12 и (любым) GND возникнет напряжение 3,3В. Его можно замерить мультиметром, тестером или вольтметром. Но эффектнее будет смотреться светящийся светодиод. Цифровые контакты GPIO выдерживают нагрузку не более 16мА (милиампер). Потому в цепь светодиода надо ставить резистор (сопротивление), чтобы ток нагрузки не превышал нормы.
Я взял маленький советский красный светодиод и не менее советский резистор 2К2 (2,2 килоома). Резистор большой для такого случая, но всё равно диод работает.
Расчёт диода можно взять из ранее упомянутой статьи.
В общем, подключаем светодиод с резистором по следующей схеме.
319633
Если хотите посмотреть сколько именно милиампер проходит в цепи, поместите последовательно тестер в режиме амперметра.
319634
Это и будут те амперы, которые не должны превышать 16мА. На этом порту (PA12) после включения у меня сразу выставлен «1», т.е. светодиод светиться изначально без программирования (типа глюк).
319637
Теперь создадим программу на языке Python.
Код:
nano /tumbox/led.py

Пишем в ней следующий код
Код:
#!/usr/bin/env python

import time
from pyA20.gpio import gpio
from pyA20.gpio import port

gpio.init()

gpio.setcfg(port.PA12, gpio.OUTPUT)
gpio.output(port.PA12, gpio.HIGH)
time.sleep(2)
gpio.output(port.PA12, gpio.LOW)

Эта программа включает порт PA12 на две секунды, а потом выключает. Теперь объясню по строчкам.
#!/usr/bin/env python – указывает, что эта программа написана на языке Питон.
import time импортировать библиотеку (модуль) «time».
from pyA20.gpio import gpio – импортировать имя gpio из pyA20.gpio
from pyA20.gpio import port – импортировать имя port из pyA20.gpio
pyA20 – это и есть библиотека для GPIO, которую мы скачивали ранее через git. Импортированные имена будут доступны далее в программе.
gpio.init() – инициализация GPIO.
gpio.setcfg(port.PA12, gpio.OUTPUT) – указываем, что контакт PA12 будет выходом.
gpio.output(port.PA12, gpio.HIGH) – в контакт (порт) PA12 ставим высокий уровень, т.е. «1». Тут светодиод должен засветиться.
time.sleep(2) – ждём две секунды.
gpio.output(port.PA12, gpio.LOW) ) – в контакт (порт) PA12 ставим низкий уровень, т.е. «0». Тут светодиод должен погаснуть.
Думаю ничего сложного нет. Не забываем сделать файл программы исполняемым:
Код:
chmod +x /tumbox/led.py

Запустить программу из любой папки:
Код:
/tumbox/led.py

Запустить программу из текущей папки:
Код:
./led.py


Если вы спросите как маленький светодиод поможет в обслуживании гроубокса, отвечу: слабые токи (и напряжения) GPIO будут усиливаться модулями, представляющие собой усилительные каскады на транзисторах, симисторах, реле и пр. Таким образом можно управлять практически любыми электроприборами. Модули можно купить готовые, а можно собрать самому.
У меня полно советских транзисторов, буду собирать модули с их использованием везде, где это возможно.


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 08.12.16 20:00
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 30.03.2016
Сообщения: 1456
ОЧЕНЬ мудрёно :thumbs: Зачёт :thumbs:

_________________
Дело сделанное не вовремя, становится проблемой


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 14.12.16 22:22
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 11.10.2010
Сообщения: 62
Здорова брю, просто молодец, хочу тоже заказать данную вещь слижу за тобой надеюсь не бросишь идею и доделаешь все. Я потом по твоему репорту тоже начну собирать. :thumbs:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 14.12.16 22:48
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 13.11.2009
Сообщения: 159
Есть проблемы с сильным нагревом? Понижал частоту проца? Заказал три маленьких радиатора, подумываю заказать кейс с куллером...
Какие реле думаешь использовать? В целом гидропоника или земля? :smoke:

_________________
И, пожалуйста, помните: мы - не юристы, правила - не УК, наказания раздают не святые. :facepalm:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 15.12.16 15:06
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
KpOHyC Сначала думал: "чё там настраивать", а теперь посмотрел на количество текста: "может стояло что-то попроще придумать?".
mordor2004 Нееет! Не брошу! Всё самое сложное позади, кроме видеокамеры конешно. Многое будет зависеть от финансов, время свободное есть.
Ёрш Пока проц 32-33 градуса, в комнате 18. Его толком не нагружал, а вот когда будет циклическая проверка температуры и видеотрансляция... В проце Н3 есть видеокарта Mali, наверно она включается только при использовании: воспроизведение видео - наверняка, видеотрансляция - хз.
Тоже купил 3 радиатора, пока не ставил.
Реле будет только на свет (лампочки светодиодные/экономные 220), временно, советское электромагнитное автомобильное на 12 вольт сработки. Свет пока в стадии продумывания. С прошлого грова осталась сберегающая огромная спиральная на 105Вт, жалко выбрасывать.
Вообще хочу чтоб всё было максимум на 12В, ну если чё от аккумулятора всё работало.
Насос полива - на 2-х транзисторах (будет далее об этом). Кулера - тем более, на одном транзисторе можно несколько вцепить. Паяться придётся, зато дешевле будет и хлам пойдёт в работу.
Обогрев пока будет от 220В, будет регулироваться симистором типа BT136 или BTA12-600. Это чтобы до поздней осени гровиться, или с ранней весны, зимой наверно нет.
Прошлые разы гровил на земле из леса + месная. Тогда чё-то слухи пошли, что магазинная земля - это отработанная из помидорных теплиц местных барыг, просто чёрным покрашена. Магазинное жидкое удобрение, не помню какое. В землю раз добавил не совсем перегнившего навоза (органического происхождения), тогда завелась какая-то моль и чуть растиху не сожрала - вовремя заметил.
Опыта грова очень мало. На гидре точно не буду. Надо землю сначала освоить.
О! Вспомнил, что растихам некоторые гроверы включают музыку, чтобы они лучше потом "благодарили", в Оранже в GPIO есть цифровой звуковой выход I2C/PCM, надо попробовать. Спаять какой-то ЦАП или купить. И динамики должны где-то валяться. Ах да... беспалевность надо соблюдать... блин... облом... ну а если тихонько чтоб играло? :dance:
Насос полива
Приобрёл б.у. насос от автомобиля, наверное от стеклоочистителя. Замерял мультиметром – берёт 0,8А в начале, а потом 0,6А.
322136
Задача такая: ток до 16мА и напряжение 3,3В из GPIO
превратить в
0,6А и 12В для насоса.
Было принято решение собрать усилительный каскад на транзисторе КТ815. Как рассчитать усиление транзистора прочитал в статье. Коэффициент усиления этого транзистора: 40.
Значит из GPIO будет требоваться ток 0,6А / 40 = 0,015А (15мА) – в притык. Сопротивление по закону Ома R3=3,3В / 0,015А = 220Ом.
321666
Собрал, спаял, ток базы транзистора оказался ниже расчётного: не 0,015А, а 0,011А – обрадовался. Оговорюсь, насос ранее проверял в холостую – без воды, а теперь когда попробовал с водой – работает, но не качает, и долго набирает обороты. Понял свою ошибку: рассчитывать надо было на 0,8А, а не на 0,6А, т.к. нагруженному насосу требуется больше ампер, а для запуска ещё больше.
Начал увеличивать ток с GPIO и выясняется, что падает коэффициент усиления или фиг его знает. Надо 27мА, а 16мА мне нифига не хватит.
Пришлось в усилительный каскад добавить ещё один транзистор КТ315.
321667
Подобрал резисторы и всё получилось. GPIO идёт нагрузка меньше 1мА – круть! Ещё для безопасности добавил плавкий предохранитель 1А.

Подбирал точные значения резисторов с помощью переменного резистора и двух мультиметров в режиме амперметра. Если взять первую схему, верхний амперметр показывает ток мотора (до 0,8А). Переменным резистором крутил так, чтобы на нижнем амперметре был ток до 16мА, а верхнем - достаточным для нормальной работы насоса (мотора). Потом измерял сопротивление переменного резистора, и вместо него ставил подходящий постоянный резистор.
321668
Собрал на макетке 5х7см, радиатор (выбрал на глаз) прикрутил к плате, к радиатору прикрутил КТ815 (с термопастой разумеется). Не для всех выводов есть сейчас разъёмы, и держателя предохранителя нет.
321664
Программа.
Насос «прикрутил» к контакту РА6 (№7). Программа похожа на светодиодную, но:
•В качестве параметра можно передавать количество секунд времени работы насоса, если не задано – 10 секунд.
•Номер порта задаётся в единственной строке программы, можно его легко поменять.
•Вывод в командную строку прогресса выполнения.
Создать файл:
Код:
nano /tumbox/water.py
Текст программы:
Код:
#!/usr/bin/env python

import time
import sys
from pyA20.gpio import gpio
from pyA20.gpio import port

gpio.init()

WaterPort = port.PA6
DelayTime = 10

if len(sys.argv) >= 2:
    DelayTime = int(sys.argv[1])

gpio.setcfg(WaterPort, gpio.OUTPUT)
gpio.output(WaterPort, gpio.HIGH)
i=1
while i <= DelayTime:
    print('%d%s%d' % (i, '/', DelayTime))
    time.sleep(1)
    i+=1
gpio.output(WaterPort, gpio.LOW)
321665
WaterPort – это переменная содержащая «номер» контакта (порта).
DelayTime – время задержки в секундах, тоже переменная.
if len(sys.argv) >= 2: - условное выполение, если количество переданных аргументов больше или равно двум, выполнить всё что после него подряд с отступом от левого края (Tab).
DelayTime = int(sys.argv[1]) – установить время задержки из второго параметра.
В данном случае параметр «15», но он считается не первым а вторым, потому что первый параметр всегда путь к программе, в данном случае он будет «/tumbox/water.py» и под индексом «0». Так сделано для того, чтобы программа могла узнать из какого файла запущена.
while i <= DelayTime: – это цикл, который будет выполнять всё, что после него подряд с отступом, один или много раз, пока переменная «i» будет меньше или равна переменной «DelayTime».
print – функция вывода текста.
i+=1 - i=i+1, увеличить "i" на единицу.
Язык Pyton лучше изучать из других источников, а не из моих ответов т.к. я его ещё плохо знаю, и это изучение выходит далеко за рамки темы.

ПС: При экспериментах с насосом 1 раз завис Оранж, надеюсь это трагическая случайность, иначе в реальных условиях затопит гроубокс. Если будет зависать, на входе придётся ставить оптопару, чтобы токи Оранжа и насоса не соприкасались.


Последний раз редактировалось аКустик 17.12.16 16:00, всего редактировалось 2 раз(а).

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 15.12.16 23:54
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 13.11.2009
Сообщения: 159
В электронике и физике ты шаришь) Я более ленивый, взял 8 реле(220в 2а) и всё через них запускаю. Я использую комп. БП, на него повесил - ардуинку, 3 куллера, релюхи. Реле питаю отдельно от ардуинки, меньше помех и просадок напряжения,что благотворно повлияло на показания PH.
Клевая идея о 12 вольтах!!! Тут ты переплюнешь всех! :rasta:
Тоже думал использовать автомобильный насос, но он слишком шумный. А температура раствора регулируется за счет перекачки из одной емкости в другую! В итоге взял аквариумный, благо финансы не пели романсы!
Насчёт музыки растениям - я ставил реп! :mrgreen: :mrgreen: :mrgreen:

_________________
И, пожалуйста, помните: мы - не юристы, правила - не УК, наказания раздают не святые. :facepalm:


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 16.12.16 00:36
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 02.04.2010
Сообщения: 303
Читаю, ничего не понимаю (ибо полный ноль в этом) - но все равно интересно читать :rasta:

аКустик голова :pray:

_________________
Караван прошел мимо, пока мы как собаки лаялись


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 04.02.17 17:56
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Долго не писал, небыло времени. Весна скоро - а готова максимум половина. "Оранжевая" камера с Китая не пришла, часть денег вернули, которые потратил потом непонятно на что. Может попробую подключить старенькую iLook300 через USB через разветвитель USB.
Ёрш. Всё будет на 12В но не сразу: свет пока 220, а обогрев точно 220. Об обогреве воды как-то не подумал сразу, благо от аквариума обогреватель где то валяется.
Продолжу описывать всё по порядку.
Мощный блок питания. Теория.
Мощные модули будут питаться от мощного компьютерного БП стандарта ATX на 400Вт. Будет ли он конфликтовать с БП оранжа? Всё-таки оранж будет посылать управляющие сигналы берущиеся из своего питания.
Надо соединить минусы этих двух БП, а плюсы чтобы напрямую никогда не прикасались, даже если одинаковый вольтаж. Транзисторы изначально рассчитаны на два источника питания – тут проблем не должно возникнуть.
Оранж по «своему желанию» будет включать/отключать второй БП. Вывод “Power good” из БП надо подключать к минусу, чтобы БП «завёлся». Ток там меньше 1мА - проверил это мультиметром. Мы, как и в случае с насосом, можем просто подключить “Power good” к свободному контакту GPIO, но лог. «0» будет заводить БП, а «1» отключать. Я взял контакт PA7/№29.
При старте оранжа этот контакт имеет значение «0», т.е. БП изначально будет включён, пока не вмешается наша программа. Программу можно поместить в автозагрузку, но к этому моменту её запуска пройдёт секунд 20-30 – это не очень удобно. Потому я использовал оптопару 817C для преобразования «0» в «1», так при загрузке оранжа БП будет выключен.
Оптопару выпаял из сгоревшего (импульсного) блока питания (ещё может быть в зарядках к телефону), её можно легко опознать по квадратно-микросхемному корпусу с четырьмя ногами.
334638
Перед этим пытался снова использовать транзистор КТ315, но из-за наводок-помех из БП АТХ он никак не мог выключаться.

Мощный блок питания. Схема.
Правильнее было-бы назвать модуль питания, но не хочу уже менять название подзаголовка.
Модуль питания включает в себя под-блок питания эксклюзивно для оранжа и управление мощным блоком питания АТХ, которые физически собраны на одной плате и соединены только минусами.
334671
БП оранжа описывал ранее.
Как видим модуль имеет 3 контакта для управления:
• Power On – оранж включает/выключает БП АТХ, «0» - отключает, «1» - включает.
• Power Good – БП сигнализирует о нормальном/ненормальном выходном вольтаже, не подключал пока.
• +3,3 SB (Stand By) – подаётся напряжение из БП АТХ даже если он не «заведён». Оранжом можно проверять, подключен ли БП в розетку – в принципе не обязательно. Для проверки можно этот контакт подключать к «Power On», чтобы «заводить» БП АТХ без оранжа. Из БП выходит 5 вольт, делитель напряжения на двух резисторах превращает в 3 вольта для совместимости с оранжом.

Делитель напряжения рассчитывается по закону Ома для отрезка цепи.
Определяем входное напряжение, из БП АТХ: U=5В.
Определяем выходное (нужное) напряжение, 3 или 3,3 тут не особо важно: U2 = 3В.
Определяем ток, для определения есть/нет напряжения большие токи не нужны: I = 0,001А = 1мА.
Общее сопротивление: R = R21 + R22 = U/I = 5В/0,001А = 5000Ом = 5кОм = 5К.
Берём напряжение из резистора R22.
Сопротивление резистора R22: R22 = U2/I = 3В/0,001А = 3000 Ом = 3кОм = 3К.
Сопротивление резистора R21: R21 = R – R22 = 5000Ом - 3000 Ом = 2000Ом = 2кОм = 2К.
Если интересно напряжение на резисторе R21: U = U1+U2 => U1 = U – U2 = 5В – 3В = 2В.
После сборки схемы напряжения надо перемерять мультиметром для уверенности.

Резистор для оптопары 817C расчитывал тоже по закону Ома.
Ток, я взял из «потолка» щадя оранж 1мА: I = 0,001А.
Напряжение из оранжа: U=3,3В.
Резистор R23: R23 = U/I = 3,3В / 0,001А = 3300Ом = 3К3.

Мощный блок питания. Программа.
Подключем вывод с модуля питпния «Power On» к выводу PA7/№29 GPIO оранжа.
Не забываем к БП АТХ подключать нагрузку (напр. кулер), чтобы он случайно не сгорел при холостом «заведении». Программа будет проще, чем с насосом. Точнее две программы: на включение и на выключение.
Включение.
Создаём файл:
Код:
nano /tumbox/atx_on.py

Вставляем код:
Код:
#!/usr/bin/env python

from pyA20.gpio import gpio
from pyA20.gpio import port

gpio.init()

OperPort = port.PA7

gpio.setcfg(OperPort, gpio.OUTPUT)
gpio.output(OperPort, gpio.HIGH)

Делаем файл исполняемым:
Код:
chmod +x /tumbox/atx_on.py

Выключение.
Создаём файл:
Код:
nano /tumbox/atx_off.py

Вставляем код:
Код:
#!/usr/bin/env python

from pyA20.gpio import gpio
from pyA20.gpio import port

gpio.init()

OperPort = port.PA7

gpio.setcfg(OperPort, gpio.OUTPUT)
gpio.output(OperPort, gpio.LOW)

Делаем файл исполняемым:
Код:
chmod +x /tumbox/atx_off.py

Программы отличаются только концом последней строки: HIGH/LOW. Далее будем подключать насос к БП АТХ.


Последний раз редактировалось аКустик 07.02.17 22:49, всего редактировалось 1 раз.

 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
СообщениеДобавлено: 04.02.17 22:17
Заголовок сообщения: Re: Тумбокс 2: тумбочка + Orange PI One
Аватара пользователя

Регистрация: 08.01.2015
Сообщения: 48
Подключение насоса к БП ATX.
Теория.
Вот и первое применение ATX, питание им насоса. Подключаем модули по следующей схеме.
Схема.
334701
Код.
Теперь к БП будет подключён модуль насоса и тестовый кулер использоваться не будет. Потому программно надо сначала включать насос, а потом БП во избежание холостой работы БП. Отключение-же наоборот: БП а потом насос. Изменим программу работы с насосом water.py.
Код:
#!/usr/bin/env python

import time
import sys
from pyA20.gpio import gpio
from pyA20.gpio import port

gpio.init()

AtxPowerOnPort = port.PA7
WaterPort = port.PA6
DelayTime = 10

if len(sys.argv) >= 2:
    DelayTime = int(sys.argv[1])

gpio.setcfg(WaterPort, gpio.OUTPUT)
gpio.setcfg(AtxPowerOnPort, gpio.OUTPUT)
gpio.output(WaterPort, gpio.HIGH)
gpio.output(AtxPowerOnPort, gpio.HIGH)

i=1
while i <= DelayTime:
    print('%d%s%d' % (i, '/', DelayTime))
    time.sleep(1)
    i+=1

gpio.output(AtxPowerOnPort, gpio.LOW)
gpio.output(WaterPort, gpio.LOW)

Далее пару снимков, тут нет самого насоса, зато есть модули часов и датчиков, ок оторых будет рассказано потом.
334702334703


 Профиль Найти сообщения пользователя Галерея  
Ответить с цитатой
Показать сообщения за:  Сортировать по  

Начать новую тему 
Ответить на тему 
 Страница 1 из 3  [ Сообщений: 62 ]  на страницу... 1  2  3  

   Похожие топики   Автор   Ответы   Просмотры   Последнее сообщение 
В этой теме нет новых непрочитанных сообщений. Тумбочка из хлама | LED ~ 220 watt | ВШГ 60x60x30

в форуме Строй-репорт

pickupbong

7

1366

06.11.19 14:17

pickupbong Перейти к последнему сообщению

В этой теме нет новых непрочитанных сообщений. Damnesia fem, тумбочка, COB 50W, LST, земля, Hesi

в форуме Grow reports

КаннаКот

23

1716

29.08.22 16:45

КаннаКот Перейти к последнему сообщению

В этой теме нет новых непрочитанных сообщений. Auto Amnesia / Тумбочка / Бытовые LED 118w / Земля / GHE

в форуме Grow Autoflowers

plazmogun

24

4023

23.07.21 14:24

olkalone Перейти к последнему сообщению

В этой теме нет новых непрочитанных сообщений. Auto Amnesia / Тумбочка 40х40х70 / Бытовые LED 173w / Земля / GHE

[ на страницу...: 1, 2, 3 ]

в форуме Grow Autoflowers

plazmogun

60

6330

15.11.20 07:01

AndyDance Перейти к последнему сообщению

В этой теме нет новых непрочитанных сообщений. Auto Daiquiri Lime / Тумбочка 40х40х70 / Бытовые LED 104w / Земля / GHE

[ на страницу...: 1, 2, 3 ]

в форуме Grow LED

plazmogun

64

6019

10.02.21 17:12

plazmogun Перейти к последнему сообщению



Журнал вахтёра

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Перейти:  
Powered by phpBB® Forum Software © phpBB Group

M