Arduino — это общее название для серии аппаратных платформ (микрокомпьютеров) на основе микроконтроллеров ATmega.
Эти платы могут использоваться как для создания полностью автономных устройств/приборов/игрушек, так и подключающихся к компьютеру и взаимодействующих с каким-либо программным обеспечением.
Опишу в одном обзоре зачем и кому всё это надо, пару устройств и некоторые дополнения к ним.
А заодно, не отходя от кассы, вас ждёт возможность лично «причаститься к техническому прогрессу».
Оффтоп
Тех кто дочитает до конца — ждёт небольшой интерактив и наглядная демонстрация с возможностью потереть шаловливые ручки, потыркать кнопки и немного помучить результаты моей скромной деятельности.
Вводная
Начну с того, что Arduino — это открытая платформа, а это означает что все принципиальные схемы, рисунки печатных плат, исходные коды прошивок, программное обеспечение и т.д. находятся в общем доступе и при желании любой может не покупать эту плату, а самостоятельно собрать из доступных/найденных/купленных радиодеталей, внести свои изменения, скачать прошивку и получить готовое устройство. А самое главное что и купленный и самопальный вариант можно использовать и применять совершенно бесплатно, без каких-либо лицензионных ограничений.
По технической части
Платы Arduino и их аналоги представляют собой набор из собственно платы, на которой размещён микроконтроллер ATmega (разных версий) съёмный либо впаяный, с которого разведены несколько цифровых и аналоговых (ШИМ) вводов-выводов, а также сопутствующую обвязку, как правило это:
— токоограничительные резисторы на вводы-выводы
— несколько светодиодов-индикаторов
— резонатор (кварцевый или керамический)
— кнопка сброса
— стабилизатор напряжения +5в и/или +3.3в
— микросхема отвечающая на соединение по USB (может не быть в зависимости от версии)
— разъём USB (зависит от версии)
— разъём внешнего питания (зависит от версии)
— на версиях с внешним разъёмом питания — входной защитный диод от переполюсовки
По программной части
Имеется собственная среда разработки, в которой можно писать программы («скетчи») на Си-подобном языке и который люто ненавидят AVR-щики, называя её «птичий язык».
Это среда, конечно же, имеет свои недостатки, не даёт полного контроля над всеми возможностями процессора, но при этом очень сильно упрощает жизнь и ускоряет процесс моделирования. За удобство надо платить, да.
Скажу, что совершенно не обязательно её использовать, можно писать на чём угодно, например, на том же GCC и WinAVR, благо, сердце Arduino — тот же самый AVR.
А самые заядлые хардкорщики могут писать под Ардуино на Си и ассемблере.
Кому и зачем нужно?
Кому? Глупый вопрос — мне конешно :)
Зачем? Для реализации творческого процесса.
Если серьёзно, то на основе этих платформ можно соорудить практически всё что угодно (в разумных, конечно, пределах) начиная от охранной системы с кучей функций, типа включения сирены и отправки СМС, и заканчивая разнообразными контрольно-измерительными приборами.
Если несерьёзно, то при наличии фантазии и пары сервоприводов можно соорудить какую-нибудь игрушку, поворотное устройство (следящее за солнцем, например, или за фонариком), автокормилку для рыбок, механическую руку, устройство для заварки чая, наливайку для пива и многое другое :)
Преимущества
Нанотехнологии для домохозяек :)
Микроэлектроника для ленивых — без паяльника и пайки :)
Можно действительно собрать реально действующий прототип какого либо устройства, не прибегая к пайке (правда, чтобы совсем уж не прибегать к пайке придётся покупать, покупать и покупать простейшие вещи, которые можно легко сделать вручную).
Помимо простоты технической части, существует большая
официальная библиотека примеров (программ, «скетчей») для Arduino с помощью которых можно делать те или иные вещи. Не говоря уже о неофициальных, любительских проектах.
Однако, следует оговориться, что эта простота не отменяет наличия, хотя бы минимального количества мозгов и прямых рук. Порой приходится посидеть и серьёзно подумать над реализацией простейшей вещи, которая штатными средствами либо ну никак не хочет получаться, либо просто не предусмотрена…
Что имеем на деле (варианты, версии, плюшки, фотки)
Заранее прошу прощения за качество фотографий — в отсутствие, на данный момент, нормального фотоаппарата, они сделаны вебкамерой.
Моя версия
Arduino Uno куплена на Алиэкспрессе, различий с версией которая на BiC практически не имеет, разве что на фотках BiC присутствует надпись «made in Italy» (что, естественно, не так :))). Аппаратно обе версии соответствуют первой ревизии оригинальной Arduino Uno.
Я позиционирую лично для себя это устройство как основную плату для проектирования. Точнее для максимально быстрого прототипирования, особенно в сочетании с
мегашилдом:
На фото может быть не очень понятно, но я поясню, мегашилд не имеет на своём борту никаких электронных компонентов (за исключением одного светодиода и пары резисторов), и представляет из себя очень удобно разведённую схему для подключения датчиков, сервоприводов и т.д. При этом все стандартные выводы так же сохранены. Плюсом является стандартизированная организация выводов — например для подключения сервоприводов не нужно делать разветвитель от «родных» контактов Arduino на питание и землю — всё уже выведено на шилде группами по 3 пина: земля-питание-сигнал.
Вот как выглядит этот «сэндвич»:
К слову, мегашилд с BiCa приехал со слегка погнутыми ножками, т.к. был просто брошен в большую посылку с антистатическом запаянном пакете, без всякой дополнительной защиты. При вскрытии пакета оказалось, что помимо погнутых ножек, вся плата затыкана отпечатками китайских пальцев густо намазанных акриловым клеем :)
Следующая плата
Arduino Nano. Не очень удобна для проектирования, но ввиду исключительно маленького размера идеальна для конечного устройства. Особенно если это устройство планируется использовать совместно с компьютером — т.к. она так же имеет USB выход.
Для конечного устройства в котором не предполагается контактов с внешним миром можно использовать исключительно дешёвую плату
Arduino Pro Mini. Минус этой платы в том что для её программирования нужен либо переходник USB-serial, либо ещё одна плата Arduino с USB выходом. Своей фотки нет, даю с ДХ:
Примеры использования
Контроллер штангенциркуля + вывод на дисплей от Нокии 5510(3310)
из обзора про штангенциркуль
Термометр и гигрометр на основе датчика DHT11 (фигня, DHT22 лучше, но на BiC нету) и вражеского неправославного LCD дисплея HD44780 (нет поддержки кириллицы):
Моторизированная вебкамера — управляемая с компьютера (подробности см. ниже)
[Подвал]
Официальный Ардуинский
сайт arduino.cc
Arduino Uno www.buyincoins.com/details/high-quality-arduino-uno-atmega328p-pu-module-atmega8u2-avr-usb-cable-board-product-10252.html
Arduino Nano www.buyincoins.com/details/arduino-nano-v3-0-avr-atmega328-p-20au-moudle-board-with-usb-cable-product-10178.html
Arduino Pro Mini www.dealextreme.com/p/arduino-pro-mini-w-atmega328p-electronic-building-blocks-interactive-media-improved-version-104332
Мегашилд www.buyincoins.com/details/perfect-high-quality-new-arduino-sensor-shield-digital-analog-module-servos-v4-product-9030.html
Макетка (беспаечная)
www.buyincoins.com/details/high-quality-mini-solderless-breadboard-bread-board-400-contacts-available-product-11082.html
Акселерометр www.buyincoins.com/details/mma7361-angle-sensor-inclination-accelerometer-acceleration-module-arduino-speed-product-10248.html
Двухстрочный 16тисимвольный
LCD дисплей www.buyincoins.com/details/new-character-lcd-module-display-lcm-1602-16x2-hd44780-blue-blacklight-product-9000.html
Сервопривод SG90 (рулевая машинка)
www.buyincoins.com/details/1x-9g-micro-servo-for-rc-helicopter-plane-futaba-hitec-product-3457.html
Датчик температуры и влажности DHT11 www.buyincoins.com/details/new-dht11-digital-temperature-and-humidity-sensor-product-6732.html
Проводки-коннекторы (40шт)
www.buyincoins.com/details/40pcs-dupont-wire-color-connector-cable-line-1-pin-new-product-7224.html
[Интерактив]
К чему всё это может привести, можно
посмотреть и даже пощупать (да, да!)
здесь (шибко не издевайтесь, комп старенький, при большом онлайне будет подтормаживать)
Работает. Антимат потихоньку совершенствуется, не пускает матюки, заодно убирает мусор типа «тест», «111», «ололо» и прочих «ракодилов».
Выражаю огромную благодарность всем неравнодушным людям, которые помогали советами и кодом, без которых я бы так быстро не «допилил» игрушку до приемлемого уровня.
А заодно и матершинникам, которые сподвигли сделать антимат, и безостановочно снабжали меня своей фантазией, когда изощрялись пролезть через фильтры — благодаря вам я теперь знаю практически все ваши уловки :)))
Кот, по просьбам :о)
Шедевр называется «Котэ крутен» © неизвестный автор
Дополнительная информация по просьбам
Q: Как долго собиралось?
A: Железо — примерно 15 минут, программная часть 3-4 вечера, из-за своих же ошибок.
Q: Во сколько обошлось?
A: С учётом всех скидок — примерно в 25$ (считая дисплей бесплатным, т.к. самоделка)
Q: Какие языки программирования использовались?
A: Родной ардуинский для прошивки и вижуал басик 6.0 для web-com прокси.
Q: Можно более подробно о материальной и программной части?
A: Матчасть:
— ардуино уно (мегашилд можно исключить)
— две сервы (рулевые машинки по ссылке из обзора)
— вебкамера (любая USB)
— компутер
Программное обеспечение:
— среда разработки, например родная Arduino
— из программного комплекта ардуино — две библиотеки — serial и servo
— если просто рулить самому — достаточно виндовс терминала
— если так как у меня: апач, пхп, рамдиск (виртуальный диск в памяти для ускорения и разгрузки винчестера), веб-ком прокси (самопальная), и любая программа для вебкамеры, которая либо поток шлёт, либо сохраняет картинки на диск, либо регистриуется аккаунт на смотрикоме и транслируется видеопоток, без нагрузки на свой комп (но будет задержка секунд 7-10)
Постскриптум 2013
Сайт уже больше не представляет из себя одинокую страничку, всё переведёно на CMS движок, комп тот же, камера та же, экран — уже другой, в составе шилда, от USB я отказался, перевёл всё на LAN, сервы отработали почти полтора года и до сих пор живы.
Убедительная просьба ко всем кто участвует в «Интерактиве» — оставьте при себе свое воспитание, не стоит писать матом, помните что Вы взрослые люди, а у автора могут и дети подойти к веб-камере.
Модератор.
Буду стараться: о)
Плюс кулхацкеры пытаются ломать :))
собираем в
спасибо, конечно, но кто в теме прототипирования, те отлично знают где добыть все эти компоненты. (я сам давненько уже «падсел на микрасхемы»)) остальным ты ничего не докажешь)))
да кстати по ссылкам в конце обзора — кому интересно, на алибабе ценник погуманнее! ask for!
На момент когда покупал на Али Уно была по 18 — самое меньшее что нашёл.
Через неделю глянул на БиКе — примерно столько же, но с учётом скидок вышло 16 с копейками.
Супер обзор, интересный и близкий сердцу предмет исследования, умница-автор. Спасибо за доставленный по адресу позитив!
Сервак не тянет всем картинку отрабатывать, надо было дефолтное обновление ставить пореже. Ща поправлю, мож полегче будет.
А без обработки и 100мегабит не хватит :))
И на память нагрузка тоже пошла :) Прям как на настоящем сервере :))
onload с body уберите, src у картинки можно оставить пустым.
Отпустит ваш сервак: ))
Пока, правда, не понял почему должно отпустить. Основная нагрузка — на скрипт который картинку выдаёт.
Диск не нагружен — картинка ложится на рамдиск, всё в памяти.
Всё… дошло… теперь запросами сервак не дрючит по таймеру, а ждёт до упора пока картинка не загрузится.
В моем коде перезагрузка страницы вешается на событие «картинка загружена». Т.е. браузер не будет дергать сервер, пока не загрузит предыдущую картинку.
Если не очень понятно объяснил, то попробуйте почитать, как работает setTimeout в JS.
UPD. Ну вы уже сами все поняли: ))
Но зато если сервак картинку один раз не отдал — то кирдык…
Ща прикручу кнопу для ручного обновления…
www.seeedstudio.com/depot/
вот для самопальшиков развал!!! хотя цены и не «самые-самые»
а то слепил бы подобное 0_щ
а по «клубнике» разрабы говорят плата готова… «даешь ката в абнимку с расспбери»… аа, в абжимку, ё
0_0
ардуино — haXor LEGO))
не хватает в обзоре такого шилда, считаю очень полезного, релейный модуль
8 реле 250V 10A
умный дом на коленке. добавляешь шилд 1-wire к нему пяток копеечных DS18b20! 1 доллар за 3 штуки, а предлагаемый здесь DHT11 3$ за штуку (зато влажность меряет)))
Я обязательно тоже такое ХОЧУ СДЕЛАТЬ!
Что за плата где ее взять, т.е. название!
насчет Ленты она продается метрами, ее же ведь резать можно?
А DHT11 — шлак… Не стоит того. Разве что в сигнализацию или еще какой удалённый индикатор/регистратор.
DS18b20 цифровой термометр -55°C to +125°C
Петя андерсон по 7.95 толкает 1проволочный КИТ
да вот тема ещё забавная Mama Shield типа стэкер.
страница, *ять 1(адин) мануала, в середине:
± 0.5°C accuracy from -10°C to +85°C (а не 0...+25)да и при 105° с тем же 9-битным разрешением не сильно от «эталона ± 0.5» отходит. уж перепаяно их го-оры!
У DHT заявлено -+2 градуса, это слишком, мне думается.
Кстати DS18S20 —
А где такой в инете купить можно?
ЗАТО. закрытое административно-территориальное образование.
зато DS 18B20 имеет перестраиваемое 9-12 битное разрешение! собственную память, адресность!
verg, попробуй в поисковик забить название, если найдешь дороже 1$ за штуку — обращайся.
Контроллер управляет включением/отключением нескольких электроцепей (пара обычных электрических розеток с включенными в них лампой и аквариумной помпой) по таймеру.
До недавнего момента использовал для этого таймеры из IKEA, но они пришли в негодность, и пока я не приобрел новые, можно направить креатив в нужное русло.
Программировать умею, поэтому с программной частью проблем не должно возникнуть. Интересует что именно (полный комплект) понадобится для решения моей задачи, да так чтобы еще осталось немного ресурсов для дальнейшего баловства.
А еще есть несколько вопросов:
1. Я правильно понимаю, что возможна схема, когда подключение к ПК необходимо лишь для «заливки» программы на плату? Тобиш после реализации нужного мне алгоритма я просто закидываю его в память контроллера, запитываю его, и радуюсь? Или же программа всегда должна работать на ПК, а контроллеру лишь посылаются управляющие сигналы?
2. К платам какие-нибудь корпуса продаются, чтобы после реализации прятать их от внешнего воздействия?
— Ардуино Уно
— мегашилд
— релейный модуль
— куча проводков.
Ну и для сильно нагруженных цепей лучше не расчитывать на релюшки модуля, а закупить посильней, реле через реле.
Соответственно рассчитать что надо для питания реле и прикупить соответствующий питальник. На DX AC/DC c 220в и на 5в, и на 12в, и прочих просто валом.
1. И так и так. Для заливки USB обязателен (можно конешно вырвать микруху и зашить её понипрогом с лпт, но зачем?). А дальше можно работать по заложенному алгоритму. Либо корректировать работу с компа. Необязательно по USB, есть и GSM и Bluetooth модули.
2. Корпуса в любом радиомагазине есть, а герметизация и защита от электромагнитных импульсов и радиации — это всё на усмотрение автора :)
1. С первыми двумя компонентами более-менее понятно (хотя название модели или ссылка на мегашилд не помешает), а вот релейный модуль какой именно нужно заказывать (модель/ссылка) и как он цепляется к мегашилду?
2. В релейном модуле, как я себе представляю, будет 1 или несколько реле, которые контроллер будет переключать. Соответственно, в реле заводится один из контактов (земля?) электроцепи, ведущей к розетке. Все верно?
3. Пока сильно нагруженные цепи создавать не буду (светильник на 24Вт и помпа на 2Вт). В этом случае достаточно будет релейного модуля без дополнительной подпитки?
4. В Arduino Uno уже есть USB выход, верно?
5. Как обеспечивается работа таймера (чтобы включать реле по времени суток) на контроллере, если он работает автономно — полагаю, в нем есть свои часы? Они неавтономны, тобиш тикают только при запитывании контроллера с USB или внешним блоком питания?
6. Какой БП нужен для питания Uno? Разъем, вольтаж, мощность.
Релейный модуль, ну скажем вот этот на 4 реле www.buyincoins.com/details/new-style-5v-4-channel-relay-module-switch-board-for-arduino-pic-arm-avr-dsp-plc-product-11201.html. Цеплять например проводками с разъёмами (опять же по ссылке из обзора). Можно шлейфами от материны (от морды системника или которые CD-IN от старых CD приводов). Можно в радиомагазине накупить гнёзд/разъёмов SMD нужного количества ячеек и сделать свой шлейф под конкретную задачу.
2. На реле по ссылке выше 4 разъёма. Само реле srd-05vdc-sl-c — надо смотреть спецификацию. Выяснить какой ей ток нужен. Хотя даже если и небольшой, в любом случае такие вещи лучше запитывать не напрямую от ардуины, а от отдельного БП. Землю БП и Ардуины соеденить.
3. Скорее всего да. См. п.2.
4. Да.
5. Без питания ничего не работает. Есть свой таймер, считает «тики» после включения. По ним можно считать всё что угодно.
6. Любой 6-12в. Можно от роутера какого-нибудь. Разъём круглый, помоему 4.5мм (но это не точно).
Как-то так. Вроде всё учёл.
Причем вся эта схема будет собрана даже без пайки, пока я не захочу расширить функционал, например, выводом текущего времени с Arduino на дополнительно приобретенный LCD.
Все верно, ничего не упустил?
Для упрощения и устранения обмена данными с компом можно задать время как на обычных часах. 2 кнопки и два или три диода.
Нажатие на первую кнопку — часы, на вторую — минуты. Первый диод «отмигивает» часы после нажатия кнопки, второй — минуты. Или лучше второй десятки минут, а третий минуты после десятков.
Мегашилд можно устранить для удешевления. Я его рекомендовал исключительно в качестве удобства разработки.
Я так понял, мегашилд полезен для дальнейшего расширения конструкции, поэтому пусть будет.
Еще раз спасибо за ответы! Будем пробовать :)
Можно конечно таким образом передавать и сам алгоритм работы — какую нагрузку в какие моменты включить/выключить. Полет фантазии тут безграничен. Нужно только знать что такая связь иногда может давать сбои, поэтому надо предусмотреть защиту от «мусора», хотябы простую контрольную сумму.
думаю, в будущем сделаешь еще и автоматическую кормушку, и тебе понадобится программировать еще один канал.
Пробросить порт и смотреть состояние. Можно даже управлять кашей в микроволновке — разогреть к приходу с работы: о))
Насчет каши — не получится… микроволновку-то включить можно, но кто в нее кашу положит? А если утром положить, так она спортится за день…
Так скетчей гора. Там на уровне вебстраничек можно сделать, незная ничего о тцп-ип. Запросил страничку №1 — включилось реле №1 и т.д. Статусы тоже проверить можно отдельной страничкой — вывести на неё состояние входов-выходов, датчики и т.д. Самое главное в этом случае не нужен включенный комп (250+ Вт). А роутер почти и не ест ничего.
Эххх… Не инженер вы… Надо поставить кашу в микроволновку, а микроволновку в холодильник. Всего-то делов.
{хлопает стоя}
У микроволновки принцип действия другой же. Она никого не греет. Она генерирует вихревое электромагнитное поле (токи Фуко) которое заставляет молекулу воды (которая представляет собой диполь) вращаться и таким образом нагревать всё вокруг себя.
И не говорите мне про лёд — вы же не в морозилку кашу ставить собираетесь?
Короче, много минусов…
Лучше использовать дистанционно управляемое исполнительное устройство типа «жена».
А включать разогрев каши за три часа до прихода домой — это какбы… незнаю… некоторая поспешность…
Кстати, думал о том, как бы вынести один релейный модуль в другую комнату или коридор. Придумал поместить его вместе с RJ-45 или RJ-11 розеткой (которую легко расшить на пины модуля) в пластиковый корпус и подавать питание с управляющим сигналом через витую пару из комнаты, где стоит Arduino. Может, есть другие интересные способы?
Конешно есть :)) Можно мигать лазером в фоторезистор :))))
А то понимаешь, кто-то воспользуется пультом от телевизора в момент передачи данных и устройство просто сойдет с ума а компьютер и не узнает об этом посчитав передачу успешной.
Есть опыт печальный — микросхему просто разнесло на части, она даже не была подключена к питанию.
Можно оставить просто стабилитрон — в случае смертельного импульса он помирает, но не дает ему пройти дальше. Но и тут есть засада — пока стабилитрон «сгорит» он все же может пропустить часть импульса — напряжение на миг но может превысить номинал, для этого нужен резистор между стабилитроном и входом микросхемы, который с емкостью входа/выхода образует RC-цепочку препятствующую быстрому росту напряжения, но как понимаешь это ограничивает быстродействие схемы в целом но для сигналов управления реле этого вполне достаточно.
Я там как раз Уно покупал. Но там поштучно дороже выходит. Если оптом брать — то некоторые вещи дешевле.
Есть даже электрохимические датчики. Можно алкотестер замутить :) Или газоанализатор/газосигнализатор. На кухню против утечек, если что — газ перекрывать.
Или датчик шума — как только соседи разгулялись — перекрыть им отопление :))))
а ассортимент, конешно, да, богат
Сам повелся на ассортимент а вот теперь погуглил на тему этого магазина и оказалось, что они в последнее время занимаются банальным кидаловом.
— ардуино уно (мегашилд можно исключить)
— из программного комплекта ардуино — две библиотеки — serial и servo
— две сервы (рулевые машинки по ссылке из обзора)
— вебкамера (любая USB)
— компутер
— если просто рулить самому — достаточно виндовс терминала
— если так как у меня: апач, пхп, рамдиск (виртуальный диск в памяти для ускорения и разгрузки винчестера), веб-ком прокси (самопальная), и любая программа для вебкамеры, которая либо поток шлёт, либо сохраняет картинки на диск, либо регистриуется аккаунт на смотрикоме и транслируется видеопоток, без нагрузки на свой комп (но будет задержка секунд 7-10)
можно запилить контроль лампы, добавить датчик освещенности, например лампа не разгорелась, отключается дроссель, пауза минута, пробуем ещё раз и т.д.
хотя если вся задача сводится к двухрежимному контролю (типа 12\12 и 18\6) таймеры из икеи, по мне, лучше подходят.
вообще, уважаемое сообщество, я предложил бы ВСЕМ, кто всерьез решил заняться ардуиной, собраться в какой-нибудь теме на местном форуме, заделать «список покупок», и взять сразу оптом. найдем продавца повменяемее и проведем с ним воспитательную работу.
скоро этот обзор «провалится» вниз, и найти его станет сложнее, где-то ещё организовывать подобное я не хочу, да и тут хватает любителей «катов и пантоф» которые отравят любую тему и загадят флудом любой самый интересный топик. С U!
как пример (для СИдуины)
Seeeduino Stalker — Waterproof SolarPower enclosure
ОПА?
на сидуиновском хранилище РАСПРОДАЖА, паспорт китайского хацкера продают даже ))))))
ардукоптер на гуглькоде
видео
Testflights Acro Mode ArduPirates Quad
литература для начинающих на русском
13-15 декабря
двое суток продержался благодаря «кота-Аа»
ну все пока-пока!
Я пока не вижу смысла. Думаю что дешевле чем на BiC, особенно с учётом 15% скидки, врядли найдётся. Я не нашёл по крайней мере. Выпрашивать скидку там где дороже стоит — в итоге так же и выйдет, тем более у нас тут 60 человек максимум желающих, а на солидную скидку надо и количество соответствующее.
А конкретных ссылок на алибабу я так и не увидел, хотя и намекал.
Вы, alteral, между прочим и писали что там дешевле.
Прошу пруф. Теперь явным образом, без намёков.
Нашел я прода, по 15$ за UNO просит, если мелким оптом, цены будут однозначно ниже чем на БИКе! Если хотя бы человек 10 наберется, стартуем до НГ.
Система приобретения обычная, через ESCROW, после набора прод корректирует цену.
Просьба написать, кому какие шилды, платформы, датчики. впринципе, по ассортименту, есть ВСЁ, кроме каких нибудь супер-редких форков и, естественно, самопальных шилдов.
Только для участников PlusPda.ru (личный профит исключен!)
Если я правильно понимаю, то ты сделал по следующей схеме:
Закепчить фотку, сохранить в память, php переводит её в base64 и отдаёт на клиент с соответсвующими хедерами.
Если по-другому, то сам расскажи, если это не тайна ;)
Вообще, в идеале интересует следующее:
На домашнем маке (читай unix) крутится демон, слушающий установленный входящий порт и отдающий видео-стрим в браузер (или как у тебя, обновляемая картинка, большой fps не критичен, хотя звук не помешал бы), но(!) только по запросу, чтобы не забивать камеру всю время, чтобы, скажем, для скайпа была свободна и чтобы лампочка не горела круглыми сутками. Т.е. при отключении клиента оставлял камеру в покое.
Буду дико признателен, если не поленишься описать серверную сторону :)
Тут без твоего лысапеда не обойтись – перепробывал уже десятки программ, нашёл только одну подходящую, но она откровенно не стоит 26 зелённых.
Такой вариант был бы проще в разы.
Но я пошёл в сторону усложнения и большей ралтаймовости.
Никуда пхп никого не преводит, он генерирует картинку на лету по запросу ява-скрипта. Там всё есть в коде странички чтоб увидеть что к чему — рандом прикручен как раз для того чтоб у картинки менялся сорц — иначе обновления не будет.
Фотка валится на рамдиск дважды в секунду. Оттуда её подхватывает пхп по запросу.
Камера в любом случае будет занята всё время. Если драйвер одной из программ занял этот ресурс — всё кирдык, другим хода нет. Только останавливать одну программу вручную, и запускать вторую.
Исходник прокси проще некуда — ловим с сети — предаём на ком-порт (виртуальный ардуинский). В сеть локально на 127.0.0.1 передаётся сокетами открываемыми на пхп.
Подробней будет на хабре, в течение недели, когда в руках будет нормальный фотик: о)
Надеюсь увидеть на хабре реализацию слушания порта (apache?) и сваливание фотки в рамдиск.
Раньше времени нашли, ещё не обкатано и статья не готова. А там уже онлайн под сотню :))
http://www.aliexpress.com/product-fm/445908428-Arduino-6-DOF-Programmable-Clamp-Robot-Arm-Kit-Ready-to-Use--wholesalers.html
надеюсь оправдает себя за такие то бабосы
Нереальный убой… 5 сервомашинок с металлическим редуктором на том же BIC выйдут по 6 баксов — итого 38$, ардуина уно 16$, питальник от зызы 5В/2А на DX за 3-4$. Итого 58 бачей.
Железячки — оно да, придётся немного пофантазировать, но нет там ничего такого что не делается за пару вечеров из алюминиевого уголка из строймагазина за 100р/2метра.
А переплачивать овер 6 косарей за лёгкое рукоблудство с паяльником и напильником — это я щитаю сверх любой и всякой разумной лени.
Остальное, что хотел — TellyMate, кучу рассыпухи и Ethernet — закажу в конце месяца после того, как AdMob пришлет оплату =)
ありがとう!^_^
nnm.ru/blogs/e-troll/uchebnoe-video-po-arduino-s-dzheremi-blyumom/#cut
и второй
nnm.ru/blogs/e-troll/vtoroy-videourok-po-arduino-dlya-nachinayushih-s-dzheremi-blyumom/#cut
и для торрента 10 урокjd от джереми с переводом на русский
rutracker.org/forum/viewtopic.php?t=3942168
надеюсь ссылками на др сайт не кого не обидел, но инфа редкая и злобно полезная.
Cильно греется сразу после включения стабилизатор питания AMS1117 (на ощупь >60 градусов точно, я конечно понимаю, что по даташиту максималка 120, но всё же боязно) при питании от USB (и это без нагрузки!!! если конечно не считать за нагрузку SMD сверхяркий светодиод питания). Пока ещё ничего не сгорело, но, боюсь, что это только пока.
Кроме того, при пересылке так же погнулись ноги ICSP (не смертельно — вправил на место пинцетом) и контактные колодки (или как там они правильно называются).
В целом симптомы схожи: флюс на обратной стороне, сильный нагрев, гнутые контакты. Но есть и исключения: дорожки не перерезаны (т.к. заказывал одну), кварцы вроде норм припаяны («сидят» низко и не болтаются) и заусенцев на краях вроде нету.
В общем, будьте бдительны и не заказывайте помногу, чтоб не «попасть», как мы!
А вот насчёт нагрева, да, буквально сегодня заметил — завёл 12В внешние — стаб разогрелся моментально… От USB вроде нормально.
Думаю поменять. Воизбежание.
Как насчёт этого: www.taydaelectronics.com/ic-integrated-circuits/voltage-regulators/lm1117-lm1117mpx-5-0v-800ma-low-dropout-linear-voltage-regulator.html
?
Или этот (он даже ардуинским тегом помечен): www.taydaelectronics.com/lm7805-l7805-7805-voltage-regulator-ic-5v-1-5a.html
?
P.S.: Надо бы ещё по-хорошему мне потребляемый ток замерить (без нагрузки) для полноты картины, да кабель потрошить не охота. :(
Греется стаб, мигают диоды как будто постоянный перезагруз. Возможно стаб уходит в защиту по перегреву.
А от 9В всё пашет.
Сегодня отпаял стаб, завтра припаяю 7805С. Отпишусь. Добавлю
водкифотки. Поправлю обзор.1 этап: Подрубил блок питания Робитон (регулируемый, на 300 мА, скорее всего китайский тоже), поставил переключатель на 3 вольта. Замерил — напряжение на выходе ~ 5В. Воткнул в ардуину (на которой вшит скетч Blink, без дополнительной нагрузки естественно). Стабилизатор уже не греется, Blink работает, но на выходах 3,3 и 5В напряжение всё равно проседает до 3В (на обоих!).
2 этап: Переключил регулятор на блоке на 4,5В (на выходе блока стало уже 7В).
Врубил в ардуину. Blink работает, ничего не греется. На выходах ардуины 3,26 и 4,72 стало.
3 этап: Регулятор на блоке на 6В (на выходе блока уже 8,8В). На выходах ардуины 3,26 и 5.01В. Blink работает. Нагрева нет.
Думаю, пока на этом стоит остановиться. Эксперимент считаю удачным (ничего не сгорело). Буду пробовать дополнительную нагрузку навешивать.
P.S.: Не спорю, мои методы могут показаться несколько неадекватными. Но не стоит забывать, что я только учусь — мне простительно. :)
Всё что без нагрузки — можно питать и от 6 и от 9 и от 12В.
Если поставите что-то серьёзное — например лан-модуль — будет греться адово, может даже бабахнуть. Т.к. все «лишние» вольты переходят в тепло.
Например: втыкаем 12В, стаб делает 5В, следовательно надо «просадить» 7В. При нагрузке в 250мА (потребление ардуины и модуля) имеем «лишнюю» нагрузку 1.75Вт которая переходит в тепло на этом маленьком стабилизаторе. Естественно он будет греться.
Я выкинул стаб, соеденил ноги 2 и 3 (у вас могут быть другие) и питаю нормальным питальником на 5В. Соответственно про 12В мне нужно забыть.
Раз на раз не приходится. Могут впарить откровенное барахло, а могут и довольно качественную, но всё равно подделку.
P.S. Вчера дал нагрузку в виде сервомашинки. Перегрева замечено не было, хотя питание брал с ардуины. Отсюда вывод, что косяк где-то в цепи питания именно от USB (может диод забыли поставить, к примеру).
P.P.S. К сожалению, как я уже говорил, опыта у меня маловато, чтобы исправить сложившуюся ситуацию, поэтому видимо придётся подрубать ардуино к компу без дополнительной нагрузки (и только для заливки прошивки) и сразу же переключать на блок питания. В целом, проблему считаю решённой. Спасибо, что уделили мне внимание.
(я про программирование)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.