Перейти к контенту
МОРСКОЙ АКВАРИУМ - форум Аква Лого

Нильский Нильский слоник или гнатонем Петерса - Нильский слоник, или гнатонем Петерса, рыбка из семейства мормировых, распространен в центральной и западной частях Африки. Эти рыбы предпочитают селиться в реках со слабым течением, густой растительностью, часто мутной водой. Необычная, видоизмененная, нижняя губа в виде хобота придает сходство со слоном. Уникальная способность этих рыб - электролокация. Рыба создает слабое электрическое поле вокруг себя и считывает его искажения окружающими объектами, таким образом создается карта местности.

Морской чёрт-обжора

Судак-тудак

У дороги новый чибис

svyaz

Моряки
  • Число публикаций

    330
  • Регистрация

  • Последнее посещение

Весь контент пользователя svyaz

  1. Ваге, покажите реальное фото вашего экрана, по ссылке выше на ваш экран, разъем 34pin и обратите внимание на первой ножке +5v , а на второй минус. Тогда как на 40- а пиновых - наоборот.
  2. Ваге, почитайте на Британском форуме ветку товарища compfranon, он там тоже пытался айди шлейф подключить, чем все кончилось, я не вникал, а здесь он рассказывает как сделал рамку для экрана. Александр Авдеев без печатной платы (PCB) будет вот с таким шлейфом HX8347-А - работает только в режиме 8 bit SSD1289 - более новый, работает в режиме 16 bit Конкретно в проекте Jarduino, разницы в скорости работы не видно, из за достаточно медленной ардуино, а вот на арме с 96mhz уже будет видно.
  3. В библиотеке UTFT есть поддержка контроллера SSD1963, на которых собраны новые дисплеи и сигналы на 40 pin разъеме, полностью совпадают с маленьким экраном "3,2" дюйма, используемым в текущей версии кода. Нужно "всего лишь" пересчитать координаты, это достаточно легко (если не вмешиваться в функции) я думаю что это сделать может любой и знаний особых не нужно.
  4. Я на всякий случай спросил у Джейми по поводу этих экранов и он подтвердил мою теорию. "Использовать для других вещей" - имеется ввиду вынести туда кнопки меню, добавить датчико температуры, сделать кнопку fish food и. т. д. Ну и еще он сказал, что в следующей версии Jarduino будет веб интерфейс, я так понимаю через Wi-Fi и расширенные функции ручного управления.
  5. Та, которая покупная, такая как по ссылке, только у меня штырьки не запаяны, их нет в комплекте вообще. Ну такую вот мне знакомый подсуетил А если имеется ввиду та что я вырезал, то боюсь её фото вам не понравится (ни с одной стороны) я на неё уже много всего напаял, вот есть её самое презентабельное фото (это она так в детстве выглядела ).
  6. У меня нет драйверов LDD для реальных испытаний, возможно отпишутся в теме те, кто их реально подключал, но если там реально нужно 6v - можно использовать схему на NPN транзисторе из первого сообщения (ту, что для драйверов ELN) , а питание собрать например на LM317 Cхема часов (Сообщение #13) Согласующие резисторы (Сообщение #193)
  7. Только время загрузки скетча, все остальное у всех 2560 мег одиннаково, за исключением Arduino Mega ADK - которая имеет на борту дополнительный USB Host интерфейс, для подключения устройств с интерфейсом USB. Возможно я сам с собой разговариваю, но вдруг тему читают такие же как я "модификаторы" и это им сэкономит время. Подружить одновременно езернет и радиомодуль NRF24L01 (на последнем скетче от Джейми) удалось используя альтернативные библиотеки, для Ethernet библиотека Webduino. Для NRF24L01 - библиотека с софтверным SPI (пины, назначаем сами) Качать ту, что для Arduino v1.1
  8. Есть альтернативная библиотека webduino, я пока еще не вникал так как еще на пока на "грабли" от стандартной не наступил. Скорее всего это связано с проблемой сброса езернет модуля, у меня тоже было - пока карту не передернешь, не работает. На форуме ардуино есть топик где обсуждали эту проблему. В "новых" модулях вроде бы как решили, но фиг его знает какой у меня , я взял самый дешевый китайский.
  9. C дозаторами и недельными таймерами - французкий SebduinoV2, там задействована SD карта, в оригинальной версии - практически вся графика с карты памяти, с кодом Jarduino у него нет ничего общего. Так как коллективных проектов практически нет, каждый пошел своим путем, очень многие на основе проекта Stilo Вообще в ардуино не всё так гладко, нельзя например задействовать одновременно SD карту на дисплее и эзернет шилд так как они используют один и тот же ISP, даже на шилде эзернет переключение между картой памяти и и контроллером происходит поочередно через 4 пин, потому использование карты памяти сильно замедляет работу. Если память не использовать - вывод страницы в браузере - моментальный я бы сказал исчисляется микросекундами. Два устройства ISP можно приживутся только если модифицировать библиотеку. По поводу экрана - я не могу гарантировать что он подойдет на все 100, так как я посмотрел демо код и там есть некоторые функции инициализации мне незнакомые, нужно продавца спросить, он же разработчик библиотеки UTFT Henning Karlsen Я паскаль не изучал, потому незнаю. Я забыл про бары отображения яркости каналов, там нужно будет вмешиваться в функции для увеличения еще можно шрифты заменить на большего размера, но это очень легко. Это старый убогий интерфейс, новый пока показать немогу, так как не запускается еще.
  10. Если мы говорим о оригинальном скетче jarduino, то размер не увеличится не на один байт, так как мы изменяем только координаты, все функции остаются прежними. Исчисление координат начинается с верхнего левого угла. И если мы просто подключим новый экран с разрешением 800х480 (естественно указав в скетче его модель) мы получим следующую картину (масштабы соблюдены) Так как в скетче, как я уже говорил исчисление по X и Y начинается от нуля вот все координаты (прописанные в скетче) туда и станут. Рассмотрим подробно к примеру код из кетча, для кнопки red, саму графическую часть без функции тач-управления для неё, том тоже координаты (место куда мы нажали) и указываем что при этом нужно сделать или куда перейти. myGLCD.setColor(255, 0, 0); - цвет красный (по принципу R,G,B) На этом сайте можно визуально выбрать нужный цвет и переписать его значения. myGLCD.fillRoundRect(5, 174, 105, 194); - заполнение области, выбранным выше цветом. Первая цифра - начало по координате X (по горизонтали от координаты 0) Вторая - начало по Y (по вертикали от координаты 0) Третья - конец по X Четвертая конец по Y , то есть нижняя область кнопки. setFont(SMALL, 255, 255, 255, 255, 0, 0); - здесь так шрифт маленький, цвет шрифта белый, фон красный. myGLCD.print("Red:", 15, 178); - в скобках надпись Red: (выбранным выше цветом) и координаты, первая цифра, координата по Х (от нуля), вторая координата по Y. myGLCD.print("0", 67, 178); - то же что и выше. myGLCD.fillRect(4, 173, 106, 195); - белая кайма по периметру кнопки, желательно что бы она была на один пиксель больше размера самой кнопки, тогда смотрится ярче. Вот и вся графика, мы полностью нарисовали красную кнопку, но размеру неё будут одинаковыми что при маленьком экране, что при большом, и для того чтобы на большом экране она стала больше - нужно менять её координаты. Функции и цвет не трогаем, меняем только координаты, но и не забываем про пропорции, расстояний между кнопками, если так всё и оставить - будет просто не видно. Вот еще пример, отображение даты (левый нижний угол) myGLCD.print(bufferD, 20, 227); - выводим из буфера в координату, первая цифра - Х (по горизонтали), вторая по Y (по вертикали) Это то что нужно менять при коррекции под другой экран, все остальное мы не трогаем, как видно нам здесь нужно изменить только одно значение Y (опустить вниз) Да не за что. Джейми разрешил мне опубликовать его контроллер, только при условии что я буду отвечать на все вопросы, так как он на этот форум не ходит. Кроме того хочется что бы больше людей присоединялось к добавлениям / изменениям в коде. Как оказалось, встроить web контроль очень легко, на скрине реальные значения ледов и так как датчики у меня не подключены значения температур. Все это без использования sd карты - только htm. Но это выглядит очень убого и я сейчас занимаюсь оформлением встраиваю кнопки управления и попробую добавить ведение логов.
  11. Cудя по описанию на сайте, эти экраны работают с новой универсальной библиотекой UTFT, и сигналы полностью соответствуют, а значит долно работать, но для того чтобы было на весь экран - нужно брать калькулятор и в самом скетче пропорционално добавлять координаты, в коде нужно будет изменить около тысячи строк.
  12. Те, которые использует Джейми - четырехпроводные и они серии Arctic Cooling F12 PWM Fans 120mm , по тому как и схема под них на транзисторах BC549c у которых максимальный ток коллектора 100MA, а обратной связи там и нету, там есть включение вентилятора ,обозначено digital pin 48 и есть управление обозначено pwm pin 45.
  13. В самом чипе ардуино с завода "зашита" программа (загрузчик) которая находится в начале памяти, благодаря этому контроллер прошивает сам себя. На заводе загрузчик прошивают ISP (ICSP- если быть точнее) программатором типа такого На плате ардуино под программатор выведены пины, они же используются некоторыми шилдами, (например эзернет) С обычным вентилятором (не шим) чуть сложнее ссылка Да, там была опечатка. 1280 покупать нет смысла, она не намного дешевле 2560, а памяти меньше. На первой странице есть все схемы. Согласовывать нужно так как драйверу Mean Well для включения на полную яркость нужно 10v, в ардуино питание 5v, если подключить прямо к ардуино - будут работать на половину яркости. Я взял такого плана макетку, положил сверху на нее ардуино и обвёл маркером, затем ножовкой обрезал и выровнял напильником края. У Джейми макетка лучше - там дырок больше чем на тех что у меня Тут я не знаю, я заказывал через знакомого, показал ему ссылку - он купил (с американского). Если Вы читали тему автора проекта, то можно было увидеть какой у него "бутерброд" получился Первая идет ардуно 2560 Cверху на нее одета "проходная" макетка на которой разъемы: Обведено зелёным - wavemaker, Желтый - выходы PWM для вентиляторов (для сампа), Темно-красный квадрат - транзисторы управления этим вентилятором. По "синему" приходит питание 12 и 5v Затем идет еще одна макетка, на которой buzzer, транзисторы для других вентиляторов и снизу разведены провода к разъему (выходы на драйвера) И уже в самом конце, на весь этот супер-бутерброд одевается ITDB02 Arduino MEGA Shield v1.1 На котором часы с батарейкой и согласующие экран резисторы. Размер платы ардуино, не тай уж и большой (как пачка дамских сигарет) толщина естественно меньше.Так что в собранном виде не такое уже и большое получается, по масштабу юсб разъема видно.
  14. Ардуино - по сути своей отладочная плата, и для тех кто заливает (для отладки кода) по 150 раз на дню скетч, скорость загрузки важна. Вам код в ардуино нужно "залить" только один раз, если не хотите ждать лишние 2-3 секунды, берите плату на последней версии USB UART (ATmega16U2) USB UART - согласование порта юсб с uart процессора, он там отдельно выведен разьемом и те у кого есть программатор могут сэкономить 8кб используемые загрузчиком. Для наших целей - абсолютно все равно, какая версия дуины, ну возможно нужно будет подпаять керамический конденсатор, для улучшения сброса, я думаю эти мелочи не стоят того что бы за них переплачивать.
  15. В существующем проекте термодатчиков как раз 3, один - вода, второй радиатор (основной свет), третий - радиатор (в сампе) и соответственно они управляют вентиляторами, на частоте 25 кгц. По пятому пункту, такая функция есть в версии 1.2 В самом скетче можно выбрать в каком режиме будет работать шим 200hz или 1кгц (по умолчанию там 200гц) В теории можно подключить любые драйвера с ШИМ, на практике - пусть напишут те кто уже опробовал, я пока не подключал. Версии ардуин, отличаются преобразователем USB UART (связь между компьютером и процессором) которое в нашем случае нужно только один раз - для загрузки скетча. У мня есть 2 вида ардуин, одна 2560 на плате от 1280, другая 2560 8U2, вторая выполнена более качественно и скетч загружается чуть быстрее, за счет того что USB UART выполнен на ATmega8, а не на FT232BM, как в предыдущей версии. Для проекта годится любая 2560, на данный момент код вместе с графикой (меняющиеся в зависимости от фаз, иконки луны ) занимает 174 из доступных 258кб. Экран должен быть разрешением 320х200 и быть выполненным на одном из этих контроллеров. - HX8347-A - ILI9325D - ILI9327 - SSD1289 "Микруха на обороте" - контроллер тач панели, так что лучше чтобы он там все таки был Есть Китайские экраны, урезанные у них 32 пина вместо 40 и штырьки там сбоку, нужно видеть что там за сигналы выходят. Лучше "за 18 бачинских с микрухой" - тогда точно работать будет, да и удобней подключать, можно удлиннить шлейфом от HDD Шилд там всего один, на нём часы DS1307 с батарейкой и согласующие резисторы для экрана, так как напрямую подключать нельзя. Мне например проще спаять самому и еще много свободного места останется, которое будет использовано для транзисторов (согласование драйверов Mean Well) и силовые транзисторы вентиляторов. Макетка Mega Prototyping Shield у меня уже есть, как оказалось не сильно то она макетка, пару дырок в центре, не много там всего можно поместить и выходы из ардуино разведены к выходам из макетки. То есть их нужно разрезать и впаивать туда резисторы, а вот как промежуточная плата (между ардуиной и ITDB02 v1.1) годится. Для контроллера нужны 3 детали, посмотрите двумя постами выше на них ссылки
  16. Брать - можно, работать будут, но справа экрана будет пустая полоса шириной 80 пикселей. Для полного заполнения экрана, нужно в коде делать смещение по Х либо в эту часть экрана перенести некоторую часть функций, кнопки сохранить и отмена например, как это сделал один Бразилец.
  17. Всё, получил все компоненты и теперь попробую реализовать следующую идею: Контроллер slave (в светильнике) - имеет полноценный код jarduino, но с добавление некоторых функций, а именно: открыт доступ (через радиоканал) к eeprom, адреса где какие настройки хранятся, нам известны. Контроллер master - код jarduino, но только графическая оболочка, при сохранении настроек, они сохраняются не в самом контроллере, а отсылаются по радиоканалу в контроллер slave и в конце цикла записи отсылается подтверждение о удачно віполненной команде. Сейчас скетч устроен таким образом, что когда мы заходим в определённую функцию, идёт считывание из eeprom установленных настроек, нужно реализовать что бы читались настройки (по радиоканалу) из контроллера слейв. Как контролировать яркость по канально - я выше показывал, у кого не работает - установите в Serial Monitor скорость 115200 (по умолчанию там 9600baud)
  18. Вот оно, правильное решение ! Если кто скачивал и запускал мой последний код jarduino, мог увидеть я там сделал, примитивно правда через сериал монитор в самом компиляторе, переходы по меню. В компиляторе Ардуино открываем serial monitor и печатаем указанный ниже символ. Мне такая идея сразу понравилась, так проще и минимум переделок //------------------------------------- Команды через ком порт ---------------------------------------------- void serialCommands() { int command = 0; // Эта команда символ в ASCII форме, отправленная в последовательный порт int i; byte test; if (Serial.available()) { // Look for char in serial que and process if found command = Serial.read(); if (command == 77) { // "M" = Menu dispScreen=1; clearScreen(); menuScreen(); // переход в главное меню } if (command == 67) { // "C" = Cancel dispScreen=0; clearScreen(); mainScreen(true); } if (command == 84) { // "T" = Time and Date dispScreen=2; clearScreen(); clockScreen(); // переход в clock } if (command == 83) { // "S" = Seting dispScreen=12; clearScreen(); generalSettingsScreen(); // переход в меню настройки } if (command == 71) { // "G" = Graphic dispScreen=16; clearScreen(); graficoScreen(); // переход в главное меню } if (command == 82) { // "R" = Reset (clear memory) dispScreen=1; clearScreen(); resetScreen(); // переход в главное меню } if (command == 90) { // "Z" = Screensaver clearScreen(); screenSaver(); TimeSaver(true); обратную связь сделать легко, в конце каждого цикла ставим Serial.println - обычно используют при отладке. Если кто хочет проверить - найдите в коде строку analogWrite(ledPinMoon, moon_out); сразу под ней скопируйте код: Serial.println(sled_out); Serial.println(wled_out); Serial.println(bled_out); Serial.println(rbled_out); Serial.println(rled_out); Serial.println(uvled_out); Залейте скетч в ардуино, запустите serial monitor и наблюдайте следующую картину. Каждую секунду ардуино посылыет информацию о яркости каналов. Такую манипуляцию нужно проделать с другими функиями температура и т.д. и обратная связь готова.
  19. Я как и большинство здесь присутствующих - моряк, правда здесь на форуме я свой аквариум не показывал, но у меня есть на пикасе галерея и есть полное описание всей системы Сейчас у меня полный перезапуск (были проблемы с ДСБ) Ну и соответственно "заболел" LED и делаю свой светильник (уже почти закончил) В светильнике будут светодиоды всех видов, почти все cree, китайские оранжевые, deep red (2 вида) и 2 вида UV 400 b 420nm, но самое главное это почти половина MCE 4CT RGB+W (видел Японский светильник полностью на rgb led) Буду тут наверное первый с таким светильником, ну и радиатор у меня такой - что можно без вентиляторов. Контроллер собственно под этот светильник и делал (иначе зачем он мне нужен), но так как "пошла жара" c ардуиной, нужно другой комплект для экспериментов. В контроллере SebduinoV2 используется именно такой электрод, на сайте производителя есть скетчи для ардуино, для всех выпускаемых ими датчиков.
  20. Cуществует библиотека EasyTransfer для связи двух ардуино, ну и если в гугле поискать EasyTransfer + NRF24L01, можно найти примеры Я себе тоже заказал еще одну ардуину 2560, второй экран уже получил (раньше атмегами страдал - теперь сплошные ардуины) На днях все должно прийти, сразу попробую связать их между собой.
  21. Ваге, уже было множество попыток и здесь и на Украинском форуме заплатить проффесиональным программистам дабы они создали нечто легко повторяемое и соответствующее требованиям аквариумистов. Но получив ТЗ все куда то исчезают, причем на долго. Связка ардуино + ITDB02 - это лучшее на сегодня решение, собрать и запрограммировать сможет практически любой, а колличество существующих шилдов http://shieldlist.org/ позволят создать все что угодно. Модули ардуино есть в магазинах по всему миру, не нужно ждать что кто-то вытравит и вышлет плату. "Открытый" контроллер Reef Angel построен подобным образом, хотя какая разница если есть 258 кб доступной памяти (8кб занимает загрузчик), при использовании например 100 из 258 - быстрее работать не будет. Обсолютно без разницы какой код использовать. На примитивном уровне я вижу это так: Вместо отправки комманды непосредствнно на пин ардуино, мы его перенаправляем на радио модуль, а уже на другом конце радиоканала комманда принимается и направляется непосредственно на пин ардуино. Во всех графических дисплеях шрифт устроен таким образом и контроллеру без разници какой там язык или просто закарлючки, он выводит заданное знакоместо. Здесь я не уверен, контроллеру все равно нужно будет каждые 15 минут читать таблицу яркости всех каналов, да и еще если добавить обратную связь прийдется дополнительно опрашивать slave контроллер. Я так и делаю с текстом и небольшими картинками вот минимально читаемая картинка, хотя уже буква в с близи выглядит коряво, но это минимальный размер кириллического шрифта.
  22. Вот например графика из меню термодатчиков (в нужном размере) а вот оригинал из которого я его сделал, проблема подобрать такой маленький шрифт, чтоб подписать датчики и при этом он был чиаем. Возможно можно что-то по лучше и красивее придумать, стрелки и положение отображения температуры - могут быть любыми (на сколько есть фантазии), я потом по картинке спозиционирую. В принципе размер картинки может быть 320х240, но тогда время загрузки картинки около 2-х секунд, что несколько раздражает особенно когда меню не одно, при указанном размере - около 1 сек. Сам экран нельзя сказать что очень качественный, поэтому в реальности картинка выглядит тускнее, нужно это учитывать. Шриф должен быть в формате 6 символов на 16, первый и последний символ отсутствуют. Расположение букв алфавита - может быть любым, но желательно как на картинке.Вот оригинальный размер, поддерживаемые форматы png, .jpg, .gif. Скайлить нельзя, ерунда получается полутоновые переходы очень плохо выглядят после конвертации. Это стандартного размера шрифт. желательно сделать еще меньше, вот этот не плохо выглядит на экране. Другого русского шрифта (в нужном нам формате) кроме того что я выложил с jarduino - в природе не существует. Вот еще одна моя жалкая попытка сделать различные полезные значки и стрелки, но так как использовался скайлинг (масштабирование) вид после конвертации ужасный, вокруг значков кляксы и разводы (там где полутоновые переходы) Должно быть как на правой части картинки, чётко чёрный и белый, не важно какой может быть и синий. Раз уже есть такой экран - нужно его использовать по полной иначе можно вообще без экрана, так проще намного.
  23. Меня Вадим зовут Я читал Вашу идею на Британском форуме, я пока не настолько разбираюсь что бы гарантировать что через месяц будет все работать, так как занимаюсь ардуиной после работы, а не вместо На данном этапе в основном адаптирую различные функции под связку ардуино + ITDB02 из других проектов. Таким образом и практикуюсь. Следующим этапом будет добавление изернет модуля, так как у меня есть куски кода. Модуль уже заказан (Wiznet W5100) и заказал пару радио модулей NRF24L01, заказывал в Украине, через пару дней будут. Я смотрю NRF24L01 популярны, есть много примеров, попробуем разобратся. Оба кода используют оду и ту же связку железа, ни каких переделок не требуется, разве только вывести дополнительные порты (таймеры, доз. помпы и др. ) Так же можно перенести функции из одного контроллера в другой. И хотелось бы хоть какой нибудь помощи, не обязательно програмного характера, есть много моментов которые можно улучшить. Например русский шрифт, я делал его на скорую руку, каждое знакоместо размером с заглавную букву и текст написанный маленькими буквами при близком расположении "съедается". Еще можно поработать над графикой. Так как для ускорения работы контроллера я для большинства графики использую память ардуино и каждый кб. на счету. Такой пример: загрузка 8 графических кнопок с sd карты (в меню часов) занимает секунд 5, из памяти ардуино - меньше секунды. Вообщем работы много и любой кто захочет помочь, получит от меня очень подробно закомментированный (на русском) код.
  24. На фото обведены (блоками) используемые пины Toch, I2C Bus, Display, Power ,SD Card - конкретно в jarduino не используется, там термодатчики на 51-пине. Указанные в блоках пины заняты под дисплей и RTC, все остальные свободны, некоторые пины указанные в блоках используются в параллели I2C, Power. В документации на дисплей указана возможность работы в режиме SPI.
  25. У всех проэктов есть свое начало, у джардуино взят за основу код Stilo, но на данный момент там от него ничего не осталось Джейми все переписал. Я взял за основу Французкий проэкт Sebduino, есть бесплатная версия и есть платная (обновления приходят на почту) Но из за того что во всех меню используются картинки с SD карты - он работает довольно медленно. Вот как выглядит настройка дозатора и ниже картинка (в оригинальном размере) с SD карты. Cервопривода 2, они для кормушки, на дозаторах секундные таймеры. Мне в этом проэкте нравится то, что есть меню ручного управления. Можно быстро зайти и включить или выключить В аттаче оригинал, железо то же что и jarduino. Все что в папке CarteSD - скопировать на sd карту (в реальности используются файлы с расширением raw) SebduinoV2.zip
×
×
  • Создать...

Политика обработки персональных данных