Inhoudsopgave:

Maak een Applescript/Arduino-waarschuwingsvlag: 5 stappen (met afbeeldingen)
Maak een Applescript/Arduino-waarschuwingsvlag: 5 stappen (met afbeeldingen)

Video: Maak een Applescript/Arduino-waarschuwingsvlag: 5 stappen (met afbeeldingen)

Video: Maak een Applescript/Arduino-waarschuwingsvlag: 5 stappen (met afbeeldingen)
Video: Maak een Vrolijk Geluid 2024, Juli-
Anonim
Maak een Applescript/Arduino-waarschuwingsvlag
Maak een Applescript/Arduino-waarschuwingsvlag

Heb je ooit het gevoel gehad dat het e-mailgeluid op je Mac niet genoeg was? Eenvoudige geluiden en waarschuwingen zijn gewoon niet genoeg voor u? Wil je iets meer duidelijk en lonend? Als dat zo is, is dit de Instructable waarnaar u op zoek was. In deze Instructable laat ik je zien hoe je je Arduino op je Mac kunt aansluiten en een echte vlag kunt opwerpen wanneer de waarschuwing van je keuze optreedt. In ons voorbeeld doen we een e-mailwaarschuwing, maar je kunt AppleScript gebruiken om dit te bellen als er bijna iets gebeurt. Ik heb een kleine Instructables-vlag gemaakt om af te gaan wanneer ik opmerkingen over mijn instructables ontvang. Laten we beginnen!

Stap 1: Wat je nodig hebt

Wat je nodig hebt
Wat je nodig hebt

Hardware: Een Arduino: Ik weet in ieder geval dat de Duemilanove en de Diecimila zullen werken. Ik weet niet of oudere bordversies zullen werken. Een vlag: ik heb een instructables-vlag gemaakt om me te waarschuwen wanneer ik instructie krijg. Een weerstand van 47 Ohm: dit is om te voorkomen dat de Arduino opnieuw wordt ingesteld bij het sluiten van een seriële verbinding Een ServoWires om de Arduino met de servo te verbinden. Mijn draden waren iets langer dan nodig. Software: Tod Kurt's Arduino Serial C-code. Tod plaatste deze code waardoor het enorm eenvoudig is om met de Arduino te communiceren. Hier opgenomen bestanden. Voor meer info kijk hier: https://todbot.com/blog/2006/12/06/arduino-serial-c-code-to-talk-to-arduino/- Arduino Code- Run Flag Applescript

Stap 2: Stel de Arduino in

Stel de Arduino in
Stel de Arduino in
Stel de Arduino in
Stel de Arduino in
Stel de Arduino in
Stel de Arduino in
Stel de Arduino in
Stel de Arduino in

We moeten eerst de fysieke kant van deze vergelijking opzetten. Uit de servo zijn er 3 draden: spanning, aarde en controle. In deze opstelling sluiten we die aan op 5v, Ground en Pin 9. We gaan ook een 47ohm-weerstand in de 3v3-pin en de reset-pin plaatsen. Dit voorkomt dat de arduino elke keer opnieuw wordt ingesteld als er een seriële verbinding wordt gesloten. Dit was erg lastig voor mij om in het begin mee om te gaan, ik had de software geschreven om de reset met vertraging af te handelen, maar het werkte nooit zoals ik het wilde. Weerstand lost dat probleem gemakkelijk op. Opmerking: Volgens de bron waar ik dit vandaan heb, veroorzaakt de weerstand een te hoge stroom van 20 mA in de Arduino wanneer de resetknop wordt ingedrukt. De persoon die het heeft getest, zei dat het buiten de specificaties viel, maar werkte nog steeds. Vermijd het resetten van de Arduino als de weerstand is aangesloten. SoftwareLaad de meegeleverde software op de Arduino. Breng wijzigingen aan zoals u wilt. In wezen stuur je een 0 of een 1 naar de arduino, en op basis daarvan zal hij de vlag omhoog of omlaag draaien.

Stap 3: Stel de servo en vlag in

Stel de servo en vlag in
Stel de servo en vlag in

Plak de vlag op de paal. Plak de paal op de servo … Vrij eenvoudig.

Stap 4: Softwarecommunicatie instellen

Softwarecommunicatie instellen
Softwarecommunicatie instellen
Softwarecommunicatie instellen
Softwarecommunicatie instellen

Eerst moet je Tod Kurt's Arduino seriële communicatiescript compileren. Dit is supergemakkelijk. Open de terminal en navigeer je een weg naar waar je het arduino-serial.c-bestand hebt Typ het volgende: gcc -o arduino-serial arduino-serial.cAls het klaar is met compileren, typ je:./arduino-serialand het zou moeten afdrukken naar de informatie over schermgebruik. Laten we onze vlag testen. Navigeer in de terminal naar waar je nieuw gemaakte arduino-seriële script en typ het volgende:./arduino-serial -b 9600 -p /dev/tty.usbserial-A4001lGx -s 1Je moet de seriële poort van je Arduino vervangen. Als je niet zeker weet wat dit is, ga dan naar de Arduino-software en kijk onder Tools->Serial Port. De volgorde is hier belangrijk. De -b is baud en moet worden ingesteld voordat de poort (-p) wordt ingesteld. -s is het bericht dat moet worden verzonden. Dit zou de vlag moeten verhogen. U kunt deze verlagen door de "1" aan het einde van die regel te wijzigen in een "0" (nul) Als dat eenmaal werkt, is het volgende dat u moet instellen bijbehorende AppleScript. Met dit Applescript moet je het vertellen waar alles is. Voor het gemak heb ik alles op dezelfde plek geplakt, namelijk: ~/Bibliotheek/Scripts/, natuurlijk kun je gebruiken wat je maar wilt. Als je eenmaal je Applescript-configuratie hebt, probeer het dan door op die grote groene te drukken " uitvoeren" knop bovenaan. Nog één ding en we zijn klaar. Nu moeten we Mail.app instellen om Applescript uit te voeren. Open Mail en ga naar de voorkeuren. Selecteer RegelsEen regel toevoegenIn de regel stelt u de voorwaarden naar wens in. Voor mij heb ik de regel zo ingesteld dat het "van"-adres "instructables.com" bevat, zodat het wordt geactiveerd wanneer ik iets van Instructables ontvang. Je bent klaar! Als je een methode hebt om het uit te testen, probeer het dan eens.

Stap 5: Laatste gedachten

U hoeft uiteraard geen Mail.app te gebruiken om hiervan te profiteren. Je kunt het script starten vanuit elke applicatie die toegang heeft tot Applescript, inclusief de Finder. Windows-gebruikers: ik ben niet bekend genoeg met Outlook om te weten of je manieren hebt om scriptuitvoering te activeren, maar ik kan me voorstellen dat iemand hier geen probleem zou hebben om het uit te zoeken out. Vanwege de manier waarop Applescript wordt uitgevoerd, zorgt de vertraging in het script ervoor dat alles niet gebeurt terwijl het wacht. Ik heb nog niet onderzocht om dit op te lossen, maar ik stel me voor dat het aan de kant van de Arduino zou worden gedaan in plaats van het Applescript. Stuur bijvoorbeeld twee parameters naar de Arduino: de up/down bit en een duur… Ik hoop dat je de Instructable leuk vond. Ik heb het in elkaar gezet om te zien of ik vanuit de computerwereld iets meer te weten kon komen over interactie met de echte wereld.

Aanbevolen: