Outils pour utilisateurs

Outils du site


kerminy:pointeuse

Pointeuse globale

Est un outil de pointage physique qui permet en posant l'index de pointage d'enregistrer une coordonnée venant du GPSRTK (centimetrique).

Pourquoi? L'antenne permet un calcul d'un point en son centre, mais comme il est impossible de poser ce centre sur des surfaces verticales ou seulement non plane/horizontale, il faut ajouter un index X/Y/Z qui correspond au décalage du point qu'on veut mesurer.

Les arpenteurs règlent ce problème en utilisant des appareils optiques et des perches à visée laser. Ce matériel est trop chère et ne correspond pas tout à fait à notre problématique.

Nous voulons nous réellement pointer du doigts les points à enregistrer. Notre doigt sera en bois avec un bouton au bout, et sa position sera constamment calculée par rapport au nord ou à l'inclinaison de l'antenne. Le tout est relié à un tout petit ordinateur portable qui s'occupera du GPS, du réseau de communication et des enregistrements.

La pointeuse est constituée

  1. L'appui en un point du bouton ou l'enregistrement d'une position valide la prise d'un cycle de données GPS
  2. si les données GPS sont stables la led passe au vert ?
  3. on applique à la position (moyenne) des coefficients (angle au nord/ tangage/roulis) pour situer cette position exactement sur le bouton poussoir plutot qu'au centre de l'antenne.
  4. on enregistre la position dans un fichiers
  5. le fichier peut etre séparé par objet et annoté pour facilité son importation sur un logiciel d'architecture ou autre

Code arduino CMPS10

installer pour arduino leonardo (micro pro) bibliothèque https://github.com/kragniz/CMPS10

#include <Wire.h>
#include <CMPS10.h>
CMPS10 compass;
void setup(){
  Serial.begin(9600);
}
void loop() {
  Serial.print(" ");
  Serial.print(compass.bearing());
  Serial.print(" ");
  Serial.print(compass.pitch());
  Serial.print(" ");
  Serial.println(compass.roll());
  delay(500);
}

scripte ajout positionnement

Ce script fonctionne sur l'interface RTKLIB_Touchscreen_GUI/RTKBASE

#!/bin/bash
cd ~/RTKLIB_Touchscreen_GUI/RTKBASE
while inotifywait -q -e modify saveWGS84coordbuffer.txt >/dev/null;
do
        cat < /dev/ttyACM1 > /tmp/compass.log &
        RET=$!
        cat saveWGS84coordbuffer.txt | awk '{ printf("%s %s %s",$1,$2,$3)}' >> pointcorrige.txt
        sleep 1
        tail /tmp/compass.log | sed  '/^$/d' | tail -n1  >> pointcorrige.txt
        kill -9 $RET
done
exit 0

? faire la correction sur une valeur en m (sortie XYZ plutot que LLH) ?

kerminy/pointeuse.txt · Dernière modification : 2024/02/09 17:26 de 127.0.0.1