Zaibatsu

Zaibatsu

Пикабушник
поставил 422 плюса и 29 минусов
отредактировал 0 постов
проголосовал за 0 редактирований
Награды:
5 лет на Пикабу
9886 рейтинг 270 подписчиков 12 подписок 3 поста 3 в горячем

Как я собирал свой первый 3D принтер со стальной рамой

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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


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


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


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


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


Стальная рама даст возможность насладиться именно созданием деталей, а не борьбой с принтером…


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


Руководство рассчитано в основном на новичков, опытные гуру 3D печатников скорее всего не найдут здесь для себя ни чего нового. А вот те, кто хотел бы приобщиться, после сборки такого комплекта будут четко понимать, что для чего, к чему. При этом не требуется специальных навыков и инструментов, достаточно паяльника, набора отверток и шестигранников.


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


Заказываем детали:


1. Основа для принтера – рама, чем она крепче и тяжелее, тем лучше. Тяжелую и крепкую раму не будет колбасить при печати на повышенных скоростях, тем самым качество деталей будет оставаться достаточно приемлемым.


Мой выбор пал на стальную раму от российского производителя

Стоимость: 4900 руб. за шт.

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

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


2.1 Полированные валы идут комплектом из 6 штук

Стоимость: 2850 руб. за шт.

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


2.2 Шпильки M5 необходимо приобрести парой

Стоимость: 200 руб. за шт.

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


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

3. Комплект RAMPS 1.4 + Arduino Mega 2560 R3 + шаговые драйверы A4988

Стоимость комплекта: 1045 руб.


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


Arduino Mega 2560 R3 – Мозг нашего принтера, на который мы будем заливать прошивку. Советую взять запасной, по неопытности его легко спалить например вставив неправильно драйвер шагового двигателя или перепутав полярность при подключении концевика. Многие с этим сталкиваются и я в том числе. Дабы Вам не пришлось неделями ждать новую, берите сразу в запас еще хотя бы одну.


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


3.1 Запасная Arduino MEGA R3

Стоимость: 679 руб. за шт.


3.2 Запасные драйверы шагового двигателя A4988 советую дополнительно взять еще комплект запасных из 4 штук

Стоимость: 48 руб. за шт.


4. Регулятор напряжения понижающий

Стоимость: 75 руб. за шт.

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


5. Комплект шаговых моторов

Стоимость комплекта: 2490 руб.

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


6. Комплект ремней, подшипников и муфт

Стоимость комплекта: 769 руб.

В этом комплекте есть все необходимое для данного принтера.


7. Механические ограничители - необходимо 3 штуки

Стоимость: 23 руб. за шт.

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


8. Дисплей с встроенным картридером

Стоимость: 501 руб. за шт.

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


9. Блок питания 12V

Стоимость: 1493 руб. за шт.

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


10. Горячий стол

Стоимость: 448 руб. за шт.

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


11. Кнопка и клемма 220v

Стоимость: 99 руб. за шт.


12. Экструдер

Стоимость: 2795 руб. за шт.

Данный экструдер является «Директ» экструдером, то есть механизм подачи пластика происходит непосредственно перед его нагревательным элементом. Советую брать именно такой, он позволит вам печатать всеми видами пластика без особых напрягов. В комплекте есть все необходимое.


13. Кулер на обдув детали

Стоимость: 124 руб. за шт.

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


14. Кулер на обдув драйверов

Стоимость 204 руб.

Он чуть больше, чем нужен. Больший кулер существенно уменьшит шум от принтера.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

15. Запасные сопла

Стоимость 17 руб. за шт.

При засорении проще поменять сопла, чем чистить. Обратите внимание на диаметр отверстия, как вариант можно набрать разных диаметров и выбрать для себя, я предпочел остановиться на 0.3мм, качества получаемых деталей с таким соплом мне достаточно. Если качество не играет особой роли, берите сопло толще например 0.4. Печать будет в разы быстрее, но слои будут более заметны. Берите сразу несколько.


16. Сверло для очистки сопла

Стоимость 31 руб. за шт.

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


17. Комплект пружин для стола

Стоимость 56 руб. за шт.

В комплекте 5 штук, 4 используем для стола, одну пружинку используем для ограничителя оси X.


18. Комплект для регулировки стола необходимо 2 комплекта

Стоимость 36 руб. за шт.

Эти комплекты нам нужны только ради длинных болтов, которыми мы в дальнейшем будем крепить экструдер.


