如何使用python服务器和通用机器人仿真软件作为客户端建立udp连接?

问题描述 投票:0回答:1

我正在使用通用机器人3仿真软件,并希望通过使用外部python服务器来控制在通用机器人仿真软件中创建的虚拟机器人。我已经修改了通用机器人网站上的代码,以建立客户端服务器连接,但收到一条错误消息,指出[]

send value from server is not a number

并且在c.send命令的python控制台中,我得到警告说明

expected bytes instead of str

[如果您能看下面的代码并向我提出任何纠正错误的方法,我将不胜感激。请随时指出我在使用python和网络连接时在代码中可能发现的任何错误。预先谢谢大家。

我尝试代替c.sendc.sendall(),也尝试使用c.send(bytearray[200,50,25]),但仍在客户端,我收到指出send number is not a number的错误。请建议我如何解决该错误,以便在建立客户端和服务器之间的通信之后,可以将这三个值发送到通用机器人仿真软件,并可以更改仿真机器人的位置。

 import socket
 import time
 HOST = "192.168.0.100"  # The remote host
 PORT = 30000  # The same port as used by the server
 print ("Starting Program")
 count = 0

while (count < 1000):

 s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
 s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
 s.bind((HOST, PORT)) # Bind to the port 
 s.listen(5) # Now wait for client connection.
 c, addr = s.accept() # Establish connection with client.

 try:
  msg = c.recv(1024)
  print ("msg")
  time.sleep(1)
  if msg == "asking_for_data":
      count = count + 1
      print ("The count is:", count)
      time.sleep(0.5)
      print ("")
      time.sleep(0.5)
      c.send("(100,50,25)");
      print ("Send 100, 50, 25")

except socket.error as socketerror:
print ("count")

   c.close()
   s.close()

   print ("Program finish")

我正在使用通用机器人3仿真软件,并希望通过使用外部python服务器来控制在通用机器人仿真软件中创建的虚拟机器人。我已经修改了...

python udp robotics
1个回答
0
投票

您可以使用UnderAutomation SDK通过第三方软件监视和控制机器人。它有一个随时可用的Python示例来读取数据(位置,状态,io ..)并远程控制机器人(发送URScript,开机等)

© www.soinside.com 2019 - 2024. All rights reserved.