Première personne WiFi conduite de Roomba et d’autres véhicules RC infrarouges (8 / 8 étapes)

Étape 8: Advanced : ajout du support pour vos propres appareils

Si vous avez des nouveaux dispositifs de soutien (autres robots, téléviseurs, etc.), vous aurez besoin de connaître les codes IR de votre appareil. IR Server prend en charge les codes de format Pronto donc si vous avez Pronto compatible matériel de capture, vous pouvez l’utiliser juste. J’ai décodé les codes Thames et Kosmos en utilisant un dispositif de Brainlink (SurplusShed possédait le vendre).

Ce que vous devez avoir en main, c’est soit une séquence hexadécimale Pronto-compatible, ou bien les informations suivantes :

  • fréquence porteuse (habituellement environ 38KHz)
  • éclatement de séquence pour chaque fonction : il s’agit d’une séquence de sur et hors temps en microsecondes
  • durée (en microsecondes) pour faire une pause entre ré-envoi d’une séquence de rafale en émulant un bouton étant maintenue enfoncée (habituellement 20000-100000 microsecondes)

En utilisant les informations ci-dessus, vous pouvez générer des requêtes de contrôle compatible serveur IR. Pour les codes de Pronto, le format est :

? ir = repeatmode : pronto : xxxx xxxx xxxx + + xxxx +...

repeatmode est l’un des :

  • infini : répéter jusqu'à ce qu’un code d’arrêt est envoyé
  • comte = x : répéter x fois (x étant un nombre entier positif)
  • temps = x : microsecondes répéter x (x étant un nombre entier positif)
  • une fois que : jouer une fois

et xxxx xxxx xxxx + + xxxx +... est le Pronto code hexadécimal avec espaces remplacé par des signes plus pour une utilisation web. Par exemple, le web spécifie le code de Pronto de fonction propre de Roomba

0000 0069 0000 0008 0071 0027 0023 0071 0023 0071 0023 0071 0071 0027 0023 0071 0023 0071 0023 030 B

Vous pouvez ensuite générer la requête serveur IR :

? ir = temps = 500000 : pronto : 0000 + 0069 + 0000 + 0008 + 0071 + 0027 + 0023 + 0071 + 0023 + 0071 + 0023 + 0071 + 0071 + 0027 + 0023 + 0071 + 0023 + 0071 + 030 b 0023 +

Cela joue le code propre d’une demi-seconde (500000 microsecondes).

Si vous avez les données brutes, le format est plutôt :

? ir = repeatmode : raw : repeatpause:carrier:xxx:xxx:xxx:...

Ici, repeatmode est le même que pour les codes de Pronto, repeatpause est un entier non négatif indiquant le nombre de microsecondes pour faire une pause entre les répétitions (ignorées si repeatmode a une fois)--je vous recommandons d’essayer les 20000 dans un premier temps, et transporteur est la fréquence en Hz. Enfin, la séquence de rafale xxx:xxx:xxx:... est une séquence de nombres spécifiant alternant sur et hors temps en microsecondes. Donc :

? ir = count = 12 : raw : 20000:38000:400:200:400:200:300:150:100

demande que la salve suite émis douze fois avec un transporteur de 38000 Hz, avec une microseconde 20000 une pause entre les deux. La séquence est alors 400 microsecondes, 200 hors, 400 sur, 200 hors, 300, 150 rabais, 100 sur.

Il y a également une requête spéciale :

? ir = stop

qui s’arrête à un ordre de lecture précédente avec repeatmode infinie, de comte ou de temps .

Avant de procéder à toute modification du html, je vous recommandons de tester les codes de configurer un serveur relié à un émetteur IR et émettant manuellement les codes via un navigateur web. Par exemple, si IR Server se trouve dans 168.1.1.49:7080, vous pouvez émettre mon exemple de code brut en allant sur :

http://168.1.1.49:7080/ir.html? IR = count = 12 : raw : 20000:38000:400:200:400:200:300:150:100

Remarque qu’il n’importe quelle page web, mettez « ir.html »--le code sera toujours être émis. Pour plus d’efficacité, vous pouvez faire « empty.html ».

Une fois que vous avez travaillé sur les codes de requête pour les fonctions de votre appareil, vous devez créer un fichier html la contrôler. Une fois que vous avez installé le serveur de l’IR, les fichiers html sont dans le répertoire mobi.omegacentauri.irserver de stockage interne de votre téléphone. Vous y trouverez un tas de fichiers que vous pouvez librement modifier là (si vous souhaitez actualiser avec les versions officielles, appuyez sur Menu et écraser dans IR Server). Le fichier roomba.html est un bon début. Copie dans un nouveau fichier (par exemple, xyzzy.html) et le modifier pour avoir le genre de présentation vous voulez votre dispositif d’avoir et de modifier les codes.

L’idée de base est que lorsque IR serveur reçoit une demande avec l’un de le ? ir = interroger les codes, elle décode le code et la joue. La demande peut être ajoutée à n’importe quel fichier html, mais le fichier empty.html est plus efficace. Aussi, pour l’efficacité, au lieu d’émettre une demande GET , vous pouvez juste émettre une requête HEAD .

Le fichier roomba.html contient un peu de javascript conçu pour émettre des requêtes sur les touches appropriées. Il y a deux sortes de boutons. Boutons de répétition jouent un code à plusieurs reprises jusqu'à ce qu’on lâche le bouton. Ceux-ci utilisent un mode infini et ont tant ontouchstart et onmousedown code pour travailler sur les deux touch et souris selon les navigateurs. (Alors que je suis un programmeur expérimenté de C et un programmeur java expérience un peu, je suis complètement nouveau à javascript, donc je ne peux pas faire des choses mieux.) Boutons de répétition non jouent un code pendant un certain temps donc il n’est pas se raté et le faire via onclick. Il y a des fonctions différentes javascript à appeler pour ces derniers.

Vous remarquerez qu’il y a de spécial simplifiée ? ir demandes de codes de Roomba et Thames et Kosmos. Pour ces derniers, seulement un seul nombre décimal doit être spécifié au lieu d’une salve de suite, et il obtient codé selon les protocoles de Roomba et Thames et Kosmos (consultez la classe IRCommand dans la source de l’IR serveur pour comment cela fonctionne).

Mettre votre nouveau fichier html dans le répertoire mobi.omegacentauri.irserver de stockage interne de votre téléphone. Vous pouvez y accéder directement par nom, ou vous pouvez ajouter un lien vers elle dans le fichier controllers.html .

Articles Liés

Vue à la première personne Roomba conduite

Vue à la première personne Roomba conduite

C' est amusant à conduire un Roomba autour de la télécommande. C'est encore plus amusant d'avoir une vue première personne en le faisant. Ce projet m'a presque tout développement logiciel parce que j'avais déjà tout le matériel. Voici ce que vous dev
Comment mettre en place un Personal WiFi Hotspot sur l’iPhone, tethering et connectez-vous à Internet

Comment mettre en place un Personal WiFi Hotspot sur l’iPhone, tethering et connectez-vous à Internet

Il est facile de configurer votre Personal WiFi Hotspot sur votre iPhone.Cela vous permettra de partager la couverture de cellule des données de votre iPhone avec d'autres dispositifs, tel qu'un iPad ou un ordinateur portable.Cette vidéo montre quell
Construisez votre propre jeu de tir de première personne !

Construisez votre propre jeu de tir de première personne !

Ce que vous allez construire :Étape 1: configuration Aujourd'hui, vous apprendrez comment construire votre propre première personne jeu de tir. Je serai fournissant tout le code et savoir comment et puis vous pouvez changer, remplaçant et tout ce que
Première arduino a conduit

Première arduino a conduit

u, je montrer comment programmer l'arduinosimple et coolÉtape 1: pièces nécessaires arduino (duh)a conduitfilsrésistance de 240 ohmsbreadboordEtape 2: la led placer la ledÉtape 3: la résistance placement de résistanceÉtape 4: les fils à l'arduino ins
Modèle de Perspective 3D de Signature. J’ai concevra un modèle personnalisé pour les trois premières personnes qui commentent!! (indiquer votre adresse de courriel)

