Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Умные жалюзи

Компоненты и расходные материалы

SparkFun Arduino Pro Mini 328 - 5 В / 16 МГц
× 1
Arduino UNO
× 1
Датчик температуры
× 1
PNP-транзистор PN2907A
× 1
LDR
× 1
Резистор 10 кОм
× 1
Резистор 1 кОм
× 1
солнечная панель
× 1
усилитель DC-DC
× 1
Коннекторы JST
× 1
Держатель батареи 4xAA
× 1
Сервоприводы (Tower Pro MG996R)
× 1
Литиевая аккумуляторная батарея 3,6 В
× 1
Муфта серводвигателя
× 1
Конденсатор 100 нФ
× 1
Изготовленная на заказ печатная плата OSH Park
× 1
Различные соединительные провода
× 1

Необходимые инструменты и машины

Паяльник (общий)
Drill
SolderWire
кусачки для проволоки
Инструмент для зачистки проводов
Мультиметр
Dremel
Монтажная плата / макетная плата для пайки
Термоусадочная пленка

Приложения и онлайн-сервисы

IDE Arduino

Об этом проекте

Здравствуйте!

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

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

Я импортировал этот проект откуда-то еще, и раздел оборудования / инструментов здесь просто не давал мне тех опций, которые я хотел, поэтому вам придется иметь дело с подробным списком как есть, а не в аккуратном формате Hackster.io. Прости.

Новый дизайн делает следующее:

  • Открывать (повернуть на 85 градусов) утром, чтобы пропускать свет.
  • Закрывайте (поверните на 0 градусов - жалюзи опущены) вечером, чтобы обеспечить конфиденциальность.
  • Закройте (поверните на 165 градусов - жалюзи вверх, против солнца), если температура превышает 30 C (~ 86 F) - это произвольная температура, ваш уровень комфорта может варьироваться.
  • Выполняйте все эти действия без внешней проводки, коробок, устройств и т. д. Другими словами, передайте коэффициент приемлемости для жены.
  • Будьте достаточно экологичными, чтобы я не отказывался от проекта из-за того, что мне приходится слишком часто заменять батареи.
  • Не стоит слишком дорого. Я думаю, что в конечном итоге жалюзи можно построить примерно за 50 долларов США. Деньги, вложенные в новые инструменты, и время, потраченное на программирование, тестирование, пайку и мастеринг, конечно, не в счет.

Причина этих требований к дизайну заключается в том, что окно, для которого они были разработаны, является окном 2-го этажа над входной дверью дома. Это окно выходит на юг (на самом деле, SSE), что означает, что зимой много солнечного света (и потенциального тепла) при открытых жалюзи, но летом может быть слишком много тепла.

Как уже говорилось, жалюзи безупречно работали около 4 месяцев (январская установка, они вернулись примерно в июне). Были обнаружены следующие недостатки:

  • Дом не выходит на юг ..... Поэтому зимой солнце большую часть дня светит за окном, выходя из окна только ближе к вечеру. Это обеспечивает много солнечной зарядки зимой. Однако летом солнце пересекает дом к полудню, а это означает, что солнца недостаточно для зарядки в течение большей части светового дня. Кроме того, первоначальное расположение солнечной панели в окне затемняется в течение первых нескольких часов дня. Решение:лучшее расположение солнечной панели.
  • Серводвигатель, используемый для управления жалюзи, непрерывно потребляет 13 мА. Это меня шокировало. В моей первой попытке я не измерил ток с сервоприводом на месте, потому что мой мультиметр не мог поддерживать большую мощность сервопривода и обеспечивать точность, чтобы увидеть это в «спящем» состоянии. Решение:переключатель верхнего уровня с использованием транзистора PNP.
  • Моя оригинальная солнечная панель на 6 В действительно работает против модуля зарядки LiPo. Зарядный модуль имеет номинальное входное напряжение от 4,5 В до 5,5 В. Когда панель получала солнечное освещение и генерировала 6 В или более электричества, модуль зарядки отключался. Я обнаружил это только после того, как были установлены жалюзи. Решение:панель правильного размера.
  • Нет регистрации / сбора данных телеметрии. Это сильно затруднило диагностику жалюзи, когда они начали давать сбои. Решение:функция регистрации EEPROM.
  • Не было возможности подключиться / отключиться для диагностики / исправления. Это относилось как к солнечной панели, так и к батарее. Решение:соединители JST между батареей и цепью, солнечной панелью и цепью.
  • Измерения (температура и свет) должны производиться относительно стабильного опорного напряжения 5 В (выход VCC на Arduino), а НЕ выходного напряжения 5 В усилителя DC-DC. Это напряжение может немного отличаться, что влияет на измерения аналого-цифрового преобразования. В моем первом проекте линия "5V", которую я использовал, на самом деле была нерегулируемой линией, исходящей от усилителя постоянного и постоянного тока. Решение:кажется очевидным, не так ли? Используйте * регулируемый * выход 5 В от Arduino Pro Mini.

Итак, приступим!

Шаг 1. Список деталей

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

Другие ссылки, которые вы увидите, взяты с banggood.com - у них много дешевых компонентов и широкий выбор запчастей для электроники. Если вам удобно ждать запчастей до месяца или больше, вы можете получить их дешево. И с taydaelectronics.com. Если можно купить сразу несколько вещей, цены ОЧЕНЬ хорошие. Доставка вполне разумная. Итак, некоторые детали, которые вы увидите в моем списке, я заказал 5, 10 или 20 штук, чтобы сократить минимальный заказ. Кто знает, может, я построю несколько таких.

  • Arduino Pro Mini (10 долларов США - SparkFun)
  • Arduino Uno, для программирования Mini - вы можете использовать специальные кабели, но эта установка мне подходит.
  • Датчик температуры LM35DZ (1,23 доллара США - Тайда)
  • PN2907A транзистор PNP (0,05 доллара США - Tayda)
  • Светозависимый резистор (LDR) (1,24 доллара США за упаковку из 10 штук с сайта banggood.com) -
  • Один (1) резистор на 10 кОм (0,01 доллара США - Tayda) - хотя я купил комплект резисторов в SparkFun за 8 долларов.
  • Один (1) резистор сопротивлением 1 кОм.
  • Солнечная панель 5 В, 1,5 Вт (4,07 доллара США - banggood.com)
  • Усилитель постоянного тока 5 В (1,38 долл. США - banggood.com)
  • Модуль зарядки литиевой батареи (2,89 доллара США за упаковку из 3 предметов с сайта banggood.com).
  • Соединители JST (3,33 доллара США за упаковку из 60 штук от banggood.com)
  • Перезаряжаемый литиевый аккумулятор 3,6 В (15,39 доллара США за комплект из 4 батарей от Amazon, включая настенное зарядное устройство для защиты от бородавок)
  • Держатель батареи 18650 (1 доллар - SparkFun)
  • Серводвигатель (я использовал Hitec HS-325HB, который я нашел в местном магазине для хобби) (вот эквивалент). Мне пришлось угадывать, какой крутящий момент был необходим. Я не смог найти динамометрический ключ по разумной цене для измерения.
  • Муфта серводвигателя. Поскольку я использовал сервопривод Hitec, мне это было нужно. (5 долларов США - SparkFun)
  • Конденсатор 100 мкФ (0,03 доллара США - Тайда)
  • Набор соединительных проводов (я купил этот комплект - 17,79 доллара США на Amazon).
  • Печатная плата (2,74 доллара США за 10-ю упаковку от Amazon)

Шаг 2. Инструменты

Полезные предметы иметь при себе:

  • Дрель
  • Паяльник
  • SolderWire
  • кусачки для проволоки
  • Инструмент для зачистки проводов
  • Мультиметр
  • Dremel или аналогичный небольшой режущий инструмент.
  • Печатная плата / макетная плата для пайки
  • Термоусадочная пленка

Шаг 3. Создайте прототип проекта

В ПОРЯДКЕ. Итак, теперь, когда у вас есть все компоненты и рабочая область, пора собрать все вместе и посмотреть, что из этого получится.

