2015-06-08

Esp8266

Выходные провел за изучением замечательного чипа от компании Espressif - ESP8266. Сказать, что чип мне понравился это ничего не сказать. 

Киллер-фича чипа - дешевый wifi. Цена чипа при заказе у китайцев выходит около ста двадцати рублей. При этом на борту достаточно памяти чтобы залить прошивку позволяющую исполнять скрипты на lua! Да это реальный убийца Arduino! Теперь для создания прототипа устройства не надо знать даже Си!

Прикладной проект нашелся сразу - делаю новую версию поливалки для комнатных растений. Первая версия сделанная на базе virt2real приказала долго жить - не знаю, что с ней случилось, но wifi на этой железке с самого начала был не очень. Через несколько месяцев после запуска начались проблемы с доступностью устройства а вскоре устройство вообще перестало подключаться по wifi, хотя поливать продолжало исправно. Что случилось с устройством я при возможности постараюсь разобраться, но для задачи полива - virt2real - это явный оверхеад - поэтому когда вышел esp8266 я сразу понял где он мне понадобится.

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

Блок реле взял готовый, купленный у китайцев, блок питания на 7.5 вольт из запасов, стабилизатор на 3.3 вольта - готовый, от макетной платы. 

Устройство делает запрос на удаленный сайт в интернет раз в час, при этом скрипт на сайте  проверяет нужно ли поливать и если нужно сообщает об этом устройству, которое включает полив на нужное количество секунд.

Из недостатков - у ESP-01 выведены всего два GPIO - значит пока я могу поливать только два растения. Умельцы подпаивают прям к ногам чипа еще четыре проволчки чтобы получить дополнительные порты - мои скиллы пайки мне пока такого не позволяют - я чесно пытался, смог подпаять только один да и то не очень хорошо, поэтому с расширением количества портов я пока повременю, для прототипа мне пока портов хватит. Если нужно больше портов следует брать другие платы, благо сейчас их выбор достаточно большой.

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

 

Оставить комментарий

 
  2015-05-11

Оно летает

За майские праздники узнал много нового.

1. Перемотать бесколлекторный двигатель квадрокоптера - проще простого.

2. Если измеренный диаметр проволоки - 0.3 мм - не нужно покупать проволоку ПЭТВ-2 0.3 - в наименовании проволоки 0.3 - это диаметр медной жилы - а там еще есть лаковая изоляция, так что у ПЭТВ-2 0.3 диаметр оказывается 0.4 мм!

3. Вспомнил курс ТАУ политеха и то как работают ПИД-регуляторы.

И самое главное. Самое основное. ESCи нового только что собранного квадрокоптера требуют калибровки. Похоже, что мои ESCи были отрегулированы для работы с трех баночными аккумуляторами, а у меня используется - четырех-баночный. Из-за этого на моторы подавалось повышенное напряжение из-за чего коптер взмывал под небеса от самого нежного движения стиков. Из-за этого я поломал немало лопастей, из-за этого разбился в хлам первый коптер. 

После калибровки коптер стал послушным словно ягненок и устойчивый как скала (ну почти).

Еще есть над чем работать, но, в целом, прогресс есть. Вот видео одного из первых полетов с новыми настройками. Видео с квадрокоптера снималось при помощи телефона закрепленного вместо камеры.

 

Оставить комментарий

 
  2015-03-15

Дистанционное выключение компьютера с Pebble

Часы Pebble Watch удобны тем, что в руках программиста их можно использовать для самых разных целей. Мне например, часто бывает нужно включать или выключать компьютеры, офисные или домашние, в то время как я нахожусь от них на расстоянии. Сама задача включения и выключения компов на расстоянии является хотя и не тривиальной, но все-же, довольно простой, и в это статье не рассматривается, хотя, если кому нужно, оформлю в отдельный пост опискание того как это сделано у меня. Скажу лишь, что скрипты, которые это делают доступны из интернет и для того, чтобы выполнить действие,, например включить компьютер, я просто делаю HTTP запрос на определенный адрес.

В данном же посте я хочу показать пример как сделать запрос на HTTP адрес из часов Pebble. Вот код приложения. Он элементарный. Вот видео как оно работает:

 

Оставить комментарий

 
  2015-02-18

Загруженность эфира в Wifi диапазоне

Давно подзревал, что роутеры у соседей мне сильно мешают, но никогда не подозревал насколько. Самым загруженным оказался канал №1 - похоже все дешевые китайские роуторы включая мой используют его в режиме Auto - хотя, по идее, должны выбирать самый неиспользуемый канал. При помощи простенькой программы для телефона Wifi Analizer можно наглядно посмотреть какие сети есть поблизости и на каких диапазонах. Перенастроил свой роутер на незанятый канал - посмотрим как будет теперь работать.

 

Оставить комментарий

 
  2015-02-07

Откатываемся к старой версии прошивки на Nexus 7

