#1 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-06 22:57:55

Нужна снова Ваша помощь...
Все сделал, и скетч, и подключил - но заработало только половина.... (((
К ардуино уно подключил:
блютуз, 2 серво привода, 4 реле и датчик температуры и влажности.
Подключился по блютуз нормально, 2 реле работают на ура.
Серво приводы тоже работают - но ведут себя как будто живие, дергаются, двигаются. (реально сумашедшие)
2 реле просто светятся светодиоды и не какой реакции, датчик температуры и влажности не передает не какой информации.

Вот сам скетч:

/*
   -- My smart room --

   This source code of graphical user interface
   has been generated automatically by RemoteXY editor.
   To compile this code using RemoteXY library 2.3.1 or later version
   download by link http://remotexy.com/en/library/
   To connect using RemoteXY mobile app by link http://remotexy.com/en/download/
     - for ANDROID 4.0.1 or later version;
     - for iOS 1.1.0 or later version;

   This source code is free software; you can redistribute it and/or
   modify it under the terms of the GNU Lesser General Public
   License as published by the Free Software Foundation; either
   version 2.1 of the License, or (at your option) any later version.
*/

//////////////////////////////////////////////
//        RemoteXY include library          //
//////////////////////////////////////////////

// определение режима соединения и подключение библиотеки RemoteXY
#define REMOTEXY_MODE__SOFTSERIAL
#include <SoftwareSerial.h>

#include <RemoteXY.h>

// настройки соединения
#define REMOTEXY_SERIAL_RX 2
#define REMOTEXY_SERIAL_TX 3
#define REMOTEXY_SERIAL Serial
#define REMOTEXY_SERIAL_SPEED 9600

#define CW 7 // CW инициализируется на контакте 7//
#define CCW 8 // CCW инициализируется на контакте 8//
#define CCCW 9 // CCCW инициализируется на контакте 8//
#define CCCCW 10 // CCCCW инициализируется на контакте 8//


// конфигурация интерфейса 
#pragma pack(push, 1)
uint8_t RemoteXY_CONF[] =
  { 255,6,0,25,0,240,0,6,0,1,
  2,0,3,64,57,8,0,208,161,209,
  130,208,190,208,187,0,79,70,70,0,
  2,0,3,73,57,8,6,208,158,208,
  186,208,189,208,190,0,79,70,70,0,
  2,0,3,82,57,8,5,208,154,209,
  131,208,187,208,181,209,128,0,79,70,
  70,0,2,0,3,91,57,8,4,208,
  146,209,139,209,130,209,143,208,182,208,
  186,208,176,32,0,79,70,70,0,4,
  160,4,50,56,8,2,4,160,4,40,
  56,8,1,66,130,40,27,9,7,5,
  66,193,4,28,16,4,6,67,4,38,
  21,15,5,2,11,67,4,16,21,14,
  5,2,11,66,129,20,28,16,4,1,
  129,0,1,0,61,11,4,68,111,98,
  101,114,77,97,110,110,0,129,0,9,
  10,43,6,7,77,121,32,115,109,97,
  114,116,32,114,111,111,109,0,129,0,
  2,17,19,3,14,84,101,109,112,101,
  114,97,116,117,114,101,58,0,129,0,
  31,17,14,3,14,72,117,109,105,100,
  105,116,121,58,0,129,0,18,32,5,
  3,13,48,194,176,208,161,0,129,0,
  43,30,3,3,13,37,0 };
 
// структура определяет все переменные вашего интерфейса управления
struct {

    // input variable
  uint8_t switch_1; // =1 если переключатель включен и =0 если отключен
  uint8_t switch_2; // =1 если переключатель включен и =0 если отключен
  uint8_t switch_3; // =1 если переключатель включен и =0 если отключен
  uint8_t switch_4; // =1 если переключатель включен и =0 если отключен
  int8_t slider_leftright; // =-100..100 положение слайдера
  int8_t slider_updown; // =-100..100 положение слайдера

    // output variable
  int8_t level_hum; // =0..100 положение уровня
  int8_t level_temp_down; // =0..100 положение уровня
  int8_t level_temp_up; // =0..100 положение уровня
  char text_hum[11];  // =строка UTF8 оканчивающаяся нулем
  char text_temp[11];  // =строка UTF8 оканчивающаяся нулем


    // other variable
  uint8_t connect_flag;  // =1 if wire connected, else =0

} RemoteXY;
#pragma pack(pop)


/////////////////////////////////////////////
//           END RemoteXY include          //
/////////////////////////////////////////////

#include <Servo.h>

#define PIN_LEFTRIGHT_SERVO 5
#define PIN_UPDOWN_SERVO 12

Servo leftright_servo;
Servo updown_servo;

#include "DHT.h"
#define DHTPIN 4
DHT dht(DHTPIN, DHT11);

void setup()
{
  RemoteXY_Init ();
  pinMode(CW, OUTPUT); // настраиваем CW в качестве выхода//
  pinMode(CCW, OUTPUT); // настраиваем CCW в качестве выхода//
  pinMode(CCCW, OUTPUT); // настраиваем CCCW в качестве выхода//
  pinMode(CCCCW, OUTPUT); // настраиваем CCCCW в качестве выхода//

  leftright_servo.attach(PIN_LEFTRIGHT_SERVO);
  updown_servo.attach(PIN_UPDOWN_SERVO);

  // TODO you setup code

}

void loop()
{
  RemoteXY_Handler ();

  if (RemoteXY.switch_1 == 1) {
    digitalWrite(CW, LOW);
  }
  if (RemoteXY.switch_1 == 0) {
    digitalWrite(CW, HIGH);
  }
  if (RemoteXY.switch_2 == 1) {
    digitalWrite(CCW, LOW);
  }
  if (RemoteXY.switch_2 == 0) {
    digitalWrite(CCW, HIGH);
  }
  if (RemoteXY.switch_3 == 1) {
    digitalWrite(CCCW, LOW);
  }
  if (RemoteXY.switch_3 == 0) {
    digitalWrite(CCCW, HIGH);
  }
  if (RemoteXY.switch_4 == 1) {
    digitalWrite(CCCCW, LOW);
  }
  if (RemoteXY.switch_4 == 0) {
    digitalWrite(CCCCW, HIGH);
  }

  leftright_servo.writeMicroseconds(RemoteXY.slider_leftright * 20 + 500);
  updown_servo.writeMicroseconds(2500 - RemoteXY.slider_updown * 20);

 

  float temp = dht.readTemperature(); 
  float hum = dht.readHumidity();
  dtostrf(temp, 0, 1, RemoteXY.text_temp);
  dtostrf(hum, 0, 1, RemoteXY.text_hum);
 
  if (temp<0) {
    RemoteXY.level_temp_up = 0;
    RemoteXY.level_temp_down = min (-temp*2,100);
  }
  else if (temp>0) {
    RemoteXY.level_temp_up = min(temp*2,100);
    RemoteXY.level_temp_down = 0;
  }
  else {
    RemoteXY.level_temp_up = 0;
    RemoteXY.level_temp_down = 0;
  }
  RemoteXY.level_hum = hum;
}

  // TODO you loop code
  // используйте структуру RemoteXY для передачи данных




Вот сам проект:
http://remotexy.com/ru/editor/5d3ee809a … 4c7488815/

Питание от ардуино было только для блютуз.
Остальное запитал отдельно.

Что может быть не так? Что то в коде? И чего серво так дергаются?

#2 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-06 02:35:49

хм... хотя вот нашел http://arduino.ua/ru/hardware/Uno

Входы и выходы

С использованием функций pinMode(), digitalWrite() и digitalRead() каждый из 14 цифровых выводов может работать в качестве входа или выхода.

я так понимаю что могу повесить релюхи на от 2 до 13?
Хотя на 13 вроде бы нет.?

#3 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-06 02:29:20

Чет не могу инфу нормально найти, на ардуино уно реле на какие пины можно подключать? (от 4 до 12 могу на эти?)

#4 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-05 02:10:53

Всем спасибо за помощь - разобрался )
Все получилось, даже скетч с первого раза заработал )))
Правда релюху на 12в пока решил не трогать ))
С проблемой столкнулся при подключении блютуз (ошибку выдавал) RX и TX были подключены на пины 2 и 3 в скетче и по схеме - а оно ошибку выдает (поменял местами - работает: RX2 подключил на пин 3, а TX3 подключил на пин 2) так и не понял в чем прикол.
Так же с релюхами прикол - по логике если я подаю 1 - реле включается, 0 выключается (я в скетче прописал на оборот) т.к. при включении ардуино реле сразу же включается, (может оно и правильно, я хз) но я не хотел что бы оно все время было включено. Пришлось написать 0 вкл. 1 выкл.

