Page 8 sur 12

Re: Bricolage d'hiver

MessagePosté: Dim 02 Fév, 2020 22:40
par Charles
Premier test en vol du machin aujourd’hui:

Image

Je suis passé proche d’un autre avion. Avec un clic, je savais de quel type il s’agissait:

Image

Puis la tour m’a demandé de le suivre. Malgré la visibilité assez moyenne, rien de plus simple:

Image

C’est largement au-delà de mes attentes. Les photos semblent floues mais l’image est parfaitement nette sur l’écran.

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 18:11
par Charles
La tempête aura permis d'avancer. Bien que le format du premier prototype soit juste parfait pour mon avion, il demande un boîtier custom pour le faire et l'écran est quand même assez cher. J'ai donc pensé à faire une version plus petite que n'importe qui pourrait assembler sans complications et ça donne ça:

Dimensions: 9.3cm x 6.7cm x 3.4cm (avec le GPS et l'antenne, la largeur totale est environ 17cm).

Image

Image

Les 2 différences avec le gros sont que l'écran est branché par le GPIO du Pi plutôt que le connecteur DSI, ce qui exige l'utilisation du frame buffer Linux au lieu d'EGLFS, et ça fait que l'accélération graphique n'est pas supportée. Ça donne un refresh rate de 5fps, ce qui est amplement suffisant pour cette application. L'autre différence est que l'écran tactile n'est pas multi-touch donc on ne peut pas pincher pour zoomer (j'ai ajouté des boutons sur l'écran). À part ça, ça fait exactement la même chose que le gros.

Pour en fabriquer un, voici les pièces:

- Le processeur Raspberry Pi 3: https://www.amazon.ca/dp/B01LPLPBS8/ref ... pEbMZ7A9K6
- Un écran tactile: https://www.amazon.ca/dp/B01CQIPEO0/ref ... pEb7QNW471
- Une carte mémoire (64GB est overkill mais elle est moitié moins cher qu'une 32GB!): https://www.amazon.ca/dp/B06XX29S9Q/ref ... pEbV9KQADS
- Un GPS: https://www.amazon.ca/dp/B07QRGK7ZK/ref ... pEbRXY2YEA
- Une antenne ADS-B: https://www.amazon.ca/dp/B076GWVNHS/ref ... pEbZXKYHY2
- Un power supply avec un connecteur micro-USB: https://www.amazon.ca/dp/B0131AYG8C/ref ... pEbH6E5YWS
(ou pour une prise 12V: https://www.amazon.ca/dp/B00OY0G2LI/ref ... pEb23N1NES )

L'écran vient avec le boîtier qu'on voit sur les photos. Ça s'assemble sans aucun outil à part une perceuse pour faire un trou dans le boîtier pour fixer l'antenne.

Une fois les pièces reçues, il faut télécharger le software sur un PC: http://flt.l5.ca/pi/adsbSPIv3.zip

Extraire le fichier piadsb.img qui est dans le fichier zip
Télécharger le logiciel Win32 Disk Imager d'ici: https://sourceforge.net/projects/win32d ... t/download
Insérer la carte MicroSD dans un port de l'ordinateur (ou, si l'ordinateur n'a pas de lecteur de cartes SD ou microSD, avec un adapteur comme celui-ci https://www.amazon.ca/dp/B0779V61XB/ref ... pEb19V0QC4 )
Exécuter Win32 Disk Imager et sauvegardez le fichier piadsb.img sur la carte SD
Insérer la carte SD dans la fente à cet effet sur le Raspberry Pi
Brancher le câble d'alimentation. Les avions commenceront à apparaître

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 18:13
par Charles
Au fait, la prochaine étape sera de faire marcher ça sur une tablette ou un téléphone Android. Le software devrait être 100% portable tel quel en théorie donc ça devrait pas être trop compliqué. Suffira de brancher l'antenne dans le port USB de la tablette ou du téléphone et lancer l'application. À suivre...

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 19:40
par Eric GARF
Cool, ça sera ainsi facile à faire étant donné que la job de bras est faite !

Qu’est-il arrivé de la portion horizon artificiel car par ma part, c’est celle-ci qui m’intéresse étant donné que je me suis déjà fait un Stratux et que maintenant j’utilise un Scout sur mon ipad avec ForeFlight ?

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 20:22
par Charles
Après le traffic sur Android, mon prochain projet sera de combiner l’horizon avec le trafic. Quand j’ai fait l’horizon il y a plusieurs années déjà, c’était avec une technologie d’affichage qui déjà désuète (tout le code de calcul d’orientation est encore state of the art quand même). Je dois donc refaire le code d’affichage. Pas une énorme job mais au rythme où je fais ça, ça va prendre quelques mois encore.

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 20:34
par 120140415
Wouaouuuu !!! Il y a longtemps que je n'étais pas venu... Spectaculaire et merci pour les multiples partages !!!

Je viens de repasser toutes les pages de ton fil de discussion et ça suscite deux questions :-)

1) Oups, tu viens de réponde à Eric concernant la cohabitation avec l'horizon :-)

2) Y a t'il une procédure automatique de rechargement des cartes (mises à jour) ?

