Aller au contenu


gerardosamara

Inscrit(e) (le) 21 mars 2016
Déconnecté Dernière activité janv. 31 2020 04:26
-----

#97455 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 17 juillet 2018 - 12:10

Bonne idée @Melmet ,

 

oui je pourrais vais faire un tuto pour la communauté avec par exemple ce type  d'écran de pilotage robot

 

 Screenshot_20180704-074510.png




#97427 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 15 juillet 2018 - 05:45

Bon ...  mise à jour doc architecture réseau  vraiment high level

 

Architecture reseau rover1.PNG

 

 

 




#97403 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 13 juillet 2018 - 03:53

Suite pour continuer sur de l'évolution de l'appli Android .

 

Pour rappel le robot mobile peut etre controllé à partir d'un smartphone et cet appli Android ou bien à partir du logiciel  domotique en fonction de ma présence ou non dans ma maison (  En fonction état  du switch selector  House Mode ) ,  le mode controle du robot à partir du smartphone est autorise seulement si Home ( je suis dans la maison ) sinon le robot est controllé par le logiciel domotique.

 

Robot selector switch.PNG

 

Mais sur l'écran d'accueil de l'appli Android du smartphone il manquait l'information du mode de controle du robot vu du logiciel domotique , pour qu'il n'y ait pas 2 gestionnaires simultanés du robot.

 

C'est chose faite avec la version 0.28 de l'app Android

 

Le principe de la fonction "Etat ou Test mode robot"  est le suivant  :

 

1- Suite appui du bouton "Test mode Robot" , l'app Android interroge l'état du selector switch "mode robot" coté domotique par un message JSON de lecture d'état de ce selector switch

 

=> http://Ip:PortRpi3 domoticz /json.htm?type=devices&rid=Device Id du selector switch

 

2-  En réponse  le logiciel domotique réponds par un un message contenant des données relatives à ce selector switch au format JSON  qui est traité par l'app Android , grace à un ajout de blocks MIT INventor2 dans l'ecran d'accueil de l'app Android  ( Mode robot ou mode smartphone )

 

J'ai un peu galéré pour décoder les données Json recues et en extraire l'état du selector switch  ( Controle par Smartphone ou Domotique).

 

 

Ecran d'accueil de l'appli Android de controle du robot

 

 

App android robot mode.png

 

 

Note : Pour l'instant je n'ai pas finalisé ce que pourrait etre l'écran "Controle du robot par domotique" mais cela devrait etre un genre de dashboard avec au minimum la carte de localisation , les coordonnées du robot en x,y,theta dans son environnement , retour vidéo et données diverses comme tension batteries etc

Je pourrais m'inspirer sur ce qu'à fait @serverperso




#97209 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 08 juillet 2018 - 05:18

Retour sur l'appli smartphone Android  ( MIT App Inventor2 ) pour ajouter un test de connexion au RPI3 supportant le logiciel domotique ( Bouton Test RPi3 Domo et son résultat )

La vision de nuit de ce modèle de caméra PI V2  est très faible .. mais on le sait.

 

Cela permets de savoir tout de suite si la solution réseau requise pour ce robot est opérationnelle.

 

Restera à définir ce que l'écran "Controle du robot par domotique"  doit contenir ( au moins la position du robot en x,y,theta etc )

 

App Android ajout test Rpi Domo.jpg




#97161 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 06 juillet 2018 - 11:27

Oui @mike118 , après avoir lu ta proposition ,  une navigation basée sur une carte connue ( environnement de ma maison ) avec l'algorythme Monte Carlo est une solution pour rester simple , les amers sur la carte étant la base de recharge et l'endroit ou se trouvent les capteurs de détection de mouvement.

 

1) Cartographie

  Construction de la carte
  Position initiale du robot sur la carte à partir de ses capteurs (N poses initiales du robot)
                            et/ou par un marqueur situé sur la borne de récharge

2) Localisation (incrémentale)
 

Prédiction estimée de la position courante du robot (x,y,theta) à partir de données fournies par des capteurs
 Mesure du mouvement du robot par l'odométrie
 Correction des erreurs de position venant de l'odométrie à partir des informations recues des capteurs

