76 4G模组 境外拨号入网注意

1 引言

        最近朋友把国内的设备拿到新加坡了,然后发现原本国内可以使用的设备无法在异国他乡联网,所以就叫我来看看,发现是附网返回状态、入网APN发生了改变导致的。另外,如果在境外使用国产4G模组拨号入网,也需要关注4G模组与本地基站是否能匹配上,如是否支持cat1以及当地基站是否支持模组支持的band(通过硬件手册可以查看到,如下图示)。

2 AT拨号实验

(1)在新加坡使用中国移动卡,AT拨号log如下:

[ Debug]: 1970-01-01 08:04:42, ML302_IO_Send:93: requests :: AT
[ Debug]: 1970-01-01 08:04:43, ML302_AsycnProcess:1501: >RCV:10:AT
OK
 [ Debug]: 1970-01-01 08:04:43, ML302_IO_Send:93: requests :: ATE0
 [ Debug]: 1970-01-01 08:04:43, ML302_AsycnProcess:1501: >RCV:12:ATE0
OK
 [  Info]: 1970-01-01 08:04:43, ML302_IsExist:618: find ml302 device
[ Debug]: 1970-01-01 08:04:46, ML302_IO_Send:93: requests :: AT+CGATT=0 //取消附着网络
 [ Debug]: 1970-01-01 08:04:47, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 1970-01-01 08:04:47, ML302_IO_Send:93: requests :: AT+CGDCONT=1,"IP","cmnet" //设置apn
 [ Debug]: 1970-01-01 08:04:47, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 1970-01-01 08:04:47, ML302_IO_Send:93: requests :: AT+CGATT=1 //附着网络
 [ Debug]: 1970-01-01 08:04:53, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 1970-01-01 08:04:53, ML302_IO_Send:93: requests :: AT+CEREG? //查询网络注册状态
 [ Debug]: 1970-01-01 08:04:54, ML302_AsycnProcess:1501: >RCV:21:
+CEREG: 0,5 //注册成功5表示漫游
OK
 [ Debug]: 1970-01-01 08:04:54, ML302_IO_Send:93: requests :: AT+CEREG?
 [ Debug]: 1970-01-01 08:04:55, ML302_AsycnProcess:1501: >RCV:21:
+CEREG: 0,5
OK

上述发现,查看网络注册状态时,返回的是漫游状态,与境内的不一致。

所以,代码在判断返回值时需要注意。

(2)使用新加坡本地电信卡,AT拨号时需要注意

如果使用AT+CGDCONT=1,"IP","e-ideas" (电信的一个APN接入点),遇到了拨号不成功,

[ Debug]: 2024-07-06 15:42:05, ML302_IO_Send:93: requests :: AT
[ Debug]: 2024-07-06 15:42:06, ML302_AsycnProcess:1501: >RCV:10:AT
OK
 [ Debug]: 2024-07-06 15:42:06, ML302_IO_Send:93: requests :: ATE0
 [ Debug]: 2024-07-06 15:42:06, ML302_AsycnProcess:1501: >RCV:12:ATE0
OK
 [  Info]: 2024-07-06 15:42:06, ML302_IsExist:618: find ml302 device
[ Debug]: 2024-07-06 15:42:09, ML302_IO_Send:93: requests :: AT+CGATT=0
 [ Debug]: 2024-07-06 15:42:10, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 2024-07-06 15:42:10, ML302_IO_Send:93: requests :: AT+CGDCONT=1,"IP","e-ideas" //怀疑是apn名字有-,导致模组设置失败
 [ Debug]: 2024-07-06 15:42:10, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 2024-07-06 15:42:10, ML302_IO_Send:93: requests :: AT+CGATT=1
 [ Debug]: 2024-07-06 15:42:16, ML302_AsycnProcess:1501: >RCV:6:
OK
 [ Debug]: 2024-07-06 15:42:16, ML302_IO_Send:93: requests :: AT+CEREG?
 [ Debug]: 2024-07-06 15:42:17, ML302_AsycnProcess:1501: >RCV:21:
+CEREG: 0,1
OK
 [ Debug]: 2024-07-06 15:42:17, ML302_IO_Send:93: requests :: AT+CGACT=1,1
 [ Debug]: 2024-07-06 15:42:18, ML302_AsycnProcess:1501: >RCV:17:
+CME ERROR: 3 //返回OPERATION_NOT_ALLOWED错误
 [ Debug]: 2024-07-06 15:42:18, ML302_IO_Send:93: requests :: AT+CGACT=1,1
 [ Debug]: 2024-07-06 15:42:19, ML302_AsycnProcess:1501: >RCV:17:
+CME ERROR: 3 //返回OPERATION_NOT_ALLOWED错误

此时,更换另外一个电信的APN接入点,AT+CGDCONT=1,"IP","hicard" (电信另一个APN接入点)就可以了。

上图中,看就名字不同,其它信息一致。使用hicard后就成功了。

