- Résolution vidéo : 720×480
- Fonction audio : Oui
- Image/sec : 28fps
- Taille de la tête pivotante : 25x25x28m
- Led : Bi-colore
- Type de carte : Micro SD-Card
- Rayon : 0.3 à l’infini
- Tension : 4.5V-6V
- Consommation : 180Mah
- Objectif : Orientable à 90°
- USB : Mini USB 1.1
- Modes : Vidéo, déclenchement à distance, photo enregistrement à 180° programmable
http://tic.technologiescollege.fr/wiki/doku.php/fr/arduino/flycam
http://www.camonetec.com/de/produkte/kamerasysteme/flycamone-eco-v2.html
Donc il faudra lui envoyer des commandes de servomoteur, ça tombe bien des blocs sont déjà prêts…
LECOPIER-COLLERVAETRENOTREMEILLEURAMI!
Au final il n’y aura que 3 fonctions :
Là où on teste, on s’aperçoit qu’il faudra aussi rajouter une impulsion servomoteur de 0° comme si on relâchait le bouton de commande.
Donc en entrée nous n’avons besoin que de la broche numérique compatible avec des commandes de servomoteur.
Dans le dossier ‘\blocks\’, il faut créer un dossier avec le nom du projet ou fabricant, un fichier de texte brut avec le même nom et toutes les images nécessaires à illustrer les blocs :
→ de préférence tout en Anglais, langue de base en programmation pour ensuite faire des traductions…
→ ne pas avoir peur des noms longs, il faut que ce soit explicite !
C’est un peu comme les 10 commandements, mais moitié moins…les deux dernières chacun en fait ce qu’il veut mais c’est mieux.
Dans le fichier javascript ‘flycamone-eco-v2.js’ il faut décrire le bloc. En regardant la documentation de Google Blockly, ainsi que les blocs existants (modifiez un paramètre et regardez ce que ça produit comme changement) notamment les servomoteur dans notre cas.
/** * Block pour la FlycamOne Eco v2 * @author Seb Canet (canet.s@free.fr) */ 'use strict'; goog.provide('Blockly.Blocks.flycam'); goog.require('Blockly.Blocks'); goog.require('Blockly.Types'); Blockly.Blocks.flycam.HUE = '#46C286'; Blockly.Blocks.flycam_switch = { init: function() { this.setColour(Blockly.Blocks.flycam.HUE); this.setHelpUrl(Blockly.Msg.FLYCAM_SWITCH_HELPURL); this.appendDummyInput("") .appendField(Blockly.Msg.FLYCAM_SWITCH_TEXT) .appendField(new Blockly.FieldImage(Blockly.pathToBlockly + 'blocks/flycamone-eco-v2/flycam_switch.jpg', Blockly.Arduino.imageSize, Blockly.Arduino.imageSize)); this.appendValueInput("PIN") .setCheck('Number') .setAlign(Blockly.ALIGN_RIGHT) .appendField(Blockly.Msg.FLYCAM_SWITCH_INPUT); this.setPreviousStatement(true, null); this.setNextStatement(true, null); this.setTooltip(Blockly.Msg.FLYCAM_SWITCH_TOOLTIP); } };
Décryptons tout ça dans l’ordre :
Donc il faut bien préparer ses blocs en amont, sinon n’aurait pas su qu’il fallait inventer :