• NB-IoT移远BC95使用小结


    移远-BC95-测试前准备

    1、  设备连接主串口,串口调试助手波特率使用9600,选择对应的端口号。在串口调试助手上输入AT发送,查看是否有OK返回。

    如果想修改波特可以通过下面的AT来修改

    AT+NATSPEED   Configure UART Port Baud Rate 

     (主串口进行AT命令通信和数据传输时,波特率为9600bps;

      主串口也可用于软件升级,此时波特率为115200bps。

      调试串口输出日志,波特率为 921600bps。 )

    需要注意

    BC95 模组主串口波特率在 9600bps 和 4800bps 时,上下限范围如下图所示。外部 MCU 选型时,请
    注意 MCU 的串口波特率不能超出模组主串口波特率的允许范围,否则会引起通讯异常。使用时请参考
    Quectel_BC95_AT_Commands_Manual 文档中的AT+NATSPEED 指令,选择串口合适的<sync_mode><stopbits>参数值。 



    2、  AT+CSQ查询到是99,99:

    查询当前信号质量CSQ
    
    对应AT指令是:AT+CSQ,返回结果为+CSQ:16,99。前面这个16就是信号质量,
    这个取值范围是0-31的一个数值,当这个数位99的时候,就说明没有获取到信号,
    这个时候我们可能需要多等一会儿,根据不同的地点,所等待时间在1-60s内,
    如果超过这个时间依旧返回的结果是+CSQ:99,99的话,
    这个时候就要看一下卡是否是NB卡了,
    还有就是你的模组固件版本是否在657以下(之前版本没有开启扰码功能,不能成功接入基站)。

    Ø  确认模块、SIM卡与运营商相对应, 

    电信:BC95-B20 支持800MHz,BC95-B5 850MHz  [电信支持 800MHz(实际上该频段处于 BC95-B5 的 850MHz 频段范围内)]。

    移动:BC95-B8 900MHz。

    联通:BC95-B8 900MHz 和 BC95-B3 1800MHz

    找网 
    模块找网前需确认模块型号与频段是否对应(AT+NBAND?查询模块频段信息)。 

    所有模块出厂频段默认为900MHz,可通过AT+NBAND=n 来设置,AT+NRB 重启模块后生效

    模块型号和对应频段如下: 

    从B650版本开始,默认开机自动找网(由 AT+NCONFIG=AUTOCONNECT,TRUE 这个命令控制),
    模块会自动注册网络,不需要再发送找网的AT 命令,只需发送查询命令,查询是否注册上网即可。

    AT+NBAND?          //查询Band 
    AT+CFUN?          //值为 1 
    AT+CIMI            //查询 IMSI号 
    AT+CSQ              //查询信号强度 
    AT+NUESTATS        //查询模块状态 
    AT+CGATT?          //返回+CGATT:1 表示附着成功,有时延约 30s 
    AT+CEREG?       //查寻注网状态,1为注册上网络,2为正在找网 
    AT+CSCON?        //查询连接状态,1为Connected,0为 Idle

     
    若需要手动找网,请执行AT+NCONFIG=AUTOCONNECT,FALSE 后重启模块,开始手动找网。此设
    置会自动保存。 

    手动找网流程有指定PLMN 和不指定PLMN两种方式,参考如下:

    方式一:不指定 PLMN 
    AT+CFUN?                       //对于 B657SP1 之前版本,值为0时才可以设置CDP 服务器。  
    AT+NCDP=10.41.129.115,8653       //设置地址和端口,设置后会保存(如不需要配置,可跳过此操作)。 
    AT+CFUN=1 
    AT+CIMI                          //执行 AT+CFUN=1,等待 4 秒后查询 IMSI,如果能查到表示卡已识
    别;若查不到,请检查卡是否插好并确认是否是USIM卡。 
    AT+NBAND?                     //查询频段信息。 
    AT+CEREG=1                   //设置自动上报网络注册状态,当模块注册上网络,会上报 URC。 
    AT+CGDCONT=1,″IP","APN"    //APN 为本地入网方式,需自行配置,也可不配置。 
    AT+CGATT=1 (或者AT+COPS=0) 
    AT+CSQ                       //查询信号强度。 
    AT+NUESTATS                 //查询模块状态。 
    AT+CGATT?                    //返回+CGATT:1 表示附着成功,有时会有约30s的延迟。 
    AT+CEREG?                   //查寻注网状态,1为注册上网络,2为正在找网。 
    AT+CSCON?                   //查询连接状态,1为Connected,0为 Idle。 
    View Code
    方式二:指定PLMN 
    AT+CFUN=1 
    AT+CIMI              //执行 AT+CFUN=1,等待 4 秒后查询 IMSI,如果能查到表示卡已识
    别;若查不到,请检查卡是否插好并确认是否是USIM卡。 
    AT+NBAND?             //查询频段信息。 
    AT+CEREG=1          //设置自动上报网络注册状态,当模块注册上网络,会上报 URC。 
    AT+CGDCONT=1,"IP","APN"      //APN 为本地入网方式,自行配置,也可不配置。 
    AT+COPS=1,2,"46000"            //指定PLMN搜索,PLMN 自行配置。 
    AT+CSQ                      //查询信号强度。 
    AT+NUESTATS                 //查询模块状态。 
    AT+CGATT?                     //返回+CGATT:1 表示附着成功,有时会有约30s的延迟。 
    AT+CEREG?                   //查寻注网状态,1为注册上网络,2为正在找网。 
    AT+CSCON?                   //查询连接状态,1为Connected,0为 Idle。 
    View Code


    Ø  使用AT+NCONFIG?查看AUTOCONNECT,TRUE(参数为TRUE说明模块开启自动注网模式)CR_0354_0338_SCRAMBLING,TRUE、CR_0859_SI_AVOID,TRUE查看扰码功能是不是和基站对应上(参数为TRUE说明模块开启开启了扰码功能,基站侧也需要开启,若为FLASH则说明关闭扰码功能)扰码开关模组与基站需要对应上。

    网络侧质量:AT+NUESTATS
    
    网络侧质量较差直接影响数据发送和接收,如果RSRP和SNR数值较低,先排查天线和电路发射功率和接收灵敏度,如果没问题建议找基站侧的网优来优化基站参数。


    3、  AT+NABND?查询band是否和SIM卡、模块对应上。

    4、  AT+NCONFIG?查看模块是否为自动注网模式,扰码功能是否与基站匹配上。

    5、  AT+CEREG? (EPS 网络注册状态)查看是否为0,1(注册上)若为0,2(正在注册)。

    工作模式之间关系

    三种连接状态下,均可发送上行数据( CoAP/UDP); IDLE 下发送数据, 模块会进入 CONNECT 状态; PSM 下发送是数据会唤醒模块, 进入 CONNECT,或者当 TAU(TAU 的时长是指从进入 IDLE 开始一直到 PSM 模式结束) 超时,模块唤醒, 进入 CONNECT。

    1、CONNECT态:只要有数据发送,模块都会处于该状态下。模块注网后即处于该状态。该状态下没有数据交互不活动定时器到时间后,模块会进入IDLE态(这个时间是有核心网确定的,范围为 1-3600s)可通过AT+CSCON=1打开状态自动上报,+CSCON=1表示模块处于该状态。

    2、IDLE态:可接收下行数据,该状态持续的时间由核心网配置,由 Active timer( T3324)来控制,范围为 0-11160s。可通过AT+CSCON=1打开状态自动上报,+CSCON=0表示模块处于该状态。若开启小区重选功能,是在IDLE态下完成自动重选的。

    3、PSM态:该状态下不接受下行数据,处于PSM模式时将与服务器断开连接,网络侧不能寻呼到设备,必须等待设备主动发起连接。该状态持续的时间由核心网配置, TAU(扩展)定时器 T3412 来控制,范围为 0h-320h。T3412 扩展值最大可取 320h。若两个值同时存在,模组以 T3412 扩展值为准。可通过AT+NPSMR=1打开自动上报(B657SP2及以后版本),+NPSMR=1表示模组进入PSM状态。+NPSMR=0表示模组从PSM状态唤醒进入CONNECT状态。

     

    备注 
    1.  三种连接状态下,均可发送上行数据(CoAP/UDP);Idle下发送数据,模块会进入Connected 状态;
    PSM下发送是数据会唤醒模块,进入 Connected,或者当TAU超时,模块唤醒,进入Connected。  
    2.  Idle下,可接收下行数据,模块进入 Connected状态,PSM下不接收下行数据。 
    3.  TAU 的时长是指从进入 Idle 开始一直到PSM模式结束。 

     

     

    模块时间的获取

    BC95模块发送AT+CCLK?即可返回系统时间(格林威治时间)

    +CCLK:[<yy/MM/dd,hh:mm:ss>[<±zz>]]
    OK
    即年/月/日,时:分:秒,时区


     模块软件版本与基站版本匹配说明
    BC95 模块从 B656 版本开始增加了扰码(Scrambling)控制功能,此功能可通过 AT 命令进行控制。
    模块出厂默认开启此功能,此时基站(Base Transceiver Station)也需要开启扰码功能,否则模块搜不到
    信号,无法连接基站。若关闭扰码功能,此时基站也需要关闭扰码功能,模块才可连接基站。如下举例说
    明了如何通过AT 命令关闭和开启模块扰码功能。

    扰码开关指令

    扰码的开启及关闭对应的AT指令如下:
    关闭扰码功能:
    1.AT+CFUN=0 
    2.AT+NCONFIG? //查询扰码功能是否开启
    3. AT+NCONFIG=CR_0354_0338_SCRAMBLING,FALSE //关闭扰码功能
    4. AT+NCONFIG=CR_0859_SI_AVOID,FALSE
    5. AT+NRB //重启模块
    开启扰码功能:
    1. AT+CFUN=0
    2. AT+NCONFIG? //查询扰码功能是否关闭
    3. AT+NCONFIG=CR_0354_0338_SCRAMBLING,TRUE //开启扰码功能
    4. AT+NCONFIG=CR_0859_SI_AVOID,TRUE
    5. AT+NRB //重启模块

    开启自动配置模式

    本次测试使用的是自动配置模式,查询模块是否开启的自动配置模式使用
    AT+NCONFIG?查询。指令开启关闭自动配置模式的
    
    AT指令如下:
    
    开启自动配置模式:
    
    AT+NCONFIG=AUTOCONNECT,TRUE
    
    关闭自动配置模式:
    
    AT+NCONFIG=AUTOCONNECT,FALSE
    ERROR 513问题解决方案 
     
    MCU通过AT+NMGS命令发送数据后,返回OK即表示UE已成功注册IoT平台并且数据已发送成功,
    若返回+CME ERROR: 513(前提是已设置 AT+CMEE=1)错误,建议尝试以下两种解决方案: 
     
    1. MCU 收到+CME ERROR: 513 报错后,延迟10s~20s 后再尝试重新发送。 
    2.  通过 AT+NMSTATUS? 查询 IoT 平台注册状态,返回+NMSTATUS:MO_DATA_ENABLED 表示成功
    注册,然后再尝试重新发送。
    小区重选 
     
    BC95 模块从 B657SP1 版本开始支持小区重选。此功能默认为关闭状态,使用 AT+NCONFIG?查询
    CELL_RESELECTION 参数为 FALSE,即表示关闭,可通 AT+NCONFIG=CELL_RESELECTION,TRUE
    开启小区重选,执行AT+NRB命令重启模块后生效。
    AT+CFUN命令 
     
    从 B650SP8 版本开始,区分有 USIM 卡和无 USIM 卡,无卡时执行 AT+CFUN=1 会报错。当模块处
    于搜网状态或者入网等业务时,不能执行 AT+CFUN=0、  AT+CFUN=1,或者进行Attach/detach操作,否
    则会报错。
     
     设置 CDP服务器 
     
    设置CDP服务器前请先确保模块已写 IMEI号,否则会报错。对于 B657SP1之前版本,设置CDP服
    务器之前要先执行 AT+CFUN=0 命令。 
     
    确认有 IMEI 号后,再设置 CDP 服务器;如果仍报错,可能之前已经设置过一次 CDP 服务器,CDP
    的 IP地址设置保存到了NV 里,由于执行AT+CFUN=1时,IP 地址必须跟NV 里存储的一致,因此报错;
    执行 AT+CFUN=0可重新设置,更改 IP地址,然后执行AT+NRB命令重启模块后生效。 
     
    从 B650SP8 版本开始,区分有 USIM 卡和无 USIM 卡,请先查询模块是否插卡。对于
    B650SP8~B655SP2版本,若没插卡,请执行 AT+NCONFIG?查询 AUTOCONNECT 是不是默认为TRUE,
    如果是,执行 AT+NCONFIG=AUTOCONNECT,FALSE命令后重启模块再设置 CDP 服务器。
  • 相关阅读:
    UIPickerView-一.01-
    闭包-01-Swift
    Swift 入门-01-概述
    git使用命令行-01-自己操作的
    FetchedResultsController-03-CoreData相关
    SQLite-05-增删改查
    Sqlite函数总结-04
    List<string>转xml
    比较两个List<T>是否相同
    获取DataTable前几条数据
  • 原文地址:https://www.cnblogs.com/libra13179/p/9284591.html
Copyright © 2020-2023  润新知