admin

Управляем Нагрузками Через Android-Смартфон При Помощи Arduino

12 сообщений в этой теме

admin    2 316



Простой проект для повторения: управление любыми нагрузками с Android-смартфона при помощи Arduino (или любым МК) через Bluetooth.

Приложение Led Switcher в Google Play

Что понадобится приобрести:
Arduino Nano (2$)
Bluetooth Serial модуль (3$)
Опционально Шилд реле (2$)

Подключение разных типов нагрузок к Arduino: arduinoBasicConnections.pdf

Led Switcher.apk

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
admin    2 316

Исходный код первого примера:

char incomingByte;	 // переменная для хранения входящих данных
int LED = 13;		 // LED подключен к 13 выводу (используем встроенный светодиод)
void setup() {
Serial.begin(9600); // инициализация порта на скорость 9600 бод для связи с Bluetooth-модулем
pinMode(LED, OUTPUT); // вывод LED настраиваем как выход
}
void loop() {
if (Serial.available() > 0) {	 // если пришли данные
incomingByte = Serial.read(); // считываем байт
if(incomingByte == '0')		 // если пришел символ "0",
 digitalWrite(LED, LOW);	 // то выключаем вывод "LED"
if(incomingByte == '1')		 // если пришел символ "1",
 digitalWrite(LED, HIGH);	 // то включаем вывод "LED"
}
}

LED_Switcher1.ino

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
admin    2 316

Скетч второго примера:

char incomingByte;		 // переменная для хранения входящих данных
int  load1 = 5;		    // нагрузка 1 подключена к 5 выводу
int  load2 = 6;		    // нагрузка 2 подключена к 6 выводу
void setup() {
 Serial.begin(9600);	  // инициализация порта на скорость 9600 бод для связи с Bluetooth-модулем
 pinMode(load1, OUTPUT);  // вывод load1 настраиваем как выход
 pinMode(load2, OUTPUT);  // вывод load2 настраиваем как выход
}
void loop() {
 if (Serial.available() > 0) {	  // если пришли данные
   incomingByte = Serial.read();    // считываем байт
   switch (incomingByte) {		  // перебираем входящие данные
   case '0':					    // если пришел "0" (задается в настройках Android-приложения)
  digitalWrite(load1, LOW);	  // то выключаем вывод "load1"
  break;
   case '1':					    // если пришел "1"
  digitalWrite(load1, HIGH);	 // то включаем вывод "load1"
  break;	 
   case 'B':					    // если пришел "B"
  digitalWrite(load2, LOW);	  // то выключаем вывод "load2"
  break;	 
   case 'A':					    // если пришел "A"
  digitalWrite(load2, HIGH);	 // то включаем вывод "load2"
  break;
   }
 }
}

LED_Switcher2.ino

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
MaxTms1    0

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

P.s Хотелось бы управлять одной нагрузкой с помощью ШИМ, то есть изменять яркость лампы на 12в, а вторую нагрузку просто включать(желательно в режиме кнопки).

Заранее большое спасибо!!!

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
UTSource

Найдите миллионы труднодоступных

электронных компонентов

Evgenii85    0

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

Пишет: Проблема загрузки в плату. Помощь по загрузке: http://www.arduino.cc/en/Guide/Troubleshooting#upload.

Совет по COM1 не доступен

Что делать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
DoctorRock    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
admin    2 316

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

Пишет: Проблема загрузки в плату. Помощь по загрузке: http://www.arduino.c...hooting#upload.

Совет по COM1 не доступен

Что делать?