Есть одна полезная программа которую я частенько использую и которая наотрез отказывается запускаться после последних обнавлений прошивки. Попытку запустить ее в эмуляторе успехм не увенчались, поэтому было принято решение откатиться на предыдущую прошивку. Оказалось что все довольно просто. Вот ссылка как это делается. Конечно, "просто" в случае если вы уже знаете как устанавливать средства разработки, пишу на всякий случай чтобы не забыть ссылку.

 

Оставить комментарий

 
  2014-10-31

Держатель планшета с беспроводной зарядкой

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

Однако, вроде бы, тривиальная задачка оказалась со своей спецификой. Во первых, на рынке оказалось на редкость мало нормальных креплений для планшетов на стену. Даже на ebay, где, казалось бы все есть, найти подобное я не смог. В основном идут крепления для айпедов. Нашел искомое у американской компании Dockem - элементарнейшее пластмассовое крепление на стену которое они продают за $15. Но, выбирать было не из чего -- других вариантов я не нашел. Заказал несколько таких креплений через Бандерельку - напрямую в Россию Dockem посылать не захотел.

С беспроводной зарядкой дела обстоят проще - китайцы на ebay предлагают широкий ассортимент DIY плат, мне больше всего понравилась вот такая. Плата плосская, питание 5В подается через разъем микро USB. 

Крепление планшета крепится к стене при помощи специальных клейких полосок которые идут в комплекте, клеят, кстати, довольно надежно. Зарядку прикрепил между креплениями при помощи двустороннего скотча.

Готовый Proof of concept снял на видео:

В реальной ситуации плату можно спрятать за декоративной накладкой, питание будет замуровано в стену. 

Последнее время стал задумываться о 3d принтере - такие элементарные вещи как всевозмоные крепления для устройств, корпуса, крючки вполне можно было бы печать самому.

 

Оставить комментарий

 
  2014-10-19

Последний полет квадрокоптера

В интернете полно историй о том как улетают квадрокоптеры. Вот у Экслера тоже улетел недавно. И каждый раз читая подобное, думаешь, вот уж со мной никогда такое не случится...

К третьему полету я подготовился основательно - настроил полетную камеру, правда телеметрию на нее не смог вывести. Вывел изображение с камеры на очки. Поставил новые пропеллеры в замен сломанных, заменил ногу, руку, зарядил аккумулятор.

Квад взлетел как-то уж очень шустро, сразу набрал приличную высоту и превратился в точку на небе. Поляна была довольно просторная, высота набралась как-то довольно шустро а на высоте оказалось, что дует довольно сильный ветер. Квад стало сносить по ветру в сторону леса.  

Но у меня же был - визуальный контроль в очках подумал я! Не беда разберемся. Но камера была направлена почти прямо вниз. Когда под тобой только деревья понять куда летим почти нереально. Особенно когда квад раскачивает ветром.

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

Очень надеюсь, что аппарат не свалился кому-нибудь на голову - запускал я на Кумысной Поляне в районе полигона СГТУ. Места там безлюдные. Именно поэтому такие аппараты нельзя запускать в городе.

Последние координаты записанные телеметрией - 51.546253, 45.911398 но сам аппарат пролетел судя по всему гораздо дальше. Побродил по лесу, ничего не нашел.

Какие можно сделать из этого выводы? Никогда не нужно спешить с запуском, особенно в ветреную погоду. Ошибку с перепутанным управлением я осознал только что. Полетную камеру нужно направлять так, чтобы был виден горизонт, и, конечно нужно сажать аппарат как только становится ясно что дело выходит из-под контроля. В любом случае, лучше оказаться с грудой обломков, часть из которых еще можно пустить в дело, чем совсем без всего.

Соберу ли я после этого новый аппарат? Обязательно!

 

Оставить комментарий

 
  2014-09-25

Первый полет квадролета

Окончился крашем, конечно. Но, поломанная углепластиковая ручка, держащая мотор, была быстра пофиксина деталями из детского конструктора а пропеллеры заменены новым комплектом. Благо из электроники ничего не пострадало.

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

 

Оставить комментарий

 
  2014-09-06

Особенности светодиодного освещения и массового сознания

Проектирую освещение себе в квартиру. Особенность состоит в том, что освещать квартиру я хочу при помощи светодиодных светильников. Светодиоды, на мой взгляд, сейчас, самый оптимальный источник света, но есть одно но. Хочется чтобы освещение включалось плавно. Не то чтобы это было обязательным требованием, но почему бы и нет. Хочется и все тут.

Наверно все сталкивались с тем, что когда ночью идешь в туалет, щелкаешь выключателем и... бах... вспышка, мгновенно слепнешь, пока глаза не привыкнут к яркому свету... 

