Сообщество - Arduino & Pi

Arduino & Pi

1 493 поста 20 825 подписчиков

Популярные теги в сообществе:

69

WiFi термометр на ESP-01

Итак, здравствуйте, это мой первый пост

Данные выводящиеся на смарт

В состоянии прототипа (Не пинайте за монтаж)

Использованные модули

ESP-

ESP8266-01

PL2303

Датчик DHT 11 (поговаривают в народе что мерит температуру на Марсе) подключен к ESP через gpio2
Приложение работает через Blynk сгенерированный токен вписывается в скетч
(Использованы виртуальные пины v10 и v11)
_______________
Архив со скетчем и библиотеками: https://yadi.sk/d/hAfvbMWR3JtCfE

________________________

У меня значения прыгают иногда, возможно ли такое поведение из-за датчика или навесного монтажа?
P.S Про качество фото знаю

Показать полностью 5
217

Arduino для начинающих - Передача и прием данных. Библиотека Serial и коды ASCII

Это 10-й выпуск курса "Arduino для начинающих", сегодня мы поговорим о том, как пользоваться последовательным монитором порта – получать, отправлять различные данные, в общем, общаться со своим устройством и управлять им.

Список остальных выпусков:

#0 Введение в курс. Чего ожидать от этой серии для начинающих.

#1 Немного электроники и схемотехники – без них никуда.

#2 Знакомство с Arduino. Основные компоненты для начала работы.

#3 Arduino изнутри - структура, составляющие и их назначение. Микроконтроллер Atmega328P

#4 Arduino IDE Настройка и установка драйверов. Проверка работоспособности платы Arduino

#5 Первая программа – работаем со светодиодом и кнопкой.

#6 Условные операторы и циклы.

#7 Логические операции И, НЕ, ИЛИ.

#8 Функции и их применение.

#9 Библиотеки - как с ними работать и создать свою собственную.


Всем, как обычно, удачных компиляций! :)


P.S.: Если вы еще не состоите в сообществе "Arduino & Pi", милости просим: http://pikabu.ru/community/arduino

Показать полностью
146

Машинка на ардуино управляемая с телефона

Делать было нечего, дело было вечером...

Решил я начать осваивать микроконтроллеры, взял для этого Arduino UNO китайскую. Поигравшись с датчиками и модулями посетила мысль: "Было бы круто сделать машинку которая управляется с телефона и которую можно заряжать от обычного microUSB".

Мужик сказал - мужик сделал.

Все комплектующие были куплены на Ali, за исключением металлического конструктора, на котором всё закреплено.

Роль аккумуляторов выполняют две батареи Nokia BN-02 на 2000 мАч каждая.

Зарядка происходит через два параллельно соединенных модуля TP4056.

Переключение между режимом работы и зарядки производится переключателями.

В качестве драйвера двигателей выступает TB6612FNG.

Драйвер двигателя и модули зарядки распаяны на одной плате для удобства, так же на плате выведены контакты для двигателей, батарей, питания +7,4 и +5, вывод измерения напряжения на батареях, входа управления с ардуино.

Ардуинка и телефон общаются между собой через Bluetooth модуль HM-10, а точнее китайский аналог CC2541. Связь на расстоянии 100 метров стабильная, но приторможенная, с близкого расстояния всё норм.

Используемая мобилка Xiaomi redmi 3 pro с установленной программой Remote XY (не реклама). На экране отображается управление: вперёд - назад, влево - вправо; уровень заряда АКБ; Бипка - включает сигнал на зуммере. Кнопки открыть и закрыть для клешни, которую снял для доработки.

Фото клешни.

общий вид полученной машинки и видео дрифтинга ;)

Извиняюсь за шакалистые фото и несвязное изложение)

Если есть вопросы - отвечу.

Спасибо за внимание!

Показать полностью 6 1
73

Теплица на Ардуино-Мега. Часть 7.

Для тех, кто интересуется моим рассказом о создании умной теплицы - продолжение.

