Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: STM32F429 ethernet+PTP
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
romas2010
Форумчанам привет!! Возникла задача одновременно запустить на устройствах в сети измерения через АЦП..Частота дискретизации ~33 Hz..собственно говоря я не понял из описания PTP,как мне обеспечить одновременность..ну получаю я метку времени,и что дальше с ней делать?И вообще,поможет ли мне PTP в данном случае?
scifi
Цитата(romas2010 @ Sep 11 2016, 18:43) *
Частота дискретизации ~33 Hz

Это прекрасно. А цифр по требованиям одновременности совсем нет?

Цитата(romas2010 @ Sep 11 2016, 18:43) *
собственно говоря я не понял из описания PTP,как мне обеспечить одновременность..ну получаю я метку времени,и что дальше с ней делать?

Советую забыть про микроконтроллеры. Лучше что-нибудь из гуманитарной сферы laughing.gif
AlanDrakes
1. Вы ведь помните, что пакет в сети может иметь некоторую задержку распространения?
2. Насколько точное время начала измерения требуется? Милисекунды? Микросекунды?
И вообще, что измеряете?
Попробуйте поставить вопрос ребром - нельзя ли как-то иначе выполнить данную задачу?
Пока что даже по простой симуляции модели, могу получить разницу между "Отправкой команды" на преобразование данных до собственно, его начала в 2мс. И это при низкой загрузке сети и всего 2-3 коммутаторах в цепочке.
В случае отправки Broadcast запроса - его получит только локальный сегмент (до ближайшего "умного" коммутатора, который такой пакет может не пропустить в магистральный порт) сети.
При высокой нагрузке на коммутаторы - пакет легко может отстать на 5-20мс, особенно, если в коммутаторе есть поток с высоким приоритетом QOS.

Так что...
jcxz
Цитата(AlanDrakes @ Sep 12 2016, 22:10) *
При высокой нагрузке на коммутаторы - пакет легко может отстать на 5-20мс, особенно, если в коммутаторе есть поток с высоким приоритетом QOS.

Это решаемо, если предположить, что время передачи пакета от клиента синхронизизации до сервера синхронизации одинаково (среда передачи изотропна). Хотя для Ethernet это конечно не совсем верно.
См. протокол SNTP например.
SasaVitebsk
Рассказывали как работает производственная линия филипс морис, по сигаретам. Там распределённая периферия.
Передаются пакеты контрольные - получается ответ. Измеряется время между запросом и ответом. Таким образом определяется задержка на получение команды по всей линии. Далее процессор при работе отдаёт команды с учётом задержки.
rolleyes.gif
Понятно, что это при синхронной работе. При асинхронной, или плавающей задержке такое невозможно. В Ethernet, как я понимаю, даже при минимальной загрузке, имеется вероятность задержки произвольной при передаче пакета.
jcxz
Цитата(SasaVitebsk @ Sep 13 2016, 11:56) *
Понятно, что это при синхронной работе. При асинхронной, или плавающей задержке такое невозможно. В Ethernet, как я понимаю, даже при минимальной загрузке, имеется вероятность задержки произвольной при передаче пакета.

Для PTP выделено отдельное значение в поле типа Ethernet-кадра. Так что для таких кадров всякие свитчи могут давать "зелёную улицу" - наивысший приоритет передачи, минимизируя задержку.
khach
Начинайте синхронизацию PTP заранее, вернее она всегда должна быть включена после запуска сети. Предполагайте протокол оповещения о вываливании узла из синхронизации или входа в сеть нового узла. Заранее оповестите все узлы о времени начала измерений. Каждый узел рассчитает свою задержку до начала измерений и загрузит таймер задержки на запуск АЦП. Когда измерения закончатся- все узлы скинут пакет данных по сети. Возможно в пакт данных следует включить значение поля времени начала и конца измерений чтобы корректировать задержку по факту. Т.е если у данных с одного из узлов начало и конец измерений сильно разнятся с заданными, то что то там случилось и надо или отбросить данные, или перемерять.
Sekat
Цитата(romas2010 @ Sep 11 2016, 18:43) *
Форумчанам привет!! Возникла задача одновременно запустить на устройствах в сети измерения через АЦП..Частота дискретизации ~33 Hz..собственно говоря я не понял из описания PTP,как мне обеспечить одновременность..ну получаю я метку времени,и что дальше с ней делать?И вообще,поможет ли мне PTP в данном случае?

Посмотрите реализацию IEEE 61850-9-2 (SV) . Это то что вы хотите, только у вас частота существенно ниже (а значит проще).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.