Собираясь в прошлом году в отпуск, решил приобрести автоматическую кормушку для домашних питомцев. Выбор был сделан в пользу изделия брэнда Animal Planet. Уже точно не помню, почему именно была выбрана эта модель, вероятно, на тот момент времени она оптимально сочетала в себе невысокую цену и достаточно хорошие потребительские свойства, представление о которых были составлены по отзывам на веб сайте amazon.com.

Устройство было в скором времени получено по почте, собрано, включено и в него был засыпан корм. Кошки сразу одобрили дизайн, радостно прибегали на шум моторчика и принимались поедать корм еще до того, как он заканчивал высыпаться сверху из бачка. Все бы хорошо, если бы не одно «но». Мне никак не удавалось добиться того, чтобы корм высыпался по установленному расписанию, ради чего собственно и затевалось дело. Но пытливые руки не сдавались и экспериментально было выяснено, что расписание иногда работает, правда, только при условии, что изначально не устанавливалось реальное время на часах. Поняв, что имею дело с явным «багом», обратился к продавцу и тот радостно заверил, что это известная проблема и мне бесплатно заменят устройство более новой версией, лишенной указанной проблемы.

Прошло несколько дней, прислали замену. В «новой версии» прибора «баг» воспроизвелся в полном объеме. К сожалению, времени на разбирательство до отъезда не оставалось и кормление кошек было поручено друзьям. После возвращения, в силу упавшей актуальности, проблема была заброшена и забыта.

Выбирая для себя учебную задачу для ознакомления с микроконтроллерами и платформой Arduino, вспомнил про забытую кормушку. Было решено использовать уже готовый механизм, реализовать систему подачу корма по расписанию, а также проверить теорию условного рефлекса Павлова.

Механизм диспенсера корма устроен таким образом, что на каждый полный поворот крыльчатки приходится 4 замыкания контакта, что соответствует 4 порциям корма. Подсчитывая число замыканий контактов можно определить, сколько корма высыпалось в тарелку.

Прототипирование устройства и отладка производилась на платформе Arduino Uno. Для подачи корма по расписанию на Ebay был приобретен модуль реального времени DS3231 cо встроенной батарейкой, в котором можно запрограммировать два будильника.



Предполагаемый алгоритм будет простым. Контроллер будет периодически просыпаться, чтобы проверить, не сработал какой-либо из запрограммированных будильников, и засыпать дальше для экономии энергии. В случае срабатывания будильника будет проиграна мелодия и высыпано требуемое количество корма. Реализация прототипа на Arduino трудностей не вызвала и ее рассмотрение мы пропустим.

В конструкции донорской кормушки есть отсек для 3-х батареек «D», от которых будет работать конечное устройство. Для уменьшения потребляемой энергии и продления жизни батареек нужно избавиться от лишнего обвеса Arduino. Для разработки конечного устройства был выбран контроллер ATTiny85. Допустимое напряжение питания для него находится в диапазоне 2.7-5.5V, поэтому применения регуляторов напряжения не потребуется и устройство может питаться напрямую от батарейки.

При проектировании конечного устройства были решены следующие задачи, на которых хотелось бы остановиться подробнее:

  • Уменьшение потребления энергии. Достигается переводом контроллера в спящий режим и обесточивания ненужных в данный момент цепей, в частности, питание на модуль RTC подается только на время, необходимое для операций с этим модулем. В моей реализации потребляемый устройством ток в режиме ожидания составляет примерно 300 mkA.
  • Решение проблемы с недостаточным числом выводов контроллера. Обычно это решается добавлением сдвигового регистра или переназначением функции вывода Reset. В моем случае было возможным использовать один из выводов поочередно для вывода звукового сигнала на динамик и чтения состояния контакта. Кроме того, были использованы перемычки для возможности отключения внутренних цепей устройства при переключении контроллера в режим программирования.


Принципиальная электрическая схема устройства.




