Pico-SIM868-GSM/GPRS/GNSS

来自Waveshare Wiki
跳转至: 导航搜索
Pico-SIM868-GSM/GPRS/GNSS
{{{name2}}}
{{{name3}}}
功能简介
特性 Pico GSM/GPRS/GNSS扩展
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
' 无特性,不解释
接口 UART

说明

产品介绍

产品概述

本产品是一款具有GSM(全球移动通信系统)、GPRS(通用分组无线服务)、GNSS(全球导航卫星系统)和Bluetooth(蓝牙)功能的树莓派Pico扩展板。我,体积小巧、功耗低、功能强大!带上我,你的树莓派Pico将可以轻松实现打电话,发短信,2G上网,全球定位,蓝牙数据传输等功能。

产品特性

  • 板载 Raspberry Pi Pico 接口,适用于 Raspberry Pi Pico 系列主板
  • UART 接口通信,串口 AT 指令控制
  • 支持短信、电话、GPRS、DTMF、HTTP、FTP、彩信、邮件等功能
  • 支持蓝牙3.0,可进行蓝牙数据传输
  • 支持RTC实时时钟,带可充电锂电池
  • 板载 3.7V 锂电池接口及充电电路,可外接可充电锂电池实现外部供电,支持边充边放
  • 支持麦克风和喇叭接口,可用于打电话
  • 板载 2 个 LED 指示灯,方便查看模块运行状态
  • 板载 nano SIM 卡槽,国内支持移动的2G网络*

*:国内电信和联通已2G退网,目前只支持使用移动卡进行2G上网、打电话和短信收发。

产品参数

产品参数

产品型号 SIM868 SIM7080G SIM7020C / SIM7020E
工作频段
NB-IoT 不支持 B1/B2/B3/B4/B5/B8/B12/
B13/B18/B19/B20/B25/B26
/B28/B66/B71/B85
SIM7020C:
LTE-FDD:B1/B3/B5/B8
SIM7020E:
LTE-FDD:B1/B3/B5/B8/B20/B28
Cat-M 不支持 B1/B2/B3/B4/B5/B8/B12/B13
/B14/B18/B19/B20/B25/
B26/B27/B28/B66/B85
不支持
2G GSM 850/EGSM 900/DCS
1800/PCS 1900 MHz
不支持 不支持
GNSS GPS, GLONASS, BeiDou GPS, GLONASS, BeiDou, Galileo 不支持
适用地区 大部分国家和地区 全球通用 SIM7020C:中国
SIM7020E:欧洲/非洲/澳洲/东南亚
数据传输
NB-IoT(Kbps) - 136(DL)/150(UL) 26.15(DL)/62.5(UL)
Cat-M(Kbps) - 589(DL)/1119(UL) -
2G(Kbps) 85.6(DL)/85.6(UL) - -
其他参数
通信协议 TCP/UDP/HTTP/SSL/FTP
/POP3/SMTP/MQTT等
TCP/UDP/HTTP/HTTPS/TLS/DTLS/PING/LWM2M/COAP/MQTT 等
供电方式 通过锂电池接口或 Raspberry Pi Pico 的 USB 口
锂电池接口 3.7V ~ 4.2V
逻辑电平 3.3V
单模组耗流 空闲模式:12mA 空闲模式:10mA 空闲模式:5.6mA
休眠模式:0.65mA 休眠模式:1.2mA 休眠模式:0.4mA
Backup 模式:8uA PSM 模式:3.2uA PSM 模式:3.4uA
音频输入输出 板载麦克风,带喇叭输出 不支持
指示灯 NET:网络指示灯
Charge:充电指示灯
开关 锂电池和USB供电开关 锂电池供电开关
SIM 卡 2G卡,国内仅支持移动卡
(1.8V / 3V)
NB-IoT / Cat-M卡 (仅支持 1.8V) NB卡(1.8V / 3V)
天线接口 LTE、GNSS、BT LTE、GNSS LTE
产品尺寸 76.15 × 24.00mm 73.5 × 24.00mm


接口定义

Pico-SIM868-GSM-GPRS-GNSS-details-inter.jpg

产品尺寸

Pico-SIM868-GSM-GPRS-GNSS-details-size.jpg

硬件连接

准备的材料

  • Pico-SIM868-GSM/GPRS/GNSS x 1 (本产品配置,须焊接上直排座)
  • Raspberry Pi Pico x 1 (须自备)
  • SIM卡 x 1 (须自备,开通了2G功能,国内建议用移动4G或2G卡)
  • Micro USB线 x 1 (须自备)

