徒增成本,还是有备无患?说说4G模组SIM双卡切换

news2024/9/19 8:13:49

初学开发的小伙伴提出疑问:
手机双卡可以理解,人情世故各种缘由……
物联网设备有必要双卡吗,会不会太浪费?

实际应用中,双卡可不是徒增成本的摆设,而是有备无患的必需。

在使用4G模组双卡功能的场景下,切换卡槽更是一个关键环节——关乎设备在不同网络环境下的适应性和持续在线的能力。

一、不同场景双卡应用

这里以智能安防系统、车载终端设备、工业自动化控制的典型场景为例,简要介绍下双卡应用方式。

智能安防系统

场景概述:

智能安防系统通常需要保持持续在线以监控现场情况,并及时向用户发送警报。

在某些地区,不同运营商的网络覆盖情况可能存在差异,因此使用双卡切换功能可以确保系统的稳定性和可靠性。

应用方式:

系统可以内置合宙4G模组,并设计两个SIM卡槽。通过软件程序定期检测两张SIM卡的信号强度,自动选择信号更强的卡进行数据传输。

当一张卡信号较弱或无法联网时,系统能够自动切换到另一张卡,确保监控数据的连续传输。

车载终端设备

场景概述:

车载终端设备如GPS定位器、车载行车记录仪等,需要在车辆行驶过程中保持与远程服务器的通信。

不同地区的运营商网络覆盖可能存在差异,双卡切换功能可以确保设备在不同地区的持续在线。

应用方式:

车载设备内置合宙4G模组,并根据车辆行驶路线和目的地提前插入两张不同运营商的SIM卡。设备可以通过软件程序自动检测并切换至信号更强的SIM卡,以确保定位信息的准确性和实时性。

同时,设备还可以设置流量使用策略,如优先使用某张卡的流量,以节省成本。

工业自动化控制

场景概述:

工业自动化控制系统需要实时采集生产数据,并远程传输至监控中心。

在某些工业环境中,由于建筑物遮挡、电磁干扰等因素,单一运营商的网络可能无法满足需求。

应用方式:

工业自动化设备内置合宙4G模组,并设计双卡槽以支持双卡切换功能。系统可以根据实时网络状况自动选择最优的SIM卡进行数据传输,确保生产数据的及时性和准确性。

同时,设备还可以设置异常报警功能,当检测到网络异常或数据传输中断时,及时通知维护人员进行处理。

二、SIM卡槽切换操作

合宙的大部分模组型号都有两路SIM卡引脚,支持双卡单待——即同一时间只能使用其中一个SIM通道。

接下来,我们以合宙4G-Cat.1模组经典型号Air780E为例进行说明。

Air780E最新资料下载:

www.air780e.cn

图片

SIM卡接口管脚定义及参考推荐电路如下图所示,详见《合宙Air780E硬件设计手册》第34/35页。

图片

图片

在同时使用不同运营商SIM卡的场景,我们可以通过相应的软件接口或者指令切换SIM卡通道。

接下来,我们从AT和LuatOS两种开发方式分别进行讲解:

AT开发方式

AT开发主要围绕AT+SIMCROSS指令做SIM卡通道的调整切换,其中又分为手动切换和自动切换。 

1. 手动切换:

通过AT+SIMCROSS=0或者1选择,0是SIM0,1是SIM1。注意在切换时需要发送AT+CFUN=0进入飞行模式再切换,否则指令会返回ERROR错误码,指令不生效。

切换完成后发送AT+SIMCROSS?查询当前SIM卡通道是否正确,然后退出飞行模式即可。

图片

2. 自动切换:

当你想不管是哪个卡槽,要能识别到卡,自动选择卡槽,那么就使用AT*SIMAUTO=1,打开SIM卡自动切换功能,该指令需要在配置后重启才能生效。

图片

LuatOS开发方式

LuatOS开发也分为手动切换和自动切换,此时我们要使用mobile.simid接口。 

1. 手动切换:

使用mobile.simid(0)或者mobiile.simid(1),选择固定使用哪一路SIM卡通道。

在切换后可以通过mobile.simid()的返回值,查询SIM通道id。

图片

2. 自动切换:

使用moile.simid(2),该接口则需要在开机时执行或者进入飞行模式下执行后再退出,同时会占用4个IO(gpio4/5/6/23)。

图片

今天的内容就分享到这里了~

本文同样适用于以下型号:

Air780EX/Air780EG/Air780EP/Air780EPS…

如果你对双卡切换操作还有不清楚的地方,欢迎留言或联络合宙技术支持。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2145855.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

2024年数学建模比赛题目及解题代码

目录 一、引言 1. 1竞赛背景介绍 1.1.1数学建模竞赛概述 1.1.2生产过程决策问题在竞赛中的重要性 1.2 解题前准备 1.2.2 工具与资源准备 1.2.3 心态调整与策略规划 二、问题理解与分析 三、模型构建与求解 3.1 模型选择与设计 3.1.1 根据问题特性选择合适的数学模型类…

每日学习一个数据结构-红黑树

文章目录 什么是红黑树?示意图红黑树的特点红黑树的节点结构插入和删除操作旋转操作重新着色 红黑树的应用 树的构造过程插入新节点自平衡调整策略 示例 查询过程 什么是红黑树? 红黑树(Red-Black Tree)是一种自平衡的二叉查找树…

关于嵌入式硬件需要了解的基础知识

成长路上不孤单😊😊😊😊😊😊 【14后😊///C爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于嵌入式硬件基础知识的相关内容&#xff…

TCP: Textual-based Class-aware Prompt tuning for Visual-Language Model

文章汇总 存在的问题 原文:具有图像特定知识的图像条件提示符号在提升类嵌入分布方面的能力较差。 个人理解:单纯把"a photo of {class}"这种提示模版作为输入是不利于text encoder学习的 动机 在可学习的提示和每一类的文本知识之间建立…

2024短剧系统开发,付费短剧小程序app源码教程,分销功能讲解搭建上线

短剧系统技术栈 前端:vue3uniapp 后端: php 数据库:mysql 服务器环境: centos7.6 宝塔 php7.4 MySQL5.7 一、短剧系统功能 短剧用户端: 小程序、抖音小程序、快手小程序、APP、 z付宝小程序 系统用户端详细功能&…

Java创建教程!(*  ̄3)(ε ̄ *)

Java 构造函数 Java面向对象设计 - Java构造函数 构造函数是用于在对象创建后立即初始化对象的代码块。 构造函数的结构看起来类似于一个方法。 声明构造函数 构造函数声明的一般语法是 <Modifiers> <Constructor Name>(<parameters list>) throws <…

安卓14剖析SystemUI的ShadeLogger/LogBuffer日志动态控制输出dumpsy机制

背景&#xff1a; 看SystemUI的锁屏相关代码时候发现SystemUI有一个日志打印相关的方法调用&#xff0c;相比于常规的Log.i直接可以logcat查看方式还是比较新颖。 具体日志打印代码如下&#xff1a; 下面就来介绍一下这个ShadeLogger到底是如何打印的。 分析源码&#xff1…

scanf()函数的介绍及基础用法

目录 scanf&#xff08;&#xff09;函数的介绍及基础用法 一&#xff1a;头文件 二&#xff1a;一般用法 三&#xff1a;返回值 1. 正整数的情况&#xff1a; 2. 0 的情况&#xff1a; 3. EOF的情况&#xff1a; 四&#xff1a;说明 scanf&#xff08;&#xff09;函数…

CCF202006_1

问题描述 试题编号&#xff1a;202006-1试题名称&#xff1a;线性分类器时间限制&#xff1a;1.0s内存限制&#xff1a;512.0MB问题描述&#xff1a; 题解&#xff1a; #include<bits/stdc.h>using namespace std; int n, m;struct Node {int x, y;char ch; }node[1010…

9.16日常记录

1.LRU算法 核心思想:LRU算法&#xff08;Least Recently Used&#xff09;是一种常用的缓存淘汰策略&#xff0c;它的核心思想是“如果数据最近被访问过&#xff0c;那么将来被访问的几率也更高”。LRU算法主要用于内存管理和缓存系统。当内存或缓存空间已满&#xff0c;需要腾…

