ELEKTROS 0 Posted December 3, 2020 (edited) · Report post Проблема то может быть и с адресацией, руководство программиста (или нечто подобное описывающее ваш протокол связи) есть у вас? Скорость конечно самая капризная у вас как по мне, у нас в одном устройстве нормально работало на 500, в другом точно таком же пришлось снижать до 250. Как у вас с электромагнитной совместимостью, помех рядом нету? Edited December 3, 2020 by ELEKTROS Share this post Link to post Share on other sites
jcxz 0 Posted December 3, 2020 · Report post 7 часов назад, ELEKTROS сказал: Проблема то может быть и с адресацией, руководство программиста (или нечто подобное описывающее ваш протокол связи) есть у вас? Скорость конечно самая капризная у вас как по мне, у нас в одном устройстве нормально работало на 500, в другом точно таком же пришлось снижать до 250. Как у вас с электромагнитной совместимостью, помех рядом нету? А что не так со скоростью? У меня вот сейчас на такой же скорости общаются несколько устройств на расстоянии до 5 м. К 2-м из устройств подключены довольно мощные двигатели с ШИМ-ом и с токами до сотен ампер (фазными). И сбоев нет от слова "совсем" (если конечно терминаторы правильно включены). Линия тоже - обычная, даже не экранированная, витая пара. Иногда есть проблемы с Ethernet-ом на этих девайсах, но только не с CAN-ом. Так что совершенно определенно - дело не в скорости. Share this post Link to post Share on other sites
bgc 0 Posted December 3, 2020 · Report post On 12/2/2020 at 4:31 PM, x893 said: Можно и 120 на концах не ставить (интересно почему именно 120 а не 150 ?). Зачем ? И так пойдет - проверено многократно. не за тем, чтобы так сделать. А о том, что неправильный провод, терминатор и многие подобные плюхи не могут быть четкой причиной описанной проблемы. Share this post Link to post Share on other sites
jcxz 0 Posted December 3, 2020 · Report post 45 минут назад, bgc сказал: А о том, что неправильный провод, терминатор и многие подобные плюхи не могут быть четкой причиной описанной проблемы. Не знаю не знаю. У меня на 1М например если неправильно выставить терминаторы - начинаются как раз похожие проблемы (или полный обрыв связи). На малых скоростях да - может и вообще без терминаторов иногда работать. Share this post Link to post Share on other sites
Vasily_ 0 Posted December 3, 2020 · Report post 35 минут назад, jcxz сказал: У меня на 1М например если неправильно выставить терминаторы - начинаются как раз похожие проблемы (или полный обрыв связи). На малых скоростях да - может и вообще без терминаторов иногда работать. Совершенно верно, мегабит без терминаторов заставить работать можно с определенными драйверами с бубном и только на столе, на малых скоростях на столе как-то работает. Share this post Link to post Share on other sites
Doka 0 Posted December 3, 2020 · Report post On 12/2/2020 at 1:44 PM, Samum421 said: Все что знаю, что во время конфигурирования в мастер модуле большое количество ошибок принятых пакетов убедитесь, что ноды на шине передают сообщения с несовпадающими ID 15 hours ago, ELEKTROS said: Проблема то может быть и с адресацией, руководство программиста (или нечто подобное описывающее ваш протокол связи) есть у вас? +1 Share this post Link to post Share on other sites
Samum421 0 Posted December 4, 2020 · Report post 16 часов назад, Doka сказал: убедитесь, что ноды на шине передают сообщения с несовпадающими ID +1 У каждого датчика свой ID. Как только определятся, так сразу же работают нормально, связь есть. Share this post Link to post Share on other sites
jcxz 0 Posted December 4, 2020 · Report post 46 минут назад, Samum421 сказал: У каждого датчика свой ID. Как только определятся, так сразу же работают нормально, связь есть. А до того "как определятся" как работают? И что такое "определятся"? Share this post Link to post Share on other sites
Eddy_Em 0 Posted December 4, 2020 · Report post Самым лучшим вариантом было бы воткнуть CAN-анализатор + осциллограф. И смотрет, что происходит, когда "шина вешается". Вот у нас был один косяк с внедрением новой железки: она была на CANopen (хотя за те же деньги, если не дешевле, можно было бы нормальное решение на SEW'овских приводах сделать, запрограммировав один-единственный PDO и подчистив весь мусор), поэтому в качестве прослойки с рабочей сетью еще и преобразователь воткнули. И этот преобразователь так шину нагрузил, что, хоть она всего-то 220м длиной (при скорости в 250кбод), ошибки просто гроздьями стали сыпаться! Пришлось втыкать буфер и отделять проблемный элемент сети до полноценной модернизации всего оборудования (решили переходить уже на ethernet, а CAN только локально использовать). Share this post Link to post Share on other sites
Myron 0 Posted December 4, 2020 · Report post 1 hour ago, Eddy_Em said: ...Пришлось втыкать буфер и отделять проблемный элемент сети... А что это за буфер и куда его втыкали? Share this post Link to post Share on other sites
Eddy_Em 0 Posted December 4, 2020 · Report post Активная буферная развязка CAN-шины. По сути — ретранслятор с гальваноразвязкой. Таким образом можно удлинять шину, если нет жестких требований к таймингу сообщений (из-за буферизации она увеличивает таймауты и рилтаймовая система от нее может с ума сойти). Share this post Link to post Share on other sites
Samum421 0 Posted December 5, 2020 (edited) · Report post 15 часов назад, jcxz сказал: А до того "как определятся" как работают? И что такое "определятся"? Дело в том, что заранее не известно, сколько датчиков и каких будет присоединено на шину. Поэтому после подключения датчиков, по команде юзера из интерфейса, система начинает опрашивать какие датчики имеются. И вот процесс определения датчиков то и хромает. Соответственно нужно взяться за CAN и в сущности сделать с нуля опрос. А может и библиотеки и драйверы. Edited December 5, 2020 by Samum421 Share this post Link to post Share on other sites
x893 0 Posted December 5, 2020 · Report post 27 minutes ago, Samum421 said: Дело в том, что заранее не известно, сколько датчиков и каких будет присоединено на шину. Поэтому после подключения датчиков, по команде юзера из интерфейса, система начинает опрашивать какие датчики имеются. И вот процесс определения датчиков то и хромает. Соответственно нужно взяться за CAN и в сущности сделать с нуля опрос. А может и библиотеки и драйверы. 1. А почему новый датчик не может изредка посылать сообщения мастеру, что его подключили ? Мастер получит сообщение и настроит всё - без участия всаяких "юзеров". Если от датчика нет сообщений какое-то время, мастер считает, что его (датчик) выключили и не опращивает его. Опять же датчик (он ведь умный почти как мастер) смотрит, что его давно не опращивали и переходит в п.1 "Юзер" нужен только для физического подключения и отключения датчиков. Ну и по сигналу от мастера (или датчика) (когда уже полный п.) вызывать главного "юзера" на помощь. Share this post Link to post Share on other sites
Samum421 0 Posted December 5, 2020 · Report post 11 минут назад, x893 сказал: 1. А почему новый датчик не может изредка посылать сообщения мастеру, что его подключили ? Я тоже так думаю. Но нужно переписать драйверы CAN. Share this post Link to post Share on other sites
des00 0 Posted December 5, 2020 · Report post Заканчиваем флуд. Как правильно заметили это подфорум "предлагаю работу", а не "интерфейсы". ТС сделайте правильно оформленную тему, ТЗ, оплата, контаты, а содержимое этой перенесу в форум по интерфейсам. Модератор. Share this post Link to post Share on other sites