27 МОСКОВСКАЯ ВСТРЕЧА
Форум самогонщиков Сайт Барахолка Магазин 27 МОСКОВСКАЯ ВСТРЕЧА

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

Форум самогонщиков Автоматика
1 2 3 4 5 6 7 ... 12 4
sevpro Доктор наук Worldwide 769 281
Отв.60  07 Янв. 17, 19:27
OldBean, аппетит растет во время еды))
mak Модератор Екатеринбург 6.3K 1.8K
Отв.61  07 Янв. 17, 19:27, через 1 мин
woddy, ну внешние устройства на i2c я бы не стал вешать
С одним кубом, с одной колонной, с одним дефлегматором и одним узлом отбора Улыбающийся)) Хоть с этим бы разобраться!OldBean, 07 Янв. 17, 21:23
я попытался найти решение на вопрос sevpro
собственно для того чтобы работал другой альтернативный узел отбора вместо клапана можно контроллеру куда-то сообщать своих действиях в определенном формате, так чтобы посторонний исполнитель смог это прочитать
OldBean Доцент Красноярск 1K 1.4K
Отв.62  07 Янв. 17, 19:48, через 22 мин
собственно для того чтобы работал другой альтернативный узел отбора вместо клапана можно контроллеру куда-то сообщать своих действиях в определенном формате, так чтобы посторонний исполнитель смог это прочитать mak
Концептуально такие вопросы давно решены. Как, например, в объектно-ориентированном программировании: иерархическая организация объектов и инкапсуляция. А в "железе" этим занимаются как раз драйверы/контроллеры. Они берут на себя все специфические детали реализации устройства, а интерфейс, по которому идет общение с дройвером находится уже на другом уровне иерархии (абстракции).

Если перевести всю эту фразу к нашей теме, то малинке все равно, что там работает в качестве регулятора отбора (клапан, насос, кран с приводом и т.п.). Она просто говорит контроллеру узла отбора - обеспечь отбор, равный 65% от максимальной скорости отбора (максимальную скорость отбора малинка знает). А как контроллер это будет делать малинку не волнует. Это забота контроллера. У меня так и реализовано. Зачем здесь еще что-то еще мудрить? Контроллер должен заниматься только одним (своим) устройством (оконечником). Другим устройством должен заниматься другой контроллер. Но он тоже должен понимать что такое 65% и уметь это делать, если малинка его об этом попросит.
mak Модератор Екатеринбург 6.3K 1.8K
Отв.63  07 Янв. 17, 19:55, через 7 мин
у насоса контроллер на борту, а i2c во внешний мир совсем не айс
тем более автоматика не только твоя существует, есть еще у msg31 к примеру, там та же задача иногда встает
и решается только через uart
эхх, унифицировать бы все
SedoY Профессор Новосибирск 5.1K 2.2K
Отв.64  07 Янв. 17, 20:00, через 5 мин
woddy, OldBean,  ребята а почему в % отбор а не в милилитрах? Процент сильно абстрактное понятие, его нужно к чему то привязывать. Или мы действительный поток хотим мерить, а не вычислять по косвенным признакам.
эхх, унифицировать бы все.
А чем RS-485 плох.
sevpro Доктор наук Worldwide 769 281
Отв.65  07 Янв. 17, 20:08, через 9 мин
А чем RS-485 плох.SedoY, 07 Янв. 17, 20:00
Почему ж плох? Хорош, но требует дополнительного трансивера, как и CAN.
По поводу i2c согласен с коллегами, что не предназначена она для длинных линий, а тем более в условиях импульсных помех. Но пока у ТС все на одной макетке стоит все работать будет.
OldBean Доцент Красноярск 1K 1.4K
Отв.66  07 Янв. 17, 20:34, через 27 мин
ребята а почему в % отбор а не в милилитрах? Процент сильно абстрактное понятие, его нужно к чему то привязывать. Или мы действительный поток хотим мерить, а не вычислять по косвенным признакам.
эхх, унифицировать бы все.SedoY
Вот как раз для унификации-то процент и удобен. У меня, например, он совершенно естественно возникает, т.к. в клапане отбора - ШИМ, в в контроллере ТЭНа - Брезенхем. И там и там регуляторы (контроллеры ТЭНа и контроллеры клапана отбора) обеспечивают линейную зависимость регулируемой величины от управляющего параметра от нуля до максимума. Поэтому проценты и удобны. Если я поставлю более мощный ТЭН, или другое устройство отбора (например, тот же перистальтический насос) с бОльшей производительностью и связанный с малинкой, например, по радиоканалу :))), то в "протоколе" обмена между малинкой и контроллерами абсолютно ничего не изменится.

По поводу i2c согласен с коллегами, что не предназначена она для длинных линий, а тем более в условиях импульсных помех. Но пока у ТС все на одной макетке стоит все работать будет.sevpro
Не надо его использовать на длинных линиях. Вообще-то, по задумке - это протокол для обмена между отдельными узлами каких-нибудь электронных устройств. А вот датчики температуры (они уже как бы немножко удалены :))) сидят на другой шине (1 Wire). Если что-то нужно будет удалить и не нужно качать гигабайты - вполне можно использовать 1 Wire. А промышленные стандартны для наших задач вряд ли оправданы - лучше позаботится о минимизации помех.
Bitner Научный сотрудник NN 941 411
Отв.67  07 Янв. 17, 20:45, через 11 мин
Ну нафлудили как всегда )))
Но ТК могу черненький прислать абсолютно бесплатно, но доставка за Ваш счет.
terminal Бакалавр Челябинск 88 7
Отв.68  07 Янв. 17, 22:16
эхх, унифицировать бы все.
А чем RS-485 плох.SedoY, 07 Янв. 17, 20:00
Вот,вот у меня уже давно такая идея "бродит" и именно на 485, вопрос встал именно в протоколе обмена. Он нужен специально заточенным под это дело. Сейчас делаю блок розеток 8 шт и хочу протокол доделать чтоб центральному блоку только отсылать мощность розетки а резать синус она уже сама будет. Так же и датчики разнести чтоб не морочиться а обратился к блоку а он тебе температуру в линию выдал сразу.