#5 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-03 17:34:22

Нашел модуль на 2 релюхи по 5в. Осталось придумать что то с одной реле на 12в

#6 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-03 17:29:46

Sergey_Atlantic пише:

У компьютерного БП есть 3.3В, 5В и 12В. У 5В свой ноль, у 12В свой, так что если Вы подведете к плате -12В с +5В, то она просто не включится, ибо нуля нет. Контроллер выдает логическую единицу (5В) в зависимости от Вашей программы на катушку реле, которое замыкает контакты и пропускает фазу в группу освещения/вытяжку и т.д. Если Вы с БП на катушки реле подключите 12В, то они просто втянутся и будут в таком состоянии, пока Вы не выключите БП, так что в этом нет смысла. Вывод такой - нужны реле с катушкой 5В)

у меня старинный БП - АТ - там 5в и 12в  на 3в нет

#7 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-03 12:44:48

Sergey_Atlantic пише:

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

Та это я знаю. Пока на больничном - нет возможности выехать, а закончить это все хочу уже сегодня.
Схему сейчас Вашу буду разбирать.
Вопрос: а если я отдельно питание 12В на реле подам  (у меня все устройства будут запитыватся от компьютерного БП)
землю куда кидать? Если на gnd в ардуинке кину - нечего не сгорит?
VCC - на 12В
GND, и управление на ардуинку

