| Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) | |
|
+68Рифат leshka.16 720x576 alekseevih A.N.Pilichev bonusssss Daimos_kz Sergey egonja andre9223 кек Константин 2010 Andrey_DV_KYV Александр_1 val_33 moveo Алексей 170271 RusLang_1995 Саня Greck Admiror Evgeny Konst DJkey22 Артур fineobjects.ru kent1541 Galwer Кулибин88 Вадим Serega552 sten1986 spazma IgorBorNN AKern ShOleg AlexByr zemepan xlkxlk Из Сибири Александр martynoff Vancer Alex13 Гайдар DEMFER Илья Кулибин Олега viktor1983 Max228 Shuraley portaid gind1 ALEXPCB shuhran Sovest yury_fayuk ptaha999 sser Дмитрий Москаленко rf68 snooker22 Pusistik Фархат Артёмм Константин kildeath Участников: 72 |
|
Автор | Сообщение |
---|
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 10:45 am | |
| Скетч не сложный -сделаю. А серва сколько градусов? Или хотя-бы их тип сообщите.
Последний раз редактировалось: Admin (Пн Мар 05, 2018 11:33 am), всего редактировалось 3 раз(а) | |
|
| |
IgorBorNN
Сообщения : 116 Дата регистрации : 2017-07-15
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 11:06 am | |
| Приветствую Сереж !!! И всех форумчан ! Смотрю работой совсем завален, даже на общение нет времени, что ж, это хорошо, к деньгам !!!! Есть у меня одна задумка но даже боюсь беспокоить тебя по этому поводу. Как будет у тебя время отзовись и я быстренько набросаю что к чему. С Уважением дед Игорь! | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 12:02 pm | |
| - Serega552 пишет:
- Здравствуйте , можете помочь в написание программы на ардуину нано захватный механизм
Готово! - Вложенные файлы
- ruka.zip
- У вас нет прав скачивать вложенные файлы.
- (2 Кб) Скачиваний: 3
| |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 12:03 pm | |
| - IgorBorNN пишет:
- Есть у меня одна задумка
Хорошо, дам знать когда освобожусь. | |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Программирую Arduino на заказ (Беcплатно). Пн Мар 05, 2018 12:42 pm | |
| - Admin пишет:
- Скетч не сложный -сделаю.
А серва сколько градусов? Или хотя-бы их тип сообщите. Cерва -SM-S4312M на 90 градусов , и если можно как это все соединить правильно и схему , по советам интернета делаю не получается , спасибо за прогу | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 1:07 pm | |
| А я на 180 сделал ... Сейчас переделаю скетч.
Последний раз редактировалось: Admin (Пн Мар 05, 2018 2:45 pm), всего редактировалось 1 раз(а) | |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 1:15 pm | |
| на самом схвате выходы сервопривода и выходы 4х кнопок (1 общий земля и 4 NO норм разомкнутый) | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 1:45 pm | |
| кнопки все параллельно и гнд-4пин управление серво пин 2 (питание сервы смотри даташит) зажим гнд-пин 5 разжим гнд-пин6
В скетче можно задать угол "дожима" (читайте коммент)при срабатывании конечника. | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 2:43 pm | |
| немного поторопился напутал угол начала. Вот исправленный скетч на 90 градусов: - Вложенные файлы
- ruka3.zip
- У вас нет прав скачивать вложенные файлы.
- (1 Кб) Скачиваний: 5
| |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 05, 2018 9:07 pm | |
| Спасибо , а можете блок схему нарисовать ? | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вт Мар 06, 2018 7:16 am | |
| Питание Ардуины можно по разному сделать.... ,но 12В лучше не давать . По этой схеме получится 9В. А если использовать Литий 2х3.7Вольт , то можно без диодов на желтый провод . | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вт Мар 06, 2018 7:49 pm | |
| | |
|
| |
spazma
Сообщения : 1 Дата регистрации : 2018-03-08 Откуда : Дзержинск
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Чт Мар 08, 2018 12:33 pm | |
| Добрый день! не могли бы вы дополнить код. Суть проекта - автоматическое регулирование расхода газа в зависимости от расхода воды в газовой колонке. Т. е. фактическая температура воды и заданная. Если есть расхождение между этими значениями сервопривод крутит подачу газа в ту или иную сторону. Есть скетч - Код:
-
/*http://geektimes.ru/post/252796/ питание с подсветки экрана ->8 (Enable_pin) 1 - нагрев вкл / 0 откл датчик DS18B20 -> 2 (One_wire_bas_pin) светодиод ->7 (led_pin) серва -> 9 (servo_pin) */ //#1 const int Enable_pin = 8; // пин питание с подсветки экрана uint8_t Enable = 0; // 1 работа / 0 нет
#include <OneWire.h> const int One_wire_bas_pin = 2 ; // пин на шину OneWire OneWire oneWire(One_wire_bas_pin); #include <DallasTemperature.h> DallasTemperature sensors(&oneWire); // подключаем датчик DS18B20 на шину OneWire
float temperature; // текущая температура const int right_temperature = 40; // нужная температура в колонке //#2 const int led_pin = 7; // пин светодиода #include <Servo.h> Servo myservo; const int servo_pin = 9; // пин сервы uint8_t Enable_servo = 0; // 1 вкл сервы/ 0 откл сервы uint8_t pause = 0; // пауза для прогрева 0-50 uint8_t Angle; // позиция сервы const int minAngle = 5; const int maxAngle = 100;
void setup() { Serial.begin(9600); //включаем сериал //#1 pinMode(Enable_pin, INPUT); //подключаем пин питание с подсветки экрана sensors.begin(); //#2 pinMode(led_pin, OUTPUT); digitalWrite(led_pin, Enable_servo = 0); //гасим лампочку }
void loop() { static uint32_t MILLIS ; MILLIS = millis() ; //#1 static uint32_t future1 = 0 ; if (MILLIS >= future1) { future1 = MILLIS + 200 ; Enable = digitalRead(Enable_pin); sensors.requestTemperatures(); // послать команду измерить температуру temperature = sensors.getTempCByIndex(0);// получить температуру с 1 датчика(0) Serial.print("Temperature ="); Serial.println(temperature); } //#2 200 миллисекунд управление сервой. static uint32_t future2 = 0 ; if (MILLIS >= future2) { future2 = MILLIS + 200 ; switch (Enable_servo * 2 + Enable) { case 1: // Enable_servo==0 Enable==1 ВКЛ сервы if (pause == 0) { myservo.attach(servo_pin); //атачим серву myservo.write(50); //ставим на середину Serial.println("BOILER ON"); } pause++; if (pause > 50) { // делаем паузу 50*200=10000 или 10 секунд pause = 0; digitalWrite(led_pin, Enable_servo = 1); //вкл лампочку } break; case 2: // Enable_servo==1 Enable==0 ОТКЛ сeрвы myservo.write(50); //ставим серву посредине myservo.detach(); //детачим чтоб не жужжала Serial.println("BOILER OFF"); digitalWrite(led_pin, Enable_servo = 0); //гасим лампочку break; case 3: // Enable_servo==1 Enable==1 РЕГУЛИРОВКА ТЕМПЕРАТУРЫ if (temperature < right_temperature) { Angle = myservo.read(); Angle += 2; // 2 скорость регулировки if (Angle > maxAngle ) Angle = maxAngle; myservo.write(Angle); } else if ( temperature > right_temperature) { Angle = myservo.read(); Angle -= 2; // 2 скорость регулировки if (Angle < minAngle ) Angle = maxAngle; myservo.write(Angle); } break; } } } Я решил подключить к нему LCD1602 i2c. Дополнил скетч, не знаю насколько верно. нет главного компонента - сервы и проверить на практике пока не получается, но на дисплее отображается все верно. " /> Собственно измененный код - Код:
-
//#1 const int Enable_pin = 8; // пин питание с подсветки экрана uint8_t Enable = 0; // 1 работа / 0 нет
#include <Wire.h> // Подключаем библиотеку Wire const int One_wire_bas_pin = 2 ; // пин на шину OneWire
#include <LiquidCrystal_I2C.h> // Подключаем библиотеку LiquidCrystal_I2C #include <DallasTemperature.h> // Подключаем библиотеку DallasTempature #define DS18B20 2 // Указываем, к какому выводу подключена DQ byte simvol[8] = {B11100,B10100,B11100,B00000,B00000,B00000,B00000,B00000,}; // Символ градуса LiquidCrystal_I2C lcd(0x3F, 16, 2); // Задаем адрес и размер дисплея OneWire oneWire(DS18B20); DallasTemperature sensors(&oneWire);
float temperature; // текущая температура const int right_temperature = 40; // нужная температура в колонке //#2 const int led_pin = 7; // пин светодиода
#include <Servo.h> Servo myservo; const int servo_pin = 9; // пин сервы uint8_t Enable_servo = 0; // 1 вкл сервы/ 0 откл сервы uint8_t pause = 0; // пауза для прогрева 0-50 uint8_t Angle; // позиция сервы const int minAngle = 5; const int maxAngle = 100;
void setup() { Serial.begin(9600); //включаем сериал //#1 pinMode(Enable_pin, INPUT); //подключаем пин питание с подсветки экрана sensors.begin(); //#2 pinMode(led_pin, OUTPUT); digitalWrite(led_pin, Enable_servo = 0); //гасим лампочку sensors.begin(); // Запуск библиотеки, по умолчанию 9 бит, то есть кратность 0.5 градуса lcd.init(); // Инициализация lcd lcd.backlight(); // Включаем подсветку lcd.setCursor(0,0); // Устанавливаем курсор на 1 строку, ячейка 2 lcd.print("TEMP SET"); // Выводим текст lcd.setCursor(0,1); // Устанавливаем курсор на 2 строку, ячейка 2 lcd.print("TEMP"); // Выводим текст }
void loop() { static uint32_t MILLIS ; MILLIS = millis() ; //#1 static uint32_t future1 = 0 ; if (MILLIS >= future1) { future1 = MILLIS + 200 ; Enable = digitalRead(Enable_pin); sensors.requestTemperatures(); // послать команду измерить температуру temperature = sensors.getTempCByIndex(0);// получить температуру с 1 датчика(0) Serial.print("Temperature ="); Serial.println(temperature); } //#2 200 миллисекунд управление сервой. static uint32_t future2 = 0 ; if (MILLIS >= future2) { future2 = MILLIS + 200 ; switch (Enable_servo * 2 + Enable) { case 1: // Enable_servo==0 Enable==1 ВКЛ сервы if (pause == 0) { myservo.attach(servo_pin); //атачим серву myservo.write(50); //ставим на середину Serial.println("BOILER ON"); } pause++; if (pause > 50) { // делаем паузу 50*200=10000 или 10 секунд pause = 0; digitalWrite(led_pin, Enable_servo = 1); //вкл лампочку } break; case 2: // Enable_servo==1 Enable==0 ОТКЛ сeрвы myservo.write(50); //ставим серву посредине myservo.detach(); //детачим чтоб не жужжала Serial.println("BOILER OFF"); digitalWrite(led_pin, Enable_servo = 0); //гасим лампочку break; case 3: // Enable_servo==1 Enable==1 РЕГУЛИРОВКА ТЕМПЕРАТУРЫ if (temperature < right_temperature) { Angle = myservo.read(); Angle += 2; // 2 скорость регулировки if (Angle > maxAngle ) Angle = maxAngle; myservo.write(Angle); } else if ( temperature > right_temperature) { Angle = myservo.read(); Angle -= 2; // 2 скорость регулировки if (Angle < minAngle ) Angle = maxAngle; myservo.write(Angle); } break; } }
lcd.createChar(1, simvol); // Создаем символ под номером 1 sensors.requestTemperatures(); // Считываем показания температуры lcd.setCursor(12,0); // Устанавливаем курсор на 1 строку, ячейка 12 lcd.print(right_temperature); // Выводим заданную температуру lcd.setCursor(14,0); // Устанавливаем курсор на 1 строку, ячейка 14 lcd.print("\1"); // Выводим символ градуса lcd.setCursor(15,0); // Устанавливаем курсор на 1 строку, ячейка 15 lcd.print("C"); // Выводим текст lcd.setCursor(9,1); // Устанавливаем курсор на 2 строку, ячейка 9 lcd.print(sensors.getTempCByIndex(0)); // Выводим показания текущей температуры lcd.setCursor(14,1); // Устанавливаем курсор на 2 строку, ячейка 14 lcd.print("\1"); // Выводим символ градуса lcd.setCursor(15,1); // Устанавливаем курсор на 2 строку, ячейка 15 lcd.print("C"); // Выводим текст
}
Могли бы вы помочь дополнить код, чтобы можно было изменить заданную температуру энкодером KY-040 по алгоритму - крутишь энкодер, изменяются значения, нажал - подтверждение значения, прописалось в eeprom. Фото, видео по факту реализации гарантирую.
Последний раз редактировалось: spazma (Чт Мар 08, 2018 7:43 pm), всего редактировалось 2 раз(а) | |
|
| |
sten1986
Сообщения : 1 Дата регистрации : 2018-03-08
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Чт Мар 08, 2018 2:12 pm | |
| Здравствуйте! Не могли бы мне помочь? Суть вопроса: есть два ардуино уно р3, есть все не обходимые модули для соединения их по радиоканалу: 1.Радио модуль nRF24L01+ х 2шт. 2.Адаптер к модулю nRF24L01+ х 2шт. 3.Arduino х 2шт. 4. Четыре потенциометра. 5. 8 соленоидов 6.Регистр сдвига для увеличения ШИМ каналов(исполнительное устройство) Необходимо соединить ардуино по радио каналу, и с помощью 4 х потенциометров на пульте управления(первый ардуино) - управлять 8 ю соленоидами на исполнительном устройстве с помощью ШИМ(второй ардуино) Соленоиды используются как регуляторы давления. Соответственно один потенциометр управляет 2 мя соленоидами- На примере 1го потенциометра и 1го и 2го соленоида. 1). Начальное положение: 1й потенциометр в центральном положении, 1й и 2й соленоиды закрыты. 2). При повороте от центрального положения 1го потенциометра - "вправо" - начинает срабатывать первый соленоид и по мере увеличения угла поворота "вправо" и достижения крайнего положения - первый соленоид полностью открывается , то-есть управление соленоидом должно быть плавным. 3). Потенциометр возвращается пружиной в центральное положение, соответственно первый соленоид закрывается. 4). Поворачиваем 1й потенциометр от центрального положения "влево" - начинает открываться 2й соленоид, аналогично до достижения потенциометром крайнего левого положения 2й соленоид полностью открывается, плавно открывается от закрытоко состояния до полностью открытого в соответствии с поворотом потенциометра "влево". 5). При этом когда работает 1й соленоид - 2й закрыт, когда работает 2й соленоид -1й закрыт И так все четыре потенциометра: 1й потенциометр - 1й и 2й соленоид 2й потенциометр - 3й и 4й соленоид 3й потенциометр - 5й и 6й соленоид 4й потенциометр - 7й и 8й соленоид.
| |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пт Мар 09, 2018 9:54 am | |
| Здравствуйте , А можно над каждым каждой строкой комментарий что это значит не могу полностью разобраться - Вложенные файлы
- ruka3.zip
- У вас нет прав скачивать вложенные файлы.
- (1 Кб) Скачиваний: 3
| |
|
| |
Вадим
Сообщения : 1 Дата регистрации : 2018-03-11 Возраст : 50 Откуда : Красногорск
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вс Мар 11, 2018 1:07 pm | |
| Здравствуйте! Могли бы вы мне помочь?
Нужен скетч подобный тому что здесь (https://eanik.ru/2017/10/05/automatic-shutter-arduino/ ). Составные части: ARDUINO UNO, термодатчик, сервопривод. Сервопривод ставится на регулятор температуры газового котла и в зависимости от показаний термодатчика поворачивает его. Угол поворота 90 - 110 градусов. При температуре воздуха 19гр. включается сервопривод и поворачивает регулятор на заданный угол включая подачу газа. При температуре 24гр. сервопривод поворачивает регулятор обратно выключая котёл. Температура и углы могут быть несколько иными.
Термодатчик - http://digitrode.ru/computing-devices/mcu_cpu/215-datchik-temperatury-tmp36-i-ego-podklyuchenie-k-arduino.html
http://mypractic.ru/datchiki-temperatury-tmp35-tmp36-tmp37-xarakteristiki-primenenie-opisanie-na-russkom-yazyke.html ( в формате ТО-92 )
Сервопривод - http://arduino-diy.com/arduino-MG995-servo
или
https://supereyes.ru/catalog/Servoprivodi/Servoprivod_JX_Servo_PDI_6221MG_360_20_32_kg_s_sm/ | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 12, 2018 11:43 am | |
| - Serega552 пишет:
- Здравствуйте , А можно над каждым каждой строкой комментарий что это значит не могу полностью разобраться
комментарии не получатся , т.к скетч компилируется из программы FLProg. Выглядит это так: Так у вас заработало или нет? Хочется видео посмотреть! ПС: Посмотрел и нашел ошибку : Разжатие невозможно без срабатывания конечника. Т.е если конечник не сработал разжатие невозможно............. нужно так сделать: - Вложенные файлы
- рука_s.zip
- файл FLProg
- У вас нет прав скачивать вложенные файлы.
- (16 Кб) Скачиваний: 5
| |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 12, 2018 1:12 pm | |
| Да я скину видео попозже , просто сейчас в другом городе , спасибо | |
|
| |
Serega552
Сообщения : 7 Дата регистрации : 2018-03-05
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Пн Мар 12, 2018 9:24 pm | |
| А можете вот тут к каждой команде написать коммент что она делает мне нужно просто полностью в ней разобраться - Вложенные файлы
- Документ Microsoft Office Word (3).docx
- У вас нет прав скачивать вложенные файлы.
- (14 Кб) Скачиваний: 2
| |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вт Мар 13, 2018 7:24 am | |
| Ещё раз............... - Admin пишет:
- Serega552 пишет:
- Здравствуйте , А можно над каждым каждой строкой комментарий что это значит не могу полностью разобраться
комментарии не получатся , т.к скетч компилируется из программы FLProg.
| |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вт Мар 13, 2018 7:29 am | |
| Дома делаю ремонт квартиры!!!!!! По этому тема временно приостановлена. | |
|
| |
sser Admin
Сообщения : 1033 Дата регистрации : 2013-02-08 Возраст : 50 Откуда : Нижний Новгород
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Вт Авг 07, 2018 6:03 pm | |
| - Serega552 пишет:
- Да я скину видео попозже , просто сейчас в другом городе , спасибо
...Остался жить в другом городе? | |
|
| |
Кулибин88
Сообщения : 10 Дата регистрации : 2018-08-15
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Ср Авг 15, 2018 8:58 pm | |
| Здравствуйте. Нужно п.о. для ардуинки. Идея такова. Комп отправляет на ардуинку инфу о системе. температура проца.,Температура видюхи. Ардуинка это все выводит на экран, (можно сенсорный). И управляет кулерами процесора, видюхи, корпусными кулерами. (Для корпусных вентиляторов нужно выводить дополнительный датчик температуры. Можно и для блока питания так же сделать, лишним не будет) хочу сделать тихий комп чтоб вентиляторы зря не гудели. Хотел бы сразу узнать цену. | |
|
| |
Кулибин88
Сообщения : 10 Дата регистрации : 2018-08-15
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Ср Авг 15, 2018 9:01 pm | |
| open hardware monitor. Прога для передачи инфы с компа. (Должна подойти) | |
|
| |
Кулибин88
Сообщения : 10 Дата регистрации : 2018-08-15
| Тема: Re: Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) Чт Авг 16, 2018 8:03 am | |
| | |
|
| |
| Программирую Arduino на заказ (Беcплатно). ("Умный дом" не предлагать) | |
|