Projet KAPduino : Etat des lieux

Les radios commandes, déclencheurs divers et variés. Les circuits électroniques et autres bidouillages.

Projet KAPduino : Etat des lieux

Messagede Deltakap le Mar 01 Juin 2010, 12:13

Un post pour faire un point sur les avancées (ou non... comme moi) et les désirs de chacun en matière de Kap avec Arduino.

On a tous (les adaptes de l'arduino) notre script autokap plus ou moins rodé... et qui doit satisfaire plus ou moins chacun de nous.

De mon coté, ce n'est pas une fin en soi, et même si la nacelle fonctionne très très bien en autokap depuis des mois, il va falloir que je passe un jour à la vitesse supérieure (oui, enfin pas que pour ça) et envisager le retour à la radiocommande... ça fait au moins 6 mois que ça traine :?
Le temps passe, et comme ça n'avance pas des masses... alors je viens chercher ici un peu de motivation ;)

Jusque là, ce "travail", plus ou moins en commun, a permis quand même de montrer qu'il était possible assez simplement de construire quelque chose qui fonctionne avec cet arduino, mais aussi que les désirs et réalisations de chacun ont fait pas mal avancer le schmilblick, comme les réflexions sur les déplacements de la nacelle, la commande de l'apn, le comment faire, et des choses plus spécifiques comme le déclenchement des canon chdkés ou des GX100/200 par l'usb, etc...


J'ai quand même essayé récemment le décodage du signal PPM de la RC radiomodélisme. Ce décodage lui-même fonctionne très bien, la difficulté semble être de repasser à coup sûr en Autokap en cas de perte de signal.
Bon, ce n'est pas, de toute façon, ce que je veux faire à terme, c'était juste pour essayer.... et ça n'a été testé qu'une fois en vrai lors de la dernière séance (où le vent capricieux exigeait plus de récupérer le roller que de voir si la radio fonctionnait nickel!)

A mon avis (et quitte à radoter), cet émetteur RC classique, qui consomme 200mA en permanence, n'est pas adapté à ce que l'on fait, même si c'est évidemment la solution la plus évidente et la plus "simple" à mettre en oeuvre puisqu'en vente libre.

Ce que je veux faire depuis le début, c'est utiliser un modem, permettant donc une liaison bidirectionnelle entre le kaper et la nacelle (en half-duplex, chacun son tour quoi).

En gros, fiabilité de fonctionnement et consommation plus faible sont au programme du futur système.


Donc, comme je n'avance à rien depuis des mois, je crois que ce post va être du style du projet "minitélécommande" de l'an dernier (en plus accessible à tous puisqu'avec l'arduino) pour y noter les réflexions, les 'pourquoi?', les 'comment?', et si possible l'avancée (j'espère) de ce projet.

Allez hop, le nouveau carnet de route.... est en route... J1 ;)
Au programme, les RCs classiques et alternatives, le tout autour de l'arduino.


PS: n'hésitez pas à dire où vous en êtes avec l'arduino, où vous voulez aller (ça a déjà été évoqué, mais les choses ont peut-être évolué)... et puis les bonnes idées naissent comme ça... le passage automatique en autokap, par exemple, a été inventé par quelqu'un qui ne pensait pas que c'était réalisable... hein, Michel ;)
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 01 Juin 2010, 12:42

Bonjour,

Content que tu relances le sujet Gilbert. Pour ma part, je travaille sur une liaison entre deux Arduino via des modules Xbee 2.4 Ghz. Je reçois demain tous le matos commandé chez Sparkfun :mrgreen: .

Mon idée est donc de pouvoir commander, depuis une petite télécommande, la position de servos et aussi de récupérer des infos de la nacelle (message reçu, liaison établie (pour le passage automatique en autoKAP), ...). J'ai fait un petit cahier des charges sur mon site (l'ensemble du projet est dans une rubrique ad hoc). J'ai aussi réfléchi à une messagerie très simple entre l'émetteur et la nacelle.

J'ai aussi réalisé les programmes d'émission de trames et de décodage des trames reçues (en espérant avoir couvert la plupart des cas d'erreur).

Bon, ça avance, mais lentement. Aujourd'hui, je mets les éléments au fur et à mesure sur mon site (m'obliger à écrire pour des personnes susceptibles de lire l'article me fait avancer et je sais pas si le forum était l'endroit le mieux adpaté pour cela).

