STM32項目(四)——暗室網(wǎng)關(guān)
需求:
采集環(huán)境箱溫度,采集20個通道的電流值,點燈節(jié)拍控制;(上位機服務(wù)器端復(fù)雜)
溫度采集模塊:(STM32 + RS485 + W5500)
? 模塊通過RS485與環(huán)境箱通信,發(fā)指令給環(huán)境箱,環(huán)境箱反饋數(shù)據(jù),解析出所需溫度,通過網(wǎng)絡(luò)按照指定格式發(fā)到服務(wù)器,服務(wù)器軟件會顯示溫度曲線。
系統(tǒng)設(shè)計:RTX多任務(wù)設(shè)計,RS485解析任務(wù),網(wǎng)絡(luò)處理任務(wù);
(1)、RS485:串口發(fā)送指定字符串給環(huán)境箱,中斷接收到環(huán)境箱反饋數(shù)據(jù)加入隊列中,解析出溫度值;
(2)、網(wǎng)絡(luò):連接服務(wù)器,發(fā)送固定字符串,服務(wù)器下發(fā)溫度采集指令,網(wǎng)絡(luò)以設(shè)置的頻率周期上傳溫度數(shù)據(jù),支持超時重發(fā),斷線重連等功能。也有發(fā)送和接受隊列,提高效率。
電流采集模塊:(STM32+雙網(wǎng)口)
網(wǎng)口1與電流測試儀通信,發(fā)指令給電流測試儀,設(shè)備反饋數(shù)據(jù),解析20通道的電流值,通過網(wǎng)口2按照指定格式發(fā)到服務(wù)器,服務(wù)器軟件會顯示溫度曲線。
系統(tǒng)設(shè)計:RTX多任務(wù)設(shè)計,網(wǎng)口1任務(wù),網(wǎng)口2任務(wù);
(1)任務(wù)1:兩個事件,定時時間到的事件1,接受到任務(wù)的事件2;事件1被置位,向電流測試儀發(fā)送獲取通道電流指令,電流測試儀會反饋數(shù)據(jù),加入到接受隊列,設(shè)置事件2;事件2被置位,讀取接受隊列,解析數(shù)據(jù),獲取數(shù)據(jù);
(2)任務(wù)2:連接服務(wù)器,發(fā)送固定字符串,服務(wù)器下發(fā)電流采集指令,網(wǎng)口2以設(shè)置的頻率周期上傳電流數(shù)據(jù),支持超時重發(fā),斷線重連等功能。事件觸發(fā)方式(定時器中設(shè)置事件,任務(wù)中等待事件)。
點燈節(jié)拍模塊:(STM32+網(wǎng)口+5160)
服務(wù)器實時下發(fā)點燈節(jié)拍,模塊切繼電器控制車燈亮滅。
系統(tǒng)設(shè)計:RTX多任務(wù)設(shè)計,網(wǎng)絡(luò)處理任務(wù),車燈控制任務(wù);