Convert led code to class based for multithreading

This commit is contained in:
Cole Deck 2024-03-23 15:33:51 -05:00
parent 9b1b92e21d
commit 069d2175d9
2 changed files with 603 additions and 611 deletions

File diff suppressed because it is too large Load Diff

12
run.py
View File

@ -17,7 +17,7 @@ import signal
import socket import socket
from flask import Flask, render_template, request from flask import Flask, render_template, request
import requests import requests
import led_control from led_control import LEDSystem
import server import server
import asyncio import asyncio
import json import json
@ -36,7 +36,7 @@ killme = None
#pool = None #pool = None
serverproc = None serverproc = None
camera = None camera = None
ledsys = None
to_server_queue = Queue() to_server_queue = Queue()
from_server_queue = Queue() from_server_queue = Queue()
@ -47,6 +47,8 @@ def arm_start_callback(res):
def led_start_callback(res): def led_start_callback(res):
global led_ready global led_ready
led_ready = True led_ready = True
global ledsys
ledsys = res
def camera_start_callback(res): def camera_start_callback(res):
global camera_ready global camera_ready
@ -233,11 +235,13 @@ def setup_server(pool):
global camera global camera
pool.apply_async(ur5_control.init, (config["arm"]["ip"],), callback=arm_start_callback) pool.apply_async(ur5_control.init, (config["arm"]["ip"],), callback=arm_start_callback)
pool.apply_async(led_control.init, callback=led_start_callback) global ledsys
ledsys = LEDSystem()
pool.apply_async(ledsys.init, callback=led_start_callback)
#pool.apply_async(sensor_control.init, callback=sensor_start_callback) #pool.apply_async(sensor_control.init, callback=sensor_start_callback)
serverproc = Process(target=start_server_socket) serverproc = Process(target=start_server_socket)
serverproc.start() serverproc.start()
if led_ready is False: if led_ready is False:
fprint("waiting for " + "LED controller initialization" + " to complete...", sendqueue=to_server_queue) fprint("waiting for " + "LED controller initialization" + " to complete...", sendqueue=to_server_queue)
while led_ready is False: while led_ready is False: