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

Мне «Мне продали больную рыбу!» - или бывает ещё радикальнее: «Этот магазин торгует больной рыбой!» Может ли такое быть? Теоретически - может, хотя ни один зоомагазин не станет этого делать намеренно. Если не верите, попробуйте набросать (хотя бы в общих чертах) бизнес-план по торговле заведомо больной рыбой. Сразу станет ясно, что этот план к процветанию не приведет. По понятным причинам (прямые убытки от падежа, репутационные издержки) зоомагазины стараются с больной рыбой дела не иметь и её не продавать.
Сегодня, в век центрального отопления и тройных стеклопакетов, обогрев аквариума уже не кажется нам актуальной задачей. Но как же справлялись с этой проблемой наши предки в доэлектрическую эпоху, когда нормальная комнатная температура редко превышала 14-18 градусов?

azh122

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

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

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

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

  1. автодолив сейчас на будущий морской аквас сделать. Правда не сосем ардуина, но язык тот же. Собственно вопрос по скетчу и защите от глюков. Там же волна. Как ее правильно отсечь в программе? В пресноводном с мелкой рябью вполне достойно вот такой кусочек скетча: //msp430g2553 #include "TwoMsTimer.h" #define ID_MODBUS 5 #include "SimpleModbusSlave.h" int checkPin = P1_5; //пин общего электрода byte inqty=7; // кол-во электродов byte intmp; //предыдущее значение электродов boolean indata[8]; //состояние электродов после всех "фильтров" byte incount[8] = {0, 0, 0, 0, 0, 0, 0, 0}; boolean monitor=0; int sec; byte inreg; void setup() { pinMode(checkPin, OUTPUT); digitalWrite(checkPin, LOW); TwoMsTimer::set(1000, Tim); TwoMsTimer::start(); } // 1 сек void loop() { if (monitor==1) { intmp=inreg; // запоминаем предыдущее значение digitalWrite(checkPin, HIGH); //посылаем +3v на общий электрод inreg = P2IN; // считываем состояние всех электродов digitalWrite(checkPin, LOW); //снимаем +3 for (byte i=0; i<inqty; i++) { // защита электродов от глюков: if ( bitRead(intmp,i) == bitRead(inreg,i) ) //если текущее значение = предыдущему... {incount++;} else {incount=0;} // ... то увеличиваем счетчик на 1, в противном случае сбрасываем if (incount == 3 ) // если считали три раза одно и то же значение с электрода... {incount=0; indata=bitRead(inreg,i); } } // ...значит глюка нет tab_reg[R8]=indata[8]; //состояние электродов -> web <-> mega monitor=0;} } void Tim() {//обработка прерывания таймера sec++; if (sec%5==0) {monitor=1;}} // считываение электродов раз в 5 сек }
  2. усп, а я вот что никак не соображу куда и как цеплять этот мк для связи в внешним миром. И вообще надо ли это ? На мегу - смысла нет (если экран меги вижу - то и лампочки на этом блочке то же увижу, да мегу допиливать надо). На роутер с веб сервером ? Как цеплять? USB отпадает (не поддерживается в openwrt). uart? - курочить роутер, да и на все мк uart не напасешься. чуть поигрался с modbus - вроде рулит для такой мелочи Еще варианты? PS завожу второй аквас. уже морской готовлю автоматику
  3. микроконтроллер - Launchpad MSP430 от TI. Вот тут начинал: http://www.aqualogo.ru/phpbb2/topic/29878-diy-6-kanalnii-kontroller-led-c-tach-panelju-32/page__st__1920#entry557810 Окончательного кода нет. Просто экпериментирвюу - так, тестовые куски. Могу вечером выложить. Но там мало что интересно: 1. Раз в 5 секунд 9 пин поднимается в HIGH (изначально LOW). На нем через резистор в 100к и конденсатор висит основой электрод. 2. считывается состояние входов (у меня их пять), на которые также через 100ком и конденсатор подвешены электроды, но эти входы еще притянуты к земле не 220к, а 0,5мом. (можно было и 1мом, ноги в ноль утягивает, но посчитал что многовато будет) 3. Через Serial выводится значения в монитор. Когда сухо - значения прыгают вблизи нуля. Когда мокро - взлетают. Вопрос на сколько взлетают - зависит от номиналов. Я взял первые попавшиеся в своем загашнике - ничего пока специально не подбирал. И, от задержки, между п.1-2. Т.е. чувствительность можно не резисторами подбирать, а программно.
  4. Поэкспериментировал с этой идейкой на кмоп мк. Работает. Сьэмулировал что аквас пробивает. Потыкал электродами в розетку - держит. Решил порязряжать об электроды конденсатор - убил мк с третьего раза. Доработал - последовательно с конденсаторами поставил на 100кОм резисторы (на землю ноги тянут по 0,5МОМ) - вроде держит. Единственное, что наверное нужно будет - с задержкой между подачей напряжения на электрод и считыванием поэкспериметировать. ps мк для чисто автодолива - перебор наверное. просто у меня там еще и таймер вертеться будет. Под датчики протечек лишние ноги приспособить что ли - что ногам пропадать
  5. В CodeBlocks отладчик есть (в отличии от ардуино иде). Но теоретически. Поскольку я его поднять не смог. (((
  6. В какой лучше - не знаю. Но плюс CodeBlocks (с точки зрения домохозяйки, да и другое не пробовал) хотя бы в том что проект можно разбить фик знает на сколько частей (в пределах разумного ессно), и легко между этими частями переключатся. Плюс фенечки по поиску, группировке и пр. Да загружает дуину в разы быстрее. Минус (просто не знаю решения, а на поиски этого решения не заморачивался) - библиотеки в корень проекта кидать надо.
  7. Когда то вот с этого мануала начинал: http://cyber-place.ru/showthread.php?t=434
  8. https://www.dropbox.com/s/5tjuei647tebufg/1.ino Это прототип скетча под этот контроллер (правда с аквашилдом). Скетч не рабочий - много чего нет, в том числи и исполнительной части нет. Но убогие, непродуманные менюшки загружаются (с дизайном там совсем плохо). В общем попытка домохозяйки, толком не знающего языки(английского похоже то же), сделать скетч где мало что повторяется..
  9. Вот такое можно купить: https://estore.ti.com/MSP-EXP430G2-MSP430-LaunchPad-Value-Line-Development-kit-P2031.aspx Приходит плата, кварц и два контроллера. 10 дол. за все. Включая доставку (дней за пять) до порога DHL-ем. т.е. 5 дол за микросхемку (кому как, но я бензина больше сожгу пока за какой нибудь КМОП сгоняю) Ардуиновский язык понимает (да и Energia один в один ArduinoIDE). Проверил - резисторы на 1мОм легко утягивают пины в ноль. Так что думается долив любой крутизны можно сделать (да и не только долив)
  10. может стоит всем посмотреть на свои сообщения и убрать тихонько провокационные и, тем более, оскорбительные фразы, а? и, очень желательно, поправить цитаты (если они изменились) других участников в своих сообщениях... Всякое в горяча бывает, а голова остывает..
  11. я перепробовал кучу датчиков уровня. Начиная с аналога ебая. И заканчивая оптическими линейками. Ультрозвуковой тоже пробовал - в сад! Лучше "цифры" (у меня в виде 4-х электродов) - ничего нет. Мне полтора сантима нужно контролировать. Плюс волна от "флейты" в прясняке в пол-сантима (в морском наверное больше будет). Что то гасит шприц где электроды спрятаны (кстати много, дырочки не большие в нем), что то обработкой.
  12. пока только пресный. с дискусами. перенаселен несколько. да еще рассчитан 1-1,5 мес автономного существования (уезжаем отдыхать) так что оборудования хватает (да еще почти все дублировано)... я бы между входом и электродом сопротивление добавил бы, и конденсатор на вход. И потыкал бы в розетку на предмет сгорит или нет. начинал с того что повесил электроды по стенке. Подтянул через 100ком и сразу на аналоговый вход ардуины (1мом для ардуинки перебор). Так вот, при включении этого "измерителя" рыбка (если была рядом) сваливала. Т.е. каким то образом чувстовала напряжение. Моя язычек кстати то же. А там всего ничего (собственно после этого и в шприц завернут электроды и кмопушку поставил). А что же бывает если 220 где то пробивает? Морским по барабану?
  13. за два месяца по крайнем мере не сгорела. Страховочный в воздухе. Но вплотную к стенке - несколько раз на него или совсем рядом ампулярия икру откладывала. Все никак руки не доходят подальше от стенки акваса вынести поправочек
  14. Берется кмоп микросхема. Входы к стержням, и через высокоомники притянуть к земле. Выходы через сопротивления (у меня одинаковые) на аналоговый вход ардуино (который через такое же сопростивление принянут к земле или +5, в зависимости от логики микросхемы). Чем больше элементов сработает - тем большую ступеньку прыгнет вверх напряжение на аналоговом входе. И еще. Для напряжения нужно одну из ног ардуины задейстовать. Иногда, когда мерить требуется. А то электроды как бы не заросли быстренько. У меня все это живет в 20мл. шприце (мне его высоты хватает), с отрезанным носиком в несколькими дополнительными дырочками в нижней и верхней части. Электроды нормально держит резинка штока, плюс залил сопливым пистолетом место крепления к проводам. Сама микросхема с элементами в маленькой коробочке сразу на бортом (до электродов сантиметров 10)... Плюс аварийный поплавок. В таком же шприце. Засада была только в том что сам поплавок сделать. Он должен быть гладкий, достаточно легкий что бы всплыть, и достаточно тяжелый что бы отвалится от геркона. У меня нашелся старый советский элетролитный конденсатор с алюминиевым корпусом как раз по размеры. Высверлил бумагу, забил корпус пенопластом, а в пенопласт вдавил на клею по центру маленький магнитик. Геркон по центру штока. ... Улитки не страшны.
  15. ага, всех задобало в собственном соку варится. Я вот был готов своей скетч (не совсем работоспособный, но зато с нуля, и где ничего дважды не повторяется, ну или почти) выложить для критики - токо вот никак не могу его в ардуино IDE перетащить. (((
  16. Исходник в Code Bloks const unsigned int Colors565[16] = { 0x0000, 0xFFFF, 0xF800, 0x07E0, 0xFFE0, 0xF81F, 0x07FF, 0x056A, 0xBDF7, 0x8410, 0x0397, 0x057D, 0x966A, 0xFDE0, 0x7193, 0x010C }; void setcolors(byte i) { myGLCD.setColor(Colors565); } Скетч нужно в Ardino IDE получить. Ругается: ......\libraries\UTFT_/UTFT.h:138: note: candidates are: void UTFT::setColor(byte, byte, byte) Как как вылечить? (в кодеблокс библионека скопирована из ардуино лайбрарис)
  17. правда наверное где то посередине. На подачу воды сейчас поставлю отдельный контроллер. С датчиками уровней, протечек. А основной будет только статистику собирать, графики строить - да и орать если что не так.
  18. Чей то я в этом не уверен. Взял тут блок компьютерных розеток, вкрячил туда релюшки. И простенький контроллер, на котором вертятся таймеры. А основная дуинка только плюет в ячеики памяти этого контроллера время включения/выключения таймеров.В принципе да, удобно - основную всегда можно снять, а таймеры будут работать. Но, блин, пока подружил все это.... А что то подправить (ну потребовалось в таймеры дни недели добавить) - уже надо лезть и ловить глюки в двух контроллерах.
  19. rf433 как бы не ругали (мол старая, прошлый век и пр) работает весьма стабильно. http://adatum.ru/delaem-sistemu-umny-j-dom-na-arduino-chast-1.html http://adatum.ru/delaem-sistemu-umny-j-dom-na-arduino-chast-2.html Плюс можно выключатели-розетки вешать. Датчики протечки. А можно по тому же принципу просто по проводам (дабы модуль работает тупо - подал 5вольт на передатчик - теже 5 вольт получил на приемнике)
  20. ну пишу во первых потому что благодаря этой ветки вот развлекаюсь сейчас с ардуиной. Просто мне интересно. Во вторых потому что здесь на вопросы дают ответы. В третьих, мне казалось что было бы интересно получить некий конструктор, который можно было бы подогнать под себя. В не зависимости для моря или нет, да и вообще можно взять в качестве базы под многие задачи. Ну а в четвертых, мне до сегодяшнего момента не намекали что на морском форуме пресноводным делать нечего. Хотя я не собирался кромсать ваши фичи. Те же ваши каналы. Но не у всех же по 8, у кого то 6. Так почему не дать возможность в экселе поставить цифирку 6 и получить прошивку без лишних кнопочек ? Кто мешает поставить галочку не на волне на протоке, ну или наборот? Ну и т.д. В общем не суть. Форумы и другие есть. Скетч - не вопрос. Доведу что бы хоть не стыдно было - выложу и здесь (просто его не переписывать, а писать заново приходится, поскольку почти все меняется). Только соль не в нем будет . Там одни массивы, и переменные - нет ни одного комментария, поскольку формируется на основании экселевского файлика. Файлик то же не жалко - дабы я не приследую никаких коммерческих интересов. Просто, еще раз, мне интересно помучать ардуину. Вот и все.
  21. не много не об этом речь. Если я хочу не 8 а три канала на леды. Да еще заметь, не просто отключить, а так что бы симпатишненько было - что бы лишнего не где не видел. Да еще цвета выбрать определенные. Или к примеру кнопку переименовать/перекрасить. Или вообще на другой экран перенести. Или к примеру мне не 5 таймеров нужно, а скажем 3 (и каждый с человеческим именем), но так что бы каждому из них можно было добавить еще по одному времени включения-выключения. И вообще не нужны мне волны в моем прясняке - мне бы туда протоку вкрячить.. Тако в скетче не замутишь. А вот в эселе с его формулами и макросами - запросто. Ессно все переписать надобно. Под экран под большее или меньше разрешение подстраивается легко - фотки я давал - видели наверное. Достаточно в две ячейки экселя ввести разрешение экрана. Засада с картинками и фонтами, увы, при этом в автомате не решается. Но поскольку их не много то не так долго и переделать.
  22. Вообще то гораздо проще сделать без чужого кода. Но когда не программировал в С, то нужно же куда то подглядывать - типа что бы хоть какой то учебник перед глазами. Но на чем то нужно учится. Мне если честно контроллер света не не нужен пока - аква у меня пресноводная, хороший свет пока не нужен - ессно сделаю (себе), но позже (ремон в новой хате еще на год, в с старой городить смысла нет, так что пока на 3-х китайских хватает). А пока много что из датчиков и пр.штучек не дошло, аквашилда то же нет, то могу в конце концов и поизвращаться в свободное от работы время. Сейчас ни в сетапе, ни в лупе не осталось ни одной явной координаты. Сейчас переписываю (дабы памяти с запасом оказалось) - что бы не явного задания цветов/шрифтов и пр. Все в массивах в шапке (или как это там называется) - берется из экслевеского файлика. Что это дает? А то что под контретное оборудование (а кстати под экран, за небольшим исключением) можно мухой подправить скетч (названия кнопок, растоложение, цвета;кол-во и названия каналов и пр.). И речь не только о контролере акваса - под многие задачки можно заточить легко.
  23. А вот если выкинуть из головы то что уже сделано. Но оставить железо. То какой контроллер с точки зрения интерфеса вы бы себе представляли? Ну или какие решения вам бы приглянулись ? Если из готовых то может ссылки на картинки есть ? Короче - интерфейс хочу переделать (переписал кое-что - сейчас легко все правится). Но дизайнер из меня никакой ((( К примеру, у меня мысли такие (может ошибаюсь): убрать все настройки из менюшек. Ну к примеру часы нужно настроить - так ткнись пальцем на часы и подержи секунды три-четыре - вываливаешься в менюшку. С таймерами, и т.д. - также сделать. Не нравится вот мне двойные кнопки в настройках. Почему не одна? Нажал раз - высветился к примеру 12часовая индикаци, нажал еще раз - попал на 24 часа. Спрашиваю потому что реализовать такое проще и короче в универсальном коде (как и прочие типа ON/OFF, ON/OFF/AUTO) Ну или еще (вопрос к Вадиму наверное) - ну вот есть в прошивке от svyaz: Есть часы. Есть таймеры. Ну кака принципиальная разница с точки зрения выствления времени? Почему один интерфейс не использовать ? - "зоопарк" же хуже воспринимается.
  24. да, явным образом работает. Только мне это не поможет: Прогу переделал - ушел от двумерных массивов, но теперь заранее индекс кнопки не известен - вычисляется по ходу дела. Но не суть - оставлю как было.
  25. Что то не заработало в цикле. printButton(print_text, back[0], back[1], back[2], back[3], SMALL); где i=4 монитор выдал print_text =4 вместо char* print_text[] PROGMEM = { cтавишь char* print_text[] = { - ессно работает
×
×
  • Создать...