Inhaltsverzeichnis:

Erstellen Sie ein Applescript/Arduino Alert Flag. - Gunook
Erstellen Sie ein Applescript/Arduino Alert Flag. - Gunook

Video: Erstellen Sie ein Applescript/Arduino Alert Flag. - Gunook

Video: Erstellen Sie ein Applescript/Arduino Alert Flag. - Gunook
Video: Управляйте своим Arduino с iPhone, iPad, iWatch и Mac - поддерживается голосовая команда Siri! 2024, Juli
Anonim
Erstellen Sie ein Applescript/Arduino Alert Flag
Erstellen Sie ein Applescript/Arduino Alert Flag

Hatten Sie jemals das Gefühl, dass der Mail-Sound auf Ihrem Mac einfach nicht ausreicht? Einfache Sounds und Warnungen reichen nicht für Sie? Sie wollen etwas Offensichtlicheres und Belohnenderes? Wenn ja, ist dies das Instructable, nach dem Sie gesucht haben. In diesem Instructable zeige ich Ihnen, wie Sie Ihr Arduino an Ihren Mac anschließen und eine tatsächliche Flagge werfen, wenn die Warnung Ihrer Wahl auftritt. In unserem Beispiel erstellen wir eine E-Mail-Benachrichtigung, aber Sie können diese mit AppleScript aufrufen, wenn fast alles passiert. Ich habe eine kleine Instructables-Flagge erstellt, die ausgeht, wenn ich Kommentare zu meinen Instructables erhalte. Lass uns anfangen!

Schritt 1: Was Sie brauchen

Was du brauchst
Was du brauchst

Hardware: Ein Arduino: Ich weiß zumindest, dass die Duemilanove und die Diecimila funktionieren. Ich weiß nicht, ob ältere Board-Versionen funktionieren. A Flag: Ich habe ein Instructables-Flag erstellt, um mich zu warnen, wenn ich einen instructables-Kommentar erhalte. Ein 47 Ohm Widerstand: Dies soll verhindern, dass das Arduino beim Schließen einer seriellen Verbindung zurückgesetzt wirdA ServoWires um den Arduino mit dem Servo zu verbinden. Meine Drähte waren etwas länger als nötig. Software: Tod Kurts Arduino Serial C-Code. Tod hat diesen Code erstellt, der es enorm einfach macht, mit dem Arduino zu kommunizieren. Hier enthaltene Dateien. Weitere Informationen finden Sie hier: https://todbot.com/blog/2006/12/06/arduino-serial-c-code-to-talk-to-arduino/- Arduino Code- Run Flag Applescript

Schritt 2: Einrichten des Arduino

Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino
Einrichten des Arduino

Wir müssen zuerst die physikalische Seite dieser Gleichung aufstellen. Außerhalb des Servos gibt es 3 Drähte: Spannung, Masse und Steuerung. In diesem Setup stecken wir diese in 5V, Masse und Pin 9. Außerdem werden wir einen 47-Ohm-Widerstand in den 3v3-Pin und den Reset-Pin stecken. Dies verhindert, dass das Arduino jedes Mal zurückgesetzt wird, wenn eine serielle Verbindung geschlossen wird. Dies war für mich von Anfang an ein echter Schmerz, ich hatte die Software geschrieben, um den Reset mit einer Verzögerung durchzuführen, aber es funktionierte nie so, wie ich es wollte. Der Widerstand löst dieses Problem leicht. Hinweis: Laut der Quelle, aus der ich dies habe, verursacht der Widerstand einen übermäßigen Strom von 20 mA im Arduino, wenn die Reset-Taste gedrückt wird. Die Person, die es getestet hat, sagte, dass es außerhalb der Spezifikationen liegt, aber immer noch funktioniert. Vermeiden Sie das Zurücksetzen des Arduino, wenn der Widerstand angeschlossen ist. SoftwareLaden Sie die mitgelieferte Software auf den Arduino. Nehmen Sie Änderungen vor, wie Sie es für richtig halten. Im Wesentlichen senden Sie eine 0 oder eine 1 an das Arduino, und es wird die Flagge basierend darauf nach oben oder unten drehen.