Контакты J1-J4, J8-10 служат для подключения Arduino Uno в качестве программатора. Перемычки J5-J7 — для отключения внутренних цепей при программировании Attiny85. В качестве силового элемента в цепи питания электродвигателя используется N-канальный полевой транзистор с изолированным затвором рассчитанным на максимальный ток 500 mA (пусковой ток мотора не превышает 150-200 mA). Очень важно подключить сглаживающий конденсатор (С2 на схеме) большой емкости к VCC. Без него, особенно при питании от батарейки, в момент запуска мотора программа сбивается.

Скетч
#include <DS3232RTC.h>        //http://github.com/JChristensen/DS3232RTC
#include <Time.h>             //http://playground.arduino.cc/Code/Time
#include <TinyWireM.h>        //https://github.com/adafruit/TinyWireM
#include <Narcoleptic.h>      //https://code.google.com/p/narcoleptic/ 
//The library was modified for ATTiny85 as described here: 
//http://www.willowdesign.info/blog/digistump-cricket-generator/

const int Note_D  = 213;
const int Note_G  = 159;
const int Note_A  = 142;
const int Note_B  = 127;
const int Speaker = 1;

const int  feedPin = 1;
const int RTCPowerPin = 4;
const int motorPin = 3;
const int MAX_FEED_TURN = 2; //Dispenced food volume
int feedCounter = 0;   // counter for the number of feed revolution
int feedState = HIGH;         // current state of the feed contacts
int lastFeedState = HIGH;     // previous state of the feed contacts
int reading = HIGH;
long lastDebounceTime = 0;  // the last time the output pin was toggled
long debounceDelay = 20;    // the debounce time; increase if the output flickers

void setup(void)
{
  pinMode(RTCPowerPin, OUTPUT);
  digitalWrite(RTCPowerPin, HIGH);
  RTC.squareWave(SQWAVE_NONE);
  setSyncProvider(RTC.get);
  //set the system time to 17h 35m on 22 March 2015
  //setTime(17, 35, 0, 22, 3, 2015);
  //RTC.set(now());
  pinMode(motorPin, OUTPUT);
  digitalWrite(motorPin, LOW);
  // initialize the feed contact pin as a input:
  pinMode(feedPin, INPUT);
}

void loop(void)
{
  digitalWrite(motorPin, LOW);
  digitalWrite(RTCPowerPin, HIGH); //Turn RTC power ON
  delay(50); //ensure RTC is stable after powering it ON
  RTC.setAlarm(ALM1_MATCH_HOURS, 0, 0, 7, 0); //morning feed alarm
  RTC.setAlarm(ALM2_MATCH_HOURS, 0, 0, 19, 0); //evening feed alarm
  digitalWrite(RTCPowerPin, LOW); //Turn RTC power OFF
  digitalWrite(Speaker, LOW);
  Narcoleptic.delay(20000); // During this time power consumption is minimized
  digitalWrite(RTCPowerPin, HIGH);
  if (readVcc() < 3500) {
    playBatteryLow();
  }
  delay(50); //ensure RTC is stable after powering it ON
  if (RTC.alarm(ALARM_1) || RTC.alarm(ALARM_2)) {     //has any of 2 Alarm1s triggered?
    //yes, act on the alarm
    // Wake up CPU.
    feedCounter = 0;

    // Wake up the CAT - play some music
    playTune();

    // Turn ON food dispenser motor
    digitalWrite(motorPin, HIGH);

    while (feedCounter < MAX_FEED_TURN) {
      // read the feed input pin:
      reading = digitalRead(feedPin);
      // compare the feedState to its previous state
      if (reading != lastFeedState) {
        // reset the debouncing timer
        lastDebounceTime = millis();
      }

      if ((millis() - lastDebounceTime) > debounceDelay) {
        if (reading != feedState) {
          feedState = reading;

          // if the state has changed, increment the counter
          if (feedState == HIGH) {
            // if the current state is HIGH then the feed contacts
            // went from on to off
            feedCounter++;
          }
          else {
            // if the current state is HIGH then the feed contact
            // went from on to off:
          }
        }
      }
      // save the current state as the last state,
      //for next time through the loop
      lastFeedState = reading;

    }

  }
}



