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




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

Примітки

Відповідь
 
Параметри теми Параметри перегляду
Старий 23.07.2013, 13:58  
Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD + Android
Бан за нарушения

Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
 

сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
sae74 sae74 поза форумом 23.07.2013, 13:58
Рейтинг: (14 голосов - 5,00 средняя оценка)

Какое то время назад решил я собрать свой вариант контроллера для аквариума.
На долго затянулся этот процесс.
Идейным вдохновителем стал Pimass,а автором графики и дизайна экранов его девушка Виктория. За что им огромное спасибо. У меня фантазии так и не хватило.

Вот на чем собран контроллер


************************************************** *************************

mega 2560
экран 3,2

переходник между экраном и ардуиной

часы RTC DS1307

Переходник нужно перепаивать 8 проводов.

У меня в теме есть плата этого переходника с часами, делителем напряжения для пш. но собирать еее нужно самому. Детали стоят копейки. Плату можно заказать у китайцев но минимум 10 штук. или у меня есть еще парочка по 5 долларов.
Тогда все аккуратно без соплей и не нужно танцев с бубном.

Это минимум что нужно для запуска программы.
Еще блок питания на 5 вольт, если будут вентиляторы то и на 12 вольт. вот такой на два напряжения 12 и 5 вольт сразу.

Для управления каналами до 24 вольт можно использовать сборку на 4 канала или на 1 канал

Для нагрузки на 220 вольт такие реле, но я использую силовую плату на симисторах.
ПШ усилитель собрать самому, лан модуль стоит 14-17 долларов, но не стоит его брать, у меня реализовано только мониторинг на андроид телефон и дальше развивать нет времени.

Датчик температуры для пресной воды

************************************************** *************************




Контроллер имеет 9 каналов для подключения нагрузки.
На каждый канал до 7 отдельных программ.
Дополнительно канал на работу с фильтром (временное отключение). Канал управления кулером охлаждения LED светильника.
Часы реального времени.


Можно подключить следующие датчики контроля:
4 датчика температуры
4 пш электрода
2 ультразвуковых датчика уровня воды

Каждый датчик можно одновременно использовать для управления несколькими каналами. Например:
1 канал осуществляет подачу СО2 согласно данным с электрода ПШ до уровня 6.00
2 канал следит что бы показания с того же электрода и как только показания достигнут 5.5 начнет работать компрессор и подавать воздух в аквариум.

Что умеет делать контроллер:
1. включать свет по таймеру (рассвет/закат)
2. контроль температуры обогрев/охлаждение
3. контроль СО2 повышение/понижение
4. контроль уровня воды слив/долив
5. подача удо или других жидкостей
6. каждый канал имеет регулировку PWM (шим) уровня,
есть возможность выбирать PWM частоту для всех каналов сразу, следующие значения в Гц: 3000, 2500, 2000, 1500, 1000, 500
7. калибровка дозатора УДО, Подача УДО с точностью 0,5 мл.
8. калибровка ПШ электродов
9. отключение фильтра от 10 до 50 минут
Пункты с 2 по 5 можно ограничить по времени. Например контроль CO2 с 8-00 до 19-00

В планах:
1 Подключить LAN модуль для управлением контроллером
2 Сделать ведение ЛОГ файла данных
3 Сделать управление помпой течения для моря

Необходима помощь в разработке силовой исполнительной платы
Буду рад любой помощи.



Главный экран
Скрытый текст



Пример работы с программы, немного устаревшая версия.


Исходники можно скачать тут
Данная версия работает у меня уже давно и вроде бы стабильно.
Есть некоторые "баги" но их исправляю.
Если я смог сделать, то Вы уж точно сможете.....


Инструкция по сборке
Тут

Для тех кто захочет повторить «MegashildSAE»
Тут

Новое в контроллере: 22 февраля 2015г.
1. Убрал внешний ЕЕПРОМ, все хранится на ардуине.
2. Заменил поплавковые датчики уровня воды 4 шт, на 2 ультразвуковых.
3. Сделал калибровку уровня воды для срабатывания датчика.
4. Добавил экран с отображением состояний выходных каналов в Диаграмме.

Востаннє редагував sae74: 23.02.2016 о 07:17..
Переглядів: 415637
Відповісти з цитуванням
Ці 62 користувач(ів) сказали Дякую sae74 за це повідомлення:
Afra (19.03.2015), Aleks34 (05.05.2015), Alex1970 (02.03.2016), alexhaf (03.06.2018), alex_zm (08.01.2017), AndrewUh (02.04.2017), andreymakaroff (01.04.2016), Asrok (27.10.2016), avk71 (20.12.2015), chikvlad (03.12.2017), DEaD_MOPO3 (27.10.2013), Dimgat (28.07.2017), EVGENIYS (24.07.2013), frozen (22.03.2015), GOREZ (23.07.2013), Heet (18.03.2015), iris_ko (12.03.2016), Koroba (03.04.2015), LVit (24.10.2013), maksim_pw (06.05.2015), maxkor1973 (08.07.2015), Mike Creative (19.03.2015), nanolab (20.04.2015), nikservice (18.09.2013), Opsis (05.05.2014), paradox860 (25.02.2015), pimass (23.07.2013), radiys (24.07.2013), Robby (08.07.2014), Rulik (12.10.2016), Ruslan.Kuchma (16.11.2015), ryajentzev (24.01.2016), s2dd (23.07.2013), Salton (26.07.2013), SeamanOfFortune (06.04.2015), Sem (23.07.2013), Sergey75 (01.03.2014), Sergeyg (24.07.2013), Sergio_Bad (23.04.2015), silversilversilver (19.04.2015), spav777 (23.07.2013), Starcomputer (23.07.2013), TakedaMaru (11.08.2013), Udav4ik (16.10.2015), UraUta (23.07.2013), US5TC (22.03.2015), usaty (14.05.2015), vettan (01.04.2015), viv1976 (24.07.2013), vivat_ko (23.07.2013), VOKA (25.07.2013), vsg (16.11.2013), Zoran_v (19.03.2015), zps (08.01.2017), Вечно Молодой (17.11.2013), Дима11 (21.07.2014), дух святой истины (23.07.2013), Игорь-1 (31.10.2014), КЫСЬ (11.02.2014), Маркес (23.07.2013), Снегозавр (03.03.2015), старик (24.07.2013)
Старий 19.03.2015, 16:49   #541
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, ну и славно.


__________________

sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 16:53   #542
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

А вот синий_экран печалит

Шилд вот такой только версия 2.2: http://www.elecfreak...2-Shield-01.jpg

Паять пока не решаюсь, т.к. у меня тот же самый бутерброд без всякой перепайки нормально запускается с jarduino. SD-карта, тач всё работает с jarduino корректно.

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 16:55   #543
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, Ваша ссылка не открылась. Синий экран и будет, пока не обрежете 53 ножку.


__________________

sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 16:56   #544
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

правильно ли я понимаю, что все провода, как для версии с резисторами паять не надо, только 53 ножку?

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 16:58   #545
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

вот такой шилд, но версия 2.2 http://www.elecfreaks.com/store/lcd-...d10-p-214.html

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 16:58   #546
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, Да. 53 отрезать. Подпаять к контакту 4 – к дорожке 53 после резистора.

4 пин перерезать и подпаивать проводник не посредственно к пину


__________________


Востаннє редагував sae74: 19.03.2015 о 17:06..
sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 17:23   #547
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

Ножку отогнул, скетч jarduino стал ругаться, что не видит карту памяти.

Только вот незадача, на шилде я не вижу резисторов вблизи 53 ножки.

может просто отогнуть 4й контакт и соединить проводком с отогнутым 53? прокатит?

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 17:24   #548
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, отогнуть 53 и 4 пины.
К отогнутому 53 подключить 4 пин с ардуинки.

Все должно заработать - если библиотеку UTFT вы используете мою, исправленную.


__________________

sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 17:44   #549
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

Сделал.
Экран всё равно синий.

Вот этот код выдает теперь 1 (раньше было 99)

byte andrey = 99;
if (0 == file.initFAT(SPISPEED_VERYHIGH)) {
andrey = 1;
}//; // Инициализация карты памяти
else if (0 == file.initFAT(SPISPEED_HIGH)){
andrey = 2;
}
else if (0 == file.initFAT(SPISPEED_MEDIUM)){
andrey = 3;
}
else if (0 == file.initFAT(SPISPEED_LOW)){
andrey = 4;
}
Serial.print (andrey);

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 17:46   #550
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, Если выдает 1 то инициализация карты прошла, если 99 то карта не определялась.
Карту отформатировали в ФАТ?
Файлы распаковать в корневой каталог без папок.


__________________

sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 18:02   #551
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

Все так сделал. Как диагностировать чтение файлов с карты?

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 18:03   #552
Бан за нарушения
  
 
Реєстрація: 04.01.2009
Звідки Ви: Полтава
Дописи: 5.494
сказав Дякую: 6.242
сказали Дякую 5.758 раз(и) в 2.264 повідомленні
Надіслати повідомлення для sae74 на ICQ Надіслати повідомлення для sae74 на Skype
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

