【问题标题】:How to connect arduino Uno with gsm/gprs SIM900 shield to firebase?如何将 arduino Uno 与 gsm/gprs SIM900 屏蔽连接到 Firebase?
【发布时间】:2019-04-22 10:56:18
【问题描述】:

需要将我的 arduino uno 板与 gsm/gprs 解决方案连接到 firebase 数据库,以便存储来自水质传感器的实时数据。传感器都已连接,gsm 模块工作正常。但找不到将解决方案连接到火力基地的方法。如果有人可以提供帮助,我将不胜感激,因为我是该领域的初学者,并且必须在 firebase 中存储数据才能在 Web 应用程序和移动应用程序中检索它们。如何将这个 arduino 板与 gsm 模块 sim 900 连接到火力基地?

【问题讨论】:

    标签: firebase iot arduino-uno gsm sim900


    【解决方案1】:

    使用 Firebase 函数设置 https 可调用对象。并且在 POST 中添加一个键(所以没有其他人可以使用你的函数),以及你想要读/写的数据。 https://firebase.google.com/docs/functions/database-events

    【讨论】:

      【解决方案2】:

      您可以先配置firebase功能服务,这允许将信息发送到firebase并存储,就像上面的答案一样,问题基本是SIM900+ARDUINO无法处理https协议,而firebase只允许。

      firebase 的 Whit 函数可以解决这个问题。

      别忘了之前

      npm i express
      
      const functions = require("firebase-functions");
      var admin = require("firebase-admin");
      const express = require("express");
      
      // Your credentials from firebase configurations
      var serviceAccount = require("./credentials.json");
      
      admin.initializeApp({
          credential: admin.credential.cert(serviceAccount),
          databaseURL: "HERE_YOUR_FIREBASE_URL"
      });
      
      const app = express()
      
      const db = admin.firestore()
      
      const collect = db.collection('YOUR_COLLECTION').doc('YOUR_DOCUMENT')
      
      
      
      // 'data_id' have my data from SIM900, and I captured by URL to save
      app.get('/data/:data_id', async (req, res) => {
          const date = new Date()
          const tempMap = new Map()
          try {
              tempMap.set(date.getTime(), req.params.data_id)
              await collect.update(Object.fromEntries(tempMap))
              return res.status(200).json()
          } catch (e) {
              return res.status(500).send(e)
          }
      });
      
      exports.app = functions.https.onRequest(app)
      

      这个简单的过程允许您使用 SIM900 访问 Firebase

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-21
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多