0
我有一个Simulink模型通过UDP发送数据到另一个程序(Blender),我可以接收数据包,但我一直无法弄清楚如何正确解码它们。在Python中解码Simulink的UDP数据包
在Simulink模型中,我只是发送一个基于正弦波的值,没有什么奇特的东西,只有一个值,比如1.452或者其他。在搅拌机我把它吐出它从数据包接收的数据,和我收到的东西,如:
b'<\xa6ya\x05\x93\xe3?'
我已经不知道如何解码此。它似乎有一些十六进制值,但除此之外,我迷路了。我甚至不确定这些数据包含的是什么。它仅仅是来自Simulink的价值,还是它包含有关发件人和接收方IP地址,端口等内容的信息?
UPDATE: 我更新了Simulink模型,通过UDP传输一个恒定值用于调试/调查。该值是0.5234,而我的Python脚本咳出来的数据是:
b'\xab>W[\xb1\xbf\xe0?'
,当转换为十六进制的读取(使用hexlify):
b'ab3e575bb1bfe03f'
我将如何提取/解码0.5234出于此?
感谢您的帮助!
太谢谢你了!因为这个原因,我一直在我的桌子上抨击我的头。 – celestialorb
您也可以使用hex2num来解码十六进制字符串。但是由于某些原因,这些数字是颠倒的。所以如果你的字符串在变量“a”中,那么你需要运行“hex2num(a([15 16 13 14 11 12 9 10 7 8 5 6 3 4 1 2]))” – Navan