Dans l'attente de mon matériel, j'essaie de contrôler un encodeur incrémental (c'est ce que je voudrais utiliser à la place d'un joystick ou d'un manche pour contrôler les servos). C'est pas encore fait mais la solution n'est pas loin.

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Mar 01 Juin 2010, 17:34

Moi aussi j'ai renoncé à la radio commande RC car trop volumineuse, encombrante, ...etc. Et finalement, le signal PPM est assez pénible à exploiter.

Au début j'ai pensé le récupérer directement sur le récepteur... ça marche, mais soit ma radio n'est pas fiable, soit c'est le récepteur. Alors du coup, les valeurs obtenues étaient difficiles à "lisser" pour contrôler de manière fiable une nacelle robotisée.
Après, j'ai regardé chez DIY Drones ceci : http://store.diydrones.com/product_p/br-ppme.htm . En fait c'est une carte avec un chip Atmel (le même que pour l'arduino), mais dédié à l'écoute des voies du récepteur. Et je suis resté dubitatif... L'idée est séduisante, mais... car il y a un mais. Comment font-ils pour qu'un quasi arduino arrive à écouter simultanément 8 voies, alors qu'on galère pour en écouter 3 ? Et là un doute s'est installé... mais je garde ça sous le coude.

Et j'en suis venu à penser qu'il fallait faire communiquer deux arduinos. Ok, les modules X-Bee et le protocole ZigBee sont bien tentant... mais très cher je trouve. Et puis il faut prendre des modules qui ont une portée suffisante, donc pas les premiers prix.
J'aime bien le 2.4GHz mais ce qui le rend sympa est la compacité de l'antenne.

Et puis, en fouillant sur la bay, je suis tombé sur cette photo :
http://droboticsonline.com/ebayimages/ArduinoInputshield.jpg (je la mets en lien car elle est grande)

Et que voit-on ? Un Arduino Duemilanove surmonté d'un module Joystick, accompagné d'un module de transmission sans fil APC220 (434 MHz... mais changeable)... Bref une radiocommande de poche.
J'ai commandé le tout... et j'ai un soucis avec les modules APC220. Pas de communication entre eux, malgré la vérification des configurations des-dits modules. La portée annoncée est de plus de 1000m, mais pour moi, pour l'instant, rien. Je me suis tapé pleins de post sur des forums, mais visiblement je dois être le seul dans ce cas... mais je persévère. J'ai contacté le vendeur, qui m'a répondu et cherche une solution sympa à mon problème.

Sinon, en cherchant des solutions à mon soucis, car c'est juste ce qui me manque (la communication RX/TX sans fil), j'ai lu que les modules APC220 sont aussi vendus sous d'autres noms (c'est souvent le cas pour des bidules venant de Chine). On les trouve chez Sure sous l'appellation "Sure RMB-CM12111". La paire est vendue en Chine pour un peu moins de 30 $ sans les frais de port... donc pas cher .
C'est la piste que j'ai choisi de suivre, car ces modules sont "transparents". En effet, on peut tester une communication RX/TX (UART) filaire entre 2 arduinos pour valider le concept. Puis on n'a plus qu'à remplacer les fils par les modules... et normalement ça fonctionne directement sans problème (sauf pour moi). J'ai du hériter d'un module défaillant... mais impossible de savoir lequel. J'espère que mon vendeur sera conciliant, mais en tous les cas j'ai prévu un doublon chinois (le transport est plus lent).

Il existe d'autres modules de transmission RF plus simples, moins cher mais ayant moins de portée. En plus, les APC220 ont une antenne vraiment réduite. Tout tient dans la main... même avec la pile 9V.

Voili voilou et pourvu que ça marche...

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede ormes le Mar 01 Juin 2010, 18:12

Une fois de plus, je vais suivre ça avec intérêt, mais sans pouvoir, hélas, apporter ma contribution. Je sais souder, et aussi que U=RI. Maigre bagage, j'en conviens, et pour ce qui est des éléments techniques abordés dans les posts "électronique" je reste à peu près comme une poule devant un couteau. Je profite donc de cette misérable confession pour réitérer l'idée, pour ceux qui ont un système abouti (existant ou à venir), d'un petit pdf (ou autre format) pour les nuls (genre: "tu prends le truc noir avec les 8 pattes, et tu le soude sur la carte dans le sens indiqué sur le schéma", y ajouter "banane" serait redondant mais pas interdit). Je lorgne depuis la présentation de Maneke, sur le camremote, mais une solution home made offre toujours un petit plus.
Avatar de l’utilisateur
ormes
Plus de 1000 messages
 
Messages: 1233
Inscription: Mer 10 Octobre 2007, 11:13
Localisation: Près de Nancy

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 01 Juin 2010, 19:05

J-C a écrit:Ok, les modules X-Bee et le protocole ZigBee sont bien tentant... mais très cher je trouve.

C'est vrai, c'est pas donné (une trentaine d'euros chez sparkfun pour les 60 mW pour une portée qui peut monter jusqu'à 1000 m). Mais comme mon niveau en électronique est moins que moyen, j'ai préféré cette solution car Internet regorge de schémas électronique et d'exemples mettant en œuvre cette techno. Bon, après je me fais plaisir (surtout pour la programmation). Et pour Pascal, promis, un effort sera fait !

Et puis, quand tout fonctionnera : il y aura ça : http://www.sparkfun.com/commerce/product_info.php?products_id=9334 pour le retour vidéo. A voir.
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede André le Mar 01 Juin 2010, 19:07

Je suis comme Ormes : admiratif et attentif !
Malgré une formation d'électronicien ( il y a longtemps ), j'avoue ne pas y comprendre grand chose...
Mais l'idée d'une radio commande qui tiendrait dans le creux de la main ou de la poche est vraiment séduisante.

Juste une remarque sur le joystick : moi je préfèrerais des boutons rotatifs et repérés qui permettraient de connaître ( à peu près... ) l'orientation de la nacelle et son inclinaison sans avoir besoin d'une paire de jumelles ( mais c'est sans doute beaucoup demander... :mrgreen: ).
Très intéressant en tous cas.
Continuez les gars : on est tous derrière vous ! ( Si, si ! :wink: ).

Edit : L'option retour vidéo est arrivée pendant que j'écrivais. C'est vrai que ma remarque ne tient que dans le cas où il n'y en a pas...
Avatar de l’utilisateur
André
Plus de 8000 messages
 
Messages: 9269
Inscription: Dim 21 Septembre 2008, 17:02
Localisation: Au nord de Brest même

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 01 Juin 2010, 19:45

André a écrit:Juste une remarque sur le joystick : moi je préfèrerais des boutons rotatifs et repérés qui permettraient de connaître ( à peu près... ) l'orientation de la nacelle et son inclinaison sans avoir besoin d'une paire de jumelles ( mais c'est sans doute beaucoup demander... :mrgreen: ).

Je me suis lancé la-dedans alors que je suis néophyte en matière de KAP (mais bon, j'ai une petite idée sur "là où je veux aller").
En tous cas, je suis arrivé aux mêmes conclusions que toi André : utiliser un bouton rotatif. Deux solutions : le potentiomètre (assez facile de mise en œuvre sur Arduino), mais un peu limité ou l'encodeur incrémental. On trouve ce type de composant sur la Hi-Fi pour par exemple monter le volume. Ce sont des boutons que l'on peut tourner autant que l'on veut. Il suffit d'afficher un angle sur un afficheur pour connaître la position d'une nacelle ... stable, bien sur !

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Mar 01 Juin 2010, 20:55

André a écrit:Juste une remarque sur le joystick : moi je préfèrerais des boutons rotatifs et repérés qui permettraient de connaître ( à peu près... ) l'orientation de la nacelle et son inclinaison sans avoir besoin d'une paire de jumelles ( mais c'est sans doute beaucoup demander... :mrgreen: ).
Très intéressant en tous cas


Ben non. C'est faisable. Le mieux est d'avoir, pour le pan, un servo-treuil, qui tourne déjà à plus de 360° sans modif. Puis, on contrôle les positions du tilt et du pan avec deux potars. Pour un servo modifié 360°, c'est plus coton, car il faut "encoder" les positions. On utilise un potar, mais pour chaque position du potar, cela doit correspondre à un temps de rotation du servo pan en fonction de la dernière position occupée... Pas simple, mais faisable.

Avec le joystick (je mise aussi sur le retour vidéo), je contrôle le tilt et le pan, juste du pouce. Il y a un bouton intégré au joystick, mais il n'est pas pratique pour en faire un déclencheur. Aussi, j'utilise un des deux autres boutons. 9a fonctionne en filaire. Vivement des modules sans fils fonctionnels.

Après, il est aussi possible de greffer un écran LCD à la "radiocommande", et là, c'est la porte ouverte à plein de chose :
- se tenir informé du niveau de la batterie embarquée
- mettre un module boussole/compas et se tenir informé de l'orientation cardinale
- utiliser la "radiocommande" pour sélectionner dans un menu (affichage LCD) un programme autokap alternatif
- etc...

Et tout ça peut tenir dans le creux de la main... C'est chouette la robotique, et ce n'est pas vraiment de l'électronique, mais plutôt de la programmation. Faire un tuto ça risque de prendre pas mal de temps. Je compte bien en faire un mais une fois que j'en aurai fini avec la partie sans fil (sinon, vous n'êtes pas prêt de le voir...).

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede fxix le Mer 02 Juin 2010, 9:25

et bien moi j'ai une nacelle arduino qui fait de l'autokap (programmée avec vos conseils à tous) et avoue attendre que vous trouviez une solution simple à mettre en œuvre pour un néophyte en électronique et en soudure. :roll:
Fabien XIX
aéro-photographe... mais plus assez à mon goût
f19.fr
Avatar de l’utilisateur
fxix
Plus de 1000 messages
 
Messages: 1038
Inscription: Dim 13 Avril 2008, 9:00
Localisation: presque à Tours

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Mer 02 Juin 2010, 11:09

Eh bin, il suscite toujours de l'intérêt cet arduino :wink:

alpaph a écrit:J'ai fait un petit cahier des charges sur mon site (l'ensemble du projet est dans une rubrique ad hoc).

Je suis l'affaire de près... et ce nouveau fil n'est pas étranger à tes posts sur ton blog ;)
Perso, je préfère évoquer tout ça sur le forum (pour les remarques très riches qui vont partir de tous les cotés et l'émulation qui va s'en suivre). Mais le blog a aussi l'avantage de pouvoir présenter quelque chose de plus structuré et personnel, et de plus facile à lire.... il n'y a pas double emploi.


alpaph a écrit:Mon idée est donc de pouvoir commander, depuis une petite télécommande, la position de servos et aussi de récupérer des infos de la nacelle (message reçu, liaison établie (pour le passage automatique en autoKAP), ...). J'ai fait un petit cahier des charges sur mon site (l'ensemble du projet est dans une rubrique ad hoc). J'ai aussi réfléchi à une messagerie très simple entre l'émetteur et la nacelle.

Je pense aussi que la liaison bidirectionnelle devrait nous apporter un gros +, comme supprimer les servos qui bloblottent, s'assurer de la liaison entre le sol et la nacelle (et surtout la perte de liaison), récupérer des infos de la nacelle (état des batteries en vol, pourquoi pas altimètre pour le fun) et puis dépasser allègrement les 4 canaux habituels et faire au final un peu ce que l'on veut (suivant les moyens en temps et en finances... et les délires de chacun)

alpaph a écrit:Pour ma part, je travaille sur une liaison entre deux Arduino via des modules Xbee 2.4 Ghz.

Je suis parti sur l'idée de modules 433Mhz pour ne pas perturber la vidéo aussi en 2,4Ghz. Je ne connaissais pas le petit module caméra que tu donnes en lien dans ton autre message et il doit y avoir moyen de s'amuser aussi avec ça... envisager de récupérer la vidéo avec le Xbee est une idée séduisante !.
De mon coté, je vole assez souvent avec Michel et/ou Fanny et Anthony qui utilisent la classique bande 2,4Ghz pour la vidéo, et pour ne pas les gêner sur le terrain, je reste sur du modem 433Mhz.

alpaph a écrit:J'ai aussi réalisé les programmes d'émission de trames et de décodage des trames reçues (en espérant avoir couvert la plupart des cas d'erreur).

C'est aussi un peu l'objet de ce post... le protocole à utiliser (ou à construire) ne devrait-il pas avoir une certaine cohérence entre nous ? Aucune importance pour jouer tout seul, plus embêtant si on se retrouve à plusieurs et sur la même fréquence.


alpaph a écrit:Dans l'attente de mon matériel, j'essaie de contrôler un encodeur incrémental (c'est ce que je voudrais utiliser à la place d'un joystick ou d'un manche pour contrôler les servos). C'est pas encore fait mais la solution n'est pas loin.

Un lien sans doute intéressant pour l'encodeur: http://hifiduino.blogspot.com/2009/06/a ... coder.html
2 résistances et ce code et hop, tu sais dans quel sens il tourne, y'a plus qu'à compter les crans.


J-C a écrit:Moi aussi j'ai renoncé à la radio commande RC car trop volumineuse, encombrante, ...etc. Et finalement, le signal PPM est assez pénible à exploiter.

Oui, je vais laisser comme ça jusqu'à ce qu'une autre solution existe, mais celle-ci ne semble pas la meilleure. Je ne sais pas si ça vient de mon emetteur/récepteur low cost, mais c'est pas terrible comme qualité de signal (il lui faut un méchant filtre... il y a pas mal de trous dans la liaison.)

J-C a écrit:Après, j'ai regardé chez DIY Drones ceci : http://store.diydrones.com/product_p/br-ppme.htm . En fait c'est une carte avec un chip Atmel (le même que pour l'arduino), mais dédié à l'écoute des voies du récepteur.

Mouais, peut-être, si le programme est en béton armé, mais si les problèmes viennent de l'ensemble RC pas terrible, pas sûr que leur truc fasse des miracles.

J-C a écrit:Et que voit-on ? Un Arduino Duemilanove surmonté d'un module Joystick, accompagné d'un module de transmission sans fil APC220 (434 MHz... mais changeable)... Bref une radiocommande de poche.

J'ai commencé par acheter des modems 433 à 20€ les 2 avec antennes (portée donnée pour 250m... mais pas montés et pas testés), puis quand j'ai acheté un arduino nano et le shield I/O, j'ai vu qu'il était possible de connecter l'APC220 directement dessus sans aucune soudure (montage Lego like)... pratique ! Donc ça va sûrement être l'APC220 l'heureux élu pour moi aussi (les miens ont fonctionné immédiatement, mais c'est vrai qu'en cas de problème, il est impossible de savoir lequel est en panne).
Moins de 30$ les 2 ? (faudra que tu nous donne le lien, ou que cherche avec l'autre référence ;))
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Mer 02 Juin 2010, 11:09

Zut, trop long... voici la suite:


ormes a écrit:Je profite donc de cette misérable confession pour réitérer l'idée, pour ceux qui ont un système abouti (existant ou à venir), d'un petit pdf (ou autre format) pour les nuls.

Il va falloir le faire cette fois. L'an dernier avec le PIC, ça n'avait que peu d'intérêt car "inaccessible" pour la plupart (soft et matos spécifiques). L'arduino est plus ouvert et permet ce genre de partage. Bon après faut quand même avoir le courage de l'écrire le tuto, alors des bouts de code et de réflexions en cours de route dispos sur le forum, c'est au moins l'assurance d'une trace.

ormes a écrit:Je lorgne depuis la présentation de Maneke, sur le camremote, mais une solution home made offre toujours un petit plus.

Ça semble être un excellent produit et sans doute moins cher au final que nos bidouilles. (mais sans le plaisir de s'em*erder à bidouiller)

André a écrit:moi je préfèrerais des boutons rotatifs et repérés qui permettraient de connaître ( à peu près... ) l'orientation de la nacelle et son inclinaison

L'arduino peut lire sans problème ce qui sort d'un potar... et il y a même des petites cartes prévues avec le connecteur qui va bien pour rester dans l'esprit Lego (sans soudures)

fxix a écrit:et bien moi j'ai une nacelle arduino qui fait de l'autokap (programmée avec vos conseils à tous) et avoue attendre que vous trouviez une solution simple à mettre en œuvre pour un néophyte en électronique et en soudure. :roll:

Et c'est le gros avantage de l'Arduino... on peut faire suivant ses besoins, moyens financiers, compétences, envies, idées... et le partage des sources permet aussi à tout le monde la mise en oeuvre d'un truc qui fonctionne, tout en gardant la possibilité de modifier quand même :wink:
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Mer 02 Juin 2010, 12:01

Pour l'encodage/décodage, j'ai fait une demande sur le forum français arduino, et j'ai une une réponse :
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1275151772

Le procédé de décalage exposé est assez simple et rapide.
Si on suis le message donné au départ (par moi), on doit envoyer :
1- l'octet 0x0a (un saut de ligne). On peut aussi envoyer FF. C'est l'octet qui indique le début de la trame
2- on découpe les données en octets par décallage pour les entiers et on les met bout à bout. On envoie tout ça à la suite.
3- pour boucler la trame, on met un octet de validation (car sinon, tout signal commençant par 0A OU FF induira la lecture de la trame et ça peut conduire à des erreurs). Et cet octet serait 0x0d car c'est le retour charriot... du coup on pourra lire la lecture de trame dans le monitor.
Si on veut on peut rajouter un contrôle de "redondance cyclique". Sans renter dans des calculs de vérification fastidieux, on peut rajouter un octet qui serait le résultat d'une simple addition/soustraction A-B+C-D...etc.

J'ai commencé à bosser dessus, mais bon, le script est "embryonnaire", et je n'ai pas beaucoup de temps en ce moment pour le peaufiner (pas stimulé non plus par le matos sans fil).

Sinon, pour les modules, ils sont vendus directement chez Sure Electronics : http://www.sureelectronics.net/goods.php?id=1053
Compter environ 5 $ pour les frais de port les plus économiques... durée de livraison ??? (en général 10-15 jours mais parfois plus).

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mer 02 Juin 2010, 18:38

:o :o
Image

y'a plus qu'à !

Deltakap a écrit:et ce nouveau fil n'est pas étranger à tes posts sur ton blog ;)

Et ainsi, c'est toi, LE lecteur de mon blog. Cool !

Deltakap a écrit:C'est aussi un peu l'objet de ce post... le protocole à utiliser (ou à construire) ne devrait-il pas avoir une certaine cohérence entre nous ? Aucune importance pour jouer tout seul, plus embêtant si on se retrouve à plusieurs et sur la même fréquence.

Tu as complètement raison. J'ai établi ce protocole (qui est un peu raz-le-pâquerettes, faut bien le dire et en même temps, on n'est pas au boulot) dans mon coin. J'ai un petit peu pensé aux autres en ajoutant un identifiant propre à l'utilisateur. Mais ça reste sommaire.
J'ai vu que J-C travaillait sur le sujet aussi. Ceci dit, et si ça vous tente, on peut faire un truc en commun (en espérant que ma routine d'acquisition de trames n'en soit pas toute retournée !).
Je précise tout de même que le protocole auquel j'ai pensé (et dont j'ai choppé quelques éléments ici ou là sur le net) avait pour objectif d'être lisible et accessible (pour les lecteurs).
A noter aussi que les Xbee peuvent être adressés (pour un fonctionnement en réseau, objet du Zigbee http://fr.wikipedia.org/wiki/ZigBee) il me semble. Donc il y aurait moyen de ne pas se perturber entre nous.

Merci pour le lien vers le code de l'encodeur, je vais étudier ça de près.

Deltakap a écrit:ça n'avait que peu d'intérêt car "inaccessible" pour la plupart (soft et matos spécifiques).

Ça me rappelle le wiki que l'on envisageait et le site commencé par Deldude. Oui, ce serait bien de le faire.

Bon, il est où mon fer à souder ...
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Jeu 03 Juin 2010, 0:35

J-C a écrit:Le procédé de décalage exposé est assez simple et rapide.

Bin, je n'en suis même pas encore là :oops:
J'ai commencé à jeter un oeil sur des protocoles existants. Z-Wave est très intéressant sur le principe (utilisé en domotique) mais il est propriétaire, donc pas évident d'avoir des infos (mais j'aime bien le principe). Bon, c'est peut-être un peu excessif comme fonctionnalités par rapport à nos besoin...
http://www.digiwave.dk/en/programming/t ... in-csharp/
PS: le portage de C#.Net à processing ne se fait pas trop mal... mais de là à tout passer sous arduino, glurp !
on va commencer plus simple ;)
Déjà choisir entre des messages de longueur variable "lisibles", avec des 0x0a en fin de ligne (line feed), ou des messages de longueur fixe comme dans ce protocole Z-Wave !? (le premier doit offrir plus de souplesse)

J-C a écrit:Sinon, pour les modules, ils sont vendus directement chez Sure Electronics : http://www.sureelectronics.net/goods.php?id=1053
Compter environ 5 $ pour les frais de port les plus économiques... durée de livraison ??? (en général 10-15 jours mais parfois plus).
JC

J'ai acheté mes deux APC220 sur la bay en Angleterre pour un peu plus de 40€ port compris, mais il y avait avec une petite carte d'adaptation qui permet d'en brancher un directement sur un port usb du PC. (qui sera bien inutile plus tard)

Faut que je reprenne les docs que j'ai trouvé sur le net sur cet APC220... mais il semble me souvenir que je n'ai rien du tout sur la façon de changer de fréquence par exemple :?
Il semble qu'il existe un programme (win?) qui permette de changer les différents paramètres... mais je ne l'ai pas trouvé non plus !



alpaph a écrit:Et ainsi, c'est toi, LE lecteur de mon blog. Cool !

Aille, je suis démasqué :mrgreen:

alpaph a écrit:J'ai établi ce protocole (qui est un peu raz-le-pâquerettes, faut bien le dire et en même temps, on n'est pas au boulot) dans mon coin. J'ai un petit peu pensé aux autres en ajoutant un identifiant propre à l'utilisateur. Mais ça reste sommaire.

Oui, en même temps, nos besoins restent modestes... faut juste que ça marche nickel, que ça soit évolutif en terme de foctions éventuellement ajoutées plus tard au système et qu'on ne se gêne pas si on se retrouve au même endroit (si, si, ça va venir ;)).... rien de plus !

alpaph a écrit:J'ai vu que J-C travaillait sur le sujet aussi. Ceci dit, et si ça vous tente, on peut faire un truc en commun

ça me tente !
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Jeu 03 Juin 2010, 7:04

Deltakap a écrit:J'ai acheté mes deux APC220 sur la bay en Angleterre pour un peu plus de 40€ port compris, mais il y avait avec une petite carte d'adaptation qui permet d'en brancher un directement sur un port usb du PC. (qui sera bien inutile plus tard)

Pas sûr...

Faut que je reprenne les docs que j'ai trouvé sur le net sur cet APC220... mais il semble me souvenir que je n'ai rien du tout sur la façon de changer de fréquence par exemple :?
Il semble qu'il existe un programme (win?) qui permette de changer les différents paramètres... mais je ne l'ai pas trouvé non plus !

Le driver de l'adaptateur USB-TTL : http://blog.flamingoeda.com/wp-content/uploads/2009/06/cp210x_vcp_win2k_xp_s2k3.zip
Le prog de configuration :http://blog.flamingoeda.com/wp-content/uploads/2009/06/apc220.zip
ou :http://www.robotshop.ca/content/software/apc220-configuration-tool.zip
Bizarrement ça ne marche pas avec l'outil RF Magic qui est montré sur certains exemples. Néanmoins je donne un lien pour le trouver : http://www.sure-electronics.net/download/RMB-CM12111-Rf-Magic42.zip
Sinon, il y a un outil plus ou moins utile (inutile pour moi en ce moment): APC220 helpmate :http://droboticsonline.com/ebaydownloads/APC220Mate.rar

Un explication de quoi faire les premiers pas ... mais en anglais : http://www.elechouse.com/elechouse/index.php?main_page=product_info&cPath=90_113&products_id=316... Et Google est un "ami".

Sinon, compte tenu de la diversité du matériel utilisé que ce soit pour le sans fil, ou pour la nacelle, je ne suis pas sûr qu'on puisse faire une partie commune. Il me semble que pour le X-Bee, la librairie Zigbee facilite l'envoi de toute donnée (octet, word...etc). De plus c'est du full duplex avec un protocole réseau avancé. Alors que pour les modules RF, c'est juste de la communication série en half duplex à 9600bds... Donc plus rustique.
Par contre, rien ne nous empêche de voir, une fois fini, les possibilités d'intégration à un ensemble plus général, plus "polymorphe".

A+
JC

PS: Finalement, après réflexion, je n'ai pas besoin de transmettre des données trop longues qui nécessiteraient un procédé de décalage... Donc c'est beaucoup plus simple à faire que prévu... Je vous tiens au courant. Et pour Gilbert, ne cherche pas compliqué, la communication RX/TX utilise les pin DIG0 et DIG1... on a juste à croiser les "fils" pour que ça marche.
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Jeu 03 Juin 2010, 12:58

Merci J-C pour tous ces liens !

Effectivement RF-Magic ne fonctionne pas non plus avec mon APC.
L'autre (RF-Anet 1.01) le trouve (faut juste penser à le lancer en mode administrateur sous Vista :twisted: ) et retourne par défaut:
475Mhz, 9600bps, RFpower 9(max), netID 12345, nodeID un nb sur 2digits, liaison série 9600bds, pas de parité, model APCxxxN-47A
Sinon, j'ai retrouvé dans mon tas de docs en pdf quelque chose qui ressemble au dialogue pour changer ces paramètres... faut que j'essaie.
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Ven 04 Juin 2010, 15:09

Bon, je ne sais pas pourquoi, mais mes modules sans fil se sont remis à fonctionner correctement.
Bilan j'ai pu tester un peu de code... et ça fonctionne. Il faut que je peaufine les réglages, mais bon ça a l'air correct sauf le pan dont la variation de vitesse est assez insensible.

Voici les 2 bouts de code sans commentaires (pas le temps) :

Code: Tout sélectionner
// Emetteur code de J-C

#define idlezone 20
#define incmax 10
#define joymid 512
#define panspeed 20

int x=1;
int y=0;
int button_A= 5;
int button_B= 3;
int button_C= 4;
int LED=13;
int valx = 0;
int valy = 0;
byte Clicbouton = 0;

void setup()
{
  int i;
  for(i=3;i<=5;i++)
  pinMode(i, INPUT);
  pinMode(LED,OUTPUT);
  Serial.begin(9600);
}
void loop()
{
  int val;
  while(1)
  {
    // Lecture Joystick Tilt
    val=analogRead(x);
    if (val > joymid + idlezone){
      valx = map(val, joymid + idlezone, 1023, 0, incmax);
    }
    if (val < joymid - idlezone){
      valx = map(val, joymid - idlezone, 0, 0, incmax);
      valx = -valx;
    }
    if (val <= joymid + idlezone && val >= joymid - idlezone){
      valx = 0;
    }
   
    // Conversion Tilt en byte pour emission
    byte tilt = 50 + valx;   
   
    // Lecture Joystick Pan
    val=analogRead(y);
    if (val > joymid + idlezone){
      valy = map(val, joymid + idlezone, 1023, 0, panspeed);
    }
    if (val < joymid - idlezone){
      valy = map(val, joymid + idlezone, 0, 0, panspeed);
      valy = -valy;
    }     
    if (val >= joymid - idlezone && val <= joymid + idlezone){
      valy = 0;
    }
   
    // Conversion Pan en byte pour emission
    byte pan = 50 + valy;   
   
    // Lecture bouton 2 / déclenchement
    if(digitalRead(button_B)==0)
     {
         Clicbouton = 10;
     }
    else Clicbouton = 0;
   
    // Envoi des données Tilt, puis Pan, puis bouton
    Serial.print(0xff, BYTE);
    Serial.print(tilt);
    Serial.print(pan);
    Serial.print(Clicbouton);   
  }
}

Pour le code de l'émetteur (tel que présenté sur la photo, un joystick x= tilt, y=pan)
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Ven 04 Juin 2010, 15:10

...
et l'autre côté récepteur :
Code: Tout sélectionner
// Récepteur code de J-C

#include <Servo.h>


#define servomin 1000
#define servomax 2000



#define panidle 1500
#define panspeed 20
#define Pan_pin 3
#define Tilt_pin 4
#define Clic_pin 13

int servox = 1500;
int x=1;
int y=0;
int val1;
int val2;
int val3;

int panpos = panidle;
Servo pan_servo;  // le servo PAN
Servo tilt_servo; //le servo TILT


//(¯`·.¸¸.-Déclenchement direct de l'APN Ricoh par USB-.¸¸.·´¯)
// Cette routine doit changer si on utilise un gentled ou autre...
void clicricoh(){
  digitalWrite(Clic_pin, HIGH);   // pin APN ON
  delay(30);                     // durée 30ms (half-press et focus)
  digitalWrite(Clic_pin, LOW);    // pin APN OFF
  delay(200);                    // pause
  digitalWrite(Clic_pin, HIGH);   // pin APN ON
  delay(150);                    // durée 150ms (full-press)
  digitalWrite(Clic_pin, LOW);    // pin APN OFF
  delay(100);                    // delai après photo 2s (a régler)
  digitalWrite(Clic_pin, HIGH);   // pin APN ON
  delay(30);                     // durée 30ms (release)
  digitalWrite(Clic_pin, LOW);    // pin APN OFF
  delay(30);                     // durée 30ms
  digitalWrite(Clic_pin, HIGH);   // pin APN ON
  delay(30);                     // durée 30ms
  digitalWrite(Clic_pin, LOW);    // pin APN OFF
}


void setup()
{
  pan_servo.attach(Pan_pin);                         
  tilt_servo.attach(Tilt_pin);                       
  pinMode(Clic_pin, OUTPUT);
 
  Serial.begin(9600);     
}



void loop()
{
  int val;
  while (Serial.available() >= 4) {
    if (Serial.read() == 0xff) {
       val1 = Serial.read();
       val2 = Serial.read();
       val3 = Serial.read();

      Serial.flush();

    val = val1 - 50;
    if (val > 0){ 
      if (servox != servomax){
        servox = servox + val;
        if (servox > servomax) servox = servomax;
      }
     }
    if (val < 0){
      if (servox != servomin){
        servox = servox + val;
        if (servox < servomin) servox = servomin;
      }
    }   
   
    tilt_servo.writeMicroseconds(servox);
    delay (50);
   
    val = val2 - 50;
    if (val != 0){
      panpos = panidle + val;
    }
    else {
      panpos = panidle;
    }
   
    pan_servo.writeMicroseconds(panpos);
    // delay (50);
   
    if (val3 == 10){
      clicricoh();
      delay (50);
    }
   }
}
     
}


Voili voilou

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 05 Juin 2010, 14:28

Deltakap a écrit:Un lien sans doute intéressant pour l'encodeur: http://hifiduino.blogspot.com/2009/06/a ... coder.html
2 résistances et ce code et hop, tu sais dans quel sens il tourne, y'a plus qu'à compter les crans.


Merci Gilbert. Je me suis inspiré du code pour en faire un à ma sauce. Je n'utilise pas le système d'interruption proposé en exemple. Il faut deux interruptions par encodeur or l'Arduino Duamilanove ne sait en gérer que deux. Pour la télécommande, telle que je la vois, il me faut deux encodeurs et donc 4 interruptions. Donc pas possible.
Du coup, j'ai fait un programme de gestion d'encodeur (http://alpaph.free.fr/?article79/telecommande-kap-avec-arduino-04) qui lit les entrées et qui déduit de l'état de ces entrées le sens de rotation. Reste ensuite à compter les impulsion pour manœuvrer le servo de l'angle voulu.
Je suis assez confiant pour l'utilisation de ce composant sur la télécommande même s'il y a des petits ratés (mauvaise détection du sens sur une impulsion) lorsqu'on tourne le bouton très vite. Mais bon, ce n'est pas un problème ici.


// Programme de lecture des sorties encodeur.

// Tourner dans le sens horaire allume une LED.
// Tourner dans le sens anti-horaire eteind la LED.
// Affichage d'un compteur sur le port série. 

// Définition des PIN
#define CI_11_A  2     
#define CI_11_B  3
#define ledPin  13   

// Définition des variables
// Mémorise l'état des sorties A et B
int StateA = 0;
int StateB = 0;
// Mémorise l'état des sorties A et B antérieures
int StateA_anterieur = 0;
int StateB_anterieur = 0;

int compteur = 0;
int compteur_anterieur = 0;


void setup() {
  // Initialise la sortie LED
  pinMode(ledPin, OUTPUT);
  // Initialise les entrées A et B de l'encodeur
  pinMode(CI_11_A, INPUT);
  pinMode(CI_11_B, INPUT);

  Serial.begin(9600);

}

void loop(){
  // Lecture des sorties A et B de l'encodeur. Avant chaque lecture,
  // mémorisation de l'état antérieur de chaque broche. Ce principe permet
  // la détection d'un front montant.
  StateA_anterieur= StateA;
  StateA = digitalRead(CI_11_A);
  StateB_anterieur= StateB;  
  StateB = digitalRead(CI_11_B);

  // Détection du front montant :
  // Etat actuel : haut, état antérieur : bas
  if ((StateA == HIGH) && (StateA_anterieur == LOW)) {
    if (StateB == LOW) {
      digitalWrite(ledPin, HIGH);
      Serial.println("HORAIRE");
      compteur = compteur + 5;
    }
  };  

  // Détection du front montant :
  // Etat actuel : haut, état antérieur : bas
  if ((StateB == HIGH) && (StateB_anterieur == LOW)) {
    if (StateA == LOW) {
      digitalWrite(ledPin, LOW);
      Serial.println("ANTI-HORAIRE");
      compteur = compteur -  5;
    };    
  }
  // Affichage du compteur seulement si sa valeur est modifiée.
  if (compteur != compteur_anterieur) {
    Serial.println(compteur);
  }
  compteur_anterieur = compteur;

}



Content pour toi, JC, que ton système fonctionne.
J-C a écrit:Serial.flush();

Je croyais que la lecture des octets vidait le buffer. Quel est le + de cette instruction ?

A +

Philippe.
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Sam 05 Juin 2010, 15:34

C'est "au cas où"... car bizarrement, pour le bouton de déclenchement, c'est comme s'il restait appuyé dès la première pression. Du coup, je force la vidange.

J'ai un peu plus testé le système, mais à 9600 bds, c'est assez peu réactif. Suffisamment pour une nacelle, mais il est clair que pour du modélisme c'est insuffisant. Je vais essayer d'augmenter un peu la bande passante... on verra.

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 05 Juin 2010, 16:33

J-C a écrit:C'est "au cas où"... car bizarrement, pour le bouton de déclenchement, c'est comme s'il restait appuyé dès la première pression.

Je pense que tu devrais déclencher uniquement sur front montant (ou descendant) de l'état de "button_B". Comme cela, tu ne déclencheras que lorsque tu appuieras sur le bouton. Ça devrait donner ça (je ne l'ai pas testé).

    // Lecture bouton 2 / déclenchement
    // Deux variables etat_button_B_avant et etat_button_B ont été créées
    etat_button_B_avant = etat_button_B;
    etat_button_B = digitalRead(button_B);
    // Détection front descendant
    if ((etat_button_B==LOW) && (etat_button_B_avant == HIGH))
    {
      Clicbouton = 10;
    }
    else Clicbouton = 0;


Par contre, attention aux rebonds du bouton que tu peux filtrer soit par un filtre RC, soit en ajoutant une tempo après lecture de ton entrée.

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Sam 05 Juin 2010, 16:50

Pourquoi pas, mais comme je communique entre mes 2 arduinos uniquement par RX et TX, je ne suis pas sûr que lors de l'émission ça ne "saute" pas l'état du bouton. Mon arduino émetteur envoie un train d'instruction, qui est lu en bloc par le récepteur. Ensuite, chaque instruction est décomposée et agit en conséquence, et ça prend du temps durant lequel, je ne suis pas sûr que toute les instructions soient envoyées.

Maintenant, je cherche un peu plus de réactivité, car quand je relâche le joystick, j'ai les servos qui continuent à tourner un court moment... Ce n'est pas gênant, mais si ça peut être amélioré...

Mais bon, toute proposition est intéressante.

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 05 Juin 2010, 17:12

Sinon, le mieux est d'utiliser les interruptions (avec l'instruction attachinterrupt, ...etc, qui en plus permet de choisir son front). Ainsi, aucune demande de déclenchement ne sera perdue. Cependant, de la manière dont on utilise ce bouton, on peut penser que la trame sera émise depuis belle lurette avant qu'un nouveau déclenchement ne soit demandé. Pour la réception, pareil.
Même si ça fait un peu "années 80 ... Electronique pratique, ...etc", tu peux faire allumer une LED t'indiquant si l'appui sur ton bouton a bien été pris en compte. Ce serait efficace.

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Sam 05 Juin 2010, 18:18

Eh ben, je suis méchamment en retard dans les expérimentations :?

@Philippe: d'après ce que j'ai compris le code de détection de l'encodeur rotatif n'utilise qu'une seule interruption (mais je suis d'accord, c'est déjà beaucoup... avec 2 encodeurs, y'a plus d'interruptions externes libres pour éventuellement autre chose).

@J-C: Pour le 9600 bps (bits par seconde), il devrait être possible de faire du radiomodélisme quand même. 9600 bauds, ça fait en gros 960 octets par seconde(on va dire 1000, soit 1octet/ms). Sur une trame RC de 20ms, on ne peut faire passer qu'une vingtaine d'octets (quand tout va bien... mais on peut déjà raconter pas mal de choses sur un message aussi court). Le problème serait peut-être de trouver le temps de lire le buffer et de traiter l'info... mais bon, on a justement l'avantage de ne pas être obligés d'envoyer de message en permanence.

Pour le Serial.flush(), je me demande si tu l'utilises au meilleur endroit: Tu lis 4 "caractères" du buffer et tu le vides immédiatement... mais si il y en avait encore dedans, tu les perds, non ?. Le buffer utilise une interruption et stocke les caractères reçus immédiatement, mais le loop lui n'est pas synchrone. Si on a un délai "important" dans le loop, il pourrait y avoir beaucoup plus de 4 caractères dans le buffer.

Pour le bouton, voici un code qui permet "d'éviter" les rebonds: http://www.arduino.cc/en/Tutorial/Switch.
Le problème, c'est qu'un interrupteur est avant tout mécanique et que le contact ne s'établit pas aussi proprement qu'espèré. pendant quelques millisecondes (une centaine), l'inter est fermé puis ouvert des tas de fois (rebonds mécaniques)... et si la boucle loop() est rapide, le microcontroleur est capable de détecter ces variations d'états (dont on ne veut pas)
La solution est de détecter un appui sur le bouton, puis d'attendre (ici 200ms) pour lire de nouveau l'état de l'inter (après qu'il se soit stabilisé)


Un truc qui serait pas mal (mais je suis atrocement en retard pour essayer) ça serait, au niveau de la télécommande, de stocker les valeurs des capteurs à un instant (potars ou encodeurs) et de n'envoyer le signal radio que si on a un changement de valeur !? (ça éviterait l'émission permanente et de pourrir le buffer avec des infos inutiles :)).
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 05 Juin 2010, 21:28

Je me suis un peu emmêlé les pinceaux. En fait on ne peut attacher, sur le Duamilanove, que deux sorties à des interruptions.
attachInterrupt(interrupt, function, mode)
Description
Specifies a function to call when an external interrupt occurs. Replaces any previous function that was attached to the interrupt. Most Arduino boards have two external interrupts: numbers 0 (on digital pin 2) and 1 (on digital pin 3). The Arduino Mega has an additional four: numbers 2 (pin 21), 3 (pin 20), 4 (pin 19), and 5 (pin 18).


Et puis, je suis allé trop vite en lisant le code présenté sur Hifiduino. Tu as raison, il n'emploie qu'une interruption par encodeur. Par contre, je viens de tester le code présenté, sans modification. J'ai énormément de parasitage en tournant l'encodeur.

Deltakap a écrit:Un truc qui serait pas mal (mais je suis atrocement en retard pour essayer) ça serait, au niveau de la télécommande, de stocker les valeurs des capteurs à un instant (potars ou encodeurs) et de n'envoyer le signal radio que si on a un changement de valeur !? (ça éviterait l'émission permanente et de pourrir le buffer avec des infos inutiles

Pour ma part, je compte lancer un Timer (disons de 200ms) dès qu'un encodeur est manœuvré. Et tant qu'un encodeur "bougera", ce timer sera réinitialisé. Le message ne sera envoyé vers la nacelle que si l'opérateur ne modifie pas ses réglages pendant 200ms. Ainsi, j'évite l'abondance d'émission de trames tout en conservant la possibilité de régler la position de la nacelle presque en temps réel.

Ceci dit, on verra l'efficacité du système quand ce sera codé.
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Sam 05 Juin 2010, 21:58

Deltakap a écrit:Un truc qui serait pas mal (mais je suis atrocement en retard pour essayer) ça serait, au niveau de la télécommande, de stocker les valeurs des capteurs à un instant (potars ou encodeurs) et de n'envoyer le signal radio que si on a un changement de valeur !? (ça éviterait l'émission permanente et de pourrir le buffer avec des infos inutiles :)).