3 后记

        最近工作忙,太久没来更新文章了,后期计划把这段时间工作的内容总结一下,主要是Lora无线通信技术入门的心得,希望通过总结让自己更系统的掌握Lora相关技术吧。

over!

内容概要:本文介绍了ENVI Deep Learning V1.0的操作教程,重点讲解了如何利用ENVI软件进行深度学习模型的训练与应用,以实现遥感图像中特定目标(如集装箱)的自动提取。教程涵盖了从数据准备、标签图像创建、模型初始化与训练,到执行分类及结果优化的完整流程,并介绍了精度评价与通过ENVI Modeler实现一键化建模的方法。系统基于TensorFlow框架,采用ENVINet5(U-Net变体)架构,支持通过点、线、面ROI或分类图生成标签数据,适用于多/高光谱影像的单一类别特征提取。; 适合人群:具备遥感图像处理基础,熟悉ENVI软件操作,从事地理信息、测绘、环境监测等相关领域的技术人员或研究人员,尤其是希望将深度学习技术应用于遥感目标识别的初学者与实践者。; 使用场景及目标:①在遥感影像中自动识别和提取特定地物目标(如车辆、建筑、道路、集装箱等);②掌握ENVI环境下深度学习模型的训练流程与关键参数设置(如Patch Size、Epochs、Class Weight等);③通过模型调优与结果反馈提升分类精度,实现高效自动化信息提取。; 阅读建议:建议结合实际遥感项目边学边练,重点关注标签数据制作、模型参数配置与结果后处理环节,充分利用ENVI Modeler进行自动化建模与参数优化,同时注意软硬件环境(特别是NVIDIA GPU)的配置要求以保障训练效率。
<think> 首先,用户的问题是:“我想了解4G模组拨号流程 请问4G模组拨号流程”。用户提供了三个引用:[^1]、[^2]、[^3],这些是关于4G模块的参考信息。 关键点:我需要基于这些引用和系统级指令来回答。系统级指令要求: - 所有行内数学表达式用`$...$`格式。 - 独立公式用`$$...$$`格式并单独成段。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 回答中引用的段落末尾自然地添加引用标识,如[^1]。 用户可见层要求: - 回答结构清晰,帮助用户逐步解决问题。 - 保证回答真实可靠。 用户的问题是关于4G模组拨号流程。回顾引用: - [^1]:讨论了4G拨号上网的正常流程,但强调实际中会有影响因素。 - [^2]:描述了4G模组AT指令联网流程,提供了一个通用流程。 - [^3]:解释了PDP上下文、激活PDP等概念,包括APN,并提到TCP/IP AT命令流程图。 核心是“4G模组拨号流程”。在4G上下文中,“拨号”可能指的是激活数据连接的过程,类似于拨号上网。 从引用中提取关键步骤: - [^2]:提到“一套通用的AT指令操作流程”,包括步骤如检查信号、SIM卡状态、网络注册等。 - [^3]:强调了激活PDP上下文,包括请求网关分配IP地址(PDP地址),需要APN等参数。 典型4G模组拨号流程: 1. **初始化模组**:发送AT命令唤醒模组。 2. **检查SIM卡状态**:确保SIM卡正常。 3. **检查网络信号**:获取信号强度等信息。 4. **注册网络**:模组注册到移动网络。 5. **激活PDP上下文**:这是关键步骤,发送AT命令激活数据连接,需要提供APN。 6. **获取IP地址**:一旦激活,模组获得IP地址。 7. **建立TCP/IP连接**:如果需要,进一步建立连接。 在引用[^3]中,明确指出激活PDP是分配IP地址的过程。 结构化回答: - **介绍**:简要解释什么是4G模组拨号流程。 - **步骤详解**:基于引用,逐步描述流程。 - **注意事项**:提及影响因素,如引用[^1]所说。 - **生成相关问题**:在结尾生成相关问题。 确保使用引用: - 在描述步骤时,自然地添加引用标识,如[^1]、[^2]、[^3]。 数学表达式:用户问题中没有涉及数学,但系统指令要求所有行内数学用`$...$`。如果有任何变量或方程,比如信号强度,要用格式。但如果没有,就不用强迫使用。问题主要是流程描述,可能不需要数学表达式。如果有,比如QoS参数,可以用。 例如,在APN描述中,没有数学表达式。保持自然。 生成相关问题:在结尾添加相关问题,如用户可见层示例。 相关问题应基于主题,如: 1. 如何选择APN? 2. 常见错误有哪些? 3. 优化拨号流程的方法? 4. PDP上下文的作用? 回答结构: 1. 开头:确认问题。 2. 主体:逐步解释流程。 3. 结尾:总结并生成相关问题。 </think> 以下是针对您查询的“4G模组拨号流程”的详细解答。4G模组拨号流程是指模组通过AT指令激活数据连接的过程,主要涉及初始化模组、注册网络、激活PDP上下文(分配IP地址)等步骤,最终实现互联网接入。流程基于通用的AT指令操作,参考了引用资料[^2]和[^3]的核心描述,其中引用[^2]强调了“核心流程步骤”的通用性,而引用[^3]详细解释了PDP上下文激活机制。实际应用中,流程可能因运营商、基站状态等因素而受影响(参考引用[^1]),但核心步骤是相似的。下面我将逐步分解流程,确保结构清晰、真实可靠。 ### 4G模组拨号流程概述 4G模组拨号的核心目标是建立数据连接,整个过程通过发送一组AT指令完成。AT指令是基于文本的命令集,用于控制模组行为。主要步骤包括: 1. **模组初始化**:唤醒模组并检查状态。 2. **SIM卡和网络准备**:确保SIM卡有效并注册到移动网络。 3. **激活PDP上下文**:请求网关分配IP地址(PDP地址),这是拨号的关键环节【引用[^3]】。 4. **数据连接建立**:获取IP地址后,可进一步建立TCP/IP连接。 整个过程通常耗时几秒到几十秒,受网络条件影响【引用[^1]】。 ### 逐步流程详解 以下流程基于引用[^2]和[^3]的通用步骤,以典型4G模组(如Quectel EC200x)为例。每步包括对应的AT指令实例(简化格式),便于理解。LaTeX语法用于行内表达式(如信号强度$dBm$)。 1. **模组初始化和状态检查** - 发送基础AT指令唤醒模组并确认响应: - `AT` → 测试模组通讯是否正常(响应应为`OK`)。 - `AT+CFUN=1` → 设置全功能模式(激活射频模块)。 - 检查硬件状态: - `AT+CPIN?` → 查询SIM卡状态(响应如`+CPIN: READY`表示SIM卡就绪)。 - `AT+CSQ` → 获取信号强度(响应如`+CSQ: 20,99`,信号强度单位为$dBm$,值越大越好)。 2. **网络注册和附着** - 模组尝试注册到运营商网络: - `AT+CREG?` → 查询网络注册状态(响应如`+CREG: 0,1`表示已注册本地网络)。 - `AT+CGATT=1` → 附着到分组数据网络(响应`OK`表示成功附着【引用[^3]】)。 - 等待网络连接:可能需要重试命令,直到状态稳定(网络延迟可能影响该步骤)。 3. **激活PDP上下文(核心步骤)** - PDP上下文是动态分配IP地址和数据连接参数的结构【引用[^3]】,包括APN(接入点名称)、QoS(服务质量)等。激活过程如下: - 设置APN:APN指定外部数据网络类型(如Internet或企业内网)。发送命令指定APN: `AT+CGDCONT=1,"IP","<APN值>"` → 配置上下文1的APN(例如`AT+CGDCONT=1,"IP","cmnet"`为中国移动)。 - 激活PDP上下文:请求网关分配IP地址(PDP地址)。 `AT+QIACT=1` → 激活上下文1(响应`+QIACT: 1,<IP地址>,<子网掩码>,<网关>`)。 - 验证激活:`AT+QIACT?` → 查询PDP状态(响应如`+QIACT: 1,1,<IP地址>`表示激活成功)。 4. **建立数据连接并测试** - 一旦获得IP地址(PDP地址),模组便可连接外部网络: - `AT+QISTATE=1,1` → 查询TCP/IP连接状态(可选,用于故障排查)。 - 测试数据连通性:发送Ping命令(如`AT+QPING=1,"www.baidu.com"`)或建立TCP连接(例如`AT+QIOPEN=1,1,"TCP","服务器IP",端口`)。 - 拨号完成:模组进入数据就绪状态,可传输数据。 ### 流程示意图(简化) 基于引用[^3]的TCP/IP AT命令流程图,流程可归纳为: ``` 初始化 → SIM卡检查 → 网络注册 → 设置APN → 激活PDP上下文 → 获取IP → 数据连接 ``` - **关键点**:激活PDP上下文是核心,相当于“开通工单”,包含IP地址、APN和QoS等参数【引用[^3]】。 - **耗时**:一般5-15秒,但受基站信号、运营商策略影响(如引用[^1]所述,需“保持微笑,积极面对”)。 ### 注意事项 - **影响因素**:实际流程可能因模组品牌(如华为 vs. Quectel)、运营商APN差异或网络拥塞而失败。例如,信号弱时`AT+CSQ`返回低值(如$<10dBm$),需要重试命令【引用[^1]】。 - **通用性**:尽管不同模组AT指令格式不同(如EC200x使用`+QIACT`,而SIMCOM模组可能用`+CIPSTART`),但步骤逻辑一致【引用[^2]】。 - **调试建议**:使用串口工具发送AT指令,并监控响应日志;失败时可检查SIM卡、APN设置或重启模组。 ### 相关问题 基于此主题,您可以进一步探索: 1. 如何选择合适的APN值以适配不同运营商? 2. 4G模组拨号失败时,有哪些常见错误代码及其解决方法? 3. PDP上下文中的QoS参数如何影响数据传输性能? 4. 有哪些优化方法能加速4G模组拨号流程? 如果您有具体模组型号或场景细节,我可以提供更针对性的建议!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值