Продолжаем обзор деятельность нашего Хакспейс-клуба.
В предыдущей статье была озвучена идея создания полностью автоматической автономной фермы около нашей мини-гостиницы в Крыму. И это у нас получилось. Идеи были технически реализованы.
7 экспериментальных образов, т.е. куры обычные (возраст 4 месяца, девочки), были запущены для ПМЖ в клетку оборудованной всем необходимым для жизнеобеспечения. Петуха решили не селить к птичкам, все же курортная зона и его запевы по утрам многим не понравятся.
Курочки 3 недели без человека. Растут и выглядят довольными. Эксперимент проходит нормально.
Вот видео жизни наших птичек в условиях без вмешательства человека, в автономном режиме, т.е. в условиях автоматизированного кормления и поения по расписанию, уборки, отопления и света Самые интересные моменты буду выкладывать в процессе здесь.
Под катом мало слов, много фото и видео.
Блок управления автоматической фермы я описывал в предыдущей статье . Единственно, что изменил, это добавил платку преобразования DC-DC для питание Raspberry PI. Для него нужно 5V а источник бесперебойного питания я приобрел на 12V.
Твердотельные реле на 220v 25A, для включения освещения, хоть там и есть окно бывает в пасмурные дни не очень светло. А так же для включения фекального насоса и инфракрасной лампы для тепла. Ночью даже в Крыму бывает холодно, особенно зимой. Поэтому вопрос обогрева живности должен быть отработан заранее.
Управляемые розетки которые управляются от твердотельного реле.
Поилка получилась удачная, куры не смогут с ногами в нее залезть. При наполнении поилки время включения клапана выбрано такое, что-бы вода наполнила поилку и вода несколько минут переливалась через край, тем самым каждый день освежая воду. Одновременно получился интересный аттракцион для птичек, судя по онлайн видео, смелые птички пытаются пить струйки выливающейся воды.
Резервная поилка:
Клапан подачи воды, управляется 12V.
Емкость на 120 литров с фекальным насосом.
Кормушка вид снаружи, тесть помогал делать, за что ему большое спасибо.
Кормушка вид внутри, явно корму просто негде зацепится, так что вибродвигатель уже не стал делать, да и времени и сил уже не было.
Кормушка полная, комбикорма вмещается около 40 кг.
Видеокамера, по которой контролирую весь процесс, плохая но другой пока нет. Первое видео в этой статье записано именно на ней.
Источник бесперебойного питания на 12V. Питает только Raspberry PI, двигатели кормушек и клапан воды. Самое необходимое для жизнеспособности кур. Испытывал при отключении света на сутки никакого сбоя не произошло. Кормушки кормили поилки поили.
Маршрутизатор на котором раскидываю по портам управления видеокамерой и Raspberry PI.
Общий вид курятника с тремя кормушками, сейчас там включена инфракрасная лампа для тепла.
Ну и самое интересное. Для всех, судя по комментариям предыдущей статьи, это видео очищения поддона водой. Вдоль всей клетки проложены трубы у которых снизу сделаны с интервалом 10 см. отверстия диаметром 3 мм. При подачи воды со всех отверстий течет вода. При снятии этого видео напор был очень слабый, зато качество видео хорошее, снимал не на удаленную камеру.
Процесс автоматического включения фекального насоса снятого с удаленной камеры недавно.
Программу, описанную в предыдущей статье , не стал использовать, решил воспользоваться стандартным линуксовым cron. Написал для каждого удаленного устройства, будь то кормушка, поилка, свет, инфракрасная лампа или фекальный насос. Маленькие программки типа такой:
#include <wiringPi.h>
#include <wiringSerial.h>
#include <stdio.h>
#include <time.h>
int main (void)
{
time_t rawtime;
struct tm * timeinfo;
time ( &rawtime );
timeinfo = localtime ( &rawtime );
printf ( "datetime %s\n", asctime (timeinfo) );
int tt_hour = timeinfo->tm_hour;
int tt_min = timeinfo->tm_min;
int tt_sec = timeinfo->tm_sec;
// printf ( "hour - %d\n", tt_hour);
// printf ( "min - %d\n", tt_min);
//printf ( "datetime %d\n", tt_hour);
printf("kormcrom\n");
// 1 draiver motora
int pin0 = 0; //11 noga
int pin1 = 1; //12
int pin3 = 3; //15
int pin4 = 4; //16
// 2 draiver motora
int pin7 = 7; //7 noga
int pin5 = 5; //18
int pin6 = 6; //22
int pin10 = 10; //24
// 3 draiver motora
int pin11 = 11; //26 noga
int pin12 = 12; //19
int pin13 = 13; //21
int pin14 = 14; //23
int i;
if (wiringPiSetup() == -1)
return (1);
pinMode(pin0, OUTPUT);
pinMode(pin1, OUTPUT);
pinMode(pin3, OUTPUT);
pinMode(pin4, OUTPUT);
pinMode(pin7, OUTPUT);
pinMode(pin5, OUTPUT);
pinMode(pin6, OUTPUT);
pinMode(pin10, OUTPUT);
pinMode(pin11, OUTPUT);
pinMode(pin12, OUTPUT);
pinMode(pin13, OUTPUT);
pinMode(pin14, OUTPUT);
digitalWrite(pin0, 0);
digitalWrite(pin1, 1);
printf("KORM cron On\n");
delay(25000);
digitalWrite(pin0, 0);
digitalWrite(pin1, 0);
printf("korm cron Off\n");
return 0;
}
К сожалению, не доступен сервер mySQL