- proper handling of Ctrl-C

git-svn-id: http://moon:8086/svn/software/trunk/projects/opencv@347 b431acfa-c32f-4a4a-93f1-934dc6c82436
This commit is contained in:
2016-11-03 21:32:03 +00:00
parent 2b8a05c056
commit 89705bc5a8
2 changed files with 39 additions and 36 deletions
+7 -4
View File
@@ -93,18 +93,19 @@ if ("__main__" == __name__):
sockUdp.settimeout(30.0) sockUdp.settimeout(30.0)
sockUdp.bind((UDP_IP, UDP_PORT)) sockUdp.bind((UDP_IP, UDP_PORT))
localTcpServer = None localTcpServer = None
try:
while True: while True:
try: try:
data, addr = sockUdp.recvfrom(1024) # buffer size is 1024 bytes data, addr = sockUdp.recvfrom(1024) # buffer size is 1024 bytes
except: except (socket.timeout):
print ("UDP: Timeout") print ("UDP: Timeout")
if localTcpServer is not None: if localTcpServer is not None:
localTcpServer.stop() localTcpServer.stop()
del localTcpServer del localTcpServer
localTcpServer = None localTcpServer = None
continue continue
# print ("Received from " + str(addr)) # print ("Received from " + str(addr))
# print ("Message (" + str(len(data)) + ") :") # print ("Message (" + str(len(data)) + ") :")
dataStr = data.decode("utf-8") dataStr = data.decode("utf-8")
keyValueStrList = dataStr.replace('\r', '').replace(' ', '').split('\n') keyValueStrList = dataStr.replace('\r', '').replace(' ', '').split('\n')
@@ -114,7 +115,7 @@ if ("__main__" == __name__):
if len(keyValue) == 2: if len(keyValue) == 2:
keyValueDict[keyValue[0]] = keyValue[1] keyValueDict[keyValue[0]] = keyValue[1]
# print (keyValueDict) # print (keyValueDict)
if keyValueDict['Protocol'] == 'EV3': if keyValueDict['Protocol'] == 'EV3':
if localTcpServer is None: if localTcpServer is None:
sockUdp.sendto(b'A', addr) sockUdp.sendto(b'A', addr)
@@ -128,6 +129,8 @@ if ("__main__" == __name__):
if localTcpServer is not None: if localTcpServer is not None:
del localTcpServer del localTcpServer
localTcpServer = None localTcpServer = None
except (KeyboardInterrupt):
print ("\nKeyboardInterrupt")
if localTcpServer is not None: if localTcpServer is not None:
localTcpServer.stop() localTcpServer.stop()
+2 -2
View File
@@ -42,9 +42,9 @@ ap.add_argument("-y", "--height", type=int, default=240,
help="height") help="height")
ap.add_argument("-kp", "--kp", type=float, default=6.0, # 1.0 ap.add_argument("-kp", "--kp", type=float, default=6.0, # 1.0
help="kp") help="kp")
ap.add_argument("-ki", "--ki", type=float, default=2.0, # 0.2 ap.add_argument("-ki", "--ki", type=float, default=3.0, # 0.2
help="ki") help="ki")
ap.add_argument("-kd", "--kd", type=float, default=2.0, # 8.0 ap.add_argument("-kd", "--kd", type=float, default=3.0, # 8.0
help="kd") help="kd")
args = vars(ap.parse_args()) args = vars(ap.parse_args())