safari, Буду дома через час, тогда и помогу.


__________________

sae74 поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 18:29   #553
Придивляюся
  
 
Реєстрація: 11.03.2015
Звідки Ви: Сибирь
Дописи: 54
сказав Дякую: 5
сказали Дякую 16 раз(и) в 10 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

Доброго времени суток.
Подскажите, что я не так делаю:
Начну с того, что с ардуино я познакомился только когда она пришла ко мне(с программированием для ардуино тем более не знаком)посмотрел уроки, помигал диодом,но бралась она для аквариума.
Если я правильно понимаю, библиотеки с Arduino_libraries мы закидываем в папку libraries ардуины, удалив те библиотеки, которые идут с самой ардуино.(по умолчанию она расположена в документах)файлы с SD_card закидываем на SD карту.
Пробовал разные версии программы, и последнюю и старые. в последней версии она ругалась на inconsola.прочитав последние посты, выяснилось что нужна версия 1.0.5.скачал, распаковал, заменил библиотеки, а она выдает вот что:
(просто проверка скетча, без подключения ардуины)
finalSborka_UZ.ino: In function 'void setup()':
finalSborka_UZ:612: error: 'A8' was not declared in this scope
finalSborka_UZ:613: error: 'A9' was not declared in this scope
finalSborka_UZ:614: error: 'A10' was not declared in this scope
finalSborka_UZ:615: error: 'A11' was not declared in this scope
finalSborka_UZ.ino: In function 'void otobrazit_setup()':
finalSborka_UZ:901: error: call of overloaded 'String(float)' is ambiguous
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:70: note: candidates are: String::String(long unsigned int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:69: note: String::String(long int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:68: note: String::String(unsigned int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:67: note: String::String(int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:66: note: String::String(unsigned char, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:65: note: String::String(char)
finalSborka_UZ.ino: In function 'void obhod_sensor()':
finalSborka_UZ:4004: error: 'A12' was not declared in this scope
finalSborka_UZ:4005: error: 'A13' was not declared in this scope
finalSborka_UZ:4006: error: 'A14' was not declared in this scope
finalSborka_UZ:4007: error: 'A15' was not declared in this scope
Ultrazvuk_uroven.ino: In function 'byte Uroven_uz(byte, byte)':
Ultrazvuk_uroven:21: error: 'A8' was not declared in this scope
Ultrazvuk_uroven:24: error: 'A9' was not declared in this scope
Ultrazvuk_uroven:49: error: 'A10' was not declared in this scope
Ultrazvuk_uroven:53: error: 'A11' was not declared in this scope

Запускаем программу, выбираем файл-открыть -finalSborka_UZ.ino
правильно? если выбрать другой файл с расширением android.ino(к примеру), она говорит, что "файл android.ino должен быть внутри папки скетча с именем таким-то.Создать эту папку, переместить файл и продолжить?" выбираю "да" она создает папку с именем "android" и закидывает туда файл android.ino. Это нужно делать или оставить всё как есть?
Версия шилда у меня как и у Safari, 2.2 с чипами.
а сама ардуино вот:
http://ru.aliexpress.com/item/Free-s...mmendVersion=1

frozen поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 19:06   #554
Придивляюся
  
 
Реєстрація: 09.02.2015
Звідки Ви: Москва
Дописи: 18
сказав Дякую: 0
сказали Дякую 4 раз(и) в 4 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

выберите в меню: сервис, плата, Mega 2560

safari поза форумом   Відповісти з цитуванням
Старий 19.03.2015, 19:36   #555
Придивляюся
  
 
Реєстрація: 11.03.2015
Звідки Ви: Сибирь
Дописи: 54
сказав Дякую: 5
сказали Дякую 16 раз(и) в 10 повідомленні
Re: Контроллер на базе Arduino Mega 2560 + 3.2" TFT Touch LCD ===www.aquaforum.ua===

выбрал,ошибок стало меньше, но они всё равно есть:
finalSborka_UZ.ino: In function 'void otobrazit_setup()':
finalSborka_UZ:901: error: call of overloaded 'String(float)' is ambiguous
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:70: note: candidates are: String::String(long unsigned int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:69: note: String::String(long int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:68: note: String::String(unsigned int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:67: note: String::String(int, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:66: note: String::String(unsigned char, unsigned char)
C:\Users\manag_000\Desktop\arduino-1.0.5\hardware\arduino\cores\arduino/WString.h:65: note: String::String(char)

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


Share/Bookmark

Відповідь


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

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

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

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


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


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


no new posts