Pico-SIM868-GSM/GPRS/GNSS
| ||||||||||||||||||||
| ||||||||||||||||||||
说明
产品介绍
产品概述
本产品是一款具有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 x 1 (本产品配置,须焊接上直排座)
- Raspberry Pi Pico x 1 (须自备)
- SIM卡 x 1 (须自备,开通了2G功能,国内建议用移动4G或2G卡)
- Micro USB线 x 1 (须自备)
硬件实物连接图
说明:
如果需要用到打电话功能,还须接上喇叭。 使用时,建议接上锂电池:当不额外接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及对应的端口
- 5.文件->打开->main.py,点击运行即可,如下图所示:
树莓派环境下的使用
- 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端口
如图所示:
如果你当前的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
运行现象
GPS定位
实例说明
本示例主要演示GPS定位相关测试。进行该实例前,必须把GPS天线的接收头放到室外(或窗口,可以看到天空的地方),另外阴雨天气无法获取到GPS定位。
详细的AT指令集请见:File:SIM868 Series_GNSS_Application Note_V1.02.pdf
运行现象
打电话测试
实例说明
本示例主要演示打电话相关测试。模组上板载了一个麦克风,电话打通后,可以直接进行对话,另外还需要接上喇叭,才能听到声音。
详细的AT指令集请见:File:SIM800 Series_AT Command Manual_V1.11.pdf
运行现象
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客户端运行截图:
- 服务器端收到数据
HTTP
功能框图
在本实例中,Raspberry Pico通过NB-IoT连接上互联网,通过HTTP GET获取到 获取到天气网站的天气信息,同时把 Pico 上的温度信息 通过HTTP POST 推送到服务器上。
用户可以通过网页访问,查看实时上传的数据。大致的软件示意图如下所示:
服务器网页部署
以 http://pico.wiki/esp-chart.php 为例。其软件框图大致如下图所示:
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部分:
- 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")
- 更多关于SIM868模组HTTP应用文档内容,请见:SIM800_Series_IP_Application_Note_V1.05.pdf
运行现象
Pico在Thonny客户端运行截图:
服务器端网页访问结果:http://pico.wiki/esp-chart.php
C
环境搭建
【C/C++】 Windows教程1——环境搭建
【C/C++】 Windows教程2——创建工程
例程使用
1. 打开对应C程序文件夹
2. 通过Vs coed打开,选择对应编译工具跟需要运行的例程(将不用的注释掉,用的解除注释,单次只能运行一个)
3. 点击编译按键进行编译
4.按住Pico的BOOT按键后上电,可使Pico进入磁盘模式,并将build文件下的UF2文件拖拽到RPI-RP2盘符中
5.此时Pico开始运行对应程序,可以通过串口助手查看运行状态
资料
配套资料
产品文档
示例程序
相关软件
数据手册
- File:SIM868_Series_Hardware_Design_V1.07.pdf
- File:SIM800 Series_AT Command Manual_V1.11.pdf
- File:SIM800 Series_TCPIP_Application Note_V1.03.pdf
- File:SIM800 Series_MQTT_Application Note_V1.03.pdf
- File:SIM800 Series_Bluetooth_Application Note_V1.09.pdf
- File:SIM868 Series_GNSS_Application Note_V1.02.pdf
- File:SIM800 Series_Email_Application Note_V1.02.pdf
- File:SIM800 Series_GSM Location_Application Note_V1.03.pdf
- File:SIM800 Series_IP_Application Note_V1.05.pdf
- File:SIM800 Series_MMS_Application Note_V1.02.pdf
- File:SIM800 Series_NTP_Application Note_V1.03.pdf
- File:SIM800 Series_PCM_Application Note_V1.02.pdf
- File:SIM800 Series_SSL_Application Note_V1.05.pdf
FAQ