|
在本篇文章中,我们将学习如何使用A9G低功耗GPRS+GPS模块和Arduino开发板实现互联网GPRS连接。我们将使用AT命令将A9G模块连接到互联网。如之前的帖子所述,A9G是用于物联网应用的低功耗GPRS+GPS 模块,因此我们将使用该模块进行简单的物联网项目。
在没有WIFI的地方,蜂窝物联网是互联网连接的首选。我们将DHT11湿度温度传感器与Maduino Zero A9G开发板板连接,然后,将读取温度和湿度数据上传到Thingspeak服务器。
用于GPRS互联网连接的 AT 命令 以下是通过TCP协议进行GPRS连接和数据传输所需的几个AT命令列表。
该命令用于检查我们是否已注册到网络。如果它回应1,那么这意味着我们已注册网络并且可以继续操作。
此命令类似于CREG命令。如果其响应为 1,则我们已连接到网络。
该命令用于检查IP是否连接。如果它的响应是“INITIAL”,则表示我们已连接。如果它显示其他内容,则说明存在问题。
此命令用于连接到互联网。在此命令中,我们还需要指定APN和IP,格式为 AT+CGDCONT=1, “IP”, “www”
此命令用于向服务器链接发送HTTP获取请求。其格式为 AT+HTTPGET=”服务器链接”。
用于选择TCP/IP应用模式。 ‘0’是非透明模式,‘1’是透明模式。
该命令检查数据传输的状态。它将返回发送的数据量、服务器确认的数据和服务器未确认的数据。
从DHT11传感器获取温度湿度数据 在使用A9G GPRS互联网连接将湿度温度传感器数据发送到Thingspeak服务器之前,我们需要了解如何从DHT11传感器检索数据并将其显示在OLED显示器上。
Maduino A9G开发板有一个用于0.96寸I2C OLED显示屏的插座,我们可以直接连接OLED显示器。DHT11传感器有3个引脚:VCC、GND和Signal。将VCC连接到3.3V,将GND连接到GND,并将Signal连接到Maduino Zero A9G开发板的D3。
现在硬件设置完成后,您可以将以下库添加到Arduino库文件夹。 1. Adafruit GFX库:https://github.com/adafruit/Adafruit-GFX-Library 2. SSD130 OLED库:https://github.com/adafruit/Adafruit_SSD1306 3. DHT11库:https://github.com/adafruit/DHT-sensor-library
以下是读取DHT11传感器的完整代码,将代码上传到Maduino Zero开发板:
dht11.rar
(1.75 KB, 下载次数: 8)
。
上传代码后,现在您可以在OLED显示屏上看到DHT11的温湿度数据。
设置Thingspeak服务器 现在我们需要设置Thingspeak帐户。要设置Thingspeak,请按照以下步骤操作: 第1步:访问 https://thingspeak.com/ 并通过填写详细信息创建您的帐户。
第2步:单击“Channel”创建一个新频道并填写以下详细信息,如下图所示。
第3步:点击API Key,你会看到“Write API Key”。复制 API 密钥。这非常重要,在代码部分中将需要它。
第4步:单击“Private View”并根据需要自定义显示窗口。
以上就是 Thingspeak 设置部分的全部内容。现在让我们转到编程部分。
使用蜂窝物联网将DHT11数据发送到Thingspeak 现在让我们使用上面讨论的AT命令将DHT11温湿度数据发送到Thingspeak服务器。 - //**********api write key******************
- const String apiKey="J64BYZU52VGHMF2Q";
复制代码在上面的代码中,更改API密钥。 - sendData("AT+CGDCONT=1,"IP","cmwap"", 3000, DEBUG);
复制代码在代码中更改APN。每个蜂窝网络提供商都有自己的 APN。例如,中国移动的APN是“cmwap”。 - //sendData("AT+CIPSTART="TCP","www.yiboard.com",80", 2000, DEBUG);//
复制代码此代码用于将数据发送到Thingspeak服务器。如果您想使用TCP连接将数据发送到任何服务器,请取消注释此行并删除Thinspeak服务器代码。
以下是用过A9G实现GPRS互联网连接的完整代码:
a9g internet.rar
(1.54 KB, 下载次数: 10)
将代码上传到Maduino Zero开发板后,打开串口监控器,它会自动开始显示执行的AT命令操作消息。
现在打开Thingspeak服务器的Private View试图,观察记录的湿度温度数据。
以上就是使用A9G模块实现互联网GPRS连接的全部内容。如果有任何疑问,请随时在本帖下面回复。
|