make camera controller exit on many errors

This commit is contained in:
Sem van der Hoeven
2023-06-05 21:23:05 +02:00
parent 096cee40be
commit 8b2dfd27e2

View File

@@ -9,7 +9,7 @@ import asyncio
import websockets.server
import threading
import cv2
import sys
import requests
#resolution of the camera
@@ -74,6 +74,7 @@ class CameraController(Node):
vid.set(cv2.CAP_PROP_FRAME_WIDTH, 1920)
vid.set(cv2.CAP_PROP_FRAME_HEIGHT, 1080)
error_amount = 0
while True:
try:
while(vid.isOpened()):
@@ -86,8 +87,13 @@ class CameraController(Node):
#sender(man)
await websocket.send(man.tobytes())
self.get_logger().error("Not opened")
error_amount += 1
except Exception as e:
self.get_logger().error("error " + str(e))
error_amount += 1
if error_amount > 20:
self.get_logger().error("Too many errors, closing node")
sys.exit(-1)
def handle_video_connection(self):