Добавлено через 7мин.:

485-я стоит 20 рублей, так что доступно.
mak Модератор Екатеринбург 6.3K 1.8K
Отв.69  07 Янв. 17, 22:25, через 10 мин
terminal, есть модбас
либо просто текстовыми командами
terminal Бакалавр Челябинск 88 7
Отв.70  07 Янв. 17, 22:38, через 13 мин
terminal, есть модбас
либо просто текстовыми командамиmak, 07 Янв. 17, 22:25
от модбаса хочу уйти, мне уже им все уши прожужали. В протоколе должно быть заложено что за устойства сидят в линиях,а также каждый зная протокол должен легко интегрировать свое или чужое устройство в свой комплекс. Тут думать нужно, а как до этого доходит все разбегаются.а я один не могу все осилить.

Добавлено через 19мин.:

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

Добавлено через 11мин.:

Преобразователь USB-485 на алике 50 руб. С доставкой.
sevpro Доктор наук Worldwide 769 281
Отв.71  07 Янв. 17, 23:18, через 41 мин
terminal, не выйдет ничего. У каждого, кто что-то может разработать, свое видение концепции, свои возможности, свои наработки. Меня, к примеру полностью устраивает УАРТ на ТТЛ уровнях опторазвязанный на 1,5метрах кабеля и скорости 2400, mak  CAN делает, OldBeanа квадратня шина устраивает... И это только физический протокол, дальше круче начнется...


Добавлено через 4мин.:

кто то делает датчик спирта кто то термометрterminal, 07 Янв. 17, 22:38
чем родной для ds18b20 1wire не устраивает?
terminal Бакалавр Челябинск 88 7
Отв.72  07 Янв. 17, 23:28, через 10 мин
У каждого, кто что-то может разработать, свое видение концепцииsevpro, 07 Янв. 17, 23:18
это проблема нашего времени, людей мало что объеденяет.

Добавлено через 11мин.:

чем родной для ds18b20 1wire не устраиваетsevpro, 07 Янв. 17, 23:18
да всем устраивает, тут же вопрос в модульности. Надо Вам одну задачу решить взяли несколько нужных модулей соеденили в линию и программирование обмена только остается, не нужен стал убрали модули до следующего раза. Не нужно вспоминать как программировать тот или иной датчик.да и датчики могут быть разные и на термопаре и ds18b20 а обмен стандартный ты запрос он температуру.
sevpro Доктор наук Worldwide 769 281
Отв.73  07 Янв. 17, 23:40, через 13 мин
людей мало что объеденяетterminal, 07 Янв. 17, 23:28
Как это? Нас объединяет общее дело;) Чего бы мы здесь собрались?
terminal Бакалавр Челябинск 88 7
Отв.74  08 Янв. 17, 00:11, через 31 мин
Нас объединяет общее делоsevpro, 07 Янв. 17, 23:40
если предложенная система многих устроит то можно попробовать сделать 'брагомашину', ее будет удобно монтировать и быстро разбирать в случае необходимости.
woddy Доцент Новосиб 1.3K 489
Отв.75  08 Янв. 17, 00:24, через 13 мин
По поводу i2c согласен с коллегами, что не предназначена она для длинных линийsevpro, 07 Янв. 17, 20:08
ну внешние устройства на i2c я бы не стал вешатьmak, 07 Янв. 17, 19:27
http://www.ti.com/lit/ds/symlink/p82b715.pdf
I2C Bus Operation Over 50 Meters of Twisted-Pair Wire
стоит копейки на али
terminal Бакалавр Челябинск 88 7
Отв.76  08 Янв. 17, 00:33, через 10 мин
стоит копейки на алиwoddy, 08 Янв. 17, 00:24
с I2C у меня был горький опыт, все наверное видели продают платки для ардуино где стоят чмасы реального воемени и память 24С32 дак вот когда в память записываешь данные содержащие адрес часов то часы вешают линию. Так что пришлось рассаживать их и программно эмулировать I2C.
sevpro Доктор наук Worldwide 769 281
Отв.77  08 Янв. 17, 00:54, через 21 мин
I2C Bus Operation Over 50 Meters of Twisted-Pair Wirewoddy, 08 Янв. 17, 00:24
Костыли. Есть стандарт, остальное - колхоз и никаких гарантий. Тем более, чем больше повесить на длинную квадратную шину устройств, тем сложнее потом косяки отлавливать.
makh Профессор Sаmara 2.1K 1K
Отв.78  08 Янв. 17, 00:56, через 2 мин
не предназначена она для длинных линийsevpro, 07 Янв. 17, 20:08
Не предназначена. Но работает. Четвертый год уже как, без всякого рода заморочек с интерфейсом, атмега с градусниками ADT7410 на двухметровых концах витухи -- четко и уверенно, в условиях импульсных помех. Сначала старался делать максимально короткие концы, потом расслабился.
sevpro Доктор наук Worldwide 769 281
Отв.79  08 Янв. 17, 01:00, через 5 мин
дак вот когда в память записываешь данные содержащие адрес часов то часы вешают линиюterminal, 08 Янв. 17, 00:33
Это как? У часов (ds1307?) свой адрес, у памяти свой.
И кстати, начудили на некоторых из таких платок китайцы с батарейкой (недавно с m16 этот вопрос обсуждали, поищи)