Skriv (Twitter-uppdateringar) (utan Ethernet Shield)
Detta program kommer att skicka en uppdatering till twitter om någon kommer för nära arduino försöker ta det eller om du sätter det på dörren, och om någon skriver in rummet etc som titeln säger.
Vänligen rösta för denna i Adafruit-Make-It-Tweet contest---> >>
Här
Först är här de program du behöver:
Arduino (http://arduino.cc/en/Main/Software)
Bearbetning (http://processing.org/download/)
Och de saker som behövs:
Arduinoen
En distans sensor
En Summer
En seriell kabel (eller blue-tooth sändtagare om du vill att det sak vara trådlös)
(http://cgi.ebay.com/Serial-Bluetooth-RF-Transceiver-Module-rs232-backplane-/170628681891?pt=AU_B_I_Electrical_Test_Equipment&hash=item27ba4310a3)
Öppna din arduino och skriva en kod för ditt program, vad mitt program gjorde var det höll inspelning avstånd sensor värden och om värdena som var mindre än 15 sedan postat en twitter uppdatering och aktiverat summern. (Se till att du säger serial.println ("Person för nära") endast om värdena som är mindre än 15 som oavsett vad du skriver ut via seriell kommer att publiceras på twitter).
Öppna upp din bearbetning fönster och skriv denna kod i
/*************
* baserat på: http://processing.org/reference/libraries/serial/serialEvent_.html
*************/
import processing.serial.*;
Seriella myPort; Den seriella porten
PFont myFont; Visa teckensnitt
InString sträng; Indatasträngen från serieporten
int lf = 10; ASCII-radmatning
Twitter twitter; Twitter
Kommer att få oAuth fungerar i stället för detta, men detta kommer att göra för nu
String användarnamn = "Ditt-TWITTER-användarnamn"; du Twitter användarnamn här
Sträng lösenord = "Ditt-TWITTER-lösenord"; din Twitter lösenord här
void setup() {
size(400,200);
Twitter = nya Twitter(username,password);
myFont = loadFont("AppleGothic-48.vlw");
textFont (myFont, 18);
println(Serial.list());
myPort = ny följetong (denna, Serial.list() [0], 9600);
myPort.bufferUntil(lf); wiat för radmatning för att ange slutet av seriell buffert
}
void draw() {
Background(100);
text ("färg som är vald:" + inString, 10,50);
}
void serialEvent(Serial p) {
inString = p.readString (); //read seriell sträng
Av någon anledning detta bara ville arbeta i ett försök fånga
försök
{
Status status1 = twitter.updateStatus ("Arduinos favoritfärg är" + inString); //update twitter status
}
fånga (TwitterException e) {
println(e.getStatusCode());
}
}
Se till att du ändra användarnamn och lösenord med ditt twitter-konton användarnamn och lösenord.
Se till att du bara kommandot serial.println på vad du vill för att inlägg på twitter.
ELLER Använd denna kod om du vill att inlägget till ett program på TWITTER
Det är där du anger din Oauth info
statisk String OAuthConsumerKey = "";
statisk String OAuthConsumerSecret = "";
Det är där du anger din tillgång Token information
statisk String AccessToken = "";
statisk String AccessTokenSecret = "";
Bara några slumpvariabler sparka runt
Sträng myTimeline;
java.util.List status = null;
Användare [] vänner;
Twitter twitter = nya TwitterFactory().getInstance();
RequestToken requestToken;
String [] theSearchTweets = new String [11].
void setup() {
size(100,100);
Background(0);
connectTwitter();
sendTweet ("Hej från enkel bearbetning woop woop #RobotGrrl");
}
void draw() {
Background(0);
}
Första anslutningen
void connectTwitter() {
twitter.setOAuthConsumer (OAuthConsumerKey, OAuthConsumerSecret);
AccessToken accessToken = loadAccessToken();
twitter.setOAuthAccessToken(accessToken);
}
Skicka en tweet
void sendTweet(String t) {
försök {
Status status = twitter.updateStatus(t);
println ("uppdaterades statusen till [" + status.getText() + "].");
} fånga (TwitterException e) {
println ("Skicka tweet:" + e + "statuskod:" + e.getStatusCode());
}
}
Laddar upp åtkomst-token
privata statisk AccessToken loadAccessToken() {
returnera nya AccessToken (AccessToken, AccessTokenSecret);
}
Få dina tweets
void getTimeline() {
försök {
status = twitter.getUserTimeline();
} fånga (TwitterException e) {
println ("Get timeline:" + e + "statuskod:" + e.getStatusCode());
}
för (int jag = 0; jag Status status = (Status)statuses.get(i);
println(status.getUser().getName() + ":" + status.getText());
}
}
Sök efter tweets
void getSearchTweets() {
String queryStr = "
försök {
Fråga fråga = nya Query(queryStr);
query.setRpp(10); Få 10 av 100 resultat
QueryResult resultat = twitter.search(query);
ArrayList tweets = (ArrayList) result.getTweets();
för (int jag = 0; jag Tweet t = (Tweet)tweets.get(i);
Strängen user = t.getFromUser();
Sträng msg = t.getText();
Datum d = t.getCreatedAt();
theSearchTweets [i] = msg.substring(queryStr.length()+1);
println(theSearchTweets[i]);
}
} fånga (TwitterException e) {
println ("Sök tweets:" + e);
}
}
och ändra token och hemligheten i topp med hemliga och token-program...
Sedan Ladda ner Twitter4j och dra alla filer som slutar med .jar till bearbetning skiss som öppnas.
När du lägger till filer kommer den behandling fönstret säga 1 fil Tillagd eller 5 filer läggas eller 2 filer läggas till etc.
Och då du är klar bara köra bearbetning och kontrollera arduino drivs och din touch mig inte twitter updater är redo. Om du vill ha några detaljer på några steg be vänligen mig om dem och jag ska försöka mitt bästa för att hjälpa.
Summern är en riktigt liten Summer och kanske inte märkbar i någon av bilderna.
Ett annat alternativ om du inte har en avstånd sensor är med hjälp av en laserpekare och en foto cell, allt du behöver göra är att krok foto cellen till en PNP transistor, och se till att laser pekaren pekar på foto cellen, och som någon går in, sedan laser skärs och summern pågår.
Om du vill laser skydda fler dörrar och sedan bara lägga till speglar så att laserpekarens går hela vägen från en dörr till en annan tills cellen foto, och om någon skriver in någon av dörrarna, ditt larmsystem går på.
Jag är inte riktigt gör en steg för steg instructable eftersom detta är bara kort info om min röra mig inte program och hur du gör din egen.
Vänligen kommentera, Betygsätt och abonnera