Schritt 3: Einrichten des Servos und der Flagge

Einrichten des Servos und der Flagge
Einrichten des Servos und der Flagge

Tape Flag to pole. Tape pole to the servo…Ziemlich einfach.

Schritt 4: Softwarekommunikation einrichten

Software-Kommunikation einrichten
Software-Kommunikation einrichten
Software-Kommunikation einrichten
Software-Kommunikation einrichten

Zuerst müssen Sie das serielle Arduino-Kommunikationsskript von Tod Kurt kompilieren. Das ist supereinfach. Öffnen Sie das Terminal und navigieren Sie zu der Datei arduino-serial.c Geben Sie Folgendes ein: gcc -o arduino-serial arduino-serial.cSobald die Kompilierung abgeschlossen ist, geben Sie ein:./arduino-serialand Informationen zur Bildschirmnutzung. Testen wir unsere Flagge. Navigieren Sie im Terminal zu Ihrem neu erstellten arduino-serial-Skript und geben Sie Folgendes ein:./arduino-serial -b 9600 -p /dev/tty.usbserial-A4001lGx -s 1Sie müssen die serielle Schnittstelle Ihres Arduino ersetzen. Wenn Sie sich nicht sicher sind, was dies ist, gehen Sie in die Arduino-Software und suchen Sie unter Tools->Serial Port. Die Reihenfolge ist hier wichtig. -b ist Baud und muss gesetzt werden, bevor der Port (-p) gesetzt wird. -s ist die zu sendende Nachricht. Dies sollte das Flag anheben. Sie können es senken, indem Sie die "1" am Ende dieser Zeile in eine "0" (Null) ändern zugehöriges AppleScript. Mit diesem Applescript müssen Sie ihm sagen, wo alles ist. Der Einfachheit halber habe ich alles an die gleiche Stelle geklebt, nämlich: ~/Library/Scripts/, natürlich können Sie alles verwenden, was Sie möchten. Sobald Sie Ihr Applescript-Setup haben, probieren Sie es aus, indem Sie auf das große Grün drücken. run"-Button oben. Noch eine Sache und wir sind fertig. Jetzt müssen wir Mail.app einrichten, um das Applescript. Open up Mail auszuführen und in die Einstellungen zu gehen. Wählen Sie Regeln aus. Regel hinzufügen Legen Sie in der Regel die Bedingungen nach Belieben fest. Für mich habe ich die Regel so eingerichtet, dass die "Von"-Adresse "instructables.com" enthält, damit sie ausgelöst wird, wenn ich etwas von Instructables erhalte. Du bist fertig! Wenn Sie eine Methode zum Testen haben, probieren Sie es aus.

Schritt 5: Abschließende Gedanken

Sie müssen natürlich nicht Mail.app verwenden, um dies zu nutzen. Sie können das Skript von jeder Anwendung aus auslösen, die auf Applescript zugreift, einschließlich des Finder. Windows-Benutzer: Ich bin mit Outlook nicht vertraut genug, um zu wissen, ob Sie Möglichkeiten zum Auslösen der Skriptausführung haben, aber ich kann mir vorstellen, dass jemand hier kein Problem damit hat, es herauszufinden out. Aufgrund der Art und Weise, wie Applescript ausgeführt wird, verhindert die Verzögerung im Skript, dass alles passiert, während es wartet. Ich habe mich noch nicht damit befasst, dies zu beheben, aber ich stelle mir vor, dass es auf der Seite des Arduino und nicht auf dem Applescript erfolgen würde. Senden Sie zum Beispiel zwei Parameter an den Arduino: Das Up / Down-Bit und eine Dauer … Ich hoffe, Sie haben das Instructable genossen. Ich habe es zusammengestellt, um zu sehen, ob ich ein bisschen mehr über die Interaktion mit der realen Welt aus der Computerwelt herausfinden könnte.

Empfohlen: