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

Манипулятор беспроводного переключателя света

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

Arduino UNO
× 2
Сервоприводы (Tower Pro MG996R)
× 1
Модуль передачи и приема 433 МГц
× 1

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

3D-принтер (общий)

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

IDE Arduino

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

Идея

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

Я понял, что это имеет несколько других последствий:

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

Проект

Этот проект в значительной степени основан на ВЧ платах 433 МГц, которые общаются друг с другом. Иногда это может быть настоящим подвигом. Если код вам не подходит, попробуйте изменить эти значения в Slave_servo.ino:

  const unsigned int upperThreshold =70; // верхнее пороговое значение const unsigned int lowerThreshold =50; // нижнее пороговое значение  
  • Master_Remote.ino идет на Arduino с передатчиком
  • Slave_Servo.ino работает на той же Arduino, что и получатель.

Электропроводка

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

Примечание

  • Кнопка подключается к тому же Arduino, что и передатчик, а сервопривод подключается к тому же Arduino, что и приемник.

Настенное крепление

Что касается крепления сервопривода на стене, вам понадобится доступ к 3D-принтеру. Крепление сервопривода моделировалось в OpenSCAD, возможно, вам придется изменить расположение отверстия. Я включил файл OpenSCAD, чтобы можно было изменить параметры отверстия. Для начала вам нужно распечатать mhacks_lightswitchv4.stl.

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

Заключительный проект

Вот последний проект (я отправил его на онлайн-хакатон под названием Mhacks).

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

Будущие разработки

  • Используйте плату на базе ESP8266 для управления сервоприводом, а не 2 Arduinos.
  • Сделайте крышку переключателя света, которая более выразительно встраивает сервопривод.
  • Разработайте код Alexa таким образом, чтобы им можно было управлять голосом.

Код

  • Slave_Servo.ino
  • Master_Remote.ino
Slave_Servo.ino Arduino
 #define rfReceivePin A0 // Вывод радиочастотного приемника =аналоговый вывод 0 #define ledPin 13 // Встроенный светодиод =цифровой вывод 13 #include  Servo servo; беззнаковые данные int =0; // переменная, используемая для хранения полученных данных const unsigned int upperThreshold =70; // верхнее пороговое значение const unsigned int lowerThreshold =50; // нижнее пороговое значение void setup () {pinMode (ledPin, OUTPUT); Serial.begin (9600); сервопривод (9); } void loop () {данные =analogRead (rfReceivePin); // прослушиваем данные на аналоговом выводе 0 if (data  нижний порог) {digitalWrite (ledPin, HIGH); // Если получен сигнал HIGH, включить светодиод Serial.println (data); серво. запись (90); }} 
Master_Remote.ino Arduino
 #define rfTransmitPin 4 // RF Transmitter pin =digital pin 4 #define buttonPin 2 #define led 13 void setup () {// поместите здесь свой код настройки, чтобы запустить его один раз:pinMode (rfTransmitPin, OUTPUT); pinMode (buttonPin, ВВОД); pinMode (светодиод, ВЫХОД); Serial.begin (9600);} int buttonState =0; void loop () {// поместите сюда ваш основной код для повторного запуска:buttonState =digitalRead (buttonPin); if (buttonState ==HIGH) {// включаем светодиод:digitalWrite (rfTransmitPin, HIGH); digitalWrite (светодиод, ВЫСОКИЙ); Serial.println («передать»); задержка (10); } else {// выключить светодиод:digitalWrite (rfTransmitPin, LOW); digitalWrite (светодиод, НИЗКИЙ); Serial.println («нет»); }} 

Изготовленные на заказ детали и корпуса

mhacks_lightswitch_hpXQkie6X4.scad
Чехол для Arduino
Файл САПР на сайте thingiverse.com

Схема


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

  1. Создание монитора Ambilight с помощью Arduino
  2. Беспроводная магнитная передача данных
  3. Игра Arduino Pong - OLED-дисплей
  4. Детектор звуковой частоты
  5. Клон Arduino Tamagotchi - цифровой питомец
  6. Беспроводные MIDI-адаптеры USB-BLE
  7. Tech-TicTacToe
  8. Водяной пистолет с датчиком движения
  9. Таймер обратного отсчета Arduino
  10. Arduino Sunflower:электронный танцор солнца