В первоначальном проекте я первым делом подключил две батарейки АА к усилителю постоянного и постоянного тока на 5 В и убедился, что у меня на выходе 5 В. На этот раз я сделал то же самое, только с самой батареей, литиевой перезаряжаемой батареей 3,6 В. Полностью заряженный, он находится на уровне 4,1-4,2 В. По моему мультиметру я получаю от бустера 5,04В. Достаточно хорошо.

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

  • Подключите соответствующие разъемы литиевого зарядного модуля к батарее и солнечной панели (положительный к положительному, отрицательный к отрицательному).
  • Подключите провод от положительной клеммы панели к аналоговому A0 - это обеспечивает напряжение панели для регистрации.
  • Аккумулятор также подключается к усилителю 5 В постоянного и постоянного тока.
  • Подключите провод от положительной клеммы аккумулятора к аналогу A1 - он обеспечивает напряжение аккумулятора для регистрации.
  • Выходное напряжение 5 В с усилителя поступает на вход RAW на Arduino.
  • Заземление от усилителя 5V используется повсюду.
  • Подключите вывод Arduino VCC ко всему, что требует регулируемого напряжения 5 В.
  • Сервопривод может подключаться к выходу 5 В усилителя постоянного и постоянного тока, но сначала он будет проходить через транзистор PNP.
  • От LDR подключите резистор 10 кОм к земле. Подключите провод между LDR и резистором к аналогу A3 - это ваше обнаружение света.
  • Подключите 5 В к стороне 5 В на LM35DZ (или на датчике температуры).
  • Подключите заземление LM35DZ к заземлению.
  • Подключите провод от среднего (или выходного) контакта LM35DZ к A2 - это ваше измерение температуры.
  • Подключите выход 5 В от усилителя постоянного и постоянного тока к контакту E (эмиттер) PN2907A.
  • Подключите резистор сопротивлением 1 кОм между выводом B (база) транзистора и выводом 11 - это регулятор, позволяющий току течь к серводвигателю.
  • Подключите вывод C (коллектор) транзистора к выводу питания серводвигателя.
  • Подключите контакт заземления серводвигателя к заземлению.
  • Подключите сигнальный вывод сервопривода к выводу 10 - это вывод ШИМ, который вы используете для управления сервоприводом.

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

Перед добавлением транзистора на этапах 13–16 выполнялась следующая последовательность:

  • Посмотрите на ток холостого хода без сервопривода.
  • Теперь давайте добавим серводвигатель и отметим ток.

Что тут происходит!? Просто подключив сервопривод, мы добавили в систему 14 мА холостого тока. Как мы можем решить эту проблему? Наш хороший друг транзистор. Мой первоначальный приобретенный комплект Arduino содержал несколько транзисторов NPN. Прочитав их (спасибо SparkFun!), Я решил попробовать конфигурацию Low Side Switch. Однако это не сработало. У меня * все еще * был намного больший ток холостого хода, чем я ожидал. Я измерил напряжения на выводах эмиттера, базы и коллектора и обнаружил, что на выводе базы было напряжение, хотя я его не ожидал. Я не уверен на 100%, что происходит, кроме, возможно, внутренней схемы сервопривода находит путь к земле через вывод ШИМ, используемый для управления положением двигателя? Если у кого-то есть идеи, я весь на слуху.

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

Успех! Теперь, когда сервопривод не движется, похоже, что сервопривод не подключен. Отсюда и использование транзистора на этапах 13–16.

Шаг 4. Программирование

Конечно, после того, как вы его выложите, вам придется запрограммировать Pro Mini, чтобы протестировать его. Ты собираешься сначала протестировать это, верно? Я попытался использовать кабель SparkFun TTL-USB, но не смог заставить его работать. Может у меня не тот кабель? Поэтому я решил посмотреть, можно ли обойтись без него.

