Камера Ethernet викликає збиття буфера мережевих драйверів / перевантаження пам'яті?


1

Ми запускаємо камеру високої роздільної здатності на зарезервованому, єдиному порту 1 Гбіт Ethernet, підключеному до машини Windows 10. Ми дозволяємо камері працювати при автоматичному запусканні, тому вона знімає та надсилає зображення якнайшвидше - принаймні, це те, що я виводжу із спостережуваного мережевого трафіку: як тільки ми запускаємо камеру, використання Ethernet збільшується до ~ 580Mb отриманий на машині Windows.

АЛЕ: наше програмне забезпечення для обробки зображень (HALCON) не захоплює кожен кадр, який надсилає камера. Це не проблема для нашої задачі (майже статична сцена, нам потрібен новий кадр лише тоді, коли ми обробили старий через ~ 200 мілісекунд), хіба не факт, що спроба схопити наступне зображення призводить до абсолютно довільної затримки, тривалістю від ~ 100 мілісекунд до 20-30 секунд. Підозрілим є те, що перша кількість захоплень проходить безперебійно, і лише після цього ми спотикаємося з непередбачуваними термінами очікування. Чи можливо, що ці затримки надходять із програми / драйвера мережі / ОС (якого я не знаю), пробираючись через отриманий потік даних та викидаючи застарілі пакети? Чи є спосіб обмежити Windows в одному мережевому інтерфейсі кількома МБ буфера прийому, щоб він не став '

Спасибі заздалегідь

PS: Вибачте за мову неспеціаліста, моє тло - це вбудована інженерія.

PPS: Брандмауер Windows відключений для всіх портів


Зрозуміло, можливо, у вас десь є безліч марних об'єднань даних, витрачаючи ресурси. Напевно, найкраще вичавити його біля джерела, а не намагатися знайти способи його очищення після його генерування. Чи можете ви встановити камеру на 5 кадрів в секунду? Якщо ваше програмне забезпечення для обробки зображень може обробляти лише один кадр кожні 200 мс, це означає, що ви можете обробляти лише 5 кадрів в секунду. Або, можливо, не використовуйте автоматичну активацію, а замість цього налаштовуйте речі, щоб ваше програмне забезпечення для обробки зображень запускало камеру лише приймати / надсилати кадр, коли програмне забезпечення для обробки зображень здатне обробляти новий кадр.
Spiff

Можливо, спробуйте надати програмному забезпечення захоплення більш високий пріоритет. Також перевірте і переконайтеся, що ви працюєте на віртуальній пам'яті, це може суттєво вплинути на продуктивність. Якою роздільною здатністю є зображення на кадр порівняно з потужністю обробки машини? Скільки пам’яті має цей ПК?
Tim_Stewart

@Tim_Stewart машина - це 24-ядерний монстр з більшою кількістю оперативної пам’яті, ніж потрібно, так що ні, це точно не віртуальна пам’ять або машина з недостатнім потенціалом. Ми вирішуємо проблеми з драйверами, оскільки існують умови, коли камера забезпечує рекламований кадр, тільки не в межах Halcon.
Vroomfondel

Хм, справді це звучить. Lol 24 ядра? Звучить червоно. Удачі! 🙋
Tim_Stewart
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.