Day7:一款无线抢答系统的设计思路
基本思路
這套系統(tǒng)分為三個端,分別為主持人App端、主持人掌控板端與選手端。
其中主持人App端負(fù)責(zé)發(fā)出正確選項、開始搶答、下一題等指令。
主持人掌控板端負(fù)責(zé)將主持人App端發(fā)出的消息轉(zhuǎn)發(fā)給下方的選手端。
選手端負(fù)責(zé)判斷選手的搶答與否,并自動給分。
通訊方式
前面談到,主持人App端需要發(fā)送指令給主持人App端并轉(zhuǎn)發(fā)給選手端,其中的通訊方式我們有以下幾種方案:
方案一
所有平臺端聯(lián)網(wǎng),使用WiFi+MQTT方案:
優(yōu)點
1.連接方便,無需主持人掌控板端轉(zhuǎn)發(fā)消息;
2.無需其他模塊,使用板載WiFi即可;
3.可連接平臺端數(shù)量多;
缺點
1.不穩(wěn)定,延遲受網(wǎng)速影響,無法做到同步搶答;
2.需要網(wǎng)絡(luò)支持,環(huán)境受限;
3.WiFi距離有限;
總結(jié)
此方案雖然行得通,但是不穩(wěn)定性太高,容易出現(xiàn)錯誤,pass.
方案二
所有平臺端使用掌控板藍(lán)牙:
手機(jī)作為客戶端只能連接一個藍(lán)牙服務(wù)端,而選手端肯定不止一個,pass.
方案三
所有平臺端使用LoRa通訊:
理論可行,但是LoRa無法與手機(jī)App通訊,pass.
方案四
使用Bluetooth+LoRa進(jìn)行通訊:
主持人App端與主持人掌控板端之間使用藍(lán)牙通訊;
主持人掌控板端接收到手機(jī)App端通過藍(lán)牙發(fā)送來的消息后,通過LoRa發(fā)送給下方的選手端;
選手端之間的搶答判斷也通過LoRa實現(xiàn)通訊,最后發(fā)送回主持人掌控板端進(jìn)行匯總。
總結(jié)
綜上所述,方案四是最優(yōu)的方案,我們選擇方案四作為通訊方案,主持人掌控板端使用藍(lán)牙與LoRa模塊,選手端也使用LoRa模塊。
思維導(dǎo)圖
簡略畫了個思維導(dǎo)圖,湊合著看看吧:
實現(xiàn)過程
見Day8:一個無線搶答系統(tǒng)的實現(xiàn)過程
隨堂筆記
TCP 穩(wěn)定傳輸 常見于網(wǎng)站 確保不能丟包
UDP 不穩(wěn)定傳輸 常見于視頻通話 丟包無所謂
心跳機(jī)制 每隔一分鐘發(fā)送一個數(shù)據(jù)包,確保對方存活
總結(jié)
以上是生活随笔為你收集整理的Day7:一款无线抢答系统的设计思路的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: rhino java api demo_
- 下一篇: java信息管理系统总结_java实现科