#8 Re: Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-03 12:40:30

Вячеслав Азаров пише:

Дэ-люкс тепличку хотите изготовить? Могу оказать помощь, недорого.


Нет, управление устройствами в своей комнате.

#9 Апаратні питання » Реле 5в и 12в +модули для ардуино. Нужна очень помощь. » 2017-10-03 04:56:08

xakerrf
відповідей: 24

Новичек в этом деле, електронику и программирование знаю очень-очень плохо.
Что хочу:
Нужно к уно или нано подключить 5 реле, блютуз и датчик температуры и влажности
Через телефон буду заходить по блютузу и видеть показание датчиков + управлять 5шт реле (к реле подключу подсветки, вытяжку, свет...)
Суть вопроса:
есть 2 реле на 5в и 3 реле на 12 вольт, ардуино может управлять 5в реле, а вот как туда присобачить 12в реле?
Читал у Вас где то что можно через драйвер шагового двигателя это сделать - но дупля не отстреливаю как это все сделать.
Больше интересует код(скетч) на: реле 12в+драйвер  http://arduino-ua.com/prod280-Draiver_s … ya_ULN2003  и как это все подключить к ардуинке правильно?
На фото все из чего собрался это делать. (блютуз не сфоткал HC-05(06) Bluetooth modul)
https://drive.google.com/file/d/0B7SNDf … sp=sharing
Кто может помочь с этим?

Тут как это реализовано на телефоне:
http://arduino-ua.com/prod280-Draiver_s … ya_ULN2003

Возможно ли все это подключить к одной из ардунок?
Та которая нано с шилдом каким то, на фото видно (DK-NANO-003 v3.0             Deek-Robot)
Ну и сама загвоздка с реле.
Сорри если как то за мудро написал.

Підвал форуму