3) Planification

  Déplacer le robot de sa position actuelle à sa destination (base de recharge ou zone d'un détecteur de mouvement ayant déclenché ) en indiquant un chemin entre la position d'origine  et de destination
 

En ce qui concerne le Lidar , il n'est pas nécéssaire en plus des capteurs de distance ultrasons existants + odométrie pour la localisation mais  reste à voir son utilité éventuelle pour détecter les obstacles ou confirmer un intru dans  la zone d'un détecteur de mouvement.

 

Tout cela reste  du domaine de la reflexion ..  ou du cahier des charges  , pour l'instant




#97070 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 04 juillet 2018 - 03:01

Dans cette version V2 du robot , la webcam USB est remplacée par la PI Cam V2 , l'application "motion" continuant à gérer le flux video de la caméra
Au départ j'étais parti sur la version NoIR à vision nocturne mais les performances ne sont pas là.

Configuration de la PI CAM V2 au niveau RPI3

- Activer la fonction caméra dans le PI par sudo raspi-config
- Activer le driver de la caméra : sudo modprobe bcm2835-v4l2
- Activation du driver à chaque démarrage du PI :
                sudo nano /etc/modules et ajouter cette ligne à la fin du fichier :  bcm2835-v4l2
- Verifier l'image de test généré par "raspistill -v -o test.jpg

Configuration de "motion" dans /etc/motion/motion.conf
 
- Paramètres par défaut pour résolution 640 x 480 et 10 fps
- Détection de mouvement non activé pour l'instant
- Vérification du flux video sur le port 8081 du RPI
- Affichage du flux video dans l'app android de pilotage du robot afin de voir ce que voit le robot

Screenshot_20180704-074537.png
 
 

 

 

 
 
 




#97021 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 02 juillet 2018 - 10:44

De retour après quelque temps éloigné de la robotique ...  pour préparer l'ascension du plus haut mont du Costa Rica au mois de mai 2018 puis pour accueillir de la famille :

 

- Le Chirippo culmine à 3820m

- Le départ se fait à 1500 m donc ca fait 2300m de dénivelé sur 19 km

- 1 jour pour monter ( durée d'ascension 8h 00 ) et 1 jour pour redescendre après une nuit dans un refuge pas loin du sommet

 

La routine .. non c'est quand meme difficile comme parcours ... avec la preuve au lever du soleil

 

sommet chirippo1.jpg




#96413 Réorganisation du forum

Posté par gerardosamara - 15 juin 2018 - 03:57

On pourrait déplacer les robots "aspirateurs" et de " surveillance " dans domotique =)

Non , ce que je voulais dire est que dans cette catégorie "Domotique" , il ne soit decrit que l'impact coté Domotique de ces robots aspirateurs ou surveillance etc , pas le robot de surveillance lui même par ex

http://www.robot-maker.com/forum/topic/11450-integration-de-mon-ugv-dans-ma-domotique-basee-sur-rpi3domoticz/




#95668 Formation Robotique à thème ça vous intéresse?

Posté par gerardosamara - 22 mai 2018 - 03:50

@Mike ,

 

Le concept de ce service est intéressant mais reste à savoir si il y a un "business plan"  derrière  pour en faire une activité lucrative.

A mon avis le déplacement physique est un frein .

 

Pourquoi ne pas offrir ce type de service sous forme de MOOC payant pour la réalisation de fonctions robotiques ( théorie et pratique ) avec un support matériel robotique imposé pour suivre les cours ( tout le monde ou presque à un RPI , un Arduino etc ...)

 

....  My 2 cents




#93767 Module 4 relais compatible Arduino

Posté par gerardosamara - 26 mars 2018 - 01:51

Super et merci pour vos réponses.

C'est pour commuter du 125V ( normes U S ici ) et commandé par Arduino UNO donc en 5v.

Madame m'a demandé de transformer un vieux frigo en séchoir à saucissons ( c'est un produit plutôt rare ici ) donc avec :

