(SKU: DFR0505)NB-IOT SIM7000 Shield

来自DFRobot Product Wiki
跳转至: 导航搜索
文件:TEL0118.jpg
OBLOQ - IoT 物联网模块

目录

简介

  • OBLOQ是基于ESP8266设计的串口转WIFI解决方案的模块,作为物联网连接节点,用以接收和发送物联网信息。
  • 模块体积尺寸紧凑,即插即用,适用于各种3.3V/5.5V单片机系统。
  • 实现无线数据传输,远程控制,可用于扩展Arduino 。
  • 板载开关可方便的进行固件升级。

返回编辑要求(SKU:XXXXXXX) 产品名称


Warning yellow.png

禁止对模板随意更改!谢谢!


性能描述

  • 工作电压:3.4V~4.2V
  • 输入电压:VIN输入:7V~12V DC输入; 3V3输入:3.3V; 5V输入:5V
  • 输出电压:5V DC输出和3.3V DC输出 和外部电源输入
  • 通信模块:SIM7000
  • VIN输入电压(推荐):7-12V
  • VIN输入电压(限制):6-20V
  • 支持USB2.0接口更新SIM7000固件
  • 支持SIM card
  • 支持GNSS/GSM/ LTE
  • 通过AT命令控制
  • 板载BME280温度、湿度、气压,三位一体的环境传感器
  • 工作温度:-30℃ ~ +80℃
  • 尺寸:53.4x68.6mm

接口说明



DFR0505引脚说明图.jpg























注:除了按Boot按钮可实现开关机之外,也可以通过拉高D12引脚2秒实现模块的开关机。

使用教程(基于SIM7000库)


准备工作

  • 硬件
    • 1 x Arduino UNO控制板 (可兼容LEONARDO和MEGA,若使用MEGA请短接PIN8 PIN10)
    • 1 x [DFR0505]NB-IOT SIM7000 Shield(V1.0)
    • 1 x 为UNO下载程序的USB线
    • 1 x 7V~12V直流电源



硬件连接

使用连线图

将[DFR0505]NB-IOT SIM7000 Shield(V1.0)板插在Arduino UNO控制板上即可

样例代码

 /*
  * file DFRobot_SIM7000_test.ino
  * brief DFRobot's SIM7000 module
  * This example Send an HTTP request to www.dfrobot.com and receive the return data
  */

#include <Wire.h>
#include <DFRobot_SIM7000.h>

DFRobot_SIM7000 sim7000;
static char buff[300];

void setup(){
    int signalStrength,dataNum;
    Serial.begin(115200);
    sim7000.turnOFF();
    delay(500);
    if(sim7000.turnON()){                                                                      //Turn ON SIM7000
        Serial.println("Turn NO SIM7000");
    }
    if(sim7000.setBaudRate(38400)){                                                            //Set baud rate from 115200 to 38400
        Serial.println("Set baud rate:38400");
    }else{
        Serial.println("faile to set baud rate");
    }
    if(sim7000.init()){                                                                        //Init SIM7000
        Serial.println("AT command READY");
    }else{
        Serial.println("AT command ERROR");
    }
    if(sim7000.checkSIMStatus()){                                                              //Check SIM card
        Serial.println("SIM card READY");
    }else{
        Serial.println("SIM card ERROR");
    }
    delay(500);
    if(sim7000.setNet(GPRS)){                                                                  //Set net mod GPRS or NB-IOT
        Serial.println("Set GPRS mode");
    }else{
        Serial.println("Fail to set mode");
    }
    delay(500);
    signalStrength=sim7000.checkSignalQuality();                                               //Check signal quality
    Serial.print("signalStrength =");
    Serial.println(signalStrength);
    delay(500);
    if(sim7000.attacthService()){                                                              //Open the connection
        Serial.println("Attach service");
    }else{
        Serial.println("Fail to Attach service");
    }
    delay(200);
    if(sim7000.connect(TCP,"www.dfrobot.com",80)){                                             //Start Up TCP or UDP Connection
        Serial.println("Connect OK");
    }else{
        Serial.println("Fail to connect");
    }
    sim7000.send("HEAD / HTTP/1.1\r\nHost:www.dfrobot.com\r\nConnection:keep-alive\r\n\r\n");  //Send Data Through TCP or UDP Connection 
    dataNum=sim7000.recv(buff,300,0);                                                          //Receive data 
    Serial.print("dataNum=");
    Serial.println(dataNum);
    Serial.println(buff);
    uint8_t buf[]={1,2,0,1,2,0};
    sim7000.send(buf,sizeof(buf));                                                             //Send Data with specify the length
    delay(2000);
    if(sim7000.close()){                                                                       //End the connection
        Serial.println("Close connection");
    }else{
        Serial.println("Fail to close connection");
    }
    delay(2000);
    sim7000.turnOFF();                                                                         //Turn OFF SIM7000
}

void loop() {
    delay(1000);
}
  • 程序演示:
DFR0505dem演示.png

使用教程(基于串口AT指令)

准备工作

与上面的教程(基于SIM7000库)保持一致

硬件连接

与上面的教程(基于SIM7000库)保持一致

试验代码

  • NB-IOT SIM7000 Shield可使用串口发送AT指令进行控制,NB-IOT SIM7000 Shield串口默认波特率为115200,需先将波特率设置为38400避免乱码。代码如下:
#include <DFRobot_SIM7000.h>

SoftwareSerial mySerial(8,7);                                  // RX, TX

DFRobot_SIM7000 sim7000;

void setup() {
    Serial.begin(115200);
    sim7000.turnOFF();
    delay(500);
    if(sim7000.turnON()){                                      //Turn ON SIM7000
        Serial.println("Turn NO SIM7000");
    }
    if(sim7000.setBaudRate(38400)){                            //Set baud rate from 115200 to 38400
        Serial.println("Set baud rate:38400");
    }else{
        Serial.println("faile to set baud rate");
    }
    mySerial.begin(38400);
}

void loop() {
  mySerial.listen();
  while(mySerial.available()){
    Serial.write(mySerial.read());
  }
  mySerial.flush();
  while(Serial.available()){
    mySerial.write(Serial.read());
  }
  delay(20);
}

运行程序后在Uno串口上输入AT指令,即可完成AT指令直接控制SIM7000
下载AT指令表

  • 程序演示:
DFR0505AT演示.png


常见问题

还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!


更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖。


更多


DFshopping car1.png [Link DFRobot商城购买链接]

个人工具
名字空间

变换
操作
导航
工具箱