Но, блин, на дворе двадцать первый век, почему бы не регулировать яркость лампочек по своему выбору? Скажем, можно сделать так, чтобы, если на дворе глубокая ночь, умный выключатель включал свет плавно. Или чтобы свет включался сам, когда ты идешь по коридору после того как срабатывает датчик движения. Или чтобы свет в помещении вообще ночью не выключался полностью а слегка подсвечивал путь... Да можно придумать тысячу способов запрограммировать управление светом!

Казалось бы, такая пустяковая задача легко решается - собираем небольшой контроллер, например на ардуине, который будет выдавать ШИМ сигнал, который будет затем поступать на усилитель мощности выдающий импульсы постоянного тока модулированные ШИМ сигналом на мощные светодиодные светильники и дело в шляпе!

Но оказалось, что на рынке нет таких лампочек которые можно использовать таким образом! Все, поставляемые на рынок лампочки, имеют внутре драйвер, который преобразует входное напряжения 220 вольт в напряжение для питания мощных светодиодов. На рынке есть все - мощные светодиоды отдельно, есть мощные блоки питания с ШИМ регулированием, есть даже наборы для самостоятельной сборки светодиодных лампочек... Но... нет только лампочек без драйвера.

Спросите, зачем покупать лампу, если можно купить светодиодный модуль? Все дело в том, что, хотя, у светодиодов КПД в несколько раз выше, чем у лампы накаливания, но, в силу того, что светодиод светит только в видимом диапазоне, то при КПД 20% и потребляемой мощности в 10 Ватт - только 2 Ватта превратятся в видимый свет - 8 Ватт же пойдут на нагрев кристалла, греть который очень не желательно, поэтому светодиодные светильники требуют хороших радиаторов для рассеивания тепла. У ламп накаливания 80% рассеивается в виде инфракрасного излучения а только около 15% остается на самой лампе, да и ей это особо не вредит. Поэтому, я не могу просто взять и купить светодиодный модуль, нужен еще и радиатор. Некоторые умельцы используют радиаторы от мощных транзисторов и микросхем - получается откровенный колхоз. Особенно предприимчивые предприниматели продают светильнички поинтересней, но за неинтересную цену да еще и с драйвером, который мне совершенно не нужен.

Идеальным вариантом была бы уже собранная лампа без драйвера. Я прошел по всем близлежащим магазинам - продавцы только крутят пальцем у виска разводят руками и говорят что такого у них еще никто не спрашивал.

Видимо, мое видение умного дома несколько отличается от общепринятого. Хотя, мне совершенно не понятно, почему для обычных лам накаливания выпускаются диммеры а для светодиодных ламп нет?

При этом, самый доступный способ диммировать светодиодные лампы - это использовать обычный диммер для ламп накаливания и специальную схему, которая будет преобразовывать пониженное напряжение в доступную для питания светодиодов форму, видимо, тот же ШИМ. Такие диммируемые лампочки стоят как десять недиммируемых, а работают откровенно хреново. Не понимаю, почему я не могу просто купить в магазине обычную светодиодную лампу, но без ненужного мне драйвера и запитать как мне хочется? Что, неужели у меня одного такие заскоки?

 

Коментариев: 3

 
  2014-09-03

Firefox OS

Приобрел знаменитый телефон ZTE Open C - первый телефон с операционной системой Firefox OS. Учитывая, что операционная система Firefox OS еще сильно сырая, то телефон предназначается в основном для разработчиков. Кроме того, поскольку ниша смартфонов прочно занята устройствами под управлением Android и iOS, то для завоевания рынка компания вынуждена продавать телефон практически по себестоимости. Я взял телефон его на ebay за сто баксов, но, говорят есть такие, кто купил его за $70 - это очень дешево за устройства на таком железе.

Операционная система произвела на меня двайственное впечатление. С одной стороны вроде всё работает. С другой стороны работает довольно медленно, что и ожидалось от интерфейса на JavaScript. Вообще, идея с JavaScript на мой взглят довольно здравая - это популярный язык программирования. использование JavaScript сразу привлечет в платформу огромное количество разработчиков. С другой стороны, на JavaScript невозможно эффективно работать с оборудованием, а значит с навороченными играми, нестандартными коммуникационными программами типа Skype - на этой платформе можно распрощаться. 

Самое странное то, что производители по каким то своим соображениям пока не планируют выпускать NDK - а без доступа к аппаратным ресурсам на языках низкого уровня о популярности платформы можно забыть - не выстрелит. Впрочем, я всё еще надеюсь что разработчики передумают и реализуют NDK, если они это сделают то связка NDK+JavaScript была бы взрывной смесью, способной завоевать мир.

Пока же будем следить за развитием системы.

Но ZTE не была бы ZTE если бы не выпустила для телефона прошивку на Android - иначе их бы их просто забросали возвратами ибо FireFox OS в текущем исполнения абсолютно неюзабельна. Когда я перепрошил телефон на Android это стал вполне приличный телефон. За сто баксов, с Android Kit Kat, отдал ребенку чтобы ходить с ним в школу - самое оно и машинка хорошая и потерять не так жалко!

 

Оставить комментарий