Вы правы, пример Beckhoff PeerToPeer не будет работать с двоичными данными, поскольку он использует строки, которые обрезаются при нулевом значении. Так что ему не нравятся данные UDP, которые у вас есть для него.
Вместо этого вы должны использовать функциональные блоки, например, такие как ReceiveData, который будет работать с массивом данных и указателями, что позволяет получать любое значение байта. Вы можете выполнить поиск в Google по запросу «Beckhoff ReceiveData», чтобы получить точную информацию.