Modèle de Perspective 3D de Signature. J’ai concevra un modèle personnalisé pour les trois premières personnes qui commentent!! (indiquer votre adresse de courriel)

je me souviens avoir vu une sculpture dans un album que je regardais, et c'était un homme qui joue un piano d'une vue et un homme jouant du violon d'un autre vue. J'ai était fasciné par le concept et a décidé de créer un de mes propres.J'ai joué un p
Comment faire une plate-forme de caméra première personne

Comment faire une plate-forme de caméra première personne

http://www.youtube.com/watch?v=iXv5sGl2Zqs c'est vraiment une mise à jour de mon premier appareil photo monter son simple mais efficace visibilité est plus élevée et une plus grande mobilité s'abonner s'il vous plaît me sur mon YouTube canal www.yout
Je suis la première personne dans le monde de faire un embout d’aspirateur de bois !

Je suis la première personne dans le monde de faire un embout d’aspirateur de bois !

.Oui, vous - l'éternellement damnés ; depuis votre nutter grand grand (x 1 million) obtenu en manger des pommes à l'aube de l'univers de 5000 ans - donc être maudits pour faire le ménage après que cette divinité particulière inventé travaux ménagers.
Comment faire pour boucher un cochon, étape par étape. Vue à la première personne

Comment faire pour boucher un cochon, étape par étape. Vue à la première personne

Suivez les étapes présentées dans la vidéo pour apprendre à boucher un cochon de manière traditionnelle. Lien direct vers la vidéo : https://www.youtube.com/watch?v=XGpAGhZPjoY
Comment faire un montage de caméra première personne

Comment faire un montage de caméra première personne

youtube.com/watch?v=iXv5sGl2Zqs c'est pour les appareils ne disposant pas de threads. Construit en tels que téléphones pas responsables des appareils cassés veuillez vous abonnement à ma chaîne www.youtube.com/user/luis45752?feature=guideÉtape 1: mat
Créer la première personne Unity3d base

Créer la première personne Unity3d base

au total, cela nécessite très peu n'importe quoi, tant que vous disposez d'un ordinateur il faut seulement votre temps et sur 3 concerts (Cependant il est préférable si vous avez plus) je vais plus en détail sur des petites choses plus tard, mais pou
FPV bricolage courses Drone

FPV bricolage courses Drone

Que ce soit un pilotage voiture, bateau ou avion, tous les véhicules télécommandés à distance fournissent une grande source de plaisir et d'intérêt. Cela dit, FPV quadri-rotor volant est une toute nouvelle expérience, et construire un vous-même est u
Conduisez un robot Roomba de sauterelle à l’aide de la vision par ordinateur

Conduisez un robot Roomba de sauterelle à l’aide de la vision par ordinateur

Les robots Roomba sont incroyables et nous le savons tous. Il y a tout à fait quelques tutoriels là-bas sur la façon de pirater leur et des millions de façons de les combattre. Comme je travaille beaucoup avec la sauterelle et Rhino, j'ai décidé de c
Pirater une caméra Pan-Tilt WiFi de 30 $ - contrôle vidéo, Audio et moteur avec Python

Pirater une caméra Pan-Tilt WiFi de 30 $ - contrôle vidéo, Audio et moteur avec Python

Dans ce Instructable, vous apprendrez comment intercepter la vidéo, un micro et contrôles de la caméra pan / tilt sans fil de 30 $ Kaicong SIP1602 sur Windows, Linux ou OSX ! Tout est parfaitement intégrée scripts python ; vous pouvez utiliser les do
Cible de bande de carton et conduit

Cible de bande de carton et conduit

c'est comment vous faire une cible de bandes de carton et conduit.Étape 1: matériaux -carton-ruban adhésif en toile-ciseauxÉtape 2 : Prenez un morceau de carton et coupez-le comme la première photo ci-dessous. Que prendre un autre morceau de carton,