Lag et Applescript/Arduino Alert Flag .: 5 trinn (med bilder)
Lag et Applescript/Arduino Alert Flag .: 5 trinn (med bilder)
Anonim

Har du noen gang følt at e -postlyden på Mac -en din bare ikke var nok? Enkle lyder og varsler kutter det bare ikke for deg? Vil du ha noe mer tydelig og givende? I så fall er dette instruksjonsboken du har lett etter. I denne instruksen vil jeg vise deg hvordan du kobler Arduino til Mac -en din og kaster opp et faktisk flagg når varselet du velger. I vårt eksempel sender vi en e -postvarsel, men du kan bruke AppleScript til å kalle dette når nesten alt skjer. Jeg har laget et lite Instructables -flagg for å gå av når jeg mottar kommentarer på instruksjonene mine. La oss komme i gang!

Trinn 1: Det du trenger

Maskinvare: En Arduino: Jeg vet i det minste at Duemilanove og Diecimila vil fungere. Jeg vet ikke om eldre brettversjoner vil fungere. Et flagg: Jeg lagde et instruksjonsflagg for å varsle meg når jeg får instruksjoner. A 47 Ohm motstand: Dette er for å forhindre Arduino i å tilbakestille ved avslutning av en seriell tilkobling A ServoWires for å koble Arduino til Servoen. Ledningene mine var litt lengre enn nødvendig. Programvare: Tod Kurt's Arduino Serial C -kode. Tod la denne koden opp, noe som gjør det ekstremt enkelt å kommunisere med Arduino. Filer inkludert her. For mer informasjon, se her: https://todbot.com/blog/2006/12/06/arduino-serial-c-code-to-talk-to-arduino/- Arduino Code- Run Flag Applescript

Trinn 2: Sett opp Arduino

Vi må sette opp den fysiske siden av denne ligningen først. Ut av servoen er det tre ledninger: Spenning, jord og kontroll. I dette oppsettet kobler vi dem til 5v, Ground og Pin 9. Dessuten skal vi sette en 47ohm motstand i 3v3 pin og reset pin. Dette forhindrer arduinoen i å tilbakestille hver gang det er stengt en seriell tilkobling. Dette var en skikkelig smerte for meg å håndtere tidlig, jeg hadde skrevet programvaren for å håndtere tilbakestillingen med en forsinkelse, men det fungerte aldri som jeg ønsket. Motstand løser det problemet enkelt. Merk: Ifølge kilden jeg fikk dette fra, forårsaker motstanden en for stor 20mA strøm i Arduino når du trykker på tilbakestillingsknappen. Personen som testet det sa at det er utenfor spesifikasjonene, men fortsatt fungerte. Unngå å tilbakestille Arduino når motstanden er tilkoblet. Programvare Last programvaren som følger med på Arduino. Gjør endringer som du finner passende. I hovedsak sender du en 0 eller en 1 til arduinoen, og det kommer til å skru flagget opp eller ned basert på det.

Trinn 3: Sett opp servoen og flagget

Tape Flag til pol. Tape pol til servoen … Ganske enkelt.

Trinn 4: Konfigurer programvarekommunikasjon

Først må du kompilere Tod Kurt's Arduino seriell kommunikasjonsskript. Dette er superenkelt. Åpne terminalen og naviger deg dit du har arduino-serial.c-filen Skriv inn følgende: gcc -o arduino-serial arduino-serial.cNår det er ferdig med å skrive, skriver du:./ arduino-serialand det skal skrives ut til informasjon om skjermbruk. La oss teste flagget vårt. I terminalen navigerer du til det nyopprettede arduino -serielle skriptet ditt og skriver inn følgende.. Hvis du ikke er sikker på hva dette er, går du til Arduino-programvaren og ser under Verktøy-> Seriell port. Rekkefølgen er viktig her. -B er baud, og må settes før porten (-p) settes. -s er meldingen som skal sendes. Dette bør heve flagget. Du kan senke det ved å endre "1" på slutten av linjen til en "0" (null) Når det fungerer, er det neste å sette opp tilknyttet AppleScript. Med dette Applescriptet må du fortelle det hvor alt er. For enkelhets skyld satte jeg alt på samme sted, nemlig: ~/Library/Scripts/, selvfølgelig kan du bruke hva du vil. Når du har fått Applescript -oppsettet ditt, kan du prøve det ved å trykke på den store grønne " Kjør "-knappen øverst. En ting til, og vi er klare. Nå må vi konfigurere Mail.app for å kjøre Applescript. Åpne Mail og gå inn i innstillingene. Velg regler Legg til en regel I regelen angir du vilkårene slik du vil. For meg har jeg konfigurert regelen for å ha "fra" -adressen inneholde "instructables.com", så den vil starte når jeg mottar noe fra Instructables. Du er ferdig! Hvis du har en metode for å teste det ut, prøv det.

Trinn 5: Avsluttende tanker

Du trenger ikke å bruke Mail.app for å dra nytte av dette, åpenbart. Du kan skyte skriptet fra et hvilket som helst program som har tilgang til Applescript, inkludert Finder. Windows -brukere: Jeg er ikke kjent nok med Outlook til å vite om du har måter å utløse scriptutførelse på, men jeg kan tenke meg at noen her ikke ville ha noe problem med å finne ut av det På grunn av måten Applescript utføres på, vil forsinkelsen i skriptet stoppe alt fra å skje mens det venter. Jeg har ikke utforsket å fikse dette ennå, men jeg forestiller meg at det ville bli gjort på siden av Arduino, i stedet for Applescript. Send for eksempel to parametere til Arduino: Opp/ned -biten, og en varighet … Jeg håper du likte Instructable. Jeg satte det sammen for å se om jeg kunne finne ut litt mer om samspill med den virkelige verden fra datamaskinverdenen.