硬件实物连接图

Pico-SIM868-GSM-GPRS-GNSS-5.jpg

说明:

如果需要用到打电话功能,还须接上喇叭。
使用时,建议接上锂电池:当不额外接USB供电的情况,开关切到USB则为关断锂电池供电,切到VBAT则使用锂电池供电;当接上USB供电时,USB即可给锂电池充电,也可用来给Pico供电 或 烧写固件及程序。

简单使用

Python例程

windows环境下的使用

  • 1.按住Pico板上的BOOTSET按键,将pico通过Micro USB线接到电脑的USB接口,待电脑识别出一个可移动硬盘(RPI-RP2)后,松开按键。
  • 2.将python目录中pico_micropython_xxxxxxxx.uf2 文件复制到识别的可移动盘(RPI-RP2)中
  • 3.打开Thonny IDE(注意:要使用最新版本的Thonny,否则是没有Pico的支持包的,当前Windows下的最新版本为v3.3.3)
  • 4.点击工具->设置->解释器,如图所示选择Pico及对应的端口

Pico-lcd-0.96-img-config.png

  • 5.文件->打开->main.py,点击运行即可,如下图所示:

Pico-lcd-0.96-img-run.png
本例程提供了一个简单的程序...

树莓派环境下的使用

  • 1.刷固件的过程与Windows上一样,你可以选择在PC或者树莓派上将pico_micropython_xxxxxxxx.uf2 文件拷入pico中。
  • 2.在树莓派山打开Thonny IDE (点击树莓logo -> Programming -> Thonny Python IDE ),你可以在Help->About Thonny查看版本信息

