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




Назад   Аквафорум - форум акваріумістів та тераріумістів > Акваріум та обладнання > "Самоделкин" > Аквариумная автоматика
Аукцион Реєстрація ЧаПи Учасники Календар Нинішні дописи

Примітки

Відповідь
 
Параметри теми Параметри перегляду
Старий 17.03.2014, 13:10  
Простой акваконтроллер ARDUINO
 
Аватар для AlexVOK
Живу я тут

Реєстрація: 11.07.2013
Звідки Ви: Киев (Борщаговка)
Дописи: 665
 

сказав Дякую: 106
сказали Дякую 535 раз(и) в 244 повідомленні
AlexVOK AlexVOK поза форумом 17.03.2014, 13:10
Рейтинг: (9 голосов - 5,00 средняя оценка)

Аква контроллер ARDUINO.
(Обратите внимание на доработанный вариант от форумчан. Ссылка внизу!)
( ПродолжениеПростой акваконтроллер ARDUINO v.2 (LED море))

(ГОТОВЫЕ КОНТРОЛЛЕРЫ НЕ ПРОДАЮ)

Решил ознакомиться я с ARDUINO, за одно порадовать своих рыбасей.
Сделать им(себе) доп удобства за минимальную цену и с минимальным напрягом по времени.
На eBay заказал.
Контроллер
Arduino PRO Mini ATMEGA328P 5V 16M (16MHZ) + CP2102 модуль + кабель = полный комплект для программирования - US $3.18

Часы реального времени
I2C RTC DS1307 AT24C32 Real Time Clock Module for Arduino + Батарейка US $1.15
Индикатор 84*48 LCD Module White backlight adapter PCB for Nokia 5110 Arduino US $1.83
Влагозащищенный цифровой датчик температуры
DS18b20 Waterproof Temperature Sensors (5м нормального кабеля) US $3.7

В качестве блока питания зарядка от iPhon там же за 1 бакс.

Еще немного мелочи типа симисторов и опторазвязки для силовой части.

Что вышло в итоге.
Аква контроллер с энергонезависимыми часами реального времени.
Графический экран с регулировкой яркости подсветки и контрастности.
Управление 13-ю нагрузками.
Куча таймеров, ограничил по 25 на канал (памяти хватит на 500).
Поддержка режима «кормление» - отключается фильтр на 20 мин.
Цифровой термометр и управление нагревателем и охладителем(в моем случае кулер).

Органы управления
1 кнопка отмена
2 кнопка вверх
3 кнопка вниз
4 кнопка ОК

Нагрузки
D10 куллер (С регулировкой оборотов)
D11 ЛЕД (Восход/закат)
А0 1W (термометр)
D12 Фильтр
D13 Нагреватель
D1 СО2
D0 Компрессор
А1 Свет1
А2 Свет2
А3 УДО Микро
А4 УДО Макро
А5 УДО Железо
А6 Управление БП
Себестоимость контроллера чуть больше 10 баксов.

На картинке силовая часть в виде готового релейного модуля (такие есть и на 8 каналов - цена около 8 баксов), я использовал свою плату силовой части - схема и печатка во вложении(плату изготавливал по ЛУТ технологии).
Все проверено - работает.

Все комплектующие покупались на ибей и цены ориентировочные доставке везде БЕСПЛАТНАЯ.

ВАЖНО.
соединять ардуино и часы проводниками минимальной длинны !!!

Варианты скетча:

MIHS, скетч с измененными буквами.

Одна из лучших реализаций от форумчан

burnashev https://www.aquaforum.ua/showpost.ph...postcount=1221

Ant0ny https://www.aquaforum.ua/showpost.ph...postcount=1224

