Информация
- В рейтинге
- 6 602-й
- Зарегистрирован
- Активность
Специализация
Технический директор, Директор по информационным технологиям
От 3 000 000 ₸
Управление проектами
Автоматизация процессов
Управление компанией
Разработка ТЗ
Оптимизация бизнес-процессов
А зачем хранить все подряд а базе данных? Это же не эффективно! У вас могут данные от плк (ну или калькулированные внутри системы) одинаковые одинаковые и очень долго. Представьте себе, что значение 1(битовая 1) с 1000 дискретных датчиков идёт в течение недели. И вы это все тупо кладёте в базу! Причём с интервалом в 100 миллисекунд. 10 записей в секунду, 600 в минуту, а дальше сами посчитайте. Ну или какое нибудь аналогово значение, которое не меняется долго. А вы все продолжаете складировать в базу. Не проще ли сделать отметки времени и указывать что в это время данное значение началось, а в это закончилось. И каждый раз у вас одна запись обновляется в формате времени, если значение тега не поменялось, как изменилось значение тега, так начали новую запись. Теперь у вас вместо 6 048 000 (это количество записей на один тег с одним битовым значением за неделю) имеется одна запись в которой добавлены просто 2 метки времени. Если предположить, что в одной записи у вас порядка 20 байт, то за неделю один тег сгенерит вам 118 мегабайт информации, а 1000 тегов уже 118 гигабайт. Жирненькая база получается и максимально не эффективная. Самое печальное, что и при выборе вам придётся тратить уйму ресурсов для выборки и объёмы буду колоссальный, особенно при постройке графиков. Скорость работы любого приложения будет с каждым разом все медленнее и медленнее и в итоге при росте базы до нескольких терабайт вы скажете заказчику что нужно новое северное железо. Просто мы такое проходили уже)))
При выборке, вы указываете время, на которое хотите получить значение тега и смотрите тупо интервалы. Если укладывается в диапазон времени, то достаете это значение. Если нужен диапазон, то выводите ряд значений и указываете в какие интервалы какие были значения. Да SQL запросы будут немного сложнее, но и экономия объёмов в базе будет колоссальная. Сам такое писал в 2010 году на производстве. На VS2008 и MS Sql 2003. База росла очень медленно, а тегов в ней болталось около 5000 штук с интервалом опроса 100 миллисекунд. В те времена было расточительством использовать большие объёмы данных.
Прошу прощения если слишком много написал. Если есть желание обсудить, пишите, поделюсь опытом.
Есть несколько вопросов, которые, как мне кажется, здесь слишком перемудрили.
1) зачем 4х слойная плата? там столько места что разводка питания на стандартной меге не составит труда, тем более и так куча переходный отверстий (как люди Easy EDA). 4 слоя - это удорожание, а учитывая рабочую тактовую частоту в 8 МГц, проблем с питанием и емкостными паразитными моментами не будет.
2) Плату можно было сделать компактные и да, взять аккумулятор меньше (я так понимаю это 2000mAh как раз помещается под плату).
Пусть не 2 года он будет в standby режиме, а меньше, думаю не страшно. Компактные плата и сами часы на руке будут выглядеть изящнее. И края можно сделать более круглыми, как раз до края ремешка. Но это моё мнение и я не претендую на авторский дизайн.
3) коннекторы - это жесть! И 2х пиновый и 6ти пиновый. Надеюсь они не остались на плате в рабочем варианте.
Аналогично, как автор и сказал про pogo-пины можно сделать и для аккумулятора. Ну или просто оставить контакты Только запаивать его сразу на плату, с оборотной стороны (на площадки открытой меди).
4) разводка платы была на автомате и видимо без ручных правок. Достаточно некрасиво получилось. Монтаж можно было сделать компактнее, особенно часовой чип. Все, что касается питания стянуть в одну сторону или распределить равномерно в одной линии.
Что касается линий D+ и D-, как и I2C то нет вообще смысла их вытягивать по длине. Скорости не те, что бы заморачиваться. И если честно, то не понятно, а зачем вообще использовать линии D+ и D-, вы же прошиваете мегу через SPI. Может я что-то не знаю или не понимаю?
А теперь рекомендации или как можно улучшить проект (субъективное мнение)
1) Можно led-ы посадить на ШИМ и в ночное время регулировать яркость. А ещё лучше поставить компактный датчик освещения. Будет вообще адаптивно. И для аккумулятора больше энергосбережения.
2) использовать 2х цветные светодиоды и коммутировать цвет 2мя дополнительными пинами. Например зеленый цвет - часы, красный - минуты. Светиться они будут по очереди, как и было задумано в проекте.
Или же использовать 4 ряда по 4 светодиода и коммутировать их 4 пинами (всего 8 пинов, в виде матрицы). Получается динамическая индикация. И всегда видно время. Пинов на меге хватит с головой. Да и места на плате выше крыши.
3) разъём usb заменить на магнитный коннектор (если он только для зарядки используется)
4) доводить плату вручную. Так можно сделать более аккуратно, более красиво и при необходимости поиграть с линиями, убрать лишние переходные отверстия. Да и порой перекроить выводы контроллера под более удобную разводку платы. А не разводить так, как нарисовал изначально. Да, есть линии, которые останутся неизменными (D+, D-, SPI, I2C), но все остальное можно перекроить в процессе.
5) 120 евро за сборку и платы - слишком дорогое удовольствие. Это 4 слоя платы вытянули на 40% от суммы. Там за это сразу цена в космос улетает.
Думаю что проще сделать на 2 слоя, и заказать маску для нанесения паяльной пасты. Там у тебя нет особо мелких компонентов. Укладываются они на подготовленную плату достаточно быстро и просто, тем более на паяльную пасту. И запаять все это на столике за 3 доллара.
На днях заказал платы, 5 штук (минимум у JLC PCB) размерами 72Х72 в 2 слоя в черном цвете - 2 доллара за платы и 8,70 доставка (в Казахстан). На сборку минут по 40 на плату.
Итог:
В целом, проект интересный, как и его реализация. Автору респект. Из схем, мыслей и рассуждений можно многое увидеть и почерпнуть. Было приятно видеть очень практичный подход к проекту, самокритику и идеи на будущее. Автор, продолжай в том-же духе. Твори и вытворяй! Удачи!
Вам очень кажется... Читайте предисторию в предыдущих комментариях и попробуйте проследить последовательность мысли. Но скорее всего у вас это не получится. Здесь речь идёт не про стандарты и правила, а про бездумное использование оборудования и материалов в квартире с дистанционным управлением, которую ошибочно называют "умным домом". А вы ошибочно влезли в тему не понимая сути вопроса и тыкаете стандартами, оскорбляет участников, выставляя себя героем со знаниями несуществующего стандарта! Уж если вы ошибаетесь при написании стандарта, то что говорить про ваши знания... Вы уверенны в том, что все делаете и пишете правильно, и считаете идиотами всех вокруг. Проснитесь, мир не крутится вокруг вас!
А в исходнике был посыл на то, что не нужно тащить к каждой розетке отдельный кабель, а использовать группу розеток в комнате. Вы же с ног на голову поставили мой ответ и интерпретировали это вырвав из контекста. Бесполезно вести диалог с человеком, который сути диалога не понимает. Вот и сидите дальше на "своей волне" и пишите свой бред.
По всей видимости ваше эго не позволяет вам мыслить объективно. Я вам описываю конкретные условия, а вы домысливаете того, что там нет. Естественно что не розетка защищается, а кабель и хватит тыкать стандартами. Я проектирую заводы и обогатительные фабрики, естественно я использую стандарты и опирвюсь на них. Здесь пишу для обывателя, а вы как душнила докапываетесь до букв. Ещё и тыкает мне, что я тупой и баран. Оскорбляет в лоб, не зная оппонента. Это как минимум некорректно... А вырывая из контекста мои фразы и комметируя их по своему - просто выставляете человека дураком. И уж если на то пошло то не ПЭУ, как вы пишите, а ПУЭ - Правила Устройства Электроустановок. Такое впечатление, что вы тупо пропустили мой комментарий через нейросеть и своими словами решили передать, но получилось криво.
Вы кроме электрики и вашего *ПЭУ что-то ещё знаете?
Суть умного дома - экономия и безопасность, а в данном случае, при отдельном кабеле к каждой розетке первый принцип нарушается. И если пишете про холодильник, то его потребление мизерное и спокойно коммутируется реле на 10А без последствий.
А тащить отдельный кабель в каждую розетку не дороже чем ставить модуль в подрозетник? И если туда ставить нормальный модуль и запитать его от своей линии на 24В (FTP Cat6, который просто кольцом лежит по всей квартире) то вы просто имеете нормальные модули, которые коммутируют нагрузку в любой розетке и контролируете питание модулей по всей квартире цетрализованно.
И если уж вы используете WB экосистему, то у них и модуль есть для этого (WB-MRM2-mini v.2). Это не реклама и я не поддерживаю WB по своим причинам, но уж если вы стали делать, то можно это сделать более грамотно.
И в этом варианте, у вас в каждую комнату уйдёт только по 2 силовых кабеля и 1 интерфейсный, по которому отдадите ещё и питание 24в для датчиков и реле. Все! Что может быть проще? Захотели - поставили модуль в подрозетник, не захотели - прямой выход на розетку. Так же и с освещением.
Просто получается что народ порой бездумно тащит все в один шкаф, потому что все так делают и доволен, считают что это правильно. А посмотреть на это с другой стороны - не хотят. Понять суть умного дома - тоже не хотят!
В каждую комнату просто отдельный кабель на розетки. На кухню пару кабелей по 6мм2 (при наличии электролиты, к ней отдельный кабель), в зону где стиралка и сушилка тоже отдельный кабель. Для мокрых зон УЗО на 10мА. Если нужен умный дом, то протяну cat6 FTP в помещения. Он и для питания модулей и для передачи данных. В каждую комнату по кабелю и если нужно просто кольцом по всем розеткам и к освещению (ну и соответственно туда, куда необходимо для управления и контроля. Тёплый пол, радиаторы отопления, шторы и так далее).
Это я бы так сделал.
А ещё порой в каждую комнату на каждую розетку тащат по кабелю, 2,5мм2 и автомат на 16 А ставят. А там только зарядник живёт в этих розетках, все оставшиеся 20 лет.
Мил человек, я этой серой (автоматизацией) занимаюсь 25 лет. О какой лени вы тут можете говорить. Я не предполагаю, как это можно сделать, я говорю как это будет эффективнее и привожу пример, как это делается в автоматизации.
Только эти автоматы и будут стоять в главном распределительный щите. В комнатах - максимум по паре автоматов и не нужно к каждой розетке тянуть отдельный кабель и защищать её автоматом, это бред! Вы понимаете что такое распределение нагрузок? И теперь расскажите мне, сколько и каких нагрузок будет в комнате где просто отдыхают люди (в основном спят) максимум - пылесос включат (хотя я более чем уверен что там будет стоять робот или будет использоваться аккумуляторный). А вы, в рамках умного дома, тащите через все пространство сотни метров кабеля к каждой розетке и к каждому выключатель, к каждой лампе! Это вам нужно не лениться а сесть и подумать, что же вы делаете и насколько эффективно это используется. Если вы кладёт кабель к розетке в 2,5мм2,а там только торшер и зарядник, то вы переплачивать за сечение кабеля, а если вы ещё этой розеткой управляет, то ещё и тратите ресурсы на автоматизацию и защиту этой розетки. А можно было просто сделать одну линию на всю комнату и не париться. Я понимаю, если это мокрые зоны или кухня или гараж, где нагрузки переменные и есть риск и даже там нет смысла вытягивать отдельными кабеля и в центральный щит.
Рассмотри вот такие варианты:
1 - основная плата: Adafruit Feather nRF52840 Express (сверхнизкое потребление BLE). Плата расширения: Adafruit USB Host BFF (на базе чипа MAX3421E).
2 - основная плата: Esp32-h2, Контроллер хоста клавиатуры CH9350. Приятная сборка, эффективнее чем pi pico w.
3 - WCH CH582 / CH583 - все на борту, но нужно программировать уметь. Очень низкое энергопотребление. Копеечный мк.
Почему именно raspberry pi? Она же прожорливая! Извини, но с 1000МАh заряжать каждый день - это бред! Просто ради того, что бы без провода быть на ble. Рассмотри другие варианты, есть готовые ble модули от китайцев, которые пробрасывают data+/- без программирования. Потребление - микроамперы в режиме работы. И наноамперы в ожидании.
И да, ещё и минус впаяли на комментарий, который имеет прямое отношение к статье. Вообще круто! Сообщество куда-то в сторону болтовни скатывается. Хейтят полезные вещи и поддерживают засирания. Ну удачи вам.
Автор, подтяжка базы к корпусу через резистор нужна для того, что бы сигнал был сигналом, а не кучей мусора и наводок не пойми чего. Предпоследний комментарий был очень полезным.
Если же ты, автор, хочешь улучшить свое творение, то прислушайся к этому. Это комментарии электронщиков.
Я в шоке! Вы на примитивную статью написали 70+ комментов! А достаточно было посоветовать автору использовать транзистор 2n2222 с ногами (корпус ТО-92) и если он фоторезистом для smd сделал плату то мог бы вытравить и плату для датчика с дорожками, вместо 2х проводов от UTP кабеля. Ну и сделать подтяжку базы к корпусу, а датчик запараллелить ещё с одним резисторов, что бы база не болтала ь в воздухе. Это в качестве корректировки его решения.
Ну а затем порекомендовать использовать компаратор и силовой транзистор.
А я тут и гальваническая развязку и RS триггеры увидел на 561 серии (где вы её сейчас найдёте?) не все прочитал, но предполагаю что там столько всего написано!
Вы бы ещё raspberry pi предложили бы с специализированный По и Scada системой.
Автор молодец, нашёл самое простое и дешёвое решение и да, оно работает, криво, но работает.
Так ведь все просто... IIoT - это ничто иное, как дистанционный термометр, датчик давления и все что угодно и все что хотите на производстве для мониторинга на неответственном процессе/переделе. Просто на посмотреть и собрать данные. Все остальные датчики, на которые упирается управление процессом - только в стандартных протоколах/стандарта АСУТП, проводом. Если включаете IIoT в АСУТП систему в качестве управляющего сигнала - риск убить процесс увеличивается в разы.
"воздух" отвалился, задержка при передаче и прочая лабуда - станут причиной аварии и отсутствия сигналов управления. Ответственность в итоге на том, кто принимает такое решение ставить эти IIoT решения в процесс.
Берегите инженеров 80х и 90х. Потому что новое поколение навтыкает именно эти IIoT датчики и засунет их в Azure и переведёт на Json файлы. Вот тогда всё АСУТП горя хлебнет!
Я разрабатываю электронику и микроэлектронику, проектирую автоматизацию и многое другое, поэтому у меня реальный шок от того, что я вижу. Это равносильно тому, что поставить сервер на Intel Xeon, развернуть на нем кучу виртуальных серверов и гонять на этом всем - Тетрис!
Просто я это все проходил ещё в начале 2000-х, когда микроконтроллеры были чем-то редким и мы городили на LPT портах автоматизацию, писали ПО на C и C++ под DOS. И сейчас, когда есть такие возможности на уровне МК вы ставите промышленный ПК под задачи самого дешёвого МК и при этом добавляете Modbus.
Визуально, выглядит так: Собирается схема из того что есть в наличии и из тех знаний и умений, которыми обладает один определённый человек. Без альтернативы других вариантов, без анализа протоколов, без желания сделать действительно что-то уникальное. Просто взяли, собрали, что-то запрограммировали, добавили модуль Modbus, громко назвали это и ждёте хороших оценок, рассказываете где взять оборудование, что бы повторять вашу безумную идею.
А вот если бы вы взяли бы один микроконтроллер, смогли бы разобрать, что же приходит в этот USB свисток (ответная часть от пульта) с пульта по RX и TX, и разобрали бы эти сигналы на уровне МК, вот тогда да, это было бы интересно. Это было бы полезно! А так, используется дешёвый пульт и сверх дорогой промышленный ПК. В чем суть? В чем экономия? Просто ради пульта... Бред!
Нихрена ты замутил! А попроще, управлять адресными светодиодами не пробовал? Ну например 433МГц пульт и приемник за 1,5 доллара и самый примитивный контроллер, за 1 доллар. Ну и адресная лента за 2 доллара за метр (чисто для экспериментов).
В чем смысл такого решения как у тебя? Из пушки по воробьям?
Ты серьёзно, хочешь этим барахлом управлять станками или умным домом?
Это самая бредовая идея для реализации. Использовать ПК, затем Modbus для управления освещением, чисто для пульта с usb свистком...
Очень круто и интересно, только самый главный вопрос: зачем это все?
В чем суть умного дома, если он нафарширован таким количеством барахла? Обслуживание его? Так вроде должно быть наоборот... А тут получается сделали умный дом для того, что бы его обслуживать, поддерживать и настраивать. Анализировать дашборды, смотреть его температуру, скоро подгузники начнёте ему менять и сопли подтирать, а потом за пивом побежите для него в магазин.
Или что-то я путаю и здесь идёт просто описание железа, которое не имеет отношение к умному дому? Просто так много слов и букв, которые сильно не понятные.
Например, есть контроллер, который обрабатывает одну комнату/один участок/Корридор и так далее. В нем есть вся нужная логика для работы в рамках этой комнаты, но и есть команды, которые можно отправить за её пределы (общие для всех контроллеров или для тех, которые отвечают за это). Этот контроллер обрабатывает всё, что касается этой комнаты: шторы, свет, тёплый пол/радиаторы отопления, вентиляцию, датчики присутствия, подсветки, кондиционеры и так далее. В комнату заходит 2 линии: 1 - силовая, 2 - интерфейсная. Интерфейсная - гигабитный Ethernet/RS-485/ CAN, силовая - по потребности. Стоит небольшой скрытый шкаф (за зеркалом, картиной, чем угодно) есть единый сенсорный пульт управления, клавиши освещения, может голосовой ввод, да не важно. И так далее по всем остальным комнатам. И есть в итоге ещё один контроллер - шлюзовой, который принимает команды из вне, от Алисы, от телефонного шлюза (софт, которым можно с телефона управлять), от нейросети и так далее, и он-же обрабатывает взаимодействия между комнатами, имеет распределение общих/централизованных команд.
И все, децентрализация есть, кабелей по 100км тянуть не нужно, шкафов со 100500 автоматами не требуется, управление откуда угодно и чем угодно и так далее. Вся пром автоматизация сейчас так работает. Там только комнаты побольше, но и управляются они не одним ПЛК.
И если сдох один контроллер, то не нужно хоронить весь дом.
Да, возможно будет дороже, но думаю что за счёт одних только проводов и их монтажа можно будет ещё и сэкономить.
Вот например шторы:
Dooya DT82TV (Modbus version): Популярный привод, поддерживающий управление по RS-485. Позволяет не только открывать/закрывать штору, но и получать обратную связь о точном положении в процентах.
Onviz (серия с RS-485): Российский бренд, предлагающий карнизы, которые подключаются напрямую к промышленным контроллерам (ПЛК) через Modbus RTU без дополнительных шлюзов.
В конце концов есть просто приводы для штор, с концевиками, с энкодерами, без всего, без wifi, zigbee, tuya и всего остального. Их можно запустить при помощи дискретных входов-выходов и счетных входов.
А вот кондиционеры:
Mitsubishi Electric: Модуль ME-AC-MBS1 позволяет подключить любую бытовую модель серии M или Mr. Slim напрямую к сети Modbus RTU.
Haier: Многие модели поддерживают подключение к Modbus через дополнительные интерфейсные модули для интеграции в BMS.
Midea / Kentatsu / Hisense: Имеют порты (часто маркируются X, Y, E), к которым подключаются шлюзы Modbus RTU (например, MD-AC-MBS).
Вообще, с кондиционерами все гораздо проще, они управляются по ИК. Поэтому тут вообще все легко, ставится ИК шлюз и прошивается ряд команд на нужное железо, так сказать обучается ИК шлюз и потом ПЛК просто кидает команду в этот шлюз по Modbus или как запрограммирован этот шлюз. Нормальные ПЛК умеют это делать легко и просто.
А что касается этого момента, то тут вообще все просто, открывается код программы и там все видно, какой вход, какой выход, какая логика и так далее. Меняй, коректируй, добавляй.
Конечно, если этот файл не отдали вам, зажали или пытаются заработать на этом, это совсем другой вопрос
Писать логику для Siemens или Schneider или Mitsubishi на одних и тех-же "языках", это как программировать разный софт на одном языке программирования. База едина.
Да, согласен, я тут неправильно написал, это программно-аппаратное обеспечение.
Я уже пробовал дискутировать с одним из ваших специалистов - бесполезно. Он искренне был уверен в том, что прав. Прав во всем, о чем он думает, не смотря на все то, что ему сказали. Поэтому я не горю желанием дискутировать с вам на выставках. Это бесполезно, вы всегда стоите на своём. Возможно потому что не знаете другого, возможно потому что считаете себя правыми во всем, возможно потому что вам так сказали, что представленный продукт - самый лучший и его нужно отстаивать.