精华内容
下载资源
问答
  • 思南北斗接收模块K508

    2018-10-28 14:06:40
    思南北斗接收模块K508,三系统八频,BDS B1/B2/B3,GPS L1/L2/L5 ,GLONASS L1/L2三系统八频,
  • 思南北斗接收模块K705

    2018-10-28 14:08:41
    思南北斗接收模块K705,可同时跟踪 14 颗 GPS 卫星,可同时跟踪 14 颗 BDS-2 卫星,可同时跟踪 14 颗 BDS-3 卫星,可同时跟踪 14 颗 GLONASS 卫星
  • 思南北斗接收模块K708

    2018-10-28 14:10:02
    思南北斗接收模块K708,支持BDS B1/B2/B3, GPS L1/L2/L5, GLONASS L1/L2, Galileo E1/E5a/E5b四系统,支持SBAS, WAAS, EGNOS, MSAS等系统;支持北斗全球信号,
  • 本文以北斗卫星导航系统的B1频点接收模块为例,介绍北斗接收模块的组成、嵌入式系统与北斗接收模块的关系;分析嵌入式系统造成的辐射干扰对北斗接收模块捕获灵敏度产生负面影响的原因,并总结出一些改进措施和设计中...
  • 北斗二代接收模块预研报告

    千次阅读 2018-02-10 15:00:49
    背景“北斗一代”卫星定位系统由两颗地球静止卫星(800e和1400e)、一颗在轨备份卫星(110.50e)、中心控制系统、标校系统和各类用户机等部分组成。系统的工作过程是:首先由中心控制系统向卫星i和卫星ii同时发送询问...

    背景

    “北斗一代”卫星定位系统由两颗地球静止卫星(800e和1400e)、一颗在轨备份卫星(110.50e)、中心控制系统、标校系统和各类用户机等部分组成。系统的工作过程是:首先由中心控制系统向卫星i和卫星ii同时发送询问信号,径卫星转发器项服务区内的用户广播。用户响应其中一颗卫星的询问信号,并同时向两颗卫星发送响应信号,径卫星转发回中心控制系统。中心控制系统接收并解调用户发来的信号,然后根据用的申请服务内容进行相应的数据处理。对定位申请,中心控制系统测出两个时间延迟:即从中心控制系统发出询问信号,经某一颗卫星转发到达用户,用户发出定位响应信号,经同一颗卫星转发回中心控制系统的延迟;和从中心控制发出询问信号,经上述同一卫星到达用户,用户发出响应信号,经另一颗卫星转发回中心控制系统的延迟。由于中心控制系统和两颗卫星的位置均是已知的,因此由上面两个延迟量可以算出用户到第一颗卫星的距离,以及用户到两颗卫星距离之和,从而知道用户处于一个以第一颗卫星为球心的一个球面,和以两颗卫星为焦点的椭球面之间的交线上。另外中心控制系统从存储在计算机内的数字化地形图查寻到用户高程值,又可知道用户出于某一与地球基准椭球面平行的椭球面上。从而中心控制系统可最终计算出用户所在点的三维坐标,这个坐标经加密由出站信号发送给用户。

    “北斗一代”是双向通讯,而且还要和地面控制中心交换信息,用户数受限,民用并不广泛。

    如今卫星导航主要是美国的GPS,在当前卫星导航定位市场上,GPS的占有率高达95%以上。我国正在实施北斗二代卫星导航系统建设,根据系统建设总体规划,2012年左右,系统将首先具备覆盖亚太地区的定位、导航和授时以及短报文通信服务能力;2020年左右,建成覆盖全球的北斗卫星导航系统。

    北斗二代卫星定位原理和GPS一样,接收终端可以兼容设计同时跟踪北斗卫星和GPS卫星,国内运营商已有要求支持北斗授时需求,而且北斗二代是国家战略,北斗卫星定位终端的市场前景也很广阔。

     目前国外GPS方案

    Ublox和SIRF是国外GPS芯片两大巨头,占到市场的九成,他们最近的芯片方案如下:

    Ublox的方案:

     

     

    SIRF的方案:

     

    他们的处理器都采用ARM。

     

     

     

     

     

    国内北斗接收机研发情况了解

    北京北斗星通和和芯星通都在宣传UM220模块,指标如下:

    • 尺寸小(仅40 x 30 x 4mm)。
    • 超低功耗(仅350mW)。
    • 单芯片支持BD2/GPS功能,无需外接CPU即可直接输出NMEA数据。
    • 先进的多路径抑制技术。
    • 支持单系统独立定位和多系统联合定位。
    • 支持UART,SPI,1PPS,I2C等多种接口。
    • SMD表面贴装封装方式,方便客户生产。

    内部芯片Nebulas是他们自己的基带芯片,他们没有射频芯片,电话联系了解,他们还不能提供模块样品。

    北京东方联星在宣传CC50-BG模块,指标如下:

    u   超强信号灵敏度、出众的多路径抑制能力及抗干扰/防欺骗能力;

    u   支持多频点、多种升级配置超越主流高端产品;

    u   完全自主知识产权;

    u   从基带芯片到导航解算完全自主研发,技术支持、产品维护、软件升级、非标定制等均有保障;

    u   体积小、功耗低、性能可靠,适于各类载体,如静止、高速运动、高速旋转等载体;

    u   SMD表面贴装封装方式,方便客户生产。

    他们用的芯片Otrack-32也是他们自己设计的基带芯片,射频部分也是和其他厂家合作,正在和他们索取资料,一直还没反馈。

    南京博纳雨田是做北斗前端射频芯片设计的,交流多次,正式的芯片还没出来。

    从了解来看,国内做北斗导航产品的公司,前期都做一代产品,支持北斗二代还都在起步阶段。

     

     

    GPS和北斗的比较

    目前GPS民用模块只支持L1频点,北斗民用频点是B1。到下列网站下载ICD文件,对比这两个文件可以看出这两个系统的详细差别。

    GPS:  http://www.navcen.uscg.gov/pubs/gps/icd200/default.htm

    北斗:http://www.beidou.gov.cn

    ICD文件包括4部分内容:

          1)卫星导航射频信号;
          2)扩频测距码;
           3)导航电文结构;
          4)导航电文参数和算法。

    为了保护我国北斗导航产业,北斗的ICD文件只公布了测试版,还没有导航电文的内容,预计2012年底才会陆续完全公布,中国企业可以向总装北斗办申请。

     

     

    北斗(B1)

    GPS(L1)

    坐标系

    中国大地坐标系(CGCS2000)

    世界大地坐标系(WGS-84)

    时间系统零时刻

    UTC2006年1月1日0时0分0秒

    UTC1980年1月6日0时0分0秒

    卫星多址方式

    CDMA

    CDMA

    工作频点

    1561.098MHz

    1575.42MHz

    调制方式

    QPSK

    BPSK

    测距码速率

    2.046Mcps

    1.023Mcps

    测距码码长

    2046 chips

    1023 chips

    数据码速率

    50 bps

    50 bps

    极化方式

    右旋圆极化(RHCP)

    右旋圆极化(RHCP)

     

     

     

     

     

    原理及方案

    方案目标是兼容GPS,模块要能同时利用GPS卫星和北斗卫星进行定位和授时,这也是目前北斗应用推广的主要模式。

    通常的GPS模块的原理框图如下,通道部分一般采用专用ASIC实现。

     

     

    经过调研,射频芯片准备采用博纳雨田的BN630R,BN630R是一款应用于北斗二代卫星导航终端的集成射频芯片,采用一次下变频架构。芯片内部集成了包括LNA,Mixer,集成度相对较高。

    主要指标:模拟中频输出Vpp0.8~1V@1KOhm

             接收灵敏度`-110dBm。

             62MHz时钟输出。

             4位A/D输出。

             4个可选工作频段:B1、B2、B3(北斗)和L1(GPS)。

             芯片大小7X7mm。

     

    芯片的框图如下,可以有软件或逻辑来配置芯片参数。

     

     

     

     

    数字部分采用Xilinx的Zynq-7020,框图如下。

     

    Xilinx的Zynq-7020芯片中的PS部分包含ARMCortex-A9双核,PL包含220个DSP(乘加器),非常适合基带信号处理,封装小(17X17mm),功耗低(小于1.3W)。

     

    方案的原理框图如下,器件很少。

    Z-7020的ARM内部RAM256K,可以外挂RAM,考虑到模块面积,软件建议不要用操作系统,尽量不要外挂RAM,第一版可以外接RAM评估。

    如果采用有源天线,图中的LNA可以不用。

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

    逻辑部分功能概述

    GPSL1和北斗B1信号强度几乎一样,只是测距码和码长不一样,在逻辑中可以用不同的通道来处理,下图是GPSL1处理通道的实现框图。

    C/A码产生的原理如下:

    C/A的两个十级m序列的多项式如下:

    G1(x)= 1+xE3+xE10

    G2(x)= 1+xE2+xE3 +xE6+xE8+xE9+xE10

    载波NCO的频率为46.042MHz,C/A码NCO的频率为1.023MHz。

     

    北斗B1通道处理框图如下:

     

    B1频点测距码产生的原理如下:

     

    B1频点测距码的两个十一级m序列的多项式如下:

    G1(x)= 1+x+xE7+xE8+xE9+xE10+xE11

    G2(x)= 1+x+xE2+xE3+xE4+xE5+ xE8+xE9+xE11

    载波NCO的频率为32.098MHz,B1码NCO的频率为2.046MHz。

     

    软件部分功能概述

    GPS:

    GPS的导航电文格式如下:

    共三个数据块,第二个数据块是卫星星历参数,数据有效期是2小时,软件需要根据这些参数计算出任一时刻卫星的位置,并转换成CGCS2000坐标。

    每一个子帧中都有一个交换字(HOW),6秒钟循环一次,HOW当中的TOW是周秒计数器,用来计算电文发送时间:

    Ts = TOW + (30w + b)X 0.02 + ( c + CP/1023)X0.001 (s)

    伪距定义为信号的接收时间和发送时间之间的差值乘以光在真空中的速度c。因为接收机时钟和卫星时钟不同步,所以称为伪距。

     

    下图是TOW在HOW字中的位置:

     

    利用伪距及卫星的空间坐标进行定位计算。

    定位的卡尔曼滤波计算。

    GPS能同时实现定位和定时,在定位算法求解出接收机钟差Δt后,就可以调整接收机时间和GPS时间一致。

    导航电文中的第三个数据块主要是历书参数,给出不同时刻所有卫星位置,只是精度大大降低,不能用来定位计算,有效期半年。如果用户接收机上保存有效历书,并且用户大致知道自己当前位置和时间(RTC),可以计算出各卫星大致的空间位置,确定它们是否可见,可以节省搜索、捕捉卫星的时间。

    用户接口,标准NMEA0183数据格式输出,数据刷新率暂为1Hz。

    软件的另一个任务就是参与所有通道跟踪环的计算,计算幅值和比较大小,可以单独用一个核来实现。下图中有两个环,一个是载频跟踪环,一个码跟踪环。载波跟踪环要完成二阶(或三阶)环路滤波计算,每个通道分别计算。码环环路要完成鉴别器和滤波的功能。

    下图的虚线右边部分需要软件参与。

     

     

     

     

     

     

     

    北斗:

    从目前公开资料来看,北斗原理和GPS一样,软件部分的功能一样,详细要参考北斗的ICD文件。

     

     

    展开全文
  • 全球最小Venus828F GPS_北斗单芯片接收模块推出.pdf
  • FPGA方法用于GPS_北斗双模接收机基带处理模块设计.pdf
  • 便宜北斗模块

    2013-09-18 11:16:56
    模块的优点是支持双模定位系统(北斗+GPS),因为在工程测量中,尤其是城市道路测量中,由于高楼、树木遮挡卫星信号、以及“多路径效应”严重,用单一的GPS手段进行测量,往往因接收不到必需的卫星数而无法解算或者...
  • GPS与北斗二代双频接收机低噪放模块设计实现.pdf
  • 哪位大神知道不用那个u-center软件,怎么配置能接收北斗信号?
  • 它是由高性能的单芯片构成,具有高灵敏度、低功耗、小型化、其极高追踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境。小形状系数和低功耗消费使模块容易...
  • SKG09F基于联发科技MT3331单芯片架构的高性能特性,其–165dBm的跟踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境,都能高精度定位。小尺寸和低功耗的特性...
  • 传感器——ATGM332D 北斗定位模块

    万次阅读 多人点赞 2017-05-08 20:38:31
    GPS模块VCC————–Arduino的5v GPS模块GND————–Arduino的GND GPS模块TXD————–Arduino的D0(数字IO 0) GPS模块RXD不接 GPS模块PPS不接 其中GPS的天线记得要接,并且要室外放置,因为GPS模块是室外...

    NO.8 模型用GPS测速仪(已完成)(更新第二版本)

    这个是用显示屏显示的

    北斗传感器型号
    定位精度2.5m
    GPS模块VCC————–Arduino的5v
    GPS模块GND————–Arduino的GND
    GPS模块TXD————–Arduino的D0(数字IO 0)
    GPS模块RXD不接
    GPS模块PPS不接
    其中GPS的天线记得要接,并且要室外放置,因为GPS模块是室外定位的,室内没有卫星信号。在室外时需要大概1分钟左右的时间来获取当前位置数据。
    Arduino自测程序:

    void setup()    
    {
      Serial.begin(9600);           //定义波特率9600
      Serial.println("Wating...");
    }
    
    void loop()     
    {
      while (Serial.available()) {   
         Serial.write(Serial.read());//收到GPS数据则通过串口输出
      }
    }
    

    GPS数据

    一组数据如下:

    $GNGGA,,,,,,0,00,25.5,,,,,,*64
    $GNGLL,,,,,,V,N*7A
    $GPGSA,A,1,,,,,,,,,,,,,25.5,25.5,25.5*02
    $BDGSA,A,1,,,,,,,,,,,,,25.5,25.5,25.5*13
    $GPGSV,1,1,00*79
    $BDGSV,1,1,00*68
    $GNRMC,,V,,,,,,,,,,N*4D
    $GNVTG,,,,,,,,,N*2E
    $GNZDA,,,,,,*56
    $GPTXT,01,01,01,ANTENNA OK*35
    
    $GNGGA,084852.000,2236.9453,N,11408.4790,E,1,05,3.1,89.7,M,0.0,M,,*48
    $GNGLL,2236.9453,N,11408.4790,E,084852.000,A,A*4C
    $GPGSA,A,3,10,18,31,,,,,,,,,,6.3,3.1,5.4*3E
    $BDGSA,A,3,06,07,,,,,,,,,,,6.3,3.1,5.4*24
    $GPGSV,3,1,09,10,78,325,24,12,36,064,,14,26,307,,18,67,146,27*71
    $GPGSV,3,2,09,21,15,188,,24,13,043,,25,55,119,,31,36,247,30*7F
    $GPGSV,3,3,09,32,42,334,*43
    $BDGSV,1,1,02,06,68,055,27,07,82,211,31*6A
    $GNRMC,084852.000,A,2236.9453,N,11408.4790,E,0.53,292.44,141216,,,A*7
    5
    $GNVTG,292.44,T,,M,0.53,N,0.98,K,A*2D
    $GNZDA,084852.000,14,12,2016,00,00*48
    $GPTXT,01,01,01,ANTENNA OK*35
    

    数据里面我们看到三种数据类型
    GN、GP、BD 分别代表双模模式、GPS 模式、北斗模式
    (1) $GPGGA (GPS 定位信息)
    GPGGA
    (2) $GPGLL (地理定位信息)
    GPGLL
    (3)$GPGSA (当前卫星信息)
    GPGSA
    (4) $GPGSV(可见卫星信息)
    GPGSV
    (5) $GPRMC(最简定位信息)这个可用信息较多
    GPRMC
    (6) $GPVTG(地面速度信息)
    GPVTG
    (7)天线状态输出
    $GPTXT,01,01,01,ANTENNA OK*35
    Ok 代表天线已经检测到,open 代表天线断开。

    关于热启动温启动冷启动的阐述
    冷启动是指在一个陌生的环境下启动GPS 直到GPS 和周围卫星联系并且计算出
    坐标的启动过程。以下几种情况开机均属冷启动:
    1、初次使用时;
    2、电池耗尽导致星历信息丢失时;
    3、关机状态下将接收机移动1000 公里以上距离。也就是说冷启动是通过硬件方
    式的强制性启动,因为距离上次操作GPS 已经把内部的定位信息清除掉,GPS 接
    收机失去卫星参数,或者已经存在的参数和实际接收到卫星参数相差太多,导致
    导航仪无法工作,必须重新获得卫星提供的坐标数据,所以说车辆从地库里启动
    导航百分百算冷启动,这也是从地库出来搜星时间长的原因。
    温启动是指距离上次定位时间超过2 个小时的启动,搜星定位时间介于冷启动和
    热启动之间。如果您前一日使用过GPS 定位,那么次日的第一次启动就属于温启
    动,启动后会显示上次的位置信息。因为上次关机前的经纬度和高度已知,但由
    于关机时间过长,星历发生了变化,以前的卫星接受不到了,参数中的若干颗卫
    星已经和GPS 接收机失去了联系,需要继续搜星补充位置信息,所以搜星的时间
    要长于热启动,短于冷启动。
    热启动是指在上次关机的地方没有过多移动启动GPS,但距离上次定位时间必须
    小于2

    GPS解析程序:

    #define GpsSerial  Serial
    #define DebugSerial Serial
    int L = 13; //LED指示灯引脚
    
    struct
    {
        char GPS_Buffer[80];
        bool isGetData;     //是否获取到GPS数据
        bool isParseData;   //是否解析完成
        char UTCTime[11];       //UTC时间
        char latitude[11];      //纬度
        char N_S[2];        //N/S
        char longitude[12];     //经度
        char E_W[2];        //E/W
        bool isUsefull;     //定位信息是否有效
    } Save_Data;
    
    const unsigned int gpsRxBufferLength = 600;
    char gpsRxBuffer[gpsRxBufferLength];
    unsigned int ii = 0;
    
    
    void setup()    //初始化内容
    {
        GpsSerial.begin(9600);          //定义波特率9600,和我们店铺的GPS模块输出的波特率一致
        DebugSerial.begin(9600);
        DebugSerial.println("ILoveMCU.taobao.com");
        DebugSerial.println("Wating...");
    
        Save_Data.isGetData = false;
        Save_Data.isParseData = false;
        Save_Data.isUsefull = false;
    }
    
    void loop()     //主循环
    {
        gpsRead();  //获取GPS数据
        parseGpsBuffer();//解析GPS数据
        printGpsBuffer();//输出解析后的数据
        // DebugSerial.println("\r\n\r\nloop\r\n\r\n");
    }
    
    void errorLog(int num)
    {
        DebugSerial.print("ERROR");
        DebugSerial.println(num);
        while (1)
        {
            digitalWrite(L, HIGH);
            delay(300);
            digitalWrite(L, LOW);
            delay(300);
        }
    }
    
    void printGpsBuffer()
    {
        if (Save_Data.isParseData)
        {
            Save_Data.isParseData = false;
    
            DebugSerial.print("Save_Data.UTCTime = ");
            DebugSerial.println(Save_Data.UTCTime);
    
            if(Save_Data.isUsefull)
            {
                Save_Data.isUsefull = false;
                DebugSerial.print("Save_Data.latitude = ");
                DebugSerial.println(Save_Data.latitude);
                DebugSerial.print("Save_Data.N_S = ");
                DebugSerial.println(Save_Data.N_S);
                DebugSerial.print("Save_Data.longitude = ");
                DebugSerial.println(Save_Data.longitude);
                DebugSerial.print("Save_Data.E_W = ");
                DebugSerial.println(Save_Data.E_W);
            }
            else
            {
                DebugSerial.println("GPS DATA is not usefull!");
            }
    
        }
    }
    
    void parseGpsBuffer()
    {
        char *subString;
        char *subStringNext;
        if (Save_Data.isGetData)
        {
            Save_Data.isGetData = false;
            DebugSerial.println("**************");
            DebugSerial.println(Save_Data.GPS_Buffer);
    
    
            for (int i = 0 ; i <= 6 ; i++)
            {
                if (i == 0)
                {
                    if ((subString = strstr(Save_Data.GPS_Buffer, ",")) == NULL)
                        errorLog(1);    //解析错误
                }
                else
                {
                    subString++;
                    if ((subStringNext = strstr(subString, ",")) != NULL)
                    {
                        char usefullBuffer[2]; 
                        switch(i)
                        {
                            case 1:memcpy(Save_Data.UTCTime, subString, subStringNext - subString);break;   //获取UTC时间
                            case 2:memcpy(usefullBuffer, subString, subStringNext - subString);break;   //获取UTC时间
                            case 3:memcpy(Save_Data.latitude, subString, subStringNext - subString);break;  //获取纬度信息
                            case 4:memcpy(Save_Data.N_S, subString, subStringNext - subString);break;   //获取N/S
                            case 5:memcpy(Save_Data.longitude, subString, subStringNext - subString);break; //获取纬度信息
                            case 6:memcpy(Save_Data.E_W, subString, subStringNext - subString);break;   //获取E/W
    
                            default:break;
                        }
    
                        subString = subStringNext;
                        Save_Data.isParseData = true;
                        if(usefullBuffer[0] == 'A')
                            Save_Data.isUsefull = true;
                        else if(usefullBuffer[0] == 'V')
                            Save_Data.isUsefull = false;
    
                    }
                    else
                    {
                        errorLog(2);    //解析错误
                    }
                }
    
    
            }
        }
    }
    
    
    void gpsRead() {
        while (GpsSerial.available())
        {
            gpsRxBuffer[ii++] = GpsSerial.read();
            if (ii == gpsRxBufferLength)clrGpsRxBuffer();
        }
    
        char* GPS_BufferHead;
        char* GPS_BufferTail;
        if ((GPS_BufferHead = strstr(gpsRxBuffer, "$GPRMC,")) != NULL || (GPS_BufferHead = strstr(gpsRxBuffer, "$GNRMC,")) != NULL )
        {
            if (((GPS_BufferTail = strstr(GPS_BufferHead, "\r\n")) != NULL) && (GPS_BufferTail > GPS_BufferHead))
            {
                memcpy(Save_Data.GPS_Buffer, GPS_BufferHead, GPS_BufferTail - GPS_BufferHead);
                Save_Data.isGetData = true;
    
                clrGpsRxBuffer();
            }
        }
    }
    
    void clrGpsRxBuffer(void)
    {
        memset(gpsRxBuffer, 0, gpsRxBufferLength);      //清空
        ii = 0;
    }
    
    展开全文
  • 它基于联发科MT3331高性能的单芯片构成,其–165dBm的跟踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境,都能高精度定位。小尺寸和低功耗的特性使该模块更...
  • 本文主要对北斗接收机的整体结构和定位解算模块进行设计与开发。论文首先介绍了北斗系统的组成、信号结构和接收机定位原理,在此基础上研究了接收机伪距定位中常用的最小二乘解算方法和基于扩展卡尔曼滤波器的定位...

    摘要:

    随着北斗导航系统的建设不断推进,其应用范围越来越广,因此北斗接收机需求也越来越大。不同的应用场景的接收机结构和侧重点有所不同,但是其中的定位解算模块都是其关键部分。本文主要对北斗接收机的整体结构和定位解算模块进行设计与开发。论文首先介绍了北斗系统的组成、信号结构和接收机定位原理,在此基础上研究了接收机伪距定位中常用的最小二乘解算方法和基于扩展卡尔曼滤波器的定位解算方法,分析了两种算法在静态动态不同场景下的性能。根据两种算法优缺点,本文设计了改进优化后的扩展卡尔曼滤波解算方法,通过最小二乘法拟合初值、滤波器发散检测与重置、改进递推模型计算方式等手段保证解算算法在接收机中稳定可靠并高效运行。论文基于Xilinx Zynq平台设计了北斗接收机整体架构,通过AXI总线和可配置IP核的模式高效利用Zynq的片内可编程逻辑和片内处理器,简化了接收机的软硬件处理流程,可以为多个频点、多种信号格式的信号体制设计提供可拓展性较好的接收机验证平台。在定位解算算法研究和接收机平台设计的基础上,论文完成了北斗接收机定位解算部分的设计与实现。开发完成了接收机整体控制流程,包括导航电文译码解析、卫星位置速度计算、原始观测量处理和伪距计算与修正、位置速度时间计算、精度因子计算、预报星历解算等具体模块的定位解算软件模块,并设计了接收机的数据展示软件,最后完成了接收机的整体测试和定位解算模块的性能验证。

    展开

    展开全文
  • 这款模块通过内置天线接收信号,通过nmea协议或串行接口自定义协议可以完整的将位置、速度和时间信息等串行数据完整的记录。 它是基于单片架构的高性能GNSS单芯片,-165dBm 跟踪灵敏度将定位覆盖扩展到城市峡谷...
  • 车载USB转串口GPS模块,实时解析获取当前车辆速度信息。
  • 它是由高性能的单芯片构成,具有高灵敏度、低功耗、小型化、其极高追踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境。小形状系数和低功耗消费使模块容易...
  • 文章目录北斗模块接线接收代码串口接收数据截图 北斗模块 接线 北斗模块 PYB VCC VCC GND GND RX X1(UART4,TX) TX X2(UART4,RX) 接收代码 if __name__ == "__main__": bd = UART(4, 9600) while ...

    北斗模块

    在这里插入图片描述

    接线

    北斗模块PYB
    VCCVCC
    GNDGND
    RXX1(UART4,TX)
    TXX2(UART4,RX)

    接收代码

    if __name__ == "__main__":
        bd = UART(4, 9600)
        while True:
            if bd.any():
                print(bd.readline())
    

    串口接收数据截图

    在这里插入图片描述

    在这里插入图片描述

    使用MicroGPS库实现读取

    在这里插入图片描述
    micropyGPS使用文档

    from pyb import LED, Timer, UART, Pin
    
    from micropyGPS import MicropyGPS
    
    if __name__ == "__main__":
        my_gps = MicropyGPS()
        bd = UART(1, 9600)
    
        while True:
            if bd.any():
                bd_msg = bd.readline()
                # print(bd_msg)
                str_bd = str(bd_msg)[1:]
                # print("str_bd", str_bd)
                # print("str_bd[1:7]", str_bd[1:7])
                if str_bd[1:7] == '$GNRMC':
                    my_sentence = str_bd
                    for x in my_sentence:
                        my_gps.update(x)
                    print("my_gps.latitude", my_gps.latitude)
                    print("my_gps.longitude", my_gps.longitude)
    

    效果展示

    在这里插入图片描述

    展开全文
  • 它是由高性能的单芯片构成,具有高灵敏度、低功耗、小型化、其极高追踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境。小形状系数和低功耗消费使模块容易...
  • 单片机+北斗模块实现定位

    万次阅读 多人点赞 2019-06-30 20:17:49
    本文原创,转载请注明出处。小编可能以后不会在简书上更新了,因为这里的markdown 编辑器太不...中国北斗卫星导航系统是我国自主研制的全球导航系统,是继美国定位系统(GPS)、俄罗斯格洛纳斯卫星导航系统之后的第...
  • 射频前端是北斗卫星导航系统中北斗接收发射机的核心,因此,其研发工作具有非常重要且实际的意义。   为了完成双模北斗卫星导航接收机射频前端样机的研制任务,论文在对无线通信系统进行分析的基础上,首先...
  • 北斗模块学习之初

    千次阅读 2014-12-07 16:55:32
    北斗卫星导航系统(BeiDou(COMPASS)NavigationSatellite System)是中国正在实施的自主发展、独立运行的全球卫星导航系统。系统建设目标是:建成独立自主、开放兼容、技术先进、稳定可靠的覆盖全球的北斗卫星导航...
  • 它是由高性能的单芯片构成,具有高灵敏度、低功耗、小型化、其极高追踪灵敏度大大扩大了其定位的覆盖面,在普通GPS接收模块不能定位的地方,如狭窄都市天空下、密集的丛林环境。小形状系数和低功耗消费使模块容易...
  • HD-GR开源GPS+BDS双模接收机基带模块Verilog源码。首次由Turing321发布在CSDN网络,模块代码最终修改于2020年。
  • 顺应双模或多模卫星导航接收机在民用市场中的发展趋势和需求,结合卫星导航接收机涉及的几个关键技术指标和射频电路设计的基本理论,采用两片MAX2769射频芯片,设计了一款北斗/GPS双模兼容的射频接收模组。...
  • 模块北斗+GPS双模定位模块

    千次阅读 2020-09-03 13:23:24
    其实北斗、GPS、伽利略和GLONASS的民用射频频段几乎是一样,模块厂家只需要一块射频接收器,后端稍作不同的处理就可以支持不同的系统并不需要增加额外的成本,所以厂家更愿意推广多模的模块,比如北斗/BDS和GPS双模...
  • 详细讨论了北斗-GPS广域差分系统数据处理的方法,实现了一种利用普通的单频GPS OEM 板及北斗接收模块接收相关数据来实现差分定位的方案,编制了北斗-GPS差分算法。应用本方案进行用户定位,可将定位精度从原来的25 m...
  • 北斗GPS ATGM332D模块软硬件技术资料+STM32单片机软件工程源码: 1-原理图_尺寸图 2-开发板配套例程 3-配套软件 4-官方文档 5-NMEA0183解码库源码 ATGM332D与各开发板引脚连接说明 GPS单位及纠偏.pdf ATGM332D模块...
  • 北斗/GPS模块输出的NMEA 0183语句详解

    千次阅读 2020-08-12 21:45:36
    目前业已成了 GPS/北斗导航设备统一的 RTCM(Radio Technical Commission for Maritime services)标准协议。 NMEA-0183 协议采用 ASCII 码来传递 GPS 定位信息,我们称之为帧。 帧格式形如:$aaccc,ddd,ddd,…,ddd*...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,002
精华内容 400
关键字:

北斗接收模块