- un Arduino UNO et un module DHT22 pour lecture temp/hygrométrie
- cette carte relais pour la mise on/off du frigo et de l'humidificateur selon les besoins température et humidité
- un afficheur LCD pour visualiser la temp/humidité à l'interieur du frigo


#93493 Debian sur Windows 10 sans VM

Posté par gerardosamara - 12 mars 2018 - 05:32

La version courante (et récente) de Windows 10 contient un sous systeme Windows pour Linux  qu'il faut activer , et ensuite if faut installer  une distribution  Linux (Debian par défaut).

 

Cela permets de se passer de dual boot ou de VM ( HyperV ou autres application de virtualisation comme VirtualBox ) , pour faire tourner une distribution Linux dans Windows 10 donc c'est plutot séduisant  ( mais  en mode commande )  .

 

La procédure est plutot intuitive et sans difficulté.

 

1) Activation du sous système Linux dans windows10

 

=> paramètres -> mise à jour sécurité -> Mode développeurs ... puis "fonctionalités windows" -> Sous Syteme Windows Pour Linux )

 

 

2) Téléchargement de Debian pour Windows 10 à partir du windows store et ensuite installation de Debian

 

Je n'ai pas encore testé pour voir si il y a des limitations par rapport à une VM ( ROS ? )

 

WSL Debian.PNG




#93431 914 pc bot Évolution

Posté par gerardosamara - 10 mars 2018 - 03:58

 

La version courante (et récente) de Windows 10 contient un sous systeme Windows pour Linux  qu'il faut activer , ensuite if faut installer  une distribution  Linux (Debian par défaut)

 

=> paramètres -> mise à jour sécurité -> Mode développeurs ... puis "fonctionalités windows" -> Sous Syteme Windows Pour Linux )

 

Cela permets de se passer d'HyperV ou autres application de virtualisation ... donc c'est plutot séduisant.

 

Je n'ai pas encore testé pour voir si il y a des limitations par rapport à une VM ( seule l'activation de ce sous système dans windows 10 , le téléchargement de Debian pour Windows 10 à partir du windows store et son installation ont été faits  sur mon PC Win10 )

 

 




#92257 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 05 février 2018 - 04:54

Reprise du chassis avec une meilleure disposition des cartes électroniques .

La partie mécanique est presque terminée  .. reste à installer un interrupteur puis ce sera le cablage  avant de mettre la structure du second étage

 

nouveau chassis ed1.jpg




#92164 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 03 février 2018 - 06:34

Les pièces Makeblock manquantes sont arrivées dans la matinée et j'ai pu faire le nouveau chassis avec le 1er niveau regroupant le RPI , l'Arduino Mega et le convertisseur 5V.

 

Un deuxième niveau recevra les autres équipements comme capteurs et caméra ..

 

... pas facile de se transformer en maquettiste !

 

EDIT : Photo re-postée car à l'envers  . Merci @Levend

 

nouveau chassis.jpg




#92017 [Projet Rover 2WD] Mon robot de surveillance mobile et télécommandé

Posté par gerardosamara - 29 janvier 2018 - 09:08

En attendant de recevoir la commande complète de profilés Makeblock pour faire le nouveau chassis , je me suis penché sur l'intégration du robot dans le logiciel domotique Domoticz ( suite réponse #175 ).

 

Finalement la méthode "requests.post" coté client domoticz est abandonnée au profit de la méthode "socket TCP" déja implémentée dans le RPI du robot pour le dialogue avec l'app android de pilotage du robot.

 

La connexion du client domotique "domoticz" avec le serveur du robot (API python) a été testée avec succès au niveau socket TCP ( cf screenshot)

 

La prochaine étape sera de tester les messages suivant et déja disponibles dans l'Api python du robot pour le dialogue avec l'app Android du robot  , dans le module d'initialisation du dialogue avec le robot (module "init_robot.py ) .

Ce sont les messages communs app android/logiciel domotique de pilotage du robot soit par l'app android soit par la domotique de test de la configuration réseau du robot:

  <test_api_python>   
  <test_arduino>
 

 

connexion robot et domoticz.PNG