En passant, le laboratoire de robotique de mon ancien employeur, pas trop loin du tien (Varennes), disposait (et dispose très probablement toujours) d'une imprimante 3D pour titane mais utilisant un canon à électron (sous vide) plutôt qu'un laser. J'ignore si ça confère des qualité métallurgiques différentes mais le cas échéant, ça pourrait valoir la peine que vous échangiez.

Merci encore !
Pierre

Re: Bricolage d'hiver

MessagePosté: Ven 07 Fév, 2020 23:01
par Charles
Pour la deuxième question, oui, j'ai fait un script bash qui trouve les dernières versions disponibles d'une série de cartes VFR et IFR Low sur le site de la FAA, télécharge les fichiers zip correspondants, extrait le fichier geoTIFF du zip, génère les "tuiles" slippy maps en format TMS dans un répertoire de staging, génère un index des cartes disponibles (pour mettre les valeurs dans le dropdown dans l'appli), et copie tous le contenu du répertoire de staging sur le Pi.

Ça prend environ 15 minutes pour traiter 7-8 cartes sur un PC à 8 coeurs en parallèle. On pourrait mettre le script sur le Pi mais ça prendrait probablement quelques heures pour faire une mise à jour.

Mais mon plan était de mettre ça dans l'appli directement avec un menu pour choisir et mettre à jour les cartes. C'est sur ma liste.

Merci pour le tuyau concernant l'imprimante au titane, je vais en parler à mes collègues.

Tiens, le script pour traiter une carte:

Code: Tout sélectionner
#!/usr/bin/bash

# Usage: processChart.sh <zipfile> <tiles folder> <target> [<additional gdal_translate options>]

# Extract a tif chart from a <zipfile>, tile it into <tiles folder> and upload it to a
# <target> folder. Pass optional <additional gdal_translate options> to gdal_translate
# before tiling.

progdir=`pwd`
dir=`mktemp -d`
pushd ${dir}

# Extract zip filename from URL
zip=`basename $1`

# Download zip file
wget $1

# Extract tif filename from zip file and extract file
tif=`unzip -l ${zip} *.tif|sed -n '4 p'|cut -c 31-`
unzip $zip "${tif}"

vrt=$2.vrt
folder=$2

# Tile chart
gdal_translate -of vrt $4 "${tif}" $vrt
${progdir}/gdal2tilesG256.py -z 1-11 -d $vrt

# Copy chart to staging folder
rm -rf $3/${folder}
mv $folder $3

# Remove temporary files
popd
rm -rf ${dir}

Re: Bricolage d'hiver

MessagePosté: Dim 09 Fév, 2020 11:42
par 120140415
Merci Charles !

Hum... je viens d'apprendre que le labo aurait disposé de l'imprimante. Un peu surpris mais ça reste peut-être une piste à explorer. À l'origine, cette technologie est (était) notamment utilisées pour imprimer des prothèses (le titane est "bio-compatible").

Re: Bricolage d'hiver

MessagePosté: Ven 14 Fév, 2020 11:49
par Charles
Plus récente version avec un écran de 3.5" et un boîtier pas mal plus clean ( https://www.amazon.ca/dp/B07S72JXBV/ref ... rEbCS8QEDQ ). C'est juste parfait comme grosseur pour mettre sur le dash (celui avec l'écran de 7" quelques posts plus haut est un peu trop gros pour cette utilisation). Il me reste 3-4 affaires de software à faire et je passe à un autre projet (e.g. choisir et mettre à jour les cartes IFR et VFR de la FAA par un menu, choisir un réseau WiFi dans l'appli (i.e. sans ouvrir une console Unix), permettre la rotation de l'écran de 180 degrés pour mettre le connecteur de power par en bas ou de 90/270 degrés pour voir l'appli en forma portrait, etc.)

Image

Image

Image

Re: Bricolage d'hiver

MessagePosté: Ven 14 Fév, 2020 20:08
par Bob Cadi
C'est vraiment du travail d'expert.

;)p ;)p ;)p

Bob

Re: Bricolage d'hiver

MessagePosté: Dim 16 Fév, 2020 12:38
par pilot1
Wow très intéressant !!

Stephan

Re: Bricolage d'hiver

MessagePosté: Dim 08 Mar, 2020 21:28
par Charles
Après quelques vols avec le bidule, c’est vraiment génial. Mais j’étais à New York aujourd’hui et il va falloir penser à filter plus intelligemment. J’ai donc ajouté un bouton pour ne pas montrer le traffic à plus de 5000’ de différence et un autre pour éliminer les avions à plus de 50 milles. Je vais également ajouter une pellicule antireflets!

Image

À un moment donné, le bidule suivait 168 autres avions et le CPU en arrachait un peu. Je vais déplacer certaines fonctions du front end QML vers le backend C++ pour régler ça.

Re: Bricolage d'hiver

MessagePosté: Lun 09 Mar, 2020 12:06
par GéPé
Charles a écrit:...À un moment donné, le bidule suivait 168 autres avions et le CPU en arrachait un peu. Je vais déplacer certaines fonctions du front end QML vers le backend C++ pour régler ça.


C'est ce que j'allais te suggérer... :crazy: :shock: :wtf: :mrgreen:

Guy
P.S. Félicitations pour ton bidule!

Re: Bricolage d'hiver

MessagePosté: Lun 09 Mar, 2020 16:14
par Bob Cadi
Trop hot !

Bob

Re: Bricolage d'hiver

MessagePosté: Lun 09 Mar, 2020 18:11
par martind2112
Charles a écrit:Avec les cartes de la FAA stockées directement sur le bidule (i.e. pas besoin de connexion internet pour que ça marche) et, tant qu’à y être, une vue en perspective:

Il faut que je retrouve les screenshots de mon vieux projet... elles sont identiques aux tiennes, perspective incluse et de la même région! :o

Re: Bricolage d'hiver

MessagePosté: Dim 12 Avr, 2020 11:26
par martint
Salut Charles,
Il semble que le lien pour le download de ta version avec écran 3.5 n'est pas fonctionnel.
Avec toute cette histoire de confinement on se trouve du temps pour continuer les projets. si c'est possible, j'aurais aimé faire un essai.
Merci
Martint

Re: Bricolage d'hiver

MessagePosté: Mar 14 Avr, 2020 18:07
par Charles
Désolé, j'ai fait pas mal de changements ces derniers temps. La nouvelle image est ici:
- HDMI: http://flt.l5.ca/pi/adsbHDMIv3.zip
- SPI: http://flt.l5.ca/pi/adsbSPIv3.zip

J'ai fait un fichier d'image du filesystem plutôt que du SD Card complet. Il est pas mal plus petit (environ 4GB compressé au lieu de 12GB avant) et il devrait pouvoir être écrit sur n'importe quelle carte Micro SD de n'importe quelle taille pourvu qu'elle soit d'au moins 16GB. Il faut utiliser le programme BalenaEtcher https://www.balena.io/etcher/ pour flasher l'image et non Win32DiskImager.

IMPORTANT: La première fois que tu allumes le machin après avoir mis une carte MicroSD fraîchement flashée, il faut le rebooter après le premier démarrage. Dès l'apparition de l'écran radar au premier démarrage, simplement débrancher le bidule et le rebrancher. C'est parce que la première fois que le système est lancé, il redimensionne la partition principale pour utiliser tout l'espace disponible sur la carte MicroSD. Sans ça, il est en situation de disk full et le comportement sera aléatoire.

Re: Bricolage d'hiver

MessagePosté: Mar 14 Avr, 2020 18:08
par martint
Merci beaucoup Charles, Je vais aller essayer tout ça.
J'ai encore un 7 po HDMI mais je regarde un 5 GPIO, parce qu'un 3.5 je crois que mes yeux de quinqua risquent de pas tenir le coup :lol:
J'aime ton ajout d'accès WiFi, c'est excellent et sera bien pratique comme tu l'as expliqué pour d'autres étapes.

Ton projet a aussi convaincu mon copain pilote lui-aussi, mais pas geek pantoute, à se mettre au clavier et essayer tout ça. Alors Bravo! ça génère de l'intérêt, des questionnements, c'est juste bon, ça fait travailler la matière grise! :thumbup:

A+
Martin

Re: Bricolage d'hiver

MessagePosté: Mar 14 Avr, 2020 18:26
par Charles
.

Re: Bricolage d'hiver

MessagePosté: Mer 15 Avr, 2020 17:00
par martint
Bonjour Charles,
En ayant un écran 7po, le Pi ne démarre pas correctement. Je suis donc allé modifier le fichier config.txt sur la carte SD pour mettre les paramètres propres à mon écran. C'est ce que j'ai du faire dans une de tes versions antérieure et ça fonctionnait très bien.
Après la modif de config.txt, le Pi boot mais on se rend jamais au display des cartes. J'arrive au boot prompt Linux $:
Ce qui est pas pire puisque ça me donne accès au contenu de l'OS. Je trouve startAdsb.sh et je fais un vi dessus pour modifier les paramètres de démarrage, mais malheureusement le Filesystem est Readonly et je ne peux le modifier.
Ça m'a semblé étrange qu'il soit readonly et je me disais que si le Pi avait booté correctement et que j'avais essayé via Wifi et SSh d'aller modifier le script de démarrage, est-ce que j'aurais aussi un message de Readonly???

Prochaine étape, j'essaie de le booter à l'aveugle, avec le fichier config.txt original, donc sans écran et voir si le processus complète correctement.
Martin