Имхо, необходимость открытого протокола возникает когда уже есть устройства со своими протоколами.
Нет устройств- нет протокола.
Кто первый создаст реально работающую систему из контроллеров общающихся меж собой и она получит распространение , тот и будет претендовать
на первый открытый протокол.
Создадим свой открытый протокол обмена данными между контроллером и модулями
Дятел
Доктор наук
NA
554 119
Отв.20 15 Июля 15, 15:33
Капитан_Немо
Доктор наук
Москва
849 494
Отв.21 15 Июля 15, 15:38, через 6 мин
Автоматическая линия из самогонных устройств ... отдельный контроллер на каждый процесс и головной контроллер, который рулит всеми процессами.
Пока не вижу, как это поможет человеку, который гонит не в коммерческих масштабах, и время для него не критично.
Пока не вижу, как это поможет человеку, который гонит не в коммерческих масштабах, и время для него не критично.
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
Отв.22 15 Июля 15, 15:47, через 9 мин
Дятел, я же написал эта тема задел на будущее
У меня сейчас уже есть несколько прикидок по контроллеру, насосы, регуляторы мощности, будет блок датчиков, блок исполнителей
Пока в процессе осмысления протокола обмена.
Так что необходимость уже есть. Но не хочу пилить только под свои задачи. Шире как-то хочется
Капитан_Немо, Нет. просто контроллер и исполнительные устройства, как в умном доме. пришло время - открылись шторы.
Человеку которому время не критично можно и ручками покрутить гофмана постоять в процессе.
У меня сейчас уже есть несколько прикидок по контроллеру, насосы, регуляторы мощности, будет блок датчиков, блок исполнителей
Пока в процессе осмысления протокола обмена.
Так что необходимость уже есть. Но не хочу пилить только под свои задачи. Шире как-то хочется
Капитан_Немо, Нет. просто контроллер и исполнительные устройства, как в умном доме. пришло время - открылись шторы.
Человеку которому время не критично можно и ручками покрутить гофмана постоять в процессе.
V_B
Академик
Таганрог
2.7K 939
![](https://cdn.homedistil.ru/th/2006/17/3144.328674.jpeg)
Отв.23 15 Июля 15, 16:14, через 27 мин
mak, все придумано до нас!!!
Бери за основу протокол CAN.
Все пакеты, которые передает контроллер, имеют идентификатор.
Каждому параметру, вычисляемому в системе присваивается свой идентификатор.
Например температура куба - ID 100. Не важно где в системе она вычисляется, главное что в сети она всегда передается с этим адресом. Все узлы принимают ее и только те, которым она нужна ее берут и работают с ней, причем даже не зная о месте ее вычисления.
Давление - ID 101 и т.д.
Назначая приемные маски в контроллере можно на канальном уровне отсекать не нужные пакеты и принимать только нужные!
Бери за основу протокол CAN.
Все пакеты, которые передает контроллер, имеют идентификатор.
Каждому параметру, вычисляемому в системе присваивается свой идентификатор.
Например температура куба - ID 100. Не важно где в системе она вычисляется, главное что в сети она всегда передается с этим адресом. Все узлы принимают ее и только те, которым она нужна ее берут и работают с ней, причем даже не зная о месте ее вычисления.
Давление - ID 101 и т.д.
Назначая приемные маски в контроллере можно на канальном уровне отсекать не нужные пакеты и принимать только нужные!
ys1797
Доцент
Санкт-Петербург
1K 338
Отв.24 15 Июля 15, 16:43, через 30 мин
В CAN да. Только нужно идентификаторы с умом подобрать. Вроде там еще есть система приоритетов по захвату шины.
Хотя в нашем случае - это не так важно, не автомобиль чай.
Хотя в нашем случае - это не так важно, не автомобиль чай.
V_B
Академик
Таганрог
2.7K 939
![](https://cdn.homedistil.ru/th/2006/17/3144.328674.jpeg)
Отв.25 15 Июля 15, 16:48, через 5 мин
Вроде там еще есть система приоритетов по захвату шины.ys1797, 15 Июля 15, 16:43Есть, только она уже на канальном уровне реализована.
Поэтому и рекомендовал именно CAN применить - заморочек потом будет гораздо меньше, очень много реализовано в аппаратном драйвере!
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
Отв.26 15 Июля 15, 17:19, через 32 мин
Не везде к сожалению can можно вкорячить
Нужно и так и так иметь возможность работать.
Система будет все равно с одним мастером.
Нужно и так и так иметь возможность работать.
Система будет все равно с одним мастером.
V_B
Академик
Таганрог
2.7K 939
![](https://cdn.homedistil.ru/th/2006/17/3144.328674.jpeg)
Отв.27 15 Июля 15, 17:30, через 12 мин
Не везде к сожалению can можно вкорячитьmak, 15 Июля 15, 17:19Ну хоть ты не "наступай на грабли, которые уже били по лбу не одного проектировщика"!!!
Не экономь на микроконтроллере - это потом окупиться простотой реализации и временем написания кода!
slony
Магистр
Сочи
246 63
![](https://cdn.homedistil.ru/th/1404/26/31072.164282.jpg)
Отв.28 15 Июля 15, 17:35, через 5 мин
С одним мастером не очень удобно например аварийные ситуации обрабатывать.
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
Отв.29 15 Июля 15, 18:56
Ну хоть ты не "наступай на грабли, которые уже били по лбу не одного проектировщика"!!!Если самому все узлы делать - не вопрос, я уже CAN оценил
Не экономь на микроконтроллере - это потом окупиться простотой реализации и временем написания кода!V_B, 15 Июля 15, 19:30
Но возьмем насос перистальтику на ардуино - его могут собрать те кто не особо дружит с пайкой.
Но CAN туда уже не влезет, все под завязку, только rs485
Аналогично с РМ на ардуино. CAN шилд очень недешевый.
Поэтому нужно проработать оба варианта.
![](https://cdn.homedistil.ru/th/1406/14/21949.162668.jpg)
Отв.30 31 Июля 15, 13:19
mak, надо просто оставить идею самостоятельной сборки без пайки и все. если ее оставить, то нужно двигаться к stm32 + can, другой дороги нет просто.
с другой стороны если будет STM32, то он запросто справится со всеми нашими задачами один. включая отсылку данных на комп по вайфаю например
с другой стороны если будет STM32, то он запросто справится со всеми нашими задачами один. включая отсылку данных на комп по вайфаю например
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
Отв.31 31 Июля 15, 13:22, через 4 мин
g100m, речь пока о протоколе, неважно какая физическая реализация
потихоньку накидываю варианты
потихоньку накидываю варианты
![](https://cdn.homedistil.ru/th/1406/14/21949.162668.jpg)
Отв.32 01 Авг. 15, 12:57
я прото, что обеспечить качественный протокол CAN по вычислительной мощности сопостовимо с мощностью самой системы.
как-то это ненормально. я бы вообще все сделал по UART и не заморачивался. на приемнике 5 раз проверил контрольную сумму и делов-то.
как-то это ненормально. я бы вообще все сделал по UART и не заморачивался. на приемнике 5 раз проверил контрольную сумму и делов-то.
сообщение удалено
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
![](https://forum.homedistiller.ru/Themes/default/images/post/wireless.gif)
g100m, can это нижний уровень, транспорт так сказать.
А нужно описать универсальную структуру данных для обмена между модулями, про это речь
А нужно описать универсальную структуру данных для обмена между модулями, про это речь
Любитель_выпить
Магистр
Где-то на севере
225 91
![](https://cdn.homedistil.ru/th/1311/01/30374.164173.jpg)
Отв.34 01 Авг. 15, 13:53, через 22 мин
mak с Днем Рождения!
Наличие системы адресации, наличие масок приема позволяет очень оптимально использовать процессорное время!
А структура данных - так в CAN уже все придумано за нас!
Назначь каждому параметру свой адрес - и больше ничего не надо.
Например "группа параметров от датчиков температуры" - и маску на эту группу в том модуле, которому эти параметры нужны. И этот модуль примет эти данные, а другие нет!
Далее "группа управляющих параметров" - на нее маску в блоках регулирования поставить! Ну и т.д.
can это нижний уровень, транспорт так сказать.mak, 01 Авг. 15, 13:31Ну не только "транспорт"!
Наличие системы адресации, наличие масок приема позволяет очень оптимально использовать процессорное время!
А структура данных - так в CAN уже все придумано за нас!
Назначь каждому параметру свой адрес - и больше ничего не надо.
Например "группа параметров от датчиков температуры" - и маску на эту группу в том модуле, которому эти параметры нужны. И этот модуль примет эти данные, а другие нет!
Далее "группа управляющих параметров" - на нее маску в блоках регулирования поставить! Ну и т.д.
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
![](https://forum.homedistiller.ru/Themes/default/images/post/wireless.gif)
Вот как раз все параметры которые нужно передать и получить описываю
Нужно учесть что не только can
Еще и обычный последовательный
Нужно учесть что не только can
Еще и обычный последовательный
makh
Профессор
Sаmara
2.1K 1K
![](https://cdn.homedistil.ru/th/2103/15/34717.343027.png)
Отв.36 01 Авг. 15, 14:10, через 2 мин
А обычный и привычный ethernet не рассматривается в качестве сети?
И шильдики для ардуинок недорогие, и, так сказать, инфраструктура в зачаточном состоянии в наличии в каждом домохозяйстве -- модем/роутер.
Да и работать было бы удобно, широковещательными пакетиками, любой зоопарк разрулить можно, хоть локально, хоть удаленно через криптованные каналы...
Добавлено через 2мин.:
mak, с днюхою!
И шильдики для ардуинок недорогие, и, так сказать, инфраструктура в зачаточном состоянии в наличии в каждом домохозяйстве -- модем/роутер.
Да и работать было бы удобно, широковещательными пакетиками, любой зоопарк разрулить можно, хоть локально, хоть удаленно через криптованные каналы...
Добавлено через 2мин.:
mak, с днюхою!
игорь223
Академик
таганрог
30.3K 20.6K
![](https://cdn.homedistil.ru/th/1411/23/1291.161320.jpg)
Отв.37 01 Авг. 15, 14:16, через 7 мин
Я не великий реализатор в железянном или программном аспектах
Однако как постановщик задач уже все зубы сьел.
Поэтому я понимаю точно, что В-Б прав на стопятьсот процентов.
И Г100м прав не меньше.
Только, и исключительно промышленный протокол обмена, и желательно так, как в современных автомобилях сделано. Чтобы вкорячить автосигнализацию раньше полмашины нужно было разобрать. Сегодня - пару часов, с несомненно высшим на порядок сервисом для пользователя.
Однако на практике вообще далеко не всегда есть нужда в какой то связи. наоборот, в 90% случаев она не нужна, поскольку системы у нас
достаточно примитивны, соттветственно и реализации - тоже.
В порядке же маниловщины могу высказать свои соображения.
Нужно, чтобы все устройства в сети имели два провода для соединения. Как минимум.
Ну то есть земля и питание 12Вольт (или 24В)
По которым бы и передавались все сигналы двустороннего обмена данными.
Все.
Как максимум (это вообще мечта поэта) все устройства должны быть автономными, а связь между ними - беспроводная.
Автономный термометр дает информацию на контроллер, тот управляет автономным и беспроводным клапаном отбора, регулятор мощности валяется где то в районе "под кубом" и автономно получает команды, датчик разлития автономно валяется на полу, проходной термометр автономно висит на ТСА
на воде охлаждеия висит автономный клапан и так далее.
Вот когда колонна перестанет быть похожа на новогоднюю елку, оплетенну ююгирляндой, вот тогда и наступит гармония.
П.С. Впрочем, подозреваю: для этого нужен непроктолог протокол, а просто нормальный промышленный дизайнер)))
Однако как постановщик задач уже все зубы сьел.
Поэтому я понимаю точно, что В-Б прав на стопятьсот процентов.
И Г100м прав не меньше.
Только, и исключительно промышленный протокол обмена, и желательно так, как в современных автомобилях сделано. Чтобы вкорячить автосигнализацию раньше полмашины нужно было разобрать. Сегодня - пару часов, с несомненно высшим на порядок сервисом для пользователя.
Однако на практике вообще далеко не всегда есть нужда в какой то связи. наоборот, в 90% случаев она не нужна, поскольку системы у нас
достаточно примитивны, соттветственно и реализации - тоже.
В порядке же маниловщины могу высказать свои соображения.
Нужно, чтобы все устройства в сети имели два провода для соединения. Как минимум.
Ну то есть земля и питание 12Вольт (или 24В)
По которым бы и передавались все сигналы двустороннего обмена данными.
Все.
Как максимум (это вообще мечта поэта) все устройства должны быть автономными, а связь между ними - беспроводная.
Автономный термометр дает информацию на контроллер, тот управляет автономным и беспроводным клапаном отбора, регулятор мощности валяется где то в районе "под кубом" и автономно получает команды, датчик разлития автономно валяется на полу, проходной термометр автономно висит на ТСА
на воде охлаждеия висит автономный клапан и так далее.
Вот когда колонна перестанет быть похожа на новогоднюю елку, оплетенну ююгирляндой, вот тогда и наступит гармония.
П.С. Впрочем, подозреваю: для этого нужен не
![](https://cdn.homedistil.ru/th/1406/14/21949.162668.jpg)
Отв.38 01 Авг. 15, 14:16, через 1 мин
я говорю не только про протокол, вообще про все хозяйство. его получится больше, чем исполнительного кода
mak
Модератор
Екатеринбург
6.3K 1.8K
![](https://cdn.homedistil.ru/th/1304/21/7446.169847.gif)
![](https://forum.homedistiller.ru/Themes/default/images/post/wireless.gif)
makh, Спасибо
Ethernet не рассматриваю в этом качестве. Дорого и избыточно.
Для построения многоузловой сети нужен коммутатор и соединение звездой
В stm32 can уже есть, а rs485 стоит копейки
игорь223, согласен полностью с тобой.
При возможности использования CAN - только его.
Обратная связь нужна для диагностики исполнителей. Ну и для передачи данных, таких например как данные тарирования у насоса, параметров сети от РМ и т.п.
Беспроводка - неоднозначно.
Да и навесить все модули на одну витую пару не так проблематично
Ethernet не рассматриваю в этом качестве. Дорого и избыточно.
Для построения многоузловой сети нужен коммутатор и соединение звездой
В stm32 can уже есть, а rs485 стоит копейки
игорь223, согласен полностью с тобой.
При возможности использования CAN - только его.
Обратная связь нужна для диагностики исполнителей. Ну и для передачи данных, таких например как данные тарирования у насоса, параметров сети от РМ и т.п.
Беспроводка - неоднозначно.
Да и навесить все модули на одну витую пару не так проблематично