From 32cd8aa65d741cebd9cdbeff0127fa7139d90e93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Grey=20Tu=28=E5=B1=A0=E5=BC=98=E5=8E=86=29?= Date: Thu, 25 Mar 2021 11:34:07 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=B5=8B=E8=AF=95=E6=8F=90=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/FAQ/zh/sidebar.yaml | 2 +- docs/others/others.md | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 docs/others/others.md diff --git a/docs/FAQ/zh/sidebar.yaml b/docs/FAQ/zh/sidebar.yaml index 5b5d685..8d08303 100644 --- a/docs/FAQ/zh/sidebar.yaml +++ b/docs/FAQ/zh/sidebar.yaml @@ -5,4 +5,4 @@ items: - label: 参与贡献 file: join_us/README.md - label: QuecPython_FAQ - file: QuecPython_FAQ/QuecPython_FAQ.md + file: QuecPython_FAQ/QuecPython_FAQ.md \ No newline at end of file diff --git a/docs/others/others.md b/docs/others/others.md new file mode 100644 index 0000000..ea34e5d --- /dev/null +++ b/docs/others/others.md @@ -0,0 +1 @@ +Grey \ No newline at end of file -- Gitee From db8dc0ce813d2993f86a2dba5a1d41a4a57d9c7b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Grey=20Tu=28=E5=B1=A0=E5=BC=98=E5=8E=86=29?= Date: Fri, 26 Mar 2021 10:18:01 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E4=BF=AE=E6=94=B9cellLocator=E4=B8=8EDataC?= =?UTF-8?q?all=E6=96=87=E6=A1=A3,=20=E4=BF=AE=E6=94=B9=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E5=91=BD=E5=90=8D,=20=E6=95=B4=E7=90=86SIM=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zh/QuecPythonWirelessNetwork/DataCall.md | 35 ++++++------ .../QuecPythonWirelessNetwork/cellLocator.md | 32 ++++++----- ...nt_QuecPythonWirelessNetwork_SIM_card.png} | Bin ...ecPythonWirelessNetwork_SIM_telephone.png} | Bin ...nWirelessNetwork_cellLocator_overview.png} | Bin .../zh/QuecPythonWirelessNetwork/sim.md | 51 +++++++++--------- docs/others/others.md | 1 - 7 files changed, 64 insertions(+), 55 deletions(-) rename docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/{image-20210113215601231.png => mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_card.png} (100%) mode change 100755 => 100644 rename docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/{image-20210113220623353.png => mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_telephone.png} (100%) mode change 100755 => 100644 rename docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/{image-20210113192225821.png => mediaQp_Advanced_development_QuecPythonWirelessNetwork_cellLocator_overview.png} (100%) mode change 100755 => 100644 delete mode 100644 docs/others/others.md diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/DataCall.md b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/DataCall.md index 9dfc565..d282581 100644 --- a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/DataCall.md +++ b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/DataCall.md @@ -1,28 +1,27 @@ -# QuecPython 无线联网开发 +# QuecPythonDataCall数据拨号 -## QuecPythonDataCall数据拨号 +本片文章主要简介QuecPython datacall 模块的使用。 -本片文章主要简介QuecPython datacall 模块的使用。 datacall模块提供数据拨号的等功能。 +**模块功能:** -包含的API如下: +提供数据拨号相关接口,启动;设置;查询数据拨号。 + +**对应API:** - **dataCall.start(profileIdx, ipType, apn, username, password, authType)** - **dataCall.setApn(profileIdx, ipType, apn, username, password, authType)** -- **dataCall.setCallback** +- **dataCall.setCallback(usrFun)** - **dataCall.getInfo(profileIdx, ipType)** 具体的API 详解请参考[Quecpython-dataCall - 数据拨号](https://python.quectel.com/wiki/#/zh-cn/api/QuecPythonClasslib?id=datacall-%e6%95%b0%e6%8d%ae%e6%8b%a8%e5%8f%b7) -适用模块: -- EC100Y-CN -- EC600S-CN -### 数据拨号简介 +## 数据拨号简介 -简单理解, 数据拨号即为通过和服务器连接,获取网络访问许可。 +简单理解, 数据拨号即为通过拨号的方式和服务器连接,获取网络访问许可。 -#### 什么是APN +### 什么是APN [APN Configuration](https://prepaid-data-sim-card.fandom.com/wiki/APN_Configuration) @@ -42,7 +41,7 @@ APN接入点名称由两部分组成: - 移动国家代码(MCC) -#### APN的类型 +### APN的类型 我们可以根据APN是连接到公共网络还是专用网络以及IP地址的分配方式来划分APN,有以下四种不同的类型: @@ -56,11 +55,13 @@ APN接入点名称由两部分组成: 当我们比较公用APN和专用APN时,我们可以看到后者甚至不需要互联网连接。专用APN永远不允许其访问公共互联网,而同时又保持其在蜂窝网络基础架构上,从而确保了安全的数据处理。 -#### 配置APN +### 配置APN 对于QuecPython,可使用SIM卡默认APN或者手动配置APN。 -### 快速开始 + + +## 快速开始 QuecPython使用datacall 模块常规流程: @@ -70,7 +71,7 @@ QuecPython使用datacall 模块常规流程: 3. 注册断网回调函数, 在回调函数里面,判断网络状态,进入重拨等操作。 -#### 代码实验 +### 代码实验 1. 首先链路激活。 @@ -135,7 +136,7 @@ if __name__ == "__main__": ``` -### 参考资料 +## 参考资料 [What is Access Point Name (APN)](https://1ot.mobi/resources/blog/iot-hacking-series-3-what-is-access-point-name-apn-and-how-it-works) @@ -143,7 +144,7 @@ if __name__ == "__main__": [Quecpython-dataCall - 数据拨号](https://python.quectel.com/wiki/#/zh-cn/api/QuecPythonClasslib?id=datacall-%e6%95%b0%e6%8d%ae%e6%8b%a8%e5%8f%b7) -### 配套代码 +## 配套代码 下载代码 diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/cellLocator.md b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/cellLocator.md index 14ee5bd..d7daf78 100644 --- a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/cellLocator.md +++ b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/cellLocator.md @@ -1,11 +1,11 @@ -## QuecPython cellLocator基站定位 +# QuecPython cellLocator基站定位 本片文章主要简介QuecPython cellLocator 基站定位的使用。 **模块功能:** -提供基站定位接口,获取坐标信息。 +提供基站定位接口,获取终端坐标信息。 **对应API:** @@ -13,17 +13,25 @@ 具体的API 详解请参考 [cellLocator - 基站定位](https://python.quectel.com/wiki/api/#celllocator-) -### cellLocator 概述 -定位是指通过特定的方法来获取用户终端的位置信息(经纬度坐标)的技术或服务。常见的定位技术有两种:一种是基于GPS的定位,一种是基于移动运营网的基站定位。基于GPS的定位方式是利用GPS定位模块将自己的位置信号发送到定位后台来实现定位的。基站定位则是利用基站与终端之间的距离来确定终端位置的。后者不需要终端有GPS定位能力,但是精度很大程度依赖于基站的分布及覆盖范围的大小,有时误差会超过一公里。前者定位精度较高。此外还可以利用Wi-Fi在小范围内定位。 -基站定位一般应用于手机用户,手机基站定位服务又叫做移动位置服务(LBS,Location Based Service),它是通过运营商的网络(如GSM网)获取移动终端用户的位置信息(经纬度坐标),在电子地图平台的支持下,为用户提供相应定位服务的一种增值业务。例如目前中国移动动感地带提供的动感位置查询服务等。在物联网设备中也支持此类的操作。 +## cellLocator 概述 -基站定位的大致原理为:移动电话测量不同基站的下行导频信号,得到不同基站下行导频的TOA(Time of Arrival,到达时刻)或TDOA(Time Difference of Arrival,到达时间差),根据该测量结果并结合基站的坐标,一般采用三角公式估计算法,就能够计算出终端的位置。实际的位置估计算法需要考虑多基站(3个或3个以上)定位的情况,因此算法要复杂很多。一般而言,移动台测量的基站数目越多,测量精度越高,定位性能改善越明显。QuecPython_cellLocator基站定位便是属于基站定位一种。 +定位是指通过特定的方法来获取用户终端的位置信息(经纬度坐标)的技术或服务。 -### 开发实例 +常见的定位技术有两种:一种是基于GPS的定位,一种是基于移动运营网的基站定位。基于GPS的定位方式是利用GPS定位模块将自己的位置信号发送到定位后台来实现定位的。基站定位则是利用基站与终端之间的距离来确定终端位置的。QuecPython_cellLocator基站定位便是属于基站定位一种。 -#### 交互实验 +基站定位的大致原理为:移动终端通过运营商的网络(如GSM网)测量不同基站的下行导频信号时间,得到不同基站下行导频的TOA(Time of Arrival,到达时刻)或TDOA(Time Difference of Arrival,到达时间差),根据该测量结果并结合基站的坐标,一般采用三角公式估计算法,获取移动终端用户的位置信息(经纬度坐标),在电子地图平台的支持下,为用户提供相应定位位置。实际的位置估计算法需要考虑多基站(3个或3个以上)定位的情况,因此算法要复杂很多。一般而言,移动台测量的基站数目越多,测量精度越高,定位性能改善越明显。 + +QuecPython_cellLocator基站定位不需要终端具有GPS定位能力,无需任何额外硬件支持,但是精度很大程度依赖于基站的分布及覆盖范围的大小。定位精准度大概500m~1500m(因基站密度及数据库数量而异)。此外还可以利用Wi-Fi在小范围内辅助定位,定位精准度约50m。 + +由于是基站定位,需要基站信号覆盖。目前国内4G信号已基本覆盖,2G网络暂时间依旧可以使用,但面临退网风险,3G网络只有电信还没退网,也列入退网计划。在使用该功能前需先对使用地信号覆盖有所了解。 + + + +## 快速开发 + +### 交互实验 进行本次实验, 需要先确定SIM卡状态。 具体请参考SIM模块的文档。 @@ -36,7 +44,7 @@ # 上面使用的密钥仅为测试密钥 ``` -#### 代码实验 +### 代码实验 计算当前位置到北京首都的距离, @@ -89,11 +97,11 @@ if __name__ == "__main__": ``` -### 参考资料 +## 参考资料 [cellLocator - 基站定位](https://python.quectel.com/wiki/#/zh-cn/api/?id=celllocator-基站定位) -### 配套代码 +## 配套代码 - 下载代码 + 下载代码 \ No newline at end of file diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113215601231.png b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_card.png old mode 100755 new mode 100644 similarity index 100% rename from docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113215601231.png rename to docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_card.png diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113220623353.png b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_telephone.png old mode 100755 new mode 100644 similarity index 100% rename from docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113220623353.png rename to docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_telephone.png diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113192225821.png b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_cellLocator_overview.png old mode 100755 new mode 100644 similarity index 100% rename from docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/image-20210113192225821.png rename to docs/Advanced_development/zh/QuecPythonWirelessNetwork/media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_cellLocator_overview.png diff --git a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/sim.md b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/sim.md index 926823a..7dbec0d 100644 --- a/docs/Advanced_development/zh/QuecPythonWirelessNetwork/sim.md +++ b/docs/Advanced_development/zh/QuecPythonWirelessNetwork/sim.md @@ -1,29 +1,30 @@ -## QuecPython SIM卡功能开发 +# QuecPython SIM卡功能开发 本文主要简介QuecPython SIM卡模块的使用。 -其包含的API有 +**模块功能:** -- **sim.getImsi()** -- **sim.getIccid()** -- **sim.getPhoneNumber()** -- **sim.getStatus()** -- **sim.enablePin(pin)** -- **sim.disablePin(pin)** -- **sim.verifyPin(pin)** -- **sim.unblockPin(puk, newPin)** -- **sim.changePin(oldPin, newPin)** -- **sim.readPhonebook(storage, start, end, username)** -- **sim.writePhonebook(storage, index, username, number)** +提供sim卡操作相关API,如查询sim卡状态、iccid、imsi等。 + +**对应API:** + +- sim.getImsi() +- sim.getIccid() +- sim.getPhoneNumber() +- sim.getStatus() +- sim.enablePin(pin) +- sim.disablePin(pin) +- sim.verifyPin(pin) +- sim.unblockPin(puk, newPin) +- sim.changePin(oldPin, newPin) +- sim.readPhonebook(storage, start, end, username) +- sim.writePhonebook(storage, index, username, number) 具体的API 详解请参考[Quecpython sim - SIM卡库](https://python.quectel.com/wiki/api/#sim-sim) -适用模块: -- EC100Y-CN -- EC600S-CN -### SIM卡基本概述 +## SIM卡基本概述 SIM 分为手机卡和物联网卡。区别就是物联网卡没有电话号码不能收发短信,手机可以发短信。 常见的是手机卡。 @@ -33,7 +34,7 @@ SIM 分为手机卡和物联网卡。区别就是物联网卡没有电话号码 第四代标准的Nano卡。 -![image-20210113215601231](media/image-20210113215601231.png) +![mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_card](media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_card.png) EC600S-CN 需要的是第四代标准的 Nano 卡。 @@ -68,11 +69,11 @@ ICCID全称为Integrated Circuit Card Identifier,即集成电路卡识别码 Phonebook Memory Storage即为SIM卡电话薄存储区域。详情可参考 [ts_127007v100300p.pdf](https://www.etsi.org/deliver/etsi_ts/127000_127099/127007/10.03.00_60/ts_127007v100300p.pdf) 。 -![image-20210113220623353](media/image-20210113220623353.png) +![mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_telephone](media/mediaQp_Advanced_development_QuecPythonWirelessNetwork_SIM_telephone.png) -### 快速开始 +## 快速开始 -#### 交互实验 +### 交互实验 ```python >>> import sim @@ -93,7 +94,7 @@ Phonebook Memory Storage即为SIM卡电话薄存储区域。详情可参考 [ts_ (1, [(2, 'z', '18144786859')]) ``` -#### 代码实验 +### 代码实验 使用命令行随机写SIM卡中的Phonebook。 @@ -173,13 +174,13 @@ if __name__ == "__main__": ``` -### 参考资料 +## 参考资料 **[ts_127007v100300p.pdf](https://www.etsi.org/deliver/etsi_ts/127000_127099/127007/10.03.00_60/ts_127007v100300p.pdf)** -**[Quecpython sim - SIM卡库](https://python.quectel.com/wiki/api/#sim-sim)** +**[Quecpython sim - SIM卡库]([QuecPython 类库 (quectel.com)](https://python.quectel.com/wiki/#/zh-cn/api/QuecPythonClasslib?id=sim-sim卡))** -### 配套代码 +## 配套代码 下载代码 \ No newline at end of file diff --git a/docs/others/others.md b/docs/others/others.md deleted file mode 100644 index ea34e5d..0000000 --- a/docs/others/others.md +++ /dev/null @@ -1 +0,0 @@ -Grey \ No newline at end of file -- Gitee