20 мая. Теплица обзавелась передачей данных о своем состоянии. Что сделано:

1. На Raspberry-Pi установлены веб-сервер Apache, MySQL, PHP. Спасибо за помощь коллеге по работе - Евгению.

2. Raspberry-Pi подключено дома к роутеру, интернет имеет статический IP-адрес.

3. Сын написал программу, которая будучи запущенной на Распберри-Пи, принимает UDP пакет, содержащий массив из 16 элементов с данными по теплице и записывает его в базу данных.

4. К Ардуино Мега по Serial порту подключен ESP8266 LoLin NodeMCU, который также прошивается из Arduino-IDE. Скетч пока тестовый, самый простой: http://ideone.com/q3GpDC

5. К скетчу теплицы добавлена функция отправки данных, измененный скетч для теплицы: http://ideone.com/EUS6W5
6. @MDIMAN, спасибо за написанную страницу, на которой отображаются данные о теплице, получаемые из базы данных.

Совсем короткое видео, как теперь все выглядит, можно посмотреть тут.

Страница, на которой отображаются данные выглядит просто, но информативно:
Собственно, данные с датчиков, статус бака, окон и обогревателей с датой и временем изменения состояния.

Теперь "приключения электроника" с подключением ESP 8266:

1. Я полагал, что сериал порт надо подключать так: Rx-Tx. Ан нет, оказалось, что клемма Rx ESP должны быть подключены к клемме Rx Меги. То же и с Тх.

2. Поскольку плата ESP8266 LoLin NodeMCU подключается для программирования по USB, а на плате присутствует стабилизатор трехвольтовый, я решил подключить 5в для питания устройства к клемме Vin. К тому же в разных статьях, которые я читал, так и советовали. Опять не то. Процессор греется, плата не работает. Подал 5в через разъем USB, все хорошо. Может с платой что-то не то? Так и поставил, отрезал кусок от шнура USB и запитал от 5в через него.

3. Несмотря на многократное тестирование, на месте плата отказалась цепляться к вайфаю. Включаю точку доступа на смартфоне - цепляется, а к роутеру ни в какую. Предположил, что дело в названии точки доступа. Что-то вроде TP_Link-600 (точно цифры не помню). Изменили название точки доступа в роутере, все заработало. Я подумал, что виновато тире, сын говорил, что нижнее подчеркивание, но, поскольку избавились сразу и от того и от этого, сказать точно не могу, в чем причина была.

4. Интернет там не очень, DSL-модем при плохой телефонной линии, пинги теряются. Соответственно и UDP пакеты тоже, иногда несколько подряд. Но поскольку они идут раз в 10 сек, то даже одного из 10 пакетов достаточно, чтобы получать актуальную информацию, зато никаких зависаний.


Какие вскрылись проблемы за это время: Включение обогревателя в 1200Вт оказалось непосильной ношей для Ардуиновского реле. И вовсе оно не 10А. Временно поставил каскадом еще реле, на 30А. Сейчас пытаюсь сколхозить управление на симисторе.

Показать полностью 1
1452

PiHole - Блокируем рекламу на всех устройствах

Всем доброго дня, у меня недавно появился самый первый CubieBoard на процессоре A10. И я решил его куда-нибудь пристроить. Наткнулся на проект Pi-Hole и решил, почему бы и нет.

Что же из себя представляет Pi-Hole?

"Network-wide ad blocking via your own Linux hardware" - т.е мы блокируем рекламу на ВСЕХ устройствах в локальной сети, используя нашу Linux машинку.


Реклама блокируется на вашем компьютере, на компьютере брата, на ноутбуке мамы, на всех сотовых телефонах, и на вашем холодильнике.


Изначально Pi-Hole затачивался под raspberry, но сейчас его можно поставить на любой linux дистрибутив.


На моей CubieBoard стоит Cubian - это переписанный Debian под эту плату.

Для того чтобы поставит PiHole , вам нужно ввести всего одну команду:

curl -sSL https://install.pi-hole.net | bash