19. Комплект проводов для подключения шаговых двигателей

Стоимость 128 руб. за шт.


20. Кусок обычного стекла на стол.

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


Это всё, что понадобится вам для сборки принтера.


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


Стоимость такого набора выходит не более 20 тысяч рублей.


Если брать этот этот принтер целиком, его стоимость на сегодня составляет 43900.


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

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Ну а далее начинаем увлекательный процесс сборки, следуя официальной инструкции:

Инструкция Зеркало

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Процесс сборки достаточно увлекателен и чем-то напоминает сборку советского металлического конструктора.


Собираем всё по инструкции за исключением следующих пунктов:


В пункте 1.1. в самом конце, где крепятся торцевые опоры НЕ СТАВИМ подшипники 625z впрочем мы их и не заказывали. Ходовые винты оставляем в свободном плавании в верхней позиции, это избавит нас от эффекта так называемого «Вобблинга».

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

В пункте 1.4. на картинке присутствует черная проставка. В комплекте с рамой её нет, вместо неё идут пластиковые втулки, используем их.


В пункте 1.6. Держатель концевика оси Y крепим не к задней, а к передней стенке принтера, если этого не сделать, детали печатаются зеркально. Как я пытался в прошивке это победить, у меня не удалось. Для этого надо перепаять клемму на заднюю часть платы:

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

В пункте 2.4. у нас другой экструдер, но крепится он точно так же. Для этого нужны длинные болты, их мы берем из комплекта, который брали для регулировки стола (18 позиция). В наборе с рамой нет таких длинных болтов, как и в местных магазинах.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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

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

Для этого выпаеваем или отрезаем диод с платы RAMPS .

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Припаиваем регулятор напряжения ко входу питания, который заблаговременно выставляем на 5v, попутно выпаивая стандартное гнездо питания. Приклеиваем регулятор кому куда удобнее, я приклеил на заднюю стенку самой ардуины.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Питание от блока питания к RAMPS, я припаял отдельно к ножкам, чтоб оставить свободной клемму для подключения других устройств.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Далее укладываем все провода, можно купить специальную оплетку, можно как я, использовать стяжки или изоленту.


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


Еще раз смотрим, что ни где ни чего не коротит, драйверы шаговых двигателей поставлены ПРАВИЛЬНО согласно инструкции, иначе сгорит и экран и ардуина, ограничители тоже поставлены соблюдая необходимую полярность, иначе сгорит стабилизатор напряжения на ардуине.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps
Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Если все подключено верно, можно переходить к следующей инструкции по эксплуатации:

Инструкция Зеркало


Полезный материал по некоторым параметрам нашей прошивки


Мой настроенный и рабочий вариант прошивки под этот принтер и экструдер.

Он слегка откалиброванный под те детали, которые мы заказали.


Официальная прошивка от 3d-diy


Заливаем прошивку через IDE Arduino 1.0.6, выбираем на экране принтера auto home убеждаемся в правильном подключении концевиков и полярности шаговиков, если двигается в противоположную сторону, просто переверните клемму у мотора на 180 градусов. Если после начала движения слышен противный писк, это писк драйверов шаговиков. Надо подкрутить на них подстроечный резистор согласно инструкции.


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


Я беру пластик фирмы Bestfilament


Брал фирму REC мне не понравилось как ложатся слои. Есть еще море различных брендов и пластиков, от резиновых до деревянных, от прозрачных до металлизированных… Еще одна фирма которую я порекомендую – Filamentarno У них чумовые цвета и отличный свой вид пластика с отличными свойствами.


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


Почему именно этот принтер на базе prusa i3?


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

2. Принтер прост в сборке, настройке и обслуживании. Ковыряться с ним может даже ребенок.

3. Достаточно надежен.

4. Распространен, соответственно в сети море инфы о его настройках и модернизации.

5. Апгрейдопригоден. Можно заказать второй экструдер или экструдер с двумя печатными головками, заменить линейные подшипники на капролоновые или медные втулки, тем самым повысив качество печати.

6. Доступен по деньгам.


Фильтр для филамента.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Печатал крепление для экструдера E3D V6 и печатал какое то время этим экструдером с боуден подачей. Но вернулся обратно на MK10.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Утеплил стол для более быстрого разогрева. Какая то подложка с отражающим фольгированным слоем и клейкой основой. В 2 слоя.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps
Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Чехол для телефона

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Принтер помогает и в мастерской. Направляющие для каретки под распиловочный стол.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Крепления для LED ламп освещения.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Корпус для системы удаленного включения конвектора из этого поста.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Жена делает вот такие формы для печенья.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