【工具变量】气候适应型试点城市DID(2005-2022年)

数据来源&#xff1a;本数据来源于中国ZF网发布的《关于深化气候适应型城市建设试点的通知》 时间跨度&#xff1a;2005-2022年数据简介&#xff1a;适应型试点城市是指在应对气候变化、提高城市适应能力方面进行先行先试的城市。根据中国ZF网发布的《关于深化气候适应型城市建…

在 Stable Diffusion 1.5 中 Lora, Dreambooth, Textual Inversion的详解指北

Lora, Dreambooth and Textual Inversion 说明 您是否想象过您可爱的宠物与埃菲尔铁塔合影的画面&#xff0c;或者想象过如何生成一张带有您朋友面孔的人工智能图像&#xff1f; 是的&#xff0c;通过稳定扩散技术的微调&#xff0c;这完全是可能的&#xff01; 创建这些场景…

NISP 一级 | 7.2 信息安全风险管理

关注这个证书的其他相关笔记&#xff1a;NISP 一级 —— 考证笔记合集-CSDN博客 0x01&#xff1a;信息安全风险 信息系统不可能达到绝对安全&#xff0c;但可以通过安全风险&#xff08;以下简称“风险”&#xff09;控制来实现符合个人或单位目标的一定程度的安全。信息安全管…

xxl-job、Quartz、power-job、elastic-job对比选型

一、框架对比 1. Quartz 优点&#xff1a;稳定性和可扩展性好&#xff0c;适用于企业级应用&#xff1b;调度功能丰富&#xff0c;满足多种需求。 缺点&#xff1a;本身不提供原生的分布式支持&#xff0c;需要通过扩展或与其他组件结合来实现分布式任务调度&#xff1b;调度…

树莓派驱动之spi回环测试

开启spi sudo raspi-config选择Interfacing options,选择spi打开 lsmod可以看到spi_bcm2835 短接MISO和MOSI 编写回环代码spitest.c #include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <fcntl.h> #include <string.h>…

第六部分:1---进程间通信,匿名管道

目录 进程间通信 进程间通信的目的&#xff1a; 进程间通信的本质&#xff1a; 管道&#xff1a; 管道的定义&#xff1a; 匿名管道 单向通信的管道通路&#xff1a; 进程和文件之间的解耦&#xff1a; 单向管道的读写端回收问题&#xff1a; 管道通信主要实现动态数…

Python VS Golng 谁更胜一筹?

今天我们聊聊Python和Golang这俩到底谁更胜一筹。 这个话题我已经在各种技术论坛上看到无数次了&#xff0c;每次都能引起一波热烈的讨论。作为一个多年写代码的老程序员&#xff0c;今天就站在我的角度&#xff0c;和大家掰扯掰扯这两个语言各自的优缺点。 1. 性能与并发模型…

283. 移动零(快慢指针)

算法分析&#xff1a; 如果数组没有0&#xff0c;快慢指针同步移动&#xff0c;元素会被自己复制&#xff1b;如果有0&#xff0c;快指针找到非零元素&#xff0c;将其复制到慢指针位置最终将剩余位置填充为0。 代码&#xff1a; class Solution {public void moveZeroes(i…

Android Studio 2024 安装、项目创建、加速、优化

文章目录 Android Studio安装Android Studio项目创建Android Studio加速修改GRADLE_USER_HOME位置减少C盘占用空间GRADLE加速 修改模拟器位置减少C盘占用空间参考资料 Android Studio安装 下载android studio download android-studio-2024.1.2.12-windows.exe 或者 android-…

11 - TCPClient实验

在上一个章节的UDP通信测试中&#xff0c;尽管通信的实现过程相对简洁&#xff0c;但出现了通信数据丢包的问题。因此&#xff0c;本章节将基于之前建立的WIFI网络连接&#xff0c;构建一个基础的TCPClient连接机制。我们利用网络调试助手工具来发送数据&#xff0c;测试网络通…