Ну или две

wget -O basic-install.sh https://install.pi-hole.net
bash basic-install.sh

p.s На cubian слетел доступ по https, поэтому используйте просто http://


Отлично, после распаковки всех файлов, там откроется простая установка. Вы можете смело отвечать на все пункты - "Next".

После установки, вам нужно будет перейти в Web-админку, в неё можно попасть по адресу: http://192.168.1.XXX/admin/ - где XXX концовка IP вашего устройства.

На данный момент моя админка выглядит так. На ней вы можете видеть немного графиков и основную статистику. Чуть ниже идёт топ доменов и топ заблокированных доменов. Ещё ниже есть топ устройств с которых было больше всего запросов.

Всё обновляется в режиме реального времени и выглядит довольно круто. Подумываю вывести её на отдельный экран, пускай висит :D


НО Перед админкой, вам нужно будет настроить ваш роутер.

Заходите в настройки вашего роутера, в раздел LAN (не WAN!), и настраиваете DNS адрес, в который пишите адрес вашего устройства. Теперь все устройства в вашей сети будут получать этот DNS адрес. Подробнее - тут.

В админке также можно настроить White-лист и Black-лист доменов. Отключить adblock на время или насовсем. Также там можно обновить "Листы". Листы представляют из себя hosts файлы.

Примеры:

https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts

https://hosts-file.net/ad_servers.txt

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


Проблемы которые возникли при установке:

Проблемы скорей всего из-за специфики Cubian, но всё же.


1. После установки не работает Web админка - пишет 404 Not Found.

Помогло:

sudo lighttpd-enable-mod fastcgi-php
sudo service lighttpd force-reload

2. Не запускался FTL

Помогло:

sudo pihole-FTL start

3. В хроме всё равно показывалась реклама.

Помогло:

Сброс DNS'a - chrome://net-internals/#dns

Ну вроде и все проблемы которые были.


Тесты:

1. Все банеры гугла исчезли в мобильных приложениях.

2. На сайтах, где раньше писало отключить AdBlock, перестало так писать. (не уверен, что на всех, но всё же)


Больше я не смог придумать тестов, если у вас есть вопросы, или вы хотите, чтобы я что-то проверил. Смело пишите в комментариях.

В конце дня постараюсь скинуть скриншот статистики.


Мои прошлые посты похожей тематики:

1. Raspberry Pi 3 Mediacenter + Hyperion Ambilight

2. Arduino: Как я делал "запоминалку" слов

Показать полностью 3 1
18

Android + Arduino - любви быть

Продолжение постов:

http://pikabu.ru/story/pomoshch_po_android_usb_otg_4992692

http://pikabu.ru/story/android__arduino__druzhba_ne_udalas_p...


И так, после борьбы с USB Host Shield, и по вопросу одного пикабушника почему не по звуковому идет управление, я задался вопросом - А правда, почему нет?


Вот и решил опробовать получиться ли.


Данный пост будет скорее инструкцией по настройки Arduino для работы через аналоговый вход.


И так, прикинув, что горазда проще задать в приложении чтоб выплевывало звук когда головоломка решена правильно, чем отправлять какие либо команды через USB Host Shield или через Wi-Fi модуль и тд и тп. Сказано-сделано, переделал головоломки на андроиде и подключил к Arduino, запустил прослушку и запустил звук. Поймал сигнал на входе, сигнал если честно довольно слабый, если планшет не увеличен до конца, Arduino не ловит сигнал.

Написал код для Arduino, ссылку оставлю в конце.

Припаял диод 1N4007 и транзистор BC548 к реле, а так же и резистор на 9.1kОм.

Запустил приложение на андроиде, вроде все работает, Arduino ловит сигнал, открывает реле.