Мініатюри долучень
Щоб збільшити малюнок, клацніть по ньому
Назва:  $(KGrHqZ,!rYFG1iISsbLBRzjq2iFV!~~60_12.JPG
Переглядів: 3822
Розмір:  18,8 КБ
ID:	415548   Щоб збільшити малюнок, клацніть по ньому
Назва:  TK0616-2-easydealhere.jpg
Переглядів: 4602
Розмір:  122,2 КБ
ID:	415549   Щоб збільшити малюнок, клацніть по ньому
Назва:  047167-1-03.jpg
Переглядів: 3958
Розмір:  25,3 КБ
ID:	415550   Щоб збільшити малюнок, клацніть по ньому
Назва:  047167-1-02.jpg
Переглядів: 3852
Розмір:  17,8 КБ
ID:	415551   Щоб збільшити малюнок, клацніть по ньому
Назва:  27482.jpg
Переглядів: 4126
Розмір:  63,9 КБ
ID:	416203  

Щоб збільшити малюнок, клацніть по ньому
Назва:  Плата 220.jpg
Переглядів: 5560
Розмір:  88,0 КБ
ID:	451418   Щоб збільшити малюнок, клацніть по ньому
Назва:  aqua_controll_sch.jpg
Переглядів: 11732
Розмір:  55,4 КБ
ID:	457447  

Долучені файли
Тип файлу: rar libraries.rar (225,8 КБ, 5040 переглядів)
Тип файлу: zip aqua_controll_PNG.zip (1,59 МБ, 5056 переглядів)
Тип файлу: rar aqua_controll_spl7.rar (237,5 КБ, 4510 переглядів)
Тип файлу: rar aqua_controll.rar (9,1 КБ, 4910 переглядів)
Тип файлу: rar 220_v3.rar (18,4 КБ, 4546 переглядів)


Востаннє редагував AlexVOK: 01.02.2019 о 23:47..
Переглядів: 553459
Відповісти з цитуванням
Ці 48 користувач(ів) сказали Дякую AlexVOK за це повідомлення:
AkaPain (28.08.2015), Alex Meng (30.10.2017), Andressio (01.02.2015), Ant0ny (08.07.2018), Arduino (03.12.2016), burnashev (16.09.2018), chack (10.12.2014), Denisios (27.05.2014), dimul (29.04.2014), Floyd (09.07.2018), Gorbounov (20.09.2014), h_a_m (12.01.2015), imac2008 (20.12.2015), kolljj (20.11.2014), Litr55 (24.02.2021), LVit (20.01.2016), Mehannik (11.11.2014), MIHS (27.01.2016), Multiman (27.03.2015), nanolab (18.03.2015), Olegvs (25.03.2017), PaninAV (07.09.2018), paradox860 (22.12.2014), pdv1965 (20.03.2014), RozarioAgro (10.03.2015), rusianGrt (09.10.2017), sae74 (22.08.2014), sefr111 (28.04.2016), Sem (22.03.2015), Sikx (30.01.2019), Slesh (18.10.2014), Spiker (12.11.2015), spolyakov (20.06.2015), steals81 (17.03.2014), Toha24510 (22.10.2015), Tvister86 (07.02.2017), ya7sergey (09.02.2017), _Vadim (27.02.2016), _Константин_ (28.03.2016), акв@фанат (23.11.2014), Артур Дент (24.04.2014), Ветал (08.03.2016), Вячеслав Сергеев (14.09.2015), Игорь-1 (30.10.2014), Никола73 (31.03.2017), Петко Шкодров (18.10.2014), Сан Саныч (07.10.2024), Юрий77 (26.02.2016)
Старий 08.04.2015, 11:30   #586
Живу я тут
  
 
Аватар для Mehannik
 
Реєстрація: 10.02.2014
Звідки Ви: Кострома
Дописи: 105
сказав Дякую: 16
сказали Дякую 5 раз(и) в 5 повідомленні
Надіслати повідомлення для Mehannik на ICQ
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
Mehannik,
в скетче есть
// Init EEPROM
// for(int e = 0; e < 2047; e++) EEPROM.write(e,0);

просто раскоментируй одну строку залей скетчь
тоесть это?

// Init EEPROM
// for(int e = 0; e < 2047; e++) EEPROM.write(e,0);
// EEPROM.write(0,61); // ledContrast !!!!!!! Очень акуратно иначе белый либо черный экран
// EEPROM.write(1,200); // ledLight
// EEPROM.write(2,24); // Требуемая температура воды
// EEPROM.write(3,1); // Разрешено ли охлаждение куллером

а последнее что это ?

и какую именно стору раскоментировать ? эту // Init EEPROM или эту ? // for(int e = 0; e < 2047; e++) EEPROM.write(e,0);


Востаннє редагував Mehannik: 08.04.2015 о 11:36..
Mehannik поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 11:40   #587
Придивляюся
  
 
Реєстрація: 01.02.2015
Звідки Ви: Запорожье
Дописи: 21
сказав Дякую: 15
сказали Дякую 2 раз(и) в 2 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

AlexVOK, можно немножко поподробнее, я в этом деле новичек так что простите за может быть глупые вопросы. возьмем для примера строчку из DefaultFonts.c:

0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, // J

как я понимю, то что стоит до // это код который дисплей воспримет для отображения символа "J"?

Допустим я исправляю эту строчку:

0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, // J Ж

как дисплей понимает что нужно рисовать не "J" а "Ж" тоесть закрашивать совсем другие пикселы?

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

Цитата:
Допис від Andressio Переглянути допис
AlexVOK, возьмем для примера строчку из DefaultFonts.c:

0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, // J

как я понимю, то что стоит до // это код который дисплей воспримет для отображения символа "J"?

Допустим я исправляю эту строчку:

0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, // J Ж

как дисплей понимает что нужно рисовать не "J" а "Ж" тоесть закрашивать совсем другие пикселы?
на самом деле для отображения буквы
берется ее ASCI код - по коду находится соответствующее место(строчка)
в массиве
А в этой строке 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, собственно в битовом виде указаны точки из которых состоит конкретный символ

По этому подменяя эти строки мы вместо латинской буквы можем получить хоть кирилицу хоть иероглиф

я даже где-то в нете встречал готовый редактор этих битовых маск

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

Mehannik,
for(int e = 0; e < 2047; e++) EEPROM.write(e,0);

AlexVOK поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 15:11   #590
Придивляюся
  
 
Реєстрація: 01.02.2015
Звідки Ви: Запорожье
Дописи: 21
сказав Дякую: 15
сказали Дякую 2 раз(и) в 2 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
на самом деле для отображения буквы
берется ее ASCI код - по коду находится соответствующее место(строчка)
в массиве
А в этой строке 0x00, 0x20, 0x40, 0x41, 0x3F, 0x01, собственно в битовом виде указаны точки из которых состоит конкретный символ

По этому подменяя эти строки мы вместо латинской буквы можем получить хоть кирилицу хоть иероглиф

я даже где-то в нете встречал готовый редактор этих битовых маск
ага, таперь понятно, а можно не подменивать строки, а добавить, чтобы были и английские и килица?

Andressio поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 15:26   #591
Живу я тут
  
 
Аватар для Mehannik
 
Реєстрація: 10.02.2014
Звідки Ви: Кострома
Дописи: 105
сказав Дякую: 16
сказали Дякую 5 раз(и) в 5 повідомленні
Надіслати повідомлення для Mehannik на ICQ
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
Mehannik,
в скетче есть
// Init EEPROM
// for(int e = 0; e < 2047; e++) EEPROM.write(e,0);
сделал так

// Init EEPROM
# for(int e = 0; e < 2047; e++) EEPROM.write(e,0);
// EEPROM.write(0,61); // ledContrast !!!!!!! Очень акуратно иначе белый либо черный экран
// EEPROM.write(1,200); // ledLight
// EEPROM.write(2,24); // Требуемая температура воды
// EEPROM.write(3,1); // Разрешено ли охлаждение куллером


а он мне выдает вот что!!!!!!!!!!!!

Arduino: 1.5.7 (Windows 7), Board: "Arduino Nano, ATmega328"

Build options changed, rebuilding all

aqua_controll.ino:124:4: error: invalid preprocessing directive #for

This report would have more information with
"Show verbose output during compilation"
enabled in File > Preferences.

Mehannik поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 15:42   #592
Живу я тут
  
 
Аватар для Mehannik
 
Реєстрація: 10.02.2014
Звідки Ви: Кострома
Дописи: 105
сказав Дякую: 16
сказали Дякую 5 раз(и) в 5 повідомленні
Надіслати повідомлення для Mehannik на ICQ
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

очистил память этим

/*
* EEPROM Clear
*
* Sets all of the bytes of the EEPROM to 0.
* This example code is in the public domain.

*/

#include <EEPROM.h>

void setup()
{
// write a 0 to all 512 bytes of the EEPROM
for (int i = 0; i < 512; i++)
EEPROM.write(i, 0);

// turn the LED on when we're done
digitalWrite(13, HIGH);
}

void loop()
{
}

все равно кулер также равботает! может ли повлиять транзистор? по схеме стоит irf510 а я поставил irfz44

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

Mehannik,
1 зачем вы вставили в код #
об этом вам и написал компилятор

2 вы очистили только 512б из 2к ЕЕПРОМ
выполните for(int e = 0; e < 2047; e++) EEPROM.write(e,0);
3 изменение типа транзистора не влияет - если он исправен (не пробит)

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

Цитата:
Допис від Andressio Переглянути допис
ага, таперь понятно, а можно не подменивать строки, а добавить, чтобы были и английские и килица?
конечно можно, но
1 это не так просто
2 памяти и так мало

самое критичное последнее

AlexVOK поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 17:13   #595
Живу я тут
  
 
Аватар для Mehannik
 
Реєстрація: 10.02.2014
Звідки Ви: Кострома
Дописи: 105
сказав Дякую: 16
сказали Дякую 5 раз(и) в 5 повідомленні
Надіслати повідомлення для Mehannik на ICQ
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
Mehannik,
1 зачем вы вставили в код #
об этом вам и написал компилятор

2 вы очистили только 512б из 2к ЕЕПРОМ
выполните for(int e = 0; e < 2047; e++) EEPROM.write(e,0);
Напишите тогда как выполнить то?)

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

Mehannik, максимально подробно описано в посте #585

разве что добавлю
раскоментировать = убрать //

AlexVOK поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 17:25   #597
Придивляюся
  
 
Реєстрація: 01.02.2015
Звідки Ви: Запорожье
Дописи: 21
сказав Дякую: 15
сказали Дякую 2 раз(и) в 2 повідомленні
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
конечно можно, но
1 это не так просто
2 памяти и так мало

самое критичное последнее
Понятно, расскажете как добавить или для новичка это сложно?

Andressio поза форумом   Відповісти з цитуванням
Старий 08.04.2015, 19:03   #598
Живу я тут
  
 
Аватар для Mehannik
 
Реєстрація: 10.02.2014
Звідки Ви: Кострома
Дописи: 105
сказав Дякую: 16
сказали Дякую 5 раз(и) в 5 повідомленні
Надіслати повідомлення для Mehannik на ICQ
Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
Mehannik, максимально подробно описано в посте #585

разве что добавлю
раскоментировать = убрать //
все очистил! но так все и работает! последняя просьба скиньте свой скетч скомпа а не ссайта))) если не прокатит буду собирать отдельно термостат на охолождения))) раз в прошивка рабочая!

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

Andressio, в интернете встречал 2 решения
но обо далеко не тривиальные.
отчасти упираются в компилятор.

я б не брался.
Да и реальной задачи под это нет.

AlexVOK поза форумом   Відповісти з цитуванням
Старий 09.04.2015, 09:22   #600
Живу я тут
  
 
Аватар для mikhail.glushko
 
Реєстрація: 18.01.2015
Звідки Ви: Київ
Дописи: 374
сказав Дякую: 331
сказали Дякую 136 раз(и) в 103 повідомленні
Відповідь: Re: Простой акваконтроллер ARDUINO ===www.aquaforum.ua===

Цитата:
Допис від AlexVOK Переглянути допис
Andressio, в интернете встречал 2 решения
но обо далеко не тривиальные.
отчасти упираются в компилятор.

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

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


Share/Bookmark

Відповідь

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


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

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

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

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


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


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


no new posts