void TinyTone(unsigned char divisor, unsigned char octave, unsigned long duration)
{ //http://www.technoblogy.com/show?KVO
  //TCCR1 = 0x90 | (8-octave); // for 1MHz clock
  TCCR1 = 0x90 | (11 - octave); // for 8MHz clock
  OCR1C = divisor - 1;       // set the OCR
  delay(duration);
  TCCR1 = 0x90;              // stop the counter
  delay(duration * 1.30);    // pause between notes
}

void playTune(void)
{
  pinMode(Speaker, OUTPUT);
  TinyTone(Note_D, 4, 125);
  TinyTone(Note_D, 4, 125);
  TinyTone(Note_G, 4, 250);
  TinyTone(Note_G, 4, 200);
  TinyTone(Note_G, 4, 62);
  TinyTone(Note_A, 4, 250);
  TinyTone(Note_A, 4, 200);
  TinyTone(Note_A, 4, 62);
  TinyTone(Note_D, 5, 350);
  TinyTone(Note_B, 4, 150);
  TinyTone(Note_G, 4, 300);
  delay(350);
  TinyTone(Note_D, 5, 500);
  delay(200);
  TinyTone(Note_D, 5, 500);
  delay(200);
  TinyTone(Note_D, 5, 500);
  delay(200);
  TinyTone(Note_D, 6, 1000);
  TCCR1 = 0;              // stop the timer
  pinMode(Speaker, INPUT);
}

void playBatteryLow(void)
{
  pinMode(Speaker, OUTPUT);
  TinyTone(Note_D, 4, 125);
  TinyTone(Note_D, 6, 250);
  TCCR1 = 0;              // stop the timer
  pinMode(Speaker, INPUT);
}

long readVcc() { //http://provideyourown.com/2012/secret-arduino-voltmeter-measure-battery-voltage/
  // Read 1.1V reference against AVcc
  // set the reference to Vcc and the measurement to the internal 1.1V reference
  //  #if defined(__AVR_ATmega32U4__) || defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)
  //    ADMUX = _BV(REFS0) | _BV(MUX4) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
  //  #elif defined (__AVR_ATtiny24__) || defined(__AVR_ATtiny44__) || defined(__AVR_ATtiny84__)
  //    ADMUX = _BV(MUX5) | _BV(MUX0);
  // #elif defined (__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)
  ADMUX = _BV(MUX3) | _BV(MUX2);
  //  #else
  //    ADMUX = _BV(REFS0) | _BV(MUX3) | _BV(MUX2) | _BV(MUX1);
  //  #endif

  delay(2); // Wait for Vref to settle
  ADCSRA |= _BV(ADSC); // Start conversion
  while (bit_is_set(ADCSRA, ADSC)); // measuring

  uint8_t low  = ADCL; // must read ADCL first - it then locks ADCH
  uint8_t high = ADCH; // unlocks both

  long result = (high << 8) | low;

  result = 1125300L / result; // Calculate Vcc (in mV); 1125300 = 1.1*1023*1000
  return result; // Vcc in millivolts
}


Комментарии к скетчу


В коде широко используются функции и фрагменты кода, найденные на просторах Интернета. Ссылки на источники приводятся в комментариях к коду.

Код для записи реального времени в RTC запускается один раз, затем я его убираю и перезаливаю скетч заново. Часы достаточно точные и коррекции времени в дальнейшем не потребуется.

Контроллер выходит из спящего режима на очень короткое время каждые 20 секунд (вполне можно увеличить то 1 минуты). В это время подается питание на RTC, производится проверка напряжения питания при помощи функции readVcc() и состояние будильников ALARM_1 и ALARM_2. При понижении напряжения ниже установленного порога 3.5 V на динамик выводится короткий звуковой сигнал. Если сработал любой из будильников которые установлены у меня на 7 часов вечера и 7 часов утра, то проигрывается музыкальная мелодия функцией playTune() и включается мотор. При подсчете порций высыпанного корма используется программное подавление дребезга контакта замыкающегося при повороте крыльчатки. Для уменьшения потребления энергии важно остановить вращение мотора в момент размыкания контактов.