Отключил планшет от ноута чтоб тестить на коленях и привет, неожиданные клики по планшету, самостоятельные переходы куда попало. Немного прикинув, понял - боль в том, что у планшета аудиовыход комбинирован с управлением с наушников и все это работает на уровне импульсов, а так как питание Arduino отдельно, с адаптера, видимо кидает импульсы оно на планшет и он их понимает по своему. Замечал что такое бывает с телефонами, если наушники порваны и где-то коротит в них или при подключение в AUX автомагнитолы через раздолбаный провод/жак.

Взял зарядку USB с двумя выходами - подключил планшет и Arduino - все работает как часики. Заметил, что если вытащить жак из планшета и коснутся, то иногда срабатывает реле. Поставил еще один резистор 9.1кОм на вход. Все урегулировалось.


Если резюмировать - для моих целей, управление через аудио оказалось самым простым. Загон с USB Host Shield был просто моим личным идиотизмом и желанием чтоб все было на проводах. Как оказалось - не стоило. Вариант с Wi-Fi/Bluetooth - наверное работал бы хорошо, но для меня он бессмыслен. Спасибо пикабушнику за вопрос, даже в голову бы не пришло свести все на столь низкий уровень.


Мой совет - нет смысла лезть в USB Host Shield - это только усложняет всю конструкцию, если аналоговый вход для проекта не достаточен - wi-fi/bluetooth прекрасные варианты.


Но как всегда, не все может быть прекрасно и полностью работать. Как оказалось, после того как отключишь планшет и включишь появляется баг и баг в том, что запускаешь первое приложение - звук остаётся на максимуме, как до отключения планшета, решаешь головоломку, все окей, реле срабатывает. Запускаешь второе приложение, жмёшь на качели громкости, звук на максимуме, все в шоколаде, делаешь один клик по приложению, жмёшь на качели звука, выскакивает предупреждение, что от громкого звука оглохнешь, жмёшь окей и увеличиваешь звук, так как он оказался сбит до 2/3 силы. Данное появляется без значимости какое приложение запустишь первым, какое вторым.


Баг не в моих приложениях. Тоже самое получается если после рестарта планшета запустить ютюб - все окей, звук на максимуме, запускаешь вслед за ним любой ап, скажем карты, жмёшь на увеличение звука на качелях - привет, можешь оглохнуть - окей, я хочу оглохнуть - ну окей, давай увеличим звук.


Может кто-то знает как вылечить этот баг андроида? Андроид стоит 4.2.1

Код для Arduino: https://pastebin.com/embed_js/FerNXTfL


Две фото в состоянии паутина. Поставил Arduino питаться с планшета через USB OTG.

Показать полностью 3
121

CodeWheels - первые гонки роботов для программистов на андроид

CodeWheels –это гонки беспилотных роботов–автомоделей по кольцевому треку. Соревнования были созданы компанией МРобот для развлечения программистов всех возрастов и уровней.

Дети и школьники участвуют в соревнованиях CodeWheels Scratch, где используется графическая среда программирования, а студенты и работники ИТ–компаний могут участвовать в стандартных CodeWheels, где можно создавать программы для роботов в среде программирования Arduino IDE, используя высокоуровневый язык программирования C++.



Кстати, скачать бесплатно книгу по Intel Edison для новичка, выпущенную издательством Intel (написанную, кстати моим племянником) можно по ссылке — https://edugalaxy.intel.ru/index.php?act=attach&type=blo...

Участники–игроки учатся программировать беспилотных роботов–автомоделей. Все участники программируют одинаковых роботов РобоРовер М1 CodeWheels Edition, которые выдаются перед началом соревнований каждой команде. Робот, который в финальном заезде наберет больше кругов, чем другие роботы, выигрывает соревнования. Гонки проводятся по аналогией с гонками настоящих автомобилей по кольцевому треку (Формула 1, Формула Е, RoboRace и т.д.).

Роботом можно управлять со своего смартфона через специальное приложение. Программа очень проста - на последних соревнованиях маленькие дети гонялись...



Здесь можно прочитать, как начиналась эта программа - http://mrobot.by/blog/29–obrazovatelnye–nabory–po–robototekh...

Показать полностью 2
Отличная работа, все прочитано!