Что ж, только на этом сайте есть несколько инструкций по программированию Arduino Pro Mini с использованием Arduino Uno. Все очень просто. Для меня самой страшной частью было удаление ИС из Uno (это необходимо сделать, потому что вы не можете запрограммировать Uno как Pro Mini):

  • Снимите ИС с Uno (запомните, в каком направлении обращена выемка, чтобы можно было вставить ее обратно). Я сделал это с помощью пластикового устройства типа ножа, которое можно использовать для открытия iPhone. Я начал с того, что осторожно поддевал микросхему под микросхему, попеременно с обеих сторон, чтобы не погнуть контакты.
  • Подключите вывод Uno 5V к выводу Pro Mini VCC.
  • Подключите вывод Uno GND к выводу Pro Mini GND.
  • Подключите контакт Uno TX к контакту Pro Mini TX0.
  • Подключите вывод Uno RX к выводу Pro Mini RXI.
  • Подключите вывод Uno RESET к выводу Pro Mini RST.

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

Теперь, когда вы входите в среду разработки Arduino, выберите «Arduino Pro или Pro Mini», и вы сможете напрямую запрограммировать плату. Я могу даже перепрограммировать его, не снимая всю сборку с жалюзи, если найду изменения, которые хочу внести.

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

Я также добавил попытку как макета, так и схематического вида проекта. Однако Фритцинг мне мешает, так что это может выглядеть не очень хорошо.

Шаг 5. Начало сборки

Теперь, когда у нас есть некоторые данные о нашей системе, приступим к ее сборке.

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

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

Это хорошее время, чтобы припаять одножильный провод к солнечной панели. Я добавил около 2 футов провода к разъему JST, чтобы разместить солнечную панель в подходящем месте в окне, чтобы обеспечить максимальное солнечное освещение в течение всего года, но минимизировать визуальное воздействие. Оставьте короткие разъемы для пайки на печатной плате. Это минимизирует размер части, входящей в верхнюю глухую направляющую. Кроме того, использование одножильного провода для его припайки к печатной плате кажется (на мой взгляд) более эффективным, чем пайка плетеного провода в отверстия. Ваш пробег варьируется.

Отрежьте печатную плату до размера, необходимого для ваших жалюзи. Доски, которые я купил, слишком велики примерно на 3 ряда отверстий, поэтому я вырезал их на столько. Я постарался сделать схему как можно меньше и аккуратнее. Предварительно обрежьте провода до нужного вам размера и сделайте небольшой изгиб, чтобы они прошли через углы и т. Д. А затем вниз (или вверх) в отверстия печатной платы. Помните о высоте штырей серворазъема и убедитесь, что разъем не мешает работе сервопривода в жалюзи.

Я также поцарапал протравленные линии на усилителе DC-DC, ведущие к светодиодному индикатору. Это все время экономит около 1 мА. В идеале датчик температуры должен быть выключен сам по себе, чтобы уменьшить возможное воздействие сервопривода или других компонентов. Я не смог этого сделать, и он рядом с транзистором.

Шаг 6:Полная сборка, последнее перепрограммирование

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

Pro Mini имеет 1024 КБ EEPROM. Исходя из размера 22 байта на запись, плюс 2 байта «шаблона синхронизации», я должен быть в состоянии получить 42 записи в EEPROM, прежде чем он будет завершен. Это меньше, чем за месяц данных при 2 действиях в день. Я хотел бы получить больше, но для этого потребуется SD-карта или EEPROM большего размера. Может быть, в следующей ревизии.

Я также провожу последнее измерение тока, чтобы убедиться, что где-нибудь у меня нет короткого замыкания. Измеренный мной ток составляет около 1,5 мА. С аккумулятором на 900 мАч это должно обеспечить около 600 часов работы без подзарядки. Вычтите немного, потому что он не всегда будет спать, и, конечно, каждый раз, когда он движется, вы быстрее разряжаете аккумулятор. Используя библиотеку LowPower от rocketlabs, он спит при 1,5 мА. Во время выполнения это около 25 мА, а при перемещении жалюзи - от 200 мА до примерно 500 мА или более. Я бы хотел, чтобы батарея прослужила еще дольше, но я также хочу, чтобы светодиоды загорались, когда она работает, чтобы я знал, что она работает, так что это компромисс, с которым я согласен.

