Я хочу разрешить проблемы настройки блока UDP Configure.
Блок Real-Time UDP Configure конфигурирует специализированную сеть Ethernet для операции UDP в реальном времени. Если настройка блока не отличает карты путем определения различной подсети для каждого, ошибки происходят.
Существует ограничение на количество UDP Send и блоков UDP Receive в модели. Общее количество этих блоков в модели ограничивается 2 048.
Чтобы идентифицировать проблемы настройки блока UDP Configure, проверяйте на эти проблемы.
Можно использовать специализированную карту Ethernet в коммуникации TCP при использовании другой карты в передаче между разработкой и целевыми компьютерами. Во время инициализации модели вы получаете эту ошибку:
The subnet in this block is the same as or is a subset of the subnet calculated in ''block''. The block calculates the subnet by ANDing the IP address bitwise with the subnet mask.
Проверяйте IP-адрес и подсеть, которую вы присвоили карте Ethernet целевого компьютера в блоке Configuration. Реализация UDP требует, чтобы эти два канала связи использовали отдельные подсети.
Блок вычисляет подсеть Выполнением операции "И" IP-адрес поразрядно с маской подсети для каждой карты. Например, эти технические требования приводят к той же подсети для обеих карт:
E1 (development-target): IP address: 192.168.0.25 Subnet mask: 255.255.255.0 ------------- Calculated Subnet: 192.168.0.0 E2 (RT-UDP): IP address: 192.168.0.130 Subnet mask: 255.255.255.0 ------------- Calculated Subnet: 192.168.0.0
Попробуйте настройку, такую как следующее:
E1 (development-target): IP address: 192.168.0.25 Subnet mask: 255.255.255.0 ------------- Calculated Subnet: 192.168.0.0 E2 (RT-UDP): IP address: 192.168.0.130 Subnet mask: 255.255.255.128 ------------- Calculated Subnet: 192.168.0.128
В некоторых сетях компьютер разработчика должен также быть в подсети, где коммуникация TCP происходит. Можно или добавить вторую сетевую плату в компьютер разработчика или обеспечить устройство шлюза, чтобы создать специализированную сеть для коммуникации TCP.
Когда вы используете тот же IP-адрес в качестве канала связи между разработкой и целевыми компьютерами, вы не можете использовать порты 22222
и 22223
. Simulink® Real-Time™ резервирует эти порты для своего собственного использования.
Во время выполнения в реальном времени с моделью UDP вы иногда видите ошибку ENOPKTS
. Эта ошибка останавливает выполнение модели. Когда слишком много пакетов получены и поставлены в очередь в сокете UDP, и слишком мало пакетов удалено, эта ошибка происходит.
Чтобы решить эту проблему, уменьшите шаг расчета своего блока UDP Receive.