使用4G通訊模組和MQTT協議,完成物聯網裝置開發。

lorem万俟發表於2023-05-14

使用4G通訊模組和MQTT協議,完成物聯網裝置開發。

(1)安裝並使用4G模組通訊模組,建立microPython開發環境;
(2)使用提供的Demo開發例程,使用MQTT傳輸協議連線阿里或騰訊網站,完成物聯網裝置開發。
(3)將溫溼度資訊上傳到網站;
(4)手機APP檢視數

一、這是我之前寫關於阿里雲怎麼線上除錯裝置的。

這是第一步,在阿里雲平臺建立產品和裝置,用來將實際的裝置資料顯示到雲平臺的物理模型上。
線上除錯連線阿里雲(產品和裝置建立)
今天講一下怎麼用阿里雲和自制安卓app來實現資料雲流轉,即資料從實際裝置流傳到手機app。

二、思路:

1.裝置獲取到溫溼度資料並上傳阿里雲,能夠在阿里雲的裝置裡面的物理模型看到資料顯示更新。
2.此時裝置獲取的資料上傳到阿里雲平臺了
3.然後將雲平臺的資料流轉到Android做的app,就能夠手機監測溫溼度了。

三、硬體:用的Quecpython的EC800X。

image

1.上面有現成的溫溼度模組AHT20,可以直接用,也有官方的demo。
2.這個使用需要用QPYcome去下載韌體之後才能燒程式。程式開發可以用pycharm或者vscode都行。
3.Quecpython還有4G模組,寫好程式,直接插卡就能夠連線雲平臺。

四、Quecpython的工作

程式:把demo放進去跑一下就得了。(建議一開始不要用main命名檔案跑)

五、上傳阿里雲

教程:https://www.cnblogs.com/loremmoqi/p/16271886.html

六、裝置能夠正常線上之後,就可以看看物模型是否有顯示。

連線之後會發現裝置test1線上,並且能夠看到物理模型有資料顯示。
image

image

image

七、實現資料雲流轉

這裡可以看我的另外一篇部落格,專門整的雲流轉。
阿里雲資料雲流轉

八、寫Android(安卓)app

主要在於解析json資料格式

  private void parseJsonobj(String mData){
        try{
            JSONObject mJSONObjectData = new JSONObject(mData);
            JSONObject mItemJson = mJSONObjectData.getJSONObject("items");


            JSONObject mHumiJson = mItemJson.getJSONObject("CurrentHumidity");
            double mHumiData = mHumiJson.getDouble("value");
            String mHumiDataStr = String.format("%.1f",mHumiData);
            JSONObject mTempJson = mItemJson.getJSONObject("CurrentTemperature");
            double mTempData = mTempJson.getDouble("value");
            String mTempDataStr = String.format("%.1f",mTempData);

            new Thread(new Runnable() {
                @Override
                public void run() {
                    runOnUiThread(new Runnable() {
                        @Override
                        public void run() {
                            mHumiTv.setText("溼度:"+ mHumiDataStr +" %");
                            mTempTv.setText("溫度:"+ mTempDataStr +" ℃");
                        }
                    });
                }
            }).start();

            Log.d(TAG,"接收到雲流轉");
        }catch (JSONException e){
            e.printStackTrace();
        }
    }

接收到雲流轉資料
image

手機app也能夠收到資料:

百度網盤連結
提取碼:3x69

相關文章