Устройство было собрано методом навесного монтажа на небольшой плате размером 5x7 см.



Ну и в заключение кино про котиков:

Комментарии (52)


  1. patch1
    03.04.2015 12:46
    +3

    Круто, но ведь это не вся проблема при отъезде.
    1)Кормушку кот может перевернуть (когда балуется по ночам)
    2)Что насчет поилки? можно реализовать такую же систему, но вот куда девать старую воду или молоко? Молоко прокиснет, Вода может начать плесневеть и пахнуть болотом, да и опять же кот может перевернуть поилку.
    3)Туалет — купить 30 лотков и надеяться что кот будет ходить в свободные лотки и случайно не залезит в загаженный лоток?
    Спрашиваю т.к тема собственно интересная.


    1. cyber_genius
      03.04.2015 14:23

      думаю кормушки и поилки должны прибиваться к стене, чтобы кот не перевернул. Поилка должна выдавать воды столько, чтобы она успевала высыхать, если кот не пьёт, воду можно дистиллированную или в боклашках очищенную, ещё есть вариант с каким-нибудь покрытием. Туалет самое сложное, простой системой тут не обойтись и обычным лотком. Наспех можно придумать такую систему закрытых лотков, со сменными лотками, места только много займёт, pp.vk.me/c624928/v624928400/27e06/usPLWdrB4xQ.jpg


      1. edogs
        03.04.2015 17:44
        +2

        воду можно дистиллированную
        Нельзя. Ни в коем случае. Дистиллированная вода не питьевая ни разу.

        Туалет самое сложное, простой системой тут не обойтись
        Приучить кота к обычному унитазу и научить смывать. Приучить несложно, научить смывать сложнее но тут как раз можно автомат сделать.


        1. SunX
          03.04.2015 17:51

          Про смыв уже даже были статьи на Хабре :)


        1. Zenitchik
          03.04.2015 20:02
          +3

          Нельзя. Ни в коем случае. Дистиллированная вода не питьевая ни разу.

          Экспериментами на мышах это не подтвердилось. Соли организм получает почти исключительно из пищи, отсутствие их в воде практически не сказывается на солевом балансе.


          1. MaxxxZ
            04.04.2015 11:50
            +1

            На себе проверьте. Купите в автомагазине 20-30 литров и неделю пару недель пейте только её. Об ощущениях можно неплохой пост запилить.


            1. patch1
              04.04.2015 20:33

              Я пью только бутилированную воду в последнее время 2 месяца (она же вроде и есть дистиллированную ) ссылка на сайт воды и мне не хреново а лучше, т.к я ее могу выпивать по 2 литра в день (норма), а вот с под крана хорошо если 0.5 выпью за день (больше не лезит) и вот от этого хреново бывает.


              1. MaxxxZ
                04.04.2015 20:51
                +1

                По вашей ссылке (не реклама!!!):
                «Протера» имеет оптимальный естественный сбалансированный природой ионно-солевой состав макро — и микроэлементов, кристальную прозрачность и великолепный вкус натуральной питьевой воды.
                В составе питьевой воды «Протера» содержится более 50 жизненно необходимых для здоровья человека макро — и микроэлементов, таких как — природный кальций, магний, калий, фтор, кремний и другие необходимые человеку элементы.


                Вы уверены, что понимаете значение слова «дистиляция»?


                1. patch1
                  04.04.2015 21:02

                  по сути это очищенная вода без вредных и полезных примесей. Нет не реклама (доставка по минску), чисто хотел уточнить, зачем предлагают дистилированую если есть бутилированая типа этой очищеная с полезными миниралами??


                  1. patch1
                    04.04.2015 21:08

                    Словом доставка по минску, хотел подчеркнуть что в данный момент учитывая количество посетителей и любителей данной темы, мала вероятность (хотя она и есть) что сюда зайдут посмотреть комменты жители Минска, да и вреатли заинтересуются данной темой (бутилированной водой)


                  1. MaxxxZ
                    04.04.2015 21:24
                    +1

                    Да, дистиллированная — это чистый H20. Без каких-либо примисей. Минеральных, органических, полезных или вредных — не важно.
                    Она не стухает. Но и пить её нельзя.

                    Бутилированная вода имеет свойство протухать при контакте с воздухом, даже если при заливке в ней убили всю органику. Она её возьмёт из атмосферы. А дистиллированная не возьмёт.

                    Я дистиллированную предлагал купить и попить самому человеку, который сказал

                    Экспериментами на мышах это не подтвердилось. Соли организм получает почти исключительно из пищи, отсутствие их в воде практически не сказывается на солевом балансе.

                    потому что не верю в научную чистоту эксперимента на мышах.


                    1. patch1
                      04.04.2015 23:03

                      спасибо за более понятное разъяснение, я б такую воду своему бы питомцу не рискнул бы тоже давать)


            1. Zenitchik
              06.04.2015 14:32

              Это ненаучно. Кстати, в автомагазине вода без гидразина? А то водоподготовка для технических целей разная бывает.


            1. DIHALT
              19.04.2015 05:42

              Я уже много лет пью воду из осмотического фильтра. Это практически дистилят, она даже ток не проводит. Ощущение только одно — в гостях чай пить невозможно ибо даже бутилированная вода кажется полным говном.

              Теща на обратном осмосе сидит уже лет 15 наверное. Тоже никаких проблем.


              1. patch1
                19.04.2015 11:42

                Я ради эксперемента использовал 2 чайника, 1 чайник воду кипетил для варки макарон и т.д (воду с подкрана), во втором чайнике бутилированую воду кипетил (чай, кофе) в итоге в первом чайнике с пустям месяц значительный осадок, во втором чайнике 0 осадка. Мб дело в компании которая эту воду очищает и заливает в бутыль? ту что вы пьете в гостях мб не очень очищена?


                1. DIHALT
                  19.04.2015 12:27

                  Да я же в гости не в одно и то же место хожу. Вода везде разная, но я чувствую ее вкус и он мне не нравится.


                  1. patch1
                    19.04.2015 12:37

                    у меня такое же ощущение когда у себя пью бутилированую) а в гостях с подкрана делают))))


                    1. DIHALT
                      19.04.2015 13:00
                      +1

                      Ставь осмос. И тогда тебе ваще везде вилы будут :)


        1. cyber_genius
          03.04.2015 21:09

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

          чёт мне кажется не каждого далеко кота можно к сортиру приучить, некоторые даже к лотку с трудом, да и свалится ещё сам туда)


        1. k1b0rg
          04.04.2015 11:27

          Можно использовать серебряную или медную посуду, т.к. ионы серебра и меди убивают микроорганизмы.


          1. patch1
            04.04.2015 23:08

            и за сколько по времени он убьет запах и вкус плесени? или вы предлагаете из серебра или меди, сделать «поилку» в которой будет хранится вода в течении отсутствия хозяина?) — дорогая вещь будет))


            1. MaxxxZ
              04.04.2015 23:14

              Серебряная поилка это не так дорого… по крайней мере сопоставимо со сложной электронно-механической схемой.
              Но разве серебро даёт хорошую безопасность? При каких условиях и в достаточном ли количестве оно выделяет ионы в долгосрочной перспективе? И выделяются ли необходимые ионы после окисления поверхности?


              1. patch1
                04.04.2015 23:20

                т.е инкубатор в 3 литра (не миска для воды, а именно бутыль) — полностью состоящий из серебра (это не таку ж и дорого?). Если данный агрегат поможет сохранить свойство бутилированной воды, а так же защитит воду от плесени в воде, то помойму это идеальный выход (не считая стоимости данной бутыли).


                1. MaxxxZ
                  04.04.2015 23:25

                  Я не спец по гниению воды, но мне кажется так:

                  Вода стухает при контакте с кислородом. Вода в перевёрнутой бутыли гнить не будет — нет достаточного контакта, поэтому задача обеззараживания стоит только для миски, в которой вода контактирует с атмосферой. Это не большой объём и выполнить его не дорого. Если в миске вода будет чистой, то и в бутыли всё будет ок.


                  1. Zenitchik
                    06.04.2015 14:34

                    Каким образом вода в перевёрнутой бутыли потеряет контакт с кислородом?


    1. apple01 Автор
      03.04.2015 14:26

      Вондалоустойчивость можно повысить прикрепив кормушку хомутом к стене. С поилкой сложнее, существуют простые диспенсеры, но не 30 дней наверное по указанным вами причинам и молоко придется исключить из рациона. Наверное для длительного автономного полета нужно забирать воду из водопровода и остатки периодически откачивать в канализацию. Туалет — одного может хватить на неделю, они вроде неплохо поглощают влагу и запахи. Наша кошка сама ходит на улицу через маленькую дверку.


      1. Shajtan
        03.04.2015 15:07

        Молоко кошкам вообще не особо полезно — они его плохо усваивают, ферментов нету соответствующих. Есть исключения, но чаще всего — от молока, особенно жирного, кошака может пробрать та-а-кой понос, что и тридцать лотков не спасут.


    1. SunX
      03.04.2015 16:46

      Не стоит поить кошек молоком, оно им, как минимум, не полезно (если мы говорим о коровьем молоке). Проблему с поилкой, похоже, можно решить только подключением поилки к канализации (или хотя бы холодильнику).
      Что касается лотков, то экспериментально проверено, что кошка пойдет в более чистый лоток, так что за это можно не переживать :). Но вообще есть немало автоубирающих лотков.


      1. patch1
        04.04.2015 20:41

        и куда убирают отходы, «автоубирающие лотки»?


        1. MaxxxZ
          04.04.2015 20:53
          +1

          Вот рекламка:
          zyalt.livejournal.com/1055710.html
          там всё подробно


          1. patch1
            04.04.2015 21:09

            спасибо)


    1. MaxxxZ
      04.04.2015 11:48

      Автопоилка давно придумана:
      image
      Причём без всякой электроники.
      Скажу больше — она и для мелкофракционного сыпучего корма подходит. Но тогда это было бы не для хабра.


      1. patch1
        04.04.2015 20:46

        у воды есть такое свойство как плесневеть, вода с под крана заплесневеет при комнатной температуре за 5-6 дней (если духота то за 1-2 дня может), бутилированная по факту заплесневеет через месяц полтора, но у меня был чистый эксперемент, было как то душно в комнате несколько дней, вода (бутилированная) заплесневела за 4 дня духоты (если точнее отдавала запах воды плесенью). так что такой метод, ну не знаю на сколько актуален, кот же не будет регулировать комнатную температуру при помощи открытых форточек или регуляторов на батареях.


        1. MaxxxZ
          04.04.2015 20:50

          А вот форточку можно посадить на микроконтроллер!


          1. patch1
            04.04.2015 20:57

            может сделать домашний ИИ, функции:
            1) регулирует температуру в квартире (настройка регуляторов в батареях)
            2) функция открытия и блокировки дверей и окон (круто когда ИИ сочтет заблокировать двери, если не почистил зубы а спешишь на работу)
            3) функция автоматического смыва унитаза
            4) функция автоматической выдачи корма и воды домашним животным
            5) автоматическое вычисление живых существ в квартире
            6) функция автокофе по утрам, кофе начинает завариваться когда видет что хозяин проснулся, если более 1 человек в квартире, делаем больше чашек.
            Крутая вещь, покуда перебоя с электричеством не будет, мб еще резервный генератор поставить?
            SkyNet — не загорами))


            1. MaxxxZ
              04.04.2015 21:26

              Ну или кота-киборга, который не ест а из розетки подзаряжается.


        1. Hooter
          17.04.2015 19:12

          Сама по себе вода из под крана в чистой бутылке и в темном месте может простоять год без серьезных изменений (проверял).
          Проблема именно в блюдце, в котором скапливается органика, и даже если просто сливать, то на стенках все одно будет скапливаться слизь.

          Надо что то типа ниппельной поилки которую применяют для грызунов и птиц.


      1. SunX
        06.04.2015 12:44

        Пробовал я такую поилку (нук точнее похожую) приходилось менять как минимум раз в два дня, после этого кошки отказывались из нее пить — в ней накапливаюится слюни, корм ну и просто вода протухает.
        Такие штуки удобны, когда у Вас много кошек, а места что бы поставить таз с водой нет. Но вот для долгого отсутствия не подходит.
        Если использовать для корма, то, конечно же лучше, но иногда приходится кошек ограничивать в еде — в таких случаях подобная конструкция бессмысленна.


    1. DIHALT
      19.04.2015 05:40

      Я коту наливаю 3 литровый таз воды из фильтра обратного осмоса. Пока не выхлебает обычно не обновляю. Вода не плесневеет и не пахнет ничем даже через неделю. Главное поилку ставить подальше от кормушки, у меня вообще в разных комнатах.

      Туалет если засыпать силикагелем, то моча вся впитывается наглухо, а говно вполне годно закапывается и облепляется этим силикагелем. А еще усушивается до почти каменного состояния. Так что то что кот туда еще раз залезет вообще никаких проблем не создает. Двух котов оставляю на несколько дней, потом по приезду пол кило дерьма оттуда сгружаю.


  1. evnuh
    03.04.2015 12:54
    +4

    Судя по видео на ютубе, автоматические кормилки — большой соблазн для котиков. Некоторые из них идут на зверские погромы ради того, чтобы добыть себе еду:
    www.youtube.com/watch?v=JUyRuCgRu0Q
    www.youtube.com/watch?v=KRBH21IvSrc
    Так что, кормилку следует делать более защищённой, примерно как терминалы оплаты)


    1. TheRaven
      03.04.2015 13:12

      Отсюда вывод: котеич не должен видеть корм, возможно и саму кормушку видеть не стоит.

      Еще возникла мысль что котики быстро вычислят расписание кормления и это может стать негативным фактором. Может ввести пару-тройку случайностей в этот процесс?


      1. Dink
        03.04.2015 13:19
        +1

        Так вроде наоборот кормить лучше по расписанию


      1. MAXXL
        03.04.2015 14:09
        +8

        ага, еще и место сделать случайным. прикрепить кормушку к робо-пылесосу.


        1. crmMaster
          03.04.2015 17:05

          К квадрокоптеру, чтобы поднимался на высоту и был недоступен для вандальских намерений.


          1. SunX
            03.04.2015 17:10
            +1

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



  1. Mokkey
    03.04.2015 16:28

    После видео из статьи YouTube в списке похожих предлагает массу сюжетов, где котики с упоением расправляются на подобными агрегатами. Не понятно по какой логике у всех кормушек ёмкость прозрачная (для хозяев, чтобы видно было). Котэ корм видит, котэ корм чует — надо быть очень ленивым котом, чтобы не захотеть вскрыть эту банку. Просто от скуки.

    Ради интереса я хотел бы увидеть за сколько секунд мой котя вскроет этот агрегат (мейн-кун, 12,5 кг молодой любознательности и слоновьей проходимости) :)


  1. darkfrei
    04.04.2015 00:26

    Кормушку прибить повыше, а корм подавать по трубке в миску.


  1. expolit
    04.04.2015 03:46
    +3

    А я предлагаю перед тарелкой ставить весы.

    Взешивать кота, и если он слишком тяжелый — насыпать меньше. А если легкий — больше :)
    А в настройках тупо задавать желаемый вес животного :)


    1. apple01 Автор
      04.04.2015 04:24

      Cуществуют еще «похудательные» хрустяшки, можно более активно воздействовать на вес питомца подмешивая их в нужной пропорции :)


    1. patch1
      04.04.2015 20:49

      котэ может подойти к тарелки не с одно и той же стороны, может вообще эти весы сдвинуть)


    1. amarao
      06.04.2015 19:10

      Очень интересно, сколько времени потребуется коту, чтобы научиться «недовешиватся» на весах.