Oui, mais je souhaite utiliser l'absence de signal comme "lanceur" du mode autokap. Donc, encombrer le buffer, ce n'est pas bien grave. Surtout que je le vide à chaque lecture de trame reconnue...

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 15 Juin 2010, 11:38

Bonjour,

Petite question pour les possesseurs d'Arduino mini Pro 5V : comment alimentez-vous la carte ? 4*LR6, pile 9v ou bien ...
Merci d'avance de vos réponses.

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Mar 15 Juin 2010, 11:52

alpaph a écrit:Bonjour,

Petite question pour les possesseurs d'Arduino mini Pro 5V : comment alimentez-vous la carte ? 4*LR6, pile 9v ou bien ...
Merci d'avance de vos réponses.

A +

Mon mini est un 3.3V et toute la nacelle est alimentée par un capteur solaire 5.5V.
Pour le futur nano 5V, ça sera sans doute le même type d'alim.

La pile 9V ne va pas durer des siècles, même si elle n'alimente que l'arduino.
Mais, ça ne marche pas avec les 4AA ? (si tu ne l'as pas déjà fait, ça ne risque rien du tout d'essayer ;)
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede J-C le Mar 15 Juin 2010, 12:05

Pour moi, c'est LiPo 2S (7,4v) direct sur le Nano (il intègre un régulateur 5V). J'ai essayé un accu LiPo 3S sur mon Duemilanove et ça roule bien. Donc pour moi, c'est LiPo.

