合宙4G模块双卡切换应用与实现
一、背景
在使用合宙4G模块支持双卡功能的场景下,切换卡槽是一个关键环节,它关乎到设备在不同网络环境下的适应性和持续在线的能力。以下是在不同场景中双卡应用:
1. 智能安防系统
场景描述:智能安防系统通常需要保持持续在线以监控现场情况,并及时向用户发送警报。在某些地区,不同运营商的网络覆盖情况可能存在差异,因此使用双卡切换功能可以确保系统的稳定性和可靠性。
应用方式:系统可以内置合宙4G模块,并设计两个SIM卡槽。通过软件程序定期检测两张SIM卡的信号强度,自动选择信号更强的卡进行数据传输。当一张卡信号较弱或无法联网时,系统能够自动切换到另一张卡,确保监控数据的连续传输。
2. 车载终端设备
场景描述:车载终端设备如GPS定位器、车载行车记录仪等,需要在车辆行驶过程中保持与远程服务器的通信。不同地区的运营商网络覆盖可能存在差异,双卡切换功能可以确保设备在不同地区的持续在线。
应用方式:车载设备内置合宙4G模块,并根据车辆行驶路线和目的地提前插入两张不同运营商的SIM卡。设备可以通过软件程序自动检测并切换至信号更强的SIM卡,以确保定位信息的准确性和实时性。同时,设备还可以设置流量使用策略,如优先使用某张卡的流量,以节省成本。
3. 工业自动化控制
场景描述:工业自动化控制系统需要实时采集生产数据并远程传输至监控中心。在某些工业环境中,由于建筑物遮挡、电磁干扰等因素,单一运营商的网络可能无法满足需求。
应用方式:工业自动化设备内置合宙4G模块,并设计双卡槽以支持双卡切换功能。系统可以根据实时网络状况自动选择最优的SIM卡进行数据传输,确保生产数据的及时性和准确性。同时,设备还可以设置异常报警功能,当检测到网络异常或数据传输中断时,及时通知维护人员进行处理。
二、SIM卡槽的切换
合宙部分主推模块780EP,780EQ,780E等有两路SIM卡引脚,是支持双卡单待的,即同一时间只能使用其中一个SIM通道,以780E模块为例:
SIM卡参考推荐电路
使用6pin的SIM卡座,具体电路图请参考相关文档。
切换方式
AT固件
主要围绕AT+SIMCROSS
这条指令做SIM卡通道的调整切换,其中又分为手动切换和自动切换:
- 手动切换:通过
AT+SIMCROSS=0
或者1
选择,0是SIM0,1是SIM1。注意在切换时需要发送AT+CFUN=0
进入飞行模式再切换,否则指令会返回ERROR错误码,指令不生效。切换完成后发送AT+SIMCROSS?
查询当前SIM卡通道是否正确,然后退出飞行模式即可。AT+SIMCROSS? +SIMCROSS: 1 OK AT+CFUN=0 OK +CGEV: ME DETACH AT+SIMCROSS=0 +SIMCROSS:0 OK AT+CFUN=1 OK ^MODE: 17,17 +E_UTRAN Service +CGEV: ME PDN ACT 1,0 +NITZ: 2024/09/06,01:14:36+0,0 AT+SIMCROSS? +SIMCROSS: 0 OK
- 自动切换:当你想不管是哪个卡槽,要能识别到卡,自动选择卡槽,那么就使用AT*SIMAUTO=1,打开SIM卡自动切换功能,该指令需要在配置后重启才能生效。
AT*SIMAUTO? *SIMAUTO: 0 OK AT*SIMAUTO=1 OK AT+RESET OK ^MODE: 17,17 +E_UTRAN Service +CGEV: ME PDN ACT 1,0 +NITZ: 2024/09/06,01:19:32+0,0 AT*SIMAUTO? *SIMAUTO: 1 OK AT+SIMCROSS? +SIMCROSS: 0 OK
LUATOS固件
和AT固件同理也分为手动切换和自动切换,此时我就要用上mobile.simid接口。
- 自动切换:使用mobile.simid(0)或者mobiile.simid(1),选择固定使用哪一路sim卡通道,在切换后可以通过mobile.simid()的返回值查询SIM通道id。
mobile.simid(0) mobile.simid(1)
- 手动切换:使用moile.simid(2),该接口则需要在开机时执行或者进入飞行模式下执行后再退出,同时会占用4个IO(gpio4/5/6/23)。
mobile.simid(2)