我正在嘗試構建一個可以通過網絡或手動控制進行控制的溫度控制模塊。我的程序的各個部分都可以工作,但我無法弄清楚如何使它們一起工作。我的溫度控制模塊是python,客戶端是C#。我應該爲我的項目使用線程多處理還是asycio?
至於物理組件去了我有一個鍵盤,設置溫度和打開和關閉加熱器和一個液晶屏幕,顯示溫度數據,當然還有一個溫度傳感器。我需要: 不斷髮送溫度數據到客戶端。 將日誌文件列表發送給客戶端。 等待來自客戶端的提示,以設置所需的溫度或向客戶端發送日誌文件。
到目前爲止,所有硬件都正常工作,網絡功能的每個單獨部分都可以工作,但不能在一起工作。我還沒有嘗試過使用物理和網絡組件。
我一直在嘗試爲此使用線程,但想知道如果我應該使用別的東西?
編輯: 這裏是背後究竟我想要做的基本邏輯:
硬件:
鍵盤需要花費數輸入,直到「*」它會設置一個臨時變量。
將溫度變量與傳感器數據進行比較,並相應地打開或關閉加熱器。
「#」接通加熱器的並設置臨時變量爲0。
傳感器數據被寫入到日誌文件而臨時變量不爲0
網絡:
在客戶端連接客戶端發送日誌文件列表
溫度傳感器數據不斷髮送到客戶端。
提示處理程序偵聽提示。
如果客戶端請求日誌文件,溫度數據被暫停,並且文件發送之後溫度數據被恢復。
客戶端可以發送命令到提示處理程序來設置的臨時變量來觸發加熱器
客戶端可以發送命令到提示處理程序,以停止所述加熱器,並設置臨時變量爲0
命令從鍵盤或客戶端應始終工作。
感謝您的意見。 – drako234
@ drako234也許你可以寫一些僞代碼或者繪製你的子系統圖,然後我可以試試我可以分配給不同任務的線程。這是一個「魔鬼在細節」問題,所以我認爲一個很好的方法來處理它是你的個人組件框架的框圖,所有需要一起工作 – Aaron
是否足夠的編輯? – drako234