Table des matières:

Créer un drapeau d'alerte Applescript/Arduino. : 5 étapes (avec photos)
Créer un drapeau d'alerte Applescript/Arduino. : 5 étapes (avec photos)

Vidéo: Créer un drapeau d'alerte Applescript/Arduino. : 5 étapes (avec photos)

Vidéo: Créer un drapeau d'alerte Applescript/Arduino. : 5 étapes (avec photos)
Vidéo: Comment créer une ALERTE EFFICACE? 2024, Juillet
Anonim
Créez un indicateur d'alerte Applescript/Arduino
Créez un indicateur d'alerte Applescript/Arduino

Avez-vous déjà eu l'impression que le son de la messagerie sur votre Mac n'était tout simplement pas suffisant ? Des sons et des alertes simples ne vous conviennent pas ? Vous voulez quelque chose de plus apparent et gratifiant ? Si oui, c'est l'Instructable que vous cherchiez. Dans ce Instructable, je vais vous montrer comment connecter votre Arduino à votre Mac et lancer un drapeau réel lorsque l'alerte de votre choix se produit. Dans notre exemple, nous ferons une alerte par e-mail, mais vous pouvez utiliser AppleScript pour l'appeler lorsque presque tout se passe. J'ai créé un petit drapeau Instructables pour qu'il s'éteigne lorsque je reçois des commentaires sur mes instructables. Commençons!

Étape 1: ce dont vous avez besoin

De quoi as-tu besoin
De quoi as-tu besoin

Matériel: Un Arduino: Je sais au moins que le Duemilanove et le Diecimila fonctionneront. Je ne sais pas si les anciennes versions de la carte fonctionneront. Un drapeau: j'ai fait un drapeau instructables pour m'alerter quand je reçois un commentaire instructables. Une résistance de 47 Ohm: c'est pour empêcher l'Arduino de se réinitialiser à la fin d'une connexion série Un ServoWires pour connecter l'Arduino au Servo. Mes fils étaient un peu plus longs que nécessaire. Logiciel: code Arduino Serial C de Tod Kurt. Tod a mis ce code en place, ce qui facilite énormément la communication avec l'Arduino. Fichiers inclus ici. Pour plus d'informations, regardez ici: https://todbot.com/blog/2006/12/06/arduino-serial-c-code-to-talk-to-arduino/- Arduino Code- Run Flag Applescript

Étape 2: Configurer l'Arduino

Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino
Configurer l'Arduino

Nous devons d'abord définir le côté physique de cette équation. Hors du servo, il y a 3 fils: tension, terre et contrôle. Dans cette configuration, nous les branchons sur 5v, masse et broche 9. En outre, nous allons mettre une résistance de 47 ohms dans la broche 3v3 et la broche de réinitialisation. Cela empêchera l'arduino de se réinitialiser à chaque fois qu'une connexion série est fermée. C'était une vraie douleur pour moi à gérer au début, j'avais écrit le logiciel pour gérer la réinitialisation avec un retard, mais cela ne fonctionnait jamais comme je le voulais. La résistance résout ce problème facilement. Remarque: selon la source d'où je viens, la résistance provoque un courant excessif de 20 mA dans l'Arduino lorsque le bouton de réinitialisation est enfoncé. La personne qui l'a testé a dit que c'était en dehors des spécifications, mais qu'il fonctionnait toujours. Évitez de réinitialiser l'Arduino lorsque la résistance est connectée. LogicielChargez le logiciel inclus sur l'Arduino. Apportez des modifications comme bon vous semble. Essentiellement, vous envoyez un 0 ou un 1 à l'arduino, et il va allumer ou abaisser le drapeau en fonction de cela.

Étape 3: Configurer le servo et le drapeau

Configurer le servo et le drapeau
Configurer le servo et le drapeau

Tapez le drapeau sur le poteau. Tapez le poteau sur le servo… Assez simple.

Étape 4: Configuration de la communication logicielle

Configuration du logiciel de communication
Configuration du logiciel de communication
Configuration du logiciel de communication
Configuration du logiciel de communication

Tout d'abord, vous devrez compiler le script de communication série Arduino de Tod Kurt. C'est super facile. Ouvrez le terminal et accédez à l'endroit où vous avez le fichier arduino-serial.c Tapez ce qui suit: gcc -o arduino-serial arduino-serial.c informations sur l'utilisation de l'écran. Testons notre drapeau. Dans le terminal, accédez à l'emplacement de votre nouveau script arduino-serial et tapez ce qui suit:./arduino-serial -b 9600 -p /dev/tty.usbserial-A4001lGx -s 1Vous devrez remplacer le port série de votre Arduino. Si vous n'êtes pas sûr de ce que c'est, allez dans le logiciel Arduino et regardez sous Outils-> Port série. L'ordre est important ici. Le -b est en baud et doit être défini avant que le port (-p) ne soit défini. -s est le message à envoyer. Cela devrait lever le drapeau, vous pouvez le baisser en remplaçant le "1" à la fin de cette ligne par un "0" (zéro) Une fois que cela fonctionne, la prochaine chose est de configurer le AppleScript associé. Avec cet Applescript, vous allez devoir lui dire où tout se trouve. Pour plus de facilité, j'ai tout collé au même endroit, à savoir: ~/Library/Scripts/, bien sûr, vous pouvez utiliser ce que vous voulez. Une fois que vous avez votre configuration Applescript, essayez-le en appuyant sur ce gros vert " Run" en haut. Encore une chose et nous sommes prêts. Nous devons maintenant configurer Mail.app pour exécuter Applescript. Ouvrez Mail et accédez aux préférences. Sélectionnez RèglesAjouter une règleDans la règle, définissez les conditions comme vous le souhaitez. Pour moi, j'ai configuré la règle pour que l'adresse « de » contienne « instructables.com », donc elle se déclenchera lorsque je recevrai quelque chose d'Instructables. Vous avez terminé ! Si vous avez une méthode pour la tester, essayez-la.

Étape 5: Réflexions finales

Vous n'avez évidemment pas besoin d'utiliser Mail.app pour en profiter. Vous pouvez lancer le script à partir de n'importe quelle application qui accédera à Applescript, y compris les utilisateurs de Finder. Windows: je ne connais pas assez Outlook pour savoir si vous avez des moyens de déclencher l'exécution du script, mais j'imagine que quelqu'un ici n'aurait aucun problème à le comprendre out. En raison de la façon dont Applescript est exécuté, le retard dans le script empêchera tout de se produire pendant qu'il attend. Je n'ai pas encore exploré la résolution de cela, mais j'imagine que cela se ferait du côté de l'Arduino, plutôt que de l'Applescript. Par exemple, envoyez deux paramètres à l'Arduino: le bit haut/bas et une durée… J'espère que vous avez apprécié l'Instructable. Je l'ai assemblé pour voir si je pouvais en savoir un peu plus sur l'interaction avec le monde réel à partir du monde informatique.

Conseillé: