На головну сторінку Аквафорум
На головну сторінку




Назад   Аквафорум - форум акваріумістів та тераріумістів > Акваріум та обладнання > "Самоделкин" > Аквариумная автоматика

Примітки

Відповідь
 
Параметри теми Параметри перегляду
Старий 07.02.2017, 09:14   #1
Живу я тут
  
 
Реєстрація: 21.07.2009
Звідки Ви: Оболонь
Дописи: 587
сказав Дякую: 86
сказали Дякую 102 раз(и) в 82 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від Tvister86 Переглянути допис
Всем привет! Контролер отличный, собрал его, пашет на благо акваса . Недавно добавил управление температурой для охлаждения использую 2 кулера 8см, один на вдув, другой на выдув. Использовал с начала ручное управление с помощью кнопки, что не хорошо. На днях я собрал по схеме автоматическое управление и заметил кулера пищат, при малых и средних оборотах, перестают только после того как на макс переключишь. По гуглив я понял что это из за того что используется шим катушки резонируют.
У кого нибудь есть такая проблема? И как вы её решили?
Поиграйтесь с частотой ШИМ, тише всего работают на 30 гц.
__________________
реанимация компьютеров, серверов, сетей, телефонов-планшетов.

alex_palace поза форумом   Відповісти з цитуванням
Старий 07.02.2017, 10:01   #2
Живу я тут
  
 
Аватар для AlexVOK
 
Реєстрація: 11.07.2013
Звідки Ви: Киев (Борщаговка)
Дописи: 665
сказав Дякую: 106
сказали Дякую 535 раз(и) в 244 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

попробуй поставить на выводы куллера электролит примерно 10 - 22 мкФ
полностью не устранит писк на малых оборотах но снизит в разы

AlexVOK поза форумом   Відповісти з цитуванням
Старий 08.02.2017, 09:28   #3
Придивляюся
  
 
Реєстрація: 07.02.2017
Звідки Ви: Казахстан
Дописи: 3
сказав Дякую: 1
сказали Дякую 0 раз(и) в 0 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від alex_palace Переглянути допис
Поиграйтесь с частотой ШИМ, тише всего работают на 30 гц.
А можете написать что и куда добавить.

Цитата:
Допис від AlexVOK Переглянути допис
попробуй поставить на выводы куллера электролит примерно 10 - 22 мкФ
полностью не устранит писк на малых оборотах но снизит в разы
Вечером припаяю, потом отпишусь


П.С. Пробовал разные конденсаторы, но особо не дало результата, на некоторых тон менялся но звук все равно противный и слух режет.
Остается дело за сменой частоты ШИМ. Буду гуглить так как с ардуиной слабо знаком.


Востаннє редагував Tvister86: 09.02.2017 о 18:08..
Tvister86 поза форумом   Відповісти з цитуванням
Старий 09.02.2017, 19:25   #4
Придивляюся
  
 
Реєстрація: 09.02.2017
Звідки Ви: Samara
Дописи: 22
сказав Дякую: 8
сказали Дякую 1 раз(и) в 1 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від Tvister86 Переглянути допис
А можете написать что и куда добавить.
Приветствую! у себя добавил следующие строки (хотя достаточно одной)
Пищание вентеляторов исчезло без напайки конденсаторов.
void setup()
{
//TCCR0B = TCCR0B & 0b11111000 | 0x01; // устанока частоты шим 32кГц
//TCCR1B = TCCR1B & 0b11111000 | 0x01;
TCCR2B = TCCR2B & 0b11111000 | 0x01;
//TCCR3B = TCCR3B & 0b11111000 | 0x01;
//TCCR4B = TCCR4B & 0b11111000 | 0x01;
ВНИМАНИЕ!!! У меня контроллер собран на Mega 2560. Для оригинальной конструкции надо смотреть даташит на контроллер и определить какой таймер к каким пинам привязан.

ya7sergey поза форумом   Відповісти з цитуванням
Старий 10.02.2017, 06:46   #5
Придивляюся
  
 
Реєстрація: 07.02.2017
Звідки Ви: Казахстан
Дописи: 3
сказав Дякую: 1
сказали Дякую 0 раз(и) в 0 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Нашел код для ATMEGA328
Взял тут

forum.amperka.ru
Статья: Частота ШИМ'а на ногах 5 и 6:

Код:
Константа Делитель Частота(Гц)
0x01 1 62500
0x02 8 7812.5
0x03 64 976.5625
0x04 256 244.140625
0x05 1024 61.03515625

В Setup пишем строчку: TCCR0B = TCCR0B & 0b11111000 | <Константа>;

, где <Константа> - значение из таблицы без угловых скобок.


Частота ШИМ'а на ногах 9 и 10:

Код:
Константа Делитель Частота(Гц)
0x01 1 31250
0x02 8 3906.25
0x03 64 488.28125
0x04 256 122.0703125
0x05 1024 30.517578125

В Setup пишем строчку: TCCR1B = TCCR1B & 0b11111000 | <Константа>;


Частота ШИМ'а на ногах 11 и 3:

Код:
Константа Делитель Частота(Гц)
0x01 1 31250
0x02 8 3906.25
0x03 32 976.5625
0x04 64 488.28125
0x05 128 244.140625
0x06 256 122.0703125
0x07 1024 30.517578125

В Setup пишем строчку: TCCR2B = TCCR2B & 0b11111000 | <Константа>;


Все тайминги и частоты приведены для штатной частоты 16Мгц микроконтроллера ATMEGA328


Т.е. я получил частоту ШИМ'а на 9, 10, 11 и 3 ногах около 4кГц путем добавления в секцию инциализации двух строк:

Код:
void setup()
{
TCCR1B = TCCR1B & 0b11111000 | 0x02;
TCCR2B = TCCR2B & 0b11111000 | 0x02;
...
}

Tvister86 поза форумом   Відповісти з цитуванням
Старий 10.02.2017, 12:09   #6
Живу я тут
  
 
Реєстрація: 21.07.2009
Звідки Ви: Оболонь
Дописи: 587
сказав Дякую: 86
сказали Дякую 102 раз(и) в 82 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Кстати.. чисто вспомнилось Есть почти доделанный контроллер из этой темы Если кому интересно можно договориться т.к у меня уже долго работает на цветном тфт с тачскрином.
__________________
реанимация компьютеров, серверов, сетей, телефонов-планшетов.

alex_palace поза форумом   Відповісти з цитуванням
Старий 12.03.2017, 11:46   #7
Придивляюся
  
 
Аватар для izik220
 
Реєстрація: 02.02.2016
Дописи: 2
сказав Дякую: 1
сказали Дякую 0 раз(и) в 0 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Доброго Всем дня. Пытаюсь повторить устройство, но со временем полная ерунда (модуль DS1307) при прошивке выдает время 27:85. Строки с установкой времени раскомментировал прошил и снова закомментировал, после сделал очистку как указывали в посте №361
// Init EEPROM
for(int e = 0; e < 2047; e++) EEPROM.write(e,0);

результат 27:85 и не движется!!!

izik220 поза форумом   Відповісти з цитуванням
Старий 12.03.2017, 11:51   #8
Придивляюся
  
 
Аватар для izik220
 
Реєстрація: 02.02.2016
Дописи: 2
сказав Дякую: 1
сказали Дякую 0 раз(и) в 0 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

да еще и дата 85.85.2165 день недели 255, при попытке изменить в ручную цифры меняются, но при выходе снова слетают на исходные. Подскажите где чего менять, в прошивку правки не вносил.

izik220 поза форумом   Відповісти з цитуванням
Старий 12.03.2017, 17:18   #9
Живу я тут
  
 
Реєстрація: 21.07.2009
Звідки Ви: Оболонь
Дописи: 587
сказав Дякую: 86
сказали Дякую 102 раз(и) в 82 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

90% дохлый таймер.
__________________
реанимация компьютеров, серверов, сетей, телефонов-планшетов.

alex_palace поза форумом   Відповісти з цитуванням
cказали "Дякую" alex_palace за цей допис:
izik220 (12.03.2017)
Старий 17.03.2017, 19:58   #10
Придивляюся
  
 
Реєстрація: 09.02.2017
Звідки Ви: Samara
Дописи: 22
сказав Дякую: 8
сказали Дякую 1 раз(и) в 1 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

А кто нибудь решил вопрос с восстановлением работоспособности контроллера по расписанию после сброса питания? Ранее товарищ из Болгарии предлагал кусок кода, но он не работоспособен. Если у кого есть рабочий вариант поделитесь.

ya7sergey поза форумом   Відповісти з цитуванням
Старий 17.03.2017, 21:16   #11
Живу я тут
  
 
Аватар для AquaGomel
 
Реєстрація: 31.07.2010
Звідки Ви: Белоруссия, Гомель
Дописи: 413
сказав Дякую: 38
сказали Дякую 192 раз(и) в 87 повідомленні
Надіслати повідомлення для AquaGomel на ICQ Надіслати повідомлення для AquaGomel на Skype
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від ya7sergey Переглянути допис
А кто нибудь решил вопрос с восстановлением работоспособности контроллера по расписанию после сброса питания? Ранее товарищ из Болгарии предлагал кусок кода, но он не работоспособен. Если у кого есть рабочий вариант поделитесь.
А как понять восстановление работоспособности? Вы имеете ввиду что бы при запуске загрузились все настройки тамеры и.т.п.? Или есть какая-то специфическая функция у данной разработки?

AquaGomel поза форумом   Відповісти з цитуванням
Старий 18.03.2017, 07:15   #12
Придивляюся
  
 
Реєстрація: 09.02.2017
Звідки Ви: Samara
Дописи: 22
сказав Дякую: 8
сказали Дякую 1 раз(и) в 1 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AquaGomel Переглянути допис
А как понять восстановление работоспособности? Вы имеете ввиду что бы при запуске загрузились все настройки тамеры и.т.п.? Или есть какая-то специфическая функция у данной разработки?
именно это и имел ввиду. Чтобы после подачи питания контроллер считывал установки каналов из памяти и начанал работать по ним, а не по мифическому своему режиму поддержания жизнидеятельности.
Смотрел реализацию данной функции в других проектах, но мои познания в прогаммтровании не позволяют это перенести на данный проект, по этому прошу Вашей помощи.


Востаннє редагував ya7sergey: 18.03.2017 о 07:21..
ya7sergey поза форумом   Відповісти з цитуванням
Старий 18.03.2017, 10:39   #13
Бан за нарушения
  
 
Реєстрація: 13.05.2016
Звідки Ви: Глобино
Дописи: 145
сказав Дякую: 37
сказали Дякую 54 раз(и) в 32 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

ya7sergey, Вам сюда http://arduino.ru/Reference/Library/EEPROM
По факту там две команды, считать и записать в номер ячейки которую вы выберите.
Иногда бывает, что значение не влазит в одну ячейку памяти, тогда её нужно разбивать на две через сдвиг.
Немного подсказок:
1) сначала сбросите все значения в EEPROM в ноль через цикл проще всего, по умолчанию там 255 и можно при считывании получить какую то глупость, ноль всё таки безопаснее.
2) Напишите себе в программе кусочек кода инициализации всех переменных, его надо выполнять где то в начале старта программы и не забывайте сохранять параметры в память при их изменении.


__________________


Востаннє редагував mashenkaM: 18.03.2017 о 13:45..
mashenkaM поза форумом   Відповісти з цитуванням
cказали "Дякую" mashenkaM за цей допис:
sae74 (19.03.2017)
Старий 23.03.2017, 10:01   #14
Придивляюся
  
 
Реєстрація: 12.11.2013
Звідки Ви: Болгария
Дописи: 34
сказав Дякую: 107
сказали Дякую 143 раз(и) в 20 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від ya7sergey Переглянути допис
А кто нибудь решил вопрос с восстановлением работоспособности контроллера по расписанию после сброса питания? Ранее товарищ из Болгарии предлагал кусок кода, но он не работоспособен. Если у кого есть рабочий вариант поделитесь.
В каком смысле не работает?
Это только для справки.
этот код

int T_ON = EEPROM.read(a + 1) * 60 + EEPROM.read(a + 2);
int T_OFF = EEPROM.read(a + 3) * 60 + EEPROM.read(a + 4);
int T_cur = time.hour * 60 + time.min;
if (b1 & B10000000) {
if ((1 << (time.dow - 1))&b1) {
boolean tajmer = false;
if (T_ON < T_OFF) //Проверка на таймера в едно денонощие
{
if (T_cur >= T_ON && T_cur < T_OFF)
{
tajmer = true;
} else {
tajmer = false;
}
} else { // ако се е сменил деня
if ((T_cur >= T_ON && T_cur <= 2820) || (T_cur >= 0 && T_cur < T_OFF))
{
tajmer = true;
} else {
tajmer = false;
}
}

Петко Шкодров поза форумом   Відповісти з цитуванням
Старий 23.03.2017, 10:06   #15
Придивляюся
  
 
Реєстрація: 09.02.2017
Звідки Ви: Samara
Дописи: 22
сказав Дякую: 8
сказали Дякую 1 раз(и) в 1 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від Петко Шкодров Переглянути допис
В каком смысле не работает?
Это только для справки.
этот код

int T_ON = EEPROM.read(a + 1) * 60 + EEPROM.read(a + 2);
int T_OFF = EEPROM.read(a + 3) * 60 + EEPROM.read(a + 4);
int T_cur = time.hour * 60 + time.min;
if (b1 & B10000000) {
if ((1 << (time.dow - 1))&b1) {
boolean tajmer = false;
if (T_ON < T_OFF) //Проверка на таймера в едно денонощие
{
if (T_cur >= T_ON && T_cur < T_OFF)
{
tajmer = true;
} else {
tajmer = false;
}
} else { // ако се е сменил деня
if ((T_cur >= T_ON && T_cur <= 2820) || (T_cur >= 0 && T_cur < T_OFF))
{
tajmer = true;
} else {
tajmer = false;
}
}
Кусок кода этот. Но простая вставка вместо оригинального приводит к ошибке компиляции. Можете выложить рабочий скетч, если он у вас есть?

ya7sergey поза форумом   Відповісти з цитуванням


Share/Bookmark

Відповідь

Мітки
arduino, акваконтроллер


Тут присутні: 1 (учасників - 0 , гостей - 1)
 
Параметри теми
Параметри перегляду

Ваші права у розділі
Ви не можете створювати теми
Ви не можете писати дописи
Ви не можете долучати файли
Ви не можете редагувати дописи

BB-код є Увімк.
Усмішки Увімк.
[IMG] код Увімк.
HTML код Вимк.

Швидкий перехід


Часовий пояс GMT +3. Поточний час: 10:01.


vBulletin 3.8.7 ; Copyright © 2000-2025 Jelsoft Enterprises Limited
Переклад: © Віталій Стопчанський, 2004-2010
(с)Бешлега Олександр Анатолійович, 2002-2025. Використання матеріалів сайту без посилання на джерело заборонено.
Дякуємо за ліцензійну версію форума компанію Барбус, представника торгової марки Sera в Україні.


no new posts