FEF476VIRXTB0NK.txt

Шаг 7. Установка

Хорошо, теперь устанавливаем в жалюзи.

  • Сначала снимите штопор с тягового троса (если он есть у ваших жалюзи). Они создают слишком большое сопротивление для правильной работы серводвигателя. (У меня нет этого изображения, потому что я повторно использую оригинальные жалюзи и не могу найти эту деталь)
  • Просверлите небольшое отверстие, из которого будет торчать LDR (я использую жалюзи на внешней стороне).
  • Теперь используйте Dremel или другой режущий инструмент, чтобы вырезать квадрат по размеру вашего серводвигателя. Он должен плотно прилегать, но вы не хотите поцарапать или иным образом повредить сервопривод (я снова использовал внешнюю сторону - я не хочу видеть его в доме, хотя он может быть закрыт декоративным обрезка. Просто убедитесь, что она не мешает обрезке, если вы выбираете эту сторону)
  • Заклейте острые края скотчем или как-нибудь сгладьте.
  • Вставьте печатную плату в жалюзи и убедитесь, что датчик освещенности выходит из отверстия, которое вы просверлили на шаге 2.
  • Теперь прикрепите серводвигатель к валу и затяните установочный винт. На этом этапе причина 10-секундного ожидания под углом 90 градусов в начале работы должна быть ясна. Я запускаю программу, позволяю сервоприводу повернуться на 90 градусов, а затем отключаю аккумулятор. Затем я использую это положение, чтобы прикрепить его к жалюзи, которую я вручную переместил на 90 градусов, чтобы соответствовать.
  • Теперь заберитесь по лестнице и установите жалюзи.
  • Я прикрепил солнечную панель примерно к центральной панели, в верхней трети окна. Я провожу провода вдоль разделителей окон и приклеиваю панель и провода липкой лентой, чтобы минимизировать видимость.
  • Теперь подключите солнечную панель к цепи.
  • Подключите аккумулятор и быстро сдвиньте жалюзи на место. Они должны переместиться в центр, а затем после 10-секундной задержки переместиться в соответствующее положение. Перед подключением я помещаю батарейный отсек внутрь заглушки.
  • Установите декоративную накладку на место.
  • Выпейте пива (или, в моем случае, рома с колой).

Шаг 8:расслабьтесь и наслаждайтесь!

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

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

Обновление:после нескольких месяцев эксплуатации, я рад сообщить, что они ведут себя ТОЧНО, как должны! Одна странность, которую мы обнаружили, заключалась в том, что если свет и в коридоре наверху, и в холле внизу включены, жалюзи остаются открытыми после наступления темноты, что делает его идеальным для демонстрации своей функции в компании. А в те поздние летние дни, когда становилось очень жарко, жалюзи закрывались из-за жары при очень комфортной температуре - окно нагревается, чем на первом этаже, поэтому жалюзи закрываются, пока в доме еще 70 градусов (F). .

Код

Github
https://github.com/Froz3nArcher/libraries/tree/master/EEPROMLoghttps://github.com/Froz3nArcher/libraries/tree/master/EEPROMLog
Github
https://github.com/Froz3nArcher/SmartBlindshttps://github.com/Froz3nArcher/SmartBlinds

Схема

Схема Smart Blind
https://github.com/Froz3nArcher/SmartBlinds/blob/master/SmartBlinds.fzz

Производственный процесс

  1. Умный бармен
  2. Умные жалюзи
  3. Простой датчик препятствий с Arduino
  4. Умная обувь (автоматическая шнуровка и выработка электроэнергии)
  5. Солнечный трекер на основе Интернета вещей (IoT)
  6. Простая и умная роботизированная рука с использованием Arduino
  7. Мониторинг температуры SMART для школ
  8. Умные перчатки для рук
  9. Умный мультиплексор зарядного устройства с умным дисплеем
  10. Изолированный аналоговый вход для Arduino