Отключить модуль Bluetooth (можно просто питание модуля), загрузить скетч, затем подключить питание модуля обратно

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Lachin Gu    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Mixus    0

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
char incomingByte;     // переменная для хранения входящих данных
int  load1 = 5;       // нагрузка 1 подключена к 5 выводу
int  load2 = 6;       // нагрузка 2 подключена к 6 выводу
void setup() {
 Serial.begin(9600);    // инициализация порта на скорость 9600 бод для связи с Bluetooth-модулем
 pinMode(5, OUTPUT);  // вывод load1 настраиваем как выход
 digitalWrite(5, HIGH); // сначала реле выключено
 pinMode(6, OUTPUT);  // вывод load2 настраиваем как выход
 digitalWrite(6, HIGH); // сначала реле выключено
}
void loop() {
 if (Serial.available() > 0) {    // если пришли данные
   incomingByte = Serial.read();    // считываем байт
   switch (incomingByte) {      // перебираем входящие данные
   case '0':              // если пришел "0" (задается в настройках Android-приложения)
  digitalWrite(5, LOW);   // то выключаем вывод "load1"
  break;
   case '1':              // если пришел "1"
  digitalWrite(5, HIGH);   // то включаем вывод "load1"
  break;   
   case 'B':              // если пришел "B"
  digitalWrite(6, LOW);   // то выключаем вывод "load2"
  break;   
   case 'A':              // если пришел "A"
  digitalWrite(6, HIGH);   // то включаем вывод "load2"
  break;
   }
 }
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Похожие публикации

    • Автор: ренат07
      помогите дописать программу
      в долгу не останусь естественно 
      взял текст программы для управления ШГ и интернета 
      все работает красиво 
      но мне нужно что бы работало ни всегда, а при определённых условиях 
      то есть что бы "кнопкой" включения бодр определённое положение реостата 
      подскажите пожалуйста 
      спасибо большое 
    • Автор: ренат07
      у меня есть такой мини проект по вентиляции автомобиля 
      Короче, есть шаговый двигатель установленный регулировки заслонки воздушного дефлектора
      основа программы для шагового двигателя была взята с интернета
      так вот, в самом авто есть электронная заслонка печки отвечающая за направление потока воздуха и для определения положения заслонки блоком управления, внутри заслонки стоит простой реостат
       так вот в чем вопрос как сделать чтобы программа управления ШГ запускалась при про определенном напряжении с реостата ? 
      помогите пожалуйста, постораюсь не остаться в долгу  
    • Автор: Dandan He
      Здравствуйте, Уважаемые форумчане!
      TOMTOP – интернет-магазин, специализирующийся на продажах товаров китайского производства. Магазин TOMTOP не является новичком на рынке – он был основан ещё в 2004 году. К 2017 году портал завоевал репутацию заботливого и ответственного торговца высококачественной продукции, а также получил признание такого «гиганта» продаж, как Alibaba. В 2006 году Alibaba пожаловала продавцу TOMTOP статус «золотого поставщика» — очень почётный для азиатского рынка.
      Доступные способы оплаты
      Российским покупателям магазин TOMTOP даёт возможность оплачивать товары множеством способов:
      С банковских карт Visa и MasterCard. Оплата происходит через защищённый сервер платежей Alipay – риск того, что деньги попадут к мошенникам и не дойдут до продавца, сведён к нулю.
      Посредством PayPal. Именно этот способ оплаты считается наиболее безопасным — покупатель, прибегнувший к услугам PayPal, может быть уверен: если он вдруг станет жертвой мошенников, ему вернут деньги. Однако сервис PayPal неудобен для оплаты дорогостоящих товаров — если сумма единовременного платежа превосходит 1000 $, платёж наверняка будет задержан на несколько дней для проверки транзакции.
      С электронных кошельков. TOMTOP ведёт сотрудничество с 3-мя ведущими отечественными платёжными системами – QIWI, Яндекс.Деньги, WebMoney. Комиссия при оплате с кошельков перечисленных систем не берётся.
      Доставка товара
      Покупатель вправе выбрать один из 2-х способов доставки: почтовая (дёшево и сердито) или экспресс (для тех, кому срочно). Доставка посредством авиапочты является бесплатной – в этом плане магазин TOMTOP «заткнул за пояс» даже площадку AliExpress, которая в 2017 году за пересылку многих товаров в Россию стала требовать деньги.
      Стоимость экспресс-доставки зависит от того, какого рода товар и с какого склада он отправляется. За быструю доставку гаджета с китайского склада покупателю придётся заплатить порядка 4 тыс. рублей. Экспресс-доставка смартфона / планшета со склада, размещённого в России, обойдётся примерно в 1 тыс. рублей. Если речь идёт о каком-либо мелком и дешёвом товаре (например, о светодиодной Wi-Fi лампочке), экспресс-доставка с отечественного склада может оказаться бесплатной.
       
      Основной сайт: https://www.tomtop.com/
      Служба поддержки: service@tomtop.com
      ПАРТНЕРСКАЯ ПРОГРАММА : https://www.tomtop.com/help/affiliate-program.html
      Как присоединиться к нашей партнерской программе?
      Выберите партнерские сети и зарегистрируйтесь как партнер или издатель.
      Найдите идентификатор программы Tomtop.
      Подать заявку, чтобы присоединиться к нам и ждать нашего одобрения.
      Получите наши ссылки для продвижения и просмотра комиссионных.

    • Автор: Alexander1997
      Доброго времени суток. Понадобилось сделать несложное меню.  Меню построено следующим образом - имеется главный пункт и 4 подпункта. Попасть в нужный подпункт можно только через главное меню. Вот примерный вид главного меню.

      Блок схема меню

       
      Конструкция кода
      typedef struct { uint8_t menu;// uint8_t submenu;// MAIN_MENU, MENU_MANUAL, MENU_AUTO, MENU_SETUP, MENU_START }menuItem; typedef struct Selection { unsigned char id; //Номер меню/подменю unsigned char ent_f : 4; //Флаг входа в подменю unsigned char esc_f : 4; //Флаг выхода из подменю }SL; enum switchVariants : byte { // Определения для переключателя пунктов меню; MAIN_MENU, MENU_MANUAL, MENU_AUTO, MENU_SETUP, MENU_START }; switchVariants switchPointer = MAIN_MENU; // С чего начнем цикл int main (void) { while(1) { } } Посоветуйте как организовать вход и выход из меню? Для этого завел два флага ent и esc. Но как их связать голову ломаю.
    • Автор: Yon
      Нарыл код в нете для FM радио на Ардуино на базе EM5807M.  Залил это дело в Atmega8, все заработало, сделал простой выбор стаций.
      А кто знает как управлять програмно громкостью, басами, стерео/моно  и др. Используемая часть кода ниже.