Создадим свой открытый протокол обмена данными между контроллером и модулями
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
эхх, унифицировать бы все
тем более автоматика не только твоя существует, есть еще у msg31 к примеру, там та же задача иногда встает
и решается только через uart
эхх, унифицировать бы все
SedoY
Профессор
Новосибирск
5.1K 2.2K
Отв.64 07 Янв. 17, 20:00, через 5 мин
woddy, OldBean, ребята а почему в % отбор а не в милилитрах? Процент сильно абстрактное понятие, его нужно к чему то привязывать. Или мы действительный поток хотим мерить, а не вычислять по косвенным признакам.
эхх, унифицировать бы все.
А чем RS-485 плох.
эхх, унифицировать бы все.
А чем 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
эхх, унифицировать бы все.Вот,вот у меня уже давно такая идея "бродит" и именно на 485, вопрос встал именно в протоколе обмена. Он нужен специально заточенным под это дело. Сейчас делаю блок розеток 8 шт и хочу протокол доделать чтоб центральному блоку только отсылать мощность розетки а резать синус она уже сама будет. Так же и датчики разнести чтоб не морочиться а обратился к блоку а он тебе температуру в линию выдал сразу.
А чем RS-485 плох.SedoY, 07 Янв. 17, 20:00
Добавлено через 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мин.:
Добавлено через 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:27http://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 этот вопрос обсуждали, поищи)