Кот, который устал от всего этого.

Как я собирал свой первый 3D принтер со стальной рамой 3D печать, Prusa, Arduino, Длиннопост, Ramps

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


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


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


Мы вместо этого, плавили пластмассу от старых игрушек и свинец из найденных на помойке аккумуляторов.


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

Спасибо за внимание, если есть вопросы, задавайте )


Весьма полезный русскоязычный ресурс, на котором вы найдете любую информацию по этому направлению:

http://3dtoday.com/


Тысячи тысяч готовых моделей для печати чего угодно:

http://www.thingiverse.com/

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

Как я делал удаленное управление теплом в гараже.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Для обогрева своего гаража, я использую 2 "конвектора". Один конвектор включен постоянно на +5 градусов, для поддержания плюсовой температуры, второй "конвектор" включается по необходимости.


Раньше приходилось бегать, включать его, уходить домой, ждать час-два пока температура поднимется до комфортных +20, но это быстро надоело, одолела лень и я решил применить максимально бюджетный вариант удаленного включения на Arduino.


Что необходимо было купить:

Arduino nano: https://ru.aliexpress.com/item/Freeshipping-1PCS-Nano-3-0-co...

146 руб

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Модуль ENC28J60: https://ru.aliexpress.com/item/2PCS-ENC28J60-Ethernet-LAN-Ne...

165 руб

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Датчик температуры DHT22: https://ru.aliexpress.com/item/1pcs-DHT22-digital-temperatur...

151руб

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Реле: https://ru.aliexpress.com/item/5PCS-LOY-1-Channel-5V-Relay-M...

40руб

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Коротко о подключении всего этого барахла.


Модуль ENC28J60:

VCC к 5V

GND к GND

SCK к Pin 13

SO к Pin 12

ST к Pin 11

CS к Pin 10


Реле:

S к Pin 2

Vcc к 5V

GND к GND


Датчик температуры DHT22:

Vcc к 3.3V

GND к GND

DATA к Pin4

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Здесь все понятно без схем, если не понятно, в интернете есть масса материала о том, как подключать эти модули. А вот готового скетча, я не нашел, да и искать было лень… Проще было найти скетч управления реле и скетч вывода данных с датчика, скрестить их и набросать страницу, чтоб ей было удобно управлять с телефона и обычного ПК.


Что из этого вышло:


#include "DHT.h"

#include <EEPROM.h>

#define DHTPIN 4

#define DHTTYPE DHT22

DHT dht(DHTPIN, DHTTYPE);

#include <EtherCard.h>

static byte mymac[] = { 0x74,0x69,0x69,0x2D,0x30,0x31 }; // MAC Address должен быть уникальным в локальной сети

static byte myip[] = { 192,168,1,222 }; // Постоянный IP адресс нашей страницы

byte Ethernet::buffer[1000];

BufferFiller bfill;

// Начальные данные

int LedPins[] = {

2,3,5,6,7,8,9};

int t=0;

int h=0;

boolean PinStatus[7];

const char http_OK[] PROGMEM =

"HTTP/1.0 200 OK\r\n"

"Content-Type: text/html\r\n"

"Pragma: no-cache\r\n\r\n"

"\r\n"

"<meta charset='UTF-8'>"

"<meta name='viewport' content='width=device-width, initial-scale=1.0'>"

"<meta http-equiv='refresh' content='10'/>";

const char http_Found[] PROGMEM =

"HTTP/1.0 302 Found\r\n"

"Location: /\r\n\r\n";

const char http_Unauthorized[] PROGMEM =

"HTTP/1.0 401 Unauthorized\r\n"

"Content-Type: text/html\r\n\r\n"

"<h1>401 Unauthorized</h1>";

// Подключаем Ethernet порт HR911105A и датчик DHT22

void setup () {

if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0)

Serial.println( "Failed to access Ethernet controller");

ether.staticSetup(myip);

for(int i = 0; i <= 7; i++)

{

pinMode(LedPins[i],OUTPUT);

PinStatus[i]=EEPROM.read(i);

digitalWrite(LedPins[i],PinStatus[i]);

}

dht.begin();

}

// Получаем данные от DHT22

static void ReadDHT22()

{

h = dht.readHumidity();

t = dht.readTemperature();

}

// Оформление Web страницы

