Контролер теплици и пограмма на Python к ней с возможностью передачи состояния через яндекс диск на другой компьютер.
- Войдите на сайт для отправки комментариев
Пересмотрел много чужих проэктов не нашел ничего подходящего, то ли сложно то ли не так работает, или просто деталек в копилке нет. Решил делать свое.
Главная идея в том что бы состояние теплици можно было изменять в трех местах, у теплици ,в садовом домике с компьютера, и из дома. Управляем тремя элементами дверью теплици , форточкой и дверцей воздуховода от печки.
Само устройство риализованно на Ардуино про мини. По USB подключено к компьютеру.
Программа размешается в папке яндекс диска и формирует в этом же каталоге два файла состояния. Которые мы сможем прочитать на компьютере дома программой клиент запущенной тоже из яндекс диска.
Изображения ниже два поля программы серверной работающей на компьютере в саду.и схема устройства.
https://vk.com/public203082282 подробное описание.
https://github.com/MihtinAN/suburban-house Исходники скейчи скомпилированные exe файлы и планы развития.
Глянул на скетч .... впечатляет!
Строки №№ 7-9 в функции setup и сами по себе прекрасны, но с последующими строками №№ 39-41 - это просто поэзия! А строки №№ 24-25 в функции loop! Да, что там ... класс в общем!
В тексты на питоне не заглядывал, но думаю, что там тоже всё на высочайшем уровне!
Хороший "проэкт"! Поздравляю!
да ... похвастался, так похвастался!
автор, ни "схема", ни код, негодные, это очень мягкое сравнение.
ура спасибо,(ну работает же)
а то два месяца ковыряюсь и никто даже " фу бяка не сказал"
я для этого и выложил чтобы сказали где именно непонятно, что надо пояснить пояснить.
потому что мне самому все кажется просто на уровне новечка. Седня вечером выложу фотку девайся и описание что он показывает.
И большая просьба учесть что я только учусь и это проэкт ученика.Хотя для своего сада надеюсь буду им пользоваться.
да согласен ctrl+c ctrl+v нету мыслей в голове!!!!
Код вял из своего пред идущего творения сигнализации для гаража(которая работает уже полтора года) и с комментариями не парился. Я хотел их написать по человечески (честно) Но оказалось это занимает столько же времени сколько и сочинение кода.
Что именно прокомментировать в схеме?
если хотите комментирвать - прокомментируйте ошибки. на которые вам указали в #1
Хотя на мой взгляд, тут не комментировать, а переписывать надо...
Ну, вот, мне непонятно что именно делают строки №№ 7-9 в кусочке Вашего скетча, который я выложил в #1. И что сломается/изменится в "проэкте", если эти три строки просто выбросить?
Поясните, будьте добры.
Когда поясните, я следующую непонятку спрошу. Будем слона по частям кушать :-)
да строки 7- 9 лишние остались от другого сейча просто там был похожий блок
а строки 25 там вроде экран инициализируется а основной цикл ниже эти строки работают толькораз
строки 39-41 тоже лишние эти переменные не используются .мало того и строки 42-44 тоже моно упразднить
задав число непосредственно где изпользуется эта переменная. Согласен.Уберу эти строки.
я сперва хотел не использовать пины 10 -13 для подключение изернет шилда но чето не получилось кнопок много поставить пришлось
Ну, тогда всё хорошо. Я и не сомневался.
Андрей, может вам какие книжки сначала почитать. прежде чем выкладывать свои проЭкты на общее обозрение? Ведь смешно выходит. По тому, как вы сейчас комментируете, какие строчки добавить, какие убрать - ведь очевидно, что вы в программировании ничего не понимаете.
Проект ваш, уж извините за прямоту - никуда не годится.
я прочитал книгу одну по Python
Python на примерах Практический курс по программированию А.Н. Васильев
даже каждый пример перепечатывал разбирался но заковыка в том по ка не напишиш чегонито нужное хотябы сямому себе, оно плохо запоминается. Примеры эти перепечатал вроде все понятно начал писать свое вот тут и полезли момены которые не совсем понял. Сейчас пищу прогу которая будет опрашивать несколько ардуин каждая ардуина будет отвечать за что то свое. И можно будет переключаться между ардуинами. Если первая программа для теплици была чисто одним блоком то эту пишу с использованием ooп. Вернее учюсь использовать ООП. А выкладываю для того что бы показали на ошибки.
Код для ардуино по чужим примерам учю
прочитал всего одну книгу. да и ту про питон? :) - вопросов больше не имею...
Читайте больше, под такой проект прочитать надо с десяток разных книжек - по Ардуине. по С++, по ООП, по Питону. по сетевым протоколам и тд
Вторая версия Программы будет примерно такая
Согласен. А теплицу уже на днях оборудовать надо.Что бы было больше времени книги читать!!!
...и с комментариями не парился. Я хотел их написать по человечески (честно) Но оказалось это занимает столько же времени сколько и сочинение кода.
Вы ошибаетесь.
Составление комментариев занимает примерно в 10 раз больше времени, чем написание кода.
Только "комментарии" пишутся не по готовому коду, а тогда, когда кода еще нет.
Собственно, сначала идет процесс проектирования, в котором создается подробный алгоритм работы устройства. А потом этот алгоритм переводится с русского на Си или любой другой язык программирования. А в тексте программы этот описанный по-русски алгоритм остается в виде комментариев.
Вы пренебрегли этапом проектирования, поэтому у Вас и родился такой монстр, на который без слез не взглянешь. Если бы Вы потрудились хоть немного времени уделить проектированию, результат был бы гораздо лучше.
Но еще не все потеряно: если Вы попытаетесь подробно разобрать и откомментировать код, то, вероятнее всего, сами найдете кучу вопиющих нелепиц в том, что Вы опубликовали.
Стоило мне отвлечься на отладку чужого сайта на Пыхе, как тут психушка приавит? Ну есть же модеры! Женя! Дорогой! Ну потри ты это позор нахер с форума, плииииз!
Да, ладно, граф! Человек старается как умеет. Понты не гнёт, предъявы не кидает.
А ежели ЯДиск падёт, то огурцам хана?
Вернее помидорам огурцам чем теплее темлучше
а в принципе надеюсь разбирусь с MajorDoMо сервисом и можно через него как запасной вариант
только он постоянно что то отправляет даже только что установленный(трафик ест ).
Еще вариант начинаю учит Python Django паралельно( по роликам там вроде там просто сделать связь проги и сайта)
...и с комментариями не парился. Я хотел их написать по человечески (честно) Но оказалось это занимает столько же времени сколько и сочинение кода.
Вы ошибаетесь.
Составление комментариев занимает примерно в 10 раз больше времени, чем написание кода.
Только "комментарии" пишутся не по готовому коду, а тогда, когда кода еще нет.
Собственно, сначала идет процесс проектирования, в котором создается подробный алгоритм работы устройства. А потом этот алгоритм переводится с русского на Си или любой другой язык программирования. А в тексте программы этот описанный по-русски алгоритм остается в виде комментариев.
Вы пренебрегли этапом проектирования, поэтому у Вас и родился такой монстр, на который без слез не взглянешь. Если бы Вы потрудились хоть немного времени уделить проектированию, результат был бы гораздо лучше.
Но еще не все потеряно: если Вы попытаетесь подробно разобрать и откомментировать код, то, вероятнее всего, сами найдете кучу вопиющих нелепиц в том, что Вы опубликовали.
я спроектировал на бумаге, листа 4 а4 веси день фантазировал как она должна работать , а в результате их проще оказалось слепить из кусков старых программ за вечер (правда потом месяц отлаживал правишь прогу для компа потом скейч для этой проги
Стабилизация температуры риализованна в самой ардутне
А он часто падает. вроде за 2 месяца что тестирую свою прогу ни разу такого не наблюдал
синхронизация новых файлов у ниж запаздывает а файлы которые уже есть обновляются быстро
программа для управление несколькими ардуинами отвечающими каждая за свое.(теплица.вода .сигнализация)
пока-что реализован только модуль теплица следущищим делаю сигнализацию.
Из самой программы можно менять ком порт по которому управляется теплица и записать его отдельным файлом чтобы при старте
он автоматически прочитался.В следующей версии будет добалена возможность переключения модуля в режим клиента чтобы он не
обращался к ардуине а читал файл состояния с яндекс диска( в идеале можно будет некоторые модули запускать на чтение из ардуины
а дрегие из файла тем самым получится находясь в саду читаем из яндекс диска события дома а дома читаем события в саду)
Выбор ком порта:
кликаем на надпись COM3 в строке рядом с теплица появляется строка ниже
кликая по стрелачкам << И >> меняем ком порт далее кликаем на установить должна появиться надпись правильный порт
или неправильный порт если правильный порт можем кликнуть по слову записать с низу появится слово записано.
при следующем запуске внизу будет слово прочитано и программа автоматом начнет опранивать прочитанный ком порт
На квадраты слева тоже можно кликать при этом будет меняться сцена (изображение теплици , сигнализации водопровода)
При изменении сцены основные параметры в краткой форме отображаются в квадрате выбора закрытой сцены.
Описание сцены теплица :
Сверху показываются основные параметры сцены
состояние ард 101 первая цифра дверь,вторая печной отдел воздуховоды, третья форточка
1 открыто 0 закрыто
далее температура
темп стаб 20 реж1
означает температура на которую стабилизируем 20 градусов
режим 1 автоматическая стабилизация 0 -отключена
открывать закрывать можно просто нажав на элемент дверь форточка печка на картинке
кнопка закупорить закрывает все элементы и переводит в ручное управление
строка температур с низу
нажимаем на нужную цифру запускается режим стабилизации и выставляется нажатая температура.
https://github.com/MihtinAN/suburban-house/blob/main/dacha1_994.py
текст
https://github.com/MihtinAN/suburban-house/blob/main/dacha1994.exe
Запускаемый файл
Написал прошивку модуля сигнализация сейчас тестимна простеньком стенде.
Проверю правильность логики работы входов и выходов и выложу.