A Biblioteca de Integridade PNT fornece aos usuários um método para verificar a integridade dos dados GPS recebidos e os sinais de variação, melhorando assim a resiliência contra a potencial perda de sinal de GPS. O software é uma estrutura escalável para a detecção de manipulação de PNT baseada em GNSS que oferece níveis variados de proteção com base nos dados disponíveis. A biblioteca deve ser fornecida ao receptor GNSS e OEMs de servidor de tempo baseados em GNSS para uso em desenvolvimento ou integração futura em produtos e plataformas existentes. Mais detalhes sobre a biblioteca de integridade PNT podem ser encontrados no PNT_Integrity_library_guide.pdf e PNT Readme em componentes, algoritmos e verificações do sistema. Uma ferramenta relacionada é o kit de ferramentas DIY de integridade PNT, que descreve como um usuário final em perspectiva da biblioteca de integridade PNT pode montar um kit de ferramentas demonstrativo com o hardware comercial da the-helf (COTS).
Esta biblioteca está licenciada sob a licença de 3-cláusulas BSD. A biblioteca contém código -fonte desenvolvido pelo IS4S e terceiros. Consulte os arquivos de origem Invidual para obter informações de direitos autorais aplicáveis.
Copyright (c) 2020 Integrated Solutions for Systems (IS4S), Inc
Copyright (c) 2017, ETHZ ASL (geodetic converter)
Copyright (c) 2009, Ben Hoyt (inih)
Redistribuição e uso em formulários de origem e binária, com ou sem modificação, são permitidos, desde que as seguintes condições sejam atendidas:
Este software é fornecido pelos detentores de direitos autorais e colaboradores "como está" e quaisquer garantias expressas ou implícitas, incluindo, entre outros, as garantias implícitas de comercialização e condicionamento físico para um determinado objetivo. Em nenhum caso o detentor ou colaboradores de direitos autorais será responsável por quaisquer danos diretos, indiretos, incidentais, especiais, exemplares ou conseqüentes (incluindo, entre outros, aquisição de bens ou serviços substitutos; perda de uso, dados ou lucros; Ou interrupção de negócios), no entanto, causou e a qualquer teoria da responsabilidade, seja em contrato, responsabilidade estrita ou delito (incluindo negligência ou de outra forma) decorrente de alguma maneira do uso deste software, mesmo se recomendar a possibilidade de tais danos.
Este repositório contém o projeto CMake de nível superior para a criação da biblioteca de integridade IS4S PNT, interface do usuário e suas dependências.
Requisitos do sistema
A biblioteca de integridade PNT é gravada de maneira cruzada usando C ++. Embora se espera que funcione em uma ampla variedade de plataformas, ele foi testado nos seguintes sistemas operacionais:
As seguintes ferramentas adicionais são necessárias para construir a biblioteca:
Dependências
A biblioteca de integridade da PNT foi projetada para exigir o mínimo possível de dependências de terceiros para apoiar a construção de uma ampla variedade de plataformas. Duas dependências são necessárias, além das bibliotecas fornecidas no pacote. O eigen (https://eigen.tuxfamily.org) C ++ Modelo Library para álgebra linear é exigido pela biblioteca de integridade Base PNT. O pacote FFTW (http://fftw.org) é opcionalmente necessário e é necessário para usar a verificação de aquisição. Qt (https://www.qt.io) é necessário para construir e executar a interface do usuário
Ambos os pacotes podem ser instalados seguindo as instruções em seus respectivos sites. O Eigen é um pacote somente para cabeçalho e pode ser instalado baixando um lançamento no site do projeto e extraindo para uma pasta local. Os binários da FFTW estão disponíveis para uma variedade de plataformas no site do projeto.
Como alternativa, um gerenciador de pacotes pode ser usado para instalar as dependências. Para MacOS, recomenda -se o MacOS, recomenda -se o gerenciador de pacotes Homebrew (https://brew.sh). O gerenciador de pacotes Chocolatey (https://chocolate.org) é recomendado para o Windows. As instruções sobre a instalação das dependências necessárias e opcionais usando gerentes de pacotes nos sistemas operacionais suportadas são fornecidas nas seções a seguir.
Ubuntu / Debian
Instale Eigen executando:
sudo apt install libeigen3-dev
Opcionalmente, instale o FFTW executando:
sudo apt install libfftw3-dev
Instale o QT5 no Ubuntu executando:
sudo apt install qtdeclarative5-dev qtwebengine5-dev libqt5charts5-dev
Macos
Instale Eigen executando:
brew install eigen
Opcionalmente, instale o FFTW executando:
brew install fftw
Instale o QT5 no macOS executando:
brew install qt
Se você encontrar erros de criação do Cmake ao encontrar QT, isso pode ajudar:
export CMAKE_PREFIX_PATH=/usr/local/Cellar/qt/[version]/
Windows
Instale Eigen executando:
choco install eigen
O chocolate não suporta fornece binários para o FFTW. Eles podem ser baixados e instalados diretamente no site do projeto: http://www.fftw.org/install/windows.html (http://www.fftw.org/install/windows.html) para instalar o QT no QT on Plataforma do Windows Clique aqui.
Prédio
Extraia o arquivo de liberação:
unzip release.zip
Gerar arquivos de construção usando cmake
cd release
mkdir build
cmake ../
Por padrão, isso gerará o Unix Makefiles para o pacote. Os arquivos do projeto podem ser gerados para outros sistemas de construção ou IDEs selecionando um gerador alternativo de cmake (https://cmake.org/cmake/help/v3.15/manual/cmake-generators.7.html). Construa as bibliotecas em execução:
make
As bibliotecas podem ser opcionalmente instaladas no sistema do usuário executando:
make install