Ви не увійшли.
Сторінки 1
Нужна снова Ваша помощь...
Все сделал, и скетч, и подключил - но заработало только половина.... (((
К ардуино уно подключил:
блютуз, 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 12Servo 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/
Питание от ардуино было только для блютуз.
Остальное запитал отдельно.
Что может быть не так? Что то в коде? И чего серво так дергаются?
хм... хотя вот нашел http://arduino.ua/ru/hardware/Uno
Входы и выходы
С использованием функций pinMode(), digitalWrite() и digitalRead() каждый из 14 цифровых выводов может работать в качестве входа или выхода.
я так понимаю что могу повесить релюхи на от 2 до 13?
Хотя на 13 вроде бы нет.?
Чет не могу инфу нормально найти, на ардуино уно реле на какие пины можно подключать? (от 4 до 12 могу на эти?)
Всем спасибо за помощь - разобрался )
Все получилось, даже скетч с первого раза заработал )))
Правда релюху на 12в пока решил не трогать ))
С проблемой столкнулся при подключении блютуз (ошибку выдавал) RX и TX были подключены на пины 2 и 3 в скетче и по схеме - а оно ошибку выдает (поменял местами - работает: RX2 подключил на пин 3, а TX3 подключил на пин 2) так и не понял в чем прикол.
Так же с релюхами прикол - по логике если я подаю 1 - реле включается, 0 выключается (я в скетче прописал на оборот) т.к. при включении ардуино реле сразу же включается, (может оно и правильно, я хз) но я не хотел что бы оно все время было включено. Пришлось написать 0 вкл. 1 выкл.
Нашел модуль на 2 релюхи по 5в. Осталось придумать что то с одной реле на 12в
У компьютерного БП есть 3.3В, 5В и 12В. У 5В свой ноль, у 12В свой, так что если Вы подведете к плате -12В с +5В, то она просто не включится, ибо нуля нет. Контроллер выдает логическую единицу (5В) в зависимости от Вашей программы на катушку реле, которое замыкает контакты и пропускает фазу в группу освещения/вытяжку и т.д. Если Вы с БП на катушки реле подключите 12В, то они просто втянутся и будут в таком состоянии, пока Вы не выключите БП, так что в этом нет смысла. Вывод такой - нужны реле с катушкой 5В)
у меня старинный БП - АТ - там 5в и 12в на 3в нет
Тебе проще всего будет купить 3 5ти вольтовых реле на любом радио рынке, стоят они как семечки..
Та это я знаю. Пока на больничном - нет возможности выехать, а закончить это все хочу уже сегодня.
Схему сейчас Вашу буду разбирать.
Вопрос: а если я отдельно питание 12В на реле подам (у меня все устройства будут запитыватся от компьютерного БП)
землю куда кидать? Если на gnd в ардуинке кину - нечего не сгорит?
VCC - на 12В
GND, и управление на ардуинку
Дэ-люкс тепличку хотите изготовить? Могу оказать помощь, недорого.
Нет, управление устройствами в своей комнате.
Новичек в этом деле, електронику и программирование знаю очень-очень плохо.
Что хочу:
Нужно к уно или нано подключить 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)
Ну и сама загвоздка с реле.
Сорри если как то за мудро написал.
Сторінки 1