A+
JC
Avatar de l’utilisateur
J-C
Plus de 1000 messages
 
Messages: 1770
Inscription: Jeu 15 Mai 2008, 9:14
Localisation: Sud des Landes

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 15 Juin 2010, 12:40

OK merci à vous deux.

Deltakap a écrit:La pile 9V ne va pas durer des siècles, même si elle n'alimente que l'arduino.


Pour l'autoKAP, j'utilise un accu 9V sur mon Duemilanove et l'autonomie atteignait facilement 90 minutes pour une rotation de servo de déclenchement toutes les 5 secondes. J'avoue que j'avais été surpris à l'époque.

Dans un premier temps, je vais faire avec 4 piles AA. Et après, je vais certainement passer au LiPo (c'est trop léger pour passer à coté :wink: ).

Autre question sur les antennes 2.4 Ghz. J'ai trouvé http://www.wimo.de/cgi-bin/verteiler.pl?url=wifi-omnidirectionel-interieure-antennes_f.html pour mettre sur mon xBee. Le gain est de 1 dB. Je pense que ça suffit mais vous, qu'en pensez-vous :?:

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Mar 15 Juin 2010, 13:33

alpaph a écrit:Pour l'autoKAP, j'utilise un accu 9V sur mon Duemilanove et l'autonomie atteignait facilement 90 minutes

Ben, si ça suffit comme durée, alors tu as aussi l'accu 9V comme source possible pour le mini 5V ;)


alpaph a écrit:Autre question sur les antennes 2.4 Ghz. J'ai trouvé http://www.wimo.de/cgi-bin/verteiler.pl?url=wifi-omnidirectionel-interieure-antennes_f.html pour mettre sur mon xBee. Le gain est de 1 dB. Je pense que ça suffit mais vous, qu'en pensez-vous :?:

Je n'ai pas vu d'antenne 1dBi dans cette série (2dBi mini), mais les plus intéressantes semblent être la 17010.11xxx avec seulement 7,7cm (2.1dBi) ou la 17013.xxx avec ses 5dBi (mais 20cm).
PS: Un gain de 3dBi correspond en gros à une puissance émise doublée.
5 dBi pour une antenne omni-directionnelle de cette taille, c'est pas mal du tout !
Par contre, faut vérifier avant si il faut la prendre en sma ou reverse-sma.

Edit: Je viens de regarder... c'est du RP-SMA
C'est celui-là que tu as, je crois ? : http://www.sparkfun.com/commerce/produc ... ts_id=8768
Parce que la doc donne 3.3V @ 295mA et la batterie 9V et ses 180mAh va cette fois être juste en durée.
Par contre, les "1 mile (1600m) range", c'est donné en principe pour une antenne 0dBi. Une 2dBi devrait donner encore un peu plus.
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Mar 15 Juin 2010, 19:23

Deltakap a écrit:Je n'ai pas vu d'antenne 1dBi dans cette série

En fait il s'agit de l'antenne qui est juste en dessous du tableau : Splash proof 2.4GHz Antennas IPEX car avec connecteur UFL. J'ai en effet pris un xBee UFL :
http://www.sparkfun.com/commerce/product_info.php?products_id=8710

Pas mal du tout cette antenne à 2.1 dB (tu as l'oeil aiguisé :wink: ). Dans mon cas, il faudrait que je prenne en complément un adaptateur pour le connecter à xBee UFL.

Deltakap a écrit:Parce que la doc donne 3.3V @ 295mA et la batterie 9V et ses 180mAh va cette fois être juste en durée.

C'est clair ! Même si je compte descendre la puissance en émission car nous sommes limités à 10mW (programmable par commande AT).

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Deltakap le Mar 15 Juin 2010, 20:15

alpaph a écrit:tu as l'oeil aiguisé :wink:

Nan, nan, pas du tout, c'est juste que je n'avais pas vu les autres :)
J'étais parti sur du sma.

alpaph a écrit:(...) Même si je compte descendre la puissance en émission car nous sommes limités à 10mW

Ah! joli coup ça!
Bon, je n'ai pas vu dans la doc quelle était la réduction du courant que ça provoquait. (mais si le courant consommé baisse de façon significative, ça pourrait valoir le coup de prendre un gain "important" pour l'antenne:
un réglage à 65mW HF (18dBm) avec une antenne de 1dBi devrait donner la même puissance (et la même portée) qu'un réglage en 10mW HF (10dBm) et une antenne 9dBi. Bon, le résultat serait le même pour la puissance PIRE, soit plus de 65mW....
Je n'ai pas mangé toute la doc, mais j'imagine qu'il est possible aussi de choisir la fréquence d'emission. Si c'est le cas, même en France, tu as le droit à :
100mW de puissance PIRE maxi sur toute la bande de fréquences 2400-2483,5 MHz en intérieur (ok, on s'en fout)
et en extérieur, 100 mW sur la partie 2400-2454 MHz et 10mW sur la partie 2454-2483 MHz.
En visant bien, tu peux l'utiliser à fond ;)

Je viens de voir aussi que le XBee Pro non rma, ce n'est plus que 250mA à pleine puissance (contre 340mA pour le sma ou le rp-sma).
Avatar de l’utilisateur
Deltakap
Plus de 1000 messages
 
Messages: 1432
Inscription: Lun 22 Septembre 2008, 11:35
Localisation: Du coté de Granville

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 13 Novembre 2010, 13:21

Bonjour,

Je refais un petit up de ce fil parce que j'ai mis en ligne une petite vidéo qui montre l'état du projet que j'ai commencé il y a maintenant quelques mois.

Alors, il y a encore plein de fils, les composants sont sur des plaques d'essais, mais la plupart des principes que je souhaitais mettre en place sont là.

La vidéo est là http://www.youtube.com/watch?v=E6muVgi33rE et aussi sur mon blog.

Donc, pour les modules d'émission-réception, j'ai choisi les xBee (2.4 Ghz). L'antenne pour le système de télécommande fait 8 cm mais j'aurai pu prendre un module xBee avec antenne intégrée, comme sur le système qui sera sur la nacelle. La portée devrait être de plusieurs centaines de mètres mais je n'ai pas encore testé (j'attends le beau temps).

La télécommande au sol est composé d'une carte arduino (une mini pourrait être utilisée), le module xBee, deux LED's, un interrupteur et un bouton rotatif. Ca devrait tenir dans peu d'espace. Ceci dit, j'ai encore pas mal de projets et quelques commandes pourraient être ajoutées à tout ça !

A +
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede fred88 le Sam 13 Novembre 2010, 13:39

:shock: :shock: :shock:

exxxxxxelent !

rien a dire de plus si ce n'est bravo pour tout ce travail accompli !
rokkaku 1m90,rokkaku 3.00m ,buster 4, ozone frenzy, appareil nikon coolpix L5, et nikon s200
Avatar de l’utilisateur
fred88
Plus de 100 messages
 
Messages: 318
Inscription: Lun 06 Juin 2005, 20:46
Localisation: saint dié(88)

Re: Projet KAPduino : Etat des lieux

Messagede André le Sam 13 Novembre 2010, 13:57

Je suis toujours aussi admiratif même si j'ai pas tout compris ( mais je ne suis pas une référence non plus :oops: ).
Le but du jeu au final c'est quoi ?
Une commande miniature au sol et des fonctions multiples sur la nacelle ?
En tous cas ça à l'air de fonctionner...
On attend la suite avec impatience :D
Avec quel plaisir, je me débarrasserais de ma radio pour quelque chose de vraiment plus compact et plus ergonomique pour le Kap...
Avatar de l’utilisateur
André
Plus de 8000 messages
 
Messages: 9269
Inscription: Dim 21 Septembre 2008, 17:02
Localisation: Au nord de Brest même

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 13 Novembre 2010, 23:00

Merci les gars.

Dans l'état, le système peut être installé pour faire du KAP. Mais bon, j'ai envie de continuer un peu pour ajouter d'autres fonctions. Notamment, donner la possibilité de passer la nacelle en autoKAP de manière automatique (perte de liaison, ...) ou manuelle. Ca, ça devrait être facile.

Après, ramener des informations de la nacelle n'est pas compliqué; ceci dit, je ne vois pas, aujourd'hui, ce que je pourrai ramener.

En fait, il y a les bases; après, on ajoute ce que l'on veut. Donc, tu as raison André : une petite commande et des fonctions multiples sur la nacelle.

Pour moi, l'ultime est que le système puisse renvoyer des images de la nacelle. J'ai quelques idées, et pour le moment, beaucoup de problèmes techniques : ça va murir ...

A bientôt.
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede fxix le Sam 13 Novembre 2010, 23:09

Heureux de te revoir sur le forum avec des résultats plus que concluants.
Pour ma part je suis en train de relire les abses de l'arduino parce que je commence à avoir mare de copier coller mes "sketchs" sans tout comprendre alors que j'ai appris la programmation à l'école :?
j'espère ensuite suivre ta piste (en espérant que tes travaux soient en "creative commons" bien entendu :roll: )
Fabien XIX
aéro-photographe... mais plus assez à mon goût
f19.fr
Avatar de l’utilisateur
fxix
Plus de 1000 messages
 
Messages: 1038
Inscription: Dim 13 Avril 2008, 9:00
Localisation: presque à Tours

Re: Projet KAPduino : Etat des lieux

Messagede alpaph le Sam 13 Novembre 2010, 23:37

Pas de problèmes Fabien. C'est même pas en Creative Commons (j'ai pas bien compris toutes ses subtilités, d'ailleurs), donc tu peux y aller.

D'ailleurs, je comptais te joindre par MP dans les jours qui viennent à propos de ton programme autoKAP. Donc, à très bientôt.
A+

Philippe

Site perso : http://alpaph.free.fr - Galerie Flickr : http://www.flickr.com/photos/41085895@N08/
Avatar de l’utilisateur
alpaph
Plus de 100 messages
 
Messages: 312
Inscription: Dim 22 Mars 2009, 19:24
Localisation: Seine-saint-denis

Re: Projet KAPduino : Etat des lieux

Messagede Fredhuile le Dim 14 Novembre 2010, 9:23

Bonjour alpaph l autre jours je suis allé voir les ingénieurs qui travail sur les drones pour voir si je pouvais récupérer quelque info d’intéressante pour la pratique du KAP, en vérité ils on pleins de choses, mais eux c’est surtout du tout automatique avec des localisations de sites à photographier par GPS et des protocoles de vols prédéfinis. Donc je suis avec intérêt se que tu fais car je cherche aussi à réduire le système de commande de ma nacelle. A voir sur plaque d’essai sa semble bien compliquer et avec une utilisation de matériel pas facile a mettre en œuvre et a trouvé, mais c’est sur que pour arrivé a quelque chose de fonctionnel et aboutis sa demande pas mal d’essai .En tout cas bravo pour le résultat déjà obtenu car les fonctions que tu obtient sont très intéressante.
PS ou trouve tu le potar qui fait aussi poussoir ?
Fredhuile
Plus de 400 messages
 
Messages: 546
Inscription: Sam 02 Octobre 2010, 8:40

Suivante

Retourner vers L'électronique embarquée et au sol

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 46 invités