以确保你的版本是有Pico支持包的,同样你可以点击Tools -> Options... -> Interpreter选择MicroPython(Raspberry Pi Pico 和ttyACM0端口
如图所示:
Pico-lcd-0.96-img-config2.png
如果你当前的Thonny版本没有pico支持包,输入以下指令来更新Thonny IDE

sudo apt upgrade thonny

3.点击File->Open...->python/main.py,运行脚本即可

AT Test

实例说明

该例程主要是方便用户可以通过Thony软件,直接测试验证模组的AT指令收发。主程序首先会直接给模组开机,然后检测网络情况,之后会循环检测用户输入的AT指令,帮通过串口发送给模组,然后把模组的AT指令返回回传到Pico的串口打印出来。
详细的AT指令集请见:File:SIM800 Series_AT Command Manual_V1.11.pdf

运行现象

SIM868 AT Test.png

GPS定位

实例说明

本示例主要演示GPS定位相关测试。进行该实例前,必须把GPS天线的接收头放到室外(或窗口,可以看到天空的地方),另外阴雨天气无法获取到GPS定位。
详细的AT指令集请见:File:SIM868 Series_GNSS_Application Note_V1.02.pdf

运行现象

SIM868 PICO GPS.png

打电话测试

实例说明

本示例主要演示打电话相关测试。模组上板载了一个麦克风,电话打通后,可以直接进行对话,另外还需要接上喇叭,才能听到声音。
详细的AT指令集请见:File:SIM800 Series_AT Command Manual_V1.11.pdf

运行现象

SIM868 Phone call.png

TCP

在本实例中,Raspberry Pico通过NB-IoT连接上互联网,通过TCP和服务器进行数据的传输,需要用到获取到公网IP的服务器(本例用的是阿里云服务器):

  • 关键指令说明
AT+CSQ 查询网络信号质量,其中第一个参数为网络信号质量最大为 31,此数值越大说明网络信号越强
AT+CREG? 查询网络注册情况,其中第二个参数为 1 或 5 则说明已经注册成功
AT+CGATT? 查询模块是否附着 GPRS 网络
AT+CSTT="CMNET"  根据实际网络设置 APN,这里以移动为例
AT+CIICR 激活移动场景
AT+CIFSR 获得本地 IP 地址
AT+CIPSTART="TCP","113.81.232.4",5000   建立 TCP/IP 连接,如下图所示
  • 下载Python例程:示例程序 ,TCP部分代码如下:
def tcp(sms_info="qixi"):
    send_at('AT+CIPSHUT', 'OK')
    send_at("AT+CSQ", "OK")
    send_at("AT+CREG?", "OK")
    send_at('AT+CGATT?', 'OK')
    send_at('AT+CSTT=\"CMNET\"', 'OK',5)
    send_at('AT+CIICR', 'OK')
    send_at('AT+CIFSR', 'OK')
    send_at('AT+CIPSTART=\"TCP\",\"120.79.2.0\",\"2317\"', 'OK')
    send_at('AT+CIPSEND', ">",5)
    uart.write(bytearray(sms_info))
    uart.write(bytearray(hexstr_to_str("1A")))

运行现象

  • Pico在Thonny客户端运行截图:

800x

  • 服务器端收到数据

PICO-SIM868 ALY NC -l.png


HTTP

功能框图

在本实例中,Raspberry Pico通过NB-IoT连接上互联网,通过HTTP GET获取到 获取到天气网站的天气信息,同时把 Pico 上的温度信息 通过HTTP POST 推送到服务器上。
用户可以通过网页访问,查看实时上传的数据。大致的软件示意图如下所示:
Pico-SIM7020-HTTP-demo-diagram.png

服务器网页部署

http://pico.wiki/esp-chart.php 为例。其软件框图大致如下图所示:
Pico-SIM7020-HTTP-Demo-2.png
1、服务器搭建php,mysql等环境,创建数据库文件,比如:

  • 数据库:example_esp_data
  • 密码:your_password
  • 用户名:your_username
  • 创建数据库表:
CREATE TABLE Sensor (
   id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
   value1 VARCHAR(10),
   value2 VARCHAR(10),
   value3 VARCHAR(10),
   reading_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP)

2、服务器端的php示例文件,有post-data.php 和 esp-chart.php

  • post-data.php:HTTP POST的API接口,SIM7080G模块可以通过调用此API接口,往服务器POST数据。
  • esp-chart.php:用户端访问的网页,可通过此页面获取到SIM7080G上传的最新数据,并通过图表展示出来。

Pico端软件设置

下载Python例程:示例程序 ,HTTP部分代码如下:

  • HTTP GET部分:
# HTTP GET TEST
def http_get():
   send_at('AT+HTTPINIT', 'OK')
   send_at('AT+HTTPPARA=\"CID\",1', 'OK')
   send_at('AT+HTTPPARA=\"URL\",\"'+http_get_server[0]+http_get_server[1]+'\"', 'OK')
   if send_at('AT+HTTPACTION=0', '200', 5000):
       uart.write(bytearray(b'AT+HTTPREAD\r\n'))
       rec_buff = wait_resp_info(8000)
       print("resp is :", rec_buff.decode())
   else:
       print("Get HTTP failed, please check and try again\n")
   send_at('AT+HTTPTERM', 'OK')
  • HTTP POST部分:
  1. HTTP POST TEST
def http_post():
   send_at('AT+HTTPINIT', 'OK')
   send_at('AT+HTTPPARA=\"CID\",1', 'OK')
   send_at('AT+HTTPPARA=\"URL\",\"'+http_post_server[0]+http_post_server[1]+'\"', 'OK')
   send_at('AT+HTTPPARA=\"CONTENT\",\"' + http_content_type + '\"', 'OK')
   if send_at('AT+HTTPDATA=62,8000', 'DOWNLOAD', 3000):
       uart.write(bytearray(http_post_tmp))
       utime.sleep(5)
       rec_buff = wait_resp_info()
       if 'OK' in rec_buff.decode():
           print("UART data is read!\n")
       if send_at('AT+HTTPACTION=1', '200', 8000):
           print("POST successfully!\n")
       else:
           print("POST failed\n")
       send_at('AT+HTTPTERM', 'OK')
   else:
       print("HTTP Post failed,please try again!\n")

运行现象

Pico在Thonny客户端运行截图:


服务器端网页访问结果:http://pico.wiki/esp-chart.php

SIM868 HTTP POST Result mark.png

C

环境搭建

【C/C++】 Windows教程1——环境搭建
【C/C++】 Windows教程2——创建工程

例程使用

1. 打开对应C程序文件夹
Pico SIM868 2.jpg
2. 通过Vs coed打开,选择对应编译工具跟需要运行的例程(将不用的注释掉,用的解除注释,单次只能运行一个)
Pico SIM868 4.jpg

Pico SIM868 1.jpg
3. 点击编译按键进行编译
Pico-Eval-Board-win-4.jpg
4.按住Pico的BOOT按键后上电,可使Pico进入磁盘模式,并将build文件下的UF2文件拖拽到RPI-RP2盘符中
Pico SIM868 3.jpg
5.此时Pico开始运行对应程序,可以通过串口助手查看运行状态

FAQ


技术支持

联系人:黄工
EMAIL:3005423122@qq.com
电话:0755-83040712
QQ:3005763927
微信:扫下方二维码添加
Hkx-wx.jpg

说明:进行售后服务前,请准备好客户信息(定货单位、定货人等),以供验证