static word homePage() {

bfill = ether.tcpOffset();

bfill.emit_p(PSTR("$F"

"<title>Гараж</title>"

"<p style=\"text-align: center;\"><br />Конвектор: <br> <span style=\"font-size: 4em;\"><a href=\"?ArduinoPIN2=$F\">$F</a></span>"),

http_OK,

PinStatus[0]?PSTR("off"):PSTR("on"),

PinStatus[0]?PSTR("<font color=\"green\"><b>ON</b></font>"):PSTR("<font color=\"red\">OFF</font>"));

bfill.emit_p(PSTR(

"<br><br>Температура: <br> <span style=\"font-size: 4em;\">$D C</span> <br /><br />Влажность:<br> <span style=\"font-size: 4em;\"> $D %</span></p>"),t, h);

return bfill.position();

}

void loop () {

delay(1); // Задержка

word len = ether.packetReceive();

word pos = ether.packetLoop(len);

if (pos) // check if valid tcp data is received

{

ReadDHT22();

bfill = ether.tcpOffset();

char *data = (char *) Ethernet::buffer + pos;

if (strncmp("GET /", data, 5) != 0) {

bfill.emit_p(http_Unauthorized);

}

else {

data += 5;

if (data[0] == ' ') {

homePage();

}

else if (strncmp("?ArduinoPIN2=on ", data, 16) == 0) {

PinStatus[0] = true;

digitalWrite(LedPins[0],PinStatus[0]);

EEPROM.write(0,PinStatus[0]); // записываем в ячейку EEPROM №0, текущее состояние LedPins[0].

bfill.emit_p(http_Found);

}

else if (strncmp("?ArduinoPIN2=off ", data, 17) == 0) {

PinStatus[0] = false;

digitalWrite(LedPins[0],PinStatus[0]);

EEPROM.write(0,PinStatus[0]);

bfill.emit_p(http_Found);

}

else {

// Page not found

bfill.emit_p(http_Unauthorized);

}

}

ether.httpServerReply(bfill.position()); // send http response

}

}


Коротко о данном скетче:

В память ардуины (EEPROM) сохраняется информация о последнем положении кнопки реле, перебои со светом нам не страшны, положение кнопки всегда отражает реальное состояние реле, не будет такого, что на странице выводится OFF а на самом деле ON.


Далее подключаю сборку к локалке, для питания использую старую зарядку от мобильного телефона.


Вызываю страницу по IP адресу, который мы задали в начале скетча: http://192.168.1.222


Получаю страницу с данными:

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Всё открывается, данные с датчика верные, реле на нажатие кнопки реагирует, положение запоминает.


Далее нужен корпус. Можно заколхозить из какого-нибудь пластикового контейнера, или заказать на али типовой пластиковый корпус для подобного барахла, или купить распределительную коробку в электротоварах, но мне лень выходить из дома, поэтому, я по-быстрому накидал в солиде уродца и распечатал его на 3D принтере.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост
Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост
Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Собрал все в корпус, закрепил модули термоклеем.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

Когда моделировал корпус, особо головой не думал, по этому реле почему-то сделал по середине… Лучше было его разместить с краю. Ну да ладно, и так сойдет…

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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


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

Провел интернет в гараж. Купил недорогую направленную Wi-Fi антенну, поставил её на карниз пока вот так, летом если дойдут руки и не будет лень сделаю нормальный кронштейн.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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


Теперь гараж с домом у нас в одной сети и самое время настроить виртуальный сервер на домашнем роутере.


Прописываем порт который мы открываем например 7777, прописываем IP нашей системы 192.168.1.222, прописываем порт по которому будет доступна наша страница, для доступа из браузера порт 80.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

При наличии статического IP адреса от провайдера, наша система теперь доступна откуда угодно по адресу http://нашip:порт


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


У меня есть статика и зарегистрированный домен, к поддомену которого, я привязал свою систему и мне нет необходимости помнить свой IP для доступа к управлению.

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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

Как я делал удаленное управление теплом в гараже. Гараж, Мастерская, Arduino, Удаленный доступ, Скетч, Длиннопост

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


Спасибо за внимание. Если есть вопросы, готов ответить )

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

Мой гараж. Разница между фото 6 месяцев.

Извиняюсь за качество фоток.

Мой гараж. Разница между фото 6 месяцев. Гараж, Ремонт, Своими руками, Мастерская
Мой гараж. Разница между фото 6 месяцев. Гараж, Ремонт, Своими руками, Мастерская
Показать полностью 2
Отличная работа, все прочитано!